Re: 2.6.21-rc2-mm1: drivers/usb/host/ohci-ssb.c doesn't compile

From: Michael Buesch
Date: Mon Mar 05 2007 - 06:28:05 EST


On Monday 05 March 2007 11:57, Michael Buesch wrote:
> > > CC drivers/usb/host/ohci-hcd.o
> > > In file included from
> > > /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/drivers/usb/host/ohci-hcd.c:931:
> > > /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/drivers/usb/host/ohci-ssb.c:47: error: request for member 'hcd_priv_size' in something not a structure or union
> >
> > Seems like there was a comma missing.
> > There also seems to be some Kconfig problem. will fix that.
> >
> > > /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/drivers/usb/host/ohci-ssb.c:47: error: 'ssb_ohci_device' undeclared here (not in a function)
> > > /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/drivers/usb/host/ohci-ssb.c:52: error: 'ssb_ohci_reset' undeclared here (not in a function)
> > > /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/drivers/usb/host/ohci-ssb.c:53: error: 'ssb_ohci_start' undeclared here (not in a function)
> > > ...
> > > make[4]: *** [drivers/usb/host/ohci-hcd.o] Error 1
> > >
> > > <-- snip -->
>
> Actually, it seems like I will run into other kinds of nasty problems
> due to stupid design of the HCD code. The OHCI code #includes
> the various drivers, which have a module_init each. So if you
> compile PCI and SSB support, you have two module_init for one
> OHCI module. Not sure how to fix this. Any idea?

A real problem is that the HCD core seems to have the assumption
built-in that there can only be one OHCI driver per machine/arch.
That's not the case for SSB, where we can have both PCI and SSB
bus enabled, so both ohci drivers compiled.
Any idea? Greg perhaps?

Refactoring the code that OHCI drivers register to the HCD core
instead of hard-linking it in would fix the issue. But that's pretty
intrusive to do.

--
Greetings Michael.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/