[edk2] [PATCH v4 0/6] ATAPI support on SiI SATA adapter

Jeremy Linton posted 6 patches 7 years, 7 months ago
Failed in applying to current master (apply log)
EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132.c   |  52 ++-
EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132.h   | 103 ++++-
.../Drivers/SataSiI3132Dxe/SataSiI3132Dxe.inf      |   2 +
.../Drivers/SataSiI3132Dxe/SiI3132AtaPassThru.c    | 280 ++++++++------
.../Drivers/SataSiI3132Dxe/SiI3132ScsiPassThru.c   | 424 +++++++++++++++++++++
MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf       |   2 +-
OpenPlatformPkg                                    |   2 +-
7 files changed, 725 insertions(+), 140 deletions(-)
create mode 100644 EmbeddedPkg/Drivers/SataSiI3132Dxe/SiI3132ScsiPassThru.c
[edk2] [PATCH v4 0/6] ATAPI support on SiI SATA adapter
Posted by Jeremy Linton 7 years, 7 months ago
The SiI isn't an AHCI compatible adapter so it implements the EFI ATA
pass-through protocol directly. This works for fixed hard drives, but
not ATAPI attached devices (CDROM, DVDROM, TAPE, etc).

This patch adds read only ATAPI support via the EFI SCSI pass-through
protocol, allowing boot from attached CD/DVD. This patch also cleans
up, and tweaks recovery paths/etc in the original driver. When
combined with the ARM/PCI dma lib changes this allows us to relax the
IO alignment requirement that caused grub failures.

Finally, the OpenPlatformPkg/Juno must be updated, with another patch
to avoid build breaks now that the SiI has a dependency on the SCSI
libraries.

V3->V4
  Fixed a bug that in theory kept multiple ATAPI devices from working.
  More patch formatting fixes per Ard
  Dropped the sense validation logic, and changes to the Mde header

V2->V3:
  Send the correct patch, rather than the one I was running
  the patch checker against.

V1->V2:
  Formatting corrections per Ard's comments and Daniil's
  updated patch checker.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>

Jeremy Linton (6):
  EmbeddedPkg: SiI3132: Note that ARM is using this Dxe
  EmbeddedPkg: SiI3132: Add ScsiProtocol callbacks
  EmbeddedPkg: SiI3132: Add SCSI protocol support to header
  EmbeddedPkg: SiI3132: Break out FIS command submission
  EmbeddedPkg: SiI3132: Cleanup device node creation
  EmbeddedPkg: SiI3132: Enable SCSI pass-through protocol

 EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132.c   |  52 ++-
 EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132.h   | 103 ++++-
 .../Drivers/SataSiI3132Dxe/SataSiI3132Dxe.inf      |   2 +
 .../Drivers/SataSiI3132Dxe/SiI3132AtaPassThru.c    | 280 ++++++++------
 .../Drivers/SataSiI3132Dxe/SiI3132ScsiPassThru.c   | 424 +++++++++++++++++++++
 MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf       |   2 +-
 OpenPlatformPkg                                    |   2 +-
 7 files changed, 725 insertions(+), 140 deletions(-)
 create mode 100644 EmbeddedPkg/Drivers/SataSiI3132Dxe/SiI3132ScsiPassThru.c

-- 
2.9.3

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel