summaryrefslogtreecommitdiff
path: root/Drivers
AgeCommit message (Collapse)AuthorFilesLines
2025-10-30Drivers/OptionRomPkg: Remove gEfiScsiPassThruProtocolGuidGowtham M6-108/+33
The legacy ScsiPassThruProtocol has been removed as per the UEFI 2.10A specification. This commit, removes references to ScsiPassThruProtocol and transitions the implementation to only use ExtScsiPassThruProtocol, which provides enhanced support for device enumeration, target/LUN discovery, and broader SCSI compatibility. Removed PcdSupportExtScsiPassThru and PcdSupportScsiPassThru as well, because the only available interface is ExtScsiPassThru. Cc: Sachin Ganesh <sachinganesh@ami.com> Signed-off-by: Gowtham M <gowthamm@ami.com>
2025-09-13Global: Remove ARM32 SupportOliver Smith-Denny3-8/+2
edk2 is removing support for ARM32, so drop all ARM32 code from edk2-platforms. This does not change code copied from edk2 as-is. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2025-07-08Drivers/OptionRomPkg/CirrusLogic5430Dxe: Remove UGA supportGuoMinJ5-609/+81
The Universal Graphics Adapter (UGA) is a graphic abstraction. The UGA I/O and Draw protocols are deprecated since UEFI 2.0 was introduced. Cf. the UEFI spec v2.9: "Appendix L - EFI 1.10 Protocol Changes and Deprecation List" section L.2 "Deprecated Protocols" Remove the UGA support. Signed-off-by: GuoMinJ <newexplorerj@gmail.com> Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2025-07-08Drivers/OptionRomPkg: Add missing HobLibPierre Gondois1-0/+1
Provide a HobLib library to the following module: OptionRomPkg/RenesasFirmwarePD720202/RenesasFirmwarePD720202.inf This fixes the following failing command: build -p Drivers/OptionRomPkg/OptionRomPkg.dsc -t GCC5 -a X64 Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2025-01-17Driver/Optee: apply FF-A librarylevi.yun2-40/+23
Instead of using Svc directly to request storage operation, use ArmFfaLib. Also, memory endpoint is no more used. so remove it. Signed-off-by: Levi Yun <yeoreum.yun@arm.com>
2025-01-15Drivers/ASIX: Bugfix for ASIX Ax88772c driverredhorse-li1-1/+1
Support the USB NIC whose product id is PRODUCT_AX88772B_ID. Signed-off-by: Yabin Li <bill.li@jaguarmicro.com>
2024-11-06GLOBAL: Align MDEPKG_NDEBUG dependent code with edk2 debug macro changesMike Beaton1-2/+1
edk2 commit ae83c6b7fd83a5906e016a32027c1bcd792a624e updates the 'null' variants of the DebugLib macros (used when MDEPKG_NDEBUG is defined) so that they explicitly discard their parameters using `if (FALSE)` code blocks. These are understood as marking the contained code as referenced but unused by all supported compilers. This avoids the need for additional MDEPKG_NDEBUG dependent code in c files, to conditionally hide static methods or functions which are only used in debug macros. Now, such code can and must be removed. This commit updates the relevant MDEPKG_NDEBUG code in c files throughout edk2-platforms (there are only some 20 instances). We also fix a couple of cases where the wrapped variables had incorrectly not been marked STATIC. Since the RELEASE builds of all platforms which used this kind of code break after the above-mentioned edk2 commit, it is considered preferable to have one single cross-platform commit to edk2-platforms which resolves this, rarther than spreading the fix across multiple commits. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Mike Beaton <mjsbeaton@gmail.com>
2024-10-24Drivers/OptionRomPkg: Add Renesas uPD720202 firmware loaderRebecca Cran5-0/+544
Add the Renesas uPD720202 firmware loader based on Ard Biesheuvel's patch at https://edk2.groups.io/g/devel/topic/patch_optionrompkg_add/30905893# The uPD72020x USB 3.0 chipset family supports two modes of operation. Either the firmware is stored in an external EEPROM chip and downloaded into the chipset at boot time, or it must be uploaded into the chipset by the operating system / driver. The second option always works and overrides any firmware stored into the EEPROM of the card. More technical details are discussed in a blog post at https://mjott.de/blog/881-renesas-usb-3-0-controllers-vs-linux. Signed-off-by: Rebecca Cran <rebecca@os.amperecomputing.com>
2024-09-24Update to New StackCheckLibOliver Smith-Denny3-21/+0
edk2 PR https://github.com/tianocore/edk2/pull/5957 removed BaseStackCheckLib and added StackCheckLibNull (amongst others). This PR updates all dscs/dsc.incs to remove the old BaseStackCheckLib and if appropriate, add StackCheckLibNull to LibraryClasses.common.SEC or to specific SEC libs. For all other component types, MdeLibs.dsc.inc links them to StackCheckLibNull. This does all dscs at once as it is formulaic and fixes build breaks. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Oliver Smith-Denny <osde@linux.microsoft.com>
2024-09-16Update code to be more C11 compliant by using __func__Rebecca Cran2-14/+14
__FUNCTION__ is a pre-standard extension that gcc and Visual C++ among others support, while __func__ was standardized in C99. Since it's more standard, replace __FUNCTION__ with __func__ throughout edk2-platforms. Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
2024-09-16Replace deprecated EFI_D_* with DEBUG_*Rebecca Cran3-21/+21
Replaced the deprecated EFI_D_{INFO,WARN,ERROR,VERBOSE} usage with DEBUG_{INFO,WARN,ERROR,VERBOSE}. Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
2024-09-16ARM/AARCH64 Platforms: Drop ArmCompilerIntrinsicsLibOliver Smith-Denny3-8/+0
edk2 PR https://github.com/tianocore/edk2/pull/6048 moves ArmCompilerIntrinsicsLib to MdePkg and into MdeLibs.dsc.inc. This patch drops all of the references to the ArmPkg location as these platforms are now getting it from MdeLibs.dsc.inc. This is done in one shot as it is a breaking change and has no functional impact. Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Leif Lindholm <quic_llindhol@quicinc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Oliver Smith-Denny <osde@linux.microsoft.com>
2024-04-10OptionRomPkg: Update the comments of GetInformation functionShang, Qingyu2-2/+8
Refer to Uefi spec 2.10 section 11.11.2, add a new retval EFI_NOT_FOUND to EFI_ADAPTER_INFORMATION_PROTOCOL.GetInformation(). Reference: [mantis #1866] - GetInfo() of Adapter Information Protocol should have a provision for IHV to return no data. Cc: Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by: Ray Ni <ray.ni@intel.com> Signed-off-by: Qingyu <qingyu.shang@intel.com> Signed-off-by: Gahan Saraiya <gahan.saraiya@intel.com>
2021-08-11Drivers/OpTee: address cast build warning issue in 32b modeEtienne Carriere1-7/+14
Use (UINTN) cast to cast physical or virtual address values to the pointer size before casting from/to a pointer value. Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
2021-08-11Drivers/OpTee: Add Aarch32 SVC IDs for 32bit Arm targetsEtienne Carriere2-3/+15
Add SMCCC function IDs for RPMB read/write service on 32bit architectures. Define generic SP_SVC_RPMB_READ/SP_SVC_RPMB_WRITE IDs for native target architecture (32b or 64b). Changes OpTeeRpmbFvb.c to use architecture agnostic macro ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ for 32b and 64b support. Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
2021-03-31Drivers/OptionRomPkg: Consume MdeLibs.dsc.inc for RegisterFilterLibDandan Bi1-1/+3
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3246 MdeLibs.dsc.inc was added for some basic/default library instances provided by MdePkg and RegisterFilterLibNull Library was also added into it as the first version of MdeLibs.dsc.inc. So update platform dsc to consume MdeLibs.dsc.inc for RegisterFilterLibNull which will be consumed by IoLib and BaseLib. Cc: Ray Ni <ray.ni@intel.com> Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2021-03-31Drivers/DisplayLink: Consume MdeLibs.dsc.inc for RegisterFilterLibDandan Bi1-0/+2
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3246 MdeLibs.dsc.inc was added for some basic/default library instances provided by MdePkg and RegisterFilterLibNull Library was also added into it as the first version of MdeLibs.dsc.inc. So update platform dsc to consume MdeLibs.dsc.inc for RegisterFilterLibNull which will be consumed by IoLib and BaseLib. Cc: Leif Lindholm <leif@nuviainc.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Andy Hayes <andy.hayes@displaylink.com> Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2021-03-31Drivers/ASIX: Consume MdeLibs.dsc.inc for RegisterFilterLibDandan Bi1-0/+3
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3246 MdeLibs.dsc.inc was added for some basic/default library instances provided by MdePkg and RegisterFilterLibNull Library was also added into it as the first version of MdeLibs.dsc.inc. So update platform dsc to consume MdeLibs.dsc.inc for RegisterFilterLibNull which will be consumed by IoLib and BaseLib. Cc: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com> Cc: Ray Ni <ray.ni@intel.com> Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2021-03-28Drivers/OpTeeRpmb: Add an OP-TEE backed RPMB driverIlias Apalodimas5-0/+1095
A following patch is adding support for building StMM in order to run it from OP-TEE. OP-TEE in combination with a NS-world supplicant can use the RPMB partition of an eMMC to store EFI variables. The supplicant functionality is currently available in U-Boot only but can be ported into EDK2. Assuming similar functionality is added in EDK2, this will allow any hardware with an RPMB partition to store EFI variables securely. So let's add a driver that enables access of the RPMB partition through OP-TEE. Since the upper layers expect a byte addressable interface, the driver allocates memory and patches the PCDs, while syncing the memory/hardware on read/write callbacks. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
2020-07-08Drivers/OptionRomPkg: Remove old ASIX NIC driversSamer El-Haj-Mahmoud13-9028/+1
Remove the old ASIX Ax88772 and Ax88772b USB networking drivers. These are now replaced with the new version of the driver (Ax88772c) under Drivers/ASIX/Bus/Usb/UsbNetworking/Ax88772c Signed-off-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
2020-07-08Drivers/ASIX: Add ASIX Ax88772c driverSamer El-Haj-Mahmoud7-0/+4842
This is the initial revision of ASIX USB networking UEFI driver version 2.8.0 for Ax88772c / Ax88772b / Ax88772a https://www.asix.com.tw/download.php?sub=driverdetail&PItemID=136 Original source code provided by ASIX is at: https://github.com/samerhaj/uefi_drivers/blob/master/UsbNetworking/Asix/ zip/source/AX88772C_772B_772A_UEFI_v2.8.0_Source.zip Signed-off-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
2020-07-08Drivers/ASIX: Add ASIX Ax88179 driverSamer El-Haj-Mahmoud7-1/+4551
This is the initial revision of ASIX USB networking UEFI driver version 2.9.0 for Ax88179 and Ax88178a https://www.asix.com.tw/products.php?op=pItemdetail&PItemID=131;71;112 Original source code provided by ASIX is at: https://github.com/samerhaj/uefi_drivers/blob/master/UsbNetworking/Asix/ zip/source/AX88179_178a_UEFI_v2.9.0_Source.zip Signed-off-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
2020-07-08Drivers/ASIX: Create ASIX packageSamer El-Haj-Mahmoud2-0/+95
Create a new ASIX package for build verification of ASIX USB drivers. Signed-off-by: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
2019-09-17Drivers/DisplayLink/DisplayLinkPkg DisplayLinkGopAndy Hayes1-1/+1
Corrected initialisation of one of data structures used to transmit USB control messages. Mistake had no practical effects but fixing to be on safe side. Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Andy Hayes <andy.hayes@displaylink.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2019-09-09Drivers/DisplayLink: Add DisplayLinkPkg and GOP driver DisplayLinkGopAndy Hayes14-0/+3928
Add GOP driver for USB docking stations based on DisplayLink chips. Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Andy Hayes <andy.hayes@displaylink.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2019-05-14Drivers/OptionRomPkg: Import OptionRomPkg from edk2Michael D Kinney51-0/+31192
https://bugzilla.tianocore.org/show_bug.cgi?id=1793 Import OptionRomPkg from edk2/master. Cc: Ray Ni <ray.ni@intel.com> Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Ray Ni <ray.ni@intel.com>