diff options
author | Patrick Wildt | 2018-03-27 14:23:20 +0200 |
---|---|---|
committer | Alexander Graf | 2018-04-04 11:21:29 +0200 |
commit | e2742358661137b60eccd2e80b6835b58d8c5763 (patch) | |
tree | be04b6ac69e90359fa7cce92c91615e5b01c93d2 /include/efi_api.h | |
parent | f9cfad1a61e3461dcf256ecfb83f4eaf68142d1b (diff) |
efi_loader: complete efi_pxe_mode struct definition
The efi_pxe_mode struct which represents the PXE_BASE_CODE_PROTOCOL
Replace the placeholder paddings in the efi_pxe_mode struct with the
actual fields as defined in UEFI's PXE Base Code Protocol. Since
our efi_ip_address is a simple char array set a specific alignment
to the efi_ip_address fields, as expected by the UEFI spec.
Signed-off-by: Patrick Wildt <patrick@blueri.se>
[agraf: s/pxe_discovervalid/pxe_discover_valid]
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'include/efi_api.h')
-rw-r--r-- | include/efi_api.h | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/include/efi_api.h b/include/efi_api.h index 28de93a1324..d956aee560b 100644 --- a/include/efi_api.h +++ b/include/efi_api.h @@ -703,7 +703,7 @@ struct efi_mac_address { struct efi_ip_address { u8 ip_addr[16]; -}; +} __attribute__((aligned(4))); enum efi_simple_network_state { EFI_NETWORK_STOPPED, @@ -797,7 +797,28 @@ struct efi_pxe_packet { struct efi_pxe_mode { - u8 unused[52]; + u8 started; + u8 ipv6_available; + u8 ipv6_supported; + u8 using_ipv6; + u8 bis_supported; + u8 bis_detected; + u8 auto_arp; + u8 send_guid; + u8 dhcp_discover_valid; + u8 dhcp_ack_received; + u8 proxy_offer_received; + u8 pxe_discover_valid; + u8 pxe_reply_received; + u8 pxe_bis_reply_received; + u8 icmp_error_received; + u8 tftp_error_received; + u8 make_callbacks; + u8 ttl; + u8 tos; + u8 pad; + struct efi_ip_address station_ip; + struct efi_ip_address subnet_mask; struct efi_pxe_packet dhcp_discover; struct efi_pxe_packet dhcp_ack; struct efi_pxe_packet proxy_offer; |