public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] phy: tegra-xusb: add pinctrl dependency
@ 2016-05-03 15:24 Arnd Bergmann
  2016-05-03 16:07 ` Thierry Reding
  0 siblings, 1 reply; 3+ messages in thread
From: Arnd Bergmann @ 2016-05-03 15:24 UTC (permalink / raw)
  To: Kishon Vijay Abraham I, Stephen Warren, Thierry Reding,
	Alexandre Courbot, Arnd Bergmann
  Cc: linux-kernel, linux-tegra

The newly added tegra xusb phy driver fails to link when CONFIG_PINCTRL
is disabled, since that also leaves out the legacy probe function:

ERROR: "tegra_xusb_padctl_legacy_probe" [drivers/phy/tegra/phy-tegra-xusb.ko] undefined!

This adds a Kconfig dependency for it, depending on both
PINCTRL_TEGRA_XUSB (for the driver) and PINCTRL_TEGRA (for the
directory it's in), adding a dependency on just one of the
two does not solve the problem unfortunately.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 53d2a715c240 ("phy: Add Tegra XUSB pad controller support")
---
I'm not perfectly happy with this patch, but couldn't think of a better
way to express this.

 drivers/phy/tegra/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/phy/tegra/Kconfig b/drivers/phy/tegra/Kconfig
index a3b1de953fb7..4e56b83408e1 100644
--- a/drivers/phy/tegra/Kconfig
+++ b/drivers/phy/tegra/Kconfig
@@ -1,6 +1,6 @@
 config PHY_TEGRA_XUSB
 	tristate "NVIDIA Tegra XUSB pad controller driver"
-	depends on ARCH_TEGRA
+	depends on PINCTRL_TEGRA && PINCTRL_TEGRA_XUSB
 	help
 	  Choose this option if you have an NVIDIA Tegra SoC.
 
-- 
2.7.0

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

* Re: [PATCH] phy: tegra-xusb: add pinctrl dependency
  2016-05-03 15:24 [PATCH] phy: tegra-xusb: add pinctrl dependency Arnd Bergmann
@ 2016-05-03 16:07 ` Thierry Reding
  2016-05-03 20:10   ` Arnd Bergmann
  0 siblings, 1 reply; 3+ messages in thread
From: Thierry Reding @ 2016-05-03 16:07 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Kishon Vijay Abraham I, Stephen Warren, Alexandre Courbot,
	linux-kernel, linux-tegra

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

On Tue, May 03, 2016 at 05:24:51PM +0200, Arnd Bergmann wrote:
> The newly added tegra xusb phy driver fails to link when CONFIG_PINCTRL
> is disabled, since that also leaves out the legacy probe function:
> 
> ERROR: "tegra_xusb_padctl_legacy_probe" [drivers/phy/tegra/phy-tegra-xusb.ko] undefined!

Wouldn't that be more of a case for a select dependency? I'm thinking
something like the below (untested, yet).

Thierry
--- >8 ---
diff --git a/drivers/phy/tegra/Kconfig b/drivers/phy/tegra/Kconfig
index a3b1de953fb7..59e0dba9259a 100644
--- a/drivers/phy/tegra/Kconfig
+++ b/drivers/phy/tegra/Kconfig
@@ -1,6 +1,7 @@
 config PHY_TEGRA_XUSB
 	tristate "NVIDIA Tegra XUSB pad controller driver"
 	depends on ARCH_TEGRA
+	select PINCTRL_TEGRA_XUSB
 	help
 	  Choose this option if you have an NVIDIA Tegra SoC.
 
diff --git a/drivers/pinctrl/Makefile b/drivers/pinctrl/Makefile
index e4bc1151e04f..42a5c1dddfef 100644
--- a/drivers/pinctrl/Makefile
+++ b/drivers/pinctrl/Makefile
@@ -23,7 +23,7 @@ obj-$(CONFIG_PINCTRL_PISTACHIO)	+= pinctrl-pistachio.o
 obj-$(CONFIG_PINCTRL_ROCKCHIP)	+= pinctrl-rockchip.o
 obj-$(CONFIG_PINCTRL_SINGLE)	+= pinctrl-single.o
 obj-$(CONFIG_PINCTRL_SIRF)	+= sirf/
-obj-$(CONFIG_PINCTRL_TEGRA)	+= tegra/
+obj-$(CONFIG_ARCH_TEGRA)	+= tegra/
 obj-$(CONFIG_PINCTRL_TZ1090)	+= pinctrl-tz1090.o
 obj-$(CONFIG_PINCTRL_TZ1090_PDC)	+= pinctrl-tz1090-pdc.o
 obj-$(CONFIG_PINCTRL_U300)	+= pinctrl-u300.o
diff --git a/drivers/pinctrl/tegra/Makefile b/drivers/pinctrl/tegra/Makefile
index a927379b6794..d9ea2be69cc4 100644
--- a/drivers/pinctrl/tegra/Makefile
+++ b/drivers/pinctrl/tegra/Makefile
@@ -1,4 +1,4 @@
-obj-y					+= pinctrl-tegra.o
+obj-$(CONFIG_PINCTRL_TEGRA)		+= pinctrl-tegra.o
 obj-$(CONFIG_PINCTRL_TEGRA20)		+= pinctrl-tegra20.o
 obj-$(CONFIG_PINCTRL_TEGRA30)		+= pinctrl-tegra30.o
 obj-$(CONFIG_PINCTRL_TEGRA114)		+= pinctrl-tegra114.o

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

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

* Re: [PATCH] phy: tegra-xusb: add pinctrl dependency
  2016-05-03 16:07 ` Thierry Reding
@ 2016-05-03 20:10   ` Arnd Bergmann
  0 siblings, 0 replies; 3+ messages in thread
From: Arnd Bergmann @ 2016-05-03 20:10 UTC (permalink / raw)
  To: Thierry Reding
  Cc: Kishon Vijay Abraham I, Stephen Warren, Alexandre Courbot,
	linux-kernel, linux-tegra

On Tuesday 03 May 2016 18:07:08 Thierry Reding wrote:
> Wouldn't that be more of a case for a select dependency? I'm thinking
> something like the below (untested, yet).
> 

I usually prefer 'depends on' in a case like this, but it doesn't make
a huge difference. If we end up using 'select' here, we should
make the other symbol invisible though.

> --- >8 ---
> diff --git a/drivers/phy/tegra/Kconfig b/drivers/phy/tegra/Kconfig
> index a3b1de953fb7..59e0dba9259a 100644
> --- a/drivers/phy/tegra/Kconfig
> +++ b/drivers/phy/tegra/Kconfig
> @@ -1,6 +1,7 @@
>  config PHY_TEGRA_XUSB
>         tristate "NVIDIA Tegra XUSB pad controller driver"
>         depends on ARCH_TEGRA
> +       select PINCTRL_TEGRA_XUSB
>         help
>           Choose this option if you have an NVIDIA Tegra SoC.
>  
> diff --git a/drivers/pinctrl/Makefile b/drivers/pinctrl/Makefile
> index e4bc1151e04f..42a5c1dddfef 100644
> --- a/drivers/pinctrl/Makefile
> +++ b/drivers/pinctrl/Makefile
> @@ -23,7 +23,7 @@ obj-$(CONFIG_PINCTRL_PISTACHIO)       += pinctrl-pistachio.o
>  obj-$(CONFIG_PINCTRL_ROCKCHIP) += pinctrl-rockchip.o
>  obj-$(CONFIG_PINCTRL_SINGLE)   += pinctrl-single.o
>  obj-$(CONFIG_PINCTRL_SIRF)     += sirf/
> -obj-$(CONFIG_PINCTRL_TEGRA)    += tegra/
> +obj-$(CONFIG_ARCH_TEGRA)       += tegra/
>  obj-$(CONFIG_PINCTRL_TZ1090)   += pinctrl-tz1090.o
>  obj-$(CONFIG_PINCTRL_TZ1090_PDC)       += pinctrl-tz1090-pdc.o
>  obj-$(CONFIG_PINCTRL_U300)     += pinctrl-u300.o

This change helps, but feels a little unclean. It also prevents us
from adding a '|| COMPILE_TEST' dependency.

How about making PHY_TEGRA_XUSB silent, and adding the 'select'
in the phy driver along with 'depends on PINCTRL_TEGRA'?

	Arnd

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

end of thread, other threads:[~2016-05-03 20:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-03 15:24 [PATCH] phy: tegra-xusb: add pinctrl dependency Arnd Bergmann
2016-05-03 16:07 ` Thierry Reding
2016-05-03 20:10   ` Arnd Bergmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox