Re: [PATCH 1/2] Fixed compiled issue tu to new of_platform.h header
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2006-11-24 21:19:16
I haven't been following this very closely. The problem is that you have a system with two different kinds of OHCI controllers, thus requiring two different and incompatible versions of the driver?
Sort-of. Basically, PowerPC can (and must in some case) build a single kernel image that can be booted on a variety of platforms. There are at least 3 platforms coming in now (this Efika is one of them) where that includes a non-PCI OHCI or EHCI (big endian even) while the same kernel must also contain the normal PCI OHCI/EHCI driver. It's generally not a problem as the endian thingy is a runtime bit, and in general, the whole code allows for this just fine, with, afaik, the exception of the multiple module_init() bits...
If the only source of incompatibility is the module_init() and module_exit() routines, then your suggestion would be a simple fix. Ugly, yes, but I don't think anyone will really mind. Is there anything else to prevent you from combining multiple HCIs into a single driver?
Not that I know. But we could have a cleaner approach. The #include one dates a bit... we could have for example an ohci-core.ko with the core bits, and ochi-pci.ko, ohci-patform.ko etc... be separate modules linked on the first and instanciating it. I'll have a look and will come up with either solution. Ben.