apm821xx: add u-boot,env compatible

Note about the MyBook Live.
The MyBook Live didn't have the encompassing fixed-partitions.
This is needed for the u-boot,env compatible to be read as otherwise
the kernel assumes this is a legacy NOR/NAND node and this binding
is unsupported.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This commit is contained in:
Christian Lamparter 2023-06-09 20:34:02 +02:00
parent 625dea6170
commit 7e53473ee8
5 changed files with 74 additions and 24 deletions

View File

@ -153,6 +153,7 @@ CONFIG_NR_CPUS=1
CONFIG_NR_IRQS=512 CONFIG_NR_IRQS=512
CONFIG_NVMEM=y CONFIG_NVMEM=y
CONFIG_NVMEM_SYSFS=y CONFIG_NVMEM_SYSFS=y
CONFIG_NVMEM_U_BOOT_ENV=y
CONFIG_OF=y CONFIG_OF=y
CONFIG_OF_ADDRESS=y CONFIG_OF_ADDRESS=y
CONFIG_OF_EARLY_FLATTREE=y CONFIG_OF_EARLY_FLATTREE=y

View File

@ -63,10 +63,11 @@
* blocks (64KiB) in order to have spares * blocks (64KiB) in order to have spares
* around for bad block management * around for bad block management
*/ */
label = "u-boot-env"; label = "u-boot-env";
reg = <0x00150000 0x00010000>; compatible = "u-boot,env";
read-only; reg = <0x00150000 0x00010000>;
}; read-only;
};
partition@160000 { partition@160000 {
/* /*

View File

@ -61,6 +61,7 @@
partition@100000 { partition@100000 {
label = "u-boot-env"; label = "u-boot-env";
reg = <0x00100000 0x00100000>; reg = <0x00100000 0x00100000>;
compatible = "u-boot,env";
read-only; read-only;
}; };

View File

@ -47,11 +47,29 @@
}; };
partition@100000 { partition@100000 {
compatible = "u-boot,env";
label = "u-boot-env"; label = "u-boot-env";
reg = <0x00100000 0x00010000>; reg = <0x00100000 0x0004000>;
read-only; read-only;
ethaddr {
};
bootcmd {
};
serno {
};
ProductID {
};
HardwareVer {
};
}; };
/* 0x104000 - 0x10ffff free */
partition@110000 { partition@110000 {
label = "firmware"; label = "firmware";
reg = <0x00110000 0x01ac0000>; reg = <0x00110000 0x01ac0000>;

View File

@ -21,30 +21,59 @@
&POB0 { &POB0 {
ebc { ebc {
nor_flash@0,0 { nor_flash@0,0 {
status = "okay"; status = "okay";
compatible = "microchip,sst39vf040", "jedec-flash"; compatible = "jedec-flash"; /* "microchip,sst39vf040 */
bank-width = <1>; bank-width = <1>;
reg = <0x00000000 0x00000000 0x00080000>; reg = <0x00000000 0x00000000 0x00080000>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
partition@0 { partitions {
/* Part of bootrom - Don't use it without a jump */ compatible = "fixed-partitions";
label = "free"; #address-cells = <1>;
reg = <0x00000000 0x0001e000>; #size-cells = <1>;
read-only;
};
partition@1e000 { partition@0 {
label = "env"; /* Part of bootrom - Don't use it without a jump */
reg = <0x0001e000 0x00002000>; label = "free";
read-only; reg = <0x00000000 0x0001e000>;
}; read-only;
};
partition@20000 { partition@1e000 {
label = "uboot"; compatible = "fixed-partitions";
reg = <0x00020000 0x00050000>; reg = <0x0001e000 0x00002000>;
read-only; label = "u-boot-env";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
compatible = "u-boot,env-redundant-bool";
reg = <0x00000000 0x00001000>;
label = "u-boot-env-1";
ethaddr {
};
};
/*
* Causes the following warning: * sysfs: cannot create duplicate filename '/bus/nvmem/devices/u-boot-env0'
*
* partition@1000 {
* compatible = "u-boot,env-redundant-bool";
* reg = <0x00001000 0x00001000>;
* label = "u-boot-env-2";
*
* };
*/
};
partition@20000 {
label = "uboot";
reg = <0x00020000 0x00050000>;
read-only;
};
}; };
}; };
}; };