summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2016-09-14 22:39:02 (GMT)
committerArnd Bergmann <arnd@arndb.de>2016-09-14 22:39:02 (GMT)
commit8cfc48bcc71edfe322b08f8506fb20b0ebbeb571 (patch)
treea9a97e604fb847c0aa0ae9685f7f493d3c9ac12f /drivers
parentfceec41b68143e895f748e72bd07c5e2d45ab185 (diff)
parent3a99cb090b523f88d0a19598d39704afac11adcb (diff)
downloadlinux-8cfc48bcc71edfe322b08f8506fb20b0ebbeb571.tar.xz
Merge tag 'tegra-for-4.9-bus' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/drivers
Pull "bus: NVIDIA Tegra ACONNECT changes for v4.9-rc1" from Thierry Reding: This contains a patch that makes use of some symbols that were added in v4.8 and a second patch takes advantage to enable building the driver as a loadable module. * tag 'tegra-for-4.9-bus' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: bus: tegra-aconnect: Use of_pm_clk_add_clk() bus: tegra-aconnect: Make symbol tristate
Diffstat (limited to 'drivers')
-rw-r--r--drivers/bus/Kconfig6
-rw-r--r--drivers/bus/tegra-aconnect.c22
2 files changed, 3 insertions, 25 deletions
diff --git a/drivers/bus/Kconfig b/drivers/bus/Kconfig
index 3b205e2..4ed7d26 100644
--- a/drivers/bus/Kconfig
+++ b/drivers/bus/Kconfig
@@ -132,12 +132,8 @@ config SUNXI_RSB
with various RSB based devices, such as AXP223, AXP8XX PMICs,
and AC100/AC200 ICs.
-# TODO: This uses pm_clk_*() symbols that aren't exported in v4.7 and hence
-# the driver will fail to build as a module. However there are patches to
-# address that queued for v4.8, so this can be turned into a tristate symbol
-# after v4.8-rc1.
config TEGRA_ACONNECT
- bool "Tegra ACONNECT Bus Driver"
+ tristate "Tegra ACONNECT Bus Driver"
depends on ARCH_TEGRA_210_SOC
depends on OF && PM
select PM_CLK
diff --git a/drivers/bus/tegra-aconnect.c b/drivers/bus/tegra-aconnect.c
index 7e4104b..084ae28 100644
--- a/drivers/bus/tegra-aconnect.c
+++ b/drivers/bus/tegra-aconnect.c
@@ -15,24 +15,6 @@
#include <linux/pm_clock.h>
#include <linux/pm_runtime.h>
-static int tegra_aconnect_add_clock(struct device *dev, char *name)
-{
- struct clk *clk;
- int ret;
-
- clk = clk_get(dev, name);
- if (IS_ERR(clk)) {
- dev_err(dev, "%s clock not found\n", name);
- return PTR_ERR(clk);
- }
-
- ret = pm_clk_add_clk(dev, clk);
- if (ret)
- clk_put(clk);
-
- return ret;
-}
-
static int tegra_aconnect_probe(struct platform_device *pdev)
{
int ret;
@@ -44,11 +26,11 @@ static int tegra_aconnect_probe(struct platform_device *pdev)
if (ret)
return ret;
- ret = tegra_aconnect_add_clock(&pdev->dev, "ape");
+ ret = of_pm_clk_add_clk(&pdev->dev, "ape");
if (ret)
goto clk_destroy;
- ret = tegra_aconnect_add_clock(&pdev->dev, "apb2ape");
+ ret = of_pm_clk_add_clk(&pdev->dev, "apb2ape");
if (ret)
goto clk_destroy;