| /linux/drivers/net/ethernet/meta/fbnic/ |
| H A D | fbnic_hw_stats.c | 8 static void fbnic_hw_stat_rst32(struct fbnic_dev *fbd, u32 reg, in fbnic_hw_stat_rst32() argument 16 stat->u.old_reg_value_32 = rd32(fbd, reg); in fbnic_hw_stat_rst32() 19 static void fbnic_hw_stat_rd32(struct fbnic_dev *fbd, u32 reg, in fbnic_hw_stat_rd32() argument 24 new_reg_value = rd32(fbd, reg); in fbnic_hw_stat_rd32() 29 u64 fbnic_stat_rd64(struct fbnic_dev *fbd, u32 reg, u32 offset) in fbnic_stat_rd64() argument 33 prev_upper = rd32(fbd, reg + offset); in fbnic_stat_rd64() 34 lower = rd32(fbd, reg); in fbnic_stat_rd64() 35 upper = rd32(fbd, reg + offset); in fbnic_stat_rd64() 42 dev_warn_once(fbd->dev, in fbnic_stat_rd64() 55 static void fbnic_hw_stat_rst64(struct fbnic_dev *fbd, u32 reg, s32 offset, in fbnic_hw_stat_rst64() argument [all …]
|
| H A D | fbnic_pci.c | 37 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 D | fbnic_irq.c | 13 struct fbnic_dev *fbd = (struct fbnic_dev *)data; in fbnic_fw_msix_intr() local 15 fbnic_mbx_poll(fbd); in fbnic_fw_msix_intr() 17 fbnic_wr32(fbd, FBNIC_INTR_MASK_CLEAR(0), 1u << FBNIC_FW_MSIX_ENTRY); in fbnic_fw_msix_intr() 22 static int __fbnic_fw_enable_mbx(struct fbnic_dev *fbd, int vector) in __fbnic_fw_enable_mbx() argument 27 fbnic_mbx_init(fbd); in __fbnic_fw_enable_mbx() 28 err = fbnic_mbx_poll_tx_ready(fbd); in __fbnic_fw_enable_mbx() 30 dev_warn(fbd->dev, "FW mailbox did not enter ready state\n"); in __fbnic_fw_enable_mbx() 36 fbnic_wr32(fbd, FBNIC_INTR_MASK_CLEAR(0), 1u << FBNIC_FW_MSIX_ENTRY); in __fbnic_fw_enable_mbx() 50 int fbnic_fw_request_mbx(struct fbnic_dev *fbd) in fbnic_fw_request_mbx() argument 52 struct pci_dev *pdev = to_pci_dev(fbd->dev); in fbnic_fw_request_mbx() [all …]
|
| H A D | fbnic_mac.c | 11 static void fbnic_init_readrq(struct fbnic_dev *fbd, unsigned int offset, in fbnic_init_readrq() argument 14 u32 val = rd32(fbd, offset); in fbnic_init_readrq() 24 wr32(fbd, offset, val); in fbnic_init_readrq() 27 static void fbnic_init_mps(struct fbnic_dev *fbd, unsigned int offset, in fbnic_init_mps() argument 30 u32 val = rd32(fbd, offset); in fbnic_init_mps() 38 wr32(fbd, offset, val); in fbnic_init_mps() 41 static void fbnic_mac_init_axi(struct fbnic_dev *fbd) in fbnic_mac_init_axi() argument 52 readrq = ilog2(fbd->readrq) - 6; in fbnic_mac_init_axi() 57 mps = ilog2(fbd->mps) - 6; in fbnic_mac_init_axi() 64 fbnic_init_readrq(fbd, FBNIC_QM_TNI_TDF_CTL, cls, readrq); in fbnic_mac_init_axi() [all …]
|
| H A D | fbnic_time.c | 40 static u64 __fbnic_time_get_slow(struct fbnic_dev *fbd) in __fbnic_time_get_slow() argument 44 lockdep_assert_held(&fbd->time_lock); in __fbnic_time_get_slow() 47 hi = fbnic_rd32(fbd, FBNIC_PTP_CTR_VAL_HI); in __fbnic_time_get_slow() 48 lo = fbnic_rd32(fbd, FBNIC_PTP_CTR_VAL_LO); in __fbnic_time_get_slow() 49 } while (hi != fbnic_rd32(fbd, FBNIC_PTP_CTR_VAL_HI)); in __fbnic_time_get_slow() 54 static void __fbnic_time_set_addend(struct fbnic_dev *fbd, u64 addend) in __fbnic_time_set_addend() argument 56 lockdep_assert_held(&fbd->time_lock); in __fbnic_time_set_addend() 58 fbnic_wr32(fbd, FBNIC_PTP_ADD_VAL_NS, in __fbnic_time_set_addend() 60 fbnic_wr32(fbd, FBNIC_PTP_ADD_VAL_SUBNS, (u32)addend); in __fbnic_time_set_addend() 63 static void fbnic_ptp_fresh_check(struct fbnic_dev *fbd) in fbnic_ptp_fresh_check() argument [all …]
|
| H A D | fbnic_fw.c | 15 static void __fbnic_mbx_wr_desc(struct fbnic_dev *fbd, int mbx_idx, in __fbnic_mbx_wr_desc() argument 24 fw_wr32(fbd, desc_offset + 1, upper_32_bits(desc)); in __fbnic_mbx_wr_desc() 25 fw_wrfl(fbd); in __fbnic_mbx_wr_desc() 26 fw_wr32(fbd, desc_offset, lower_32_bits(desc)); in __fbnic_mbx_wr_desc() 29 static void __fbnic_mbx_invalidate_desc(struct fbnic_dev *fbd, int mbx_idx, in __fbnic_mbx_invalidate_desc() argument 38 fw_wr32(fbd, desc_offset, desc); in __fbnic_mbx_invalidate_desc() 39 fw_wrfl(fbd); in __fbnic_mbx_invalidate_desc() 40 fw_wr32(fbd, desc_offset + 1, 0); in __fbnic_mbx_invalidate_desc() 43 u64 __fbnic_mbx_rd_desc(struct fbnic_dev *fbd, int mbx_idx, int desc_idx) in __fbnic_mbx_rd_desc() argument 48 desc = fw_rd32(fbd, desc_offset); in __fbnic_mbx_rd_desc() [all …]
|
| H A D | fbnic_rpc.c | 54 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 D | fbnic_devlink.c | 70 struct fbnic_dev *fbd = devlink_priv(devlink); in fbnic_devlink_info_get() local 73 err = fbnic_version_running_put(req, &fbd->fw_cap.running.mgmt, in fbnic_devlink_info_get() 78 err = fbnic_version_running_put(req, &fbd->fw_cap.running.bootloader, in fbnic_devlink_info_get() 83 err = fbnic_version_stored_put(req, &fbd->fw_cap.stored.mgmt, in fbnic_devlink_info_get() 88 err = fbnic_version_stored_put(req, &fbd->fw_cap.stored.bootloader, in fbnic_devlink_info_get() 93 err = fbnic_version_stored_put(req, &fbd->fw_cap.stored.undi, in fbnic_devlink_info_get() 98 if (fbd->dsn) { in fbnic_devlink_info_get() 102 put_unaligned_be64(fbd->dsn, dsn); in fbnic_devlink_info_get() 121 struct fbnic_dev *fbd; in fbnic_pldm_match_record() local 129 fbd = pci_get_drvdata(pdev); in fbnic_pldm_match_record() [all …]
|
| H A D | fbnic.h | 114 static inline bool fbnic_present(struct fbnic_dev *fbd) in fbnic_present() argument 116 return !!READ_ONCE(fbd->uc_addr0); in fbnic_present() 119 static inline void fbnic_wr32(struct fbnic_dev *fbd, u32 reg, u32 val) in fbnic_wr32() argument 121 u32 __iomem *csr = READ_ONCE(fbd->uc_addr0); in fbnic_wr32() 127 u32 fbnic_rd32(struct fbnic_dev *fbd, u32 reg); 129 static inline void fbnic_wrfl(struct fbnic_dev *fbd) in fbnic_wrfl() argument 131 fbnic_rd32(fbd, FBNIC_MASTER_SPARE_0); in fbnic_wrfl() 135 fbnic_rmw32(struct fbnic_dev *fbd, u32 reg, u32 mask, u32 val) in fbnic_rmw32() argument 139 v = fbnic_rd32(fbd, reg); in fbnic_rmw32() 142 fbnic_wr32(fbd, reg, v); in fbnic_rmw32() [all …]
|
| H A D | fbnic_mdio.c | 15 fbnic_mdio_read_pmd(struct fbnic_dev *fbd, int addr, int regnum) in fbnic_mdio_read_pmd() argument 25 if (fbd->netdev) { in fbnic_mdio_read_pmd() 26 fbn = netdev_priv(fbd->netdev); in fbnic_mdio_read_pmd() 46 if (fbd->pmd_state != FBNIC_PMD_SEND_DATA) in fbnic_mdio_read_pmd() 57 dev_dbg(fbd->dev, in fbnic_mdio_read_pmd() 65 fbnic_mdio_read_pcs(struct fbnic_dev *fbd, int addr, int regnum) in fbnic_mdio_read_pcs() argument 89 ret = fbnic_rd32(fbd, FBNIC_PCS_PAGE(addr) + (regnum ^ offset)); in fbnic_mdio_read_pcs() 91 dev_dbg(fbd->dev, in fbnic_mdio_read_pcs() 101 struct fbnic_dev *fbd = bus->priv; in fbnic_mdio_read_c45() local 104 return fbnic_mdio_read_pmd(fbd, addr, regnum); in fbnic_mdio_read_c45() [all …]
|
| H A D | fbnic_netdev.c | 15 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 D | fbnic_debugfs.c | 320 struct fbnic_dev *fbd = nv->fbd; in fbnic_dbg_nv_init() local 327 nv->dbg_nv = debugfs_create_dir(name, fbd->dbg_fbd); in fbnic_dbg_nv_init() 335 &fbd->uc_addr0[FBNIC_QUEUE(0)]; in fbnic_dbg_nv_init() 357 &fbd->uc_addr0[FBNIC_QUEUE(0)]; in fbnic_dbg_nv_init() 382 struct fbnic_dev *fbd = s->private; in fbnic_dbg_mac_addr_show() local 393 struct fbnic_mac_addr *mac_addr = &fbd->mac_addr[i]; in fbnic_dbg_mac_addr_show() 408 struct fbnic_dev *fbd = s->private; in fbnic_dbg_tce_tcam_show() local 418 for (i = 0; i < ARRAY_SIZE(fbd->mac_addr); i++) { in fbnic_dbg_tce_tcam_show() 419 struct fbnic_mac_addr *mac_addr = &fbd->mac_addr[i]; in fbnic_dbg_tce_tcam_show() 442 struct fbnic_dev *fbd = s->private; in fbnic_dbg_act_tcam_show() local [all …]
|
| H A D | fbnic_fw_log.c | 11 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 D | fbnic_phylink.c | 121 struct fbnic_dev *fbd = fbn->fbd; in fbnic_phylink_mac_prepare() local 123 fbd->mac->prepare(fbd, fbn->aui, fbn->fec); in fbnic_phylink_mac_prepare() 140 struct fbnic_dev *fbd = fbn->fbd; in fbnic_phylink_mac_finish() local 143 fbd->mac->get_link(fbd, fbn->aui, fbn->fec); in fbnic_phylink_mac_finish() 154 struct fbnic_dev *fbd = fbn->fbd; in fbnic_phylink_mac_link_down() local 156 fbd->mac->link_down(fbd); in fbnic_phylink_mac_link_down() 169 struct fbnic_dev *fbd = fbn->fbd; in fbnic_phylink_mac_link_up() local 174 fbd->mac->link_up(fbd, tx_pause, rx_pause); in fbnic_phylink_mac_link_up() 200 struct fbnic_dev *fbd = fbn->fbd; in fbnic_phylink_create() local 205 pcs = xpcs_create_pcs_mdiodev(fbd->mdio_bus, 0); in fbnic_phylink_create() [all …]
|
| H A D | fbnic_mac.h | 94 void (*init_regs)(struct fbnic_dev *fbd); 96 int (*get_link_event)(struct fbnic_dev *fbd); 97 bool (*get_link)(struct fbnic_dev *fbd, u8 aui, u8 fec); 99 void (*prepare)(struct fbnic_dev *fbd, u8 aui, u8 fec); 101 void (*get_fec_stats)(struct fbnic_dev *fbd, bool reset, 103 void (*get_pcs_stats)(struct fbnic_dev *fbd, bool reset, 105 void (*get_eth_mac_stats)(struct fbnic_dev *fbd, bool reset, 107 void (*get_pause_stats)(struct fbnic_dev *fbd, bool reset, 109 void (*get_eth_ctrl_stats)(struct fbnic_dev *fbd, bool reset, 111 void (*get_rmon_stats)(struct fbnic_dev *fbd, bool reset, [all …]
|
| H A D | fbnic_hwmon.c | 34 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 D | fbnic_ethtool.c | 133 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, ®s->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 D | fbnic_rpc.h | 185 void fbnic_bmc_rpc_init(struct fbnic_dev *fbd); 186 void fbnic_bmc_rpc_all_multi_config(struct fbnic_dev *fbd, bool enable_host); 187 void fbnic_bmc_rpc_check(struct fbnic_dev *fbd); 192 void fbnic_rss_disable_hw(struct fbnic_dev *fbd); 193 void fbnic_rss_reinit_hw(struct fbnic_dev *fbd, struct fbnic_net *fbn); 194 void fbnic_rss_reinit(struct fbnic_dev *fbd, struct fbnic_net *fbn); 198 struct fbnic_mac_addr *__fbnic_uc_sync(struct fbnic_dev *fbd, 200 struct fbnic_mac_addr *__fbnic_mc_sync(struct fbnic_dev *fbd, 202 void fbnic_sift_macda(struct fbnic_dev *fbd); 203 void fbnic_write_macda(struct fbnic_dev *fbd); [all …]
|
| H A D | fbnic_fw.h | 97 u64 __fbnic_mbx_rd_desc(struct fbnic_dev *fbd, int mbx_idx, int desc_idx); 98 void fbnic_mbx_init(struct fbnic_dev *fbd); 99 void fbnic_mbx_clean(struct fbnic_dev *fbd); 100 int fbnic_mbx_set_cmpl(struct fbnic_dev *fbd, 102 void fbnic_mbx_clear_cmpl(struct fbnic_dev *fbd, 104 void fbnic_mbx_poll(struct fbnic_dev *fbd); 105 int fbnic_mbx_poll_tx_ready(struct fbnic_dev *fbd); 106 void fbnic_mbx_flush_tx(struct fbnic_dev *fbd); 107 int fbnic_fw_xmit_ownership_msg(struct fbnic_dev *fbd, bool take_ownership); 108 int fbnic_fw_init_heartbeat(struct fbnic_dev *fbd, bool poll); [all …]
|
| H A D | fbnic_csr.c | 60 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 D | fbnic_netdev.h | 29 struct fbnic_dev *fbd; member 85 struct net_device *fbnic_netdev_alloc(struct fbnic_dev *fbd); 86 void fbnic_netdev_free(struct fbnic_dev *fbd); 94 int fbnic_ptp_setup(struct fbnic_dev *fbd); 95 void fbnic_ptp_destroy(struct fbnic_dev *fbd); 100 void __fbnic_set_rx_mode(struct fbnic_dev *fbd); 101 void fbnic_clear_rx_mode(struct fbnic_dev *fbd);
|
| H A D | fbnic_fw_log.h | 39 void fbnic_fw_log_enable(struct fbnic_dev *fbd, bool send_hist); 40 void fbnic_fw_log_disable(struct fbnic_dev *fbd); 41 int fbnic_fw_log_init(struct fbnic_dev *fbd); 42 void fbnic_fw_log_free(struct fbnic_dev *fbd); 43 int fbnic_fw_log_write(struct fbnic_dev *fbd, u64 index, u32 timestamp,
|
| H A D | fbnic_txrx.c | 1356 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 D | fbnic_hw_stats.h | 154 u64 fbnic_stat_rd64(struct fbnic_dev *fbd, u32 reg, u32 offset); 156 void fbnic_reset_hw_stats(struct fbnic_dev *fbd); 157 void fbnic_init_hw_stats(struct fbnic_dev *fbd); 158 void fbnic_get_hw_q_stats(struct fbnic_dev *fbd, 160 void fbnic_get_hw_stats32(struct fbnic_dev *fbd); 161 void fbnic_get_hw_stats(struct fbnic_dev *fbd);
|
| /linux/drivers/gpu/drm/bridge/ |
| H A D | tc358768.c | 159 u32 fbd; /* PLL feedback divider */ member 362 u32 fbd; in tc358768_calc_pll() local 364 for (fbd = 1; fbd <= 512; ++fbd) { in tc358768_calc_pll() 367 pll = (u32)div_u64((u64)refclk * fbd, divisor); in tc358768_calc_pll() 382 best_fbd = fbd; in tc358768_calc_pll() 399 priv->fbd = best_fbd; in tc358768_calc_pll() 618 u32 fbd, prd, frs; in tc358768_setup_pll() local 627 fbd = priv->fbd; in tc358768_setup_pll() 632 clk_get_rate(priv->refclk), fbd, prd, frs); in tc358768_setup_pll() 640 tc358768_write(priv, TC358768_PLLCTL0, ((prd - 1) << 12) | (fbd - 1)); in tc358768_setup_pll()
|