linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms
@ 2017-08-10 23:52 Suman Anna
  2017-08-10 23:52 ` [PATCH 1/3] ARM: dts: keystone-k2g: Add DSP node Suman Anna
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Suman Anna @ 2017-08-10 23:52 UTC (permalink / raw)
  To: Santosh Shilimkar
  Cc: devicetree, linux-arm-kernel, linux-kernel, Suman Anna,
	Sam Nelson, Andrew F. Davis

Hi Santosh,

The following series adds the DT nodes for the DSP device present
on the Keystone2 66AK2G SoC and enables them on the currently
supported platforms.

The DTS nodes for the other Keystone2 family of SoCs were posted
previously [1] and already in your staging branches for 4.14.
This series adds the equivalent patches for 66AK2G SoCs. K2G uses
slightly different properties compared to other K2 SoCs. The
binding update for K2G is in-flight [2] and already acked by Rob.
So, I am not sure if you need to wait for that patch to show up
on mainline to avoid checkpatch warnings on these patches due to
the undocumented compatible on your tree.

Validation done on K2G EVM and K2G ICE boards using ramdisk boot.
Supported features are the same as the other Keystone 2 platforms.
Patches are based on your current -next branch [3], so should apply
fine on your 4.14 keystone_dts branch.

regards
Suman

[1] http://marc.info/?l=linux-kernel&m=150128405901497&w=2
[2] https://patchwork.kernel.org/patch/9873085/
[3] https://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone.git/log/?h=next

Andrew F. Davis (1):
  ARM: dts: keystone-k2g-evm: Add and enable DSP CMA memory pool

Suman Anna (2):
  ARM: dts: keystone-k2g: Add DSP node
  ARM: dts: keystone-k2g-ice: Add and enable DSP CMA memory pool

 arch/arm/boot/dts/keystone-k2g-evm.dts | 18 ++++++++++++++++++
 arch/arm/boot/dts/keystone-k2g-ice.dts | 18 ++++++++++++++++++
 arch/arm/boot/dts/keystone-k2g.dtsi    | 17 +++++++++++++++++
 3 files changed, 53 insertions(+)

-- 
2.13.1

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

* [PATCH 1/3] ARM: dts: keystone-k2g: Add DSP node
  2017-08-10 23:52 [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms Suman Anna
@ 2017-08-10 23:52 ` Suman Anna
  2017-08-10 23:52 ` [PATCH 2/3] ARM: dts: keystone-k2g-evm: Add and enable DSP CMA memory pool Suman Anna
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Suman Anna @ 2017-08-10 23:52 UTC (permalink / raw)
  To: Santosh Shilimkar
  Cc: devicetree, linux-arm-kernel, linux-kernel, Suman Anna,
	Sam Nelson, Andrew F. Davis

The Keystone 2 66AK2G SoC has a single TMS320C66x DSP Core
Subsystem (C66x CorePac), containing a C66x Fixed/Floating-Point
DSP Core, and 32 KB of L1P & L1D SRAMs and a 1 MB L2 SRAM. Add
the DT node for this DSP processor sub-system.

The DT node has a new property 'power-domains' and no 'clocks'
properties, and uses slightly different property values for
'resets' compared to other Keystone 2 SoCs. The processor does
not have an MMU, and uses various IPC Generation registers and
shared memory for inter-processor communication. The alias with
a stem 'rproc' has also been added for the DSP, it provides a
fixed remoteproc id for the DSP processor.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
---
 arch/arm/boot/dts/keystone-k2g.dtsi | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/arch/arm/boot/dts/keystone-k2g.dtsi b/arch/arm/boot/dts/keystone-k2g.dtsi
index 35726b66fb91..826b286665e6 100644
--- a/arch/arm/boot/dts/keystone-k2g.dtsi
+++ b/arch/arm/boot/dts/keystone-k2g.dtsi
@@ -28,6 +28,7 @@
 
 	aliases {
 		serial0 = &uart0;
+		rproc0 = &dsp0;
 	};
 
 	cpus {
@@ -147,6 +148,22 @@
 			gpio,syscon-dev = <&devctrl 0x240>;
 		};
 
+		dsp0: dsp@10800000 {
+			compatible = "ti,k2g-dsp";
+			reg = <0x10800000 0x00100000>,
+			      <0x10e00000 0x00008000>,
+			      <0x10f00000 0x00008000>;
+			reg-names = "l2sram", "l1pram", "l1dram";
+			power-domains = <&k2g_pds 0x0046>;
+			ti,syscon-dev = <&devctrl 0x844>;
+			resets = <&k2g_reset 0x0046 0x1>;
+			interrupt-parent = <&kirq0>;
+			interrupts = <0 8>;
+			interrupt-names = "vring", "exception";
+			kick-gpios = <&dspgpio0 27 0>;
+			status = "disabled";
+		};
+
 		msgmgr: msgmgr@02a00000 {
 			compatible = "ti,k2g-message-manager";
 			#mbox-cells = <2>;
-- 
2.13.1

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

* [PATCH 2/3] ARM: dts: keystone-k2g-evm: Add and enable DSP CMA memory pool
  2017-08-10 23:52 [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms Suman Anna
  2017-08-10 23:52 ` [PATCH 1/3] ARM: dts: keystone-k2g: Add DSP node Suman Anna
@ 2017-08-10 23:52 ` Suman Anna
  2017-08-10 23:52 ` [PATCH 3/3] ARM: dts: keystone-k2g-ice: " Suman Anna
  2017-08-12 17:59 ` [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms santosh.shilimkar
  3 siblings, 0 replies; 5+ messages in thread
From: Suman Anna @ 2017-08-10 23:52 UTC (permalink / raw)
  To: Santosh Shilimkar
  Cc: devicetree, linux-arm-kernel, linux-kernel, Suman Anna,
	Sam Nelson, Andrew F. Davis

From: "Andrew F. Davis" <afd@ti.com>

A CMA memory pool reserved memory node is added, and is attached
to the DSP node through the 'memory-region' property on the K2G
EVM board. This area will be used for allocating virtio rings and
buffers. This node allows the DSP Memory Protection and Address
Extension (MPAX) module to be configured properly for the DSP
processor, and matches the values used on the other Keystone 2
boards for software compatibility.

The reserved memory node and the user DSP node are also marked
okay to enable the DSP on the 66AK2G EVM board.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
---
 arch/arm/boot/dts/keystone-k2g-evm.dts | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/arch/arm/boot/dts/keystone-k2g-evm.dts b/arch/arm/boot/dts/keystone-k2g-evm.dts
index f47f95d8bf1c..f462f1043531 100644
--- a/arch/arm/boot/dts/keystone-k2g-evm.dts
+++ b/arch/arm/boot/dts/keystone-k2g-evm.dts
@@ -25,6 +25,19 @@
 		reg = <0x00000008 0x00000000 0x00000000 0x80000000>;
 	};
 
+	reserved-memory {
+		#address-cells = <2>;
+		#size-cells = <2>;
+		ranges;
+
+		dsp_common_memory: dsp-common-memory@81f800000 {
+			compatible = "shared-dma-pool";
+			reg = <0x00000008 0x1f800000 0x00000000 0x800000>;
+			reusable;
+			status = "okay";
+		};
+	};
+
 	vcc3v3_dcin_reg: fixedregulator-vcc3v3-dcin {
 		compatible = "regulator-fixed";
 		regulator-name = "mmc0_fixed";
@@ -94,3 +107,8 @@
 	vmmc-supply = <&vcc3v3_dcin_reg>; /* VCC3V3_EMMC is connected to VCC3V3_DCIN */
 	status = "okay";
 };
+
+&dsp0 {
+	memory-region = <&dsp_common_memory>;
+	status = "okay";
+};
-- 
2.13.1

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

* [PATCH 3/3] ARM: dts: keystone-k2g-ice: Add and enable DSP CMA memory pool
  2017-08-10 23:52 [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms Suman Anna
  2017-08-10 23:52 ` [PATCH 1/3] ARM: dts: keystone-k2g: Add DSP node Suman Anna
  2017-08-10 23:52 ` [PATCH 2/3] ARM: dts: keystone-k2g-evm: Add and enable DSP CMA memory pool Suman Anna
@ 2017-08-10 23:52 ` Suman Anna
  2017-08-12 17:59 ` [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms santosh.shilimkar
  3 siblings, 0 replies; 5+ messages in thread
From: Suman Anna @ 2017-08-10 23:52 UTC (permalink / raw)
  To: Santosh Shilimkar
  Cc: devicetree, linux-arm-kernel, linux-kernel, Suman Anna,
	Sam Nelson, Andrew F. Davis

A CMA memory pool reserved memory node is added, and is attached
to the DSP node through the 'memory-region' property on the K2G
ICE board. This area will be used for allocating virtio rings and
buffers. This node allows the DSP Memory Protection and Address
Extension (MPAX) module to be configured properly for the DSP
processor, and matches the values used on the other Keystone 2
boards for software compatibility.

The reserved memory node and the user DSP node are also marked
okay to enable the DSP on the K2G ICE board.

Signed-off-by: Suman Anna <s-anna@ti.com>
---
 arch/arm/boot/dts/keystone-k2g-ice.dts | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/arch/arm/boot/dts/keystone-k2g-ice.dts b/arch/arm/boot/dts/keystone-k2g-ice.dts
index d820d37b5148..78692745e0af 100644
--- a/arch/arm/boot/dts/keystone-k2g-ice.dts
+++ b/arch/arm/boot/dts/keystone-k2g-ice.dts
@@ -17,6 +17,19 @@
 		device_type = "memory";
 		reg = <0x00000008 0x00000000 0x00000000 0x20000000>;
 	};
+
+	reserved-memory {
+		#address-cells = <2>;
+		#size-cells = <2>;
+		ranges;
+
+		dsp_common_memory: dsp-common-memory@81f800000 {
+			compatible = "shared-dma-pool";
+			reg = <0x00000008 0x1f800000 0x00000000 0x800000>;
+			reusable;
+			status = "okay";
+		};
+	};
 };
 
 &k2g_pinctrl {
@@ -33,3 +46,8 @@
 	pinctrl-0 = <&uart0_pins>;
 	status = "okay";
 };
+
+&dsp0 {
+	memory-region = <&dsp_common_memory>;
+	status = "okay";
+};
-- 
2.13.1

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

* Re: [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms
  2017-08-10 23:52 [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms Suman Anna
                   ` (2 preceding siblings ...)
  2017-08-10 23:52 ` [PATCH 3/3] ARM: dts: keystone-k2g-ice: " Suman Anna
@ 2017-08-12 17:59 ` santosh.shilimkar
  3 siblings, 0 replies; 5+ messages in thread
From: santosh.shilimkar @ 2017-08-12 17:59 UTC (permalink / raw)
  To: Suman Anna, Santosh Shilimkar
  Cc: devicetree, linux-arm-kernel, linux-kernel, Sam Nelson, Andrew F. Davis


On 8/10/17 4:52 PM, Suman Anna wrote:
> Hi Santosh,
> 
> The following series adds the DT nodes for the DSP device present
> on the Keystone2 66AK2G SoC and enables them on the currently
> supported platforms.
> 
> The DTS nodes for the other Keystone2 family of SoCs were posted
> previously [1] and already in your staging branches for 4.14.
> This series adds the equivalent patches for 66AK2G SoCs. K2G uses
> slightly different properties compared to other K2 SoCs. The
> binding update for K2G is in-flight [2] and already acked by Rob.
> So, I am not sure if you need to wait for that patch to show up
> on mainline to avoid checkpatch warnings on these patches due to
> the undocumented compatible on your tree.
> 
> Validation done on K2G EVM and K2G ICE boards using ramdisk boot.
> Supported features are the same as the other Keystone 2 platforms.
> Patches are based on your current -next branch [3], so should apply
> fine on your 4.14 keystone_dts branch.
> 
Applied !!

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

end of thread, other threads:[~2017-08-12 18:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-10 23:52 [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms Suman Anna
2017-08-10 23:52 ` [PATCH 1/3] ARM: dts: keystone-k2g: Add DSP node Suman Anna
2017-08-10 23:52 ` [PATCH 2/3] ARM: dts: keystone-k2g-evm: Add and enable DSP CMA memory pool Suman Anna
2017-08-10 23:52 ` [PATCH 3/3] ARM: dts: keystone-k2g-ice: " Suman Anna
2017-08-12 17:59 ` [PATCH 0/3] Add DSP DT nodes on Keystone 66AK2G platforms santosh.shilimkar

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