Lines Matching refs:xendev
150 int xenbus_read_otherend_details(struct xenbus_device *xendev, in xenbus_read_otherend_details() argument
153 int err = xenbus_gather(XBT_NIL, xendev->nodename, in xenbus_read_otherend_details()
154 id_node, "%i", &xendev->otherend_id, in xenbus_read_otherend_details()
155 path_node, NULL, &xendev->otherend, in xenbus_read_otherend_details()
158 xenbus_dev_fatal(xendev, err, in xenbus_read_otherend_details()
160 xendev->nodename); in xenbus_read_otherend_details()
163 if (strlen(xendev->otherend) == 0 || in xenbus_read_otherend_details()
164 !xenbus_exists(XBT_NIL, xendev->otherend, "")) { in xenbus_read_otherend_details()
165 xenbus_dev_fatal(xendev, -ENOENT, in xenbus_read_otherend_details()
168 xendev->nodename); in xenbus_read_otherend_details()
169 free_otherend_details(xendev); in xenbus_read_otherend_details()
392 struct xenbus_device *xendev = to_xenbus_device(dev); in cmp_dev() local
395 if (!strcmp(xendev->nodename, info->nodename)) { in cmp_dev()
396 info->dev = xendev; in cmp_dev()
414 struct xenbus_device *xendev = to_xenbus_device(dev); in cleanup_dev() local
421 if (strncmp(xendev->nodename, info->nodename, len)) in cleanup_dev()
425 if ((strlen(xendev->nodename) > len) && (xendev->nodename[len] != '/')) in cleanup_dev()
428 info->dev = xendev; in cleanup_dev()
507 struct xenbus_device *xendev; in xenbus_probe_node() local
520 xendev = kzalloc(sizeof(*xendev) + stringlen, GFP_KERNEL); in xenbus_probe_node()
521 if (!xendev) in xenbus_probe_node()
524 xendev->state = XenbusStateInitialising; in xenbus_probe_node()
528 tmpstring = (char *)(xendev + 1); in xenbus_probe_node()
530 xendev->nodename = tmpstring; in xenbus_probe_node()
534 xendev->devicetype = tmpstring; in xenbus_probe_node()
535 init_completion(&xendev->down); in xenbus_probe_node()
537 xendev->dev.bus = &bus->bus; in xenbus_probe_node()
538 xendev->dev.release = xenbus_dev_release; in xenbus_probe_node()
540 err = bus->get_bus_id(devname, xendev->nodename); in xenbus_probe_node()
544 dev_set_name(&xendev->dev, "%s", devname); in xenbus_probe_node()
545 sema_init(&xendev->reclaim_sem, 1); in xenbus_probe_node()
548 err = device_register(&xendev->dev); in xenbus_probe_node()
550 put_device(&xendev->dev); in xenbus_probe_node()
551 xendev = NULL; in xenbus_probe_node()
557 kfree(xendev); in xenbus_probe_node()