On Wed, Jan 19, 2011 at 03:09:15PM -0200, Fabio Estevam wrote: > On 1/19/2011 1:36 PM, Eric Bénard wrote: > > Hi Fabio, > > > > On 19/01/2011 16:32, Fabio Estevam wrote: > >> Instead of checking the CPU type in build-time, do it in run-time. > >> > >> Signed-off-by: Fabio Estevam<fabio.estevam@xxxxxxxxxxxxx> > >> --- > >> drivers/usb/gadget/fsl_mxc_udc.c | 23 ++++++++++++----------- > >> 1 files changed, 12 insertions(+), 11 deletions(-) > >> > >> diff --git a/drivers/usb/gadget/fsl_mxc_udc.c b/drivers/usb/gadget/fsl_mxc_udc.c > >> index 77b1eb5..167abe0 100644 > >> --- a/drivers/usb/gadget/fsl_mxc_udc.c > >> +++ b/drivers/usb/gadget/fsl_mxc_udc.c > >> @@ -88,17 +88,18 @@ eenahb: > >> void fsl_udc_clk_finalize(struct platform_device *pdev) > >> { > >> struct fsl_usb2_platform_data *pdata = pdev->dev.platform_data; > >> -#if defined(CONFIG_ARCH_MX35) > >> - unsigned int v; > >> - > >> - /* workaround ENGcm09152 for i.MX35 */ > >> - if (pdata->workaround& FLS_USB2_WORKAROUND_ENGCM09152) { > >> - v = readl(MX35_IO_ADDRESS(MX35_USB_BASE_ADDR + > >> - USBPHYCTRL_OTGBASE_OFFSET)); > >> - writel(v | USBPHYCTRL_EVDO, MX35_IO_ADDRESS(MX35_USB_BASE_ADDR + > >> - USBPHYCTRL_OTGBASE_OFFSET)); > >> - } > >> -#endif > >> + if (cpu_is_mx35()) { > >> + unsigned int v; > >> + > >> + /* workaround ENGcm09152 for i.MX35 */ > >> + if (pdata->workaround& FLS_USB2_WORKAROUND_ENGCM09152) { can you please fix up the position of the '&'? > >> + v = readl(MX35_IO_ADDRESS(MX35_USB_BASE_ADDR + > >> + USBPHYCTRL_OTGBASE_OFFSET)); > >> + writel(v | USBPHYCTRL_EVDO, > >> + MX35_IO_ADDRESS(MX35_USB_BASE_ADDR + > >> + USBPHYCTRL_OTGBASE_OFFSET)); I wonder if the address isn't mapped via ioremap in the driver and the cookie saved somewhere? (And no, I don't ask you to change that in this patch.) (If so, it this already problematic aliasing?) > >> + } > >> + } > >> > > are you sure this compiles when MX35 is not selected ? > > Including #include <mach/mx35.h> fixes the build for a non- mx35 kernel. > > Would this be acceptable? If so, I can send v2. If you keep the #if defined(CONFIG_ARCH_MX35) and only add the if (cpu_is_mx35()) it should work without a new #include. Doing that seems a tad cleaner to me. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | http://www.pengutronix.de/ | -- 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