On Thursday 25 May 2006 8:15 am, Jan Capek wrote:
> Hi,
>
> I have come across an issue when compiling the ohci-hcd driver as module
> when PCI and USB_OHCI_HCD_PPC_SOC are both enabled. The compilation of USB
> subsystem fails due to the fact that ohci-hcd.c has some of its
> components(ohci-pci.c, ohci-ppc-soc.c and others) conditionally included
> via #include. The ohci-pci.c module is incorrectly inserted when
> CONFIG_PCI is set. In fact, it should be included only when
> CONFIG_USB_OHCI_HCD_PCI is set. Note that this compilation problem won't
> show up when the ohci-hcd is built into the kernel since the init/exit
> functions of each component won't result into a symbol conflict.
>
> Please, apply. Thanks.
No, this will prevent OHCI from working on typical x86 hardware.
Instead, see how it's solved for EHCI with the same PPC-based SOC chips, by
http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/gregkh-04-usb
/usb-allow-multiple-types-of-ehci-controllers-to-be-built-as-modules.patch
That's one URL, no spaces. A solution for OHCI should look more like that,
allowing those platforms to register _two_ kinds of bus glue for that host
controller driver at the same time ... when the platform needs them.
- Dave
> Jan Capek
> SYSGO | Real-Time Solutions | ELinOS Embedded Linux | http://www.sysgo.com
>
> Signed-off-by: Jan Capek <[EMAIL PROTECTED]>
> ----
> --- a/drivers/usb/host/ohci-hcd.c 2006-01-03 04:21:10.000000000 +0100
> +++ b/drivers/usb/host/ohci-hcd.c 2006-05-22 17:35:33.000000000 +0200
> @@ -885,7 +885,7 @@ MODULE_AUTHOR (DRIVER_AUTHOR);
> MODULE_DESCRIPTION (DRIVER_INFO);
> MODULE_LICENSE ("GPL");
>
> -#ifdef CONFIG_PCI
> +#ifdef CONFIG_USB_OHCI_HCD_PCI
> #include "ohci-pci.c"
> #endif
>
> --- a/drivers/usb/host/ohci-hcd.c 2006-05-24 12:44:28.000000000 +0200
> +++ b/drivers/usb/host/ohci-hcd.c 2006-05-25 16:55:40.000000000 +0200
> @@ -917,7 +917,7 @@ MODULE_LICENSE ("GPL");
> #include "ohci-ppc-soc.c"
> #endif
>
> -#if !(defined(CONFIG_PCI) \
> +#if !(defined(CONFIG_USB_OHCI_HCD_PCI) \
> || defined(CONFIG_SA1111) \
> || defined(CONFIG_ARCH_S3C2410) \
> || defined(CONFIG_ARCH_OMAP) \
>
>
>
>
> -------------------------------------------------------
> All the advantages of Linux Managed Hosting--Without the Cost and Risk!
> Fully trained technicians. The highest number of Red Hat certifications in
> the hosting industry. Fanatical Support. Click to learn more
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
> _______________________________________________
> [email protected]
> To unsubscribe, use the last form field at:
> https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
>
-------------------------------------------------------
All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel