Home
last modified time | relevance | path

Searched refs:fbd (Results 1 – 9 of 9) sorted by relevance

/linux/drivers/net/ethernet/meta/fbnic/
H A Dfbnic_pci.c37 u32 fbnic_rd32(struct fbnic_dev *fbd, u32 reg) in fbnic_rd32() argument
39 u32 __iomem *csr = READ_ONCE(fbd->uc_addr0); in fbnic_rd32()
56 WRITE_ONCE(fbd->uc_addr0, NULL); in fbnic_rd32()
57 WRITE_ONCE(fbd->uc_addr4, NULL); in fbnic_rd32()
59 dev_err(fbd->dev, in fbnic_rd32()
64 if (!fbnic_init_failure(fbd)) in fbnic_rd32()
65 netif_device_detach(fbd->netdev); in fbnic_rd32()
70 bool fbnic_fw_present(struct fbnic_dev *fbd) in fbnic_fw_present() argument
72 return !!READ_ONCE(fbd->uc_addr4); in fbnic_fw_present()
75 void fbnic_fw_wr32(struct fbnic_dev *fbd, u32 reg, u32 val) in fbnic_fw_wr32() argument
[all …]
H A Dfbnic_rpc.c54 void fbnic_rss_disable_hw(struct fbnic_dev *fbd) in fbnic_rss_disable_hw() argument
57 if (!fbnic_bmc_present(fbd)) in fbnic_rss_disable_hw()
58 wr32(fbd, FBNIC_RPC_RMI_CONFIG, in fbnic_rss_disable_hw()
81 void fbnic_rss_reinit_hw(struct fbnic_dev *fbd, struct fbnic_net *fbn) in fbnic_rss_reinit_hw() argument
86 wr32(fbd, FBNIC_RPC_RSS_TBL(0, i), fbn->indir_tbl[0][i]); in fbnic_rss_reinit_hw()
87 wr32(fbd, FBNIC_RPC_RSS_TBL(1, i), fbn->indir_tbl[1][i]); in fbnic_rss_reinit_hw()
91 wr32(fbd, FBNIC_RPC_RSS_KEY(i), fbn->rss_key[i]); in fbnic_rss_reinit_hw()
94 wr32(fbd, FBNIC_RPC_ACT_TBL0_DEFAULT, FBNIC_RPC_ACT_TBL0_DROP); in fbnic_rss_reinit_hw()
95 wrfl(fbd); in fbnic_rss_reinit_hw()
97 wr32(fbd, FBNIC_RPC_ACT_TBL1_DEFAULT, 0); in fbnic_rss_reinit_hw()
[all …]
H A Dfbnic_netdev.c15 struct fbnic_dev *fbd = fbn->fbd; in __fbnic_open() local
31 err = fbnic_fw_xmit_ownership_msg(fbd, true); in __fbnic_open()
33 dev_warn(fbd->dev, in __fbnic_open()
43 err = fbnic_fw_init_heartbeat(fbd, false); in __fbnic_open()
47 err = fbnic_mac_request_irq(fbd); in __fbnic_open()
52 fbnic_bmc_rpc_init(fbd); in __fbnic_open()
53 fbnic_rss_reinit(fbd, fbn); in __fbnic_open()
61 fbnic_fw_xmit_ownership_msg(fbn->fbd, false); in __fbnic_open()
76 fbnic_napi_name_irqs(fbn->fbd); in fbnic_open()
89 fbnic_mac_free_irq(fbn->fbd); in fbnic_stop()
[all …]
H A Dfbnic_fw_log.c11 void fbnic_fw_log_enable(struct fbnic_dev *fbd, bool send_hist) in fbnic_fw_log_enable() argument
15 if (!fbnic_fw_log_ready(fbd)) in fbnic_fw_log_enable()
18 if (fbd->fw_cap.running.mgmt.version < MIN_FW_VER_CODE_HIST) in fbnic_fw_log_enable()
21 err = fbnic_fw_xmit_send_logs(fbd, true, send_hist); in fbnic_fw_log_enable()
23 dev_warn(fbd->dev, "Unable to enable firmware logs: %d\n", err); in fbnic_fw_log_enable()
26 void fbnic_fw_log_disable(struct fbnic_dev *fbd) in fbnic_fw_log_disable() argument
30 err = fbnic_fw_xmit_send_logs(fbd, false, false); in fbnic_fw_log_disable()
32 dev_warn(fbd->dev, "Unable to disable firmware logs: %d\n", in fbnic_fw_log_disable()
36 int fbnic_fw_log_init(struct fbnic_dev *fbd) in fbnic_fw_log_init() argument
38 struct fbnic_fw_log *log = &fbd->fw_log; in fbnic_fw_log_init()
[all …]
H A Dfbnic_hwmon.c34 struct fbnic_dev *fbd = dev_get_drvdata(dev); in fbnic_hwmon_read() local
35 const struct fbnic_mac *mac = fbd->mac; in fbnic_hwmon_read()
39 return id < 0 ? id : mac->get_sensor(fbd, id, val); in fbnic_hwmon_read()
58 void fbnic_hwmon_register(struct fbnic_dev *fbd) in fbnic_hwmon_register() argument
63 fbd->hwmon = hwmon_device_register_with_info(fbd->dev, "fbnic", in fbnic_hwmon_register()
64 fbd, &fbnic_chip_info, in fbnic_hwmon_register()
66 if (IS_ERR(fbd->hwmon)) { in fbnic_hwmon_register()
67 dev_notice(fbd->dev, in fbnic_hwmon_register()
69 fbd->hwmon); in fbnic_hwmon_register()
70 fbd->hwmon = NULL; in fbnic_hwmon_register()
[all …]
H A Dfbnic_ethtool.c133 struct fbnic_dev *fbd = fbn->fbd; in fbnic_get_drvinfo() local
135 fbnic_get_fw_ver_commit_str(fbd, drvinfo->fw_version, in fbnic_get_drvinfo()
143 return fbnic_csr_regs_len(fbn->fbd) * sizeof(u32); in fbnic_get_regs_len()
151 fbnic_csr_get_regs(fbn->fbd, data, &regs->version); in fbnic_get_regs()
202 struct fbnic_dev *fbd = orig->fbd; in fbnic_clone_swap() local
206 fbnic_synchronize_irq(fbd, FBNIC_NON_NAPI_VECTORS + i); in fbnic_clone_swap()
377 err = fbnic_wait_all_queues_idle(fbn->fbd, true); in fbnic_set_ringparam()
516 struct fbnic_dev *fbd = fbn->fbd; in fbnic_get_ethtool_stats() local
519 fbnic_get_hw_stats(fbn->fbd); in fbnic_get_ethtool_stats()
521 spin_lock(&fbd->hw_stats.lock); in fbnic_get_ethtool_stats()
[all …]
H A Dfbnic_csr.c60 static void fbnic_csr_get_regs_rpc_ram(struct fbnic_dev *fbd, u32 **data_p) in fbnic_csr_get_regs_rpc_ram() argument
73 *(data++) = rd32(fbd, FBNIC_RPC_TCAM_ACT(i, j)); in fbnic_csr_get_regs_rpc_ram()
79 *(data++) = rd32(fbd, FBNIC_RPC_TCAM_MACDA(i, j)); in fbnic_csr_get_regs_rpc_ram()
85 *(data++) = rd32(fbd, FBNIC_RPC_TCAM_OUTER_IPSRC(i, j)); in fbnic_csr_get_regs_rpc_ram()
91 *(data++) = rd32(fbd, FBNIC_RPC_TCAM_OUTER_IPDST(i, j)); in fbnic_csr_get_regs_rpc_ram()
97 *(data++) = rd32(fbd, FBNIC_RPC_TCAM_IPSRC(i, j)); in fbnic_csr_get_regs_rpc_ram()
103 *(data++) = rd32(fbd, FBNIC_RPC_TCAM_IPDST(i, j)); in fbnic_csr_get_regs_rpc_ram()
109 *(data++) = rd32(fbd, FBNIC_RPC_RSS_TBL(i, j)); in fbnic_csr_get_regs_rpc_ram()
115 void fbnic_csr_get_regs(struct fbnic_dev *fbd, u32 *data, u32 *regs_version) in fbnic_csr_get_regs() argument
129 *(data++) = rd32(fbd, j); in fbnic_csr_get_regs()
[all …]
H A Dfbnic_txrx.c1356 struct fbnic_dev *fbd = nv->fbd; in fbnic_nv_irq_disable() local
1359 fbnic_wr32(fbd, FBNIC_INTR_MASK_SET(v_idx / 32), 1 << (v_idx % 32)); in fbnic_nv_irq_disable()
1364 struct fbnic_dev *fbd = nv->fbd; in fbnic_nv_irq_rearm() local
1367 fbnic_wr32(fbd, FBNIC_INTR_CQ_REARM(v_idx), in fbnic_nv_irq_rearm()
1520 struct fbnic_dev *fbd = nv->fbd; in fbnic_free_napi_vector() local
1535 fbnic_napi_free_irq(fbd, nv); in fbnic_free_napi_vector()
1615 static int fbnic_alloc_napi_vector(struct fbnic_dev *fbd, struct fbnic_net *fbn, in fbnic_alloc_napi_vector() argument
1621 u32 __iomem *uc_addr = fbd->uc_addr0; in fbnic_alloc_napi_vector()
1652 nv->fbd = fbd; in fbnic_alloc_napi_vector()
1662 pci_irq_vector(to_pci_dev(fbd->dev), in fbnic_alloc_napi_vector()
[all …]
H A Dfbnic_txrx.h153 struct fbnic_dev *fbd; member
198 int fbnic_wait_all_queues_idle(struct fbnic_dev *fbd, bool may_fail);