Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/ixl/ixl_pf.h
Show First 20 Lines • Show All 83 Lines • ▼ Show 20 Lines | enum ixl_pf_state { | ||||
IXL_PF_STATE_VF_RESET_REQ = (1 << 4), | IXL_PF_STATE_VF_RESET_REQ = (1 << 4), | ||||
IXL_PF_STATE_PF_CRIT_ERR = (1 << 5), | IXL_PF_STATE_PF_CRIT_ERR = (1 << 5), | ||||
IXL_PF_STATE_CORE_RESET_REQ = (1 << 6), | IXL_PF_STATE_CORE_RESET_REQ = (1 << 6), | ||||
IXL_PF_STATE_GLOB_RESET_REQ = (1 << 7), | IXL_PF_STATE_GLOB_RESET_REQ = (1 << 7), | ||||
IXL_PF_STATE_EMP_RESET_REQ = (1 << 8), | IXL_PF_STATE_EMP_RESET_REQ = (1 << 8), | ||||
IXL_PF_STATE_FW_LLDP_DISABLED = (1 << 9), | IXL_PF_STATE_FW_LLDP_DISABLED = (1 << 9), | ||||
IXL_PF_STATE_EEE_ENABLED = (1 << 10), | IXL_PF_STATE_EEE_ENABLED = (1 << 10), | ||||
IXL_PF_STATE_LINK_ACTIVE_ON_DOWN = (1 << 11), | IXL_PF_STATE_LINK_ACTIVE_ON_DOWN = (1 << 11), | ||||
IXL_PF_STATE_UDP_FILTER_SYNC_PENDING = (1 << 12), | |||||
}; | }; | ||||
#define IXL_PF_IN_RECOVERY_MODE(pf) \ | #define IXL_PF_IN_RECOVERY_MODE(pf) \ | ||||
((atomic_load_acq_32(&pf->state) & IXL_PF_STATE_RECOVERY_MODE) != 0) | ((atomic_load_acq_32(&pf->state) & IXL_PF_STATE_RECOVERY_MODE) != 0) | ||||
#define IXL_PF_IS_RESETTING(pf) \ | #define IXL_PF_IS_RESETTING(pf) \ | ||||
((atomic_load_acq_32(&pf->state) & IXL_PF_STATE_RESETTING) != 0) | ((atomic_load_acq_32(&pf->state) & IXL_PF_STATE_RESETTING) != 0) | ||||
#define IXL_PF_HAS_PENDING_UDP_FILTER_SYNC(pf) \ | |||||
((atomic_load_acq_32(&pf->state) & \ | |||||
IXL_PF_STATE_UDP_FILTER_SYNC_PENDING) != 0) | |||||
#define IXL_UDP_PORT_INDEX_UNUSED 255 | |||||
struct ixl_udp_port_config { | |||||
/* AdminQ command interface expects port number in Host byte order */ | |||||
u16 port; | |||||
u8 filter_index; | |||||
bool is_marked_for_deletion; | |||||
}; | |||||
struct ixl_vf { | struct ixl_vf { | ||||
struct ixl_vsi vsi; | struct ixl_vsi vsi; | ||||
u32 vf_flags; | u32 vf_flags; | ||||
u32 num_mdd_events; | u32 num_mdd_events; | ||||
u8 mac[ETHER_ADDR_LEN]; | u8 mac[ETHER_ADDR_LEN]; | ||||
u16 vf_num; | u16 vf_num; | ||||
struct virtchnl_version_info version; | struct virtchnl_version_info version; | ||||
▲ Show 20 Lines • Show All 59 Lines • ▼ Show 20 Lines | #endif | ||||
s32 (*write_i2c_byte)(struct ixl_pf *pf, u8 byte_offset, | s32 (*write_i2c_byte)(struct ixl_pf *pf, u8 byte_offset, | ||||
u8 dev_addr, u8 data); | u8 dev_addr, u8 data); | ||||
/* SR-IOV */ | /* SR-IOV */ | ||||
struct ixl_vf *vfs; | struct ixl_vf *vfs; | ||||
int num_vfs; | int num_vfs; | ||||
uint16_t veb_seid; | uint16_t veb_seid; | ||||
int vc_debug_lvl; | int vc_debug_lvl; | ||||
/* VXLAN */ | |||||
struct ixl_udp_port_config udp_ports[I40E_MAX_PF_UDP_OFFLOAD_PORTS]; | |||||
u16 pending_udp_bitmap; | |||||
}; | }; | ||||
/* | /* | ||||
* Defines used for NVM update ioctls. | * Defines used for NVM update ioctls. | ||||
* This value is used in the Solaris tool, too. | * This value is used in the Solaris tool, too. | ||||
*/ | */ | ||||
#define I40E_NVM_ACCESS \ | #define I40E_NVM_ACCESS \ | ||||
(((((((('E' << 4) + '1') << 4) + 'K') << 4) + 'G') << 4) | 5) | (((((((('E' << 4) + '1') << 4) + 'K') << 4) + 'G') << 4) | 5) | ||||
▲ Show 20 Lines • Show All 249 Lines • ▼ Show 20 Lines | |||||
s32 ixl_read_i2c_byte_aq(struct ixl_pf *pf, u8 byte_offset, | s32 ixl_read_i2c_byte_aq(struct ixl_pf *pf, u8 byte_offset, | ||||
u8 dev_addr, u8 *data); | u8 dev_addr, u8 *data); | ||||
s32 ixl_write_i2c_byte_aq(struct ixl_pf *pf, u8 byte_offset, | s32 ixl_write_i2c_byte_aq(struct ixl_pf *pf, u8 byte_offset, | ||||
u8 dev_addr, u8 data); | u8 dev_addr, u8 data); | ||||
u64 ixl_max_aq_speed_to_value(u8); | u64 ixl_max_aq_speed_to_value(u8); | ||||
int ixl_attach_get_link_status(struct ixl_pf *); | int ixl_attach_get_link_status(struct ixl_pf *); | ||||
int ixl_sysctl_set_flowcntl(SYSCTL_HANDLER_ARGS); | int ixl_sysctl_set_flowcntl(SYSCTL_HANDLER_ARGS); | ||||
int ixl_get_udp_port_idx(struct ixl_pf *, u16); | |||||
void ixl_sync_udp_filters(struct ixl_pf *, bool all); | |||||
#endif /* _IXL_PF_H_ */ | #endif /* _IXL_PF_H_ */ |