DiskIoDxe
| Field |
Value |
| Index |
0126 |
| Module |
DiskIoDxe |
| Size |
15556 bytes (15.6 KB) |
| PE File |
DiskIoDxe.efi |
| Phase |
DXE |
| Source |
MdeModulePkg/Universal/Disk/DiskIoDxe/ |
| SHA-256 |
52ff14045d54... |
| Sections |
6 (.text, .rdata, .data, section_3, .xdata, .reloc) |
Overview
DiskIoDxe is a UEFI DXE driver that translates byte-addressable Disk I/O requests into block-aligned Block I/O operations. It produces EFI_DISK_IO_PROTOCOL and EFI_DISK_IO2_PROTOCOL on top of the underlying EFI_BLOCK_IO_PROTOCOL / EFI_BLOCK_IO2_PROTOCOL, allowing upper-layer UEFI components to perform fine-grained reads and writes without needing to manage block alignment themselves. The driver supports asynchronous I/O via the Disk I/O 2 protocol with task queuing and lock-based synchronization.
Key Functions
DiskIoDriverEntryPoint() -- Module entry point; installs driver binding and component name protocols
DiskIoDriverBindingSupported() -- Tests whether a controller supports the Disk I/O protocol
DiskIoDriverBindingStart() -- Starts the Disk I/O driver on a controller, installs DiskIo protocol instances
DiskIoDriverBindingStop() -- Stops the Disk I/O driver, uninstalls protocols and frees resources
DiskIoReadWriteDisk() -- Core read/write function that translates byte I/O to block I/O
DiskIo2ReadWriteDisk() -- Asynchronous read/write via Disk I/O 2 protocol
DiskIoComponentNameGetDriverName() -- Returns the driver name ("Generic Disk I/O Driver")
DiskIoComponentNameGetControllerName() -- Returns the controller name
Dependencies
EFI_BLOCK_IO_PROTOCOL -- Underlying block device access
EFI_BLOCK_IO2_PROTOCOL -- Underlying asynchronous block device access
EFI_DISK_IO_PROTOCOL -- Produced protocol for byte-level disk I/O
EFI_DISK_IO2_PROTOCOL -- Produced protocol for async byte-level disk I/O
EFI_DRIVER_BINDING_PROTOCOL -- UEFI driver model
EFI_COMPONENT_NAME2_PROTOCOL -- Component name reporting
DEBUG_PRINT_ERROR_LEVEL_PROTOCOL -- Debug output control
- Architecture: x86-64 (PE32+)
- Subsystem: EFI_BOOT_SERVICE_DRIVER (0x0B)
- Copyright: Intel Corporation / Insyde Software Corporation
- Source: MdeModulePkg
- BIOS: HR650X (HR6N0XMLK)