Lines Matching refs:bus

83 void usb_bus_new(USBBus *bus, size_t bus_size,  in usb_bus_new()  argument
86 qbus_init(bus, bus_size, TYPE_USB_BUS, host, NULL); in usb_bus_new()
87 qbus_set_bus_hotplug_handler(BUS(bus)); in usb_bus_new()
88 bus->ops = ops; in usb_bus_new()
89 bus->busnr = next_usb_bus++; in usb_bus_new()
90 QTAILQ_INIT(&bus->free); in usb_bus_new()
91 QTAILQ_INIT(&bus->used); in usb_bus_new()
92 QTAILQ_INSERT_TAIL(&busses, bus, next); in usb_bus_new()
95 void usb_bus_release(USBBus *bus) in usb_bus_release() argument
99 QTAILQ_REMOVE(&busses, bus, next); in usb_bus_release()
329 void usb_register_port(USBBus *bus, USBPort *port, void *opaque, int index, in usb_register_port() argument
333 QTAILQ_INSERT_TAIL(&bus->free, port, next); in usb_register_port()
334 bus->nfree++; in usb_register_port()
342 USBBus *bus; in usb_register_companion() local
345 QTAILQ_FOREACH(bus, &busses, next) { in usb_register_companion()
346 if (strcmp(bus->qbus.name, masterbus) == 0) { in usb_register_companion()
351 if (!bus) { in usb_register_companion()
355 if (!bus->ops->register_companion) { in usb_register_companion()
366 bus->ops->register_companion(bus, ports, portcount, firstport, errp); in usb_register_companion()
383 void usb_unregister_port(USBBus *bus, USBPort *port) in usb_unregister_port() argument
388 QTAILQ_REMOVE(&bus->free, port, next); in usb_unregister_port()
389 bus->nfree--; in usb_unregister_port()
394 USBBus *bus = usb_bus_from_device(dev); in usb_claim_port() local
401 QTAILQ_FOREACH(port, &bus->free, next) { in usb_claim_port()
408 dev->port_path, bus->qbus.name); in usb_claim_port()
412 if (bus->nfree == 1 && strcmp(object_get_typename(OBJECT(dev)), "usb-hub") != 0) { in usb_claim_port()
416 usb_realize_and_unref(hub, bus, NULL); in usb_claim_port()
419 if (bus->nfree == 0) { in usb_claim_port()
424 port = QTAILQ_FIRST(&bus->free); in usb_claim_port()
426 trace_usb_port_claim(bus->busnr, port->path); in usb_claim_port()
428 QTAILQ_REMOVE(&bus->free, port, next); in usb_claim_port()
429 bus->nfree--; in usb_claim_port()
434 QTAILQ_INSERT_TAIL(&bus->used, port, next); in usb_claim_port()
435 bus->nused++; in usb_claim_port()
440 USBBus *bus = usb_bus_from_device(dev); in usb_release_port() local
444 trace_usb_port_release(bus->busnr, port->path); in usb_release_port()
446 QTAILQ_REMOVE(&bus->used, port, next); in usb_release_port()
447 bus->nused--; in usb_release_port()
452 QTAILQ_INSERT_TAIL(&bus->free, port, next); in usb_release_port()
453 bus->nfree++; in usb_release_port()
484 USBBus *bus = usb_bus_from_device(dev); in usb_check_attach() local
492 trace_usb_port_attach(bus->busnr, port->path, in usb_check_attach()
500 bus->qbus.name, port->path, portspeed); in usb_check_attach()
522 USBBus *bus = usb_bus_from_device(dev); in usb_device_detach() local
527 trace_usb_port_detach(bus->busnr, port->path); in usb_device_detach()
550 USBBus *bus = usb_bus_from_device(dev); in usb_bus_dev_print() local
553 indent, "", bus->busnr, dev->addr, in usb_bus_dev_print()
603 USBBus *bus; in qmp_x_query_usb() local
612 QTAILQ_FOREACH(bus, &busses, next) { in qmp_x_query_usb()
613 QTAILQ_FOREACH(port, &bus->used, next) { in qmp_x_query_usb()
620 bus->busnr, dev->addr, port->path, in qmp_x_query_usb()
633 USBBus *bus = QTAILQ_FIRST(&busses); in usbdevice_create() local
658 if (!bus) { in usbdevice_create()
671 if (!usb_realize_and_unref(dev, bus, &err)) { in usbdevice_create()