devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Vince Hsu <vinceh@nvidia.com>
To: thierry.reding@gmail.com, pdeschrijver@nvidia.com,
	swarren@wwwdotorg.org, gnurou@gmail.com, jroedel@suse.de,
	p.zabel@pengutronix.de, mturquette@linaro.org,
	pgaikwad@nvidia.com, sboyd@codeaurora.org, robh+dt@kernel.org,
	pawel.moll@arm.com, mark.rutland@arm.com,
	ijc+devicetree@hellion.org.uk, galak@codeaurora.org,
	linux@arm.linux.org.uk, tbergstrom@nvidia.com, airlied@linux.ie,
	bhelgaas@google.com, tj@kernel.org, arnd@arndb.de,
	robh@kernel.org, will.deacon@arm.com
Cc: linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-pm@vger.kernel.org, rjw@rjwysocki.net,
	viresh.kumar@linaro.org, Vince Hsu <vinceh@nvidia.com>
Subject: [PATCH v2 08/17] ARM: tegra: add PM domain device nodes to Tegra30 DT
Date: Thu, 12 Mar 2015 20:15:09 +0800	[thread overview]
Message-ID: <1426162518-7405-9-git-send-email-vinceh@nvidia.com> (raw)
In-Reply-To: <1426162518-7405-1-git-send-email-vinceh@nvidia.com>

Also bind the PM domain provider and consumer together.

Signed-off-by: Vince Hsu <vinceh@nvidia.com>
---
 arch/arm/boot/dts/tegra30.dtsi | 45 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 44 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/tegra30.dtsi b/arch/arm/boot/dts/tegra30.dtsi
index db4810df142c..bec1b17fdcab 100644
--- a/arch/arm/boot/dts/tegra30.dtsi
+++ b/arch/arm/boot/dts/tegra30.dtsi
@@ -2,6 +2,7 @@
 #include <dt-bindings/gpio/tegra-gpio.h>
 #include <dt-bindings/memory/tegra30-mc.h>
 #include <dt-bindings/pinctrl/pinctrl-tegra.h>
+#include <dt-bindings/power/tegra-powergate.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 
 #include "skeleton.dtsi"
@@ -36,6 +37,7 @@
 			  0x82000000 0 0x20000000 0x20000000 0 0x08000000   /* non-prefetchable memory */
 			  0xc2000000 0 0x28000000 0x28000000 0 0x18000000>; /* prefetchable memory */
 
+		power-domains = <&pmc TEGRA_POWERGATE_PCIE>;
 		clocks = <&tegra_car TEGRA30_CLK_PCIE>,
 			 <&tegra_car TEGRA30_CLK_AFI>,
 			 <&tegra_car TEGRA30_CLK_PLL_E>,
@@ -149,6 +151,14 @@
 		gr3d@54180000 {
 			compatible = "nvidia,tegra30-gr3d";
 			reg = <0x54180000 0x00040000>;
+			/*
+			 * Actually the gr3d has two power domains, but the
+			 * generic power domain doesn't support multiple
+			 * domain provider for one device yet. So we claim
+			 * the gr3d is powered by the domain 3D1 here, and
+			 * let the 3D1 depend on 3D below.
+			 */
+			power-domains = <&pmc TEGRA_POWERGATE_3D1>;
 			clocks = <&tegra_car TEGRA30_CLK_GR3D
 				  &tegra_car TEGRA30_CLK_GR3D2>;
 			clock-names = "3d", "3d2";
@@ -613,11 +623,44 @@
 		status = "disabled";
 	};
 
-	pmc@7000e400 {
+	pmc: pmc@7000e400 {
 		compatible = "nvidia,tegra30-pmc";
 		reg = <0x7000e400 0x400>;
 		clocks = <&tegra_car TEGRA30_CLK_PCLK>, <&clk32k_in>;
 		clock-names = "pclk", "clk32k_in";
+		#power-domain-cells = <1>;
+	};
+
+	gr3dpd: gr3d-power-domain {
+		compatible = "nvidia,power-domains";
+		name = "gr3d-power-domain";
+		domain = <TEGRA_POWERGATE_3D>;
+		clocks = <&tegra_car TEGRA30_CLK_GR3D>;
+		resets = <&tegra_car 24>;
+		nvidia,swgroup = <&mc TEGRA_SWGROUP_NV>;
+	};
+
+	gr3d2-power-domain {
+		compatible = "nvidia,power-domains";
+		name = "gr3d2-power-domain";
+		domain = <TEGRA_POWERGATE_3D1>;
+		clocks = <&tegra_car TEGRA30_CLK_GR3D2>;
+		resets = <&tegra_car 98>;
+		nvidia,swgroup = <&mc TEGRA_SWGROUP_NV2>;
+		depend-on = <&gr3dpd>;
+	};
+
+	pcie-power-domain {
+		compatible = "nvidia,power-domains";
+		name = "pcie-power-domain";
+		domain = <TEGRA_POWERGATE_PCIE>;
+		clocks = <&tegra_car TEGRA30_CLK_AFI>,
+			 <&tegra_car TEGRA30_CLK_PCIE>,
+			 <&tegra_car TEGRA30_CLK_CML0>;
+		resets = <&tegra_car 70>,
+			 <&tegra_car 72>,
+			 <&tegra_car 74>;
+		nvidia,swgroup = <&mc TEGRA_SWGROUP_AFI>;
 	};
 
 	mc: memory-controller@7000f000 {
-- 
2.1.4

  parent reply	other threads:[~2015-03-12 12:15 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-12 12:15 [PATCH v2 00/17] Add generic PM domain support for Tegra SoCs Vince Hsu
2015-03-12 12:15 ` [PATCH v2 01/17] reset: add of_reset_control_get_by_index() Vince Hsu
     [not found]   ` <1426162518-7405-2-git-send-email-vinceh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-03-12 15:01     ` Philipp Zabel
2015-03-13  3:04       ` Vince Hsu
2015-03-12 12:15 ` [PATCH v2 02/17] memory: tegra: add mc flush support Vince Hsu
2015-03-12 12:15 ` [PATCH v2 03/17] memory: tegra: add flush operation for Tegra30 memory clients Vince Hsu
2015-03-12 12:15 ` [PATCH v2 04/17] memory: tegra: add flush operation for Tegra114 " Vince Hsu
2015-03-12 12:15 ` [PATCH v2 05/17] memory: tegra: add flush operation for Tegra124 " Vince Hsu
     [not found] ` <1426162518-7405-1-git-send-email-vinceh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-03-12 12:15   ` [PATCH v2 06/17] clk: tegra: remove TEGRA_PLL_USE_LOCK for PLLD/PLLD2 Vince Hsu
2015-03-12 12:15   ` [PATCH v2 10/17] ARM: tegra: add PM domain device nodes to Tegra124 DT Vince Hsu
2015-03-12 12:15   ` [PATCH v2 13/17] PCI: tegra: remove the power sequence from driver Vince Hsu
2015-03-12 12:15 ` [PATCH v2 07/17] soc: tegra: pmc: Add generic PM domain support Vince Hsu
2015-04-06 22:37   ` Kevin Hilman
2015-04-08  8:06     ` Thierry Reding
2015-03-12 12:15 ` Vince Hsu [this message]
2015-03-12 12:15 ` [PATCH v2 09/17] ARM: tegra: add PM domain device nodes to Tegra114 DT Vince Hsu
2015-03-12 12:15 ` [PATCH v2 11/17] ARM: tegra: add GPU power supply to Jetson TK1 DT Vince Hsu
2015-03-12 12:15 ` [PATCH v2 12/17] drm/tegra: dc: remove the power sequence from driver Vince Hsu
2015-03-12 12:15 ` [PATCH v2 14/17] ata: ahci_tegra: remove " Vince Hsu
2015-03-12 12:19   ` Tejun Heo
     [not found]     ` <20150312121912.GJ25944-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2015-03-12 12:23       ` Vince Hsu
     [not found]         ` <55018536.2050904-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-03-12 12:33           ` Hans de Goede
2015-03-12 12:15 ` [PATCH v2 15/17] drm/tegra: remove GR3D " Vince Hsu
2015-03-12 12:15 ` [PATCH v2 16/17] ARM: tegra: select PM_GENERIC_DOMAINS Vince Hsu
2015-03-12 12:15 ` [PATCH v2 17/17] soc/tegra: remove lagacy powergate APIs Vince Hsu
     [not found]   ` <1426162518-7405-18-git-send-email-vinceh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-03-12 12:45     ` Thierry Reding
2015-03-12 13:11       ` Vince Hsu
2015-03-12 16:18       ` Peter De Schrijver

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1426162518-7405-9-git-send-email-vinceh@nvidia.com \
    --to=vinceh@nvidia.com \
    --cc=airlied@linux.ie \
    --cc=arnd@arndb.de \
    --cc=bhelgaas@google.com \
    --cc=devicetree@vger.kernel.org \
    --cc=galak@codeaurora.org \
    --cc=gnurou@gmail.com \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=jroedel@suse.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=mark.rutland@arm.com \
    --cc=mturquette@linaro.org \
    --cc=p.zabel@pengutronix.de \
    --cc=pawel.moll@arm.com \
    --cc=pdeschrijver@nvidia.com \
    --cc=pgaikwad@nvidia.com \
    --cc=rjw@rjwysocki.net \
    --cc=robh+dt@kernel.org \
    --cc=robh@kernel.org \
    --cc=sboyd@codeaurora.org \
    --cc=swarren@wwwdotorg.org \
    --cc=tbergstrom@nvidia.com \
    --cc=thierry.reding@gmail.com \
    --cc=tj@kernel.org \
    --cc=viresh.kumar@linaro.org \
    --cc=will.deacon@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).