sam9x5: MTD numbering changed
Richard Genoud
richard.genoud at gmail.com
Thu Nov 2 04:17:16 PDT 2017
Hi,
I've got an at91sam9g35-cm based board, with 4 partition on the spi-
dataflas and 5 partitions on the NAND flash.
Before commit 1004a2977bdc ("ARM: dts: at91: Switch to the new NAND bindings"),
the NAND partitions were mtd0-4 and spi-dataflash partitions mtd5-8.
Since commit 1004a2977bdc ("ARM: dts: at91: Switch to the new NAND bindings"),
the spi-dataflash partitions are discovered before the NAND partitions.
So NAND partition became mtd4-8 and spi-dataflash partition mtd0-3.
This broke some script that relied on the mtd numbering.
Updating those scripts to rely on the mtd device name instead of
number is not really a problem. The real problem is when an older
script using mtd numbering is run on the new system : I expect dead
kittens everywhere !
So, I'd like to know if there's a way to force the older numbering ?
(I tried poking around the DTS without succès).
any idea ?
regards,
Richard.
PS:
DTS looks like that:
/dts-v1/;
#include "at91sam9g35.dtsi"
#include "at91sam9x5cm.dtsi"
/ {
ahb {
apb {
spi0: spi at f0000000 {
pinctrl-0 = <&pinctrl_spi0 &pinctrl_spi0_cs>;
status = "okay";
cs-gpios = <&pioA 14 GPIO_ACTIVE_HIGH>, <0>, <0>, <0>;
m25p80 at 0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "atmel,at25df321a";
spi-max-frequency = <50000000>;
m25p,fast-read;
reg = <0>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
bootpri at 0000000 {
label = "bootpri";
reg = <0x00000000 0x00008000>;
};
bootsec at 0008000 {
label = "bootsec";
reg = <0x00008000 0x00100000>;
};
bootenv at 00108000 {
label = "bootenv";
reg = <0x00108000 0x00110000>;
};
free at 00110000 {
label = "free";
reg = <0x00110000 0x002f0000>;
};
};
};
};
};
ebi: ebi at 10000000 {
nand_controller: nand-controller {
nand at 3 {
status = "okay";
nand-ecc-strength = <4>;
};
};
};
};
};
More information about the linux-mtd
mailing list