public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Alexander Dahl <post@lespocky.de>
To: Eugen Hristev <eugen.hristev@microchip.com>
Cc: Alexander Dahl <ada@thorsis.com>,
	Durai Manickam KR <durai.manickamkr@microchip.com>,
	Sergiu Moga <sergiu.moga@microchip.com>,
	u-boot@lists.denx.de
Subject: [PATCH 5/5] ARM: dts: at91: sam9x60-curiosity: Add raw NAND flash
Date: Wed,  5 Jul 2023 22:17:01 +0200	[thread overview]
Message-ID: <20230705201701.322372-6-post@lespocky.de> (raw)
In-Reply-To: <20230705201701.322372-1-post@lespocky.de>

From: Alexander Dahl <ada@thorsis.com>

Basically the same as on sam9x60-ek.  Same as in Linux.  NAND flash is
correctly detected when booting into U-Boot:

    U-Boot 2023.07-rc6-00005-g12719f75dc-dirty (Jul 05 2023 - 13:06:35 +0000)

    CPU:   SAM9X60 128MiB DDR2 SiP
    Crystal frequency:       24 MHz
    CPU clock        :      600 MHz
    Master clock     :      200 MHz

    Model: Microchip SAM9X60 Curiosity
    DRAM:  128 MiB
    Core:  145 devices, 22 uclasses, devicetree: separate
    NAND:  512 MiB
    MMC:   sdhci-host@80000000: 0, sdhci-host@90000000: 1
    Loading Environment from FAT... Unable to read "uboot.env" from mmc0:1...
    In:    serial
    Out:   serial
    Err:   serial
    Net:   eth0: ethernet@f802c000
    Hit any key to stop autoboot:  0

Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
 arch/arm/dts/at91-sam9x60_curiosity.dts | 103 ++++++++++++++++++++++++
 1 file changed, 103 insertions(+)

diff --git a/arch/arm/dts/at91-sam9x60_curiosity.dts b/arch/arm/dts/at91-sam9x60_curiosity.dts
index fb59405b24..2547b4527c 100644
--- a/arch/arm/dts/at91-sam9x60_curiosity.dts
+++ b/arch/arm/dts/at91-sam9x60_curiosity.dts
@@ -46,6 +46,71 @@
 	};
 };
 
+&ebi {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_ebi_addr_nand &pinctrl_ebi_data_0_7>;
+	status = "okay";
+
+	nand_controller: nand-controller {
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_nand_oe_we &pinctrl_nand_cs &pinctrl_nand_rb>;
+		status = "okay";
+
+		nand@3 {
+			reg = <0x3 0x0 0x800000>;
+			rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
+			cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>;
+			nand-bus-width = <8>;
+			nand-ecc-mode = "hw";
+			nand-ecc-strength = <8>;
+			nand-ecc-step-size = <512>;
+			nand-on-flash-bbt;
+			label = "atmel_nand";
+
+			partitions {
+				compatible = "fixed-partitions";
+				#address-cells = <1>;
+				#size-cells = <1>;
+
+				at91bootstrap@0 {
+					label = "at91bootstrap";
+					reg = <0x0 0x40000>;
+				};
+
+				uboot@40000 {
+					label = "u-boot";
+					reg = <0x40000 0xc0000>;
+				};
+
+				ubootenvred@100000 {
+					label = "U-Boot Env Redundant";
+					reg = <0x100000 0x40000>;
+				};
+
+				ubootenv@140000 {
+					label = "U-Boot Env";
+					reg = <0x140000 0x40000>;
+				};
+
+				dtb@180000 {
+					label = "device tree";
+					reg = <0x180000 0x80000>;
+				};
+
+				kernel@200000 {
+					label = "kernel";
+					reg = <0x200000 0x600000>;
+				};
+
+				rootfs@800000 {
+					label = "rootfs";
+					reg = <0x800000 0x1f800000>;
+				};
+			};
+		};
+	};
+};
+
 &flx0 {
 	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
 	status = "okay";
@@ -74,6 +139,26 @@
 };
 
 &pinctrl {
+	ebi {
+		pinctrl_ebi_data_0_7: ebi-data-lsb-0 {
+			atmel,pins =
+				<AT91_PIOD 6 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 7 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 8 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 9 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 10 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 11 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 12 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 13 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
+		};
+
+		pinctrl_ebi_addr_nand: ebi-addr-0 {
+			atmel,pins =
+				<AT91_PIOD 2 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 3 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
+		};
+	};
+
 	flexcom {
 		pinctrl_flx0: flx0_default {
 			atmel,pins =
@@ -82,6 +167,24 @@
 		};
 	};
 
+	nand {
+		pinctrl_nand_oe_we: nand-oe-we-0 {
+			atmel,pins =
+				<AT91_PIOD 0 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
+				 AT91_PIOD 1 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
+		};
+
+		pinctrl_nand_rb: nand-rb-0 {
+			atmel,pins =
+				<AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
+		};
+
+		pinctrl_nand_cs: nand-cs-0 {
+			atmel,pins =
+				<AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
+		};
+	};
+
 	pinctrl_onewire_tm_default: onewire_tm_default {
 		atmel,pins =
 			<AT91_PIOD 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
-- 
2.30.2


  parent reply	other threads:[~2023-07-05 20:18 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-05 20:16 [PATCH 0/5] ARM: dts: at91: Improve sam9x60-curiosity Alexander Dahl
2023-07-05 20:16 ` [PATCH 1/5] ARM: dts: at91: sam9x60: Better align with upstream dtsi Alexander Dahl
2023-07-05 20:16 ` [PATCH 2/5] ARM: dts: at91: sam9x60-curiosity: Fix EEPROM type Alexander Dahl
2023-07-06  8:06   ` Eugen Hristev
2023-07-06  8:12     ` Eugen Hristev
2023-07-06  8:30   ` Durai.ManickamKR
2023-07-06  9:08     ` Durai.ManickamKR
2023-07-05 20:16 ` [PATCH 3/5] ARM: dts: at91: sam9x60: Change i2c compatible Alexander Dahl
2023-07-06  8:32   ` Durai.ManickamKR
2023-07-06  8:59     ` Alexander Dahl
2023-07-06  9:09     ` Durai.ManickamKR
2023-07-05 20:17 ` [PATCH 4/5] ARM: dts: at91: sam9x60-curiosity: Improve alignment with upstream Alexander Dahl
2023-07-05 20:17 ` Alexander Dahl [this message]
2023-08-02  7:29 ` [PATCH 0/5] ARM: dts: at91: Improve sam9x60-curiosity Eugen Hristev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230705201701.322372-6-post@lespocky.de \
    --to=post@lespocky.de \
    --cc=ada@thorsis.com \
    --cc=durai.manickamkr@microchip.com \
    --cc=eugen.hristev@microchip.com \
    --cc=sergiu.moga@microchip.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox