On 02/19/2012 12:49 AM, Jakub Jermar wrote:
> today I wanted to try to use the rootpc platform driver on the PE 3250
> Itanium server and see what happens. After fixing a couple of bugs and
> addressing the issue with a too big image.boot, I am at a stage where:
>
> - the Intel PCI driver apparently works as it discovers UHCI; devman
> says it cannot find drivers for some other underlying, but non-USB devices
>
> - the UHCI HC driver apparently consumes the function created by the PCI
> dirver, because...
>
> - UHCI says it could not enable interrupts and so it fell back to polling
>
> - I don't see any further messages for the devices attached under UHCI;
> no hubs, no USB hid
>
> - of course, I still cannot use the USB keyboard at this stage
>
> The hw on this machine is as captured on this page:
>
> http://trac.helenos.org/wiki/DellPowerEdge3250DevTree
>
> Any ideas what could be preventing the usual USB devices from being
> discovered?
I investigated this a little more. There appears to be a hang in uhci's
hc_init_hw(). Sadly, it never returns from the async_usleep(50000) call:
void hc_init_hw(const hc_t *instance)
{
assert(instance);
uhci_regs_t *registers = instance->registers;
/* Reset everything, who knows what touched it before us */
pio_write_16(®isters->usbcmd, UHCI_CMD_GLOBAL_RESET);
async_usleep(50000); /* 50ms according to USB spec(root hub
reset) */
pio_write_16(®isters->usbcmd, 0);
My guess is that somehow the underlying kernel timeout mechanism is not
working.
Jakub
_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/cgi-bin/listinfo/helenos-devel