Index: sys/dev/usb/controller/ehci.c =================================================================== --- sys/dev/usb/controller/ehci.c (revision 237655) +++ sys/dev/usb/controller/ehci.c (working copy) @@ -187,6 +187,7 @@ int i; EOWRITE4(sc, EHCI_USBCMD, EHCI_CMD_HCRESET); + printf("%s:%d\n", __FILE__, __LINE__); for (i = 0; i < 100; i++) { usb_pause_mtx(NULL, hz / 128); hcr = EOREAD4(sc, EHCI_USBCMD) & EHCI_CMD_HCRESET; @@ -207,11 +208,15 @@ device_printf(sc->sc_bus.bdev, "set big-endian mode\n"); } + printf("%s:%d\n", __FILE__, __LINE__); EOWRITE4(sc, EHCI_USBMODE, usbmode); + printf("%s:%d\n", __FILE__, __LINE__); } + printf("%s:%d\n", __FILE__, __LINE__); return (0); } } + printf("%s:%d\n", __FILE__, __LINE__); device_printf(sc->sc_bus.bdev, "Reset timeout\n"); return (USB_ERR_IOERROR); } @@ -340,6 +345,7 @@ device_printf(sc->sc_bus.bdev, "reset timeout\n"); return (err); } + printf("%s:%d\n", __FILE__, __LINE__); /* * use current frame-list-size selection 0: 1024*4 bytes 1: 512*4 * bytes 2: 256*4 bytes 3: unknown @@ -353,6 +359,7 @@ sc->sc_eintrs = EHCI_NORMAL_INTRS; + printf("%s:%d\n", __FILE__, __LINE__); if (1) { struct ehci_qh_sub *qh; @@ -371,6 +378,7 @@ htohc32(sc, EHCI_QTD_HALTED); } + printf("%s:%d\n", __FILE__, __LINE__); for (i = 0; i < EHCI_VIRTUAL_FRAMELIST_COUNT; i++) { ehci_qh_t *qh; @@ -409,6 +417,7 @@ * powers of 2 times 1ms */ bit = EHCI_VIRTUAL_FRAMELIST_COUNT / 2; + printf("%s:%d\n", __FILE__, __LINE__); while (bit) { x = bit; while (x & bit) { @@ -430,6 +439,7 @@ bit >>= 1; } + printf("%s:%d\n", __FILE__, __LINE__); if (1) { ehci_qh_t *qh; @@ -438,6 +448,7 @@ /* the last (1ms) QH terminates */ qh->qh_link = htohc32(sc, EHCI_LINK_TERMINATE); } + printf("%s:%d\n", __FILE__, __LINE__); for (i = 0; i < EHCI_VIRTUAL_FRAMELIST_COUNT; i++) { ehci_sitd_t *sitd; ehci_itd_t *itd; @@ -488,9 +499,11 @@ itd->itd_next = sitd->sitd_self; } + printf("%s:%d\n", __FILE__, __LINE__); usbd_get_page(&sc->sc_hw.pframes_pc, 0, &buf_res); + printf("%s:%d\n", __FILE__, __LINE__); if (1) { uint32_t *pframes; @@ -508,6 +521,7 @@ } usbd_get_page(&sc->sc_hw.async_start_pc, 0, &buf_res); + printf("%s:%d\n", __FILE__, __LINE__); if (1) { ehci_qh_t *qh; @@ -542,6 +556,7 @@ } /* flush all cache into memory */ + printf("%s:%d\n", __FILE__, __LINE__); usb_bus_mem_flush_all(&sc->sc_bus, &ehci_iterate_hw_softc); #ifdef USB_DEBUG @@ -551,12 +566,15 @@ #endif /* finial setup */ + printf("%s:%d\n", __FILE__, __LINE__); err = ehci_init_sub(sc); + printf("%s:%d\n", __FILE__, __LINE__); if (!err) { /* catch any lost interrupts */ ehci_do_poll(&sc->sc_bus); } + printf("%s:%d\n", __FILE__, __LINE__); return (err); }