Home
last modified time | relevance | path

Searched refs:ionic (Results 1 – 18 of 18) sorted by relevance

/drivers/net/ethernet/pensando/ionic/
Dionic_bus_pci.c22 int ionic_bus_get_irq(struct ionic *ionic, unsigned int num) in ionic_bus_get_irq() argument
24 return pci_irq_vector(ionic->pdev, num); in ionic_bus_get_irq()
27 const char *ionic_bus_info(struct ionic *ionic) in ionic_bus_info() argument
29 return pci_name(ionic->pdev); in ionic_bus_info()
32 int ionic_bus_alloc_irq_vectors(struct ionic *ionic, unsigned int nintrs) in ionic_bus_alloc_irq_vectors() argument
34 return pci_alloc_irq_vectors(ionic->pdev, nintrs, nintrs, in ionic_bus_alloc_irq_vectors()
38 void ionic_bus_free_irq_vectors(struct ionic *ionic) in ionic_bus_free_irq_vectors() argument
40 pci_free_irq_vectors(ionic->pdev); in ionic_bus_free_irq_vectors()
43 static int ionic_map_bars(struct ionic *ionic) in ionic_map_bars() argument
45 struct pci_dev *pdev = ionic->pdev; in ionic_map_bars()
[all …]
Dionic_main.c300 ionic_intr_credits(cq->lif->ionic->idev.intr_ctrl, in ionic_napi()
310 int ionic_dev_cmd_wait(struct ionic *ionic, unsigned long max_seconds) in ionic_dev_cmd_wait() argument
312 struct ionic_dev *idev = &ionic->idev; in ionic_dev_cmd_wait()
337 dev_dbg(ionic->dev, "DEVCMD %s (%d) done=%d took %ld secs (%ld jiffies)\n", in ionic_dev_cmd_wait()
342 dev_warn(ionic->dev, "DEVCMD %s (%d) timeout after %ld secs\n", in ionic_dev_cmd_wait()
347 err = ionic_dev_cmd_status(&ionic->idev); in ionic_dev_cmd_wait()
350 dev_err(ionic->dev, "DEV_CMD %s (%d) error, %s (%d) retrying...\n", in ionic_dev_cmd_wait()
360 dev_err(ionic->dev, "DEV_CMD %s (%d) error, %s (%d) failed\n", in ionic_dev_cmd_wait()
370 int ionic_setup(struct ionic *ionic) in ionic_setup() argument
374 err = ionic_dev_setup(ionic); in ionic_setup()
[all …]
Dionic_devlink.c15 struct ionic *ionic = devlink_priv(dl); in ionic_dl_info_get() local
16 struct ionic_dev *idev = &ionic->idev; in ionic_dl_info_get()
54 struct ionic *ionic_devlink_alloc(struct device *dev) in ionic_devlink_alloc()
58 dl = devlink_alloc(&ionic_dl_ops, sizeof(struct ionic)); in ionic_devlink_alloc()
63 void ionic_devlink_free(struct ionic *ionic) in ionic_devlink_free() argument
65 struct devlink *dl = priv_to_devlink(ionic); in ionic_devlink_free()
70 int ionic_devlink_register(struct ionic *ionic) in ionic_devlink_register() argument
72 struct devlink *dl = priv_to_devlink(ionic); in ionic_devlink_register()
75 err = devlink_register(dl, ionic->dev); in ionic_devlink_register()
77 dev_warn(ionic->dev, "devlink_register failed: %d\n", err); in ionic_devlink_register()
[all …]
Dionic.h28 struct ionic { struct
61 int ionic_dev_cmd_wait(struct ionic *ionic, unsigned long max_wait); argument
62 int ionic_set_dma_mask(struct ionic *ionic);
63 int ionic_setup(struct ionic *ionic);
65 int ionic_identify(struct ionic *ionic);
66 int ionic_init(struct ionic *ionic);
67 int ionic_reset(struct ionic *ionic);
69 int ionic_port_identify(struct ionic *ionic);
70 int ionic_port_init(struct ionic *ionic);
71 int ionic_port_reset(struct ionic *ionic);
Dionic_debugfs.h13 void ionic_debugfs_add_dev(struct ionic *ionic);
14 void ionic_debugfs_del_dev(struct ionic *ionic);
15 void ionic_debugfs_add_ident(struct ionic *ionic);
16 void ionic_debugfs_add_sizes(struct ionic *ionic);
24 static inline void ionic_debugfs_add_dev(struct ionic *ionic) { } in ionic_debugfs_add_dev() argument
25 static inline void ionic_debugfs_del_dev(struct ionic *ionic) { } in ionic_debugfs_del_dev() argument
26 static inline void ionic_debugfs_add_ident(struct ionic *ionic) { } in ionic_debugfs_add_ident() argument
27 static inline void ionic_debugfs_add_sizes(struct ionic *ionic) { } in ionic_debugfs_add_sizes() argument
Dionic_bus.h7 int ionic_bus_get_irq(struct ionic *ionic, unsigned int num);
8 const char *ionic_bus_info(struct ionic *ionic);
9 int ionic_bus_alloc_irq_vectors(struct ionic *ionic, unsigned int nintrs);
10 void ionic_bus_free_irq_vectors(struct ionic *ionic);
13 void __iomem *ionic_bus_map_dbpage(struct ionic *ionic, int page_num);
14 void ionic_bus_unmap_dbpage(struct ionic *ionic, void __iomem *page);
Dionic_debugfs.c26 void ionic_debugfs_add_dev(struct ionic *ionic) in ionic_debugfs_add_dev() argument
28 ionic->dentry = debugfs_create_dir(ionic_bus_info(ionic), ionic_dir); in ionic_debugfs_add_dev()
31 void ionic_debugfs_del_dev(struct ionic *ionic) in ionic_debugfs_del_dev() argument
33 debugfs_remove_recursive(ionic->dentry); in ionic_debugfs_del_dev()
34 ionic->dentry = NULL; in ionic_debugfs_del_dev()
39 struct ionic *ionic = seq->private; in identity_show() local
42 ident = &ionic->ident; in identity_show()
57 void ionic_debugfs_add_ident(struct ionic *ionic) in ionic_debugfs_add_ident() argument
59 debugfs_create_file("identity", 0400, ionic->dentry, in ionic_debugfs_add_ident()
60 ionic, &identity_fops); in ionic_debugfs_add_ident()
[all …]
Dionic_lif.h139 struct ionic *ionic; member
201 static inline u32 ionic_coal_usec_to_hw(struct ionic *ionic, u32 usecs) in ionic_coal_usec_to_hw() argument
203 u32 mult = le32_to_cpu(ionic->ident.dev.intr_coal_mult); in ionic_coal_usec_to_hw()
204 u32 div = le32_to_cpu(ionic->ident.dev.intr_coal_div); in ionic_coal_usec_to_hw()
217 static inline u32 ionic_coal_hw_to_usec(struct ionic *ionic, u32 units) in ionic_coal_hw_to_usec() argument
219 u32 mult = le32_to_cpu(ionic->ident.dev.intr_coal_mult); in ionic_coal_hw_to_usec()
220 u32 div = le32_to_cpu(ionic->ident.dev.intr_coal_div); in ionic_coal_hw_to_usec()
230 int ionic_lifs_alloc(struct ionic *ionic);
231 void ionic_lifs_free(struct ionic *ionic);
232 void ionic_lifs_deinit(struct ionic *ionic);
[all …]
Dionic_lif.c136 struct device *dev = lif->ionic->dev; in ionic_request_irq()
154 struct ionic *ionic = lif->ionic; in ionic_intr_alloc() local
157 index = find_first_zero_bit(ionic->intrs, ionic->nintrs); in ionic_intr_alloc()
158 if (index == ionic->nintrs) { in ionic_intr_alloc()
160 __func__, index, ionic->nintrs); in ionic_intr_alloc()
164 set_bit(index, ionic->intrs); in ionic_intr_alloc()
165 ionic_intr_init(&ionic->idev, intr, index); in ionic_intr_alloc()
172 if (index != INTR_INDEX_NOT_ASSIGNED && index < lif->ionic->nintrs) in ionic_intr_free()
173 clear_bit(index, lif->ionic->intrs); in ionic_intr_free()
194 idev = &lif->ionic->idev; in ionic_qcq_enable()
[all …]
Dionic_ethtool.c86 struct ionic *ionic = lif->ionic; in ionic_get_drvinfo() local
90 strlcpy(drvinfo->fw_version, ionic->idev.dev_info.fw_version, in ionic_get_drvinfo()
92 strlcpy(drvinfo->bus_info, ionic_bus_info(ionic), in ionic_get_drvinfo()
110 memcpy_fromio(p, lif->ionic->idev.dev_info_regs->words, size); in ionic_get_regs()
113 memcpy_fromio(p, lif->ionic->idev.dev_cmd_regs->words, size); in ionic_get_regs()
120 struct ionic_dev *idev = &lif->ionic->idev; in ionic_get_link_ksettings()
204 dev_info(lif->ionic->dev, "unknown xcvr type pid=%d / 0x%x\n", in ionic_get_link_ksettings()
255 struct ionic *ionic = lif->ionic; in ionic_set_link_ksettings() local
261 idev = &lif->ionic->idev; in ionic_set_link_ksettings()
266 mutex_lock(&ionic->dev_cmd_lock); in ionic_set_link_ksettings()
[all …]
Dionic_devlink.h9 struct ionic *ionic_devlink_alloc(struct device *dev);
10 void ionic_devlink_free(struct ionic *ionic);
11 int ionic_devlink_register(struct ionic *ionic);
12 void ionic_devlink_unregister(struct ionic *ionic);
Dionic_dev.c14 void ionic_init_devinfo(struct ionic *ionic) in ionic_init_devinfo() argument
16 struct ionic_dev *idev = &ionic->idev; in ionic_init_devinfo()
32 dev_dbg(ionic->dev, "fw_version %s\n", idev->dev_info.fw_version); in ionic_init_devinfo()
35 int ionic_dev_setup(struct ionic *ionic) in ionic_dev_setup() argument
37 struct ionic_dev_bar *bar = ionic->bars; in ionic_dev_setup()
38 unsigned int num_bars = ionic->num_bars; in ionic_dev_setup()
39 struct ionic_dev *idev = &ionic->idev; in ionic_dev_setup()
40 struct device *dev = ionic->dev; in ionic_dev_setup()
66 ionic_init_devinfo(ionic); in ionic_dev_setup()
81 void ionic_dev_teardown(struct ionic *ionic) in ionic_dev_teardown() argument
[all …]
Dionic_dev.h218 struct ionic;
245 void ionic_init_devinfo(struct ionic *ionic);
246 int ionic_dev_setup(struct ionic *ionic);
247 void ionic_dev_teardown(struct ionic *ionic);
DMakefile4 obj-$(CONFIG_IONIC) := ionic.o
6 ionic-y := ionic_main.o ionic_bus_pci.o ionic_devlink.o ionic_dev.o \
Dionic_txrx.c55 struct device *dev = q->lif->ionic->dev; in ionic_rx_copybreak()
206 struct ionic_dev *idev = &cq->lif->ionic->idev; in ionic_rx_flush()
226 dev = lif->ionic->dev; in ionic_rx_skb_alloc()
286 struct device *dev = q->lif->ionic->dev; in ionic_rx_empty()
311 idev = &lif->ionic->idev; in ionic_rx_napi()
340 struct device *dev = q->lif->ionic->dev; in ionic_tx_map_single()
357 struct device *dev = q->lif->ionic->dev; in ionic_tx_map_frag()
376 struct device *dev = q->lif->ionic->dev; in ionic_tx_clean()
419 struct ionic_dev *idev = &cq->lif->ionic->idev; in ionic_tx_flush()
549 struct device *dev = q->lif->ionic->dev; in ionic_tx_tso()
[all …]
Dionic_rx_filter.c13 struct device *dev = lif->ionic->dev; in ionic_rx_filter_free()
64 struct device *dev = lif->ionic->dev; in ionic_rx_filter_save()
/drivers/net/ethernet/pensando/
DKconfig28 <file:Documentation/networking/device_drivers/pensando/ionic.rst>.
31 will be called ionic.
DMakefile6 obj-$(CONFIG_IONIC) += ionic/