linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes
@ 2021-12-08 13:15 Roger Quadros
  2021-12-08 13:15 ` [PATCH v2 1/2] arm64: dts: ti: k3-am64-main: Add GPMC memory controller node Roger Quadros
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Roger Quadros @ 2021-12-08 13:15 UTC (permalink / raw)
  To: nm
  Cc: kishon, vigneshr, linux-arm-kernel, devicetree, linux-kernel,
	Roger Quadros

Hi Nishanth,

This series adds GPMC and ELM controller device tree nodes to
AM64 SoC's dtsi file.

Changelog:
v2
- Fix register sizes for GPMC node.
- Disable GPMC and ELM nodes in board files. They will be enabled in
NAND card device tree overlay.

cheers,
-roger

Roger Quadros (2):
  arm64: dts: ti: k3-am64-main: Add GPMC memory controller node
  arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node

 arch/arm64/boot/dts/ti/k3-am64-main.dtsi | 28 ++++++++++++++++++++++++
 arch/arm64/boot/dts/ti/k3-am642-evm.dts  |  8 +++++++
 arch/arm64/boot/dts/ti/k3-am642-sk.dts   |  8 +++++++
 3 files changed, 44 insertions(+)

-- 
2.17.1


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

* [PATCH v2 1/2] arm64: dts: ti: k3-am64-main: Add GPMC memory controller node
  2021-12-08 13:15 [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
@ 2021-12-08 13:15 ` Roger Quadros
  2021-12-08 13:15 ` [PATCH v2 2/2] arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node Roger Quadros
  2021-12-22 17:11 ` [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
  2 siblings, 0 replies; 7+ messages in thread
From: Roger Quadros @ 2021-12-08 13:15 UTC (permalink / raw)
  To: nm
  Cc: kishon, vigneshr, linux-arm-kernel, devicetree, linux-kernel,
	Roger Quadros

The GPMC is a unified memory controller dedicated for interfacing
with external memory devices like
  - Asynchronous SRAM-like memories and ASICs
  - Asynchronous, synchronous, and page mode burst NOR flash
  - NAND flash
  - Pseudo-SRAM devices

Signed-off-by: Roger Quadros <rogerq@kernel.org>
---
 arch/arm64/boot/dts/ti/k3-am64-main.dtsi | 19 +++++++++++++++++++
 arch/arm64/boot/dts/ti/k3-am642-evm.dts  |  4 ++++
 arch/arm64/boot/dts/ti/k3-am642-sk.dts   |  4 ++++
 3 files changed, 27 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
index 5ad638b95ffc..830bfc0929b9 100644
--- a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
@@ -1253,4 +1253,23 @@
 			bus_freq = <1000000>;
 		};
 	};
+
+	gpmc0: memory-controller@3b000000 {
+		compatible = "ti,am64-gpmc";
+		power-domains = <&k3_pds 80 TI_SCI_PD_EXCLUSIVE>;
+		clocks = <&k3_clks 80 0>;
+		clock-names = "fck";
+		reg = <0x00 0x03b000000 0x00 0x400>,
+		      <0x00 0x050000000 0x00 0x8000000>;
+		reg-names = "cfg", "data";
+		interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
+		gpmc,num-cs = <3>;
+		gpmc,num-waitpins = <2>;
+		#address-cells = <2>;
+		#size-cells = <1>;
+		interrupt-controller;
+		#interrupt-cells = <2>;
+		gpio-controller;
+		#gpio-cells = <2>;
+	};
 };
diff --git a/arch/arm64/boot/dts/ti/k3-am642-evm.dts b/arch/arm64/boot/dts/ti/k3-am642-evm.dts
index 6726c4c7c28c..e13866a6e131 100644
--- a/arch/arm64/boot/dts/ti/k3-am642-evm.dts
+++ b/arch/arm64/boot/dts/ti/k3-am642-evm.dts
@@ -638,3 +638,7 @@
 &icssg1_mdio {
 	status = "disabled";
 };
+
+&gpmc0 {
+	status = "disabled";
+};
diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
index 6b04745147be..e2793202af38 100644
--- a/arch/arm64/boot/dts/ti/k3-am642-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
@@ -525,3 +525,7 @@
 &icssg1_mdio {
 	status = "disabled";
 };
+
+&gpmc0 {
+	status = "disabled";
+};
-- 
2.17.1


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

* [PATCH v2 2/2] arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node
  2021-12-08 13:15 [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
  2021-12-08 13:15 ` [PATCH v2 1/2] arm64: dts: ti: k3-am64-main: Add GPMC memory controller node Roger Quadros
@ 2021-12-08 13:15 ` Roger Quadros
  2021-12-22 17:11 ` [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
  2 siblings, 0 replies; 7+ messages in thread
From: Roger Quadros @ 2021-12-08 13:15 UTC (permalink / raw)
  To: nm
  Cc: kishon, vigneshr, linux-arm-kernel, devicetree, linux-kernel,
	Roger Quadros

The ELM module is used for GPMC NAND accesses for detecting
and correcting errors during reads due to NAND bitflips errors.

4-, 8-, and 16-bit error-correction levels are supported using
the BCH (Bose-ChaudhurI-Hocquenghem) algorithm.

Signed-off-by: Roger Quadros <rogerq@kernel.org>
---
 arch/arm64/boot/dts/ti/k3-am64-main.dtsi | 9 +++++++++
 arch/arm64/boot/dts/ti/k3-am642-evm.dts  | 4 ++++
 arch/arm64/boot/dts/ti/k3-am642-sk.dts   | 4 ++++
 3 files changed, 17 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
index 830bfc0929b9..179b3a6706c9 100644
--- a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
@@ -1272,4 +1272,13 @@
 		gpio-controller;
 		#gpio-cells = <2>;
 	};
+
+	elm0: ecc@25010000 {
+		compatible = "ti,am3352-elm";
+		reg = <0x00 0x25010000 0x00 0x2000>;
+		interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
+		power-domains = <&k3_pds 54 TI_SCI_PD_EXCLUSIVE>;
+		clocks = <&k3_clks 54 0>;
+		clock-names = "fck";
+	};
 };
diff --git a/arch/arm64/boot/dts/ti/k3-am642-evm.dts b/arch/arm64/boot/dts/ti/k3-am642-evm.dts
index e13866a6e131..d6037dc664ec 100644
--- a/arch/arm64/boot/dts/ti/k3-am642-evm.dts
+++ b/arch/arm64/boot/dts/ti/k3-am642-evm.dts
@@ -642,3 +642,7 @@
 &gpmc0 {
 	status = "disabled";
 };
+
+&elm0 {
+	status = "disabled";
+};
diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
index e2793202af38..788813ab294f 100644
--- a/arch/arm64/boot/dts/ti/k3-am642-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
@@ -529,3 +529,7 @@
 &gpmc0 {
 	status = "disabled";
 };
+
+&elm0 {
+	status = "disabled";
+};
-- 
2.17.1


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

* Re: [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes
  2021-12-08 13:15 [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
  2021-12-08 13:15 ` [PATCH v2 1/2] arm64: dts: ti: k3-am64-main: Add GPMC memory controller node Roger Quadros
  2021-12-08 13:15 ` [PATCH v2 2/2] arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node Roger Quadros
@ 2021-12-22 17:11 ` Roger Quadros
  2021-12-23 13:28   ` Nishanth Menon
  2 siblings, 1 reply; 7+ messages in thread
From: Roger Quadros @ 2021-12-22 17:11 UTC (permalink / raw)
  To: nm; +Cc: kishon, vigneshr, linux-arm-kernel, devicetree, linux-kernel

Hi Nishanth,

On 08/12/2021 15:15, Roger Quadros wrote:
> Hi Nishanth,
> 
> This series adds GPMC and ELM controller device tree nodes to
> AM64 SoC's dtsi file.
> 
> Changelog:
> v2
> - Fix register sizes for GPMC node.
> - Disable GPMC and ELM nodes in board files. They will be enabled in
> NAND card device tree overlay.

Gentle reminder to pick this for -next
GPMC + NAND side patches are already in queue for -next. Thanks.

cheers,
-roger

> 
> Roger Quadros (2):
>   arm64: dts: ti: k3-am64-main: Add GPMC memory controller node
>   arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node
> 
>  arch/arm64/boot/dts/ti/k3-am64-main.dtsi | 28 ++++++++++++++++++++++++
>  arch/arm64/boot/dts/ti/k3-am642-evm.dts  |  8 +++++++
>  arch/arm64/boot/dts/ti/k3-am642-sk.dts   |  8 +++++++
>  3 files changed, 44 insertions(+)
> 

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

* Re: [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes
  2021-12-22 17:11 ` [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
@ 2021-12-23 13:28   ` Nishanth Menon
  2022-02-01 16:33     ` Nishanth Menon
  0 siblings, 1 reply; 7+ messages in thread
From: Nishanth Menon @ 2021-12-23 13:28 UTC (permalink / raw)
  To: Roger Quadros
  Cc: kishon, vigneshr, linux-arm-kernel, devicetree, linux-kernel

On 19:11-20211222, Roger Quadros wrote:
> Hi Nishanth,
> 
> On 08/12/2021 15:15, Roger Quadros wrote:
> > Hi Nishanth,
> > 
> > This series adds GPMC and ELM controller device tree nodes to
> > AM64 SoC's dtsi file.
> > 
> > Changelog:
> > v2
> > - Fix register sizes for GPMC node.
> > - Disable GPMC and ELM nodes in board files. They will be enabled in
> > NAND card device tree overlay.
> 
> Gentle reminder to pick this for -next
> GPMC + NAND side patches are already in queue for -next. Thanks.

just responding to the main thread: lets hold this back for next window.
the bindings need to be in master rc1 prior to the dts getting picked up.

-- 
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D)/Fingerprint: F8A2 8693 54EB 8232 17A3  1A34 DDB5 849D 1736 249D

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

* Re: [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes
  2021-12-23 13:28   ` Nishanth Menon
@ 2022-02-01 16:33     ` Nishanth Menon
  2022-02-01 19:00       ` Roger Quadros
  0 siblings, 1 reply; 7+ messages in thread
From: Nishanth Menon @ 2022-02-01 16:33 UTC (permalink / raw)
  To: Roger Quadros
  Cc: kishon, vigneshr, linux-arm-kernel, devicetree, linux-kernel

On 07:28-20211223, Nishanth Menon wrote:
> On 19:11-20211222, Roger Quadros wrote:
> > Hi Nishanth,
> > 
> > On 08/12/2021 15:15, Roger Quadros wrote:
> > > Hi Nishanth,
> > > 
> > > This series adds GPMC and ELM controller device tree nodes to
> > > AM64 SoC's dtsi file.
> > > 
> > > Changelog:
> > > v2
> > > - Fix register sizes for GPMC node.
> > > - Disable GPMC and ELM nodes in board files. They will be enabled in
> > > NAND card device tree overlay.
> > 
> > Gentle reminder to pick this for -next
> > GPMC + NAND side patches are already in queue for -next. Thanks.
> 
> just responding to the main thread: lets hold this back for next window.
> the bindings need to be in master rc1 prior to the dts getting picked up.


Any updates?

-- 
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3  1A34 DDB5 849D 1736 249D

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

* Re: [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes
  2022-02-01 16:33     ` Nishanth Menon
@ 2022-02-01 19:00       ` Roger Quadros
  0 siblings, 0 replies; 7+ messages in thread
From: Roger Quadros @ 2022-02-01 19:00 UTC (permalink / raw)
  To: Nishanth Menon
  Cc: kishon, vigneshr, linux-arm-kernel, devicetree, linux-kernel

Hi Nishanth,

On 01/02/2022 18:33, Nishanth Menon wrote:
> On 07:28-20211223, Nishanth Menon wrote:
>> On 19:11-20211222, Roger Quadros wrote:
>>> Hi Nishanth,
>>>
>>> On 08/12/2021 15:15, Roger Quadros wrote:
>>>> Hi Nishanth,
>>>>
>>>> This series adds GPMC and ELM controller device tree nodes to
>>>> AM64 SoC's dtsi file.
>>>>
>>>> Changelog:
>>>> v2
>>>> - Fix register sizes for GPMC node.
>>>> - Disable GPMC and ELM nodes in board files. They will be enabled in
>>>> NAND card device tree overlay.
>>>
>>> Gentle reminder to pick this for -next
>>> GPMC + NAND side patches are already in queue for -next. Thanks.
>>
>> just responding to the main thread: lets hold this back for next window.
>> the bindings need to be in master rc1 prior to the dts getting picked up.
> 
> 
> Any updates?
> 
I'll send out a re-based patch-set soon.

cheers,
-roger

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

end of thread, other threads:[~2022-02-01 19:00 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-08 13:15 [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
2021-12-08 13:15 ` [PATCH v2 1/2] arm64: dts: ti: k3-am64-main: Add GPMC memory controller node Roger Quadros
2021-12-08 13:15 ` [PATCH v2 2/2] arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node Roger Quadros
2021-12-22 17:11 ` [PATCH v2 0/2] arm64: dts: ti: k3-am64-main: Add GPMC & ELM nodes Roger Quadros
2021-12-23 13:28   ` Nishanth Menon
2022-02-01 16:33     ` Nishanth Menon
2022-02-01 19:00       ` Roger Quadros

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