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_NVMEM=y
CONFIG_NVMEM_SYSFS=y
CONFIG_NVMEM_U_BOOT_ENV=y
CONFIG_OF=y
CONFIG_OF_ADDRESS=y
CONFIG_OF_EARLY_FLATTREE=y

View File

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

View File

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

View File

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

View File

@ -21,30 +21,59 @@
&POB0 {
ebc {
nor_flash@0,0 {
status = "okay";
compatible = "microchip,sst39vf040", "jedec-flash";
bank-width = <1>;
reg = <0x00000000 0x00000000 0x00080000>;
status = "okay";
compatible = "jedec-flash"; /* "microchip,sst39vf040 */
bank-width = <1>;
reg = <0x00000000 0x00000000 0x00080000>;
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
/* Part of bootrom - Don't use it without a jump */
label = "free";
reg = <0x00000000 0x0001e000>;
read-only;
};
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@1e000 {
label = "env";
reg = <0x0001e000 0x00002000>;
read-only;
};
partition@0 {
/* Part of bootrom - Don't use it without a jump */
label = "free";
reg = <0x00000000 0x0001e000>;
read-only;
};
partition@20000 {
label = "uboot";
reg = <0x00020000 0x00050000>;
read-only;
partition@1e000 {
compatible = "fixed-partitions";
reg = <0x0001e000 0x00002000>;
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;
};
};
};
};