On Friday 08 March 2013, Stephen Warren wrote: > Yes, I think it should instead work like: > > ARCH_TEGRA* selects nothing in particular related to USB. > > The Tegra EHCI controller Kconfig depends on ARCH_TEGRA so it doesn't > show up for other builds. Yes, that's fine. > I hope it's OK for the EHCI controller to select USB_ARCH_HAS_EHCI? I think that would create a circular dependency, which Kconfig will refuse. We talked about the USB_ARCH_HAS_* Kconfig symbols recently and Alan Stern agreed to my suggestion of removing all of them, reworking the logic so we can always enable USB and EHCI but even when there is no bus glue enabled. I'll have to do a proper patch one of these days, or find someone in my team to do it right for all the corner cases. > The Tegra PHY Kconfig probably shouldn't be user-visible (relying on > being selected by the Tegra EHCI controller) and itself selects > anything it relies on. > > Does that sound reasonable? It is often safer to express the logic using "depends on" than using "select", e.g. doing config USB_EHCI_TEGRA bool "EHCI support for NVIDIA Tegra" depends on USB_EHCI_HCD depends on ARCH_TEGRA config USB_ULPI_VIEWPORT def_bool y depends on USB_EHCI_TEGRA If USB_ULPI_VIEWPORT has any other dependencies, the best solution in the above scenario is to make USB_EHCI_TEGRA depend on those. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html