/linux/drivers/net/ethernet/cisco/enic/ |
H A D | enic_dev.c | 10 #include "enic.h" 13 int enic_dev_fw_info(struct enic *enic, struct vnic_devcmd_fw_info **fw_info) in enic_dev_fw_info() argument 17 spin_lock_bh(&enic->devcmd_lock); in enic_dev_fw_info() 18 err = vnic_dev_fw_info(enic->vdev, fw_info); in enic_dev_fw_info() 19 spin_unlock_bh(&enic->devcmd_lock); in enic_dev_fw_info() 24 int enic_dev_stats_dump(struct enic *enic, struct vnic_stats **vstats) in enic_dev_stats_dump() argument 28 spin_lock_bh(&enic->devcmd_lock); in enic_dev_stats_dump() 29 err = vnic_dev_stats_dump(enic in enic_dev_stats_dump() 35 enic_dev_add_station_addr(struct enic * enic) enic_dev_add_station_addr() argument 49 enic_dev_del_station_addr(struct enic * enic) enic_dev_del_station_addr() argument 63 enic_dev_packet_filter(struct enic * enic,int directed,int multicast,int broadcast,int promisc,int allmulti) enic_dev_packet_filter() argument 76 enic_dev_add_addr(struct enic * enic,const u8 * addr) enic_dev_add_addr() argument 87 enic_dev_del_addr(struct enic * enic,const u8 * addr) enic_dev_del_addr() argument 98 enic_dev_notify_unset(struct enic * enic) enic_dev_notify_unset() argument 109 enic_dev_hang_notify(struct enic * enic) enic_dev_hang_notify() argument 120 enic_dev_set_ig_vlan_rewrite_mode(struct enic * enic) enic_dev_set_ig_vlan_rewrite_mode() argument 132 enic_dev_enable(struct enic * enic) enic_dev_enable() argument 143 enic_dev_disable(struct enic * enic) enic_dev_disable() argument 154 enic_dev_intr_coal_timer_info(struct enic * enic) enic_dev_intr_coal_timer_info() argument 168 struct enic *enic = netdev_priv(netdev); enic_vlan_rx_add_vid() local 181 struct enic *enic = netdev_priv(netdev); enic_vlan_rx_kill_vid() local [all...] |
H A D | enic_res.c | 27 #include "enic.h" 29 int enic_get_vnic_config(struct enic *enic) in enic_get_vnic_config() argument 31 struct vnic_enet_config *c = &enic->config; in enic_get_vnic_config() 34 err = vnic_dev_get_mac_addr(enic->vdev, enic->mac_addr); in enic_get_vnic_config() 36 dev_err(enic_get_dev(enic), in enic_get_vnic_config() 43 err = vnic_dev_spec(enic->vdev, \ in enic_get_vnic_config() 47 dev_err(enic_get_dev(enic), \ in enic_get_vnic_config() 88 vnic_dev_get_intr_coal_timer_max(enic in enic_get_vnic_config() 116 enic_add_vlan(struct enic * enic,u16 vlanid) enic_add_vlan() argument 129 enic_del_vlan(struct enic * enic,u16 vlanid) enic_del_vlan() argument 142 enic_set_nic_cfg(struct enic * enic,u8 rss_default_cpu,u8 rss_hash_type,u8 rss_hash_bits,u8 rss_base_cpu,u8 rss_enable,u8 tso_ipid_split_en,u8 ig_vlan_strip_en) enic_set_nic_cfg() argument 165 enic_set_rss_key(struct enic * enic,dma_addr_t key_pa,u64 len) enic_set_rss_key() argument 173 enic_set_rss_cpu(struct enic * enic,dma_addr_t cpu_pa,u64 len) enic_set_rss_cpu() argument 181 enic_free_vnic_resources(struct enic * enic) enic_free_vnic_resources() argument 195 enic_get_res_counts(struct enic * enic) enic_get_res_counts() argument 214 enic_init_vnic_resources(struct enic * enic) enic_init_vnic_resources() argument 319 enic_alloc_vnic_resources(struct enic * enic) enic_alloc_vnic_resources() argument 417 enic_ext_cq(struct enic * enic) enic_ext_cq() argument [all...] |
H A D | enic_dev.h | 14 #define ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnicdevcmdfn, ...) \ argument 16 spin_lock_bh(&enic->devcmd_lock); \ 17 if (enic_is_valid_vf(enic, vf)) { \ 18 vnic_dev_cmd_proxy_by_index_start(enic->vdev, vf); \ 19 err = vnicdevcmdfn(enic->vdev, ##__VA_ARGS__); \ 20 vnic_dev_cmd_proxy_end(enic->vdev); \ 22 err = vnicdevcmdfn(enic->vdev, ##__VA_ARGS__); \ 24 spin_unlock_bh(&enic->devcmd_lock); \ 27 int enic_dev_fw_info(struct enic *enic, struc [all...] |
H A D | enic_clsf.c | 14 * @enic: enic struct of vnic 21 int enic_addfltr_5t(struct enic *enic, struct flow_keys *keys, u16 rq) in enic_addfltr_5t() argument 44 spin_lock_bh(&enic->devcmd_lock); in enic_addfltr_5t() 45 res = vnic_dev_classifier(enic->vdev, CLSF_ADD, &rq, &data); in enic_addfltr_5t() 46 spin_unlock_bh(&enic->devcmd_lock); in enic_addfltr_5t() 53 * @enic: enic struct of vnic 59 int enic_delfltr(struct enic *eni argument 73 enic_rfs_flw_tbl_init(struct enic * enic) enic_rfs_flw_tbl_init() argument 85 enic_rfs_flw_tbl_free(struct enic * enic) enic_rfs_flw_tbl_free() argument 107 htbl_fltr_search(struct enic * enic,u16 fltr_id) htbl_fltr_search() argument 128 struct enic *enic = timer_container_of(enic, t, rfs_h.rfs_may_expire); enic_flow_may_expire() local 176 struct enic *enic; enic_rx_flow_steer() local [all...] |
H A D | enic_pp.c | 15 #include "enic.h" 23 int enic_is_valid_pp_vf(struct enic *enic, int vf, int *err) in enic_is_valid_pp_vf() argument 27 if (enic_sriov_enabled(enic)) { in enic_is_valid_pp_vf() 28 if (vf < 0 || vf >= enic->num_vfs) { in enic_is_valid_pp_vf() 42 if (vf == PORT_SELF_VF && !enic_is_dynamic(enic)) { in enic_is_valid_pp_vf() 54 static int enic_set_port_profile(struct enic *enic, int vf) in enic_set_port_profile() argument 56 struct net_device *netdev = enic->netdev; in enic_set_port_profile() 66 ENIC_PP_BY_INDEX(enic, v in enic_set_port_profile() 130 enic_unset_port_profile(struct enic * enic,int vf) enic_unset_port_profile() argument 174 enic_pp_preassociate(struct enic * enic,int vf,struct enic_port_profile * prev_pp,int * restore_pp) enic_pp_preassociate() argument 180 enic_pp_disassociate(struct enic * enic,int vf,struct enic_port_profile * prev_pp,int * restore_pp) enic_pp_disassociate() argument 202 enic_pp_preassociate_rr(struct enic * enic,int vf,struct enic_port_profile * prev_pp,int * restore_pp) enic_pp_preassociate_rr() argument 241 enic_pp_associate(struct enic * enic,int vf,struct enic_port_profile * prev_pp,int * restore_pp) enic_pp_associate() argument 289 enic_process_set_pp_request(struct enic * enic,int vf,struct enic_port_profile * prev_pp,int * restore_pp) enic_process_set_pp_request() argument 306 enic_process_get_pp_request(struct enic * enic,int vf,int request,u16 * response) enic_process_get_pp_request() argument [all...] |
H A D | enic.h | 22 #define DRV_NAME "enic" 80 /* enic port profile set flags */ 190 struct enic { struct 248 struct enic *enic = vdev->priv; in vnic_get_netdev() local 250 return enic->netdev; in vnic_get_netdev() 269 static inline struct device *enic_get_dev(struct enic *enic) in enic_get_dev() argument 271 return &(enic->pdev->dev); in enic_get_dev() 274 static inline unsigned int enic_cq_rq(struct enic *eni argument 201 msixenic global() argument 210 rx_coalesce_settingenic global() argument 216 enic_api_lockenic global() argument 217 enic_api_busyenic global() argument 218 ppenic global() argument 220 wqenic global() argument 226 rqenic global() argument 240 rfs_henic global() argument 279 enic_cq_wq(struct enic * enic,unsigned int wq) enic_cq_wq() argument 284 enic_msix_rq_intr(struct enic * enic,unsigned int rq) enic_msix_rq_intr() argument 290 enic_msix_wq_intr(struct enic * enic,unsigned int wq) enic_msix_wq_intr() argument 310 enic_msix_err_intr(struct enic * enic) enic_msix_err_intr() argument 315 enic_msix_notify_intr(struct enic * enic) enic_msix_notify_intr() argument 320 enic_is_err_intr(struct enic * enic,int intr) enic_is_err_intr() argument 333 enic_is_notify_intr(struct enic * enic,int intr) enic_is_notify_intr() argument 346 enic_dma_map_check(struct enic * enic,dma_addr_t dma_addr) enic_dma_map_check() argument [all...] |
H A D | enic_clsf.h | 6 #include "enic.h" 10 int enic_addfltr_5t(struct enic *enic, struct flow_keys *keys, u16 rq); 11 int enic_delfltr(struct enic *enic, u16 filter_id); 12 void enic_rfs_flw_tbl_init(struct enic *enic); 13 void enic_rfs_flw_tbl_free(struct enic *enic); 14 struct enic_rfs_fltr_node *htbl_fltr_search(struct enic *eni 21 enic_rfs_timer_start(struct enic * enic) enic_rfs_timer_start() argument 27 enic_rfs_timer_stop(struct enic * enic) enic_rfs_timer_stop() argument 32 enic_rfs_timer_start(struct enic * enic) enic_rfs_timer_start() argument 33 enic_rfs_timer_stop(struct enic * enic) enic_rfs_timer_stop() argument [all...] |
H A D | enic_ethtool.c | 9 #include "enic.h" 118 static void enic_intr_coal_set_rx(struct enic *enic, u32 timer) in enic_intr_coal_set_rx() argument 123 for (i = 0; i < enic->rq_count; i++) { in enic_intr_coal_set_rx() 124 intr = enic_msix_rq_intr(enic, i); in enic_intr_coal_set_rx() 125 vnic_intr_coalescing_timer_set(&enic->intr[intr], timer); in enic_intr_coal_set_rx() 132 struct enic *enic = netdev_priv(netdev); in enic_get_ksettings() local 144 base->speed = vnic_dev_port_speed(enic->vdev); in enic_get_ksettings() 159 struct enic *eni in enic_get_drvinfo() local 181 struct enic *enic = netdev_priv(netdev); enic_get_strings() local 222 struct enic *enic = netdev_priv(netdev); enic_get_ringparam() local 236 struct enic *enic = netdev_priv(netdev); enic_set_ringparam() local 298 struct enic *enic = netdev_priv(netdev); enic_get_sset_count() local 319 struct enic *enic = netdev_priv(netdev); enic_get_ethtool_stats() local 361 struct enic *enic = netdev_priv(netdev); enic_get_msglevel() local 367 struct enic *enic = netdev_priv(netdev); enic_set_msglevel() local 376 struct enic *enic = netdev_priv(netdev); enic_get_coalesce() local 390 enic_coalesce_valid(struct enic * enic,struct ethtool_coalesce * ec) enic_coalesce_valid() argument 423 struct enic *enic = netdev_priv(netdev); enic_set_coalesce() local 470 enic_grxclsrlall(struct enic * enic,struct ethtool_rxnfc * cmd,u32 * rule_locs) enic_grxclsrlall() argument 494 enic_grxclsrule(struct enic * enic,struct ethtool_rxnfc * cmd) enic_grxclsrule() argument 534 struct enic *enic = netdev_priv(dev); enic_get_rx_flow_hash() local 579 struct enic *enic = netdev_priv(dev); enic_get_rxnfc() local 618 struct enic *enic = netdev_priv(netdev); enic_get_rxfh() local 632 struct enic *enic = netdev_priv(netdev); enic_set_rxfh() local 656 struct enic *enic = netdev_priv(netdev); enic_get_channels() local [all...] |
H A D | enic_wq.c | 6 #include "enic.h" 43 struct enic *enic = vnic_dev_priv(wq->vdev); in enic_free_wq_buf() local 46 dma_unmap_single(&enic->pdev->dev, buf->dma_addr, buf->len, in enic_free_wq_buf() 49 dma_unmap_page(&enic->pdev->dev, buf->dma_addr, buf->len, in enic_free_wq_buf() 59 struct enic *enic = vnic_dev_priv(wq->vdev); in enic_wq_free_buf() local 61 enic->wq[wq->index].stats.cq_work++; in enic_wq_free_buf() 62 enic->wq[wq->index].stats.cq_bytes += buf->len; in enic_wq_free_buf() 69 struct enic *eni in enic_wq_service() local 86 enic_wq_cq_service(struct enic * enic,unsigned int cq_index,unsigned int work_to_do) enic_wq_cq_service() argument [all...] |
H A D | enic_res.h | 31 #define ENIC_SETTING(enic, f) ((enic->config.flags & VENETF_##f) ? 1 : 0) argument 128 struct enic; 130 int enic_get_vnic_config(struct enic *); 131 int enic_add_vlan(struct enic *enic, u16 vlanid); 132 int enic_del_vlan(struct enic *enic, u16 vlanid); 133 int enic_set_nic_cfg(struct enic *enic, u [all...] |
H A D | enic_pp.h | 7 #define ENIC_PP_BY_INDEX(enic, vf, pp, err) \ argument 9 if (enic_is_valid_pp_vf(enic, vf, err)) \ 10 pp = (vf == PORT_SELF_VF) ? enic->pp : enic->pp + vf; \ 15 int enic_process_set_pp_request(struct enic *enic, int vf, 17 int enic_process_get_pp_request(struct enic *enic, int vf, 19 int enic_is_valid_pp_vf(struct enic *enic, in [all...] |
H A D | enic_api.c | 11 #include "enic.h" 18 struct enic *enic = netdev_priv(netdev); in enic_api_devcmd_proxy_by_index() local 19 struct vnic_dev *vdev = enic->vdev; in enic_api_devcmd_proxy_by_index() 21 spin_lock(&enic->enic_api_lock); in enic_api_devcmd_proxy_by_index() 22 while (enic->enic_api_busy) { in enic_api_devcmd_proxy_by_index() 23 spin_unlock(&enic->enic_api_lock); in enic_api_devcmd_proxy_by_index() 25 spin_lock(&enic->enic_api_lock); in enic_api_devcmd_proxy_by_index() 28 spin_lock_bh(&enic->devcmd_lock); in enic_api_devcmd_proxy_by_index() 34 spin_unlock_bh(&enic in enic_api_devcmd_proxy_by_index() [all...] |
H A D | enic_rq.c | 7 #include "enic.h" 104 struct enic *enic = vnic_dev_priv(vrq->vdev); in enic_rq_set_skb_flags() local 105 struct net_device *netdev = enic->netdev; in enic_rq_set_skb_flags() 106 struct enic_rq_stats *rqstats = &enic->rq[vrq->index].stats; in enic_rq_set_skb_flags() 125 if (enic->vxlan.vxlan_udp_port_number) { in enic_rq_set_skb_flags() 126 switch (enic->vxlan.patch_level) { in enic_rq_set_skb_flags() 255 struct enic *enic = vnic_dev_priv(vrq->vdev); in enic_rq_pkt_error() local 256 struct enic_rq_stats *rqstats = &enic in enic_rq_pkt_error() 272 struct enic *enic = vnic_dev_priv(rq->vdev); enic_rq_alloc_buf() local 306 struct enic *enic = vnic_dev_priv(rq->vdev); enic_free_rq_buf() local 316 enic_rq_indicate_buf(struct enic * enic,struct vnic_rq * rq,struct vnic_rq_buf * buf,void * cq_desc,u8 type,u16 q_number,u16 completed_index) enic_rq_indicate_buf() argument 387 enic_rq_service(struct enic * enic,void * cq_desc,u8 type,u16 q_number,u16 completed_index) enic_rq_service() argument 411 enic_rq_cq_service(struct enic * enic,unsigned int cq_index,unsigned int work_to_do) enic_rq_cq_service() argument [all...] |
H A D | enic_wq.h | 6 unsigned int enic_wq_cq_service(struct enic *enic, unsigned int cq_index,
|
H A D | enic_rq.h | 5 unsigned int enic_rq_cq_service(struct enic *enic, unsigned int cq_index,
|
H A D | Makefile | 2 obj-$(CONFIG_ENIC) := enic.o 4 enic-y := enic_main.o vnic_cq.o vnic_intr.o vnic_wq.o \
|
/linux/drivers/net/ethernet/cisco/ |
H A D | Makefile | 6 obj-$(CONFIG_ENIC) += enic/
|
H A D | Kconfig | 20 source "drivers/net/ethernet/cisco/enic/Kconfig"
|
/linux/drivers/infiniband/hw/usnic/ |
H A D | Makefile | 2 ccflags-y := -I $(srctree)/drivers/net/ethernet/cisco/enic
|
/linux/ |
H A D | MAINTAINERS | 5945 F: drivers/net/ethernet/cisco/enic/
|