unable to mount root from USB

Hans Petter Selasky hselasky at c2i.net
Mon Aug 17 08:19:42 UTC 2009


Hi,

I suspect that your problem might have something to do with suspend/resume 
support.

Assuming your device is High Speed, could you edit:

/sys/dev/usb/controller/ehci.c and find the function:

ehci_set_hw_power()

There you change:
        if (flags & (USB_HW_POWER_CONTROL |
            USB_HW_POWER_BULK)) {
                DPRINTF("Async is active\n");
                temp |= EHCI_CMD_ASE;
        }
        if (flags & (USB_HW_POWER_INTERRUPT |
            USB_HW_POWER_ISOC)) {
                DPRINTF("Periodic is active\n");
                temp |= EHCI_CMD_PSE;
        }
Into:

        if (1) {
                DPRINTF("Async is active\n");
                temp |= EHCI_CMD_ASE;
        }
        if (1) {
                DPRINTF("Periodic is active\n");
                temp |= EHCI_CMD_PSE;
        }

Lookup ohci_set_hw_power() and uhci_set_hw_power() and patch likewise.

--HPS



More information about the freebsd-current mailing list