On 03/28/20 21:00, Liran Alon wrote: > Hi, > > This series adds driver support for VMware PVSCSI controller. > > This controller is supported by VMware and QEMU. This work is part of > the more general agenda of enhancing OVMF boot device support to have > feature parity with SeaBIOS (Which supports booting from VMware PVSCSI). > > I pushed a copy of these (v3) patches to > https://github.com/nikital/edk2/tree/pvscsi6 > The v2 patches can be found at https://github.com/nikital/edk2/tree/pvscsi5 > The v1 patches can be found at https://github.com/nikital/edk2/tree/pvscsi4
Merged in commit range 6c1fb56802d5..f34c7645bd87, via <https://github.com/tianocore/edk2/pull/474>. Thanks for the contribution! Laszlo > v2->v3: > * Add function documentation to PvScsiWriteCmdDesc with “@param” to explain > DescWords alignment requirement. [Laszlo] > * Also set Packet’s HostAdapterStatus and TargetStatus when returning > EFI_BAD_BUFFER_SIZE from PassThru() method. [Liran] > * Add comments explaining why DMA communication buffer fields sizes are > defined as they are. [Laszlo] > * Remove unnecessary (UINT64) casts from EFI_PHYSICAL_ADDRESS expressions. > [Laszlo] > * Changed HandleResponse() to always copy SenseData based on > Response->SenseLen. Not only if ScsiStatus equal to CHECK. [Liran] > * Changed HandleResponse() to update Packet TransferLength only on underrun. > [Liran] > * Changed PassThru() to return EFI_STATUS_SUCCESS on device return > overrun/underrun. [Laszlo & Liran] > * Removed unnecessary PvScsiAllocatePages(), PvScsiFreePages(), > PvScsiMapBuffer() and PvScsiUnmapBuffer() utility functions. [Laszlo] > * Changed PvScsiInitRings() to align PVSCSI_CMD_DESC_SETUP_RINGS command to > UINT32 before using it with EfiPciIoWidthFifoUint32. [Laszlo] > * Removed PciIoOperation parameter from PvScsiAllocateSharedPages(). [Laszlo > * Added STATIC_ASSERT() to verify PVSCSI_CMD_DESC_SETUP_RINGS is of size > multiple of UINT32 words [Laszlo]. > * Added reset device before either freeing PVSCSI rings or DMA communication > buffer. [Laszlo] > * Removed unnecessary cast to (VOID **) in call to PvScsiFreeSharedPages() in > PvScsiUninit(). [Laszlo] > * Added #include <Library/BaseLib.h> and BaseLib to PvScsiDxe.inf because of > RShiftU64() usage. [Laszlo] > > v1->v2: > * Removed Nikita’s Reviewed-By tags. [Laszlo] > * Renamed PvScsi.inf to PvScsiDxe.inf and fixed references from all DSC > files. [Laszlo] > * Changed “!ifdef $(PVSCSI_ENABLE)” in DSC files to “!if $(PVSCSI_ENABLE) == > TRUE”. [Laszlo] > * Fix Identation in various places. [Laszlo] > * Added “#include <Uefi/UefiSpec.h>” for EFI_SYSTEM_TABLE. [Laszlo] > * Fix various typos. [Laszlo] > * Made “STATIC” on same line of object delcerations. [Laszlo] > * Added Laszlo’s Reviewed-by tags on some patches. [Laszlo] > * Added missing spaces before “(“ on various function calls. [Laszlo] > * Added PvScsi.h header file to INF [Sources] section. [Laszlo] > * Changed [Protocols] section in INF file to be lexicographically sorted. > [Laszlo] > * Changed [PCDs] section in INF file to be lexigraphically sorted. [Laszlo] > * Fixed function comments blocks to be “/** **/” instead of “//” style. > [Laszlo] > * Changed PvScsiGetTargetLun() to ZeroMem() all target bytes except first > one. [Laszlo] > * Replaced “IOSpace” with “MMIO-Space” in comments. [Laszlo] > * Changed enums to match EDK2 coding convention. [Laszlo] > * Use PCI_BAR_IDX0 instead of hard-coded 0. [Laszlo] > * Use EFI_PAGES_TO_SIZE() instead of manually multiplying with EFI_PAGE_SIZE. > [Laszlo] > * Use RShiftU64() to shift UINT64 vars. [Laszlo] > * Changed ReqNumEntries var to UINT32 and shift to use “1U <<” instead of “1 > <<”. [Laszlo] > * Changed condition on flag (In PvScsiWaitForRequestCompletion()) to be a > boolean expression. [Laszlo] > * Replaced “FakeHostAdapterError” label with a utility function. [Laszlo] > * Added debug message to PvScsiExitBoot() to assist debugging. [Laszlo] > * Fixed resource management to make each function either completely succeed > or completely fail and free all resources. [Laszlo] > * Changed PvScsiWriteCmdDesc() to use EfiPciIoWidthFifoUint32. [Laszlo] > * Changed PvScsiWriteCmdDesc() prototype to make clear it descriptor must be > an array of words. [Laszlo] > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#56668): https://edk2.groups.io/g/devel/message/56668 Mute This Topic: https://groups.io/mt/72617113/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-