.totalsize dd 0, 0 ; Filled in by installer
.bytespersec dw SECTORSIZE
.eddtable dw -1, -1 ; Invalid DPTE pointer
+.dpikey dw 0 ; Device Path Info magic (not impl.)
+ ; Would be 0beddh if implemented
+.dpilen db 2ch ; DPI len
+.res1 db 0 ; Reserved
+.res2 db 0 ; Reserved
+.bustype equ 'PCI ' ; Host bus type (4 bytes, space padded)
+.inttype equ 'ATA ' ; Interface type (8 bytes, spc. padded)
+.intpath dd 0, 0 ; Interface path
+.devpath dd 0, 0, 0, 0 ; Device path
+.res3 db 0 ; Reserved
+.chksum db 0 ; DPI checksum (not implemented)
%endif
uint64_t sectors; /* Total sectors */
uint16_t bytespersec; /* Bytes/sector */
uint16_t dpte_off, dpte_seg; /* DPTE pointer */
+ uint16_t dpikey; /* Device Path Info magic */
+ uint8_t res1; /* Reserved */
+ uint8_t res2; /* Reserved */
+ uint8_t bustype[4]; /* Host bus type */
+ uint8_t inttype[8]; /* Interface type */
+ uint64_t intpath; /* Interface path */
+ uint64_t devpath[2]; /* Device path (double QuadWord!) */
+ uint8_t res3; /* Reserved */
+ uint8_t chksum; /* DPI checksum */
};
struct patch_area {