Lines Matching full:vdev
71 struct vio_dev *vdev = to_vio_dev(dev); in vio_device_probe() local
78 id = vio_match_device(drv->id_table, vdev); in vio_device_probe()
84 if (vdev->tx_irq == 0 && vdev->tx_ino != ~0UL) in vio_device_probe()
85 vdev->tx_irq = sun4v_build_virq(vdev->cdev_handle, in vio_device_probe()
86 vdev->tx_ino); in vio_device_probe()
88 if (vdev->rx_irq == 0 && vdev->rx_ino != ~0UL) in vio_device_probe()
89 vdev->rx_irq = sun4v_build_virq(vdev->cdev_handle, in vio_device_probe()
90 vdev->rx_ino); in vio_device_probe()
93 return drv->probe(vdev, id); in vio_device_probe()
98 struct vio_dev *vdev = to_vio_dev(dev); in vio_device_remove() local
108 drv->remove(vdev); in vio_device_remove()
115 struct vio_dev *vdev = to_vio_dev(dev); in devspec_show() local
118 if (!strcmp(vdev->type, "vnet-port")) in devspec_show()
120 else if (!strcmp(vdev->type, "vdc-port")) in devspec_show()
130 struct vio_dev *vdev = to_vio_dev(dev); in type_show() local
131 return sprintf(buf, "%s\n", vdev->type); in type_show()
138 const struct vio_dev *vdev = to_vio_dev(dev); in modalias_show() local
140 return sprintf(buf, "vio:T%sS%s\n", vdev->type, vdev->compat); in modalias_show()
188 struct vio_dev *vdev; in show_pciobppath_attr() local
191 vdev = to_vio_dev(dev); in show_pciobppath_attr()
192 dp = vdev->dp; in show_pciobppath_attr()
224 * vio_vdev_node() - Find VDEV node in MD
226 * @vdev: Pointer to VDEV
234 * Return: The VDEV node in MDESC
236 u64 vio_vdev_node(struct mdesc_handle *hp, struct vio_dev *vdev) in vio_vdev_node() argument
240 if (vdev == NULL) in vio_vdev_node()
243 node = mdesc_get_node(hp, (const char *)vdev->node_name, in vio_vdev_node()
244 &vdev->md_node_info); in vio_vdev_node()
251 struct vio_dev *vdev) in vio_fill_channel_info() argument
255 vdev->tx_ino = ~0UL; in vio_fill_channel_info()
256 vdev->rx_ino = ~0UL; in vio_fill_channel_info()
257 vdev->channel_id = ~0UL; in vio_fill_channel_info()
267 vdev->tx_ino = *irq; in vio_fill_channel_info()
271 vdev->rx_ino = *irq; in vio_fill_channel_info()
275 vdev->channel_id = *chan_id; in vio_fill_channel_info()
278 vdev->cdev_handle = cdev_cfg_handle; in vio_fill_channel_info()
296 struct vio_dev *vdev; in vio_create_one() local
327 vdev = kzalloc(sizeof(*vdev), GFP_KERNEL); in vio_create_one()
328 if (!vdev) { in vio_create_one()
333 vdev->mp = mp; in vio_create_one()
334 memcpy(vdev->type, type, tlen); in vio_create_one()
336 memcpy(vdev->compat, compat, clen); in vio_create_one()
338 memset(vdev->compat, 0, sizeof(vdev->compat)); in vio_create_one()
339 vdev->compat_len = clen; in vio_create_one()
341 vdev->port_id = ~0UL; in vio_create_one()
342 vdev->tx_irq = 0; in vio_create_one()
343 vdev->rx_irq = 0; in vio_create_one()
345 vio_fill_channel_info(hp, mp, vdev); in vio_create_one()
348 dev_set_name(&vdev->dev, "%s", type); in vio_create_one()
349 vdev->dev_no = ~(u64)0; in vio_create_one()
351 dev_set_name(&vdev->dev, "%s-%llu", type, *id); in vio_create_one()
352 vdev->dev_no = *id; in vio_create_one()
354 dev_set_name(&vdev->dev, "%s-%llu-%llu", type, in vio_create_one()
356 vdev->dev_no = *cfg_handle; in vio_create_one()
357 vdev->port_id = *id; in vio_create_one()
360 vdev->dev.parent = parent; in vio_create_one()
361 vdev->dev.bus = &vio_bus_type; in vio_create_one()
362 vdev->dev.release = vio_dev_release; in vio_create_one()
374 vdev->dp = dp; in vio_create_one()
381 (void) snprintf(vdev->node_name, VIO_MAX_NAME_LEN, "%s", in vio_create_one()
385 &vdev->md_node_info); in vio_create_one()
388 dev_name(&vdev->dev), err); in vio_create_one()
389 kfree(vdev); in vio_create_one()
395 dev_name(&vdev->dev), vdev->tx_ino, vdev->rx_ino); in vio_create_one()
397 err = device_register(&vdev->dev); in vio_create_one()
400 dev_name(&vdev->dev), err); in vio_create_one()
401 put_device(&vdev->dev); in vio_create_one()
404 if (vdev->dp) in vio_create_one()
405 err = sysfs_create_file(&vdev->dev.kobj, in vio_create_one()
408 return vdev; in vio_create_one()
424 struct vio_dev *vdev = to_vio_dev(dev); in vio_md_node_match() local
430 node = vio_vdev_node(node_data->hp, vdev); in vio_md_node_match()