common/update: Finish Kconfig migration
authorTom Rini <trini@konsulko.com>
Tue, 10 Jan 2023 16:19:36 +0000 (11:19 -0500)
committerTom Rini <trini@konsulko.com>
Fri, 20 Jan 2023 17:27:06 +0000 (12:27 -0500)
We can enforce the dependencies of this module via Kconfig now, so do so
rather than with #error statements. Further, we can ensure that all
required values are set to their defaults in Kconfig, and in fact
already do so, so remove the tests here. The exception is
CONFIG_UPDATE_LOAD_ADDR which needed to be migrated to Kconfig in the
first place.

Signed-off-by: Tom Rini <trini@konsulko.com>
common/Kconfig
common/update.c

index 1c9f477..e3a5e1b 100644 (file)
@@ -874,7 +874,7 @@ config UPDATE_COMMON
 
 config UPDATE_TFTP
        bool "Auto-update using fitImage via TFTP"
-       depends on FIT
+       depends on FIT && OF_LIBFDT && !MTD_NOR_FLASH
        select UPDATE_COMMON
        help
          This option allows performing update of NOR with data in fitImage
@@ -883,16 +883,24 @@ config UPDATE_TFTP
 config UPDATE_TFTP_CNT_MAX
        int "The number of connection retries during auto-update"
        default 0
-       depends on UPDATE_TFTP
+       depends on UPDATE_TFTP || DFU_TFTP
 
 config UPDATE_TFTP_MSEC_MAX
        int "Delay in mSec to wait for the TFTP server during auto-update"
        default 100
-       depends on UPDATE_TFTP
+       depends on UPDATE_TFTP || DFU_TFTP
+
+config UPDATE_LOAD_ADDR
+       hex "Address in memory to load the update to"
+       depends on UPDATE_TFTP || DFU_TFTP
+       default 0x100000
+       help
+         This option defines the location in memory to be used to load the
+         update to, if 'loadaddr' is not set in the environment.
 
 config UPDATE_FIT
        bool "Firmware update using fitImage"
-       depends on FIT
+       depends on FIT && OF_LIBFDT
        depends on DFU
        select UPDATE_COMMON
        help
index 80f16af..3502713 100644 (file)
 #include <cpu_func.h>
 #include <image.h>
 
-#if !(defined(CONFIG_FIT) && defined(CONFIG_OF_LIBFDT))
-#error "CONFIG_FIT and CONFIG_OF_LIBFDT are required for auto-update feature"
-#endif
-
-#if defined(CONFIG_UPDATE_TFTP) && !defined(CONFIG_MTD_NOR_FLASH)
-#error "CONFIG_UPDATE_TFTP and !CONFIG_MTD_NOR_FLASH needed for legacy behaviour"
-#endif
-
 #include <command.h>
 #include <env.h>
 #include <net.h>
 /* env variable holding the location of the update file */
 #define UPDATE_FILE_ENV                "updatefile"
 
-/* set configuration defaults if needed */
-#ifndef CONFIG_UPDATE_LOAD_ADDR
-#define CONFIG_UPDATE_LOAD_ADDR        0x100000
-#endif
-
-#ifndef CONFIG_UPDATE_TFTP_MSEC_MAX
-#define CONFIG_UPDATE_TFTP_MSEC_MAX    100
-#endif
-
-#ifndef CONFIG_UPDATE_TFTP_CNT_MAX
-#define CONFIG_UPDATE_TFTP_CNT_MAX     0
-#endif
-
 extern ulong tftp_timeout_ms;
 extern int tftp_timeout_count_max;
 #ifdef CONFIG_MTD_NOR_FLASH