Lines Matching defs:sc_ohci

58 	struct ohci_softc sc_ohci;
76 sc->sc_ohci.sc_bus.parent = dev;
77 sc->sc_ohci.sc_bus.devices = sc->sc_ohci.sc_devices;
78 sc->sc_ohci.sc_bus.devices_max = OHCI_MAX_DEVICES;
79 sc->sc_ohci.sc_bus.dma_bits = 32;
82 if (usb_bus_mem_alloc_all(&sc->sc_ohci.sc_bus,
87 sc->sc_ohci.sc_dev = dev;
90 sc->sc_ohci.sc_io_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid,
92 if (sc->sc_ohci.sc_io_res == NULL) {
96 sc->sc_ohci.sc_io_tag = rman_get_bustag(sc->sc_ohci.sc_io_res);
97 sc->sc_ohci.sc_io_hdl = rman_get_bushandle(sc->sc_ohci.sc_io_res);
98 sc->sc_ohci.sc_io_size = rman_get_size(sc->sc_ohci.sc_io_res);
101 sc->sc_ohci.sc_irq_res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid,
103 if (sc->sc_ohci.sc_irq_res == NULL) {
107 sc->sc_ohci.sc_bus.bdev = device_add_child(dev, "usbus", -1);
108 if (sc->sc_ohci.sc_bus.bdev == NULL) {
112 device_set_ivars(sc->sc_ohci.sc_bus.bdev, &sc->sc_ohci.sc_bus);
114 err = bus_setup_intr(dev, sc->sc_ohci.sc_irq_res,
116 (driver_intr_t *)ohci_interrupt, sc, &sc->sc_ohci.sc_intr_hdl);
122 strlcpy(sc->sc_ohci.sc_vendor, "Atheros", sizeof(sc->sc_ohci.sc_vendor));
124 bus_space_write_4(sc->sc_ohci.sc_io_tag, sc->sc_ohci.sc_io_hdl, OHCI_CONTROL, 0);
126 err = ohci_init(&sc->sc_ohci);
128 err = device_probe_and_attach(sc->sc_ohci.sc_bus.bdev);
148 if (sc->sc_ohci.sc_bus.bdev) {
149 bdev = sc->sc_ohci.sc_bus.bdev;
165 bus_space_write_4(sc->sc_ohci.sc_io_tag, sc->sc_ohci.sc_io_hdl,
168 if (sc->sc_ohci.sc_intr_hdl) {
169 bus_teardown_intr(dev, sc->sc_ohci.sc_irq_res, sc->sc_ohci.sc_intr_hdl);
170 sc->sc_ohci.sc_intr_hdl = NULL;
173 if (sc->sc_ohci.sc_irq_res && sc->sc_ohci.sc_intr_hdl) {
177 ohci_detach(&sc->sc_ohci);
179 bus_release_resource(dev, SYS_RES_IRQ, 0, sc->sc_ohci.sc_irq_res);
180 sc->sc_ohci.sc_irq_res = NULL;
182 if (sc->sc_ohci.sc_io_res) {
183 bus_release_resource(dev, SYS_RES_MEMORY, 0, sc->sc_ohci.sc_io_res);
184 sc->sc_ohci.sc_io_res = NULL;
185 sc->sc_ohci.sc_io_tag = 0;
186 sc->sc_ohci.sc_io_hdl = 0;
188 usb_bus_mem_free_all(&sc->sc_ohci.sc_bus, &ohci_iterate_hw_softc);