Message ID | 1361992119-2465-1-git-send-email-paul.gortmaker@windriver.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
HI, On Wed, Feb 27, 2013 at 02:08:39PM -0500, Paul Gortmaker wrote: > commit 57f6ce072e35770a63be0c5d5e82f90d8da7d665 ("usb: phy: > add a new driver for usb3 phy") added the new Kconfig option > OMAP_USB3, but it had no dependencies whatsoever, and hence > became available across all arch/platforms. > > Which presumably caused this to show up in x86 randconfig: > > warning: (USB_MUSB_HDRC && OMAP_USB3) selects \ > OMAP_CONTROL_USB which has unmet direct \ > dependencies (USB_SUPPORT && ARCH_OMAP2PLUS) > > Then commit 6992819feb39cb9adac72170555d957d07f869f2 ("usb: phy: > fix Kconfig warning") was added. However, this just deleted the > ARCH_OMAP2PLUS dependency from OMAP_CONTROL_USB, further > compounding the problem by opening up OMAP_CONTROL_USB to > all arch/platforms as well. > > Here we revert the change of 6992819feb to restore the dependency, > and add the same ARCH_OMAP2PLUS dependency to the new OMAP_USB3. > > Perhaps a more platform specific dependency could be chosen for > OMAP_USB3, but at least this keeps it from bleeding out to other > architectures and non-OMAP ARM platforms as it is currently doing. > > Cc: Felipe Balbi <balbi@ti.com> > Cc: Kishon Vijay Abraham I <kishon@ti.com> > Cc: Moiz Sonasath <m-sonasath@ti.com> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> > --- > drivers/usb/phy/Kconfig | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig > index 65217a5..40b8463 100644 > --- a/drivers/usb/phy/Kconfig > +++ b/drivers/usb/phy/Kconfig > @@ -17,6 +17,7 @@ config OMAP_USB2 > > config OMAP_USB3 > tristate "OMAP USB3 PHY Driver" > + depends on ARCH_OMAP2PLUS > select USB_OTG_UTILS > select OMAP_CONTROL_USB > help > @@ -27,6 +28,7 @@ config OMAP_USB3 > > config OMAP_CONTROL_USB > tristate "OMAP CONTROL USB Driver" > + depends on ARCH_OMAP2PLUS I rather not add dependencies here and fix the selections of OMAP_CONTROL_USB.
On 13-02-27 02:51 PM, Felipe Balbi wrote: > HI, > > On Wed, Feb 27, 2013 at 02:08:39PM -0500, Paul Gortmaker wrote: >> commit 57f6ce072e35770a63be0c5d5e82f90d8da7d665 ("usb: phy: >> add a new driver for usb3 phy") added the new Kconfig option >> OMAP_USB3, but it had no dependencies whatsoever, and hence >> became available across all arch/platforms. >> >> Which presumably caused this to show up in x86 randconfig: >> >> warning: (USB_MUSB_HDRC && OMAP_USB3) selects \ >> OMAP_CONTROL_USB which has unmet direct \ >> dependencies (USB_SUPPORT && ARCH_OMAP2PLUS) >> >> Then commit 6992819feb39cb9adac72170555d957d07f869f2 ("usb: phy: >> fix Kconfig warning") was added. However, this just deleted the >> ARCH_OMAP2PLUS dependency from OMAP_CONTROL_USB, further >> compounding the problem by opening up OMAP_CONTROL_USB to >> all arch/platforms as well. >> >> Here we revert the change of 6992819feb to restore the dependency, >> and add the same ARCH_OMAP2PLUS dependency to the new OMAP_USB3. >> >> Perhaps a more platform specific dependency could be chosen for >> OMAP_USB3, but at least this keeps it from bleeding out to other >> architectures and non-OMAP ARM platforms as it is currently doing. >> >> Cc: Felipe Balbi <balbi@ti.com> >> Cc: Kishon Vijay Abraham I <kishon@ti.com> >> Cc: Moiz Sonasath <m-sonasath@ti.com> >> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> >> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> >> --- >> drivers/usb/phy/Kconfig | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig >> index 65217a5..40b8463 100644 >> --- a/drivers/usb/phy/Kconfig >> +++ b/drivers/usb/phy/Kconfig >> @@ -17,6 +17,7 @@ config OMAP_USB2 >> >> config OMAP_USB3 >> tristate "OMAP USB3 PHY Driver" >> + depends on ARCH_OMAP2PLUS >> select USB_OTG_UTILS >> select OMAP_CONTROL_USB >> help >> @@ -27,6 +28,7 @@ config OMAP_USB3 >> >> config OMAP_CONTROL_USB >> tristate "OMAP CONTROL USB Driver" >> + depends on ARCH_OMAP2PLUS > > I rather not add dependencies here and fix the selections of > OMAP_CONTROL_USB. I am not sure I understand what you mean, or why you wouldn't want sane dependencies in place like those given above. Perhaps you can send an alternate patch so there is no ambiguity? Paul. >
On 13-02-27 02:57 PM, Paul Gortmaker wrote: > On 13-02-27 02:51 PM, Felipe Balbi wrote: >> HI, >> >> On Wed, Feb 27, 2013 at 02:08:39PM -0500, Paul Gortmaker wrote: >>> commit 57f6ce072e35770a63be0c5d5e82f90d8da7d665 ("usb: phy: >>> add a new driver for usb3 phy") added the new Kconfig option >>> OMAP_USB3, but it had no dependencies whatsoever, and hence >>> became available across all arch/platforms. >>> >>> Which presumably caused this to show up in x86 randconfig: >>> >>> warning: (USB_MUSB_HDRC && OMAP_USB3) selects \ >>> OMAP_CONTROL_USB which has unmet direct \ >>> dependencies (USB_SUPPORT && ARCH_OMAP2PLUS) >>> >>> Then commit 6992819feb39cb9adac72170555d957d07f869f2 ("usb: phy: >>> fix Kconfig warning") was added. However, this just deleted the >>> ARCH_OMAP2PLUS dependency from OMAP_CONTROL_USB, further >>> compounding the problem by opening up OMAP_CONTROL_USB to >>> all arch/platforms as well. >>> >>> Here we revert the change of 6992819feb to restore the dependency, >>> and add the same ARCH_OMAP2PLUS dependency to the new OMAP_USB3. >>> >>> Perhaps a more platform specific dependency could be chosen for >>> OMAP_USB3, but at least this keeps it from bleeding out to other >>> architectures and non-OMAP ARM platforms as it is currently doing. >>> >>> Cc: Felipe Balbi <balbi@ti.com> >>> Cc: Kishon Vijay Abraham I <kishon@ti.com> >>> Cc: Moiz Sonasath <m-sonasath@ti.com> >>> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> >>> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> >>> --- >>> drivers/usb/phy/Kconfig | 2 ++ >>> 1 file changed, 2 insertions(+) >>> >>> diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig >>> index 65217a5..40b8463 100644 >>> --- a/drivers/usb/phy/Kconfig >>> +++ b/drivers/usb/phy/Kconfig >>> @@ -17,6 +17,7 @@ config OMAP_USB2 >>> >>> config OMAP_USB3 >>> tristate "OMAP USB3 PHY Driver" >>> + depends on ARCH_OMAP2PLUS >>> select USB_OTG_UTILS >>> select OMAP_CONTROL_USB >>> help >>> @@ -27,6 +28,7 @@ config OMAP_USB3 >>> >>> config OMAP_CONTROL_USB >>> tristate "OMAP CONTROL USB Driver" >>> + depends on ARCH_OMAP2PLUS >> >> I rather not add dependencies here and fix the selections of >> OMAP_CONTROL_USB. > > I am not sure I understand what you mean, or why you wouldn't > want sane dependencies in place like those given above. Perhaps > you can send an alternate patch so there is no ambiguity? Hi Felipe, I'm still seeing the OMAP settings in x86 builds on mainline from today, and since I'd not got a reply to the above, I'm still wondering what alternative you have in mind vs. my above patch. We can't be having the arch specific settings leaking out to the other arch where they make no sense[1]. Thanks, Paul. [1] https://lkml.org/lkml/2013/3/7/456
Hi, On Thu, Mar 14, 2013 at 11:17:21AM -0400, Paul Gortmaker wrote: > >>> diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig > >>> index 65217a5..40b8463 100644 > >>> --- a/drivers/usb/phy/Kconfig > >>> +++ b/drivers/usb/phy/Kconfig > >>> @@ -17,6 +17,7 @@ config OMAP_USB2 > >>> > >>> config OMAP_USB3 > >>> tristate "OMAP USB3 PHY Driver" > >>> + depends on ARCH_OMAP2PLUS > >>> select USB_OTG_UTILS > >>> select OMAP_CONTROL_USB > >>> help > >>> @@ -27,6 +28,7 @@ config OMAP_USB3 > >>> > >>> config OMAP_CONTROL_USB > >>> tristate "OMAP CONTROL USB Driver" > >>> + depends on ARCH_OMAP2PLUS > >> > >> I rather not add dependencies here and fix the selections of > >> OMAP_CONTROL_USB. > > > > I am not sure I understand what you mean, or why you wouldn't > > want sane dependencies in place like those given above. Perhaps > > you can send an alternate patch so there is no ambiguity? > > Hi Felipe, > > I'm still seeing the OMAP settings in x86 builds on mainline > from today, and since I'd not got a reply to the above, I'm > still wondering what alternative you have in mind vs. my > above patch. We can't be having the arch specific settings > leaking out to the other arch where they make no sense[1]. why not ? It forces people to write portable drivers, it forces people to avoid including the wrong headers and allows maintainers and patch authors to easily compile test their drivers. On top of all that, it lets me better use linux-next as a big build testing before I send a pull request to Greg. When you're going to build a product, you will come up with a proper .config anyway. Because of a bunch of these misused 'depends on' and 'select' statements that right now ARM multiplatform builds don't even compile cleanly if you enable all ARM-related drivers. Until all of those are cleaned up, the best way is to force people to write drivers which compile in all architectures and make sure Kconfig doesn't add any ARCH dependency.
On 13-03-14 12:12 PM, Felipe Balbi wrote: > Hi, > > On Thu, Mar 14, 2013 at 11:17:21AM -0400, Paul Gortmaker wrote: >>>>> diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig >>>>> index 65217a5..40b8463 100644 >>>>> --- a/drivers/usb/phy/Kconfig >>>>> +++ b/drivers/usb/phy/Kconfig >>>>> @@ -17,6 +17,7 @@ config OMAP_USB2 >>>>> >>>>> config OMAP_USB3 >>>>> tristate "OMAP USB3 PHY Driver" >>>>> + depends on ARCH_OMAP2PLUS >>>>> select USB_OTG_UTILS >>>>> select OMAP_CONTROL_USB >>>>> help >>>>> @@ -27,6 +28,7 @@ config OMAP_USB3 >>>>> >>>>> config OMAP_CONTROL_USB >>>>> tristate "OMAP CONTROL USB Driver" >>>>> + depends on ARCH_OMAP2PLUS >>>> >>>> I rather not add dependencies here and fix the selections of >>>> OMAP_CONTROL_USB. >>> >>> I am not sure I understand what you mean, or why you wouldn't >>> want sane dependencies in place like those given above. Perhaps >>> you can send an alternate patch so there is no ambiguity? >> >> Hi Felipe, >> >> I'm still seeing the OMAP settings in x86 builds on mainline >> from today, and since I'd not got a reply to the above, I'm >> still wondering what alternative you have in mind vs. my >> above patch. We can't be having the arch specific settings >> leaking out to the other arch where they make no sense[1]. > > why not ? It forces people to write portable drivers, it forces people > to avoid including the wrong headers and allows maintainers and patch > authors to easily compile test their drivers. Why not? That was covered in the link I'd referenced. What you list above is a very developer centric point of view. To quote Andrew Morton from that same link, in regards to dependencies and how they should be used: "...offering useless stuff to non-kernel-developers has downsides with no balancing benefit, and we really should optimise things for our users because there are so many more of them than there are of us." Look at what you've written. The key word above and below in your text is "force people". Showing no interest in simplifying things for our users and taking that approach is a good way to alienate our user base. Paul. -- > > On top of all that, it lets me better use linux-next as a big build > testing before I send a pull request to Greg. > > When you're going to build a product, you will come up with a proper > .config anyway. Because of a bunch of these misused 'depends on' and > 'select' statements that right now ARM multiplatform builds don't even > compile cleanly if you enable all ARM-related drivers. > > Until all of those are cleaned up, the best way is to force people to > write drivers which compile in all architectures and make sure Kconfig > doesn't add any ARCH dependency. >
diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig index 65217a5..40b8463 100644 --- a/drivers/usb/phy/Kconfig +++ b/drivers/usb/phy/Kconfig @@ -17,6 +17,7 @@ config OMAP_USB2 config OMAP_USB3 tristate "OMAP USB3 PHY Driver" + depends on ARCH_OMAP2PLUS select USB_OTG_UTILS select OMAP_CONTROL_USB help @@ -27,6 +28,7 @@ config OMAP_USB3 config OMAP_CONTROL_USB tristate "OMAP CONTROL USB Driver" + depends on ARCH_OMAP2PLUS help Enable this to add support for the USB part present in the control module. This driver has API to power on the USB2 PHY and to write to
commit 57f6ce072e35770a63be0c5d5e82f90d8da7d665 ("usb: phy: add a new driver for usb3 phy") added the new Kconfig option OMAP_USB3, but it had no dependencies whatsoever, and hence became available across all arch/platforms. Which presumably caused this to show up in x86 randconfig: warning: (USB_MUSB_HDRC && OMAP_USB3) selects \ OMAP_CONTROL_USB which has unmet direct \ dependencies (USB_SUPPORT && ARCH_OMAP2PLUS) Then commit 6992819feb39cb9adac72170555d957d07f869f2 ("usb: phy: fix Kconfig warning") was added. However, this just deleted the ARCH_OMAP2PLUS dependency from OMAP_CONTROL_USB, further compounding the problem by opening up OMAP_CONTROL_USB to all arch/platforms as well. Here we revert the change of 6992819feb to restore the dependency, and add the same ARCH_OMAP2PLUS dependency to the new OMAP_USB3. Perhaps a more platform specific dependency could be chosen for OMAP_USB3, but at least this keeps it from bleeding out to other architectures and non-OMAP ARM platforms as it is currently doing. Cc: Felipe Balbi <balbi@ti.com> Cc: Kishon Vijay Abraham I <kishon@ti.com> Cc: Moiz Sonasath <m-sonasath@ti.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> --- drivers/usb/phy/Kconfig | 2 ++ 1 file changed, 2 insertions(+)