On Tue, Oct 19, 2010 at 6:05 PM, Felipe Balbi <me@xxxxxxxxxxxxxxx> wrote: > On Tue, 19 Oct 2010 17:32:07 +0300, Felipe Contreras > <felipe.contreras@xxxxxxxxx> wrote: >> There are two parts, one part is to fix the Kconfigs, and another was >> to come up with a way to replace the horrible defconfigs. Part two is >> mostly fixed thanks to 'make savedefconfig', since the defconfigs are >> not so horrible any more, but part one is a continued effort. >> >> For part two Linus had the idea to use Kconfigs instead of defconfigs, >> but they would mostly look very similar to the current ones generated >> by 'make savedefconfig'. >> >> I don't know what makes you think Linus didn't want part one to be >> done. He wanted the Kconfig.rx51 to be human readable, and you are >> proposing that TWL4030_USB should be manually added there... I don't >> think TWL4030_USB says anything to human beings. > > I don't read anywhere Linus saying we should clutter drivers/*/Kconfig > with defaults. I think you're inverting things, it's much better > to select TWL4030_USB when you enable MACH_OMAP_RX51 then default y > if MACH_OMAP_RX51. So say, if you have 100 board defconfigs with OMAP3 chips and TWL4030, each and every one of them should select both USB_MUSB_HDRC and TWL4030_USB? And you are saying if somebody is doing 'make menuconfig', that person should somehow know that _obviously_ he needs TWL4030_USB in order to use USB_MUSB_HDRC, or USB_G_NOKIA? That's precisely the opposite to: --- It's often tedious for other cases too ("I just want to enable a particular driver, what do I need to do so?") --- --- In other words, you _can_ encode the information that is in the xyz_defconfig files by doing it in Kconfig.xyz files instead. But you do it in a human-readable manner. And the hierarchical thing is absolutely required for that - otherwise you'd end up with just another form of the current xyz_defconfig. --- >> Yes, but how do you get rid of the defconfig while also having a >> working USB_G_NOKIA? Somehow a transceiver should be automatically >> selected. > > and you do that selection when the board is enabled otherwise the > drivers Kconfig will be cluttered with default Y if blabla. If you can imagine a hierarchy like: drivers/usb/otg/Kconfig arch/arm/mach-omap2/Kconfig ^ arch/arm/mach-omap2/boards/Kconfig.n900 You would want TWL4030_USB to be up in the hierarchy, so that you don't have to add one extra line to each and every board file. But in fact, you don't want TWL4030_USB on the Kconfig because not everyone might want/need USB support. That should be selected by the user, and asking the user to somehow know that he needs both TWL4030_USB and USB_MUSB_HDRC is way too much to ask in my opinion. The idea would be to keep Kconfig.n900 so minimal that it's not needed at all. -- Felipe Contreras -- 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