/linux/drivers/net/ethernet/pensando/ionic/ |
A D | ionic_bus_pci.c | 22 int ionic_bus_get_irq(struct ionic *ionic, unsigned int num) in ionic_bus_get_irq() argument 27 const char *ionic_bus_info(struct ionic *ionic) in ionic_bus_info() argument 38 void ionic_bus_free_irq_vectors(struct ionic *ionic) in ionic_bus_free_irq_vectors() argument 46 static int ionic_map_bars(struct ionic *ionic) in ionic_map_bars() argument 83 static void ionic_unmap_bars(struct ionic *ionic) in ionic_unmap_bars() argument 110 static void ionic_vf_dealloc_locked(struct ionic *ionic) in ionic_vf_dealloc_locked() argument 137 static void ionic_vf_dealloc(struct ionic *ionic) in ionic_vf_dealloc() argument 183 struct ionic *ionic = pci_get_drvdata(pdev); in ionic_sriov_configure() local 218 struct ionic *ionic; in ionic_probe() local 223 if (!ionic) in ionic_probe() [all …]
|
A D | ionic_main.c | 371 static void ionic_dev_cmd_clean(struct ionic *ionic) in ionic_dev_cmd_clean() argument 379 int ionic_dev_cmd_wait(struct ionic *ionic, unsigned long max_seconds) in ionic_dev_cmd_wait() argument 457 int ionic_setup(struct ionic *ionic) in ionic_setup() argument 464 ionic_reset(ionic); in ionic_setup() 469 int ionic_identify(struct ionic *ionic) in ionic_identify() argument 513 &ionic->ident.lif); in ionic_identify() 525 int ionic_init(struct ionic *ionic) in ionic_init() argument 538 int ionic_reset(struct ionic *ionic) in ionic_reset() argument 551 int ionic_port_identify(struct ionic *ionic) in ionic_port_identify() argument 572 int ionic_port_init(struct ionic *ionic) in ionic_port_init() argument [all …]
|
A D | ionic_devlink.c | 16 struct ionic *ionic = devlink_priv(dl); in ionic_dl_flash_update() local 24 struct ionic *ionic = devlink_priv(dl); in ionic_dl_info_get() local 25 struct ionic_dev *idev = &ionic->idev; in ionic_dl_info_get() 72 void ionic_devlink_free(struct ionic *ionic) in ionic_devlink_free() argument 74 struct devlink *dl = priv_to_devlink(ionic); in ionic_devlink_free() 79 int ionic_devlink_register(struct ionic *ionic) in ionic_devlink_register() argument 81 struct devlink *dl = priv_to_devlink(ionic); in ionic_devlink_register() 93 devlink_port_type_eth_set(&ionic->dl_port, ionic->lif->netdev); in ionic_devlink_register() 98 void ionic_devlink_unregister(struct ionic *ionic) in ionic_devlink_unregister() argument 100 struct devlink *dl = priv_to_devlink(ionic); in ionic_devlink_unregister() [all …]
|
A D | ionic_debugfs.h | 13 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
|
A D | ionic.h | 40 struct ionic { struct 80 int ionic_dev_cmd_wait(struct ionic *ionic, unsigned long max_wait); argument 81 int ionic_set_dma_mask(struct ionic *ionic); 82 int ionic_setup(struct ionic *ionic); 84 int ionic_identify(struct ionic *ionic); 85 int ionic_init(struct ionic *ionic); 86 int ionic_reset(struct ionic *ionic); 88 int ionic_port_identify(struct ionic *ionic); 89 int ionic_port_init(struct ionic *ionic); 90 int ionic_port_reset(struct ionic *ionic);
|
A D | ionic_fw.c | 59 static int ionic_fw_status_long_wait(struct ionic *ionic, in ionic_fw_status_long_wait() argument 76 mutex_lock(&ionic->dev_cmd_lock); in ionic_fw_status_long_wait() 79 mutex_unlock(&ionic->dev_cmd_lock); in ionic_fw_status_long_wait() 99 struct ionic *ionic = lif->ionic; in ionic_firmware_update() local 109 dl = priv_to_devlink(ionic); in ionic_firmware_update() 128 mutex_lock(&ionic->dev_cmd_lock); in ionic_firmware_update() 134 mutex_unlock(&ionic->dev_cmd_lock); in ionic_firmware_update() 151 mutex_lock(&ionic->dev_cmd_lock); in ionic_firmware_update() 156 mutex_unlock(&ionic->dev_cmd_lock); in ionic_firmware_update() 172 mutex_lock(&ionic->dev_cmd_lock); in ionic_firmware_update() [all …]
|
A D | ionic_ethtool.c | 75 struct ionic *ionic = lif->ionic; in ionic_get_drvinfo() local 262 struct ionic *ionic = lif->ionic; in ionic_set_link_ksettings() local 270 mutex_lock(&ionic->dev_cmd_lock); in ionic_set_link_ksettings() 280 mutex_lock(&ionic->dev_cmd_lock); in ionic_set_link_ksettings() 310 struct ionic *ionic = lif->ionic; in ionic_set_pauseparam() local 330 mutex_lock(&ionic->dev_cmd_lock); in ionic_set_pauseparam() 333 mutex_unlock(&ionic->dev_cmd_lock); in ionic_set_pauseparam() 438 ident = &lif->ionic->ident; in ionic_set_coalesce() 846 struct ionic *ionic = lif->ionic; in ionic_get_ts_info() local 937 struct ionic *ionic = lif->ionic; in ionic_nway_reset() local [all …]
|
A D | ionic_lif.c | 232 struct ionic *ionic = lif->ionic; in ionic_intr_alloc() local 2159 struct ionic *ionic = lif->ionic; in ionic_get_vf_config() local 2188 struct ionic *ionic = lif->ionic; in ionic_get_vf_stats() local 2224 struct ionic *ionic = lif->ionic; in ionic_set_vf_mac() local 2251 struct ionic *ionic = lif->ionic; in ionic_set_vf_vlan() local 2286 struct ionic *ionic = lif->ionic; in ionic_set_vf_rate() local 2314 struct ionic *ionic = lif->ionic; in ionic_set_vf_spoofchk() local 2339 struct ionic *ionic = lif->ionic; in ionic_set_vf_trust() local 2364 struct ionic *ionic = lif->ionic; in ionic_set_vf_link_state() local 2813 struct ionic *ionic = lif->ionic; in ionic_lif_handle_fw_down() local [all …]
|
A D | ionic_bus.h | 7 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);
|
A D | ionic_debugfs.c | 26 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 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 60 ionic, &identity_fops); in ionic_debugfs_add_ident() 63 void ionic_debugfs_add_sizes(struct ionic *ionic) in ionic_debugfs_add_sizes() argument 66 (u32 *)&ionic->ident.dev.nlifs); in ionic_debugfs_add_sizes() [all …]
|
A D | ionic_dev.c | 16 struct ionic *ionic = from_timer(ionic, t, watchdog_timer); in ionic_watchdog_cb() local 17 struct ionic_lif *lif = ionic->lif; in ionic_watchdog_cb() 21 mod_timer(&ionic->watchdog_timer, in ionic_watchdog_cb() 27 hb = ionic_heartbeat_check(ionic); in ionic_watchdog_cb() 49 void ionic_init_devinfo(struct ionic *ionic) in ionic_init_devinfo() argument 70 int ionic_dev_setup(struct ionic *ionic) in ionic_dev_setup() argument 75 struct device *dev = ionic->dev; in ionic_dev_setup() 103 ionic_init_devinfo(ionic); in ionic_dev_setup() 125 mod_timer(&ionic->watchdog_timer, in ionic_dev_setup() 135 int ionic_heartbeat_check(struct ionic *ionic) in ionic_heartbeat_check() argument [all …]
|
A D | ionic_phc.c | 70 struct ionic *ionic = lif->ionic; in ionic_lif_hwstamp_set_ts_config() local 168 dev_err(ionic->dev, in ionic_lif_hwstamp_set_ts_config() 176 dev_err(ionic->dev, in ionic_lif_hwstamp_set_ts_config() 265 static u64 ionic_hwstamp_read(struct ionic *ionic, in ionic_hwstamp_read() argument 296 struct ionic *ionic = phc->lif->ionic; in ionic_cc_read() local 413 struct ionic *ionic = phc->lif->ionic; in ionic_phc_gettimex64() local 423 tick = ionic_hwstamp_read(ionic, sts); in ionic_phc_gettimex64() 522 struct ionic *ionic = lif->ionic; in ionic_lif_alloc_phc() local 529 if (!ionic->idev.hwstamp_regs) in ionic_lif_alloc_phc() 548 dev_err(lif->ionic->dev, in ionic_lif_alloc_phc() [all …]
|
A D | ionic_devlink.h | 12 struct ionic *ionic_devlink_alloc(struct device *dev); 13 void ionic_devlink_free(struct ionic *ionic); 14 int ionic_devlink_register(struct ionic *ionic); 15 void ionic_devlink_unregister(struct ionic *ionic);
|
A D | ionic_lif.h | 164 struct ionic *ionic; member 260 static inline u32 ionic_coal_usec_to_hw(struct ionic *ionic, u32 usecs) in ionic_coal_usec_to_hw() argument 262 u32 mult = le32_to_cpu(ionic->ident.dev.intr_coal_mult); in ionic_coal_usec_to_hw() 263 u32 div = le32_to_cpu(ionic->ident.dev.intr_coal_div); in ionic_coal_usec_to_hw() 281 int ionic_lif_alloc(struct ionic *ionic); 291 int ionic_lif_identify(struct ionic *ionic, u8 lif_type, 293 int ionic_lif_size(struct ionic *ionic);
|
A D | ionic_dev.h | 273 struct ionic; 300 void ionic_init_devinfo(struct ionic *ionic); 301 int ionic_dev_setup(struct ionic *ionic); 321 int ionic_set_vf_config(struct ionic *ionic, int vf, u8 attr, u8 *data); 355 int ionic_heartbeat_check(struct ionic *ionic);
|
A D | Makefile | 4 obj-$(CONFIG_IONIC) := ionic.o 6 ionic-y := ionic_main.o ionic_bus_pci.o ionic_devlink.o ionic_dev.o \ 9 ionic-$(CONFIG_PTP_1588_CLOCK) += ionic_phc.o
|
A D | ionic_rx_filter.c | 15 struct device *dev = lif->ionic->dev; in ionic_rx_filter_free() 127 struct device *dev = lif->ionic->dev; in ionic_rx_filter_save() 533 struct device *dev = lif->ionic->dev; in ionic_rx_filter_sync()
|
A D | ionic_txrx.c | 488 idev = &lif->ionic->idev; in ionic_tx_napi() 520 idev = &lif->ionic->idev; in ionic_rx_napi() 560 idev = &lif->ionic->idev; in ionic_txrx_napi() 774 struct ionic_dev *idev = &cq->lif->ionic->idev; in ionic_tx_flush()
|
A D | ionic_stats.c | 321 port_stats = &lif->ionic->idev.port_info->stats; in ionic_sw_stats_get_values()
|
/linux/Documentation/networking/device_drivers/ethernet/pensando/ |
A D | ionic.rst | 29 If such devices are listed as above, then the ionic.ko driver should find 33 $ dmesg | grep ionic 34 ionic 0000:b5:00.0: 126.016 Gb/s available PCIe bandwidth (8.0 GT/s PCIe x16 link) 35 ionic 0000:b5:00.0 enp181s0: renamed from eth0 36 ionic 0000:b5:00.0 enp181s0: Link up - 100 Gbps 37 ionic 0000:b6:00.0: 126.016 Gb/s available PCIe bandwidth (8.0 GT/s PCIe x16 link) 38 ionic 0000:b6:00.0 enp182s0: renamed from eth0 39 ionic 0000:b6:00.0 enp182s0: Link up - 100 Gbps 45 driver: ionic 52 driver ionic [all …]
|
/linux/Documentation/networking/devlink/ |
A D | ionic.rst | 4 ionic devlink support 7 This document describes the devlink features implemented by the ``ionic`` 13 The ``ionic`` driver reports the following versions
|
A D | index.rst | 38 ionic
|
/linux/drivers/net/ethernet/pensando/ |
A D | Kconfig | 30 <file:Documentation/networking/device_drivers/ethernet/pensando/ionic.rst>. 33 will be called ionic.
|
A D | Makefile | 6 obj-$(CONFIG_IONIC) += ionic/
|
/linux/Documentation/networking/device_drivers/ethernet/ |
A D | index.rst | 47 pensando/ionic
|