Commit 1004a297 authored by Boris Brezillon's avatar Boris Brezillon Committed by Alexandre Belloni

ARM: dts: at91: Switch to the new NAND bindings

Use the new EBI/NAND bindings to declare NAND chips and remove old NAND
nodes along the way.

Note that we keep using old bindings in at91rm9200.dtsi because this
SoC is not supported by the EBI driver.
Signed-off-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
Tested-by: default avatarPeter Rosin <peda@axentia.se>
Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@free-electrons.com>
parent d9c41bf3
...@@ -62,32 +62,36 @@ usb0: ohci@500000 { ...@@ -62,32 +62,36 @@ usb0: ohci@500000 {
status = "okay"; status = "okay";
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; nand_controller: nand-controller {
nand-ecc-mode = "soft"; nand: nand@3 {
nand-on-flash-bbt; partitions {
status = "okay"; bootstrap@0 {
label = "bootstrap";
bootstrap@0 { reg = <0x0 0x40000>;
label = "bootstrap"; };
reg = <0x0 0x40000>;
}; uboot@40000 {
label = "uboot";
uboot@40000 { reg = <0x40000 0x80000>;
label = "uboot"; };
reg = <0x40000 0x80000>;
}; ubootenv@c0000 {
ubootenv@c0000 { label = "ubootenv";
label = "ubootenv"; reg = <0xc0000 0x40000>;
reg = <0xc0000 0x40000>; };
};
kernel@100000 { kernel@100000 {
label = "kernel"; label = "kernel";
reg = <0x100000 0x400000>; reg = <0x100000 0x400000>;
}; };
rootfs@500000 {
label = "rootfs"; rootfs@500000 {
reg = <0x500000 0x7b00000>; label = "rootfs";
reg = <0x500000 0x7b00000>;
};
};
};
}; };
}; };
}; };
......
...@@ -83,25 +83,44 @@ watchdog@fffffd40 { ...@@ -83,25 +83,44 @@ watchdog@fffffd40 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
barebox@0 { nand_controller: nand-controller {
label = "barebox"; status = "okay";
reg = <0x0 0x58000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
u_boot_env@58000 { nand@3 {
label = "u_boot_env"; reg = <0x3 0x0 0x800000>;
reg = <0x58000 0x8000>; rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
ubi@60000 { nand-ecc-mode = "soft";
label = "ubi"; nand-on-flash-bbt;
reg = <0x60000 0x1FA0000>; label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
barebox@0 {
label = "barebox";
reg = <0x0 0x58000>;
};
u_boot_env@58000 {
label = "u_boot_env";
reg = <0x58000 0x8000>;
};
ubi@60000 {
label = "ubi";
reg = <0x60000 0x1FA0000>;
};
};
};
}; };
}; };
......
...@@ -82,38 +82,61 @@ watchdog@fffffe40 { ...@@ -82,38 +82,61 @@ watchdog@fffffe40 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_addr_nand
nand-ecc-mode = "hw"; &pinctrl_ebi_data_0_7>;
atmel,has-pmecc; /* Enable PMECC */ pinctrl-names = "default";
atmel,pmecc-cap = <4>;
atmel,pmecc-sector-size = <512>;
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>; pinctrl-0 = <&pinctrl_nand_oe_we
}; &pinctrl_nand_cs
&pinctrl_nand_rb>;
uboot@40000 { pinctrl-names = "default";
label = "u-boot";
reg = <0x40000 0x80000>; nand@3 {
}; reg = <0x3 0x0 0x800000>;
rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
ubootenv@c0000 { cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>;
label = "U-Boot Env"; nand-bus-width = <8>;
reg = <0xc0000 0x140000>; nand-ecc-mode = "hw";
}; nand-ecc-strength = <4>;
nand-ecc-step-size = <512>;
kernel@200000 { nand-on-flash-bbt;
label = "kernel"; label = "atmel_nand";
reg = <0x200000 0x600000>;
}; partitions {
compatible = "fixed-partitions";
rootfs@800000 { #address-cells = <1>;
label = "rootfs"; #size-cells = <1>;
reg = <0x800000 0x0f800000>;
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>;
};
uboot@40000 {
label = "u-boot";
reg = <0x40000 0x80000>;
};
ubootenv@c0000 {
label = "U-Boot Env";
reg = <0xc0000 0x140000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x0f800000>;
};
};
};
}; };
}; };
}; };
......
...@@ -59,19 +59,39 @@ usb0: ohci@500000 { ...@@ -59,19 +59,39 @@ usb0: ohci@500000 {
status = "okay"; status = "okay";
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
status = "okay"; status = "okay";
bootstrap@0 { nand_controller: nand-controller {
label = "bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
ubi@20000 { nand@3 {
label = "ubi"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x7fe0000>; rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
bootstrap@0 {
label = "bootstrap";
reg = <0x0 0x20000>;
};
ubi@20000 {
label = "ubi";
reg = <0x20000 0x7fe0000>;
};
};
};
}; };
}; };
}; };
......
...@@ -141,23 +141,40 @@ usb2: ehci@00700000 { ...@@ -141,23 +141,40 @@ usb2: ehci@00700000 {
status = "okay"; status = "okay";
}; };
nand0: nand@60000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_nand_addr>;
nand-ecc-mode = "hw"; pinctrl-names = "default";
atmel,has-pmecc;
atmel,pmecc-cap = <4>;
atmel,pmecc-sector-size = <512>;
nand-on-flash-bbt;
status = "okay"; status = "okay";
bootstrap@0 { nand_controller: nand-controller {
label = "bootstrap"; status = "okay";
reg = <0x0 0x20000>;
}; nand@3 {
reg = <0x3 0x0 0x2>;
atmel,rb = <0>;
nand-bus-width = <8>;
nand-ecc-mode = "hw";
nand-ecc-strength = <4>;
nand-ecc-step-size = <512>;
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
bootstrap@0 {
label = "bootstrap";
reg = <0x0 0x20000>;
};
ubi@20000 { ubi@20000 {
label = "ubi"; label = "ubi";
reg = <0x20000 0x7fe0000>; reg = <0x20000 0x7fe0000>;
};
};
};
}; };
}; };
}; };
......
...@@ -68,6 +68,49 @@ usb1: ehci@00700000 { ...@@ -68,6 +68,49 @@ usb1: ehci@00700000 {
status = "okay"; status = "okay";
}; };
ebi: ebi@10000000 {
pinctrl-0 = <&pinctrl_ebi_addr_nand
&pinctrl_ebi_data_0_7>;
pinctrl-names = "default";
status = "okay";
nand_controller: nand-controller {
status = "okay";
pinctrl-0 = <&pinctrl_nand_oe_we
&pinctrl_nand_cs
&pinctrl_nand_rb>;
pinctrl-names = "default";
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 = <4>;
nand-ecc-step-size = <512>;
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
bootstrap@0 {
label = "bootstrap";
reg = <0x0 0x20000>;
};
ubi@20000 {
label = "ubi";
reg = <0x20000 0x7fe0000>;
};
};
};
};
};
nand0: nand@40000000 { nand0: nand@40000000 {
nand-bus-width = <8>; nand-bus-width = <8>;
nand-ecc-mode = "hw"; nand-ecc-mode = "hw";
...@@ -77,15 +120,6 @@ nand0: nand@40000000 { ...@@ -77,15 +120,6 @@ nand0: nand@40000000 {
nand-on-flash-bbt; nand-on-flash-bbt;
status = "okay"; status = "okay";
bootstrap@0 {
label = "bootstrap";
reg = <0x0 0x20000>;
};
ubi@20000 {
label = "ubi";
reg = <0x20000 0x7fe0000>;
};
}; };
}; };
......
...@@ -37,13 +37,24 @@ eeprom@51 { ...@@ -37,13 +37,24 @@ eeprom@51 {
}; };
}; };
&nand0 { &ebi {
pinctrl-0 = <&pinctrl_ebi_nand_addr>;
pinctrl-names = "default";
status = "okay"; status = "okay";
};
nand-bus-width = <8>; &nand_controller {
nand-ecc-mode = "hw"; status = "okay";
atmel,has-pmecc;
atmel,pmecc-cap = <4>; nand: nand@3 {
atmel,pmecc-sector-size = <512>; reg = <0x3 0x0 0x2>;
nand-on-flash-bbt; atmel,rb = <0>;
nand-bus-width = <8>;
nand-ecc-mode = "hw";
nand-ecc-strength = <4>;
nand-ecc-step-size = <512>;
nand-on-flash-bbt;
label = "atmel_nand";
};
}; };
...@@ -107,50 +107,69 @@ usb0: ohci@500000 { ...@@ -107,50 +107,69 @@ usb0: ohci@500000 {
status = "okay"; status = "okay";
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bareboxenv@60000 { nand-ecc-mode = "soft";
label = "bareboxenv"; nand-on-flash-bbt;
reg = <0x60000 0x20000>; label = "atmel_nand";
};
partitions {
bareboxenv2@80000 { compatible = "fixed-partitions";
label = "bareboxenv2"; #address-cells = <1>;
reg = <0x80000 0x20000>; #size-cells = <1>;
};
at91bootstrap@0 {
oftree@a0000 { label = "at91bootstrap";
label = "oftree"; reg = <0x0 0x20000>;
reg = <0xa0000 0x20000>; };
};
barebox@20000 {
kernel@c0000 { label = "barebox";
label = "kernel"; reg = <0x20000 0x40000>;
reg = <0xc0000 0x400000>; };
};
bareboxenv@60000 {
rootfs@4c0000 { label = "bareboxenv";
label = "rootfs"; reg = <0x60000 0x20000>;
reg = <0x4c0000 0x7800000>; };
};
bareboxenv2@80000 {
data@7cc0000 { label = "bareboxenv2";
label = "data"; reg = <0x80000 0x20000>;
reg = <0x7cc0000 0x8340000>; };
oftree@a0000 {
label = "oftree";
reg = <0xa0000 0x20000>;
};
kernel@c0000 {
label = "kernel";
reg = <0xc0000 0x400000>;
};
rootfs@4c0000 {
label = "rootfs";
reg = <0x4c0000 0x7800000>;
};
data@7cc0000 {
label = "data";
reg = <0x7cc0000 0x8340000>;
};
};
};
}; };
}; };
}; };
......
...@@ -235,46 +235,6 @@ pinctrl_usba_vbus: usba_vbus { ...@@ -235,46 +235,6 @@ pinctrl_usba_vbus: usba_vbus {
}; };
}; };
nand0: nand@60000000 {
nand-bus-width = <8>;
nand-ecc-mode = "hw";
atmel,has-pmecc;
atmel,pmecc-cap = <4>;
atmel,pmecc-sector-size = <512>;
nand-on-flash-bbt;
status = "okay";
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>;
};
bootloader@40000 {
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x0f800000>;
};
};
usb0: gadget@00500000 { usb0: gadget@00500000 {
atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */ atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -294,6 +254,63 @@ &pioE 4 GPIO_ACTIVE_LOW ...@@ -294,6 +254,63 @@ &pioE 4 GPIO_ACTIVE_LOW
usb2: ehci@00700000 { usb2: ehci@00700000 {
status = "okay"; status = "okay";
}; };
ebi: ebi@10000000 {
pinctrl-0 = <&pinctrl_ebi_nand_addr>;
pinctrl-names = "default";
status = "okay";
nand_controller: nand-controller {
status = "okay";
nand@3 {
reg = <0x3 0x0 0x2>;
atmel,rb = <0>;
nand-bus-width = <8>;
nand-ecc-mode = "hw";
nand-ecc-strength = <4>;
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>;
};
bootloader@40000 {
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x0f800000>;
};
};
};
};
};
}; };
vcc_mmc0_reg: fixedregulator_mmc0 { vcc_mmc0_reg: fixedregulator_mmc0 {
......
...@@ -190,41 +190,60 @@ usb2: ehci@00600000 { ...@@ -190,41 +190,60 @@ usb2: ehci@00600000 {
status = "okay"; status = "okay";
}; };
nand0: nand@80000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_cs3 &pinctrl_ebi_nrd_nandoe
nand-ecc-mode = "hw"; &pinctrl_ebi_nwe_nandwe &pinctrl_ebi_nandrdy
nand-on-flash-bbt; &pinctrl_ebi_data_0_7 &pinctrl_ebi_nand_addr>;
atmel,has-pmecc; pinctrl-names = "default";
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>;
};
bootloader@40000 {
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 { nand@3 {
label = "rootfs"; reg = <0x3 0x0 0x2>;
reg = <0x800000 0x0f800000>; atmel,rb = <0>;
nand-bus-width = <8>;
nand-ecc-mode = "hw";
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>;
};
bootloader@40000 {
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x0f800000>;
};
};
};
}; };
}; };
}; };
......
...@@ -236,41 +236,60 @@ usb2: ehci@00600000 { ...@@ -236,41 +236,60 @@ usb2: ehci@00600000 {
status = "okay"; status = "okay";
}; };
nand0: nand@80000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_cs3 &pinctrl_ebi_nrd_nandoe
nand-ecc-mode = "hw"; &pinctrl_ebi_nwe_nandwe &pinctrl_ebi_nandrdy
nand-on-flash-bbt; &pinctrl_ebi_data_0_7 &pinctrl_ebi_nand_addr>;
atmel,has-pmecc; pinctrl-names = "default";
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>;
};
bootloader@40000 {
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 { nand@3 {
label = "rootfs"; reg = <0x3 0x0 0x2>;
reg = <0x800000 0x0f800000>; atmel,rb = <0>;
nand-bus-width = <8>;
nand-ecc-mode = "hw";
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>;
};
bootloader@40000 {
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x0f800000>;
};
};
};
}; };
}; };
}; };
......
...@@ -161,45 +161,51 @@ alarm-green { ...@@ -161,45 +161,51 @@ alarm-green {
}; };
}; };
&nand0 { &nand {
at91bootstrap@0 { partitions {
label = "at91bootstrap"; compatible = "fixed-partitions";
reg = <0x0 0x40000>; #address-cells = <1>;
}; #size-cells = <1>;
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>;
};
barebox@40000 { barebox@40000 {
label = "bootloader"; label = "bootloader";
reg = <0x40000 0x60000>; reg = <0x40000 0x60000>;
}; };
bareboxenv@c0000 { bareboxenv@c0000 {
label = "bareboxenv"; label = "bareboxenv";
reg = <0xc0000 0x40000>; reg = <0xc0000 0x40000>;
}; };
bareboxenv2@100000 { bareboxenv2@100000 {
label = "bareboxenv2"; label = "bareboxenv2";
reg = <0x100000 0x40000>; reg = <0x100000 0x40000>;
}; };
oftree@180000 { oftree@180000 {
label = "oftree"; label = "oftree";
reg = <0x180000 0x20000>; reg = <0x180000 0x20000>;
}; };
kernel@200000 { kernel@200000 {
label = "kernel"; label = "kernel";
reg = <0x200000 0x500000>; reg = <0x200000 0x500000>;
}; };
rootfs@800000 { rootfs@800000 {
label = "rootfs"; label = "rootfs";
reg = <0x800000 0x0f800000>; reg = <0x800000 0x0f800000>;
}; };
ovlfs@10000000 { ovlfs@10000000 {
label = "ovlfs"; label = "ovlfs";
reg = <0x10000000 0x10000000>; reg = <0x10000000 0x10000000>;
};
}; };
}; };
......
...@@ -532,10 +532,14 @@ pinctrl_uart1: uart1-0 { ...@@ -532,10 +532,14 @@ pinctrl_uart1: uart1-0 {
}; };
nand { nand {
pinctrl_nand: nand-0 { pinctrl_nand_rb: nand-rb-0 {
atmel,pins = atmel,pins =
<AT91_PIOC 13 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PC13 gpio RDY pin pull_up */ <AT91_PIOC 13 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PC14 gpio enable pin pull_up */ };
pinctrl_nand_cs: nand-cs-0 {
atmel,pins =
<AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
}; };
}; };
...@@ -995,24 +999,6 @@ gpbr: syscon@fffffd50 { ...@@ -995,24 +999,6 @@ gpbr: syscon@fffffd50 {
}; };
}; };
nand0: nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x40000000 0x10000000
0xffffe800 0x200
>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioC 13 GPIO_ACTIVE_HIGH
&pioC 14 GPIO_ACTIVE_HIGH
0
>;
status = "disabled";
};
usb0: ohci@500000 { usb0: ohci@500000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci"; compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00500000 0x100000>; reg = <0x00500000 0x100000>;
......
...@@ -118,22 +118,6 @@ nand_controller: nand-controller { ...@@ -118,22 +118,6 @@ nand_controller: nand-controller {
}; };
}; };
nand0: nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x40000000 0x10000000>;
atmel,nand-addr-offset = <22>;
atmel,nand-cmd-offset = <21>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioC 15 GPIO_ACTIVE_HIGH>,
<&pioC 14 GPIO_ACTIVE_HIGH>,
<0>;
status = "disabled";
};
apb { apb {
compatible = "simple-bus"; compatible = "simple-bus";
#address-cells = <1>; #address-cells = <1>;
...@@ -394,9 +378,13 @@ pinctrl_usart2_cts: usart2_cts-0 { ...@@ -394,9 +378,13 @@ pinctrl_usart2_cts: usart2_cts-0 {
}; };
nand { nand {
pinctrl_nand: nand-0 { pinctrl_nand_rb: nand-rb-0 {
atmel,pins =
<AT91_PIOC 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
};
pinctrl_nand_cs: nand-cs-0 {
atmel,pins = atmel,pins =
<AT91_PIOC 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>,
<AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; <AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
}; };
}; };
......
...@@ -68,40 +68,59 @@ timing0: timing0 { ...@@ -68,40 +68,59 @@ timing0: timing0 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
bootloader@40000 { nand@3 {
label = "bootloader"; reg = <0x3 0x0 0x800000>;
reg = <0x40000 0x80000>; rb-gpios = <&pioC 15 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bootloaderenv@c0000 { nand-ecc-mode = "soft";
label = "bootloader env"; nand-on-flash-bbt;
reg = <0xc0000 0xc0000>; label = "atmel_nand";
};
partitions {
dtb@180000 { compatible = "fixed-partitions";
label = "device tree"; #address-cells = <1>;
reg = <0x180000 0x80000>; #size-cells = <1>;
};
at91bootstrap@0 {
kernel@200000 { label = "at91bootstrap";
label = "kernel"; reg = <0x0 0x40000>;
reg = <0x200000 0x600000>; };
};
bootloader@40000 {
rootfs@800000 { label = "bootloader";
label = "rootfs"; reg = <0x40000 0x80000>;
reg = <0x800000 0x0f800000>; };
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x0f800000>;
};
};
};
}; };
}; };
......
...@@ -487,10 +487,14 @@ pinctrl_usart2_cts: usart2_cts-0 { ...@@ -487,10 +487,14 @@ pinctrl_usart2_cts: usart2_cts-0 {
}; };
nand { nand {
pinctrl_nand: nand-0 { pinctrl_nand_rb: nand-rb-0 {
atmel,pins = atmel,pins =
<AT91_PIOA 22 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PA22 gpio RDY pin pull_up*/ <AT91_PIOA 22 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PD15 gpio enable pin pull_up */ };
pinctrl_nand_cs: nand-cs-0 {
atmel,pins =
<AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
}; };
}; };
...@@ -1006,24 +1010,6 @@ fb0: fb@0x00700000 { ...@@ -1006,24 +1010,6 @@ fb0: fb@0x00700000 {
status = "disabled"; status = "disabled";
}; };
nand0: nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x40000000 0x10000000
0xffffe000 0x200
>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioA 22 GPIO_ACTIVE_HIGH
&pioD 15 GPIO_ACTIVE_HIGH
0
>;
status = "disabled";
};
usb0: ohci@00a00000 { usb0: ohci@00a00000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci"; compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00a00000 0x100000>; reg = <0x00a00000 0x100000>;
......
...@@ -125,50 +125,69 @@ timing0: timing0 { ...@@ -125,50 +125,69 @@ timing0: timing0 {
}; };
}; };
nand0: nand@40000000 { ebi0: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt = <1>;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bareboxenv@60000 { nand-ecc-mode = "soft";
label = "bareboxenv"; nand-on-flash-bbt;
reg = <0x60000 0x20000>; label = "atmel_nand";
};
partitions {
bareboxenv2@80000 { compatible = "fixed-partitions";
label = "bareboxenv2"; #address-cells = <1>;
reg = <0x80000 0x20000>; #size-cells = <1>;
};
at91bootstrap@0 {
oftree@80000 { label = "at91bootstrap";
label = "oftree"; reg = <0x0 0x20000>;
reg = <0xa0000 0x20000>; };
};
barebox@20000 {
kernel@a0000 { label = "barebox";
label = "kernel"; reg = <0x20000 0x40000>;
reg = <0xc0000 0x400000>; };
};
bareboxenv@60000 {
rootfs@4a0000 { label = "bareboxenv";
label = "rootfs"; reg = <0x60000 0x20000>;
reg = <0x4c0000 0x7800000>; };
};
bareboxenv2@80000 {
data@7ca0000 { label = "bareboxenv2";
label = "data"; reg = <0x80000 0x20000>;
reg = <0x7cc0000 0x8340000>; };
oftree@80000 {
label = "oftree";
reg = <0xa0000 0x20000>;
};
kernel@a0000 {
label = "kernel";
reg = <0xc0000 0x400000>;
};
rootfs@4a0000 {
label = "rootfs";
reg = <0x4c0000 0x7800000>;
};
data@7ca0000 {
label = "data";
reg = <0x7cc0000 0x8340000>;
};
};
};
}; };
}; };
......
...@@ -123,50 +123,69 @@ gpbr: syscon@fffffd50 { ...@@ -123,50 +123,69 @@ gpbr: syscon@fffffd50 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bareboxenv@60000 { nand-ecc-mode = "soft";
label = "bareboxenv"; nand-on-flash-bbt;
reg = <0x60000 0x20000>; label = "atmel_nand";
};
partitions {
bareboxenv2@80000 { compatible = "fixed-partitions";
label = "bareboxenv2"; #address-cells = <1>;
reg = <0x80000 0x20000>; #size-cells = <1>;
};
at91bootstrap@0 {
oftree@80000 { label = "at91bootstrap";
label = "oftree"; reg = <0x0 0x20000>;
reg = <0xa0000 0x20000>; };
};
barebox@20000 {
kernel@a0000 { label = "barebox";
label = "kernel"; reg = <0x20000 0x40000>;
reg = <0xc0000 0x400000>; };
};
bareboxenv@60000 {
rootfs@4a0000 { label = "bareboxenv";
label = "rootfs"; reg = <0x60000 0x20000>;
reg = <0x4c0000 0x7800000>; };
};
bareboxenv2@80000 {
data@7ca0000 { label = "bareboxenv2";
label = "data"; reg = <0x80000 0x20000>;
reg = <0x7cc0000 0x8340000>; };
oftree@80000 {
label = "oftree";
reg = <0xa0000 0x20000>;
};
kernel@a0000 {
label = "kernel";
reg = <0xc0000 0x400000>;
};
rootfs@4a0000 {
label = "rootfs";
reg = <0x4c0000 0x7800000>;
};
data@7ca0000 {
label = "data";
reg = <0x7cc0000 0x8340000>;
};
};
};
}; };
}; };
......
...@@ -611,10 +611,14 @@ pinctrl_usart3_cts: usart3_cts-0 { ...@@ -611,10 +611,14 @@ pinctrl_usart3_cts: usart3_cts-0 {
}; };
nand { nand {
pinctrl_nand: nand-0 { pinctrl_nand_rb: nand-rb-0 {
atmel,pins = atmel,pins =
<AT91_PIOC 8 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PC8 gpio RDY pin pull_up*/ <AT91_PIOC 8 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PC14 gpio enable pin pull_up */ };
pinctrl_nand_cs: nand-cs-0 {
atmel,pins =
<AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
}; };
}; };
...@@ -1288,25 +1292,6 @@ fb0: fb@0x00500000 { ...@@ -1288,25 +1292,6 @@ fb0: fb@0x00500000 {
status = "disabled"; status = "disabled";
}; };
nand0: nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x40000000 0x10000000
0xffffe200 0x200
>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
atmel,nand-has-dma;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioC 8 GPIO_ACTIVE_HIGH
&pioC 14 GPIO_ACTIVE_HIGH
0
>;
status = "disabled";
};
usb0: ohci@00700000 { usb0: ohci@00700000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci"; compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00700000 0x100000>; reg = <0x00700000 0x100000>;
......
...@@ -245,25 +245,44 @@ timing0: timing0 { ...@@ -245,25 +245,44 @@ timing0: timing0 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
boot@0 { nand_controller: nand-controller {
label = "bootstrap/uboot/kernel"; status = "okay";
reg = <0x0 0x400000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
rootfs@400000 { nand@3 {
label = "rootfs"; reg = <0x3 0x0 0x800000>;
reg = <0x400000 0x3C00000>; rb-gpios = <&pioC 8 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot@0 {
label = "bootstrap/uboot/kernel";
reg = <0x0 0x400000>;
};
data@4000000 { rootfs@400000 {
label = "data"; label = "rootfs";
reg = <0x4000000 0xC000000>; reg = <0x400000 0x3C00000>;
};
data@4000000 {
label = "data";
reg = <0x4000000 0xC000000>;
};
};
};
}; };
}; };
......
...@@ -643,10 +643,14 @@ pinctrl_uart1: uart1-0 { ...@@ -643,10 +643,14 @@ pinctrl_uart1: uart1-0 {
}; };
nand { nand {
pinctrl_nand: nand-0 { pinctrl_nand_rb: nand-rb-0 {
atmel,pins = atmel,pins =
<AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD5 gpio RDY pin pull_up*/ <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PD4 gpio enable pin pull_up */ };
pinctrl_nand_cs: nand-cs-0 {
atmel,pins =
<AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
}; };
}; };
...@@ -1014,28 +1018,6 @@ usb1: gadget@f803c000 { ...@@ -1014,28 +1018,6 @@ usb1: gadget@f803c000 {
}; };
}; };
nand0: nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = < 0x40000000 0x10000000
0xffffe000 0x00000600
0xffffe600 0x00000200
0x00108000 0x00018000
>;
atmel,pmecc-lookup-table-offset = <0x0 0x8000>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
atmel,nand-has-dma;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioD 5 GPIO_ACTIVE_HIGH
&pioD 4 GPIO_ACTIVE_HIGH
0
>;
status = "disabled";
};
usb0: ohci@00500000 { usb0: ohci@00500000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci"; compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00500000 0x00100000>; reg = <0x00500000 0x00100000>;
......
...@@ -147,14 +147,26 @@ rtc@fffffeb0 { ...@@ -147,14 +147,26 @@ rtc@fffffeb0 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "hw";
atmel,has-pmecc;
atmel,pmecc-cap = <2>;
atmel,pmecc-sector-size = <512>;
nand-on-flash-bbt;
status = "okay"; status = "okay";
nand_controller: nand-controller {
status = "okay";
pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
pinctrl-names = "default";
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 = "soft";
nand-ecc-strength = <2>;
nand-ecc-step-size = <512>;
nand-on-flash-bbt;
label = "atmel_nand";
};
};
}; };
usb0: ohci@00500000 { usb0: ohci@00500000 {
......
...@@ -117,23 +117,6 @@ nand_controller: nand-controller { ...@@ -117,23 +117,6 @@ nand_controller: nand-controller {
}; };
}; };
nand0: nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x40000000 0x10000000>,
<0xffffe800 0x200>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
atmel,nand-has-dma;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioD 17 GPIO_ACTIVE_HIGH>,
<&pioB 6 GPIO_ACTIVE_HIGH>,
<0>;
status = "disabled";
};
apb { apb {
compatible = "simple-bus"; compatible = "simple-bus";
#address-cells = <1>; #address-cells = <1>;
...@@ -478,6 +461,14 @@ pinctrl_dbgu: dbgu-0 { ...@@ -478,6 +461,14 @@ pinctrl_dbgu: dbgu-0 {
}; };
}; };
ebi {
pinctrl_ebi_addr_nand: ebi-addr-0 {
atmel,pins =
<AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>,
<AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>;
};
};
fb { fb {
pinctrl_fb: fb-0 { pinctrl_fb: fb-0 {
atmel,pins = atmel,pins =
...@@ -542,28 +533,21 @@ pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 { ...@@ -542,28 +533,21 @@ pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
}; };
nand { nand {
pinctrl_nand: nand-0 { pinctrl_nand_rb: nand-rb-0 {
atmel,pins = atmel,pins =
<AT91_PIOD 17 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>, <AT91_PIOD 17 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
<AT91_PIOB 6 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
}; };
pinctrl_nand0_ale_cle: nand_ale_cle-0 { pinctrl_nand_cs: nand-cs-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOB 6 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
<AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>;
}; };
pinctrl_nand0_oe_we: nand_oe_we-0 { pinctrl_nand_oe_we: nand-oe-we-0 {
atmel,pins = atmel,pins =
<AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE>, <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE>,
<AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE>; <AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE>;
}; };
pinctrl_nand0_cs: nand_cs-0 {
atmel,pins =
<AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE>;
};
}; };
pwm0 { pwm0 {
......
...@@ -63,40 +63,63 @@ timing0: timing0 { ...@@ -63,40 +63,63 @@ timing0: timing0 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_addr_nand>;
nand-ecc-mode = "soft"; pinctrl-names = "default";
nand-on-flash-bbt = <1>;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>; pinctrl-0 = <&pinctrl_nand_oe_we
}; &pinctrl_nand_cs
&pinctrl_nand_rb>;
bootloader@40000 { pinctrl-names = "default";
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 { nand@3 {
label = "rootfs"; reg = <0x3 0x0 0x800000>;
reg = <0x800000 0x0f800000>; rb-gpios = <&pioD 17 GPIO_ACTIVE_HIGH>;
cs-gpios = <&pioB 6 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>;
};
bootloader@40000 {
label = "bootloader";
reg = <0x40000 0x80000>;
};
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x0f800000>;
};
};
};
}; };
}; };
......
...@@ -481,6 +481,38 @@ pinctrl_dbgu: dbgu-0 { ...@@ -481,6 +481,38 @@ pinctrl_dbgu: dbgu-0 {
}; };
}; };
ebi {
pinctrl_ebi_data_0_7: ebi-data-lsb-0 {
atmel,pins =
<AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE>;
};
pinctrl_ebi_data_8_15: ebi-data-msb-0 {
atmel,pins =
<AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>;
};
pinctrl_ebi_addr_nand: ebi-addr-0 {
atmel,pins =
<AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE>;
};
};
usart0 { usart0 {
pinctrl_usart0: usart0-0 { pinctrl_usart0: usart0-0 {
atmel,pins = atmel,pins =
...@@ -567,34 +599,20 @@ pinctrl_uart1: uart1-0 { ...@@ -567,34 +599,20 @@ pinctrl_uart1: uart1-0 {
}; };
nand { nand {
pinctrl_nand: nand-0 { pinctrl_nand_oe_we: nand-oe-we-0 {
atmel,pins = atmel,pins =
<AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD0 periph A Read Enable */ <AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE
AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD1 periph A Write Enable */ AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE>;
AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD2 periph A Address Latch Enable */ };
AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD3 periph A Command Latch Enable */
AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD4 gpio Chip Enable pin pull_up */ pinctrl_nand_rb: nand-rb-0 {
AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD5 gpio RDY/BUSY pin pull_up */ atmel,pins =
AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD6 periph A Data bit 0 */ <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD7 periph A Data bit 1 */ };
AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD8 periph A Data bit 2 */
AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD9 periph A Data bit 3 */ pinctrl_nand_cs: nand-cs-0 {
AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD10 periph A Data bit 4 */
AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD11 periph A Data bit 5 */
AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD12 periph A Data bit 6 */
AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD13 periph A Data bit 7 */
};
pinctrl_nand_16bits: nand_16bits-0 {
atmel,pins = atmel,pins =
<AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD14 periph A Data bit 8 */ <AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD15 periph A Data bit 9 */
AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD16 periph A Data bit 10 */
AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD17 periph A Data bit 11 */
AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD18 periph A Data bit 12 */
AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD19 periph A Data bit 13 */
AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD20 periph A Data bit 14 */
AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD21 periph A Data bit 15 */
}; };
}; };
...@@ -1213,28 +1231,6 @@ pwm0: pwm@f8034000 { ...@@ -1213,28 +1231,6 @@ pwm0: pwm@f8034000 {
}; };
}; };
nand0: nand@40000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x40000000 0x10000000
0xffffe000 0x600 /* PMECC Registers */
0xffffe600 0x200 /* PMECC Error Location Registers */
0x00108000 0x18000 /* PMECC looup table in ROM code */
>;
atmel,pmecc-lookup-table-offset = <0x0 0x8000>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
atmel,nand-has-dma;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
gpios = <&pioD 5 GPIO_ACTIVE_HIGH
&pioD 4 GPIO_ACTIVE_HIGH
0
>;
status = "disabled";
};
usb0: ohci@00600000 { usb0: ohci@00600000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci"; compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00600000 0x100000>; reg = <0x00600000 0x100000>;
......
...@@ -37,38 +37,61 @@ rtc@fffffeb0 { ...@@ -37,38 +37,61 @@ rtc@fffffeb0 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_addr_nand
nand-ecc-mode = "hw"; &pinctrl_ebi_data_0_7>;
atmel,has-pmecc; /* Enable PMECC */ pinctrl-names = "default";
atmel,pmecc-cap = <2>;
atmel,pmecc-sector-size = <512>;
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>; pinctrl-0 = <&pinctrl_nand_oe_we
}; &pinctrl_nand_cs
&pinctrl_nand_rb>;
uboot@40000 { pinctrl-names = "default";
label = "u-boot";
reg = <0x40000 0x80000>; nand@3 {
}; reg = <0x3 0x0 0x800000>;
rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
ubootenv@c0000 { cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>;
label = "U-Boot Env"; nand-bus-width = <8>;
reg = <0xc0000 0x140000>; nand-ecc-mode = "hw";
}; nand-ecc-strength = <2>;
nand-ecc-step-size = <512>;
kernel@200000 { nand-on-flash-bbt;
label = "kernel"; label = "atmel_nand";
reg = <0x200000 0x600000>;
}; partitions {
compatible = "fixed-partitions";
rootfs@800000 { #address-cells = <1>;
label = "rootfs"; #size-cells = <1>;
reg = <0x800000 0x1f800000>;
at91bootstrap@0 {
label = "at91bootstrap";
reg = <0x0 0x40000>;
};
uboot@40000 {
label = "u-boot";
reg = <0x40000 0x80000>;
};
ubootenv@c0000 {
label = "U-Boot Env";
reg = <0xc0000 0x140000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 {
label = "rootfs";
reg = <0x800000 0x1f800000>;
};
};
};
}; };
}; };
}; };
......
...@@ -55,25 +55,38 @@ usb1: gadget@fffa4000 { ...@@ -55,25 +55,38 @@ usb1: gadget@fffa4000 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
gpios = <0 nand_controller: nand-controller {
&pioC 14 GPIO_ACTIVE_HIGH status = "okay";
0 pinctrl-0 = <&pinctrl_nand_cs>;
>; pinctrl-names = "default";
root@0 { nand: nand@3 {
label = "root"; reg = <0x3 0x0 0x800000>;
reg = <0x0 0x08000000>; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
}; nand-bus-width = <8>;
nand-ecc-mode = "soft";
data@20000 { nand-on-flash-bbt;
label = "data"; label = "atmel_nand";
reg = <0x08000000 0x38000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
root@0 {
label = "root";
reg = <0x0 0x08000000>;
};
data@20000 {
label = "data";
reg = <0x08000000 0x38000000>;
};
};
};
}; };
}; };
......
...@@ -23,20 +23,39 @@ dbgu: serial@fffff200 { ...@@ -23,20 +23,39 @@ dbgu: serial@fffff200 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
boot@0 { nand_controller: nand-controller {
label = "boot"; status = "okay";
reg = <0x0 0x7c0000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
nand@3 {
reg = <0x3 0x0 0x800000>;
rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
label = "atmel_nand";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot@0 {
label = "boot";
reg = <0x0 0x7c0000>;
};
root@07c0000 { root@07c0000 {
label = "root"; label = "root";
reg = <0x7c0000 0x7840000>; reg = <0x7c0000 0x7840000>;
};
};
};
}; };
}; };
}; };
......
...@@ -37,12 +37,10 @@ dbgu: serial@ffffee00 { ...@@ -37,12 +37,10 @@ dbgu: serial@ffffee00 {
}; };
pinctrl@fffff200 { pinctrl@fffff200 {
nand {
board { pinctrl_nand_rb: nand-rb-0 {
pinctrl_board_nand: nand0-board {
atmel,pins = atmel,pins =
<AT91_PIOD 3 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD3 gpio RDY pin pull_up*/ <AT91_PIOD 3 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PC14 gpio enable pin pull_up */
}; };
}; };
...@@ -71,50 +69,61 @@ macb0: ethernet@fffbc000 { ...@@ -71,50 +69,61 @@ macb0: ethernet@fffbc000 {
phy-mode = "rmii"; phy-mode = "rmii";
status = "okay"; status = "okay";
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
pinctrl-0 = <&pinctrl_board_nand>;
gpios = <&pioD 3 GPIO_ACTIVE_HIGH
&pioC 14 GPIO_ACTIVE_HIGH
0
>;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioD 3 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bareboxenv@60000 { nand-ecc-mode = "soft";
label = "bareboxenv"; nand-on-flash-bbt;
reg = <0x60000 0x1A0000>; label = "atmel_nand";
};
partitions {
kernel@200000 { compatible = "fixed-partitions";
label = "bareboxenv2"; #address-cells = <1>;
reg = <0x200000 0x300000>; #size-cells = <1>;
};
at91bootstrap@0 {
kernel@500000 { label = "at91bootstrap";
label = "root"; reg = <0x0 0x20000>;
reg = <0x500000 0x400000>; };
};
barebox@20000 {
data@900000 { label = "barebox";
label = "data"; reg = <0x20000 0x40000>;
reg = <0x900000 0x8340000>; };
bareboxenv@60000 {
label = "bareboxenv";
reg = <0x60000 0x1A0000>;
};
kernel@200000 {
label = "bareboxenv2";
reg = <0x200000 0x300000>;
};
kernel@500000 {
label = "root";
reg = <0x500000 0x400000>;
};
data@900000 {
label = "data";
reg = <0x900000 0x8340000>;
};
};
};
}; };
}; };
......
...@@ -1569,38 +1569,6 @@ nand_controller: nand-controller { ...@@ -1569,38 +1569,6 @@ nand_controller: nand-controller {
}; };
}; };
nand0: nand@60000000 {
compatible = "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
ranges;
reg = < 0x60000000 0x01000000 /* EBI CS3 */
0xffffc070 0x00000490 /* SMC PMECC regs */
0xffffc500 0x00000100 /* SMC PMECC Error Location regs */
0x00110000 0x00018000 /* ROM code */
>;
interrupts = <5 IRQ_TYPE_LEVEL_HIGH 6>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
atmel,nand-has-dma;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand0_ale_cle>;
atmel,pmecc-lookup-table-offset = <0x0 0x8000>;
status = "disabled";
nfc@70000000 {
compatible = "atmel,sama5d3-nfc";
#address-cells = <1>;
#size-cells = <1>;
reg = <
0x70000000 0x08000000 /* NFC Command Registers */
0xffffc000 0x00000070 /* NFC HSMC regs */
0x00200000 0x00100000 /* NFC SRAM banks */
>;
clocks = <&hsmc_clk>;
};
};
nfc_io: nfc-io@70000000 { nfc_io: nfc-io@70000000 {
compatible = "atmel,sama5d3-nfc-io", "syscon"; compatible = "atmel,sama5d3-nfc-io", "syscon";
reg = <0x70000000 0x8000000>; reg = <0x70000000 0x8000000>;
......
...@@ -36,43 +36,59 @@ spi0: spi@f0004000 { ...@@ -36,43 +36,59 @@ spi0: spi@f0004000 {
}; };
}; };
nand0: nand@60000000 { ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_nand_addr>;
nand-ecc-mode = "hw"; pinctrl-names = "default";
atmel,has-pmecc;
atmel,pmecc-cap = <4>;
atmel,pmecc-sector-size = <512>;
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>;
};
bootloader@40000 { nand@3 {
label = "bootloader"; reg = <0x3 0x0 0x2>;
reg = <0x40000 0x80000>; atmel,rb = <0>;
}; nand-ecc-mode = "hw";
nand-ecc-strength = <4>;
nand-ecc-step-size = <512>;
nand-on-flash-bbt;
label = "atmel_nand";
bootloaderenv@c0000 { partitions {
label = "bootloader env"; compatible = "fixed-partitions";
reg = <0xc0000 0xc0000>; #address-cells = <1>;
}; #size-cells = <1>;
dtb@180000 { at91bootstrap@0 {
label = "device tree"; label = "at91bootstrap";
reg = <0x180000 0x80000>; reg = <0x0 0x40000>;
}; };
kernel@200000 { bootloader@40000 {
label = "kernel"; label = "bootloader";
reg = <0x200000 0x600000>; reg = <0x40000 0x80000>;
}; };
bootloaderenv@c0000 {
label = "bootloader env";
reg = <0xc0000 0xc0000>;
};
dtb@180000 {
label = "device tree";
reg = <0x180000 0x80000>;
};
kernel@200000 {
label = "kernel";
reg = <0x200000 0x600000>;
};
rootfs@800000 { rootfs@800000 {
label = "rootfs"; label = "rootfs";
reg = <0x800000 0x0f800000>; reg = <0x800000 0x0f800000>;
};
};
};
}; };
}; };
}; };
......
...@@ -148,43 +148,60 @@ vddfuse_reg: LDO_REG2 { ...@@ -148,43 +148,60 @@ vddfuse_reg: LDO_REG2 {
}; };
}; };
nand0: nand@60000000 { ebi: ebi@10000000 {
nand-bus-width = <8>; pinctrl-0 = <&pinctrl_ebi_nand_addr>;
nand-ecc-mode = "hw"; pinctrl-names = "default";
atmel,has-pmecc;
atmel,pmecc-cap = <4>;
atmel,pmecc-sector-size = <512>;
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x40000>;
}; nand@3 {
reg = <0x3 0x0 0x2>;
atmel,rb = <0>;
nand-bus-width = <8>;
nand-ecc-mode = "hw";
nand-ecc-strength = <4>;
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>;
};
bootloader@40000 { bootloader@40000 {
label = "bootloader"; label = "bootloader";
reg = <0x40000 0x80000>; reg = <0x40000 0x80000>;
}; };
bootloaderenv@c0000 { bootloaderenv@c0000 {
label = "bootloader env"; label = "bootloader env";
reg = <0xc0000 0xc0000>; reg = <0xc0000 0xc0000>;
}; };
dtb@180000 { dtb@180000 {
label = "device tree"; label = "device tree";
reg = <0x180000 0x80000>; reg = <0x180000 0x80000>;
}; };
kernel@200000 { kernel@200000 {
label = "kernel"; label = "kernel";
reg = <0x200000 0x600000>; reg = <0x200000 0x600000>;
}; };
rootfs@800000 { rootfs@800000 {
label = "rootfs"; label = "rootfs";
reg = <0x800000 0x0f800000>; reg = <0x800000 0x0f800000>;
};
};
};
}; };
}; };
}; };
......
...@@ -312,37 +312,6 @@ nand_controller: nand-controller { ...@@ -312,37 +312,6 @@ nand_controller: nand-controller {
}; };
}; };
nand0: nand@80000000 {
compatible = "atmel,sama5d4-nand", "atmel,at91rm9200-nand";
#address-cells = <1>;
#size-cells = <1>;
ranges;
reg = < 0x80000000 0x08000000 /* EBI CS3 */
0xfc05c070 0x00000490 /* SMC PMECC regs */
0xfc05c500 0x00000100 /* SMC PMECC Error Location regs */
>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 6>;
atmel,nand-addr-offset = <21>;
atmel,nand-cmd-offset = <22>;
atmel,nand-has-dma;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_nand>;
status = "disabled";
nfc@90000000 {
compatible = "atmel,sama5d3-nfc";
#address-cells = <1>;
#size-cells = <1>;
reg = <
0x90000000 0x08000000 /* NFC Command Registers */
0xfc05c000 0x00000070 /* NFC HSMC regs */
0x00100000 0x00100000 /* NFC SRAM banks */
>;
clocks = <&hsmc_clk>;
atmel,write-by-sram;
};
};
nfc_io: nfc-io@90000000 { nfc_io: nfc-io@90000000 {
compatible = "atmel,sama5d3-nfc-io", "syscon"; compatible = "atmel,sama5d3-nfc-io", "syscon";
reg = <0x90000000 0x8000000>; reg = <0x90000000 0x8000000>;
......
...@@ -32,50 +32,69 @@ dbgu: serial@fffff200 { ...@@ -32,50 +32,69 @@ dbgu: serial@fffff200 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
label = "atmel_nand";
bareboxenv@60000 { partitions {
label = "bareboxenv"; compatible = "fixed-partitions";
reg = <0x60000 0x20000>; #address-cells = <1>;
}; #size-cells = <1>;
bareboxenv2@80000 { at91bootstrap@0 {
label = "bareboxenv2"; label = "at91bootstrap";
reg = <0x80000 0x20000>; reg = <0x0 0x20000>;
}; };
oftree@80000 { barebox@20000 {
label = "oftree"; label = "barebox";
reg = <0xa0000 0x20000>; reg = <0x20000 0x40000>;
}; };
kernel@a0000 { bareboxenv@60000 {
label = "kernel"; label = "bareboxenv";
reg = <0xc0000 0x400000>; reg = <0x60000 0x20000>;
}; };
rootfs@4a0000 { bareboxenv2@80000 {
label = "rootfs"; label = "bareboxenv2";
reg = <0x4c0000 0x7800000>; reg = <0x80000 0x20000>;
}; };
oftree@80000 {
label = "oftree";
reg = <0xa0000 0x20000>;
};
kernel@a0000 {
label = "kernel";
reg = <0xc0000 0x400000>;
};
rootfs@4a0000 {
label = "rootfs";
reg = <0x4c0000 0x7800000>;
};
data@7ca0000 { data@7ca0000 {
label = "data"; label = "data";
reg = <0x7cc0000 0x8340000>; reg = <0x7cc0000 0x8340000>;
};
};
};
}; };
}; };
}; };
......
...@@ -42,50 +42,69 @@ usb1: gadget@fff78000 { ...@@ -42,50 +42,69 @@ usb1: gadget@fff78000 {
}; };
}; };
nand0: nand@40000000 { ebi0: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bareboxenv@60000 { nand-ecc-mode = "soft";
label = "bareboxenv"; nand-on-flash-bbt;
reg = <0x60000 0x20000>; label = "atmel_nand";
};
partitions {
bareboxenv2@80000 { compatible = "fixed-partitions";
label = "bareboxenv2"; #address-cells = <1>;
reg = <0x80000 0x20000>; #size-cells = <1>;
};
at91bootstrap@0 {
oftree@80000 { label = "at91bootstrap";
label = "oftree"; reg = <0x0 0x20000>;
reg = <0xa0000 0x20000>; };
};
barebox@20000 {
kernel@a0000 { label = "barebox";
label = "kernel"; reg = <0x20000 0x40000>;
reg = <0xc0000 0x400000>; };
};
bareboxenv@60000 {
rootfs@4a0000 { label = "bareboxenv";
label = "rootfs"; reg = <0x60000 0x20000>;
reg = <0x4c0000 0x7800000>; };
};
bareboxenv2@80000 {
data@7ca0000 { label = "bareboxenv2";
label = "data"; reg = <0x80000 0x20000>;
reg = <0x7cc0000 0x8340000>; };
oftree@80000 {
label = "oftree";
reg = <0xa0000 0x20000>;
};
kernel@a0000 {
label = "kernel";
reg = <0xc0000 0x400000>;
};
rootfs@4a0000 {
label = "rootfs";
reg = <0x4c0000 0x7800000>;
};
data@7ca0000 {
label = "data";
reg = <0x7cc0000 0x8340000>;
};
};
};
}; };
}; };
}; };
......
...@@ -34,50 +34,69 @@ usb1: gadget@fffa4000 { ...@@ -34,50 +34,69 @@ usb1: gadget@fffa4000 {
}; };
}; };
nand0: nand@40000000 { ebi: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bareboxenv@60000 { nand-ecc-mode = "soft";
label = "bareboxenv"; nand-on-flash-bbt;
reg = <0x60000 0x20000>; label = "atmel_nand";
};
partitions {
bareboxenv2@80000 { compatible = "fixed-partitions";
label = "bareboxenv2"; #address-cells = <1>;
reg = <0x80000 0x20000>; #size-cells = <1>;
};
at91bootstrap@0 {
oftree@80000 { label = "at91bootstrap";
label = "oftree"; reg = <0x0 0x20000>;
reg = <0xa0000 0x20000>; };
};
barebox@20000 {
kernel@a0000 { label = "barebox";
label = "kernel"; reg = <0x20000 0x40000>;
reg = <0xc0000 0x400000>; };
};
bareboxenv@60000 {
rootfs@4a0000 { label = "bareboxenv";
label = "rootfs"; reg = <0x60000 0x20000>;
reg = <0x4c0000 0x7800000>; };
};
bareboxenv2@80000 {
data@7ca0000 { label = "bareboxenv2";
label = "data"; reg = <0x80000 0x20000>;
reg = <0x7cc0000 0x8340000>; };
oftree@80000 {
label = "oftree";
reg = <0xa0000 0x20000>;
};
kernel@a0000 {
label = "kernel";
reg = <0xc0000 0x400000>;
};
rootfs@4a0000 {
label = "rootfs";
reg = <0x4c0000 0x7800000>;
};
data@7ca0000 {
label = "data";
reg = <0x7cc0000 0x8340000>;
};
};
};
}; };
}; };
......
...@@ -62,50 +62,69 @@ shdwc@fffffd10 { ...@@ -62,50 +62,69 @@ shdwc@fffffd10 {
}; };
}; };
nand0: nand@40000000 { ebi0: ebi@10000000 {
nand-bus-width = <8>;
nand-ecc-mode = "soft";
nand-on-flash-bbt;
status = "okay"; status = "okay";
at91bootstrap@0 { nand_controller: nand-controller {
label = "at91bootstrap"; status = "okay";
reg = <0x0 0x20000>; pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
}; pinctrl-names = "default";
barebox@20000 { nand@3 {
label = "barebox"; reg = <0x3 0x0 0x800000>;
reg = <0x20000 0x40000>; rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>;
}; cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
nand-bus-width = <8>;
bareboxenv@60000 { nand-ecc-mode = "soft";
label = "bareboxenv"; nand-on-flash-bbt;
reg = <0x60000 0x20000>; label = "atmel_nand";
};
partitions {
bareboxenv2@80000 { compatible = "fixed-partitions";
label = "bareboxenv2"; #address-cells = <1>;
reg = <0x80000 0x20000>; #size-cells = <1>;
};
at91bootstrap@0 {
oftree@80000 { label = "at91bootstrap";
label = "oftree"; reg = <0x0 0x20000>;
reg = <0xa0000 0x20000>; };
};
barebox@20000 {
kernel@a0000 { label = "barebox";
label = "kernel"; reg = <0x20000 0x40000>;
reg = <0xc0000 0x400000>; };
};
bareboxenv@60000 {
rootfs@4a0000 { label = "bareboxenv";
label = "rootfs"; reg = <0x60000 0x20000>;
reg = <0x4c0000 0x7800000>; };
};
bareboxenv2@80000 {
data@7ca0000 { label = "bareboxenv2";
label = "data"; reg = <0x80000 0x20000>;
reg = <0x7cc0000 0x8340000>; };
oftree@80000 {
label = "oftree";
reg = <0xa0000 0x20000>;
};
kernel@a0000 {
label = "kernel";
reg = <0xc0000 0x400000>;
};
rootfs@4a0000 {
label = "rootfs";
reg = <0x4c0000 0x7800000>;
};
data@7ca0000 {
label = "data";
reg = <0x7cc0000 0x8340000>;
};
};
};
}; };
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment