Lines Matching refs:enic

24 int enic_get_vnic_config(struct enic *enic)  in enic_get_vnic_config()  argument
26 struct vnic_enet_config *c = &enic->config; in enic_get_vnic_config()
28 err = vnic_dev_get_mac_addr(enic->vdev, enic->mac_addr); in enic_get_vnic_config()
30 dev_err(enic_get_dev(enic), in enic_get_vnic_config()
37 err = vnic_dev_spec(enic->vdev, \ in enic_get_vnic_config()
41 dev_err(enic_get_dev(enic), \ in enic_get_vnic_config()
62 enic->max_mtu = c->max_pkt_size - (ETHER_HDR_LEN + 4); in enic_get_vnic_config()
64 enic->max_mtu = ENIC_DEFAULT_RX_MAX_PKT_SIZE in enic_get_vnic_config()
69 enic->adv_filters = vnic_dev_capable_adv_filters(enic->vdev); in enic_get_vnic_config()
71 err = vnic_dev_capable_filter_mode(enic->vdev, &enic->flow_filter_mode, in enic_get_vnic_config()
72 &enic->filter_actions); in enic_get_vnic_config()
74 dev_err(enic_get_dev(enic), in enic_get_vnic_config()
78 vnic_dev_capable_udp_rss_weak(enic->vdev, &enic->nic_cfg_chk, in enic_get_vnic_config()
79 &enic->udp_rss_weak); in enic_get_vnic_config()
94 vnic_dev_get_intr_coal_timer_max(enic->vdev)); in enic_get_vnic_config()
96 dev_info(enic_get_dev(enic), in enic_get_vnic_config()
99 enic->mac_addr[0], enic->mac_addr[1], enic->mac_addr[2], in enic_get_vnic_config()
100 enic->mac_addr[3], enic->mac_addr[4], enic->mac_addr[5], in enic_get_vnic_config()
102 c->mtu, enic->max_mtu); in enic_get_vnic_config()
103 dev_info(enic_get_dev(enic), "vNIC csum tx/rx %s/%s " in enic_get_vnic_config()
106 ENIC_SETTING(enic, TXCSUM) ? "yes" : "no", in enic_get_vnic_config()
107 ENIC_SETTING(enic, RXCSUM) ? "yes" : "no", in enic_get_vnic_config()
108 ENIC_SETTING(enic, RSS) ? in enic_get_vnic_config()
109 (ENIC_SETTING(enic, RSSHASH_UDPIPV4) ? "+UDP" : in enic_get_vnic_config()
110 ((enic->udp_rss_weak ? "+udp" : in enic_get_vnic_config()
123 enic->reta_size = ENIC_RSS_RETA_SIZE; in enic_get_vnic_config()
124 enic->hash_key_size = ENIC_RSS_HASH_KEY_SIZE; in enic_get_vnic_config()
125 enic->flow_type_rss_offloads = 0; in enic_get_vnic_config()
128 if (!ENIC_SETTING(enic, RSS)) in enic_get_vnic_config()
129 enic->flow_type_rss_offloads = 0; in enic_get_vnic_config()
131 enic->vxlan = ENIC_SETTING(enic, VXLAN) && in enic_get_vnic_config()
132 vnic_dev_capable_vxlan(enic->vdev); in enic_get_vnic_config()
137 enic->tx_queue_offload_capa = 0; in enic_get_vnic_config()
141 int enic_add_vlan(struct enic *enic, u16 vlanid) in enic_add_vlan() argument
147 err = vnic_dev_cmd(enic->vdev, CMD_VLAN_ADD, &a0, &a1, wait); in enic_add_vlan()
149 dev_err(enic_get_dev(enic), "Can't add vlan id, %d\n", err); in enic_add_vlan()
154 int enic_del_vlan(struct enic *enic, u16 vlanid) in enic_del_vlan() argument
160 err = vnic_dev_cmd(enic->vdev, CMD_VLAN_DEL, &a0, &a1, wait); in enic_del_vlan()
162 dev_err(enic_get_dev(enic), "Can't delete vlan id, %d\n", err); in enic_del_vlan()
167 int enic_set_nic_cfg(struct enic *enic, u8 rss_default_cpu, u8 rss_hash_type, in enic_set_nic_cfg() argument
182 cmd = enic->nic_cfg_chk ? CMD_NIC_CFG_CHK : CMD_NIC_CFG; in enic_set_nic_cfg()
183 return vnic_dev_cmd(enic->vdev, cmd, &a0, &a1, wait); in enic_set_nic_cfg()
186 void enic_get_res_counts(struct enic *enic) in enic_get_res_counts() argument
188 enic->conf_wq_count = vnic_dev_get_res_count(enic->vdev, RES_TYPE_WQ); in enic_get_res_counts()
189 enic->conf_rq_count = vnic_dev_get_res_count(enic->vdev, RES_TYPE_RQ); in enic_get_res_counts()
190 enic->conf_cq_count = vnic_dev_get_res_count(enic->vdev, RES_TYPE_CQ); in enic_get_res_counts()
191 enic->conf_intr_count = vnic_dev_get_res_count(enic->vdev, in enic_get_res_counts()
194 dev_info(enic_get_dev(enic), in enic_get_res_counts()
196 enic->conf_wq_count, enic->conf_rq_count, in enic_get_res_counts()
197 enic->conf_cq_count, enic->conf_intr_count); in enic_get_res_counts()
198 enic->conf_rq_count = min(enic->conf_rq_count, enic->conf_wq_count); in enic_get_res_counts()
199 enic->conf_wq_count = enic->conf_rq_count; in enic_get_res_counts()
200 enic->conf_cq_count = enic->conf_rq_count + enic->conf_wq_count; in enic_get_res_counts()
201 dev_info(enic_get_dev(enic), in enic_get_res_counts()
203 enic->conf_wq_count, enic->conf_rq_count, in enic_get_res_counts()
204 enic->conf_cq_count, enic->conf_intr_count); in enic_get_res_counts()
205 dev_info(enic_get_dev(enic), in enic_get_res_counts()
207 enic->config.wq_desc_count, enic->config.rq_desc_count); in enic_get_res_counts()
209 enic->wq_count = enic->conf_wq_count; in enic_get_res_counts()
210 enic->rq_count = enic->conf_rq_count; in enic_get_res_counts()
211 enic->cq_count = enic->conf_cq_count; in enic_get_res_counts()