33 #if !defined(__ELXU_MBOX_H__)
34 #define __ELXU_MBOX_H__
39 #define min(x,y) (((x) < (y)) ? (x) : (y))
53 #define CLP_LINKCFG_4X10G "ELX_4x10G"
54 #define CLP_LINKCFG_1X40G "ELX_1x40G"
55 #define CLP_LINKCFG_2X16G "ELX_2x16G"
56 #define CLP_LINKCFG_4X8G "ELX_4x8G"
57 #define CLP_LINKCFG_4X1G "ELX_4x1G"
58 #define CLP_LINKCFG_2X10G "ELX_2x10G"
59 #define CLP_LINKCFG_2X10G_2X8G "ELX_2x10G_2x8G"
68 typedef struct mbox_linkcfg_map_s {
76 #define INTERNAL_LOOPBACK 0x1
77 #define EXTERNAL_LOOPBACK 0x2
78 #define PCI_LOOPBACK 0x3
80 #define LOOPBACK_BUF_SIZE 512
84 void *inbuf, uint32_t inbufLength,
void *outbuf, uint32_t outbufLength);
88 uint32_t offset,
void *outbuf, uint32_t outbufLength);
91 uint32_t offset,
void *outbuf, uint32_t outbufLength);
102 uint32_t delayedAckTimerValue);
104 uint16_t connectionId, uint32_t constrainWindowValue);
109 uint32_t bufferLength);
128 #endif // __ELXU_MBOX_H__
memref_t * elx_pt_dma_alloc(elxu_device_t *device, int size)
Request a DMA allocation through elx_pt.
int mbox_connection_update(elxu_device_t *device, uint32_t request_flags, uint16_t connectionId, uint32_t constrainWindowValue)
int mbox_set_nv_wwn_pt(elxu_device_t *device, char *wwpn_p, char *wwnn_p)
Issue a set non-volatile WWNN/WWPN.
mgmt link config string to CLP string mapping.
int mbox_tcp_parameters(elxu_device_t *device, uint32_t request_flags, uint32_t ackFrequency, uint32_t delayedAckTimerValue)
Issue the Set TCP Parameters mbox command.
int mbox_set_dynamic_dport(elxu_device_t *device, char *state_str)
int mbox_read_rev(elxu_device_t *device)
Issue read rev mailbox command.
int mbox_soft_assign_mac(elxu_device_t *device, int *macaddr)
Soft assign MAC.
int mbox_query_dynamic_dport_status(elxu_device_t *device)
int mbox_common(elxu_device_t *device, mbox_command_t *mboxcmd, uint32_t mboxcmdLength, void *inbuf, uint32_t inbufLength, void *outbuf, uint32_t outbufLength)
Send a mailbox command.
int mbox_set_linkcfg_pt(elxu_device_t *device, char *config)
Set Link configuration.
int remove_vport(elxu_device_t *device_p, uint64_t wwnn, uint64_t wwpn, int targetFlag, int initiatorFlag)
int mbox_get_dport_stats(elxu_device_t *device)
Issue Get dport stats mailbox command Create a GET_DPORT_STAT mailbox command.
int mbox_set_nv_mac_pt(elxu_device_t *device, int *macaddr)
int mbox_read_status(elxu_device_t *device, uint32_t clear_counter)
Issue read status mailbox command.
int mbox_ext_fat(elxu_device_t *device, uint32_t opcode, void *mbox, uint32_t mboxLength)
Issue EFD mailbox command.
int mbox_set_active_profile_pt(elxu_device_t *device, char *new_profile_id)
void mbox_get_wwn_pt(int fd, uint8_t *wwnn, uint8_t *wwpn)
int mbox_enable_nagle(elxu_device_t *device, int enable)
int mbox_manage_fat(elxu_device_t *device, uint32_t fat_operation, uint32_t read_log_offset, void *buffer, uint32_t bufferLength)
Issue COMMON_MANAGE_FAT mailbox commands.
int mbox_read_flashrom(elxu_device_t *device, uint32_t opcode, uint32_t optype, uint32_t offset, void *outbuf, uint32_t outbufLength)
Issue read flashrom mailbox command.
int mbox_sli4_init_pt(elxu_device_t *device)
int mbox_read_link_status(elxu_device_t *device, int clof, int clrc)
Issue read link status mailbox command.
char * mbox_get_linkcfg_pt(elxu_device_t *device)
Get Link configuration.
int mbox_get_active_profile_pt(elxu_device_t *device, char *result, int result_len)
int create_vport(elxu_device_t *device_p, uint64_t wwnn, uint64_t wwpn, int targetFlag, int initiatorFlag)
int mbox_fw_reset_pt(elxu_device_t *device, int dd)
int mbox_diag_loopback_tests(elxu_device_t *device, int loopback_type, int retry_count)
Issue set link diag loopback mailbox command.
void mbox_get_mac_pt(elxu_device_t *device, uint8_t *mac_addr)
int mbox_write_flashrom(elxu_device_t *device, uint32_t opcode, uint32_t optype, uint32_t offset, void *inbuf, uint32_t inbufLength)
Issue write flashrom mailbox command.
void elx_pt_dma_free(memref_t *memref)
Free a DMA allocation through elx_pt.
int mbox_get_profile_list_pt(elxu_device_t *device, char *result, int result_len)
int mbox_get_connection_info(elxu_device_t *device, uint32_t connectionHandle)
Get connection info.
int mbox_get_serialnum_pt(elxu_device_t *device, char *serial_num, int serial_num_size)