iPXE
|
Enhanced Disk Drive specification. More...
Go to the source code of this file.
Data Structures | |
struct | edd_host_bus_type |
An EDD host bus type. More... | |
struct | edd_interface_type |
An EDD interface type. More... | |
union | edd_interface_path |
An EDD interface path. More... | |
union | edd_device_path |
An EDD device path. More... | |
struct | edd_device_path_information |
EDD device path information. More... | |
Macros | |
#define | EDD_BUS_TYPE_FIXED(a, b, c, d, ...) ( ( (a) << 0 ) | ( (b) << 8 ) | ( (c) << 16 ) | ( (d) << 24 ) ) |
EDD bus type. More... | |
#define | EDD_BUS_TYPE(...) EDD_BUS_TYPE_FIXED ( __VA_ARGS__, ' ', ' ', ' ', ' ' ) |
#define | EDD_BUS_TYPE_PCI EDD_BUS_TYPE ( 'P', 'C', 'I' ) |
EDD PCI bus type. More... | |
#define | EDD_BUS_TYPE_ISA EDD_BUS_TYPE ( 'I', 'S', 'A' ) |
EDD ISA bus type. More... | |
#define | EDD_BUS_TYPE_PCIX EDD_BUS_TYPE ( 'P', 'C', 'I', 'X' ) |
EDD PCI-X bus type. More... | |
#define | EDD_BUS_TYPE_IBND EDD_BUS_TYPE ( 'I', 'B', 'N', 'D' ) |
EDD Infiniband bus type. More... | |
#define | EDD_BUS_TYPE_XPRS EDD_BUS_TYPE ( 'X', 'P', 'R', 'S' ) |
EDD PCI Express bus type. More... | |
#define | EDD_BUS_TYPE_HTPT EDD_BUS_TYPE ( 'H', 'T', 'P', 'T' ) |
EDD HyperTransport bus type. More... | |
#define | EDD_INTF_TYPE_FIXED(a, b, c, d, e, f, g, h, ...) |
EDD interface type. More... | |
#define | EDD_INTF_TYPE(...) |
#define | EDD_INTF_TYPE_ATA EDD_INTF_TYPE ( 'A', 'T', 'A' ) |
EDD ATA interface type. More... | |
#define | EDD_INTF_TYPE_ATAPI EDD_INTF_TYPE ( 'A', 'T', 'A', 'P', 'I' ) |
EDD ATAPI interface type. More... | |
#define | EDD_INTF_TYPE_SCSI EDD_INTF_TYPE ( 'S', 'C', 'S', 'I' ) |
EDD SCSI interface type. More... | |
#define | EDD_INTF_TYPE_USB EDD_INTF_TYPE ( 'U', 'S', 'B' ) |
EDD USB interface type. More... | |
#define | EDD_INTF_TYPE_1394 EDD_INTF_TYPE ( '1', '3', '9', '4' ) |
EDD 1394 interface type. More... | |
#define | EDD_INTF_TYPE_FIBRE EDD_INTF_TYPE ( 'F', 'I', 'B', 'R', 'E' ) |
EDD Fibre Channel interface type. More... | |
#define | EDD_INTF_TYPE_I2O EDD_INTF_TYPE ( 'I', '2', 'O' ) |
EDD I2O interface type. More... | |
#define | EDD_INTF_TYPE_RAID EDD_INTF_TYPE ( 'R', 'A', 'I', 'D' ) |
EDD RAID interface type. More... | |
#define | EDD_INTF_TYPE_SATA EDD_INTF_TYPE ( 'S', 'A', 'T', 'A' ) |
EDD SATA interface type. More... | |
#define | EDD_INTF_TYPE_SAS EDD_INTF_TYPE ( 'S', 'A', 'S' ) |
EDD SAS interface type. More... | |
#define | EDD_DEVICE_PATH_INFO_KEY 0xbedd |
EDD device path information key. More... | |
#define | edd_describe_TYPE(object_type) |
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
struct edd_host_bus_type | __attribute__ ((packed)) legacy |
Legacy bus type. More... | |
int | edd_describe (struct interface *intf, struct edd_interface_type *type, union edd_device_path *path) |
Describe a disk device using EDD. More... | |
Enhanced Disk Drive specification.
Definition in file edd.h.
#define EDD_BUS_TYPE | ( | ... | ) | EDD_BUS_TYPE_FIXED ( __VA_ARGS__, ' ', ' ', ' ', ' ' ) |
#define EDD_BUS_TYPE_PCI EDD_BUS_TYPE ( 'P', 'C', 'I' ) |
#define EDD_BUS_TYPE_ISA EDD_BUS_TYPE ( 'I', 'S', 'A' ) |
#define EDD_BUS_TYPE_PCIX EDD_BUS_TYPE ( 'P', 'C', 'I', 'X' ) |
#define EDD_BUS_TYPE_IBND EDD_BUS_TYPE ( 'I', 'B', 'N', 'D' ) |
#define EDD_BUS_TYPE_XPRS EDD_BUS_TYPE ( 'X', 'P', 'R', 'S' ) |
#define EDD_BUS_TYPE_HTPT EDD_BUS_TYPE ( 'H', 'T', 'P', 'T' ) |
EDD interface type.
#define EDD_INTF_TYPE | ( | ... | ) |
#define EDD_INTF_TYPE_ATA EDD_INTF_TYPE ( 'A', 'T', 'A' ) |
#define EDD_INTF_TYPE_ATAPI EDD_INTF_TYPE ( 'A', 'T', 'A', 'P', 'I' ) |
#define EDD_INTF_TYPE_SCSI EDD_INTF_TYPE ( 'S', 'C', 'S', 'I' ) |
#define EDD_INTF_TYPE_USB EDD_INTF_TYPE ( 'U', 'S', 'B' ) |
#define EDD_INTF_TYPE_1394 EDD_INTF_TYPE ( '1', '3', '9', '4' ) |
#define EDD_INTF_TYPE_FIBRE EDD_INTF_TYPE ( 'F', 'I', 'B', 'R', 'E' ) |
#define EDD_INTF_TYPE_I2O EDD_INTF_TYPE ( 'I', '2', 'O' ) |
#define EDD_INTF_TYPE_RAID EDD_INTF_TYPE ( 'R', 'A', 'I', 'D' ) |
#define EDD_INTF_TYPE_SATA EDD_INTF_TYPE ( 'S', 'A', 'T', 'A' ) |
#define EDD_INTF_TYPE_SAS EDD_INTF_TYPE ( 'S', 'A', 'S' ) |
#define EDD_DEVICE_PATH_INFO_KEY 0xbedd |
#define edd_describe_TYPE | ( | object_type | ) |
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
struct edd_host_bus_type __attribute__ | ( | (packed) | ) |
Legacy bus type.
SAS interface type.
SATA interface type.
RAID interface type.
I2O interface type.
Fibre Channel interface type.
IEEE1394 interface type.
USB interface type.
SCSI interface type.
ATAPI interface type.
ATA interface type.
PCI, PCI-X, PCI Express, or HyperTransport bus type.
int edd_describe | ( | struct interface * | intf, |
struct edd_interface_type * | type, | ||
union edd_device_path * | path | ||
) |
Describe a disk device using EDD.
intf | Interface |
type | EDD interface type |
path | EDD device path |
rc | Return status code |
Definition at line 44 of file edd.c.
References dest, edd_describe(), edd_describe_TYPE, ENOTSUP, interface::intf, intf_get_dest_op, intf_object(), intf_put(), op, rc, and type.
Referenced by edd_describe(), and int13_device_path_info().
uint8_t bus |
Bus.
Definition at line 14 of file edd.h.
Referenced by alloc_usb(), alloc_usb_bus(), alloc_usb_hub(), efipci_dma_map(), ehci_bus_close(), ehci_bus_open(), ehci_bus_poll(), ehci_device_address(), ehci_device_close(), ehci_poll_companions(), ehci_remove(), falcon_spi_rw(), find_usb(), find_usb_bus(), find_usb_bus_by_location(), format_busdevfn_setting(), free_usb_bus(), hub_probe(), ncm_in_prefill(), pcibridge_find(), register_usb(), register_usb_bus(), register_usb_hub(), spi_bit_rw(), spi_bit_transfer(), spi_read(), spi_wait(), spi_write(), threewire_read(), threewire_write(), uhci_bus_close(), uhci_bus_open(), uhci_bus_poll(), uhci_device_address(), uhci_device_close(), uhci_remove(), undi_load(), unregister_usb_bus(), usb_alloc_address(), usb_bus_get_hostdata(), usb_bus_set_hostdata(), usb_control(), usb_find_next(), usb_free_address(), usb_poll(), usb_probe_all(), usb_settings_fetch(), usb_step(), usbio_bus_poll(), usbio_endpoint_open(), xhci_bus_close(), xhci_bus_open(), xhci_bus_poll(), and xhci_remove().
uint8_t slot |
Slot.
Definition at line 16 of file edd.h.
Referenced by eisabus_probe(), format_busdevfn_setting(), mcabus_probe(), xhci_address_device(), xhci_address_device_input(), xhci_configure_endpoint(), xhci_configure_endpoint_input(), xhci_context(), xhci_deconfigure_endpoint(), xhci_device_address(), xhci_device_close(), xhci_device_open(), xhci_disable_slot(), xhci_enable_slot(), xhci_endpoint_close(), xhci_endpoint_mtu(), xhci_endpoint_open(), xhci_endpoint_reset(), xhci_evaluate_context(), xhci_hub_open(), xhci_port_protocol(), xhci_port_slot_type(), xhci_reset_endpoint(), xhci_ring_alloc(), xhci_set_tr_dequeue_pointer(), xhci_stop_endpoint(), and xhci_transfer().
uint8_t slave |
uint64_t lun |
Logical Unit Number.
Definition at line 32 of file edd.h.
Referenced by fcp_open(), fcp_parse_uri(), fcpdev_edd_describe(), fcpdev_open(), ib_srp_open(), scsi_open(), scsi_parse_lun(), srp_open(), and usbblk_open_uri().
uint8_t serial |
Serial number.
Serial number string.
Definition at line 30 of file edd.h.
Referenced by cms_parse_identifier(), linda_read_eeprom(), qib7322_read_eeprom(), x509_find_issuer_serial(), and x509_parse_serial().
uint64_t guid |
GUID.
Definition at line 30 of file edd.h.
Referenced by efi_block_match(), efi_find_table(), efi_guid_ntoa(), efi_ifr_form_set_op(), efi_ifr_package(), efi_ifr_varstore_name_value_op(), efi_install_configuration_table_wrapper(), efi_path_guid(), efi_shim_get_variable(), efi_shim_is_sbatlevel(), efi_shim_set_variable(), efi_snp_hii_random_guid(), efivars_fetch(), efivars_find(), ib_sma_node_desc(), ipoib_init_addr(), linda_read_eeprom(), qib7322_read_eeprom(), xcm_find(), and xsigo_xds_complete().
uint64_t wwn |
WWN.
Definition at line 30 of file edd.h.
Referenced by fc_aton(), fc_ntoa(), fcp_open(), fcp_parse_uri(), fcpdev_edd_describe(), and fcpdev_open().
uint64_t tag |
Identity tag.
Definition at line 30 of file edd.h.
Referenced by aoecmd_create(), aoecmd_find_tag(), ata_command(), atadev_command(), copy_encap_settings(), dhcp_tag_name(), dhcpopt_applies(), dhcpopt_fetch(), dhcpopt_store(), dhcppkt_applies(), dhcppkt_fetch(), dhcppkt_store(), efi_netdev_path(), efi_vlan_find(), efi_vlan_remove(), efi_vlan_set(), efipci_discover_one(), efipci_ioremap(), fcoe_fip_rx_vlan(), find_dhcp_option_with_encap(), find_dhcp_packet_field(), find_image_tag(), free_image(), gcm_tag(), hermon_eth_complete_recv(), image_tag(), imgstat(), intelxl_poll_rx(), ipair_tag(), isapnp_find_tag(), parse_setting_tag(), pci_vpd_find_tag(), peerdist_discovery_reply_tag(), scsicmd_command(), set_dhcp_option(), srp_cmd(), srp_find_tag(), srp_login(), srp_open(), srpdev_scsi_command(), t509_select_tag(), t509_set_tag(), t509bus_probe(), vlan_auto(), vlan_create(), vlan_find(), vlan_netdev_rx(), vlan_netdev_rx_err(), and vlan_rx().
uint32_t array |
Array number.
Definition at line 30 of file edd.h.
Referenced by ar5008_rf_bank_setup(), ar5008_write_rf_array(), ar9003_hw_configpcipowersave(), ath9k_hw_write_array(), nfs_lookup(), nfs_read(), nfs_readlink(), and oncrpc_iob_add_intarray().
struct edd_host_bus_type host_bus_type |
struct edd_interface_type interface_type |
Interface type.
Definition at line 20 of file edd.h.
Referenced by efi_install_protocol_interface_wrapper().
union edd_interface_path interface_path |
union edd_device_path device_path |
Device path.
Definition at line 24 of file edd.h.
Referenced by efi_init(), efi_load_image_wrapper(), and efi_locate_device_path_wrapper().