public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [u-boot PATCH] arm: dts: k3-am64-main: Add GPMC and ELM nodes
@ 2023-01-04  9:53 Roger Quadros
  2023-01-09 17:29 ` Tom Rini
  0 siblings, 1 reply; 3+ messages in thread
From: Roger Quadros @ 2023-01-04  9:53 UTC (permalink / raw)
  To: dario.binacchi, michael, m.niestroj; +Cc: trini, u-boot, 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

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/arm/dts/k3-am64-main.dtsi | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/arm/dts/k3-am64-main.dtsi b/arch/arm/dts/k3-am64-main.dtsi
index 57b0f53ac96..43b0219f247 100644
--- a/arch/arm/dts/k3-am64-main.dtsi
+++ b/arch/arm/dts/k3-am64-main.dtsi
@@ -877,4 +877,30 @@
 		assigned-clocks = <&k3_clks 126 0>;
 		assigned-clock-parents = <&k3_clks 126 2>;
 	};
+
+	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>;
+		interrupt-controller;
+		#interrupt-cells = <2>;
+		gpio-controller;
+		#gpio-cells = <2>;
+	};
+
+	elm0: ecc@25010000 {
+		compatible = "ti,am64-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";
+	};
 };
-- 
2.34.1


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

* Re: [u-boot PATCH] arm: dts: k3-am64-main: Add GPMC and ELM nodes
  2023-01-04  9:53 [u-boot PATCH] arm: dts: k3-am64-main: Add GPMC and ELM nodes Roger Quadros
@ 2023-01-09 17:29 ` Tom Rini
  2023-01-10 10:31   ` Roger Quadros
  0 siblings, 1 reply; 3+ messages in thread
From: Tom Rini @ 2023-01-09 17:29 UTC (permalink / raw)
  To: Roger Quadros; +Cc: dario.binacchi, michael, m.niestroj, u-boot

[-- Attachment #1: Type: text/plain, Size: 832 bytes --]

On Wed, Jan 04, 2023 at 11:53:06AM +0200, Roger Quadros wrote:

> 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
> 
> 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/arm/dts/k3-am64-main.dtsi | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)

Can we get these changes by re-syncing the k3 dts files with the kernel?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

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

* Re: [u-boot PATCH] arm: dts: k3-am64-main: Add GPMC and ELM nodes
  2023-01-09 17:29 ` Tom Rini
@ 2023-01-10 10:31   ` Roger Quadros
  0 siblings, 0 replies; 3+ messages in thread
From: Roger Quadros @ 2023-01-10 10:31 UTC (permalink / raw)
  To: Tom Rini; +Cc: dario.binacchi, michael, m.niestroj, u-boot



On 09/01/2023 19:29, Tom Rini wrote:
> On Wed, Jan 04, 2023 at 11:53:06AM +0200, Roger Quadros wrote:
> 
>> 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
>>
>> 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/arm/dts/k3-am64-main.dtsi | 26 ++++++++++++++++++++++++++
>>  1 file changed, 26 insertions(+)
> 
> Can we get these changes by re-syncing the k3 dts files with the kernel?
> 

Sure, will send an update.

cheers,
-roger

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

end of thread, other threads:[~2023-01-10 10:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-04  9:53 [u-boot PATCH] arm: dts: k3-am64-main: Add GPMC and ELM nodes Roger Quadros
2023-01-09 17:29 ` Tom Rini
2023-01-10 10:31   ` Roger Quadros

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox