[v1,1/2] usb: phy: Add Kconfig entry for Tegra's PHY driver

Message ID b820f290730e57c999c211e5f82cf833755c299f.1512947332.git.digetx@gmail.com
State New
Headers show
Series
  • [v1,1/2] usb: phy: Add Kconfig entry for Tegra's PHY driver
Related show

Commit Message

Dmitry Osipenko Dec. 10, 2017, 11:09 p.m.
Add Kconfig entry so that other drivers other than ehci-tegra
(like ChipIdea) could add Tegra's PHY to build dependencies.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
---
 drivers/usb/host/Kconfig | 2 +-
 drivers/usb/phy/Kconfig  | 8 ++++++++
 drivers/usb/phy/Makefile | 2 +-
 3 files changed, 10 insertions(+), 2 deletions(-)

Comments

Thierry Reding Dec. 11, 2017, 10:02 a.m. | #1
On Mon, Dec 11, 2017 at 02:09:59AM +0300, Dmitry Osipenko wrote:
> Add Kconfig entry so that other drivers other than ehci-tegra
> (like ChipIdea) could add Tegra's PHY to build dependencies.
> 
> Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
> ---
>  drivers/usb/host/Kconfig | 2 +-
>  drivers/usb/phy/Kconfig  | 8 ++++++++
>  drivers/usb/phy/Makefile | 2 +-
>  3 files changed, 10 insertions(+), 2 deletions(-)

I don't think we actually build-depend on the PHY driver from the
ChipIdea driver. In the past, we've refrained from modelling runtime
dependencies using Kconfig because in some cases (such as this) it'll
include more than necessary (ChipIdea will automatically pull in the
USB PHY driver irrespective of whether or not Tegra is enabled).

Thierry
Dmitry Osipenko Dec. 11, 2017, 1:03 p.m. | #2
On 11.12.2017 13:02, Thierry Reding wrote:
> On Mon, Dec 11, 2017 at 02:09:59AM +0300, Dmitry Osipenko wrote:
>> Add Kconfig entry so that other drivers other than ehci-tegra
>> (like ChipIdea) could add Tegra's PHY to build dependencies.
>>
>> Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
>> ---
>>  drivers/usb/host/Kconfig | 2 +-
>>  drivers/usb/phy/Kconfig  | 8 ++++++++
>>  drivers/usb/phy/Makefile | 2 +-
>>  3 files changed, 10 insertions(+), 2 deletions(-)
> 
> I don't think we actually build-depend on the PHY driver from the
> ChipIdea driver. In the past, we've refrained from modelling runtime
> dependencies using Kconfig because in some cases (such as this) it'll
> include more than necessary (ChipIdea will automatically pull in the
> USB PHY driver irrespective of whether or not Tegra is enabled).

Please take a closer look at the patch. Tegra PHY driver is only compiled if
ehci-tegra driver is compiled. So we need to decouple build dependency in order
fix it.
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index b80a94e632af..f19072f1f519 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -226,7 +226,7 @@  config USB_EHCI_TEGRA
        tristate "NVIDIA Tegra HCD support"
        depends on ARCH_TEGRA
        select USB_EHCI_ROOT_HUB_TT
-       select USB_PHY
+	select USB_TEGRA_PHY
 	select USB_ULPI
 	select USB_ULPI_VIEWPORT
        help
diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig
index 0f8ab981d572..2a50576e1a2a 100644
--- a/drivers/usb/phy/Kconfig
+++ b/drivers/usb/phy/Kconfig
@@ -159,6 +159,14 @@  config USB_MXS_PHY
 
 	  MXS Phy is used by some of the i.MX SoCs, for example imx23/28/6x.
 
+config USB_TEGRA_PHY
+	tristate "NVIDIA Tegra USB PHY Driver"
+	depends on ARCH_TEGRA
+	select USB_PHY
+	help
+	  This driver provides PHY support for the USB controllers found
+	  on NVIDIA Tegra SoC's.
+
 config USB_ULPI
 	bool "Generic ULPI Transceiver Driver"
 	depends on ARM || ARM64
diff --git a/drivers/usb/phy/Makefile b/drivers/usb/phy/Makefile
index 25e579fb92b8..df1d99010079 100644
--- a/drivers/usb/phy/Makefile
+++ b/drivers/usb/phy/Makefile
@@ -16,7 +16,7 @@  obj-$(CONFIG_AM335X_CONTROL_USB)	+= phy-am335x-control.o
 obj-$(CONFIG_AM335X_PHY_USB)		+= phy-am335x.o
 obj-$(CONFIG_OMAP_OTG)			+= phy-omap-otg.o
 obj-$(CONFIG_TWL6030_USB)		+= phy-twl6030-usb.o
-obj-$(CONFIG_USB_EHCI_TEGRA)		+= phy-tegra-usb.o
+obj-$(CONFIG_USB_TEGRA_PHY)		+= phy-tegra-usb.o
 obj-$(CONFIG_USB_GPIO_VBUS)		+= phy-gpio-vbus-usb.o
 obj-$(CONFIG_USB_ISP1301)		+= phy-isp1301.o
 obj-$(CONFIG_USB_MV_OTG)		+= phy-mv-usb.o