This patch series implement the driver for LSI 53C895A SCSI controller for OVMF so that the user can access the storage devices connected to QEMU "lsi" controller. The driver is disabled by default since LSI 53C895A is considered as a legacy device. To enable the driver, please add "-D LSI_SCSI_ENABLE" when building OvmfPkg.
The patch series is also available in my git branch: https://github.com/lcp/edk2/tree/ovmf-lsi-v2 Cc: Jordan Justen <jordan.l.jus...@intel.com> Cc: Laszlo Ersek <ler...@redhat.com> Cc: Ard Biesheuvel <ard.biesheu...@arm.com> v2: - Fix the mixed-case GUID string - Remove "STATIC" from LsiScsiControllerSupported() - Move the closing of PciIo protocol to the right patch - Add asserts for PcdLsiScsiMaxTargetLimit and PcdLsiScsiMaxLunLimit - Handle the "Target" array correctly - Use BITx macros for the bit constants - Replace 0x10000 with SIZE_64KB macro for the DMA buffer data array - Remove DUAL_ADDRESS_CYCLE from PciIo since we don't really need 64-bit DMA address - Fix a typo - Fix the coding style of the instructions for the script. - Improve the error handling in LsiScsiProcessRequest() - Calculate the transferred bytes after the execution of the script Gary Lin (12): OvmfPkg/LsiScsiDxe: Create the empty driver OvmfPkg/LsiScsiDxe: Install the skeleton of driver binding OvmfPkg/LsiScsiDxe: Report the name of the driver OvmfPkg/LsiScsiDxe: Probe PCI devices and look for LsiScsi OvmfPkg/LsiScsiDxe: Install stubbed EXT_SCSI_PASS_THRU OvmfPkg/LsiScsiDxe: Report Targets and LUNs OvmfPkg/LsiScsiDxe: Open PciIo protocol and initialize the device OvmfPkg/LsiScsiDxe: Map DMA buffer OvmfPkg/LsiScsiDxe: Examine the incoming SCSI Request Packet OvmfPkg/LsiScsiDxe: Process the SCSI Request Packet OvmfPkg/LsiScsiDxe: Calculate the transferred bytes Maintainers.txt: Add Gary Lin as the reviewer for LsiScsi driver Maintainers.txt | 4 + OvmfPkg/Include/IndustryStandard/LsiScsi.h | 105 ++ OvmfPkg/LsiScsiDxe/LsiScsi.c | 1188 ++++++++++++++++++++ OvmfPkg/LsiScsiDxe/LsiScsi.h | 202 ++++ OvmfPkg/LsiScsiDxe/LsiScsiDxe.inf | 46 + OvmfPkg/OvmfPkg.dec | 8 + OvmfPkg/OvmfPkgIa32.dsc | 4 + OvmfPkg/OvmfPkgIa32.fdf | 3 + OvmfPkg/OvmfPkgIa32X64.dsc | 4 + OvmfPkg/OvmfPkgIa32X64.fdf | 3 + OvmfPkg/OvmfPkgX64.dsc | 4 + OvmfPkg/OvmfPkgX64.fdf | 3 + 12 files changed, 1574 insertions(+) create mode 100644 OvmfPkg/Include/IndustryStandard/LsiScsi.h create mode 100644 OvmfPkg/LsiScsiDxe/LsiScsi.c create mode 100644 OvmfPkg/LsiScsiDxe/LsiScsi.h create mode 100644 OvmfPkg/LsiScsiDxe/LsiScsiDxe.inf -- 2.25.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#62654): https://edk2.groups.io/g/devel/message/62654 Mute This Topic: https://groups.io/mt/75537201/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-