linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] phy: allwinner: allow compile testing
@ 2019-03-04 20:23 Arnd Bergmann
  2019-03-04 20:23 ` [PATCH 2/3] phy: ti: usb2: fix OMAP_CONTROL_PHY dependency Arnd Bergmann
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Arnd Bergmann @ 2019-03-04 20:23 UTC (permalink / raw)
  To: Kishon Vijay Abraham I, Paul Kocialkowski, Arnd Bergmann, Maxime Ripard
  Cc: linux-kernel

Some allwinner specific drivers can be built for testing purposes
on non-sunxi configurations, which then results in a harmless
warning:

WARNING: unmet direct dependencies detected for PHY_SUN6I_MIPI_DPHY
  Depends on [n]: ARCH_SUNXI [=n] && HAS_IOMEM [=y] && OF [=y] && RESET_CONTROLLER [=y]
  Selected by [y]:
  - DRM_SUN6I_DSI [=y] && HAS_IOMEM [=y] && DRM_SUN4I [=y]

Allow compile-test here as well to avoid the warning, and improve
overall build coverage.

Fixes: 5d134abf9530 ("phy: Move Allwinner A31 D-PHY driver to drivers/phy/")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/phy/allwinner/Kconfig | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/phy/allwinner/Kconfig b/drivers/phy/allwinner/Kconfig
index fb1204bcc454..53772d35b36e 100644
--- a/drivers/phy/allwinner/Kconfig
+++ b/drivers/phy/allwinner/Kconfig
@@ -3,7 +3,8 @@
 #
 config PHY_SUN4I_USB
 	tristate "Allwinner sunxi SoC USB PHY driver"
-	depends on ARCH_SUNXI && HAS_IOMEM && OF
+	depends on ARCH_SUNXI || COMPILE_TEST
+	depends on HAS_IOMEM
 	depends on RESET_CONTROLLER
 	depends on EXTCON
 	depends on POWER_SUPPLY
@@ -19,7 +20,8 @@ config PHY_SUN4I_USB
 
 config PHY_SUN6I_MIPI_DPHY
 	tristate "Allwinner A31 MIPI D-PHY Support"
-	depends on ARCH_SUNXI && HAS_IOMEM && OF
+	depends on ARCH_SUNXI || COMPILE_TEST
+	depends on HAS_IOMEM
 	depends on RESET_CONTROLLER
 	select GENERIC_PHY
 	select GENERIC_PHY_MIPI_DPHY
@@ -31,7 +33,8 @@ config PHY_SUN6I_MIPI_DPHY
 
 config PHY_SUN9I_USB
 	tristate "Allwinner sun9i SoC USB PHY driver"
-	depends on ARCH_SUNXI && HAS_IOMEM && OF
+	depends on ARCH_SUNXI || COMPILE_TEST
+	depends on HAS_IOMEM
 	depends on RESET_CONTROLLER
 	depends on USB_SUPPORT
 	select USB_COMMON
-- 
2.20.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/3] phy: ti: usb2: fix OMAP_CONTROL_PHY dependency
  2019-03-04 20:23 [PATCH 1/3] phy: allwinner: allow compile testing Arnd Bergmann
@ 2019-03-04 20:23 ` Arnd Bergmann
  2019-03-04 20:23 ` [PATCH 3/3] phy: mapphone-mdm6600: add gpiolib dependency Arnd Bergmann
  2019-03-05  8:44 ` [PATCH 1/3] phy: allwinner: allow compile testing Maxime Ripard
  2 siblings, 0 replies; 5+ messages in thread
From: Arnd Bergmann @ 2019-03-04 20:23 UTC (permalink / raw)
  To: Kishon Vijay Abraham I, Roger Quadros, Sekhar Nori,
	David S. Miller, Jason Gunthorpe, Arnd Bergmann,
	Grygorii Strashko
  Cc: linux-kernel

With randconfig build testing on arm64, we can run into a configuration
that has CONFIG_OMAP_CONTROL_PHY=m and CONFIG_OMAP_USB2=y, which in turn
causes a link failure:

drivers/phy/ti/phy-omap-usb2.o: In function `omap_usb_phy_power':
phy-omap-usb2.c:(.text+0x17c): undefined reference to `omap_control_phy_power'

I could not come up with a good way to correctly describe the relation
of the two symbols, but if we just select CONFIG_OMAP_CONTROL_PHY
during compile testing, we can no longer run into the broken configuration.

Fixes: 6777cee3a872 ("phy: ti: usb2: Add support for AM654 USB2 PHY")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/phy/ti/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/phy/ti/Kconfig b/drivers/phy/ti/Kconfig
index 103efc456a12..022ac16f626c 100644
--- a/drivers/phy/ti/Kconfig
+++ b/drivers/phy/ti/Kconfig
@@ -37,7 +37,7 @@ config OMAP_USB2
 	depends on USB_SUPPORT
 	select GENERIC_PHY
 	select USB_PHY
-	select OMAP_CONTROL_PHY if ARCH_OMAP2PLUS
+	select OMAP_CONTROL_PHY if ARCH_OMAP2PLUS || COMPILE_TEST
 	help
 	  Enable this to support the transceiver that is part of SOC. This
 	  driver takes care of all the PHY functionality apart from comparator.
-- 
2.20.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 3/3] phy: mapphone-mdm6600: add gpiolib dependency
  2019-03-04 20:23 [PATCH 1/3] phy: allwinner: allow compile testing Arnd Bergmann
  2019-03-04 20:23 ` [PATCH 2/3] phy: ti: usb2: fix OMAP_CONTROL_PHY dependency Arnd Bergmann
@ 2019-03-04 20:23 ` Arnd Bergmann
  2019-03-05 15:46   ` Tony Lindgren
  2019-03-05  8:44 ` [PATCH 1/3] phy: allwinner: allow compile testing Maxime Ripard
  2 siblings, 1 reply; 5+ messages in thread
From: Arnd Bergmann @ 2019-03-04 20:23 UTC (permalink / raw)
  To: Kishon Vijay Abraham I, Tony Lindgren, Rob Herring, Arnd Bergmann
  Cc: linux-kernel

gcc points out that when CONFIG_GPIOLIB is disabled,
gpiod_get_array_value_cansleep() returns 0 but fails to set its output:

drivers/phy/motorola/phy-mapphone-mdm6600.c: In function 'phy_mdm6600_status':
drivers/phy/motorola/phy-mapphone-mdm6600.c:220:24: error: 'values[0]' is used uninitialized in this function [-Werror=uninitialized]

This could be fixed more generally in gpiolib by returning a failure
code, but for this specific case, the easier workaround is to add a
gpiolib dependency.

Fixes: 5d1ebbda0318 ("phy: mapphone-mdm6600: Add USB PHY driver for MDM6600 on Droid 4")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/phy/motorola/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/phy/motorola/Kconfig b/drivers/phy/motorola/Kconfig
index 82651524ffb9..718f8729701d 100644
--- a/drivers/phy/motorola/Kconfig
+++ b/drivers/phy/motorola/Kconfig
@@ -13,7 +13,7 @@ config PHY_CPCAP_USB
 
 config PHY_MAPPHONE_MDM6600
 	tristate "Motorola Mapphone MDM6600 modem USB PHY driver"
-	depends on OF && USB_SUPPORT
+	depends on OF && USB_SUPPORT && GPIOLIB
 	select GENERIC_PHY
 	help
 	  Enable this for MDM6600 USB modem to work on Motorola phones
-- 
2.20.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/3] phy: allwinner: allow compile testing
  2019-03-04 20:23 [PATCH 1/3] phy: allwinner: allow compile testing Arnd Bergmann
  2019-03-04 20:23 ` [PATCH 2/3] phy: ti: usb2: fix OMAP_CONTROL_PHY dependency Arnd Bergmann
  2019-03-04 20:23 ` [PATCH 3/3] phy: mapphone-mdm6600: add gpiolib dependency Arnd Bergmann
@ 2019-03-05  8:44 ` Maxime Ripard
  2 siblings, 0 replies; 5+ messages in thread
From: Maxime Ripard @ 2019-03-05  8:44 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: Kishon Vijay Abraham I, Paul Kocialkowski, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 857 bytes --]

On Mon, Mar 04, 2019 at 09:23:56PM +0100, Arnd Bergmann wrote:
> Some allwinner specific drivers can be built for testing purposes
> on non-sunxi configurations, which then results in a harmless
> warning:
> 
> WARNING: unmet direct dependencies detected for PHY_SUN6I_MIPI_DPHY
>   Depends on [n]: ARCH_SUNXI [=n] && HAS_IOMEM [=y] && OF [=y] && RESET_CONTROLLER [=y]
>   Selected by [y]:
>   - DRM_SUN6I_DSI [=y] && HAS_IOMEM [=y] && DRM_SUN4I [=y]
> 
> Allow compile-test here as well to avoid the warning, and improve
> overall build coverage.
> 
> Fixes: 5d134abf9530 ("phy: Move Allwinner A31 D-PHY driver to drivers/phy/")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>

Thanks!
Maxime

-- 
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 3/3] phy: mapphone-mdm6600: add gpiolib dependency
  2019-03-04 20:23 ` [PATCH 3/3] phy: mapphone-mdm6600: add gpiolib dependency Arnd Bergmann
@ 2019-03-05 15:46   ` Tony Lindgren
  0 siblings, 0 replies; 5+ messages in thread
From: Tony Lindgren @ 2019-03-05 15:46 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: Kishon Vijay Abraham I, Rob Herring, linux-kernel

* Arnd Bergmann <arnd@arndb.de> [190304 20:24]:
> gcc points out that when CONFIG_GPIOLIB is disabled,
> gpiod_get_array_value_cansleep() returns 0 but fails to set its output:
> 
> drivers/phy/motorola/phy-mapphone-mdm6600.c: In function 'phy_mdm6600_status':
> drivers/phy/motorola/phy-mapphone-mdm6600.c:220:24: error: 'values[0]' is used uninitialized in this function [-Werror=uninitialized]
> 
> This could be fixed more generally in gpiolib by returning a failure
> code, but for this specific case, the easier workaround is to add a
> gpiolib dependency.

Thanks for fixing it:

Acked-by: Tony Lindgren <tony@atomide.com>

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-03-05 15:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-04 20:23 [PATCH 1/3] phy: allwinner: allow compile testing Arnd Bergmann
2019-03-04 20:23 ` [PATCH 2/3] phy: ti: usb2: fix OMAP_CONTROL_PHY dependency Arnd Bergmann
2019-03-04 20:23 ` [PATCH 3/3] phy: mapphone-mdm6600: add gpiolib dependency Arnd Bergmann
2019-03-05 15:46   ` Tony Lindgren
2019-03-05  8:44 ` [PATCH 1/3] phy: allwinner: allow compile testing Maxime Ripard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).