Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/ixgbe/ixgbe.h
Show First 20 Lines • Show All 273 Lines • ▼ Show 20 Lines | struct ixgbe_mc_addr { | ||||
u8 addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; | u8 addr[IXGBE_ETH_LENGTH_OF_ADDRESS]; | ||||
u32 vmdq; | u32 vmdq; | ||||
}; | }; | ||||
/* | /* | ||||
* The transmit ring, one per queue | * The transmit ring, one per queue | ||||
*/ | */ | ||||
struct tx_ring { | struct tx_ring { | ||||
struct adapter *adapter; | struct ixgbe_softc *sc; | ||||
union ixgbe_adv_tx_desc *tx_base; | union ixgbe_adv_tx_desc *tx_base; | ||||
uint64_t tx_paddr; | uint64_t tx_paddr; | ||||
u32 tail; | u32 tail; | ||||
qidx_t *tx_rsq; | qidx_t *tx_rsq; | ||||
qidx_t tx_rs_cidx; | qidx_t tx_rs_cidx; | ||||
qidx_t tx_rs_pidx; | qidx_t tx_rs_pidx; | ||||
qidx_t tx_cidx_processed; | qidx_t tx_cidx_processed; | ||||
uint8_t me; | uint8_t me; | ||||
Show All 10 Lines | |||||
}; | }; | ||||
/* | /* | ||||
* The Receive ring, one per rx queue | * The Receive ring, one per rx queue | ||||
*/ | */ | ||||
struct rx_ring { | struct rx_ring { | ||||
struct ix_rx_queue *que; | struct ix_rx_queue *que; | ||||
struct adapter *adapter; | struct ixgbe_softc *sc; | ||||
u32 me; | u32 me; | ||||
u32 tail; | u32 tail; | ||||
union ixgbe_adv_rx_desc *rx_base; | union ixgbe_adv_rx_desc *rx_base; | ||||
bool hw_rsc; | bool hw_rsc; | ||||
bool vtag_strip; | bool vtag_strip; | ||||
uint64_t rx_paddr; | uint64_t rx_paddr; | ||||
bus_dma_tag_t ptag; | bus_dma_tag_t ptag; | ||||
u32 bytes; /* Used for AIM calc */ | u32 bytes; /* Used for AIM calc */ | ||||
u32 packets; | u32 packets; | ||||
/* Soft stats */ | /* Soft stats */ | ||||
u64 rx_irq; | u64 rx_irq; | ||||
u64 rx_copies; | u64 rx_copies; | ||||
u64 rx_packets; | u64 rx_packets; | ||||
u64 rx_bytes; | u64 rx_bytes; | ||||
u64 rx_discarded; | u64 rx_discarded; | ||||
u64 rsc_num; | u64 rsc_num; | ||||
/* Flow Director */ | /* Flow Director */ | ||||
u64 flm; | u64 flm; | ||||
}; | }; | ||||
markj: All the indentation here looks strange now. Are you editing with tabstop=4? | |||||
Done Inline ActionsYes good call! kbowling: Yes good call! | |||||
/* | /* | ||||
* Driver queue struct: this is the interrupt container | * Driver queue struct: this is the interrupt container | ||||
* for the associated tx and rx ring. | * for the associated tx and rx ring. | ||||
*/ | */ | ||||
struct ix_rx_queue { | struct ix_rx_queue { | ||||
struct adapter *adapter; | struct ixgbe_softc *sc; | ||||
u32 msix; /* This queue's MSIX vector */ | u32 msix; /* This queue's MSIX vector */ | ||||
u32 eitr_setting; | u32 eitr_setting; | ||||
struct resource *res; | struct resource *res; | ||||
void *tag; | void *tag; | ||||
int busy; | int busy; | ||||
struct rx_ring rxr; | struct rx_ring rxr; | ||||
struct if_irq que_irq; | struct if_irq que_irq; | ||||
u64 irqs; | u64 irqs; | ||||
}; | }; | ||||
struct ix_tx_queue { | struct ix_tx_queue { | ||||
struct adapter *adapter; | struct ixgbe_softc *sc; | ||||
u32 msix; /* This queue's MSIX vector */ | u32 msix; /* This queue's MSIX vector */ | ||||
struct tx_ring txr; | struct tx_ring txr; | ||||
}; | }; | ||||
#define IXGBE_MAX_VF_MC 30 /* Max number of multicast entries */ | #define IXGBE_MAX_VF_MC 30 /* Max number of multicast entries */ | ||||
struct ixgbe_vf { | struct ixgbe_vf { | ||||
u_int pool; | u_int pool; | ||||
u_int rar_index; | u_int rar_index; | ||||
u_int maximum_frame_size; | u_int maximum_frame_size; | ||||
uint32_t flags; | uint32_t flags; | ||||
uint8_t ether_addr[ETHER_ADDR_LEN]; | uint8_t ether_addr[ETHER_ADDR_LEN]; | ||||
uint16_t mc_hash[IXGBE_MAX_VF_MC]; | uint16_t mc_hash[IXGBE_MAX_VF_MC]; | ||||
uint16_t num_mc_hashes; | uint16_t num_mc_hashes; | ||||
uint16_t default_vlan; | uint16_t default_vlan; | ||||
uint16_t vlan_tag; | uint16_t vlan_tag; | ||||
uint16_t api_ver; | uint16_t api_ver; | ||||
}; | }; | ||||
/* Our adapter structure */ | /* Our softc structure */ | ||||
struct adapter { | struct ixgbe_softc { | ||||
struct ixgbe_hw hw; | struct ixgbe_hw hw; | ||||
struct ixgbe_osdep osdep; | struct ixgbe_osdep osdep; | ||||
if_ctx_t ctx; | if_ctx_t ctx; | ||||
if_softc_ctx_t shared; | if_softc_ctx_t shared; | ||||
#define num_tx_queues shared->isc_ntxqsets | #define num_tx_queues shared->isc_ntxqsets | ||||
#define num_rx_queues shared->isc_nrxqsets | #define num_rx_queues shared->isc_nrxqsets | ||||
#define max_frame_size shared->isc_max_frame_size | #define max_frame_size shared->isc_max_frame_size | ||||
#define intr_type shared->isc_intr | #define intr_type shared->isc_intr | ||||
▲ Show 20 Lines • Show All 195 Lines • ▼ Show 20 Lines | if ((addr[0] == 0 && addr[1]== 0 && addr[2] == 0 && | ||||
addr[3] == 0 && addr[4]== 0 && addr[5] == 0)) | addr[3] == 0 && addr[4]== 0 && addr[5] == 0)) | ||||
status = false; | status = false; | ||||
return (status); | return (status); | ||||
} | } | ||||
/* Shared Prototypes */ | /* Shared Prototypes */ | ||||
int ixgbe_allocate_queues(struct adapter *); | int ixgbe_allocate_queues(struct ixgbe_softc *); | ||||
int ixgbe_setup_transmit_structures(struct adapter *); | int ixgbe_setup_transmit_structures(struct ixgbe_softc *); | ||||
void ixgbe_free_transmit_structures(struct adapter *); | void ixgbe_free_transmit_structures(struct ixgbe_softc *); | ||||
int ixgbe_setup_receive_structures(struct adapter *); | int ixgbe_setup_receive_structures(struct ixgbe_softc *); | ||||
void ixgbe_free_receive_structures(struct adapter *); | void ixgbe_free_receive_structures(struct ixgbe_softc *); | ||||
int ixgbe_get_regs(SYSCTL_HANDLER_ARGS); | int ixgbe_get_regs(SYSCTL_HANDLER_ARGS); | ||||
#include "ixgbe_bypass.h" | #include "ixgbe_bypass.h" | ||||
#include "ixgbe_fdir.h" | #include "ixgbe_fdir.h" | ||||
#include "ixgbe_rss.h" | #include "ixgbe_rss.h" | ||||
#endif /* _IXGBE_H_ */ | #endif /* _IXGBE_H_ */ |
All the indentation here looks strange now. Are you editing with tabstop=4?