21.2 ATA Bus Driver
EDK II contains a generic ATA bus driver. This driver uses the services of
EFI_ATA_PASS_THRU_PROTOCOL
to enumerate ATA devices and produce child handles
with EFI_DEVICE_PATH_PROTOCOL
, EFI_BLOCK_IO_PROTOCOL
,
EFI_BLOCK_IO2_PROTOCOL
, and optionally the EFI_STORAGE_SECURITY_COMMAND_PROTOCOL
.
The implementation of the ATA Bus Driver is found in the MdeModulePkg
in the directory
MdeModulePkg/Bus/Ata/AtaBusDxe
If UEFI-based system firmware is ported to a new platform, most of the
ATA-related changes occur in the implementation of the ATA host controller
driver. The ATA bus driver is designed to be a generic, platform-agnostic
driver. As a result, customizing the ATA bus driver is strongly discouraged
.
The detailed design and implementation of the ATA bus driver is not covered in
this guide.