From: Robert Beckett <bob.beck...@collabora.com>

Add bootcount node, linking to i2c eeprom "bootcount" partitions for
storage.
Enable i2c eeprom bootcount backend storage.
Enable bootcount command and use it for failbootcmd.

Signed-off-by: Robert Beckett <bob.beck...@collabora.com>
---
 arch/arm/dts/imx6q-bx50v3-uboot.dtsi | 7 ++++++-
 configs/ge_bx50v3_defconfig          | 6 +++---
 include/configs/ge_bx50v3.h          | 4 +---
 3 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/arch/arm/dts/imx6q-bx50v3-uboot.dtsi 
b/arch/arm/dts/imx6q-bx50v3-uboot.dtsi
index 99d409d..77115a7 100644
--- a/arch/arm/dts/imx6q-bx50v3-uboot.dtsi
+++ b/arch/arm/dts/imx6q-bx50v3-uboot.dtsi
@@ -5,6 +5,11 @@
  */
 
 / {
+       bootcount {
+               compatible = "u-boot,bootcount-i2c-eeprom";
+               i2c-eeprom = <&bootcount>;
+       };
+
        wdt-reboot {
                compatible = "wdt-reboot";
                wdt = <&wdog1>;
@@ -20,7 +25,7 @@
                        size = <1022>;
                };
 
-               bootcount {
+               bootcount: bootcount {
                        offset = <1022>;
                        size = <2>;
                };
diff --git a/configs/ge_bx50v3_defconfig b/configs/ge_bx50v3_defconfig
index 384327e..f1f7a0d 100644
--- a/configs/ge_bx50v3_defconfig
+++ b/configs/ge_bx50v3_defconfig
@@ -8,7 +8,6 @@ CONFIG_ENV_SECT_SIZE=0x10000
 CONFIG_ENV_OFFSET=0xC0000
 CONFIG_DM_GPIO=y
 CONFIG_NR_DRAM_BANKS=1
-CONFIG_SYS_BOOTCOUNT_ADDR=0x7000A000
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_FIT=y
 CONFIG_OF_BOARD_SETUP=y
@@ -29,6 +28,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MMC=y
 CONFIG_CMD_PCI=y
 # CONFIG_CMD_NFS is not set
+CONFIG_CMD_BOOTCOUNT=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
@@ -44,9 +44,9 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_DM=y
 CONFIG_BOOTCOUNT_LIMIT=y
-CONFIG_BOOTCOUNT_EXT=y
+CONFIG_DM_BOOTCOUNT=y
+CONFIG_DM_BOOTCOUNT_I2C_EEPROM=y
 CONFIG_BOOTCOUNT_BOOTLIMIT=10
-CONFIG_SYS_BOOTCOUNT_EXT_DEVPART="1:5"
 CONFIG_DM_MMC=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_MXC=y
diff --git a/include/configs/ge_bx50v3.h b/include/configs/ge_bx50v3.h
index b8b1ec7..b9227fc 100644
--- a/include/configs/ge_bx50v3.h
+++ b/include/configs/ge_bx50v3.h
@@ -109,9 +109,7 @@
                "setcurs 5 4; " \
                "lcdputs \"Monitor failed to start. " \
                "Try again, or contact GE Service for support.\"; " \
-               "mw.b 0x7000A000 0xbc; " \
-               "mw.b 0x7000A001 0x00; " \
-               "ext4write ${dev} ${devnum}:5 0x7000A000 /boot/failures 2\0" \
+               "bootcount reset; \0" \
        "altbootcmd=" \
                "run doquiet; " \
                "setenv partnum 1; run hasfirstboot || setenv partnum 2; " \
-- 
2.10.1

Reply via email to