Hello, On Wed, March 11, 2015 2:16 pm, Uwe Kleine-König wrote: > Hello, > > On Wed, Mar 11, 2015 at 01:42:42PM +0100, Bas Vermeulen wrote: >> i.MX35 has an issue that when USB DMA (SINGLE) transfers >> are interrupted, the usb core can hang. >> >> This patch implements the workaround described in ENGcm11601 >> by setting the AHB to use INCR transfers instead of SINGLE >> transfers. >> >> Signed-off-by: Bas Vermeulen <bas.vermeulen@xxxxxxxxxxxx> >> CC: Sasha Hauer <kernel@xxxxxxxxxxxxxx> > s/Sasha/Sascha/ I'll change that. >> +static int ehci_mxc_reset(struct usb_hcd *hcd) >> +{ >> + int retval; >> + >> + retval = ehci_setup(hcd); >> + if (retval) >> + return retval; >> + >> + /* workaround for ENGcm11601 */ >> + if (of_machine_is_compatible("fsl,imx35")) > This is not pretty. The usb device in the dts looks as follows: > > usbhost1: usb@53ff4400 { > compatible = "fsl,imx35-usb", "fsl,imx27-usb"; > ... > } > > so it would be good to match on fsl,imx35-usb instead of the machine id. > Also it seems that currently the driver binds to this device because of > the i.MX27 compatible entry assuming that these are identical. The same > holds true for i.MX23 (really?), i.MX25, i.MX50, i.MX51, i.MX53 and > i.MX6*. > Among these SoCs is really only the i.MX35 affected? I don't know. I have only seen the problem on an i.MX35 with a very old (2.6.31.14) kernel. I found a patch for u-boot that implements it with an #ifdef CONFIG_MX35, implying that only the i.MX35 is affected. I am unable to test this on other hardware. I wanted to make sure that the code is only executed when the i.MX35 is used. In the 2.6.31.14 case, I used cpu_is_mx35(). I'm not sure what the current syntax would be, but the of_machine_is_compatible("fsl,imx35") seemed to fit. Regards, Bas Vermeulen -- Blackstar Embedded Services Hoofdweg 128 * 9626AJ * Schildwolde * The Netherlands T: +31 598 423928 * F: +31 598 423991 * M: +31 6 45622453 E-mail: bas.vermeulen@xxxxxxxxxxxx KvK: 01163970 * BTW-nummer: NL142605608B01 -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html