summaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2013-10-03 14:50:05 +0530
committerDeepak Nibade <dnibade@nvidia.com>2013-11-12 04:42:34 -0800
commitf944d4d9ca0a9fb359a38ea37a33a2fd31a53fb8 (patch)
treee5b102d98418e9c44dc920461d1ec86fc16fd111 /arch/arm
parent2df98738a03bab3acd0f3d90121b11cd550eeff2 (diff)
ARM: tegra12: enable DT support for host1x
- make board file changes to enable DT support for host1x - rename clocks to isp.0/vi.0/vic03.0/gk20a.0 to match with device names bug 1366383 Change-Id: I97d8dcf1435c93be9cd81c40f101b645f8073019 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: http://git-master/r/304871 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-tegra/board-ardbeg-panel.c6
-rw-r--r--arch/arm/mach-tegra/board-ardbeg.c10
-rw-r--r--arch/arm/mach-tegra/board-bonaire-panel.c10
-rw-r--r--arch/arm/mach-tegra/board-bonaire.c10
-rw-r--r--arch/arm/mach-tegra/board-loki-panel.c6
-rw-r--r--arch/arm/mach-tegra/board-loki.c10
-rw-r--r--arch/arm/mach-tegra/board-vcm30_t124-panel.c6
-rw-r--r--arch/arm/mach-tegra/board-vcm30_t124.c9
-rw-r--r--arch/arm/mach-tegra/tegra12_clocks.c26
9 files changed, 56 insertions, 37 deletions
diff --git a/arch/arm/mach-tegra/board-ardbeg-panel.c b/arch/arm/mach-tegra/board-ardbeg-panel.c
index d96f15a18342..c2fbebbe018d 100644
--- a/arch/arm/mach-tegra/board-ardbeg-panel.c
+++ b/arch/arm/mach-tegra/board-ardbeg-panel.c
@@ -48,7 +48,11 @@ struct platform_device * __init ardbeg_host1x_init(void)
struct platform_device *pdev = NULL;
#ifdef CONFIG_TEGRA_GRHOST
- pdev = tegra12_register_host1x_devices();
+ if (!of_have_populated_dt())
+ pdev = tegra12_register_host1x_devices();
+ else
+ pdev = to_platform_device(bus_find_device_by_name(
+ &platform_bus_type, NULL, "host1x"));
if (!pdev) {
pr_err("host1x devices registration failed\n");
diff --git a/arch/arm/mach-tegra/board-ardbeg.c b/arch/arm/mach-tegra/board-ardbeg.c
index a18a589115f4..3033ad89ef94 100644
--- a/arch/arm/mach-tegra/board-ardbeg.c
+++ b/arch/arm/mach-tegra/board-ardbeg.c
@@ -876,14 +876,16 @@ static struct of_dev_auxdata ardbeg_auxdata_lookup[] __initdata = {
NULL),
OF_DEV_AUXDATA("nvidia,tegra124-host1x", TEGRA_HOST1X_BASE, "host1x",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-gk20a", 0x538F0000, "gk20a", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-gk20a", TEGRA_GK20A_BAR0_BASE,
+ "gk20a.0", NULL),
#ifdef CONFIG_ARCH_TEGRA_VIC
- OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03.0", NULL),
#endif
OF_DEV_AUXDATA("nvidia,tegra124-msenc", TEGRA_MSENC_BASE, "msenc",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi", NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISPB_BASE, "isp.1", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-tsec", TEGRA_TSEC_BASE, "tsec", NULL),
OF_DEV_AUXDATA("nvidia,tegra114-hsuart", 0x70006000, "serial-tegra.0",
NULL),
diff --git a/arch/arm/mach-tegra/board-bonaire-panel.c b/arch/arm/mach-tegra/board-bonaire-panel.c
index 712c1417fc36..4a3f04a430ed 100644
--- a/arch/arm/mach-tegra/board-bonaire-panel.c
+++ b/arch/arm/mach-tegra/board-bonaire-panel.c
@@ -61,16 +61,16 @@ struct platform_device * __init bonaire_host1x_init(void)
struct platform_device *pdev = NULL;
#ifdef CONFIG_TEGRA_GRHOST
- /* FIXME: remove this #if 0 and below line when DT will be enabled for
- * bonaire */
-#if 0
if (!of_have_populated_dt())
pdev = tegra12_register_host1x_devices();
else
pdev = to_platform_device(bus_find_device_by_name(
&platform_bus_type, NULL, "host1x"));
-#endif
- pdev = tegra12_register_host1x_devices();
+
+ if (!pdev) {
+ pr_err("host1x devices registration failed\n");
+ return NULL;
+ }
#endif
return pdev;
}
diff --git a/arch/arm/mach-tegra/board-bonaire.c b/arch/arm/mach-tegra/board-bonaire.c
index c85b6d0e66d5..e0c708f50927 100644
--- a/arch/arm/mach-tegra/board-bonaire.c
+++ b/arch/arm/mach-tegra/board-bonaire.c
@@ -608,12 +608,14 @@ static void __init tegra_bonaire_init(void)
struct of_dev_auxdata tegra_bonaire_auxdata_lookup[] __initdata = {
OF_DEV_AUXDATA("nvidia,tegra124-host1x", TEGRA_HOST1X_BASE, "host1x",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-gk20a", 0x538F0000, "gk20a", NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-gk20a", TEGRA_GK20A_BAR0_BASE,
+ "gk20a.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03.0", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-msenc", TEGRA_MSENC_BASE, "msenc",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi", NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISPB_BASE, "isp.1", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-tsec", TEGRA_TSEC_BASE, "tsec", NULL),
{}
};
diff --git a/arch/arm/mach-tegra/board-loki-panel.c b/arch/arm/mach-tegra/board-loki-panel.c
index 35dfaaeaeada..ba6b536de5fa 100644
--- a/arch/arm/mach-tegra/board-loki-panel.c
+++ b/arch/arm/mach-tegra/board-loki-panel.c
@@ -45,7 +45,11 @@ struct platform_device * __init loki_host1x_init(void)
struct platform_device *pdev = NULL;
#ifdef CONFIG_TEGRA_GRHOST
- pdev = tegra12_register_host1x_devices();
+ if (!of_have_populated_dt())
+ pdev = tegra12_register_host1x_devices();
+ else
+ pdev = to_platform_device(bus_find_device_by_name(
+ &platform_bus_type, NULL, "host1x"));
if (!pdev) {
pr_err("host1x devices registration failed\n");
diff --git a/arch/arm/mach-tegra/board-loki.c b/arch/arm/mach-tegra/board-loki.c
index 01a31e9c0d24..d259b57adc99 100644
--- a/arch/arm/mach-tegra/board-loki.c
+++ b/arch/arm/mach-tegra/board-loki.c
@@ -736,14 +736,16 @@ struct of_dev_auxdata loki_auxdata_lookup[] __initdata = {
NULL),
OF_DEV_AUXDATA("nvidia,tegra124-host1x", TEGRA_HOST1X_BASE, "host1x",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-gk20a", 0x538F0000, "gk20a", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-gk20a", TEGRA_GK20A_BAR0_BASE,
+ "gk20a.0", NULL),
#ifdef CONFIG_ARCH_TEGRA_VIC
- OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03.0", NULL),
#endif
OF_DEV_AUXDATA("nvidia,tegra124-msenc", TEGRA_MSENC_BASE, "msenc",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi", NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISPB_BASE, "isp.1", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-tsec", TEGRA_TSEC_BASE, "tsec", NULL),
OF_DEV_AUXDATA("nvidia,tegra114-hsuart", 0x70006000, "serial-tegra.0",
NULL),
diff --git a/arch/arm/mach-tegra/board-vcm30_t124-panel.c b/arch/arm/mach-tegra/board-vcm30_t124-panel.c
index 26ac56bdf2d3..b9cea306dc73 100644
--- a/arch/arm/mach-tegra/board-vcm30_t124-panel.c
+++ b/arch/arm/mach-tegra/board-vcm30_t124-panel.c
@@ -44,7 +44,11 @@ struct platform_device * __init vcm30_t124_host1x_init(void)
struct platform_device *pdev = NULL;
#ifdef CONFIG_TEGRA_GRHOST
- pdev = tegra12_register_host1x_devices();
+ if (!of_have_populated_dt())
+ pdev = tegra12_register_host1x_devices();
+ else
+ pdev = to_platform_device(bus_find_device_by_name(
+ &platform_bus_type, NULL, "host1x"));
if (!pdev) {
pr_err("host1x devices registration failed\n");
diff --git a/arch/arm/mach-tegra/board-vcm30_t124.c b/arch/arm/mach-tegra/board-vcm30_t124.c
index 24e15f16a235..8478b6af84b7 100644
--- a/arch/arm/mach-tegra/board-vcm30_t124.c
+++ b/arch/arm/mach-tegra/board-vcm30_t124.c
@@ -470,12 +470,13 @@ struct of_dev_auxdata vcm30_t124_auxdata_lookup[] __initdata = {
"serial-tegra.3", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-host1x", TEGRA_HOST1X_BASE, "host1x",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-gk20a", 0x538F0000, "gk20a", NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-gk20a", TEGRA_GK20A_BAR0_BASE, "gk20a.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vic", TEGRA_VIC_BASE, "vic03.0", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-msenc", TEGRA_MSENC_BASE, "msenc",
NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi", NULL),
- OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-vi", TEGRA_VI_BASE, "vi.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISP_BASE, "isp.0", NULL),
+ OF_DEV_AUXDATA("nvidia,tegra124-isp", TEGRA_ISPB_BASE, "isp.1", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-tsec", TEGRA_TSEC_BASE, "tsec", NULL),
OF_DEV_AUXDATA("nvidia,tegra124-apbdma", 0x60020000, "tegra-apbdma",
NULL),
diff --git a/arch/arm/mach-tegra/tegra12_clocks.c b/arch/arm/mach-tegra/tegra12_clocks.c
index bb81ccab938d..d1b1784f1647 100644
--- a/arch/arm/mach-tegra/tegra12_clocks.c
+++ b/arch/arm/mach-tegra/tegra12_clocks.c
@@ -7999,10 +7999,10 @@ struct clk tegra_list_clks[] = {
SHARED_EMC_CLK("mon.emc", "tegra_actmon", "emc", &tegra_clk_emc, NULL, 0, 0, 0),
SHARED_EMC_CLK("cap.emc", "cap.emc", NULL, &tegra_clk_emc, NULL, 0, SHARED_CEILING, 0),
SHARED_EMC_CLK("cap.throttle.emc", "cap_throttle", NULL, &tegra_clk_emc, NULL, 0, SHARED_CEILING_BUT_ISO, 0),
- SHARED_EMC_CLK("3d.emc", "tegra_gk20a", "emc", &tegra_clk_emc, NULL, 0, 0, BIT(EMC_USER_3D)),
+ SHARED_EMC_CLK("3d.emc", "tegra_gk20a.0", "emc", &tegra_clk_emc, NULL, 0, 0, BIT(EMC_USER_3D)),
SHARED_EMC_CLK("msenc.emc", "tegra_msenc", "emc", &tegra_clk_emc, NULL, 0, SHARED_BW, BIT(EMC_USER_MSENC)),
SHARED_EMC_CLK("tsec.emc", "tegra_tsec", "emc", &tegra_clk_emc, NULL, 0, 0, 0),
- SHARED_EMC_CLK("via.emc", "tegra_vi", "emc", &tegra_clk_emc, NULL, 0, SHARED_ISO_BW, BIT(EMC_USER_VI)),
+ SHARED_EMC_CLK("via.emc", "tegra_vi.0", "emc", &tegra_clk_emc, NULL, 0, SHARED_ISO_BW, BIT(EMC_USER_VI)),
SHARED_EMC_CLK("vib.emc", "tegra_vi.1", "emc", &tegra_clk_emc, NULL, 0, SHARED_ISO_BW, BIT(EMC_USER_VI2)),
SHARED_EMC_CLK("ispa.emc", "tegra_isp", "emc", &tegra_clk_emc, NULL, 0, SHARED_ISO_BW, BIT(EMC_USER_ISP1)),
SHARED_EMC_CLK("ispb.emc", "tegra_isp.1", "emc", &tegra_clk_emc, NULL, 0, SHARED_ISO_BW, BIT(EMC_USER_ISP2)),
@@ -8010,7 +8010,7 @@ struct clk tegra_list_clks[] = {
SHARED_EMC_CLK("floor.emc", "floor.emc", NULL, &tegra_clk_emc, NULL, 0, 0, 0),
SHARED_EMC_CLK("override.emc", "override.emc", NULL, &tegra_clk_emc, NULL, 0, SHARED_OVERRIDE, 0),
SHARED_EMC_CLK("edp.emc", "edp.emc", NULL, &tegra_clk_emc, NULL, 0, SHARED_CEILING, 0),
- SHARED_EMC_CLK("vic.emc", "tegra_vic03", "emc", &tegra_clk_emc, NULL, 0, 0, 0),
+ SHARED_EMC_CLK("vic.emc", "tegra_vic03.0", "emc", &tegra_clk_emc, NULL, 0, 0, 0),
SHARED_EMC_CLK("battery.emc", "battery_edp", "emc", &tegra_clk_emc, NULL, 0, SHARED_CEILING, 0),
#ifdef CONFIG_TEGRA_DUAL_CBUS
@@ -8023,14 +8023,14 @@ struct clk tegra_list_clks[] = {
SHARED_CLK("override.c2bus", "override.c2bus", NULL, &tegra_clk_c2bus, NULL, 0, SHARED_OVERRIDE),
SHARED_LIMIT("edp.c2bus", "edp.c2bus", NULL, &tegra_clk_c2bus, NULL, 0, SHARED_CEILING),
- DUAL_CBUS_CLK("vic03.cbus", "tegra_vic03", "vic03", &tegra_clk_c3bus, "vic03", 0, 0),
+ DUAL_CBUS_CLK("vic03.cbus", "tegra_vic03.0", "vic03", &tegra_clk_c3bus, "vic03", 0, 0),
DUAL_CBUS_CLK("tsec.cbus", "tegra_tsec", "tsec", &tegra_clk_c3bus, "tsec", 0, 0),
SHARED_LIMIT("cap.c3bus", "cap.c3bus", NULL, &tegra_clk_c3bus, NULL, 0, SHARED_CEILING),
SHARED_LIMIT("cap.throttle.c3bus", "cap_throttle", NULL, &tegra_clk_c3bus, NULL, 0, SHARED_CEILING),
SHARED_LIMIT("floor.c3bus", "floor.c3bus", NULL, &tegra_clk_c3bus, NULL, 0, 0),
SHARED_CLK("override.c3bus", "override.c3bus", NULL, &tegra_clk_c3bus, NULL, 0, SHARED_OVERRIDE),
#else
- SHARED_CLK("vic03.cbus", "tegra_vic03", "vic03", &tegra_clk_cbus, "vic03", 0, 0),
+ SHARED_CLK("vic03.cbus", "tegra_vic03.0", "vic03", &tegra_clk_cbus, "vic03", 0, 0),
SHARED_CLK("msenc.cbus","tegra_msenc", "msenc",&tegra_clk_cbus, "msenc", 0, 0),
SHARED_CLK("tsec.cbus", "tegra_tsec", "tsec", &tegra_clk_cbus, "tsec", 0, 0),
SHARED_CLK("vde.cbus", "tegra-avp", "vde", &tegra_clk_cbus, "vde", 0, 0),
@@ -8233,18 +8233,18 @@ struct clk_duplicate tegra_clk_duplicates[] = {
CLK_DUPLICATE("i2c5", "tegra_cl_dvfs", "i2c"),
CLK_DUPLICATE("cpu_g", "tegra_cl_dvfs", "safe_dvfs"),
CLK_DUPLICATE("actmon", "tegra_host1x", "actmon"),
- CLK_DUPLICATE("gpu_ref", "tegra_gk20a", "PLLG_ref"),
- CLK_DUPLICATE("gbus", "tegra_gk20a", "PLLG_out"),
- CLK_DUPLICATE("pll_p_out5", "tegra_gk20a", "pwr"),
- CLK_DUPLICATE("ispa.isp.c4bus", "tegra_isp", "isp"),
+ CLK_DUPLICATE("gpu_ref", "tegra_gk20a.0", "PLLG_ref"),
+ CLK_DUPLICATE("gbus", "tegra_gk20a.0", "PLLG_out"),
+ CLK_DUPLICATE("pll_p_out5", "tegra_gk20a.0", "pwr"),
+ CLK_DUPLICATE("ispa.isp.c4bus", "tegra_isp.0", "isp"),
CLK_DUPLICATE("ispb.isp.c4bus", "tegra_isp.1", "isp"),
- CLK_DUPLICATE("via.vi.c4bus", "tegra_vi", "vi"),
+ CLK_DUPLICATE("via.vi.c4bus", "tegra_vi.0", "vi"),
CLK_DUPLICATE("vib.vi.c4bus", "tegra_vi.1", "vi"),
- CLK_DUPLICATE("csi", "tegra_vi", "csi"),
+ CLK_DUPLICATE("csi", "tegra_vi.0", "csi"),
CLK_DUPLICATE("csi", "tegra_vi.1", "csi"),
- CLK_DUPLICATE("csus", "tegra_vi", "csus"),
+ CLK_DUPLICATE("csus", "tegra_vi.0", "csus"),
CLK_DUPLICATE("vim2_clk", "tegra_vi.1", "vim2_clk"),
- CLK_DUPLICATE("cilab", "tegra_vi", "cilab"),
+ CLK_DUPLICATE("cilab", "tegra_vi.0", "cilab"),
CLK_DUPLICATE("cilcd", "tegra_vi.1", "cilcd"),
CLK_DUPLICATE("cile", "tegra_vi.1", "cile"),
CLK_DUPLICATE("i2s0", NULL, "i2s0"),