linux-clk.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [Patch v4 0/3] ARM: dts: dra7: add vpe nodes
@ 2019-11-12 14:26 Benoit Parrot
  2019-11-12 14:26 ` [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data Benoit Parrot
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Benoit Parrot @ 2019-11-12 14:26 UTC (permalink / raw)
  To: Tony Lindgren, Tero Kristo
  Cc: linux-omap, linux-clk, linux-arm-kernel, devicetree,
	linux-kernel, Benoit Parrot

This patch series adds the needed clkctrl and ty-sysc nodes for VPE module.
We also document the VPE DT bindings.

Changes since v3:
- Patches [1](dt-bindings) and [5](driver compatible) were merged in
  linux-media
- Added special clock naming notice to commit message as per Tony's
  comment

Changes since v2:
- Fix binding spdx license
- Added Rob's ack 

Changes since v1:
- Added a patch to update the compatible in the driver
- Removed unnededed #cell #size properties
- Updated the compatible in dtsi to match binding
- Split off the clk code into its own patch
- Added device specific prefix
- Converted binding to dt schema

Benoit Parrot (3):
  clk: ti: dra7: add vpe clkctrl data
  ARM: dts: dra7: add vpe clkctrl node
  ARM: dts: dra7: Add ti-sysc node for VPE

 arch/arm/boot/dts/dra7-l4.dtsi       | 28 +++++++++++++++++++++++++---
 arch/arm/boot/dts/dra7xx-clocks.dtsi | 18 ++++++++++++++++--
 drivers/clk/ti/clk-7xx.c             |  6 ++++++
 include/dt-bindings/clock/dra7.h     | 10 ++++++++++
 4 files changed, 57 insertions(+), 5 deletions(-)

-- 
2.17.1


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

* [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data
  2019-11-12 14:26 [Patch v4 0/3] ARM: dts: dra7: add vpe nodes Benoit Parrot
@ 2019-11-12 14:26 ` Benoit Parrot
  2019-11-12 15:27   ` Tony Lindgren
  2019-11-18 17:37   ` Rob Herring
  2019-11-12 14:26 ` [Patch v4 2/3] ARM: dts: dra7: add vpe clkctrl node Benoit Parrot
  2019-11-12 14:26 ` [Patch v4 3/3] ARM: dts: dra7: Add ti-sysc node for VPE Benoit Parrot
  2 siblings, 2 replies; 7+ messages in thread
From: Benoit Parrot @ 2019-11-12 14:26 UTC (permalink / raw)
  To: Tony Lindgren, Tero Kristo
  Cc: linux-omap, linux-clk, linux-arm-kernel, devicetree,
	linux-kernel, Benoit Parrot

Add clkctrl data for VPE.

Signed-off-by: Benoit Parrot <bparrot@ti.com>
---
 drivers/clk/ti/clk-7xx.c         |  6 ++++++
 include/dt-bindings/clock/dra7.h | 10 ++++++++++
 2 files changed, 16 insertions(+)

diff --git a/drivers/clk/ti/clk-7xx.c b/drivers/clk/ti/clk-7xx.c
index b57fe09b428b..5dd9cad07542 100644
--- a/drivers/clk/ti/clk-7xx.c
+++ b/drivers/clk/ti/clk-7xx.c
@@ -146,6 +146,11 @@ static const struct omap_clkctrl_reg_data dra7_rtc_clkctrl_regs[] __initconst =
 	{ 0 },
 };
 
+static const struct omap_clkctrl_reg_data dra7_vpe_clkctrl_regs[] __initconst = {
+	{ DRA7_VPE_VPE_CLKCTRL, NULL, CLKF_HW_SUP, "dpll_core_h23x2_ck" },
+	{ 0 },
+};
+
 static const struct omap_clkctrl_reg_data dra7_coreaon_clkctrl_regs[] __initconst = {
 	{ DRA7_COREAON_SMARTREFLEX_MPU_CLKCTRL, NULL, CLKF_SW_SUP, "wkupaon_iclk_mux" },
 	{ DRA7_COREAON_SMARTREFLEX_CORE_CLKCTRL, NULL, CLKF_SW_SUP, "wkupaon_iclk_mux" },
@@ -769,6 +774,7 @@ const struct omap_clkctrl_data dra7_clkctrl_data[] __initconst = {
 	{ 0x4a005550, dra7_ipu_clkctrl_regs },
 	{ 0x4a005620, dra7_dsp2_clkctrl_regs },
 	{ 0x4a005720, dra7_rtc_clkctrl_regs },
+	{ 0x4a005760, dra7_vpe_clkctrl_regs },
 	{ 0x4a008620, dra7_coreaon_clkctrl_regs },
 	{ 0x4a008720, dra7_l3main1_clkctrl_regs },
 	{ 0x4a008920, dra7_ipu2_clkctrl_regs },
diff --git a/include/dt-bindings/clock/dra7.h b/include/dt-bindings/clock/dra7.h
index 72f2e8411523..2b765e579b2a 100644
--- a/include/dt-bindings/clock/dra7.h
+++ b/include/dt-bindings/clock/dra7.h
@@ -29,6 +29,11 @@
 #define DRA7_RTC_CLKCTRL_INDEX(offset)	((offset) - DRA7_RTC_CLKCTRL_OFFSET)
 #define DRA7_RTCSS_CLKCTRL	DRA7_RTC_CLKCTRL_INDEX(0x44)
 
+/* vpe clocks */
+#define DRA7_VPE_CLKCTRL_OFFSET	0x60
+#define DRA7_VPE_CLKCTRL_INDEX(offset)	((offset) - DRA7_VPE_CLKCTRL_OFFSET)
+#define DRA7_VPE_CLKCTRL	DRA7_VPE_CLKCTRL_INDEX(0x64)
+
 /* coreaon clocks */
 #define DRA7_SMARTREFLEX_MPU_CLKCTRL	DRA7_CLKCTRL_INDEX(0x28)
 #define DRA7_SMARTREFLEX_CORE_CLKCTRL	DRA7_CLKCTRL_INDEX(0x38)
@@ -192,6 +197,11 @@
 /* rtc clocks */
 #define DRA7_RTC_RTCSS_CLKCTRL	DRA7_CLKCTRL_INDEX(0x44)
 
+/* vpe clocks */
+#define DRA7_VPE_CLKCTRL_OFFSET	0x60
+#define DRA7_VPE_CLKCTRL_INDEX(offset)	((offset) - DRA7_VPE_CLKCTRL_OFFSET)
+#define DRA7_VPE_VPE_CLKCTRL	DRA7_VPE_CLKCTRL_INDEX(0x64)
+
 /* coreaon clocks */
 #define DRA7_COREAON_SMARTREFLEX_MPU_CLKCTRL	DRA7_CLKCTRL_INDEX(0x28)
 #define DRA7_COREAON_SMARTREFLEX_CORE_CLKCTRL	DRA7_CLKCTRL_INDEX(0x38)
-- 
2.17.1


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

* [Patch v4 2/3] ARM: dts: dra7: add vpe clkctrl node
  2019-11-12 14:26 [Patch v4 0/3] ARM: dts: dra7: add vpe nodes Benoit Parrot
  2019-11-12 14:26 ` [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data Benoit Parrot
@ 2019-11-12 14:26 ` Benoit Parrot
  2019-11-12 15:26   ` Tony Lindgren
  2019-11-12 14:26 ` [Patch v4 3/3] ARM: dts: dra7: Add ti-sysc node for VPE Benoit Parrot
  2 siblings, 1 reply; 7+ messages in thread
From: Benoit Parrot @ 2019-11-12 14:26 UTC (permalink / raw)
  To: Tony Lindgren, Tero Kristo
  Cc: linux-omap, linux-clk, linux-arm-kernel, devicetree,
	linux-kernel, Benoit Parrot

Add clkctrl nodes for VPE module.

Note that because of the current dts node name dependency for mapping to
clock domain, we must still use "vpe-clkctrl@" naming instead of generic
"clock@" naming for the node. And because of this, it's probably best to
apply the dts node addition together along with the other clock changes.

Signed-off-by: Benoit Parrot <bparrot@ti.com>
---
 arch/arm/boot/dts/dra7xx-clocks.dtsi | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/dra7xx-clocks.dtsi b/arch/arm/boot/dts/dra7xx-clocks.dtsi
index 93e1eb83bed9..d1c2406ec71c 100644
--- a/arch/arm/boot/dts/dra7xx-clocks.dtsi
+++ b/arch/arm/boot/dts/dra7xx-clocks.dtsi
@@ -1591,10 +1591,10 @@
 
 	rtc_cm: rtc-cm@700 {
 		compatible = "ti,omap4-cm";
-		reg = <0x700 0x100>;
+		reg = <0x700 0x60>;
 		#address-cells = <1>;
 		#size-cells = <1>;
-		ranges = <0 0x700 0x100>;
+		ranges = <0 0x700 0x60>;
 
 		rtc_clkctrl: rtc-clkctrl@20 {
 			compatible = "ti,clkctrl";
@@ -1603,6 +1603,20 @@
 		};
 	};
 
+	vpe_cm: vpe-cm@760 {
+		compatible = "ti,omap4-cm";
+		reg = <0x760 0xc>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0 0x760 0xc>;
+
+		vpe_clkctrl: vpe-clkctrl@0 {
+			compatible = "ti,clkctrl";
+			reg = <0x0 0xc>;
+			#clock-cells = <2>;
+		};
+	};
+
 };
 
 &cm_core {
-- 
2.17.1


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

* [Patch v4 3/3] ARM: dts: dra7: Add ti-sysc node for VPE
  2019-11-12 14:26 [Patch v4 0/3] ARM: dts: dra7: add vpe nodes Benoit Parrot
  2019-11-12 14:26 ` [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data Benoit Parrot
  2019-11-12 14:26 ` [Patch v4 2/3] ARM: dts: dra7: add vpe clkctrl node Benoit Parrot
@ 2019-11-12 14:26 ` Benoit Parrot
  2 siblings, 0 replies; 7+ messages in thread
From: Benoit Parrot @ 2019-11-12 14:26 UTC (permalink / raw)
  To: Tony Lindgren, Tero Kristo
  Cc: linux-omap, linux-clk, linux-arm-kernel, devicetree,
	linux-kernel, Benoit Parrot

Add VPE node as a child of l4 interconnect in order for it to probe
using ti-sysc.

Signed-off-by: Benoit Parrot <bparrot@ti.com>
---
 arch/arm/boot/dts/dra7-l4.dtsi | 28 +++++++++++++++++++++++++---
 1 file changed, 25 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
index ea0e7c19eb4e..0917231a20e2 100644
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -4158,12 +4158,34 @@
 			ranges = <0x0 0x1b0000 0x10000>;
 		};
 
-		target-module@1d0000 {			/* 0x489d0000, ap 27 30.0 */
-			compatible = "ti,sysc";
-			status = "disabled";
+		target-module@1d0010 {			/* 0x489d0000, ap 27 30.0 */
+			compatible = "ti,sysc-omap4", "ti,sysc";
+			reg = <0x1d0010 0x4>;
+			reg-names = "sysc";
+			ti,sysc-midle = <SYSC_IDLE_FORCE>,
+					<SYSC_IDLE_NO>,
+					<SYSC_IDLE_SMART>;
+			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
+					<SYSC_IDLE_NO>,
+					<SYSC_IDLE_SMART>;
+			clocks = <&vpe_clkctrl DRA7_VPE_VPE_CLKCTRL 0>;
+			clock-names = "fck";
 			#address-cells = <1>;
 			#size-cells = <1>;
 			ranges = <0x0 0x1d0000 0x10000>;
+
+			vpe: vpe@0 {
+				compatible = "ti,dra7-vpe";
+				reg = <0x0000 0x120>,
+				      <0x0700 0x80>,
+				      <0x5700 0x18>,
+				      <0xd000 0x400>;
+				reg-names = "vpe_top",
+					    "sc",
+					    "csc",
+					    "vpdma";
+				interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
+			};
 		};
 	};
 };
-- 
2.17.1


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

* Re: [Patch v4 2/3] ARM: dts: dra7: add vpe clkctrl node
  2019-11-12 14:26 ` [Patch v4 2/3] ARM: dts: dra7: add vpe clkctrl node Benoit Parrot
@ 2019-11-12 15:26   ` Tony Lindgren
  0 siblings, 0 replies; 7+ messages in thread
From: Tony Lindgren @ 2019-11-12 15:26 UTC (permalink / raw)
  To: Benoit Parrot
  Cc: Tero Kristo, linux-omap, linux-clk, linux-arm-kernel, devicetree,
	linux-kernel

* Benoit Parrot <bparrot@ti.com> [191112 14:24]:
> Add clkctrl nodes for VPE module.
> 
> Note that because of the current dts node name dependency for mapping to
> clock domain, we must still use "vpe-clkctrl@" naming instead of generic
> "clock@" naming for the node. And because of this, it's probably best to
> apply the dts node addition together along with the other clock changes.

Thanks looks good to me now. Yeah it's probably best to queue this one
along with the clock driver changes. I can then collect the dts related
driver dts change on top of a branch from Tero. So please feel free to
add this:

Acked-by: Tony Lindgren <tony@atomide.com>

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

* Re: [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data
  2019-11-12 14:26 ` [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data Benoit Parrot
@ 2019-11-12 15:27   ` Tony Lindgren
  2019-11-18 17:37   ` Rob Herring
  1 sibling, 0 replies; 7+ messages in thread
From: Tony Lindgren @ 2019-11-12 15:27 UTC (permalink / raw)
  To: Benoit Parrot
  Cc: Tero Kristo, linux-omap, linux-clk, linux-arm-kernel, devicetree,
	linux-kernel

* Benoit Parrot <bparrot@ti.com> [191112 14:24]:
> Add clkctrl data for VPE.

Looks OK to me, did not check against the TRM though:

Acked-by: Tony Lindgren <tony@atomide.com>

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

* Re: [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data
  2019-11-12 14:26 ` [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data Benoit Parrot
  2019-11-12 15:27   ` Tony Lindgren
@ 2019-11-18 17:37   ` Rob Herring
  1 sibling, 0 replies; 7+ messages in thread
From: Rob Herring @ 2019-11-18 17:37 UTC (permalink / raw)
  To: Benoit Parrot
  Cc: Tony Lindgren, Tero Kristo, devicetree, linux-kernel,
	Benoit Parrot, linux-omap, linux-clk, linux-arm-kernel

On Tue, 12 Nov 2019 08:26:55 -0600, Benoit Parrot wrote:
> Add clkctrl data for VPE.
> 
> Signed-off-by: Benoit Parrot <bparrot@ti.com>
> ---
>  drivers/clk/ti/clk-7xx.c         |  6 ++++++
>  include/dt-bindings/clock/dra7.h | 10 ++++++++++
>  2 files changed, 16 insertions(+)
> 

Acked-by: Rob Herring <robh@kernel.org>

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

end of thread, other threads:[~2019-11-18 17:37 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-12 14:26 [Patch v4 0/3] ARM: dts: dra7: add vpe nodes Benoit Parrot
2019-11-12 14:26 ` [Patch v4 1/3] clk: ti: dra7: add vpe clkctrl data Benoit Parrot
2019-11-12 15:27   ` Tony Lindgren
2019-11-18 17:37   ` Rob Herring
2019-11-12 14:26 ` [Patch v4 2/3] ARM: dts: dra7: add vpe clkctrl node Benoit Parrot
2019-11-12 15:26   ` Tony Lindgren
2019-11-12 14:26 ` [Patch v4 3/3] ARM: dts: dra7: Add ti-sysc node for VPE Benoit Parrot

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).