| /Linux-v4.19/drivers/infiniband/hw/mthca/ |
| D | mthca_main.c | 136 static int mthca_tune_pci(struct mthca_dev *mdev) in mthca_tune_pci() argument 142 if (pci_find_capability(mdev->pdev, PCI_CAP_ID_PCIX)) { in mthca_tune_pci() 143 if (pcix_set_mmrbc(mdev->pdev, pcix_get_max_mmrbc(mdev->pdev))) { in mthca_tune_pci() 144 mthca_err(mdev, "Couldn't set PCI-X max read count, " in mthca_tune_pci() 148 } else if (!(mdev->mthca_flags & MTHCA_FLAG_PCIE)) in mthca_tune_pci() 149 mthca_info(mdev, "No PCI-X capability, not setting RBC.\n"); in mthca_tune_pci() 151 if (pci_is_pcie(mdev->pdev)) { in mthca_tune_pci() 152 if (pcie_set_readrq(mdev->pdev, 4096)) { in mthca_tune_pci() 153 mthca_err(mdev, "Couldn't write PCI Express read request, " in mthca_tune_pci() 157 } else if (mdev->mthca_flags & MTHCA_FLAG_PCIE) in mthca_tune_pci() [all …]
|
| D | mthca_reset.c | 41 int mthca_reset(struct mthca_dev *mdev) in mthca_reset() argument 69 if (!(mdev->mthca_flags & MTHCA_FLAG_PCIE)) { in mthca_reset() 72 while ((bridge = pci_get_device(mdev->pdev->vendor, in mthca_reset() 73 mdev->pdev->device + 2, in mthca_reset() 76 bridge->subordinate == mdev->pdev->bus) { in mthca_reset() 77 mthca_dbg(mdev, "Found bridge: %s\n", in mthca_reset() 89 mthca_warn(mdev, "No bridge found for %s\n", in mthca_reset() 90 pci_name(mdev->pdev)); in mthca_reset() 105 if (pci_read_config_dword(mdev->pdev, i * 4, hca_header + i)) { in mthca_reset() 107 mthca_err(mdev, "Couldn't save HCA " in mthca_reset() [all …]
|
| /Linux-v4.19/drivers/sh/maple/ |
| D | maple.c | 139 struct maple_device *mdev; in maple_release_device() local 142 mdev = to_maple_dev(dev); in maple_release_device() 143 mq = mdev->mq; in maple_release_device() 146 kfree(mdev); in maple_release_device() 157 int maple_add_packet(struct maple_device *mdev, u32 function, u32 command, in maple_add_packet() argument 172 mdev->mq->command = command; in maple_add_packet() 173 mdev->mq->length = length; in maple_add_packet() 176 mdev->mq->sendbuf = sendbuf; in maple_add_packet() 179 list_add_tail(&mdev->mq->list, &maple_waitq); in maple_add_packet() 186 static struct mapleq *maple_allocq(struct maple_device *mdev) in maple_allocq() argument [all …]
|
| /Linux-v4.19/drivers/misc/mic/host/ |
| D | mic_main.c | 60 static int mic_dp_init(struct mic_device *mdev) in mic_dp_init() argument 62 mdev->dp = kzalloc(MIC_DP_SIZE, GFP_KERNEL); in mic_dp_init() 63 if (!mdev->dp) in mic_dp_init() 66 mdev->dp_dma_addr = mic_map_single(mdev, in mic_dp_init() 67 mdev->dp, MIC_DP_SIZE); in mic_dp_init() 68 if (mic_map_error(mdev->dp_dma_addr)) { in mic_dp_init() 69 kfree(mdev->dp); in mic_dp_init() 70 dev_err(&mdev->pdev->dev, "%s %d err %d\n", in mic_dp_init() 74 mdev->ops->write_spad(mdev, MIC_DPLO_SPAD, mdev->dp_dma_addr); in mic_dp_init() 75 mdev->ops->write_spad(mdev, MIC_DPHI_SPAD, mdev->dp_dma_addr >> 32); in mic_dp_init() [all …]
|
| D | mic_intr.c | 29 struct mic_device *mdev = dev; in mic_thread_fn() local 30 struct mic_intr_info *intr_info = mdev->intr_info; in mic_thread_fn() 31 struct mic_irq_info *irq_info = &mdev->irq_info; in mic_thread_fn() 33 struct pci_dev *pdev = mdev->pdev; in mic_thread_fn() 55 struct mic_device *mdev = dev; in mic_interrupt() local 56 struct mic_intr_info *intr_info = mdev->intr_info; in mic_interrupt() 57 struct mic_irq_info *irq_info = &mdev->irq_info; in mic_interrupt() 59 struct pci_dev *pdev = mdev->pdev; in mic_interrupt() 63 mask = mdev->ops->ack_interrupt(mdev); in mic_interrupt() 83 static u16 mic_map_src_to_offset(struct mic_device *mdev, in mic_map_src_to_offset() argument [all …]
|
| D | mic_boot.c | 44 struct mic_device *mdev = vpdev_to_mdev(dev); in _mic_dma_map_page() local 46 return mic_map_single(mdev, va, size); in _mic_dma_map_page() 53 struct mic_device *mdev = vpdev_to_mdev(dev); in _mic_dma_unmap_page() local 55 mic_unmap_single(mdev, dma_addr, size); in _mic_dma_unmap_page() 68 struct mic_device *mdev = vpdev_to_mdev(&vpdev->dev); in __mic_request_irq() local 70 return mic_request_threaded_irq(mdev, func, NULL, name, data, in __mic_request_irq() 77 struct mic_device *mdev = vpdev_to_mdev(&vpdev->dev); in __mic_free_irq() local 79 mic_free_irq(mdev, cookie, data); in __mic_free_irq() 84 struct mic_device *mdev = vpdev_to_mdev(&vpdev->dev); in __mic_ack_interrupt() local 86 mdev->ops->intr_workarounds(mdev); in __mic_ack_interrupt() [all …]
|
| D | mic_x100.c | 44 mic_x100_write_spad(struct mic_device *mdev, unsigned int idx, u32 val) in mic_x100_write_spad() argument 46 dev_dbg(&mdev->pdev->dev, "Writing 0x%x to scratch pad index %d\n", in mic_x100_write_spad() 48 mic_mmio_write(&mdev->mmio, val, in mic_x100_write_spad() 63 mic_x100_read_spad(struct mic_device *mdev, unsigned int idx) in mic_x100_read_spad() argument 65 u32 val = mic_mmio_read(&mdev->mmio, in mic_x100_read_spad() 69 dev_dbg(&mdev->pdev->dev, in mic_x100_read_spad() 78 static void mic_x100_enable_interrupts(struct mic_device *mdev) in mic_x100_enable_interrupts() argument 81 struct mic_mw *mw = &mdev->mmio; in mic_x100_enable_interrupts() 93 if (mdev->irq_info.num_vectors > 1) { in mic_x100_enable_interrupts() 105 static void mic_x100_disable_interrupts(struct mic_device *mdev) in mic_x100_disable_interrupts() argument [all …]
|
| D | mic_smpt.c | 27 static inline u64 mic_system_page_mask(struct mic_device *mdev) in mic_system_page_mask() argument 29 return (1ULL << mdev->smpt->info.page_shift) - 1ULL; in mic_system_page_mask() 32 static inline u8 mic_sys_addr_to_smpt(struct mic_device *mdev, dma_addr_t pa) in mic_sys_addr_to_smpt() argument 34 return (pa - mdev->smpt->info.base) >> mdev->smpt->info.page_shift; in mic_sys_addr_to_smpt() 37 static inline u64 mic_smpt_to_pa(struct mic_device *mdev, u8 index) in mic_smpt_to_pa() argument 39 return mdev->smpt->info.base + (index * mdev->smpt->info.page_size); in mic_smpt_to_pa() 42 static inline u64 mic_smpt_offset(struct mic_device *mdev, dma_addr_t pa) in mic_smpt_offset() argument 44 return pa & mic_system_page_mask(mdev); in mic_smpt_offset() 47 static inline u64 mic_smpt_align_low(struct mic_device *mdev, dma_addr_t pa) in mic_smpt_align_low() argument 49 return ALIGN(pa - mic_system_page_mask(mdev), in mic_smpt_align_low() [all …]
|
| D | mic_debugfs.c | 36 struct mic_device *mdev = s->private; in mic_smpt_show() local 40 mdev->id, "SMPT entry", "SW DMA addr", "RefCount"); in mic_smpt_show() 43 if (mdev->smpt) { in mic_smpt_show() 44 struct mic_smpt_info *smpt_info = mdev->smpt; in mic_smpt_show() 77 struct mic_device *mdev = s->private; in mic_post_code_show() local 78 u32 reg = mdev->ops->get_postcode(mdev); in mic_post_code_show() 104 struct mic_device *mdev = s->private; in mic_msi_irq_info_show() local 109 struct pci_dev *pdev = mdev->pdev; in mic_msi_irq_info_show() 112 for (i = 0; i < mdev->irq_info.num_vectors; i++) { in mic_msi_irq_info_show() 114 entry = mdev->irq_info.msix_entries[i].entry; in mic_msi_irq_info_show() [all …]
|
| /Linux-v4.19/drivers/staging/most/video/ |
| D | video.c | 52 struct most_video_dev *mdev; member 59 static inline bool data_ready(struct most_video_dev *mdev) in data_ready() argument 61 return !list_empty(&mdev->pending_mbos); in data_ready() 64 static inline struct mbo *get_top_mbo(struct most_video_dev *mdev) in get_top_mbo() argument 66 return list_first_entry(&mdev->pending_mbos, struct mbo, list); in get_top_mbo() 73 struct most_video_dev *mdev = video_drvdata(filp); in comp_vdev_open() local 87 if (!atomic_inc_and_test(&mdev->access_ref)) { in comp_vdev_open() 88 v4l2_err(&mdev->v4l2_dev, "too many clients\n"); in comp_vdev_open() 93 fh->mdev = mdev; in comp_vdev_open() 99 ret = most_start_channel(mdev->iface, mdev->ch_idx, &comp); in comp_vdev_open() [all …]
|
| /Linux-v4.19/drivers/net/ethernet/mellanox/mlx4/ |
| D | en_clock.c | 43 struct mlx4_en_dev *mdev = in mlx4_en_read_clock() local 45 struct mlx4_dev *dev = mdev->dev; in mlx4_en_read_clock() 61 void mlx4_en_fill_hwtstamps(struct mlx4_en_dev *mdev, in mlx4_en_fill_hwtstamps() argument 69 seq = read_seqbegin(&mdev->clock_lock); in mlx4_en_fill_hwtstamps() 70 nsec = timecounter_cyc2time(&mdev->clock, timestamp); in mlx4_en_fill_hwtstamps() 71 } while (read_seqretry(&mdev->clock_lock, seq)); in mlx4_en_fill_hwtstamps() 83 void mlx4_en_remove_timestamp(struct mlx4_en_dev *mdev) in mlx4_en_remove_timestamp() argument 85 if (mdev->ptp_clock) { in mlx4_en_remove_timestamp() 86 ptp_clock_unregister(mdev->ptp_clock); in mlx4_en_remove_timestamp() 87 mdev->ptp_clock = NULL; in mlx4_en_remove_timestamp() [all …]
|
| D | en_main.c | 96 level, DRV_NAME, dev_name(&priv->mdev->pdev->dev), in en_print() 117 if (mlx4_is_mfunc(priv->mdev->dev) && in mlx4_en_update_loopback_state() 124 if (mlx4_is_mfunc(priv->mdev->dev) || priv->validate_loopback) in mlx4_en_update_loopback_state() 127 mutex_lock(&priv->mdev->state_lock); in mlx4_en_update_loopback_state() 128 if ((priv->mdev->dev->caps.flags2 & in mlx4_en_update_loopback_state() 145 mlx4_warn(priv->mdev, "failed to change mcast loopback\n"); in mlx4_en_update_loopback_state() 147 mutex_unlock(&priv->mdev->state_lock); in mlx4_en_update_loopback_state() 150 static void mlx4_en_get_profile(struct mlx4_en_dev *mdev) in mlx4_en_get_profile() argument 152 struct mlx4_en_profile *params = &mdev->profile; in mlx4_en_get_profile() 160 if (params->udp_rss && !(mdev->dev->caps.flags in mlx4_en_get_profile() [all …]
|
| /Linux-v4.19/drivers/dma/ |
| D | altera-msgdma.c | 212 static struct msgdma_sw_desc *msgdma_get_descriptor(struct msgdma_device *mdev) in msgdma_get_descriptor() argument 217 spin_lock_irqsave(&mdev->lock, flags); in msgdma_get_descriptor() 218 desc = list_first_entry(&mdev->free_list, struct msgdma_sw_desc, node); in msgdma_get_descriptor() 220 spin_unlock_irqrestore(&mdev->lock, flags); in msgdma_get_descriptor() 232 static void msgdma_free_descriptor(struct msgdma_device *mdev, in msgdma_free_descriptor() argument 237 mdev->desc_free_cnt++; in msgdma_free_descriptor() 238 list_add_tail(&desc->node, &mdev->free_list); in msgdma_free_descriptor() 240 mdev->desc_free_cnt++; in msgdma_free_descriptor() 241 list_move_tail(&child->node, &mdev->free_list); in msgdma_free_descriptor() 250 static void msgdma_free_desc_list(struct msgdma_device *mdev, in msgdma_free_desc_list() argument [all …]
|
| /Linux-v4.19/sound/core/seq/oss/ |
| D | seq_oss_midi.c | 70 …t send_midi_event(struct seq_oss_devinfo *dp, struct snd_seq_event *ev, struct seq_oss_midi *mdev); 109 struct seq_oss_midi *mdev; in get_mdev() local 113 mdev = midi_devs[dev]; in get_mdev() 114 if (mdev) in get_mdev() 115 snd_use_lock_use(&mdev->use_lock); in get_mdev() 117 return mdev; in get_mdev() 127 struct seq_oss_midi *mdev; in find_slot() local 132 mdev = midi_devs[i]; in find_slot() 133 if (mdev && mdev->client == client && mdev->port == port) { in find_slot() 135 snd_use_lock_use(&mdev->use_lock); in find_slot() [all …]
|
| /Linux-v4.19/drivers/mtd/maps/ |
| D | vmu-flash.c | 26 struct maple_device *mdev; member 62 struct maple_device *mdev; in ofs_to_block() local 68 mdev = mpart->mdev; in ofs_to_block() 69 card = maple_get_drvdata(mdev); in ofs_to_block() 93 struct maple_device *mdev; in vmu_blockread() local 96 mdev = mq->dev; in vmu_blockread() 97 card = maple_get_drvdata(mdev); in vmu_blockread() 116 struct maple_device *mdev; in maple_vmu_read_block() local 123 mdev = mpart->mdev; in maple_vmu_read_block() 125 card = maple_get_drvdata(mdev); in maple_vmu_read_block() [all …]
|
| /Linux-v4.19/drivers/staging/most/usb/ |
| D | usb.c | 78 struct most_dev *mdev; member 230 struct most_dev *mdev = to_mdev(iface); in hdm_poison_channel() local 235 dev_warn(&mdev->usb_device->dev, "Poison: Bad interface.\n"); in hdm_poison_channel() 239 dev_warn(&mdev->usb_device->dev, "Channel ID out of range.\n"); in hdm_poison_channel() 243 lock = mdev->channel_lock + channel; in hdm_poison_channel() 245 mdev->is_channel_healthy[channel] = false; in hdm_poison_channel() 248 cancel_work_sync(&mdev->clear_work[channel].ws); in hdm_poison_channel() 250 mutex_lock(&mdev->io_mutex); in hdm_poison_channel() 251 usb_kill_anchored_urbs(&mdev->busy_urbs[channel]); in hdm_poison_channel() 252 if (mdev->padding_active[channel]) in hdm_poison_channel() [all …]
|
| /Linux-v4.19/drivers/gpu/drm/mgag200/ |
| D | mgag200_main.c | 79 static int mga_probe_vram(struct mga_device *mdev, void __iomem *mem) in mga_probe_vram() argument 91 vram_size = mdev->mc.vram_window; in mga_probe_vram() 93 if ((mdev->type == G200_EW3) && (vram_size >= 0x1000000)) { in mga_probe_vram() 124 static int mga_vram_init(struct mga_device *mdev) in mga_vram_init() argument 132 mdev->mc.vram_base = pci_resource_start(mdev->dev->pdev, 0); in mga_vram_init() 133 mdev->mc.vram_window = pci_resource_len(mdev->dev->pdev, 0); in mga_vram_init() 135 aper->ranges[0].base = mdev->mc.vram_base; in mga_vram_init() 136 aper->ranges[0].size = mdev->mc.vram_window; in mga_vram_init() 141 if (!devm_request_mem_region(mdev->dev->dev, mdev->mc.vram_base, mdev->mc.vram_window, in mga_vram_init() 147 mem = pci_iomap(mdev->dev->pdev, 0, 0); in mga_vram_init() [all …]
|
| /Linux-v4.19/drivers/mailbox/ |
| D | mailbox-sti.c | 40 #define MBOX_BASE(mdev, inst) ((mdev)->base + ((inst) * 4)) argument 85 struct sti_mbox_device *mdev; member 93 struct sti_mbox_device *mdev = chan_info->mdev; in sti_mbox_channel_is_enabled() local 97 return mdev->enabled[instance] & BIT(channel); in sti_mbox_channel_is_enabled() 126 struct sti_mbox_device *mdev = chan_info->mdev; in sti_mbox_enable_channel() local 130 void __iomem *base = MBOX_BASE(mdev, instance); in sti_mbox_enable_channel() 132 spin_lock_irqsave(&mdev->lock, flags); in sti_mbox_enable_channel() 133 mdev->enabled[instance] |= BIT(channel); in sti_mbox_enable_channel() 135 spin_unlock_irqrestore(&mdev->lock, flags); in sti_mbox_enable_channel() 141 struct sti_mbox_device *mdev = chan_info->mdev; in sti_mbox_disable_channel() local [all …]
|
| /Linux-v4.19/drivers/dma/qcom/ |
| D | hidma_mgmt_sys.c | 22 struct hidma_mgmt_dev *mdev; member 30 int (*get)(struct hidma_mgmt_dev *mdev); 31 int (*set)(struct hidma_mgmt_dev *mdev, u64 val); 35 static int get_##name(struct hidma_mgmt_dev *mdev) \ 37 return mdev->name; \ 39 static int set_##name(struct hidma_mgmt_dev *mdev, u64 val) \ 44 tmp = mdev->name; \ 45 mdev->name = val; \ 46 rc = hidma_mgmt_setup(mdev); \ 48 mdev->name = tmp; \ [all …]
|
| /Linux-v4.19/drivers/vfio/mdev/ |
| D | mdev_core.c | 33 struct device *mdev_parent_dev(struct mdev_device *mdev) in mdev_parent_dev() argument 35 return mdev->parent->dev; in mdev_parent_dev() 39 void *mdev_get_drvdata(struct mdev_device *mdev) in mdev_get_drvdata() argument 41 return mdev->driver_data; in mdev_get_drvdata() 45 void mdev_set_drvdata(struct mdev_device *mdev, void *data) in mdev_set_drvdata() argument 47 mdev->driver_data = data; in mdev_set_drvdata() 51 struct device *mdev_dev(struct mdev_device *mdev) in mdev_dev() argument 53 return &mdev->dev; in mdev_dev() 63 uuid_le mdev_uuid(struct mdev_device *mdev) in mdev_uuid() argument 65 return mdev->uuid; in mdev_uuid() [all …]
|
| /Linux-v4.19/include/media/ |
| D | media-device.h | 182 struct media_entity_enum *ent_enum, struct media_device *mdev) in media_entity_enum_init() argument 185 mdev->entity_internal_idx_max + 1); in media_entity_enum_init() 202 void media_device_init(struct media_device *mdev); 212 void media_device_cleanup(struct media_device *mdev); 258 int __must_check __media_device_register(struct media_device *mdev, 270 #define media_device_register(mdev) __media_device_register(mdev, THIS_MODULE) argument 280 void media_device_unregister(struct media_device *mdev); 318 int __must_check media_device_register_entity(struct media_device *mdev, 355 int __must_check media_device_register_entity_notify(struct media_device *mdev, 366 void media_device_unregister_entity_notify(struct media_device *mdev, [all …]
|
| /Linux-v4.19/drivers/media/ |
| D | media-device.c | 88 static struct media_entity *find_entity(struct media_device *mdev, u32 id) in find_entity() argument 95 media_device_for_each_entity(entity, mdev) { in find_entity() 105 static long media_device_enum_entities(struct media_device *mdev, void *arg) in media_device_enum_entities() argument 110 ent = find_entity(mdev, entd->id); in media_device_enum_entities() 158 static long media_device_enum_links(struct media_device *mdev, void *arg) in media_device_enum_links() argument 163 entity = find_entity(mdev, links->entity); in media_device_enum_links() 207 static long media_device_setup_link(struct media_device *mdev, void *arg) in media_device_setup_link() argument 216 source = find_entity(mdev, linkd->source.entity); in media_device_setup_link() 217 sink = find_entity(mdev, linkd->sink.entity); in media_device_setup_link() 237 static long media_device_get_topology(struct media_device *mdev, void *arg) in media_device_get_topology() argument [all …]
|
| /Linux-v4.19/drivers/net/ethernet/mellanox/mlx5/core/ |
| D | en_common.c | 39 int mlx5e_create_tir(struct mlx5_core_dev *mdev, in mlx5e_create_tir() argument 44 err = mlx5_core_create_tir(mdev, in, inlen, &tir->tirn); in mlx5e_create_tir() 48 list_add(&tir->list, &mdev->mlx5e_res.td.tirs_list); in mlx5e_create_tir() 53 void mlx5e_destroy_tir(struct mlx5_core_dev *mdev, in mlx5e_destroy_tir() argument 56 mlx5_core_destroy_tir(mdev, tir->tirn); in mlx5e_destroy_tir() 60 static int mlx5e_create_mkey(struct mlx5_core_dev *mdev, u32 pdn, in mlx5e_create_mkey() argument 81 err = mlx5_core_create_mkey(mdev, mkey, in, inlen); in mlx5e_create_mkey() 87 int mlx5e_create_mdev_resources(struct mlx5_core_dev *mdev) in mlx5e_create_mdev_resources() argument 89 struct mlx5e_resources *res = &mdev->mlx5e_res; in mlx5e_create_mdev_resources() 92 err = mlx5_core_alloc_pd(mdev, &res->pdn); in mlx5e_create_mdev_resources() [all …]
|
| /Linux-v4.19/drivers/net/ethernet/mellanox/mlx5/core/fpga/ |
| D | core.c | 103 err = mlx5_fpga_query(fdev->mdev, &query); in mlx5_fpga_device_load_check() 128 struct mlx5_core_dev *mdev = fdev->mdev; in mlx5_fpga_device_brb() local 130 err = mlx5_fpga_ctrl_op(mdev, MLX5_FPGA_CTRL_OPERATION_SANDBOX_BYPASS_ON); in mlx5_fpga_device_brb() 135 err = mlx5_fpga_ctrl_op(mdev, MLX5_FPGA_CTRL_OPERATION_RESET_SANDBOX); in mlx5_fpga_device_brb() 140 err = mlx5_fpga_ctrl_op(mdev, MLX5_FPGA_CTRL_OPERATION_SANDBOX_BYPASS_OFF); in mlx5_fpga_device_brb() 148 int mlx5_fpga_device_start(struct mlx5_core_dev *mdev) in mlx5_fpga_device_start() argument 150 struct mlx5_fpga_device *fdev = mdev->fpga; in mlx5_fpga_device_start() 163 err = mlx5_fpga_caps(fdev->mdev); in mlx5_fpga_device_start() 167 fpga_device_id = MLX5_CAP_FPGA(fdev->mdev, fpga_device); in mlx5_fpga_device_start() 172 MLX5_CAP_FPGA(fdev->mdev, image_version), in mlx5_fpga_device_start() [all …]
|
| /Linux-v4.19/drivers/tty/serial/8250/ |
| D | 8250_men_mcb.c | 28 static u32 men_lookup_uartclk(struct mcb_device *mdev) in men_lookup_uartclk() argument 33 dev_info(&mdev->dev, "%s on board %s\n", in men_lookup_uartclk() 34 dev_name(&mdev->dev), in men_lookup_uartclk() 35 mdev->bus->name); in men_lookup_uartclk() 36 if (strncmp(mdev->bus->name, "F075", 4) == 0) in men_lookup_uartclk() 38 else if (strncmp(mdev->bus->name, "F216", 4) == 0) in men_lookup_uartclk() 40 else if (strncmp(mdev->bus->name, "G215", 4) == 0) in men_lookup_uartclk() 42 else if (strncmp(mdev->bus->name, "F210", 4) == 0) in men_lookup_uartclk() 45 dev_info(&mdev->dev, in men_lookup_uartclk() 53 static unsigned int get_num_ports(struct mcb_device *mdev, in get_num_ports() argument [all …]
|