33 #if !defined(__ELXU_DEVICE_H__)
34 #define __ELXU_DEVICE_H__
39 #define PCI_VENDOR_ID_EMULEX 0x10df
40 #define PCI_VENDOR_ID_ATTO 0x117c
43 #define PCI_DEVICE_ID_LANCER_FC 0xe200
44 #define PCI_DEVICE_ID_LANCER_G6 0xe300
45 #define PCI_DEVICE_ID_PRISM 0xf400
46 #define PCI_DEVICE_ID_LANCER_G6_ATTO 0x0094
47 #define PCI_DEVICE_ID_LANCER_FCOE 0xe260
48 #define PCI_DEVICE_ID_LANCER_NIC 0xe220
49 #define PCI_DEVICE_ID_SKYHAWK_NIC 0x0720
50 #define PCI_DEVICE_ID_SKYHAWK_ISCSI_INI 0x0722
51 #define PCI_DEVICE_ID_SKYHAWK_ISCSI_TGT 0x0723
52 #define PCI_DEVICE_ID_SKYHAWK_FCOE 0x0724
78 typedef struct elxu_device_struct {
79 struct elxu_device_struct *
next;
102 char device_file_name[1024];
159 #endif // __ELXU_HOST_H__
uint16_t subsystem_device
const char * elxu_get_vendor_name(elxu_device_t *device)
Return the vendor name for a device.
char * elxu_get_modeldesc(elxu_device_t *device)
Return the model description for a device.
uint32_t elxu_get_asic_id(elxu_device_t *device)
Return the ASIC ID value for a device.
int is_fc(elxu_device_t *device_p)
Return true IFF the HBA is a FC HBA.
int elxu_device_exec(elxu_device_t *device, char *name, void *arg_in, int arg_in_len, void *arg_out, int arg_out_len)
Execute a management function on a device.
elxu_device_t * elxu_device_from_args(int argc, char *argv[])
Return a pointer to a device based on command line args.
char * elxu_get_ipl(elxu_device_t *device)
Return the IPL version for a device.
int elxu_lancer_set_link_state(elxu_device_t *device_p, uint32_t *status)
struct elxu_device_struct * next
device name specifier This structure is used to describe the type and name of the device ioctl connec...
int is_lancer_g5(elxu_device_t *device_p)
Return true IFF the HBA is a Lancer G5.
int elxu_lancer_set_loopback(elxu_device_t *device_p, const char *fname, int *type)
int is_uspace(elxu_device_t *device_p)
Return true IFF the device is managed by a user space driver.
int elxu_ioctl_device(elxu_device_t *device, int req, void *arg)
Send an ioctl to a device.
int is_lancer(elxu_device_t *device_p)
Return true IFF the HBA is a Lancer.
const char * elxu_get_subsystem_vendor(elxu_device_t *device)
Return the PCI subsystem vendor value for a device.
void fill_device_details(elxu_device_t *device)
char * elxu_get_serialnumber(elxu_device_t *device)
Return the serial number for a device.
const char * elxu_get_device_name(elxu_device_t *device)
Return the device name for a device.
uint32_t elxu_get_phy_port_num(elxu_device_t *device)
Return the physical port number for a device.
int is_skyhawk(elxu_device_t *device_p)
Return true IFF the HBA is a Skyhawk.
void elxu_get_connection_info(elxu_device_t *device)
Print iSCSI connection info for the given device.
int is_fcoe(elxu_device_t *device_p)
Return true IFF the HBA is a FCoE HBA.
elxu_device_t * elxu_device_by_index(int index)
Return a pointer to a device given an index.
int is_nic(elxu_device_t *device_p)
Return true IFF the HBA is a NIC HBA.
char * elxu_device_get_value(elxu_device_t *device, char *key)
Return a property value for a device.
elxu_device_protocol_e protocol
void elxu_build_device_list(int argc, char *argv[])
Create a list of devices.
elxu_device_t * elxu_open_device(elxu_device_name_t *devname)
Open a device file.
uint32_t elxu_get_sliintf(elxu_device_t *device)
Return the sli_intf value for a device.
int is_iscsi(elxu_device_t *device_p)
Return true IFF the HBA is an iSCSI HBA.
void elxu_close_device(elxu_device_t *device)
Close a device.
void set_protocol(elxu_device_t *device)
void elxu_delete_device_list()
int is_prism(elxu_device_t *device_p)
Return true IFF the HBA is a Prism.
char * elxu_get_fwrev(elxu_device_t *device)
Return the firmware revision for a device.
char * elxu_decode_family(uint32_t family)
Lookup a family name.
int elxu_lancer_run_loopback(elxu_device_t *device_p, const char *fname, int type)
int elxu_lancer_get_link_state(elxu_device_t *device_p, uint32_t *status)
elxu_device_driver_e driver
const char * elxu_get_subsystem_device(elxu_device_t *device)
Return the PCI subsystem device value for a device.
int is_calypso(elxu_device_t *device_p)
Return true IFF the HBA is a Calypso.
char * elxu_decode_asic_id(uint32_t asic_id)
Lookup an ASIC ID name.
uint16_t subsystem_vendor