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
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 <[email protected]>
---
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
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 <[email protected]>
---
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
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(+)
>
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
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
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