> choice values can also be tristate symbols, so you wouldn't need the
> separate defines, unless you really always want to compile only a single
> controller (even as module).
That's it precisely. USB devices have only one (upstream) link;
they're not like hosts. And its link to the controller isn't
re-wired on the fly any more than, say, the MMU. Kconfig just
needed some persuasion before it'd dance that way.
And similar for net2280, pxa2xx, and so on. Either that, or moving it
up higher in the text file, seems to have been the black magic that
made the menu layout code behave.
> I'm also not sure about USB_PXA2XX_SMALL, as it also can be written as:
>
> config USB_PXA2XX_SMALL
> depends on USB_PXA2XX = y
> default USB_ZERO = y || USB_ETH = y || USB_G_SERIAL
>
> is this really intended?
I'm not sure what you're asking. I wrote it with one line per
driver that's less error-prone in case updates get merged. The
latest version is more terse, but there are lots of ways to
write that kind of logic.
Reproduced it again here today, with a reasonably current 2.6.1
tree on top of RH9 (plus some updated RPMs from RH). It's there
in gconfig too. The workaround is "vi .config" and delete the
sticky DUMMY_HCD entry, then re-configure.