Re: PROBLEM: OHCI HCD - computer freezes during boot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I don't know how, but adding the following line in function
quirk_usb_handoff_ohci makes the system work fine:

	/* reset requires max 10 us delay */
+	udelay(1);
	for (cnt = 30; cnt > 0; --cnt) {	/* ... allow extra time */
		if ((readl(base + OHCI_CMDSTATUS) & OHCI_HCR) == 0)

I observed thad the condition in the for loop is allways true, so the
delay inside the loop is never executed.
With the unmodified source, the execution doesn't stop at this point
but at the next readl (I tried inserting printk and readl instructions
after the writel which restores the fminterval and the execution
stopped before exiting quirk_usb_handoff_ohci).
I don't know how it relates to the ACPI message... (see bug 43073 in
bugzilla.kernel.org).

Calin Demian

2012/4/25 Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>:
> On Wed, 25 Apr 2012, Calin Demian wrote:
>
>> I have reported the issue in bugzilla, before (bug 43073). Because the
>> problem does not appear every time, I am able to boot with new kernels
>> (sometimes).
>> I also found that the problem is triggered by a specific sequence of
>> io read/write operations (including the software reset) related to the
>> host controller (during init) and by changing the operations or
>> inserting delays between them it can be solved.
>
> What delays do you need, and where should they be inserted?
>
> Alan Stern
>
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux