All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED
@ 2023-02-24 18:10 Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 01/26] kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check Troy Kisky
                   ` (25 more replies)
  0 siblings, 26 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, AKASHI Takahiro, Andre Przywara,
	Baruch Siach, Bin Meng, Fabio Estevam, Heiko Thiery,
	Heinrich Schuchardt, Jaehoon Chung, Jason Liu, Joel Stanley,
	Klaus Goger, Loic Poulain, Lukasz Majewski, Marek Behún,
	Marek Vasut, Masahiro Yamada, Matwey V. Kornilov,
	Max Krummenacher, NXP i.MX U-Boot Team, Olaf Mandel,
	Pali Rohár, Peter Hoyes, Quentin Schulz, Rasmus Villemoes,
	Rick Chen, Samuel Dionne-Riel, Samuel Holland, Stefan Roese,
	Stefano Babic, Sughosh Ganu, Tim Harvey


This patch set gets ready to check the usage of
CONFIG_IS_ENABLED/IS_ENABLED.

After the set has been applied, you can delete
test/usage_of_is_enabled_todo.txt
and run test/usage_of_is_enabled_commit.sh

The script test/usage_of_is_enabled_check.sh
checks for new questionable uses of
CONFIG_IS_ENABLED/IS_ENABLED and is added
to .azure-pipelines.yml, and
.gitlab-ci.yml

Changes in v2:
- new patch
- delay include of linux/kconfig.h to do from Makefile
- include linux/kconfig.h from tools/Makefile
- as suggested by Simon
- keep #error, but change condition to use IS_ENABLED_NOCHECK
- keep #error, but change condition to use IS_ENABLED_NOCHECK
- changed condition of when to include field bdf
- added protection to another instance of bdf in uart.c
- Thanks to Simon for getting this corrected
- use normal if, not preprocessor
- new in series
- use an accessor function gd_set_pci_ram_top
- Always define function instead of using same protection

Troy Kisky (26):
  kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check
  cmd: nvedit: check for ENV_SUPPORT
  lib: crc32: prepare for CONFIG_IS_ENABLED changes
  lib: md5: prepare for CONFIG_IS_ENABLED changes
  lib: sha1: prepare for CONFIG_IS_ENABLED changes
  lib: sha256: prepare for CONFIG_IS_ENABLED changes
  lib: sha512: prepare for CONFIG_IS_ENABLED changes
  tools: prevent CONFIG_IS_ENABLED errors by including linux/kconfig.h
  tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding
    CONFIG_TOOLS_xxx
  x86: cpu: qemu: qemu: remove SPL use with CONFIG_IS_ENABLED
  config_distro_bootcmd: remove booting environment variables from SPL
    environment
  ofnode: fdt_support definitions needed if OF_CONTROL is enabled
  ringneck-px30: use IS_ENABLED_NOCHECK to avoid CI test failure for
    ENV_IS_NOWHERE
  puma-rk3399: use IS_ENABLED_NOCHECK to avoid CI test failure for
    ENV_IS_NOWHERE
  fdt_support: always define fdt_fixup_mtdparts
  m53menlo: define ft_board_setup only if CONFIG_IS_ENABLED(OF_LIBFDT)
  freescale: common: pfuze: define pfuze_mode_init only if
    defined(CONFIG_DM_PMIC)
  ns16550: match when to define bdf with uart code
  solidrun: mx6cuboxi: use CONFIG_IS_ENABLED(SATA) instead of
    CONFIG_CMD_SATA
  wandboard: use CONFIG_IS_ENABLED(SATA) instead of ifdef CONFIG_SATA
  arm: mach-imx: use CONFIG_$(SPL_)SATA instead of CONFIG_SATA
  x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI)
  gateworks: venice: Always define setup_fec and setup_eqos
  power: pmic: add dm style definitions if not
    CONFIG_IS_ENABLED(POWER_LEGACY)
  arm: cpu: armv7: ls102xa: fdt: remove eth_device support
  CI: add test/usage_of_is_enabled_check.sh

 .azure-pipelines.yml                          |  11 +
 .gitlab-ci.yml                                |   5 +
 arch/arm/cpu/armv7/ls102xa/fdt.c              |  12 -
 arch/arm/mach-imx/Makefile                    |   2 +-
 arch/x86/cpu/apollolake/uart.c                |   4 +
 arch/x86/cpu/i386/cpu.c                       |   2 +-
 arch/x86/cpu/qemu/qemu.c                      |   2 +-
 board/freescale/common/pfuze.c                |   2 +-
 board/gateworks/venice/venice.c               |   2 +-
 board/menlo/m53menlo/m53menlo.c               |   2 +
 board/solidrun/mx6cuboxi/mx6cuboxi.c          |   5 +-
 .../puma_rk3399/puma-rk3399.c                 |   2 +-
 .../ringneck_px30/ringneck-px30.c             |   2 +-
 board/wandboard/wandboard.c                   |   5 +-
 cmd/nvedit.c                                  |   5 +-
 include/asm-generic/global_data.h             |   6 +
 include/config_distro_bootcmd.h               |  23 ++
 include/fdt_support.h                         |  26 ++-
 include/linux/kconfig.h                       |   5 +
 include/ns16550.h                             |   2 +-
 include/power/pmic.h                          |   2 +-
 lib/crc32.c                                   |  11 +-
 lib/md5.c                                     |   7 +-
 lib/sha1.c                                    |   7 +-
 lib/sha256.c                                  |   7 +-
 lib/sha512.c                                  |  11 +-
 test/usage_of_is_enabled_check.sh             |  19 ++
 test/usage_of_is_enabled_commit.sh            |  12 +
 test/usage_of_is_enabled_correct.sh           |  50 +++++
 test/usage_of_is_enabled_exempt.txt           |   9 +
 test/usage_of_is_enabled_list.sh              |  86 +++++++
 test/usage_of_is_enabled_splcfg.txt           |  21 ++
 test/usage_of_is_enabled_todo.txt             | 210 ++++++++++++++++++
 tools/Makefile                                |   3 +
 34 files changed, 527 insertions(+), 53 deletions(-)
 create mode 100755 test/usage_of_is_enabled_check.sh
 create mode 100755 test/usage_of_is_enabled_commit.sh
 create mode 100755 test/usage_of_is_enabled_correct.sh
 create mode 100644 test/usage_of_is_enabled_exempt.txt
 create mode 100755 test/usage_of_is_enabled_list.sh
 create mode 100644 test/usage_of_is_enabled_splcfg.txt
 create mode 100644 test/usage_of_is_enabled_todo.txt

-- 
2.34.1


^ permalink raw reply	[flat|nested] 45+ messages in thread

* [PATCH v2 01/26] kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-26 14:56   ` Simon Glass
  2023-02-24 18:10 ` [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT Troy Kisky
                   ` (24 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Masahiro Yamada

This is for use when a config with an SPL version needs to always
check the non-spl verion of the config. It avoids error messages
from CI test script usage_of_is_enabled_check.sh

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
---

Changes in v2:
- new patch

 include/linux/kconfig.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/linux/kconfig.h b/include/linux/kconfig.h
index 2bc704e1104..19b71723ab3 100644
--- a/include/linux/kconfig.h
+++ b/include/linux/kconfig.h
@@ -27,6 +27,11 @@
  * 0 otherwise.
  */
 #define IS_ENABLED(option)	config_enabled(option, 0)
+/*
+ * Using IS_ENABLED_NOCHECK instead of IS_ENABLED prevents
+ * complaints from test/usage_of_is_enabled_check.sh
+ */
+#define IS_ENABLED_NOCHECK(option) config_enabled(option, 0)
 
 /*
  * U-Boot add-on: Helper macros to reference to different macros (prefixed by
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 01/26] kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-03-01 15:33   ` Tom Rini
  2023-02-24 18:10 ` [PATCH v2 03/26] lib: crc32: prepare for CONFIG_IS_ENABLED changes Troy Kisky
                   ` (23 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Marek Behún, Samuel Dionne-Riel

Avoid error messages when SPL,TPL,VPL build don't
have the environment options of the main build.
This is needed when defined(CONFIG_ENV_IS_IN_xxx) is changed
to CONFIG_IS_ENABLED(ENV_IS_IN_xxx).

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 cmd/nvedit.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/cmd/nvedit.c b/cmd/nvedit.c
index 7cbc3fd573a..ef0fe55431c 100644
--- a/cmd/nvedit.c
+++ b/cmd/nvedit.c
@@ -43,6 +43,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
+#if CONFIG_IS_ENABLED(ENV_SUPPORT)
 #if	defined(CONFIG_ENV_IS_IN_EEPROM)	|| \
 	defined(CONFIG_ENV_IS_IN_FLASH)		|| \
 	defined(CONFIG_ENV_IS_IN_MMC)		|| \
@@ -60,10 +61,12 @@ DECLARE_GLOBAL_DATA_PTR;
 #endif
 
 #if	!defined(ENV_IS_IN_DEVICE)		&& \
-	!defined(CONFIG_ENV_IS_NOWHERE)
+	!defined(CONFIG_ENV_IS_NOWHERE)		&& \
+	!defined(CONFIG_VPL_BUILD)
 # error Define one of CONFIG_ENV_IS_IN_{EEPROM|FLASH|MMC|FAT|EXT4|\
 NAND|NVRAM|ONENAND|SATA|SPI_FLASH|REMOTE|UBI} or CONFIG_ENV_IS_NOWHERE
 #endif
+#endif
 
 /*
  * Maximum expected input data size for import command
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 03/26] lib: crc32: prepare for CONFIG_IS_ENABLED changes
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 01/26] kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-03-01 15:33   ` Tom Rini
  2023-02-24 18:10 ` [PATCH v2 04/26] lib: md5: " Troy Kisky
                   ` (22 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Marek Vasut, Stefan Roese

We need to include <linux/kconfig.h> in order to include
files that use CONFIG_IS_ENABLED. TO prepare for that
be more direct with using defined(USE_HOSTCC).

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

Changes in v2:
- delay include of linux/kconfig.h to do from Makefile
- as suggested by Simon

 lib/crc32.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/lib/crc32.c b/lib/crc32.c
index aa94d70ef3e..12c104c62a4 100644
--- a/lib/crc32.c
+++ b/lib/crc32.c
@@ -14,11 +14,14 @@
 #else
 #include <common.h>
 #include <efi_loader.h>
+#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#define PET_WDG
+#endif
 #endif
 #include <compiler.h>
 #include <u-boot/crc.h>
 
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 #include <watchdog.h>
 #endif
 #include "u-boot/zlib.h"
@@ -84,7 +87,7 @@ static void __efi_runtime make_crc_table(void)
   }
   crc_table_empty = 0;
 }
-#elif !defined(CONFIG_ARM64_CRC32)
+#elif !defined(CONFIG_ARM64_CRC32) || defined(USE_HOSTCC)
 /* ========================================================================
  * Table of CRC-32's of all single-byte values (made by make_crc_table)
  */
@@ -184,7 +187,7 @@ const uint32_t * ZEXPORT get_crc_table()
  */
 uint32_t __efi_runtime crc32_no_comp(uint32_t crc, const Bytef *buf, uInt len)
 {
-#ifdef CONFIG_ARM64_CRC32
+#if defined(CONFIG_ARM64_CRC32) && !defined(USE_HOSTCC)
     crc = cpu_to_le32(crc);
     while (len--)
         crc = __builtin_aarch64_crc32b(crc, *buf++);
@@ -243,7 +246,7 @@ uint32_t __efi_runtime crc32(uint32_t crc, const Bytef *p, uInt len)
 uint32_t crc32_wd(uint32_t crc, const unsigned char *buf, uInt len,
 		  uInt chunk_sz)
 {
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	const unsigned char *end, *curr;
 	int chunk;
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 04/26] lib: md5: prepare for CONFIG_IS_ENABLED changes
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (2 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 03/26] lib: crc32: prepare for CONFIG_IS_ENABLED changes Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 05/26] lib: sha1: " Troy Kisky
                   ` (21 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Marek Vasut, Stefan Roese

We need to include <linux/kconfig.h> in order to include
files that use CONFIG_IS_ENABLED. TO prepare for that
don't pet the watchdog when USE_HOSTCC is defined.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

Changes in v2:
- delay include of linux/kconfig.h to do from Makefile
- as suggested by Simon

 lib/md5.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/md5.c b/lib/md5.c
index 1636ab93661..20d5e87814b 100644
--- a/lib/md5.c
+++ b/lib/md5.c
@@ -29,7 +29,10 @@
 
 #ifndef USE_HOSTCC
 #include <common.h>
+#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
 #include <watchdog.h>
+#define PET_WDG
+#endif
 #endif /* USE_HOSTCC */
 #include <u-boot/md5.h>
 
@@ -288,14 +291,14 @@ md5_wd(const unsigned char *input, unsigned int len, unsigned char output[16],
 	unsigned int chunk_sz)
 {
 	struct MD5Context context;
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	const unsigned char *end, *curr;
 	int chunk;
 #endif
 
 	MD5Init(&context);
 
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	curr = input;
 	end = input + len;
 	while (curr < end) {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 05/26] lib: sha1: prepare for CONFIG_IS_ENABLED changes
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (3 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 04/26] lib: md5: " Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 06/26] lib: sha256: " Troy Kisky
                   ` (20 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Loic Poulain, Marek Vasut, Stefan Roese

We need to include <linux/kconfig.h> in order to include
files that use CONFIG_IS_ENABLED. TO prepare for that
don't pet the watchdog when USE_HOSTCC is defined.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

Changes in v2:
- delay include of linux/kconfig.h to do from Makefile
- as suggested by Simon

 lib/sha1.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/sha1.c b/lib/sha1.c
index 8d074078934..cd5d7aead8d 100644
--- a/lib/sha1.c
+++ b/lib/sha1.c
@@ -19,6 +19,9 @@
 #ifndef USE_HOSTCC
 #include <common.h>
 #include <linux/string.h>
+#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#define PET_WDG
+#endif
 #else
 #include <string.h>
 #endif /* USE_HOSTCC */
@@ -328,14 +331,14 @@ void sha1_csum_wd(const unsigned char *input, unsigned int ilen,
 		  unsigned char *output, unsigned int chunk_sz)
 {
 	sha1_context ctx;
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	const unsigned char *end, *curr;
 	int chunk;
 #endif
 
 	sha1_starts (&ctx);
 
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	curr = input;
 	end = input + ilen;
 	while (curr < end) {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 06/26] lib: sha256: prepare for CONFIG_IS_ENABLED changes
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (4 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 05/26] lib: sha1: " Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 07/26] lib: sha512: " Troy Kisky
                   ` (19 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Loic Poulain, Marek Vasut, Stefan Roese

We need to include <linux/kconfig.h> in order to include
files that use CONFIG_IS_ENABLED. TO prepare for that
don't pet the watchdog when USE_HOSTCC is defined.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

Changes in v2:
- delay include of linux/kconfig.h to do from Makefile
- as suggested by Simon

 lib/sha256.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/sha256.c b/lib/sha256.c
index 4d26aea1c8c..8e1c3992674 100644
--- a/lib/sha256.c
+++ b/lib/sha256.c
@@ -8,6 +8,9 @@
 #ifndef USE_HOSTCC
 #include <common.h>
 #include <linux/string.h>
+#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#define PET_WDG
+#endif
 #else
 #include <string.h>
 #endif /* USE_HOSTCC */
@@ -276,7 +279,7 @@ void sha256_csum_wd(const unsigned char *input, unsigned int ilen,
 		unsigned char *output, unsigned int chunk_sz)
 {
 	sha256_context ctx;
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	const unsigned char *end;
 	unsigned char *curr;
 	int chunk;
@@ -284,7 +287,7 @@ void sha256_csum_wd(const unsigned char *input, unsigned int ilen,
 
 	sha256_starts(&ctx);
 
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	curr = (unsigned char *)input;
 	end = input + ilen;
 	while (curr < end) {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 07/26] lib: sha512: prepare for CONFIG_IS_ENABLED changes
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (5 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 06/26] lib: sha256: " Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 08/26] tools: prevent CONFIG_IS_ENABLED errors by including linux/kconfig.h Troy Kisky
                   ` (18 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Marek Vasut, Stefan Roese

We need to include <linux/kconfig.h> in order to include
files that use CONFIG_IS_ENABLED. TO prepare for that
don't pet the watchdog when USE_HOSTCC is defined.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

Changes in v2:
- delay include of linux/kconfig.h to do from Makefile
- as suggested by Simon

 lib/sha512.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/lib/sha512.c b/lib/sha512.c
index fbe8d5f5bfe..a504281bf93 100644
--- a/lib/sha512.c
+++ b/lib/sha512.c
@@ -13,6 +13,9 @@
 #ifndef USE_HOSTCC
 #include <common.h>
 #include <linux/string.h>
+#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#define PET_WDG
+#endif
 #else
 #include <string.h>
 #endif /* USE_HOSTCC */
@@ -292,7 +295,7 @@ void sha384_csum_wd(const unsigned char *input, unsigned int ilen,
 		unsigned char *output, unsigned int chunk_sz)
 {
 	sha512_context ctx;
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	const unsigned char *end;
 	unsigned char *curr;
 	int chunk;
@@ -300,7 +303,7 @@ void sha384_csum_wd(const unsigned char *input, unsigned int ilen,
 
 	sha384_starts(&ctx);
 
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	curr = (unsigned char *)input;
 	end = input + ilen;
 	while (curr < end) {
@@ -355,7 +358,7 @@ void sha512_csum_wd(const unsigned char *input, unsigned int ilen,
 		unsigned char *output, unsigned int chunk_sz)
 {
 	sha512_context ctx;
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	const unsigned char *end;
 	unsigned char *curr;
 	int chunk;
@@ -363,7 +366,7 @@ void sha512_csum_wd(const unsigned char *input, unsigned int ilen,
 
 	sha512_starts(&ctx);
 
-#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
+#ifdef PET_WDG
 	curr = (unsigned char *)input;
 	end = input + ilen;
 	while (curr < end) {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 08/26] tools: prevent CONFIG_IS_ENABLED errors by including linux/kconfig.h
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (6 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 07/26] lib: sha512: " Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-03-01 15:33   ` Tom Rini
  2023-02-24 18:10 ` [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx Troy Kisky
                   ` (17 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Heiko Thiery, Marek Vasut,
	Max Krummenacher, Pali Rohár, Samuel Holland, Stefan Roese

We need to include <linux/kconfig.h> in order to include
files that use CONFIG_IS_ENABLED.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

Changes in v2:
- include linux/kconfig.h from tools/Makefile
- as suggested by Simon

 tools/Makefile | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tools/Makefile b/tools/Makefile
index e13effbb66a..5d6284e6451 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -298,6 +298,7 @@ endif # !LOGO_BMP
 # Define _GNU_SOURCE to obtain the getline prototype from stdio.h
 #
 HOST_EXTRACFLAGS += -include $(srctree)/include/compiler.h \
+		-include $(srctree)/include/linux/kconfig.h \
 		$(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \
 		-I$(srctree)/scripts/dtc/libfdt \
 		-I$(srctree)/tools \
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (7 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 08/26] tools: prevent CONFIG_IS_ENABLED errors by including linux/kconfig.h Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-03-01 15:33   ` Tom Rini
  2023-02-24 18:10 ` [PATCH v2 10/26] x86: cpu: qemu: qemu: remove SPL use with CONFIG_IS_ENABLED Troy Kisky
                   ` (16 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Andre Przywara, Heiko Thiery,
	Max Krummenacher, Pali Rohár, Samuel Holland, Stefan Roese,
	Sughosh Ganu

CONFIG_IS_ENABLED(FIT_SIGNATURE) will check for
CONFIG_TOOLS_FIT_SIGNATURE. So define it now in preparation.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 tools/Makefile | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/Makefile b/tools/Makefile
index 5d6284e6451..86f1b6b5049 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -162,8 +162,10 @@ ifdef CONFIG_TOOLS_LIBCRYPTO
 # This affects include/image.h, but including the board config file
 # is tricky, so manually define this options here.
 HOST_EXTRACFLAGS	+= -DCONFIG_FIT_SIGNATURE
+HOST_EXTRACFLAGS	+= -DCONFIG_TOOLS_FIT_SIGNATURE=1
 HOST_EXTRACFLAGS	+= -DCONFIG_FIT_SIGNATURE_MAX_SIZE=0xffffffff
 HOST_EXTRACFLAGS	+= -DCONFIG_FIT_CIPHER
+HOST_EXTRACFLAGS	+= -DCONFIG_TOOLS_FIT_CIPHER=1
 endif
 
 # MXSImage needs LibSSL
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 10/26] x86: cpu: qemu: qemu: remove SPL use with CONFIG_IS_ENABLED
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (8 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 11/26] config_distro_bootcmd: remove booting environment variables from SPL environment Troy Kisky
                   ` (15 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Bin Meng

CONFIG_IS_ENABLED(SPL_X86_32BIT_INIT)
would check for CONFIG_SPL_SPL_X86_32BIT_INIT for SPL builds

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 arch/x86/cpu/qemu/qemu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/cpu/qemu/qemu.c b/arch/x86/cpu/qemu/qemu.c
index e54082df7f9..274978c023b 100644
--- a/arch/x86/cpu/qemu/qemu.c
+++ b/arch/x86/cpu/qemu/qemu.c
@@ -97,7 +97,7 @@ static void qemu_chipset_init(void)
 	}
 }
 
-#if !CONFIG_IS_ENABLED(SPL_X86_32BIT_INIT)
+#if CONFIG_IS_ENABLED(X86_32BIT_INIT)
 int arch_cpu_init(void)
 {
 	post_code(POST_CPU_INIT);
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 11/26] config_distro_bootcmd: remove booting environment variables from SPL environment
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (9 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 10/26] x86: cpu: qemu: qemu: remove SPL use with CONFIG_IS_ENABLED Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 12/26] ofnode: fdt_support definitions needed if OF_CONTROL is enabled Troy Kisky
                   ` (14 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Marek Vasut, Matwey V. Kornilov,
	Pali Rohár, Peter Hoyes

SPL environments don't need commands that they can never use.
Avoid errors with CONFIG_IS_ENABLED conversions by skipping them now.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 include/config_distro_bootcmd.h | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h
index 9d2a225e7eb..2a136b96a6d 100644
--- a/include/config_distro_bootcmd.h
+++ b/include/config_distro_bootcmd.h
@@ -35,11 +35,15 @@
 	#devtypel "_boot=" \
 	BOOTENV_SHARED_BLKDEV_BODY(devtypel)
 
+#define BOOTENV_DEV_BLKDEV_NONE(devtypeu, devtypel, instance)
+
 #define BOOTENV_DEV_BLKDEV(devtypeu, devtypel, instance) \
 	"bootcmd_" #devtypel #instance "=" \
 		"devnum=" #instance "; " \
 		"run " #devtypel "_boot\0"
 
+#define BOOTENV_DEV_NAME_BLKDEV_NONE(devtypeu, devtypel, instance)
+
 #define BOOTENV_DEV_NAME_BLKDEV(devtypeu, devtypel, instance) \
 	#devtypel #instance " "
 
@@ -59,6 +63,10 @@
 #define BOOTENV_SHARED_MMC	BOOTENV_SHARED_BLKDEV(mmc)
 #define BOOTENV_DEV_MMC		BOOTENV_DEV_BLKDEV
 #define BOOTENV_DEV_NAME_MMC	BOOTENV_DEV_NAME_BLKDEV
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_SHARED_MMC
+#define BOOTENV_DEV_MMC		BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_MMC	BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_SHARED_MMC
 #define BOOTENV_DEV_MMC \
@@ -190,6 +198,10 @@
 #define BOOTENV_SHARED_SATA	BOOTENV_SHARED_BLKDEV(sata)
 #define BOOTENV_DEV_SATA	BOOTENV_DEV_BLKDEV
 #define BOOTENV_DEV_NAME_SATA	BOOTENV_DEV_NAME_BLKDEV
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_SHARED_SATA
+#define BOOTENV_DEV_SATA	BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_SATA	BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_SHARED_SATA
 #define BOOTENV_DEV_SATA \
@@ -293,6 +305,11 @@
 		BOOTENV_SHARED_BLKDEV_BODY(usb)
 #define BOOTENV_DEV_USB		BOOTENV_DEV_BLKDEV
 #define BOOTENV_DEV_NAME_USB	BOOTENV_DEV_NAME_BLKDEV
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_RUN_NET_USB_START
+#define BOOTENV_SHARED_USB
+#define BOOTENV_DEV_USB		BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_USB	BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_RUN_NET_USB_START
 #define BOOTENV_SHARED_USB
@@ -395,6 +412,9 @@
 		"\0"
 #define BOOTENV_DEV_NAME_DHCP(devtypeu, devtypel, instance) \
 	"dhcp "
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_DEV_DHCP	BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_DHCP	BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_DEV_DHCP \
 	BOOT_TARGET_DEVICES_references_DHCP_without_CONFIG_CMD_DHCP
@@ -413,6 +433,9 @@
 		"fi\0"
 #define BOOTENV_DEV_NAME_PXE(devtypeu, devtypel, instance) \
 	"pxe "
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_DEV_PXE		BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_PXE	BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_DEV_PXE \
 	BOOT_TARGET_DEVICES_references_PXE_without_CONFIG_CMD_DHCP_or_PXE
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 12/26] ofnode: fdt_support definitions needed if OF_CONTROL is enabled
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (10 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 11/26] config_distro_bootcmd: remove booting environment variables from SPL environment Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 13/26] ringneck-px30: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE Troy Kisky
                   ` (13 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Marek Behún

With the use of CONFIG_IS_ENABLED in code, instead of at the preprocessor
level, these defines are still needed if OF_CONTROL is enabled.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 include/fdt_support.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/fdt_support.h b/include/fdt_support.h
index 5638bd4f165..eeb83e6251d 100644
--- a/include/fdt_support.h
+++ b/include/fdt_support.h
@@ -7,7 +7,8 @@
 #ifndef __FDT_SUPPORT_H
 #define __FDT_SUPPORT_H
 
-#if defined(CONFIG_OF_LIBFDT) && !defined(USE_HOSTCC)
+#if (defined(CONFIG_OF_LIBFDT) || defined(CONFIG_OF_CONTROL)) && \
+	!defined(USE_HOSTCC)
 
 #include <asm/u-boot.h>
 #include <linux/libfdt.h>
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 13/26] ringneck-px30: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (11 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 12/26] ofnode: fdt_support definitions needed if OF_CONTROL is enabled Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-26 14:56   ` Simon Glass
  2023-02-24 18:10 ` [PATCH v2 14/26] puma-rk3399: " Troy Kisky
                   ` (12 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Klaus Goger, Quentin Schulz

When usage_of_is_enabled_check.sh is added, this will show a false
positive for IS_ENABLED(CONFIG_ENV_IS_NOWHERE).
Use IS_ENABLED_NOCHECK to avoid check and error on SPL builds.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
---

Changes in v2:
- keep #error, but change condition to use IS_ENABLED_NOCHECK

 board/theobroma-systems/ringneck_px30/ringneck-px30.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/theobroma-systems/ringneck_px30/ringneck-px30.c b/board/theobroma-systems/ringneck_px30/ringneck-px30.c
index 47d1a40ef7c..5b2e0c7d40f 100644
--- a/board/theobroma-systems/ringneck_px30/ringneck-px30.c
+++ b/board/theobroma-systems/ringneck_px30/ringneck-px30.c
@@ -118,7 +118,7 @@ int mmc_get_env_dev(void)
 	return CONFIG_SYS_MMC_ENV_DEV;
 }
 
-#if !IS_ENABLED(CONFIG_ENV_IS_NOWHERE)
+#if !IS_ENABLED_NOCHECK(CONFIG_ENV_IS_NOWHERE)
 #error Please enable CONFIG_ENV_IS_NOWHERE
 #endif
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 14/26] puma-rk3399: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (12 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 13/26] ringneck-px30: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-26 14:56   ` Simon Glass
  2023-03-01 15:33   ` Tom Rini
  2023-02-24 18:10 ` [PATCH v2 15/26] fdt_support: always define fdt_fixup_mtdparts Troy Kisky
                   ` (11 subsequent siblings)
  25 siblings, 2 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Klaus Goger, Quentin Schulz

When usage_of_is_enabled_check.sh is added, this will show a false
positive for IS_ENABLED(CONFIG_ENV_IS_NOWHERE).
Use IS_ENABLED_NOCHECK to avoid check and error on SPL builds.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
---

Changes in v2:
- keep #error, but change condition to use IS_ENABLED_NOCHECK

 board/theobroma-systems/puma_rk3399/puma-rk3399.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/theobroma-systems/puma_rk3399/puma-rk3399.c b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
index 97f398bd754..d1e3a544974 100644
--- a/board/theobroma-systems/puma_rk3399/puma-rk3399.c
+++ b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
@@ -136,7 +136,7 @@ int mmc_get_env_dev(void)
 	return CONFIG_SYS_MMC_ENV_DEV;
 }
 
-#if !IS_ENABLED(CONFIG_ENV_IS_NOWHERE)
+#if !IS_ENABLED_NOCHECK(CONFIG_ENV_IS_NOWHERE)
 #error Please enable CONFIG_ENV_IS_NOWHERE
 #endif
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 15/26] fdt_support: always define fdt_fixup_mtdparts
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (13 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 14/26] puma-rk3399: " Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 16/26] m53menlo: define ft_board_setup only if CONFIG_IS_ENABLED(OF_LIBFDT) Troy Kisky
                   ` (10 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Marek Behún

SPL code wants fdt_fixup_mtdparts defined as a NOP
when the function isn't linked in.

Prepare for ifdef CONFIG_OF_LIBFDT being converted to
 if CONFIG_IS_ENABLED(OF_LIBFDT)

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 include/fdt_support.h | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/include/fdt_support.h b/include/fdt_support.h
index eeb83e6251d..94497d755a3 100644
--- a/include/fdt_support.h
+++ b/include/fdt_support.h
@@ -245,16 +245,6 @@ int fdt_increase_size(void *fdt, int add_len);
 int fdt_delete_disabled_nodes(void *blob);
 
 struct node_info;
-#if defined(CONFIG_FDT_FIXUP_PARTITIONS)
-void fdt_fixup_mtdparts(void *fdt, const struct node_info *node_info,
-			int node_info_size);
-#else
-static inline void fdt_fixup_mtdparts(void *fdt,
-				      const struct node_info *node_info,
-				      int node_info_size)
-{
-}
-#endif
 
 void fdt_del_node_and_alias(void *blob, const char *alias);
 
@@ -412,6 +402,19 @@ int fdt_get_cells_len(const void *blob, char *nr_cells_name);
 
 #endif /* ifdef CONFIG_OF_LIBFDT */
 
+#if CONFIG_IS_ENABLED(OF_LIBFDT) && defined(CONFIG_FDT_FIXUP_PARTITIONS)
+struct node_info;
+void fdt_fixup_mtdparts(void *fdt, const struct node_info *node_info,
+			int node_info_size);
+#else
+struct node_info;
+static inline void fdt_fixup_mtdparts(void *fdt,
+				      const struct node_info *node_info,
+				      int node_info_size)
+{
+}
+#endif
+
 #ifdef USE_HOSTCC
 int fdtdec_get_int(const void *blob, int node, const char *prop_name,
 		int default_val);
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 16/26] m53menlo: define ft_board_setup only if CONFIG_IS_ENABLED(OF_LIBFDT)
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (14 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 15/26] fdt_support: always define fdt_fixup_mtdparts Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 17/26] freescale: common: pfuze: define pfuze_mode_init only if defined(CONFIG_DM_PMIC) Troy Kisky
                   ` (9 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Marek Vasut, Olaf Mandel

The function ft_board_setup calls do_fixup_by_path_string
which is only available on CONFIG_IS_ENABLED(OF_LIBFDT).
This prepares for the conversion.

ft_board_setup is only called from image-fdt which is linked by
obj-$(CONFIG_$(SPL_TPL_)OF_LIBFDT) += image-fdt.o

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 board/menlo/m53menlo/m53menlo.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/board/menlo/m53menlo/m53menlo.c b/board/menlo/m53menlo/m53menlo.c
index 14324c7087d..ca3b81c57ff 100644
--- a/board/menlo/m53menlo/m53menlo.c
+++ b/board/menlo/m53menlo/m53menlo.c
@@ -264,6 +264,7 @@ void board_preboot_os(void)
 	gpio_direction_output(IMX_GPIO_NR(6, 0), 0);
 }
 
+#if CONFIG_IS_ENABLED(OF_LIBFDT)
 int ft_board_setup(void *blob, struct bd_info *bd)
 {
 	if (lvds_compat_string)
@@ -272,6 +273,7 @@ int ft_board_setup(void *blob, struct bd_info *bd)
 
 	return 0;
 }
+#endif
 
 struct display_info_t const displays[] = {
 	{
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 17/26] freescale: common: pfuze: define pfuze_mode_init only if defined(CONFIG_DM_PMIC)
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (15 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 16/26] m53menlo: define ft_board_setup only if CONFIG_IS_ENABLED(OF_LIBFDT) Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 18/26] ns16550: match when to define bdf with uart code Troy Kisky
                   ` (8 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Fabio Estevam

pfuze_mode_init calls pmic_reg_read which is only available from

obj-$(CONFIG_$(SPL_TPL_)DM_PMIC) += pmic-uclass.o

Prepare for conversion of defined(CONFIG_DM_PMIC) to
CONFIG_IS_ENABLED(DM_PMIC).

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 board/freescale/common/pfuze.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/freescale/common/pfuze.c b/board/freescale/common/pfuze.c
index 6dca22960bf..a9288820b2e 100644
--- a/board/freescale/common/pfuze.c
+++ b/board/freescale/common/pfuze.c
@@ -91,7 +91,7 @@ struct pmic *pfuze_common_init(unsigned char i2cbus)
 
 	return p;
 }
-#else
+#elif defined(CONFIG_DM_PMIC)
 int pfuze_mode_init(struct udevice *dev, u32 mode)
 {
 	unsigned char offset, i, switch_num;
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 18/26] ns16550: match when to define bdf with uart code
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (16 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 17/26] freescale: common: pfuze: define pfuze_mode_init only if defined(CONFIG_DM_PMIC) Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 19/26] solidrun: mx6cuboxi: use CONFIG_IS_ENABLED(SATA) instead of CONFIG_CMD_SATA Troy Kisky
                   ` (7 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Andre Przywara, Bin Meng

When switching defined(CONFIG_PCI) to CONFIG_IS_ENABLED(PCI)
bdf is no longer accessible. So add preprocessor protection
to avoid access.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

Changes in v2:
- changed condition of when to include field bdf
- added protection to another instance of bdf in uart.c
- Thanks to Simon for getting this corrected

 arch/x86/cpu/apollolake/uart.c | 4 ++++
 include/ns16550.h              | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/arch/x86/cpu/apollolake/uart.c b/arch/x86/cpu/apollolake/uart.c
index a9362436000..878aa48ed76 100644
--- a/arch/x86/cpu/apollolake/uart.c
+++ b/arch/x86/cpu/apollolake/uart.c
@@ -79,10 +79,12 @@ void apl_uart_init(pci_dev_t bdf, ulong base)
 
 static int apl_ns16550_probe(struct udevice *dev)
 {
+#if IS_ENABLED_NOCHECK(CONFIG_PCI) && defined(CONFIG_SPL_BUILD)
 	struct apl_ns16550_plat *plat = dev_get_plat(dev);
 
 	if (!CONFIG_IS_ENABLED(PCI))
 		apl_uart_init(plat->ns16550.bdf, plat->ns16550.base);
+#endif
 
 	return ns16550_serial_probe(dev);
 }
@@ -110,7 +112,9 @@ static int apl_ns16550_of_to_plat(struct udevice *dev)
 	ns.reg_offset = 0;
 	ns.clock = dtplat->clock_frequency;
 	ns.fcr = UART_FCR_DEFVAL;
+#if IS_ENABLED_NOCHECK(CONFIG_PCI) && defined(CONFIG_SPL_BUILD)
 	ns.bdf = pci_ofplat_get_devfn(dtplat->reg[0]);
+#endif
 	memcpy(plat, &ns, sizeof(ns));
 #else
 	int ret;
diff --git a/include/ns16550.h b/include/ns16550.h
index e7e68663d03..41b977b5b26 100644
--- a/include/ns16550.h
+++ b/include/ns16550.h
@@ -74,7 +74,7 @@ struct ns16550_plat {
 	int clock;
 	u32 fcr;
 	int flags;
-#if defined(CONFIG_PCI) && defined(CONFIG_SPL)
+#if IS_ENABLED_NOCHECK(CONFIG_PCI) && defined(CONFIG_SPL_BUILD)
 	int bdf;
 #endif
 };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 19/26] solidrun: mx6cuboxi: use CONFIG_IS_ENABLED(SATA) instead of CONFIG_CMD_SATA
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (17 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 18/26] ns16550: match when to define bdf with uart code Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-26 14:56   ` Simon Glass
  2023-02-24 18:10 ` [PATCH v2 20/26] wandboard: use CONFIG_IS_ENABLED(SATA) instead of ifdef CONFIG_SATA Troy Kisky
                   ` (6 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Baruch Siach, Fabio Estevam

setup_sata is linked with
obj-$(CONFIG_SATA) += sata.o

So use SATA instead of CMD_SATA.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
---

Changes in v2:
- use normal if, not preprocessor

 board/solidrun/mx6cuboxi/mx6cuboxi.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/board/solidrun/mx6cuboxi/mx6cuboxi.c b/board/solidrun/mx6cuboxi/mx6cuboxi.c
index 7c44379ec4a..6fa5cf4d27d 100644
--- a/board/solidrun/mx6cuboxi/mx6cuboxi.c
+++ b/board/solidrun/mx6cuboxi/mx6cuboxi.c
@@ -275,9 +275,8 @@ int board_early_init_f(void)
 {
 	setup_iomux_uart();
 
-#ifdef CONFIG_CMD_SATA
-	setup_sata();
-#endif
+	if (CONFIG_IS_ENABLED(SATA))
+		setup_sata();
 	setup_fec();
 
 	return 0;
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 20/26] wandboard: use CONFIG_IS_ENABLED(SATA) instead of ifdef CONFIG_SATA
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (18 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 19/26] solidrun: mx6cuboxi: use CONFIG_IS_ENABLED(SATA) instead of CONFIG_CMD_SATA Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-26 14:56   ` Simon Glass
  2023-02-24 18:10 ` [PATCH v2 21/26] arm: mach-imx: use CONFIG_$(SPL_)SATA instead of CONFIG_SATA Troy Kisky
                   ` (5 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Fabio Estevam

Prepare for linking setup_sata only when CONFIG_SATA/CONFIG_SPL_SATA
is defined.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
---

Changes in v2:
- new in series

 board/wandboard/wandboard.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index da995dd0f58..48914450a29 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -352,9 +352,8 @@ static void setup_display(void)
 int board_early_init_f(void)
 {
 	setup_iomux_uart();
-#ifdef CONFIG_SATA
-	setup_sata();
-#endif
+	if (CONFIG_IS_ENABLED(SATA))
+		setup_sata();
 
 	return 0;
 }
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 21/26] arm: mach-imx: use CONFIG_$(SPL_)SATA instead of CONFIG_SATA
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (19 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 20/26] wandboard: use CONFIG_IS_ENABLED(SATA) instead of ifdef CONFIG_SATA Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 22/26] x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI) Troy Kisky
                   ` (4 subsequent siblings)
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Fabio Estevam, NXP i.MX U-Boot Team,
	Stefano Babic

This avoid an error with enable_sata_clock when
defined(CONFIG_SATA) is changed to CONFIG_IS_ENABLED(SATA).

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 arch/arm/mach-imx/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-imx/Makefile b/arch/arm/mach-imx/Makefile
index 4dfc60eedc4..50f26975eac 100644
--- a/arch/arm/mach-imx/Makefile
+++ b/arch/arm/mach-imx/Makefile
@@ -54,7 +54,7 @@ obj-$(CONFIG_IMX_RDC) += rdc-sema.o
 ifneq ($(CONFIG_SPL_BUILD),y)
 obj-$(CONFIG_IMX_BOOTAUX) += imx_bootaux.o
 endif
-obj-$(CONFIG_SATA) += sata.o
+obj-$(CONFIG_$(SPL_)SATA) += sata.o
 obj-$(CONFIG_IMX_HAB)    += hab.o
 obj-$(CONFIG_SYSCOUNTER_TIMER) += syscounter.o
 endif
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 22/26] x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI)
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (20 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 21/26] arm: mach-imx: use CONFIG_$(SPL_)SATA instead of CONFIG_SATA Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-26 14:56   ` Simon Glass
  2023-02-24 18:10 ` [PATCH v2 23/26] gateworks: venice: Always define setup_fec and setup_eqos Troy Kisky
                   ` (3 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, AKASHI Takahiro, Bin Meng,
	Heinrich Schuchardt, Jason Liu, Rasmus Villemoes, Stefan Roese

This avoids an error when ifdef CONFIG_PCI is changed to
if CONFIG_IS_ENABLED(PCI)

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
---

Changes in v2:
- use an accessor function gd_set_pci_ram_top

 arch/x86/cpu/i386/cpu.c           | 2 +-
 include/asm-generic/global_data.h | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/arch/x86/cpu/i386/cpu.c b/arch/x86/cpu/i386/cpu.c
index c7f6c5a013e..068670dfc41 100644
--- a/arch/x86/cpu/i386/cpu.c
+++ b/arch/x86/cpu/i386/cpu.c
@@ -415,7 +415,7 @@ int cpu_phys_address_size(void)
 /* Don't allow PCI region 3 to use memory in the 2-4GB memory hole */
 static void setup_pci_ram_top(void)
 {
-	gd->pci_ram_top = 0x80000000U;
+	gd_set_pci_ram_top(0x80000000U);
 }
 
 static void setup_mtrr(void)
diff --git a/include/asm-generic/global_data.h b/include/asm-generic/global_data.h
index 987fb66c17a..952e17b2c13 100644
--- a/include/asm-generic/global_data.h
+++ b/include/asm-generic/global_data.h
@@ -560,6 +560,12 @@ static_assert(sizeof(struct global_data) == GD_SIZE);
 #define gd_event_state()	NULL
 #endif
 
+#if CONFIG_IS_ENABLED(PCI)
+#define gd_set_pci_ram_top(val)	gd->pci_ram_top = val
+#else
+#define gd_set_pci_ram_top(val)
+#endif
+
 /**
  * enum gd_flags - global data flags
  *
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 23/26] gateworks: venice: Always define setup_fec and setup_eqos
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (21 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 22/26] x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI) Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-26 14:56   ` Simon Glass
  2023-02-24 18:10 ` [PATCH v2 24/26] power: pmic: add dm style definitions if not CONFIG_IS_ENABLED(POWER_LEGACY) Troy Kisky
                   ` (2 subsequent siblings)
  25 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky, Tim Harvey

The compiler will optimize away base on IS_ENABLED(CONFIG_FEC_MXC).
It avoids an error in converting to CONFIG_IS_ENABLED(NET).

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
---

Changes in v2:
- Always define function instead of using same protection

 board/gateworks/venice/venice.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/gateworks/venice/venice.c b/board/gateworks/venice/venice.c
index c4d86c26a9b..7a819e76a1c 100644
--- a/board/gateworks/venice/venice.c
+++ b/board/gateworks/venice/venice.c
@@ -41,7 +41,6 @@ int board_fit_config_name_match(const char *name)
 	return -1;
 }
 
-#if (IS_ENABLED(CONFIG_NET))
 static int setup_fec(void)
 {
 	struct iomuxc_gpr_base_regs *gpr =
@@ -71,6 +70,7 @@ static int setup_eqos(void)
 	return set_clk_eqos(ENET_125MHZ);
 }
 
+#if IS_ENABLED(CONFIG_NET)
 int board_phy_config(struct phy_device *phydev)
 {
 	unsigned short val;
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 24/26] power: pmic: add dm style definitions if not CONFIG_IS_ENABLED(POWER_LEGACY)
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (22 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 23/26] gateworks: venice: Always define setup_fec and setup_eqos Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 25/26] arm: cpu: armv7: ls102xa: fdt: remove eth_device support Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 26/26] CI: add test/usage_of_is_enabled_check.sh Troy Kisky
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Jaehoon Chung, Lukasz Majewski

This avoids an error in converting to CONFIG_IS_ENABLED(DM_PMIC).
Many boards SPL code needs these definitions to compile, even if
the functions are not linked.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 include/power/pmic.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/power/pmic.h b/include/power/pmic.h
index 70f2709bd0b..636221692d0 100644
--- a/include/power/pmic.h
+++ b/include/power/pmic.h
@@ -86,7 +86,7 @@ struct pmic {
 #endif /* CONFIG_IS_ENABLED(POWER_LEGACY) */
 
 /* TODO: Change to CONFIG_IS_ENABLED(DM_PMIC) when SPL_DM_PMIC exists */
-#ifdef CONFIG_DM_PMIC
+#if defined(CONFIG_DM_PMIC) || !CONFIG_IS_ENABLED(POWER_LEGACY)
 /**
  * U-Boot PMIC Framework
  * =====================
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 25/26] arm: cpu: armv7: ls102xa: fdt: remove eth_device support
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (23 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 24/26] power: pmic: add dm style definitions if not CONFIG_IS_ENABLED(POWER_LEGACY) Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  2023-02-24 18:10 ` [PATCH v2 26/26] CI: add test/usage_of_is_enabled_check.sh Troy Kisky
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot; +Cc: gary.bisson, Troy Kisky

commit e524f3a449f5 ("net: Remove eth_legacy.c")

removed struct eth_device
This prevents errors in the conversion to CONFIG_IS_ENABLED(DM_ETH).

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 arch/arm/cpu/armv7/ls102xa/fdt.c | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/arch/arm/cpu/armv7/ls102xa/fdt.c b/arch/arm/cpu/armv7/ls102xa/fdt.c
index 599b7e18ef3..a5c5c780ae8 100644
--- a/arch/arm/cpu/armv7/ls102xa/fdt.c
+++ b/arch/arm/cpu/armv7/ls102xa/fdt.c
@@ -25,11 +25,7 @@ DECLARE_GLOBAL_DATA_PTR;
 
 void ft_fixup_enet_phy_connect_type(void *fdt)
 {
-#ifdef CONFIG_DM_ETH
 	struct udevice *dev;
-#else
-	struct eth_device *dev;
-#endif
 	struct tsec_private *priv;
 	const char *enet_path, *phy_path;
 	char enet[16];
@@ -37,12 +33,8 @@ void ft_fixup_enet_phy_connect_type(void *fdt)
 	int phy_node;
 	int i = 0;
 	uint32_t ph;
-#ifdef CONFIG_DM_ETH
 	char *name[3] = { "ethernet@2d10000", "ethernet@2d50000",
 			  "ethernet@2d90000" };
-#else
-	char *name[3] = { "eTSEC1", "eTSEC2", "eTSEC3" };
-#endif
 
 	for (; i < ARRAY_SIZE(name); i++) {
 		dev = eth_get_dev_by_name(name[i]);
@@ -53,11 +45,7 @@ void ft_fixup_enet_phy_connect_type(void *fdt)
 			continue;
 		}
 
-#ifdef CONFIG_DM_ETH
 		priv = dev_get_priv(dev);
-#else
-		priv = dev->priv;
-#endif
 		if (priv->flags & TSEC_SGMII)
 			continue;
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* [PATCH v2 26/26] CI: add test/usage_of_is_enabled_check.sh
  2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
                   ` (24 preceding siblings ...)
  2023-02-24 18:10 ` [PATCH v2 25/26] arm: cpu: armv7: ls102xa: fdt: remove eth_device support Troy Kisky
@ 2023-02-24 18:10 ` Troy Kisky
  25 siblings, 0 replies; 45+ messages in thread
From: Troy Kisky @ 2023-02-24 18:10 UTC (permalink / raw)
  To: sjg, trini, u-boot
  Cc: gary.bisson, Troy Kisky, Heinrich Schuchardt, Joel Stanley, Rick Chen

Add script usage_of_is_enabled_check to print any configs that
use CONFIG_IS_ENABLED instead of IS_ENABLED and vice versa.

Add usage_of_is_enabled_commit.sh to generate commits to fix the above
issues.

You can remove entries from test/usage_of_is_enabled_todo.txt
or the entire file and then run
test/usage_of_is_enabled_commit.sh
to convert to suggested usage of CONFIG_IS_ENABLED/IS_ENABLED

or run test/usage_of_is_enabled_check.sh to
see which configs are still todo.

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 .azure-pipelines.yml                |  11 ++
 .gitlab-ci.yml                      |   5 +
 test/usage_of_is_enabled_check.sh   |  19 +++
 test/usage_of_is_enabled_commit.sh  |  12 ++
 test/usage_of_is_enabled_correct.sh |  50 +++++++
 test/usage_of_is_enabled_exempt.txt |   9 ++
 test/usage_of_is_enabled_list.sh    |  86 ++++++++++++
 test/usage_of_is_enabled_splcfg.txt |  21 +++
 test/usage_of_is_enabled_todo.txt   | 210 ++++++++++++++++++++++++++++
 9 files changed, 423 insertions(+)
 create mode 100755 test/usage_of_is_enabled_check.sh
 create mode 100755 test/usage_of_is_enabled_commit.sh
 create mode 100755 test/usage_of_is_enabled_correct.sh
 create mode 100644 test/usage_of_is_enabled_exempt.txt
 create mode 100755 test/usage_of_is_enabled_list.sh
 create mode 100644 test/usage_of_is_enabled_splcfg.txt
 create mode 100644 test/usage_of_is_enabled_todo.txt

diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index 8327edf87aa..3f216d82a7e 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -67,6 +67,17 @@ stages:
                   :^doc/ :^arch/arm/dts/ :^scripts/kconfig/lkc.h
                   :^include/linux/kconfig.h :^tools/ && exit 1 || exit 0
 
+  - job: check_usage_of_is_enabled
+    displayName: 'Check usage of CONFIG_IS_ENABLED vs IS_ENABLED'
+    pool:
+      vmImage: $(ubuntu_vm)
+    container:
+      image: $(ci_runner_image)
+      options: $(container_option)
+    steps:
+      # generate list of SPL configs
+      - script: test/usage_of_is_enabled_check.sh
+
   - job: cppcheck
     displayName: 'Static code analysis with cppcheck'
     pool:
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c3ceca2974d..57330060b82 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -137,6 +137,11 @@ check for new CONFIG symbols outside Kconfig:
         :^doc/ :^arch/arm/dts/ :^scripts/kconfig/lkc.h
         :^include/linux/kconfig.h :^tools/ && exit 1 || exit 0
 
+check usage of CONFIG_IS_ENABLED vs IS_ENABLED:
+  stage: testsuites
+  script:
+    - ./test/usage_of_is_enabled_check.sh
+
 # QA jobs for code analytics
 # static code analysis with cppcheck (we can add --enable=all later)
 cppcheck:
diff --git a/test/usage_of_is_enabled_check.sh b/test/usage_of_is_enabled_check.sh
new file mode 100755
index 00000000000..6bd5d9c1ac7
--- /dev/null
+++ b/test/usage_of_is_enabled_check.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Written by Troy Kisky <troykiskyboundary@gmail.com>
+
+scriptdir=`dirname "$0"`;
+${scriptdir}/usage_of_is_enabled_list.sh | grep -vw FOO;
+if [ $? -eq 0 ] ; then
+	echo "The above may have incorrect usage of IS_ENABLED/"\
+"CONFIG_IS_ENABLED"
+	echo "Run test/usage_of_is_enabled_commit.sh and "\
+"squash with appropriate commit"
+	ret=1;
+else
+	ret=0;
+fi
+
+rm ${scriptdir}/splcfg.tmp ${scriptdir}/exclude.tmp
+exit ${ret}
diff --git a/test/usage_of_is_enabled_commit.sh b/test/usage_of_is_enabled_commit.sh
new file mode 100755
index 00000000000..593dbd1428c
--- /dev/null
+++ b/test/usage_of_is_enabled_commit.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Written by Troy Kisky <troykiskyboundary@gmail.com>
+
+scriptdir=`dirname "$0"`;
+${scriptdir}/usage_of_is_enabled_list.sh | \
+xargs -I {} sh -c "${scriptdir}/usage_of_is_enabled_correct.sh {}; \
+git commit -a -m\"CONFIG_{}: correct usage of CONFIG_IS_ENABLED/IS_ENABLED\";"
+
+
+rm ${scriptdir}/splcfg.tmp ${scriptdir}/exclude.tmp
diff --git a/test/usage_of_is_enabled_correct.sh b/test/usage_of_is_enabled_correct.sh
new file mode 100755
index 00000000000..8724747beed
--- /dev/null
+++ b/test/usage_of_is_enabled_correct.sh
@@ -0,0 +1,50 @@
+#!/bin/bash
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Written by Troy Kisky <troykiskyboundary@gmail.com>
+
+scriptdir=`dirname "$0"`;
+
+if [ -z "$1" ] ; then
+	echo missing config
+	exit 1;
+fi
+if [ ! -f "${scriptdir}/splcfg.tmp" ] ; then
+	echo missing splcfg.tmp
+	exit 1;
+fi
+
+
+grep -qw $1 ${scriptdir}/splcfg.tmp
+if [ $? -ne 0 ] ; then
+    # not splcfg
+    # change CONFIG_IS_ENABLED to IS_ENABLED
+    git grep -l \
+    -e "CONFIG_IS_ENABLED($1)" \
+     | \
+    xargs -IFile sh -c \
+    " \
+    sed -i -E \"\
+s/CONFIG_IS_ENABLED\($1\)/IS_ENABLED\(CONFIG_$1\)/g; \
+\" File";
+else
+    # splcfg
+    # change IS_ENABLED to CONFIG_IS_ENABLED
+    # change ifdef to CONFIG_IS_ENABLED
+    # change ifndef to !CONFIG_IS_ENABLED
+    # change defined to CONFIG_IS_ENABLED
+    git grep -l \
+    -e "IS_ENABLED(CONFIG_$1)" \
+    -e "^#ifdef[ \t]\+CONFIG_$1\>" \
+    -e "^#ifndef[ \t]\+CONFIG_$1\>" \
+    -e "defined(CONFIG_$1)" \
+     | \
+    xargs -IFile sh -c \
+    " \
+    sed -i -E \"\
+s/([^_])IS_ENABLED\(CONFIG_$1\)/\1CONFIG_IS_ENABLED($1)/g; \
+s/^#ifdef[ \t]+CONFIG_$1\>/#if CONFIG_IS_ENABLED\($1\)/; \
+s/^#ifndef[ \t]+CONFIG_$1\>/#if !CONFIG_IS_ENABLED\($1\)/; \
+s/defined\(CONFIG_$1\)/CONFIG_IS_ENABLED\($1\)/; \
+\" File";
+fi
diff --git a/test/usage_of_is_enabled_exempt.txt b/test/usage_of_is_enabled_exempt.txt
new file mode 100644
index 00000000000..d9fefd6cb6c
--- /dev/null
+++ b/test/usage_of_is_enabled_exempt.txt
@@ -0,0 +1,9 @@
+BLOBLIST
+BLOBLIST_FIXED
+DM_PMIC_PFUZE100
+FOO
+NAND_BOOT
+OF_CONTROL
+SYS_L2_PL310
+WATCHDOG
+X86_64
diff --git a/test/usage_of_is_enabled_list.sh b/test/usage_of_is_enabled_list.sh
new file mode 100755
index 00000000000..0f51d3602ca
--- /dev/null
+++ b/test/usage_of_is_enabled_list.sh
@@ -0,0 +1,86 @@
+#!/bin/bash
+# SPDX-License-Identifier: GPL-2.0+
+#
+# Written by Troy Kisky <troykiskyboundary@gmail.com>
+
+scriptdir=`dirname "$0"`;
+# generate list of excluded configs
+{
+# 1. ignore configs that have a number or string for a value
+git grep -h -A2 -E "^config " '*Kconfig*' | \
+sed -En '/depends on/!p' | \
+sed -En '/^config/{h;$!d} ;H;x; s/config[ \t]+(.*)\n[ \t]*/config \1 #/p' | \
+sed -E "/#bool/d; /#def_bool/d; /#tristate/d; \
+/#default y/d; /#select/d; /#prompt/d; /#imply/d" |
+sed -n -r "s/^config[[:space:]]+([0-9a-zA-Z_]+)/\n\{\1\}\n/p" | \
+sed -n -r 's/^\{([0-9a-zA-Z_]+)\}/\1/p' | sort -u;
+# 2. configs that are exempt for other reasons
+cat ${scriptdir}/usage_of_is_enabled_exempt.txt;
+# 3. configs that need converted later
+[ -f ${scriptdir}/usage_of_is_enabled_todo.txt ] && \
+cat ${scriptdir}/usage_of_is_enabled_todo.txt
+} | sort -u > ${scriptdir}/exclude.tmp
+
+# generate list of CONFIGs that should use CONFIG_IS_ENABLED
+{
+# 1. all obj-$(CONFIG_$(SPL_)xxx in Makefiles
+git grep -h 'obj-$(CONFIG_$(SPL_' '*Makefile' | sed -e "s/SPL_TPL_/SPL_/"| \
+sed -n -r 's/obj\-\$\(CONFIG_\$\(SPL_\)([0-9a-zA-Z_]+)\)/\n\{\1\}\n/gp'| \
+sed -n -r 's/\{([0-9a-zA-Z_]+)\}/\1/p';
+
+# 2. all SPL_xxx in Kconfig files
+git grep -h -E 'config [ST]PL_' '*Kconfig*' | \
+sed -n -r "s/config [ST]PL_([0-9a-zA-Z_]+)/\n\{\1\}\n/p" | \
+sed -n -r 's/\{([0-9a-zA-Z_]+)\}/\1/p';
+
+# 3. all CONFIG_CMD_xxx which already use CONFIG_IS_ENABLED
+#    The Makefile for most if these use ifndef CONFIG_SPL_BUILD
+#    instead of obj-$(CONFIG_$(SPL_)xxx
+git grep -h -E 'CONFIG_IS_ENABLED\(CMD_' | \
+sed -n -e "s/\(CONFIG_IS_ENABLED(CMD_[0-9a-zA-Z_]*)\)/\n\1\n/gp"| \
+sed -n -r "s/CONFIG_IS_ENABLED\((CMD_[0-9a-zA-Z_]+)\)/\1/p";
+
+# 4. A list of other configs that should use CONFIG_IS_ENABLED
+#    This list could be reduced if obj-$(CONFIG_$(SPL_)xxx was used instead of
+#    ifndef CONFIG_SPL_BUILD in Makefiles
+# usage_of_is_enabled_splcfg.txt mostly contains configs that should always
+# be undefined in SPL/TPL
+# Note: CONFIG_CLK was included to prevent a change in test_checkpatch.py
+# which is checking for an error.
+cat ${scriptdir}/usage_of_is_enabled_splcfg.txt;
+} | sort -u | \
+comm -23 - ${scriptdir}/exclude.tmp >${scriptdir}/splcfg.tmp
+
+{
+# generate list of CONFIGs that incorrectly use CONFIG_IS_ENABLED
+git grep -h CONFIG_IS_ENABLED | \
+sed -n -e "s/\(CONFIG_IS_ENABLED([0-9a-zA-Z_]*)\)/\n\1\n/gp"| \
+sed -n -r "s/CONFIG_IS_ENABLED\(([0-9a-zA-Z_]+)\)/\1/p" |sort -u| \
+comm -23 - ${scriptdir}/exclude.tmp | \
+comm -23 - ${scriptdir}/splcfg.tmp ;
+
+# generate list of CONFIGs that incorrectly use IS_ENABLED
+git grep -h -w IS_ENABLED | \
+sed -n -e "s/\(IS_ENABLED(CONFIG_[0-9a-zA-Z_]*)\)/\n\1\n/gp"| \
+sed -n -r "s/IS_ENABLED\(CONFIG_([0-9a-zA-Z_]+)\)/\1/p" |sort -u| \
+join - ${scriptdir}/splcfg.tmp;
+
+# generate list of CONFIGs that incorrectly use ifdef
+git grep -h -E "^#ifdef[ \t]+CONFIG_" | \
+sed -n -E "s/(ifdef[ \t]+CONFIG_[0-9a-zA-Z_]+)/\n\1\n/p"| \
+sed -n -E "s/ifdef[ \t]+CONFIG_([0-9a-zA-Z_]+)/\1/p" |sort -u| \
+join - ${scriptdir}/splcfg.tmp ;
+
+# generate list of CONFIGs that incorrectly use ifndef
+git grep -h -E "^#ifndef[ \t]+CONFIG_" | \
+sed -n -E "s/(ifndef[ \t]+CONFIG_[0-9a-zA-Z_]+)/\n\1\n/p"| \
+sed -n -E "s/ifndef[ \t]+CONFIG_([0-9a-zA-Z_]+)/\1/p" |sort -u| \
+join - ${scriptdir}/splcfg.tmp ;
+
+# generate list of CONFIGs that incorrectly use defined
+git grep -h -E "defined\(CONFIG_" | \
+sed -n -E "s/(defined\(CONFIG_[0-9a-zA-Z_]+\))/\n\1\n/gp"| \
+sed -n -E "s/defined\(CONFIG_([0-9a-zA-Z_]+)\)/\1/p" |sort -u| \
+join - ${scriptdir}/splcfg.tmp ;
+
+} | sort -u;
diff --git a/test/usage_of_is_enabled_splcfg.txt b/test/usage_of_is_enabled_splcfg.txt
new file mode 100644
index 00000000000..29d6257c5c7
--- /dev/null
+++ b/test/usage_of_is_enabled_splcfg.txt
@@ -0,0 +1,21 @@
+BZIP2
+CONFIG_CLK
+CONSOLE_MUX
+DM_EVENT
+DM_HWSPINLOCK
+DM_RNG
+DM_STDIO
+EFI_DEVICE_PATH_TO_TEXT
+EFI_LOADER
+ERRNO_STR
+EVENT_DYNAMIC
+GENERATE_SMBIOS_TABLE
+IOMMU
+MMC_HW_PARTITIONING
+NAND_CS_INIT
+OFNODE_MULTI_TREE
+PINCTRL_ARMADA_38X
+PRE_CONSOLE_BUFFER
+RESET_MEDIATEK
+RESET_ROCKCHIP
+UT_DM
diff --git a/test/usage_of_is_enabled_todo.txt b/test/usage_of_is_enabled_todo.txt
new file mode 100644
index 00000000000..005531cff46
--- /dev/null
+++ b/test/usage_of_is_enabled_todo.txt
@@ -0,0 +1,210 @@
+ACPIGEN
+ARCH_MVEBU
+ARCH_VERSAL_NET
+ARM_PSCI_FW
+ARMV8_SEC_FIRMWARE_SUPPORT
+ATMEL_PIT_TIMER
+BLK
+BLOCK_CACHE
+BOOTCOUNT_LIMIT
+BOOTDEV_ETH
+BOOTDEV_SPI_FLASH
+BOOTSTAGE
+BOOTSTD
+BZIP2
+CLK
+CLK_CCF
+CLK_IMX6Q
+CMD_DHCP
+CMDLINE
+CMD_PXE
+CONSOLE_MUX
+COREBOOT_SYSINFO
+CPU
+CRC32_VERIFY
+CROS_EC_KEYB
+DFU_SF_PART
+DFU_VIRT
+DISPLAY_AER_FULL
+DM
+DMA
+DM_DMA
+DM_ETH
+DM_GPIO
+DM_I2C
+DM_KEYBOARD
+DM_MMC
+DM_PMIC
+DM_PMIC_DA9063
+DM_REGULATOR
+DM_RNG
+DM_RTC
+DM_SERIAL
+DM_SPI
+DM_SPI_FLASH
+DM_USB
+DM_USB_GADGET
+DOS_PARTITION
+DWC_AHSATA_AHCI
+EFI_DT_FIXUP
+EFI_EBBR_2_1_CONFORMANCE
+EFI_LOADER
+EFI_PARTITION
+EFI_SCROLL_ON_CLEAR_SCREEN
+EFI_TCG2_PROTOCOL_MEASURE_DTB
+EFI_UNICODE_CAPITALIZATION
+ENV_APPEND
+ENV_IS_IN_EXT4
+ENV_IS_IN_FAT
+ENV_IS_IN_FLASH
+ENV_IS_IN_MMC
+ENV_IS_IN_NAND
+ENV_IS_IN_SPI_FLASH
+ENV_IS_NOWHERE
+ENV_WRITEABLE_LIST
+ERRNO_STR
+EVENT_DEBUG
+EXPO
+EXYNOS7870
+EXYNOS7880
+FASTBOOT_UUU_SUPPORT
+FAT_WRITE
+FIT
+FIT_CIPHER
+FIT_IMAGE_POST_PROCESS
+FIT_SIGNATURE
+FIT_VERBOSE
+FPGA
+FRU_SC
+FSL_ISBC_KEY_EXT
+FSL_LS_PPA
+FS_LOADER
+FSP_VERSION2
+GENERATE_ACPI_TABLE
+GENERATE_SMBIOS_TABLE
+GMAC_ROCKCHIP
+GZIP
+I2C_EEPROM
+I8259_PIC
+IMX_RDC
+LED
+LEGACY_IMAGE_FORMAT
+LIB_UUID
+LOG
+LZ4
+LZMA
+LZO
+MALTA
+MARY
+MEMSIZE_IN_BYTES
+MIPS_BOOT_CMDLINE_LEGACY
+MIPS_BOOT_ENV_LEGACY
+MIPS_BOOT_FDT
+MMC
+MMC_IO_VOLTAGE
+MMC_VERBOSE
+MULTI_DTB_FIT
+MULTIPLEXER
+MXC_OCOTP
+NAND_DENALI
+NET
+NO_FB_CLEAR
+NXP_FSPI
+OF_LIBFDT
+OF_LIVE
+OFNODE_MULTI_TREE
+OF_REAL
+OF_TRANSLATE
+OPTEE
+OPTEE_IMAGE
+PARTITIONS
+PARTITION_UUIDS
+PCI
+PCI_PNP
+PG_WCOM_UBOOT_UPDATE_SUPPORTED
+PHY
+PHY_CADENCE_SIERRA
+PHY_CADENCE_TORRENT
+PHY_FIXED
+PINCTRL
+PKCS7_MESSAGE_PARSER
+PLATDATA
+POWER_DOMAIN
+POWER_I2C
+QFW
+QFW_PIO
+RAM
+RANDOM_UUID
+RESET_MEDIATEK
+RESTORE_EXCEPTION_VECTOR_BASE
+RISCV_SMODE
+ROCKCHIP_RK8XX_DISABLE_BOOT_ON_POWERON
+RSA_PUBLIC_KEY_PARSER
+RSA_VERIFY_WITH_PKEY
+SANDBOX
+SATA
+SEC_FIRMWARE_ARMV8_PSCI
+SEMIHOSTING
+SERIAL
+SERIAL_PUTS
+SERIAL_RX_BUFFER
+SHA1
+SHA384
+SHA512
+SHA512_HW_ACCEL
+SHA_HW_ACCEL
+SHOW_BOOT_PROGRESS
+SILENT_CONSOLE
+SILENT_CONSOLE_UPDATE_ON_RELOC
+SILENT_CONSOLE_UPDATE_ON_SET
+SIMPLE_BUS_CORRECT_RANGE
+SKIP_LOWLEVEL_INIT
+SMC911X_32_BIT
+SMP
+SPI
+SPI_BOOT
+SPI_DIRMAP
+SPI_FLASH_BAR
+SPI_FLASH_MACRONIX
+SPI_FLASH_MTD
+SPI_FLASH_SFDP_SUPPORT
+SPI_NOR_BOOT_SOFT_RESET_EXT_INVERT
+STM32_ETZPC
+SYS_CONSOLE_IS_IN_ENV
+SYS_DCACHE_OFF
+SYS_DEVICE_NULLDEV
+SYS_ICACHE_OFF
+SYSINFO
+SYSRESET
+SYS_THUMB_BUILD
+SYS_WHITE_ON_BLACK
+TARGET_DENEB
+TARGET_EVB_RK3399
+TARGET_GIEDI
+TARGET_KMCOGE5NE
+TARGET_KMETER1
+TARGET_ST_STM32MP15x
+TEST_KCONFIG
+TIMER
+_UNDEFINED
+UNIT_TEST
+USB_CDNS3_GADGET
+USB_CDNS3_HOST
+USB_ETHER
+USB_GADGET
+USB_GADGET_OS_DESCRIPTORS
+USB_HOST
+USB_STORAGE
+USE_ARCH_MEMSET
+UT_DM
+UT_UNICODE
+VID
+VIRTIO
+WDT
+X509_CERTIFICATE_PARSER
+X86_16BIT_INIT
+XILINX_MICROBLAZE0_DELAY_SLOT_EXCEP
+XILINX_MICROBLAZE0_USR_EXCEP
+ZLIB
+ZSTD
+ZYNQMP_PSU_INIT_ENABLED
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 01/26] kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check
  2023-02-24 18:10 ` [PATCH v2 01/26] kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check Troy Kisky
@ 2023-02-26 14:56   ` Simon Glass
  0 siblings, 0 replies; 45+ messages in thread
From: Simon Glass @ 2023-02-26 14:56 UTC (permalink / raw)
  To: Troy Kisky; +Cc: trini, u-boot, gary.bisson, Masahiro Yamada

On Fri, 24 Feb 2023 at 11:11, Troy Kisky <troykiskyboundary@gmail.com> wrote:
>
> This is for use when a config with an SPL version needs to always
> check the non-spl verion of the config. It avoids error messages
> from CI test script usage_of_is_enabled_check.sh
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> Changes in v2:
> - new patch
>
>  include/linux/kconfig.h | 5 +++++
>  1 file changed, 5 insertions(+)
>

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 13/26] ringneck-px30: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE
  2023-02-24 18:10 ` [PATCH v2 13/26] ringneck-px30: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE Troy Kisky
@ 2023-02-26 14:56   ` Simon Glass
  0 siblings, 0 replies; 45+ messages in thread
From: Simon Glass @ 2023-02-26 14:56 UTC (permalink / raw)
  To: Troy Kisky; +Cc: trini, u-boot, gary.bisson, Klaus Goger, Quentin Schulz

On Fri, 24 Feb 2023 at 11:11, Troy Kisky <troykiskyboundary@gmail.com> wrote:
>
> When usage_of_is_enabled_check.sh is added, this will show a false
> positive for IS_ENABLED(CONFIG_ENV_IS_NOWHERE).
> Use IS_ENABLED_NOCHECK to avoid check and error on SPL builds.
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> Changes in v2:
> - keep #error, but change condition to use IS_ENABLED_NOCHECK
>
>  board/theobroma-systems/ringneck_px30/ringneck-px30.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 14/26] puma-rk3399: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE
  2023-02-24 18:10 ` [PATCH v2 14/26] puma-rk3399: " Troy Kisky
@ 2023-02-26 14:56   ` Simon Glass
  2023-03-01 15:33   ` Tom Rini
  1 sibling, 0 replies; 45+ messages in thread
From: Simon Glass @ 2023-02-26 14:56 UTC (permalink / raw)
  To: Troy Kisky; +Cc: trini, u-boot, gary.bisson, Klaus Goger, Quentin Schulz

On Fri, 24 Feb 2023 at 11:11, Troy Kisky <troykiskyboundary@gmail.com> wrote:
>
> When usage_of_is_enabled_check.sh is added, this will show a false
> positive for IS_ENABLED(CONFIG_ENV_IS_NOWHERE).
> Use IS_ENABLED_NOCHECK to avoid check and error on SPL builds.
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> Changes in v2:
> - keep #error, but change condition to use IS_ENABLED_NOCHECK
>
>  board/theobroma-systems/puma_rk3399/puma-rk3399.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 19/26] solidrun: mx6cuboxi: use CONFIG_IS_ENABLED(SATA) instead of CONFIG_CMD_SATA
  2023-02-24 18:10 ` [PATCH v2 19/26] solidrun: mx6cuboxi: use CONFIG_IS_ENABLED(SATA) instead of CONFIG_CMD_SATA Troy Kisky
@ 2023-02-26 14:56   ` Simon Glass
  0 siblings, 0 replies; 45+ messages in thread
From: Simon Glass @ 2023-02-26 14:56 UTC (permalink / raw)
  To: Troy Kisky; +Cc: trini, u-boot, gary.bisson, Baruch Siach, Fabio Estevam

On Fri, 24 Feb 2023 at 11:11, Troy Kisky <troykiskyboundary@gmail.com> wrote:
>
> setup_sata is linked with
> obj-$(CONFIG_SATA) += sata.o
>
> So use SATA instead of CMD_SATA.
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> Changes in v2:
> - use normal if, not preprocessor
>
>  board/solidrun/mx6cuboxi/mx6cuboxi.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 20/26] wandboard: use CONFIG_IS_ENABLED(SATA) instead of ifdef CONFIG_SATA
  2023-02-24 18:10 ` [PATCH v2 20/26] wandboard: use CONFIG_IS_ENABLED(SATA) instead of ifdef CONFIG_SATA Troy Kisky
@ 2023-02-26 14:56   ` Simon Glass
  0 siblings, 0 replies; 45+ messages in thread
From: Simon Glass @ 2023-02-26 14:56 UTC (permalink / raw)
  To: Troy Kisky; +Cc: trini, u-boot, gary.bisson, Fabio Estevam

On Fri, 24 Feb 2023 at 11:11, Troy Kisky <troykiskyboundary@gmail.com> wrote:
>
> Prepare for linking setup_sata only when CONFIG_SATA/CONFIG_SPL_SATA
> is defined.
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> Changes in v2:
> - new in series
>
>  board/wandboard/wandboard.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 22/26] x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI)
  2023-02-24 18:10 ` [PATCH v2 22/26] x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI) Troy Kisky
@ 2023-02-26 14:56   ` Simon Glass
  0 siblings, 0 replies; 45+ messages in thread
From: Simon Glass @ 2023-02-26 14:56 UTC (permalink / raw)
  To: Troy Kisky
  Cc: trini, u-boot, gary.bisson, AKASHI Takahiro, Bin Meng,
	Heinrich Schuchardt, Jason Liu, Rasmus Villemoes, Stefan Roese

On Fri, 24 Feb 2023 at 11:11, Troy Kisky <troykiskyboundary@gmail.com> wrote:
>
> This avoids an error when ifdef CONFIG_PCI is changed to
> if CONFIG_IS_ENABLED(PCI)
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> Changes in v2:
> - use an accessor function gd_set_pci_ram_top
>
>  arch/x86/cpu/i386/cpu.c           | 2 +-
>  include/asm-generic/global_data.h | 6 ++++++
>  2 files changed, 7 insertions(+), 1 deletion(-)
>

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 23/26] gateworks: venice: Always define setup_fec and setup_eqos
  2023-02-24 18:10 ` [PATCH v2 23/26] gateworks: venice: Always define setup_fec and setup_eqos Troy Kisky
@ 2023-02-26 14:56   ` Simon Glass
  0 siblings, 0 replies; 45+ messages in thread
From: Simon Glass @ 2023-02-26 14:56 UTC (permalink / raw)
  To: Troy Kisky; +Cc: trini, u-boot, gary.bisson, Tim Harvey

On Fri, 24 Feb 2023 at 11:11, Troy Kisky <troykiskyboundary@gmail.com> wrote:
>
> The compiler will optimize away base on IS_ENABLED(CONFIG_FEC_MXC).
> It avoids an error in converting to CONFIG_IS_ENABLED(NET).
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> Changes in v2:
> - Always define function instead of using same protection
>
>  board/gateworks/venice/venice.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT
  2023-02-24 18:10 ` [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT Troy Kisky
@ 2023-03-01 15:33   ` Tom Rini
  2023-03-09 19:20     ` Troy Kisky
  0 siblings, 1 reply; 45+ messages in thread
From: Tom Rini @ 2023-03-01 15:33 UTC (permalink / raw)
  To: Troy Kisky; +Cc: sjg, u-boot, gary.bisson, Marek Behún, Samuel Dionne-Riel

[-- Attachment #1: Type: text/plain, Size: 1461 bytes --]

On Fri, Feb 24, 2023 at 10:10:23AM -0800, Troy Kisky wrote:
> Avoid error messages when SPL,TPL,VPL build don't
> have the environment options of the main build.
> This is needed when defined(CONFIG_ENV_IS_IN_xxx) is changed
> to CONFIG_IS_ENABLED(ENV_IS_IN_xxx).
> 
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
> 
> (no changes since v1)
> 
>  cmd/nvedit.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/cmd/nvedit.c b/cmd/nvedit.c
> index 7cbc3fd573a..ef0fe55431c 100644
> --- a/cmd/nvedit.c
> +++ b/cmd/nvedit.c
> @@ -43,6 +43,7 @@
>  
>  DECLARE_GLOBAL_DATA_PTR;
>  
> +#if CONFIG_IS_ENABLED(ENV_SUPPORT)
>  #if	defined(CONFIG_ENV_IS_IN_EEPROM)	|| \
>  	defined(CONFIG_ENV_IS_IN_FLASH)		|| \
>  	defined(CONFIG_ENV_IS_IN_MMC)		|| \
> @@ -60,10 +61,12 @@ DECLARE_GLOBAL_DATA_PTR;
>  #endif
>  
>  #if	!defined(ENV_IS_IN_DEVICE)		&& \
> -	!defined(CONFIG_ENV_IS_NOWHERE)
> +	!defined(CONFIG_ENV_IS_NOWHERE)		&& \
> +	!defined(CONFIG_VPL_BUILD)
>  # error Define one of CONFIG_ENV_IS_IN_{EEPROM|FLASH|MMC|FAT|EXT4|\
>  NAND|NVRAM|ONENAND|SATA|SPI_FLASH|REMOTE|UBI} or CONFIG_ENV_IS_NOWHERE
>  #endif
> +#endif

This is one of the #error messes that we no longer need with Kconfig,
where we can ensure things happen. Maybe we can use def_bool y if ..
instead of default y if ..., in the ENV_IS_NOWHERE choice ?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 03/26] lib: crc32: prepare for CONFIG_IS_ENABLED changes
  2023-02-24 18:10 ` [PATCH v2 03/26] lib: crc32: prepare for CONFIG_IS_ENABLED changes Troy Kisky
@ 2023-03-01 15:33   ` Tom Rini
  0 siblings, 0 replies; 45+ messages in thread
From: Tom Rini @ 2023-03-01 15:33 UTC (permalink / raw)
  To: Troy Kisky; +Cc: sjg, u-boot, gary.bisson, Marek Vasut, Stefan Roese

[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]

On Fri, Feb 24, 2023 at 10:10:24AM -0800, Troy Kisky wrote:
> We need to include <linux/kconfig.h> in order to include
> files that use CONFIG_IS_ENABLED. TO prepare for that
> be more direct with using defined(USE_HOSTCC).
> 
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
> 
> Changes in v2:
> - delay include of linux/kconfig.h to do from Makefile
> - as suggested by Simon
> 
>  lib/crc32.c | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/crc32.c b/lib/crc32.c
> index aa94d70ef3e..12c104c62a4 100644
> --- a/lib/crc32.c
> +++ b/lib/crc32.c
> @@ -14,11 +14,14 @@
>  #else
>  #include <common.h>
>  #include <efi_loader.h>
> +#if defined(CONFIG_HW_WATCHDOG) || defined(CONFIG_WATCHDOG)
> +#define PET_WDG
> +#endif

Lets introduce a Kconfig symbol like HAS_WATCHDOG_RUNNING and then
update all of the places we have this convention (there's a few this
series doesn't touch).

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 08/26] tools: prevent CONFIG_IS_ENABLED errors by including linux/kconfig.h
  2023-02-24 18:10 ` [PATCH v2 08/26] tools: prevent CONFIG_IS_ENABLED errors by including linux/kconfig.h Troy Kisky
@ 2023-03-01 15:33   ` Tom Rini
  0 siblings, 0 replies; 45+ messages in thread
From: Tom Rini @ 2023-03-01 15:33 UTC (permalink / raw)
  To: Troy Kisky
  Cc: sjg, u-boot, gary.bisson, Heiko Thiery, Marek Vasut,
	Max Krummenacher, Pali Rohár, Samuel Holland, Stefan Roese

[-- Attachment #1: Type: text/plain, Size: 328 bytes --]

On Fri, Feb 24, 2023 at 10:10:29AM -0800, Troy Kisky wrote:

> We need to include <linux/kconfig.h> in order to include
> files that use CONFIG_IS_ENABLED.
> 
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@konsulko.com>

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx
  2023-02-24 18:10 ` [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx Troy Kisky
@ 2023-03-01 15:33   ` Tom Rini
  2023-03-02 18:21     ` Troy Kisky
  0 siblings, 1 reply; 45+ messages in thread
From: Tom Rini @ 2023-03-01 15:33 UTC (permalink / raw)
  To: Troy Kisky
  Cc: sjg, u-boot, gary.bisson, Andre Przywara, Heiko Thiery,
	Max Krummenacher, Pali Rohár, Samuel Holland, Stefan Roese,
	Sughosh Ganu

[-- Attachment #1: Type: text/plain, Size: 1096 bytes --]

On Fri, Feb 24, 2023 at 10:10:30AM -0800, Troy Kisky wrote:
> CONFIG_IS_ENABLED(FIT_SIGNATURE) will check for
> CONFIG_TOOLS_FIT_SIGNATURE. So define it now in preparation.
> 
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
> 
> (no changes since v1)
> 
>  tools/Makefile | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/tools/Makefile b/tools/Makefile
> index 5d6284e6451..86f1b6b5049 100644
> --- a/tools/Makefile
> +++ b/tools/Makefile
> @@ -162,8 +162,10 @@ ifdef CONFIG_TOOLS_LIBCRYPTO
>  # This affects include/image.h, but including the board config file
>  # is tricky, so manually define this options here.
>  HOST_EXTRACFLAGS	+= -DCONFIG_FIT_SIGNATURE
> +HOST_EXTRACFLAGS	+= -DCONFIG_TOOLS_FIT_SIGNATURE=1
>  HOST_EXTRACFLAGS	+= -DCONFIG_FIT_SIGNATURE_MAX_SIZE=0xffffffff
>  HOST_EXTRACFLAGS	+= -DCONFIG_FIT_CIPHER
> +HOST_EXTRACFLAGS	+= -DCONFIG_TOOLS_FIT_CIPHER=1
>  endif

Is the "=1" required here, as in we check the value of the define, not
just that it is defined?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 14/26] puma-rk3399: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE
  2023-02-24 18:10 ` [PATCH v2 14/26] puma-rk3399: " Troy Kisky
  2023-02-26 14:56   ` Simon Glass
@ 2023-03-01 15:33   ` Tom Rini
  1 sibling, 0 replies; 45+ messages in thread
From: Tom Rini @ 2023-03-01 15:33 UTC (permalink / raw)
  To: Troy Kisky; +Cc: sjg, u-boot, gary.bisson, Klaus Goger, Quentin Schulz

[-- Attachment #1: Type: text/plain, Size: 604 bytes --]

On Fri, Feb 24, 2023 at 10:10:35AM -0800, Troy Kisky wrote:

> When usage_of_is_enabled_check.sh is added, this will show a false
> positive for IS_ENABLED(CONFIG_ENV_IS_NOWHERE).
> Use IS_ENABLED_NOCHECK to avoid check and error on SPL builds.
> 
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
> 
> Changes in v2:
> - keep #error, but change condition to use IS_ENABLED_NOCHECK
> 
>  board/theobroma-systems/puma_rk3399/puma-rk3399.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

As I said against v1, the platform needs to select ENV_IS_NOWHERE.

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx
  2023-03-01 15:33   ` Tom Rini
@ 2023-03-02 18:21     ` Troy Kisky
  2023-03-02 19:19       ` Tom Rini
  0 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-03-02 18:21 UTC (permalink / raw)
  To: Tom Rini
  Cc: sjg, u-boot, gary.bisson, Andre Przywara, Heiko Thiery,
	Max Krummenacher, Pali Rohár, Samuel Holland, Stefan Roese,
	Sughosh Ganu

On Wed, Mar 1, 2023 at 7:33 AM Tom Rini <trini@konsulko.com> wrote:

> On Fri, Feb 24, 2023 at 10:10:30AM -0800, Troy Kisky wrote:
> > CONFIG_IS_ENABLED(FIT_SIGNATURE) will check for
> > CONFIG_TOOLS_FIT_SIGNATURE. So define it now in preparation.
> >
> > Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> > Reviewed-by: Simon Glass <sjg@chromium.org>
> > ---
> >
> > (no changes since v1)
> >
> >  tools/Makefile | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/tools/Makefile b/tools/Makefile
> > index 5d6284e6451..86f1b6b5049 100644
> > --- a/tools/Makefile
> > +++ b/tools/Makefile
> > @@ -162,8 +162,10 @@ ifdef CONFIG_TOOLS_LIBCRYPTO
> >  # This affects include/image.h, but including the board config file
> >  # is tricky, so manually define this options here.
> >  HOST_EXTRACFLAGS     += -DCONFIG_FIT_SIGNATURE
> > +HOST_EXTRACFLAGS     += -DCONFIG_TOOLS_FIT_SIGNATURE=1
> >  HOST_EXTRACFLAGS     += -DCONFIG_FIT_SIGNATURE_MAX_SIZE=0xffffffff
> >  HOST_EXTRACFLAGS     += -DCONFIG_FIT_CIPHER
> > +HOST_EXTRACFLAGS     += -DCONFIG_TOOLS_FIT_CIPHER=1
> >  endif
>
> Is the "=1" required here, as in we check the value of the define, not
> just that it is defined?
>
> --
> Tom
>

When it is converted to  CONFIG_IS_ENABLED it will require the =1
The CONFIG_IS_ENABLED logic counts the number of parameters and "empty
string" doesn't count.
I think it also compares to 1 somewhere in there.

BR
Troy

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx
  2023-03-02 18:21     ` Troy Kisky
@ 2023-03-02 19:19       ` Tom Rini
  0 siblings, 0 replies; 45+ messages in thread
From: Tom Rini @ 2023-03-02 19:19 UTC (permalink / raw)
  To: Troy Kisky
  Cc: sjg, u-boot, gary.bisson, Andre Przywara, Heiko Thiery,
	Max Krummenacher, Pali Rohár, Samuel Holland, Stefan Roese,
	Sughosh Ganu

[-- Attachment #1: Type: text/plain, Size: 1637 bytes --]

On Thu, Mar 02, 2023 at 10:21:29AM -0800, Troy Kisky wrote:
> On Wed, Mar 1, 2023 at 7:33 AM Tom Rini <trini@konsulko.com> wrote:
> 
> > On Fri, Feb 24, 2023 at 10:10:30AM -0800, Troy Kisky wrote:
> > > CONFIG_IS_ENABLED(FIT_SIGNATURE) will check for
> > > CONFIG_TOOLS_FIT_SIGNATURE. So define it now in preparation.
> > >
> > > Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> > > Reviewed-by: Simon Glass <sjg@chromium.org>
> > > ---
> > >
> > > (no changes since v1)
> > >
> > >  tools/Makefile | 2 ++
> > >  1 file changed, 2 insertions(+)
> > >
> > > diff --git a/tools/Makefile b/tools/Makefile
> > > index 5d6284e6451..86f1b6b5049 100644
> > > --- a/tools/Makefile
> > > +++ b/tools/Makefile
> > > @@ -162,8 +162,10 @@ ifdef CONFIG_TOOLS_LIBCRYPTO
> > >  # This affects include/image.h, but including the board config file
> > >  # is tricky, so manually define this options here.
> > >  HOST_EXTRACFLAGS     += -DCONFIG_FIT_SIGNATURE
> > > +HOST_EXTRACFLAGS     += -DCONFIG_TOOLS_FIT_SIGNATURE=1
> > >  HOST_EXTRACFLAGS     += -DCONFIG_FIT_SIGNATURE_MAX_SIZE=0xffffffff
> > >  HOST_EXTRACFLAGS     += -DCONFIG_FIT_CIPHER
> > > +HOST_EXTRACFLAGS     += -DCONFIG_TOOLS_FIT_CIPHER=1
> > >  endif
> >
> > Is the "=1" required here, as in we check the value of the define, not
> > just that it is defined?
> >
> > --
> > Tom
> >
> 
> When it is converted to  CONFIG_IS_ENABLED it will require the =1
> The CONFIG_IS_ENABLED logic counts the number of parameters and "empty
> string" doesn't count.
> I think it also compares to 1 somewhere in there.

Ah, OK, thanks.

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT
  2023-03-01 15:33   ` Tom Rini
@ 2023-03-09 19:20     ` Troy Kisky
  2023-03-09 19:36       ` Tom Rini
  0 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-03-09 19:20 UTC (permalink / raw)
  To: Tom Rini; +Cc: sjg, u-boot, gary.bisson, Marek Behún, Samuel Dionne-Riel

On Wed, Mar 1, 2023 at 7:33 AM Tom Rini <trini@konsulko.com> wrote:

> On Fri, Feb 24, 2023 at 10:10:23AM -0800, Troy Kisky wrote:
> > Avoid error messages when SPL,TPL,VPL build don't
> > have the environment options of the main build.
> > This is needed when defined(CONFIG_ENV_IS_IN_xxx) is changed
> > to CONFIG_IS_ENABLED(ENV_IS_IN_xxx).
> >
> > Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> > Reviewed-by: Simon Glass <sjg@chromium.org>
> > ---
> >
> > (no changes since v1)
> >
> >  cmd/nvedit.c | 5 ++++-
> >  1 file changed, 4 insertions(+), 1 deletion(-)
> >
> > diff --git a/cmd/nvedit.c b/cmd/nvedit.c
> > index 7cbc3fd573a..ef0fe55431c 100644
> > --- a/cmd/nvedit.c
> > +++ b/cmd/nvedit.c
> > @@ -43,6 +43,7 @@
> >
> >  DECLARE_GLOBAL_DATA_PTR;
> >
> > +#if CONFIG_IS_ENABLED(ENV_SUPPORT)
> >  #if  defined(CONFIG_ENV_IS_IN_EEPROM)        || \
> >       defined(CONFIG_ENV_IS_IN_FLASH)         || \
> >       defined(CONFIG_ENV_IS_IN_MMC)           || \
> > @@ -60,10 +61,12 @@ DECLARE_GLOBAL_DATA_PTR;
> >  #endif
> >
> >  #if  !defined(ENV_IS_IN_DEVICE)              && \
> > -     !defined(CONFIG_ENV_IS_NOWHERE)
> > +     !defined(CONFIG_ENV_IS_NOWHERE)         && \
> > +     !defined(CONFIG_VPL_BUILD)
> >  # error Define one of CONFIG_ENV_IS_IN_{EEPROM|FLASH|MMC|FAT|EXT4|\
> >  NAND|NVRAM|ONENAND|SATA|SPI_FLASH|REMOTE|UBI} or CONFIG_ENV_IS_NOWHERE
> >  #endif
> > +#endif
>
> This is one of the #error messes that we no longer need with Kconfig,
> where we can ensure things happen. Maybe we can use def_bool y if ..
> instead of default y if ..., in the ENV_IS_NOWHERE choice ?
>
> --
> Tom
>

Hi Tom

There is some weirdness here
git grep -A1 CONFIG_ENV_IS_NOWHERE *

am62ax_evm_r5_defconfig:CONFIG_ENV_IS_NOWHERE=y
am62ax_evm_r5_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
aristainetos2c_defconfig:CONFIG_ENV_IS_NOWHERE=y
aristainetos2c_defconfig-CONFIG_ENV_IS_IN_SPI_FLASH=y
--
aristainetos2ccslb_defconfig:CONFIG_ENV_IS_NOWHERE=y
aristainetos2ccslb_defconfig-CONFIG_ENV_IS_IN_SPI_FLASH=y
--
imx6q_bosch_acc_defconfig:CONFIG_ENV_IS_NOWHERE=y
imx6q_bosch_acc_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
imx8mn_beacon_2g_defconfig:CONFIG_ENV_IS_NOWHERE=y
imx8mn_beacon_2g_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
imx8mn_beacon_defconfig:CONFIG_ENV_IS_NOWHERE=y
imx8mn_beacon_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
imx8mn_beacon_fspi_defconfig:CONFIG_ENV_IS_NOWHERE=y
imx8mn_beacon_fspi_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
imx8mp_dhcom_pdk2_defconfig:CONFIG_ENV_IS_NOWHERE=y
imx8mp_dhcom_pdk2_defconfig-CONFIG_ENV_IS_IN_SPI_FLASH=y
--
imx93_11x11_evk_defconfig:CONFIG_ENV_IS_NOWHERE=y
imx93_11x11_evk_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
imxrt1020-evk_defconfig:CONFIG_ENV_IS_NOWHERE=y
imxrt1020-evk_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
imxrt1050-evk_defconfig:CONFIG_ENV_IS_NOWHERE=y
imxrt1050-evk_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
imxrt1170-evk_defconfig:CONFIG_ENV_IS_NOWHERE=y
imxrt1170-evk_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
j721e_evm_a72_defconfig:CONFIG_ENV_IS_NOWHERE=y
j721e_evm_a72_defconfig-CONFIG_ENV_IS_IN_FAT=y
--
j721e_hs_evm_a72_defconfig:CONFIG_ENV_IS_NOWHERE=y
j721e_hs_evm_a72_defconfig-CONFIG_ENV_IS_IN_FAT=y
--
puma-rk3399_defconfig:CONFIG_ENV_IS_NOWHERE=y
puma-rk3399_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
ringneck-px30_defconfig:CONFIG_ENV_IS_NOWHERE=y
ringneck-px30_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
sandbox64_defconfig:CONFIG_ENV_IS_NOWHERE=y
sandbox64_defconfig-CONFIG_ENV_IS_IN_EXT4=y
--
sandbox_defconfig:CONFIG_ENV_IS_NOWHERE=y
sandbox_defconfig-CONFIG_ENV_IS_IN_EXT4=y
--
sandbox_flattree_defconfig:CONFIG_ENV_IS_NOWHERE=y
sandbox_flattree_defconfig-CONFIG_ENV_IS_IN_EXT4=y
--
sandbox_noinst_defconfig:CONFIG_ENV_IS_NOWHERE=y
sandbox_noinst_defconfig-CONFIG_ENV_IS_IN_EXT4=y
--
sandbox_spl_defconfig:CONFIG_ENV_IS_NOWHERE=y
sandbox_spl_defconfig-CONFIG_ENV_IS_IN_EXT4=y
--
sandbox_vpl_defconfig:CONFIG_ENV_IS_NOWHERE=y
sandbox_vpl_defconfig-CONFIG_ENV_IS_IN_EXT4=y
--
socrates_defconfig:CONFIG_ENV_IS_NOWHERE=y
socrates_defconfig-CONFIG_ENV_IS_IN_FLASH=y
--
stm32mp13_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp13_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
stm32mp15-icore-stm32mp1-ctouch2_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp15-icore-stm32mp1-ctouch2_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
stm32mp15-icore-stm32mp1-edimm2.2_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp15-icore-stm32mp1-edimm2.2_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
stm32mp15-microgea-stm32mp1-microdev2_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp15-microgea-stm32mp1-microdev2_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
stm32mp15_basic_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp15_basic_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
stm32mp15_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp15_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
stm32mp15_trusted_defconfig:CONFIG_ENV_IS_NOWHERE=y
stm32mp15_trusted_defconfig-CONFIG_ENV_IS_IN_MMC=y
--
xilinx_versal_virt_defconfig:CONFIG_ENV_IS_NOWHERE=y
xilinx_versal_virt_defconfig-CONFIG_ENV_IS_IN_FAT=y
--
xilinx_zynq_virt_defconfig:CONFIG_ENV_IS_NOWHERE=y
xilinx_zynq_virt_defconfig-CONFIG_ENV_IS_IN_FAT=y
--
xilinx_zynqmp_virt_defconfig:CONFIG_ENV_IS_NOWHERE=y
xilinx_zynqmp_virt_defconfig-CONFIG_ENV_IS_IN_FAT=y

_________


Should I force  CONFIG_ENV_IS_NOWHERE=n in these cases?

BR
Troy

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT
  2023-03-09 19:20     ` Troy Kisky
@ 2023-03-09 19:36       ` Tom Rini
  2023-03-09 20:45         ` Troy Kisky
  0 siblings, 1 reply; 45+ messages in thread
From: Tom Rini @ 2023-03-09 19:36 UTC (permalink / raw)
  To: Troy Kisky; +Cc: sjg, u-boot, gary.bisson, Marek Behún, Samuel Dionne-Riel

[-- Attachment #1: Type: text/plain, Size: 2137 bytes --]

On Thu, Mar 09, 2023 at 11:20:33AM -0800, Troy Kisky wrote:
> On Wed, Mar 1, 2023 at 7:33 AM Tom Rini <trini@konsulko.com> wrote:
> 
> > On Fri, Feb 24, 2023 at 10:10:23AM -0800, Troy Kisky wrote:
> > > Avoid error messages when SPL,TPL,VPL build don't
> > > have the environment options of the main build.
> > > This is needed when defined(CONFIG_ENV_IS_IN_xxx) is changed
> > > to CONFIG_IS_ENABLED(ENV_IS_IN_xxx).
> > >
> > > Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> > > Reviewed-by: Simon Glass <sjg@chromium.org>
> > > ---
> > >
> > > (no changes since v1)
> > >
> > >  cmd/nvedit.c | 5 ++++-
> > >  1 file changed, 4 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/cmd/nvedit.c b/cmd/nvedit.c
> > > index 7cbc3fd573a..ef0fe55431c 100644
> > > --- a/cmd/nvedit.c
> > > +++ b/cmd/nvedit.c
> > > @@ -43,6 +43,7 @@
> > >
> > >  DECLARE_GLOBAL_DATA_PTR;
> > >
> > > +#if CONFIG_IS_ENABLED(ENV_SUPPORT)
> > >  #if  defined(CONFIG_ENV_IS_IN_EEPROM)        || \
> > >       defined(CONFIG_ENV_IS_IN_FLASH)         || \
> > >       defined(CONFIG_ENV_IS_IN_MMC)           || \
> > > @@ -60,10 +61,12 @@ DECLARE_GLOBAL_DATA_PTR;
> > >  #endif
> > >
> > >  #if  !defined(ENV_IS_IN_DEVICE)              && \
> > > -     !defined(CONFIG_ENV_IS_NOWHERE)
> > > +     !defined(CONFIG_ENV_IS_NOWHERE)         && \
> > > +     !defined(CONFIG_VPL_BUILD)
> > >  # error Define one of CONFIG_ENV_IS_IN_{EEPROM|FLASH|MMC|FAT|EXT4|\
> > >  NAND|NVRAM|ONENAND|SATA|SPI_FLASH|REMOTE|UBI} or CONFIG_ENV_IS_NOWHERE
> > >  #endif
> > > +#endif
> >
> > This is one of the #error messes that we no longer need with Kconfig,
> > where we can ensure things happen. Maybe we can use def_bool y if ..
> > instead of default y if ..., in the ENV_IS_NOWHERE choice ?
> >
> > --
> > Tom
> >
> 
> Hi Tom
> 
> There is some weirdness here
> git grep -A1 CONFIG_ENV_IS_NOWHERE *
[snip]
> Should I force  CONFIG_ENV_IS_NOWHERE=n in these cases?

No, we support more than one env location being enabled at a time, with
nowhere being the location of last resort (at run time).

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT
  2023-03-09 19:36       ` Tom Rini
@ 2023-03-09 20:45         ` Troy Kisky
  2023-03-10 23:29           ` Tom Rini
  0 siblings, 1 reply; 45+ messages in thread
From: Troy Kisky @ 2023-03-09 20:45 UTC (permalink / raw)
  To: Tom Rini; +Cc: sjg, u-boot, gary.bisson, Marek Behún, Samuel Dionne-Riel

On Thu, Mar 9, 2023 at 11:36 AM Tom Rini <trini@konsulko.com> wrote:

> On Thu, Mar 09, 2023 at 11:20:33AM -0800, Troy Kisky wrote:
> > On Wed, Mar 1, 2023 at 7:33 AM Tom Rini <trini@konsulko.com> wrote:
> >
> > > On Fri, Feb 24, 2023 at 10:10:23AM -0800, Troy Kisky wrote:
> > > > Avoid error messages when SPL,TPL,VPL build don't
> > > > have the environment options of the main build.
> > > > This is needed when defined(CONFIG_ENV_IS_IN_xxx) is changed
> > > > to CONFIG_IS_ENABLED(ENV_IS_IN_xxx).
> > > >
> > > > Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> > > > Reviewed-by: Simon Glass <sjg@chromium.org>
> > > > ---
> > > >
> > > > (no changes since v1)
> > > >
> > > >  cmd/nvedit.c | 5 ++++-
> > > >  1 file changed, 4 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/cmd/nvedit.c b/cmd/nvedit.c
> > > > index 7cbc3fd573a..ef0fe55431c 100644
> > > > --- a/cmd/nvedit.c
> > > > +++ b/cmd/nvedit.c
> > > > @@ -43,6 +43,7 @@
> > > >
> > > >  DECLARE_GLOBAL_DATA_PTR;
> > > >
> > > > +#if CONFIG_IS_ENABLED(ENV_SUPPORT)
> > > >  #if  defined(CONFIG_ENV_IS_IN_EEPROM)        || \
> > > >       defined(CONFIG_ENV_IS_IN_FLASH)         || \
> > > >       defined(CONFIG_ENV_IS_IN_MMC)           || \
> > > > @@ -60,10 +61,12 @@ DECLARE_GLOBAL_DATA_PTR;
> > > >  #endif
> > > >
> > > >  #if  !defined(ENV_IS_IN_DEVICE)              && \
> > > > -     !defined(CONFIG_ENV_IS_NOWHERE)
> > > > +     !defined(CONFIG_ENV_IS_NOWHERE)         && \
> > > > +     !defined(CONFIG_VPL_BUILD)
> > > >  # error Define one of CONFIG_ENV_IS_IN_{EEPROM|FLASH|MMC|FAT|EXT4|\
> > > >  NAND|NVRAM|ONENAND|SATA|SPI_FLASH|REMOTE|UBI} or
> CONFIG_ENV_IS_NOWHERE
> > > >  #endif
> > > > +#endif
> > >
> > > This is one of the #error messes that we no longer need with Kconfig,
> > > where we can ensure things happen. Maybe we can use def_bool y if ..
> > > instead of default y if ..., in the ENV_IS_NOWHERE choice ?
> > >
> > > --
> > > Tom
> > >
> >
> > Hi Tom
> >
> > There is some weirdness here
> > git grep -A1 CONFIG_ENV_IS_NOWHERE *
> [snip]
> > Should I force  CONFIG_ENV_IS_NOWHERE=n in these cases?
>
> No, we support more than one env location being enabled at a time, with
> nowhere being the location of last resort (at run time).
>
>
>
Okay, this help text is misleading then.

config ENV_IS_NOWHERE
bool "Environment is not stored"
default y if !ENV_IS_IN_EEPROM && !ENV_IS_IN_EXT4 && \
    !ENV_IS_IN_FAT && !ENV_IS_IN_FLASH && \
    !ENV_IS_IN_MMC && !ENV_IS_IN_NAND && \
    !ENV_IS_IN_NVRAM && !ENV_IS_IN_ONENAND && \
    !ENV_IS_IN_REMOTE && !ENV_IS_IN_SPI_FLASH && \
    !ENV_IS_IN_UBI
help
 Define this if you don't want to or can't have an environment stored
 on a storage medium. In this case the environment will still exist
 while U-Boot is running, but once U-Boot exits it will not be
 stored. U-Boot will therefore always start up with a default
 environment.
______________

Perhaps this is better ?

config ENV_IS_NOT_IN_DEVICE
def_bool y if !ENV_IS_IN_EEPROM && !ENV_IS_IN_EXT4 && \
    !ENV_IS_IN_FAT && !ENV_IS_IN_FLASH && \
    !ENV_IS_IN_MMC && !ENV_IS_IN_NAND && \
    !ENV_IS_IN_NVRAM && !ENV_IS_IN_ONENAND && \
    !ENV_IS_IN_REMOTE && !ENV_IS_IN_SPI_FLASH && \
    !ENV_IS_IN_UBI
select ENV_IS_NOWHERE

config ENV_IS_NOWHERE
bool "Environment is not stored"
help
 Define this if you don't care whether or not an environment is stored
 on a storage medium. In this case the environment will still exist
 while U-Boot is running, but once U-Boot exits it may not be
 stored. If no other ENV_IS_IN_ is defined, U-Boot will always start up
 with a default  environment.

BR
Troy

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT
  2023-03-09 20:45         ` Troy Kisky
@ 2023-03-10 23:29           ` Tom Rini
  0 siblings, 0 replies; 45+ messages in thread
From: Tom Rini @ 2023-03-10 23:29 UTC (permalink / raw)
  To: Troy Kisky; +Cc: sjg, u-boot, gary.bisson, Marek Behún, Samuel Dionne-Riel

[-- Attachment #1: Type: text/plain, Size: 4091 bytes --]

On Thu, Mar 09, 2023 at 12:45:14PM -0800, Troy Kisky wrote:
> On Thu, Mar 9, 2023 at 11:36 AM Tom Rini <trini@konsulko.com> wrote:
> 
> > On Thu, Mar 09, 2023 at 11:20:33AM -0800, Troy Kisky wrote:
> > > On Wed, Mar 1, 2023 at 7:33 AM Tom Rini <trini@konsulko.com> wrote:
> > >
> > > > On Fri, Feb 24, 2023 at 10:10:23AM -0800, Troy Kisky wrote:
> > > > > Avoid error messages when SPL,TPL,VPL build don't
> > > > > have the environment options of the main build.
> > > > > This is needed when defined(CONFIG_ENV_IS_IN_xxx) is changed
> > > > > to CONFIG_IS_ENABLED(ENV_IS_IN_xxx).
> > > > >
> > > > > Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> > > > > Reviewed-by: Simon Glass <sjg@chromium.org>
> > > > > ---
> > > > >
> > > > > (no changes since v1)
> > > > >
> > > > >  cmd/nvedit.c | 5 ++++-
> > > > >  1 file changed, 4 insertions(+), 1 deletion(-)
> > > > >
> > > > > diff --git a/cmd/nvedit.c b/cmd/nvedit.c
> > > > > index 7cbc3fd573a..ef0fe55431c 100644
> > > > > --- a/cmd/nvedit.c
> > > > > +++ b/cmd/nvedit.c
> > > > > @@ -43,6 +43,7 @@
> > > > >
> > > > >  DECLARE_GLOBAL_DATA_PTR;
> > > > >
> > > > > +#if CONFIG_IS_ENABLED(ENV_SUPPORT)
> > > > >  #if  defined(CONFIG_ENV_IS_IN_EEPROM)        || \
> > > > >       defined(CONFIG_ENV_IS_IN_FLASH)         || \
> > > > >       defined(CONFIG_ENV_IS_IN_MMC)           || \
> > > > > @@ -60,10 +61,12 @@ DECLARE_GLOBAL_DATA_PTR;
> > > > >  #endif
> > > > >
> > > > >  #if  !defined(ENV_IS_IN_DEVICE)              && \
> > > > > -     !defined(CONFIG_ENV_IS_NOWHERE)
> > > > > +     !defined(CONFIG_ENV_IS_NOWHERE)         && \
> > > > > +     !defined(CONFIG_VPL_BUILD)
> > > > >  # error Define one of CONFIG_ENV_IS_IN_{EEPROM|FLASH|MMC|FAT|EXT4|\
> > > > >  NAND|NVRAM|ONENAND|SATA|SPI_FLASH|REMOTE|UBI} or
> > CONFIG_ENV_IS_NOWHERE
> > > > >  #endif
> > > > > +#endif
> > > >
> > > > This is one of the #error messes that we no longer need with Kconfig,
> > > > where we can ensure things happen. Maybe we can use def_bool y if ..
> > > > instead of default y if ..., in the ENV_IS_NOWHERE choice ?
> > > >
> > > > --
> > > > Tom
> > > >
> > >
> > > Hi Tom
> > >
> > > There is some weirdness here
> > > git grep -A1 CONFIG_ENV_IS_NOWHERE *
> > [snip]
> > > Should I force  CONFIG_ENV_IS_NOWHERE=n in these cases?
> >
> > No, we support more than one env location being enabled at a time, with
> > nowhere being the location of last resort (at run time).
> >
> >
> >
> Okay, this help text is misleading then.
> 
> config ENV_IS_NOWHERE
> bool "Environment is not stored"
> default y if !ENV_IS_IN_EEPROM && !ENV_IS_IN_EXT4 && \
>     !ENV_IS_IN_FAT && !ENV_IS_IN_FLASH && \
>     !ENV_IS_IN_MMC && !ENV_IS_IN_NAND && \
>     !ENV_IS_IN_NVRAM && !ENV_IS_IN_ONENAND && \
>     !ENV_IS_IN_REMOTE && !ENV_IS_IN_SPI_FLASH && \
>     !ENV_IS_IN_UBI
> help
>  Define this if you don't want to or can't have an environment stored
>  on a storage medium. In this case the environment will still exist
>  while U-Boot is running, but once U-Boot exits it will not be
>  stored. U-Boot will therefore always start up with a default
>  environment.

Yes, rewording this was missed when updating the support.

> ______________
> 
> Perhaps this is better ?
> 
> config ENV_IS_NOT_IN_DEVICE
> def_bool y if !ENV_IS_IN_EEPROM && !ENV_IS_IN_EXT4 && \
>     !ENV_IS_IN_FAT && !ENV_IS_IN_FLASH && \
>     !ENV_IS_IN_MMC && !ENV_IS_IN_NAND && \
>     !ENV_IS_IN_NVRAM && !ENV_IS_IN_ONENAND && \
>     !ENV_IS_IN_REMOTE && !ENV_IS_IN_SPI_FLASH && \
>     !ENV_IS_IN_UBI
> select ENV_IS_NOWHERE
> 
> config ENV_IS_NOWHERE
> bool "Environment is not stored"
> help
>  Define this if you don't care whether or not an environment is stored
>  on a storage medium. In this case the environment will still exist
>  while U-Boot is running, but once U-Boot exits it may not be
>  stored. If no other ENV_IS_IN_ is defined, U-Boot will always start up
>  with a default  environment.
> 

Seems reasonable, thanks.

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

end of thread, other threads:[~2023-03-10 23:29 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-24 18:10 [PATCH v2 00/26] CONFIG_IS_ENABLED vs IS_ENABLED Troy Kisky
2023-02-24 18:10 ` [PATCH v2 01/26] kconfig: add IS_ENABLED_NOCHECK to bypass usage_of_is_enabled_check Troy Kisky
2023-02-26 14:56   ` Simon Glass
2023-02-24 18:10 ` [PATCH v2 02/26] cmd: nvedit: check for ENV_SUPPORT Troy Kisky
2023-03-01 15:33   ` Tom Rini
2023-03-09 19:20     ` Troy Kisky
2023-03-09 19:36       ` Tom Rini
2023-03-09 20:45         ` Troy Kisky
2023-03-10 23:29           ` Tom Rini
2023-02-24 18:10 ` [PATCH v2 03/26] lib: crc32: prepare for CONFIG_IS_ENABLED changes Troy Kisky
2023-03-01 15:33   ` Tom Rini
2023-02-24 18:10 ` [PATCH v2 04/26] lib: md5: " Troy Kisky
2023-02-24 18:10 ` [PATCH v2 05/26] lib: sha1: " Troy Kisky
2023-02-24 18:10 ` [PATCH v2 06/26] lib: sha256: " Troy Kisky
2023-02-24 18:10 ` [PATCH v2 07/26] lib: sha512: " Troy Kisky
2023-02-24 18:10 ` [PATCH v2 08/26] tools: prevent CONFIG_IS_ENABLED errors by including linux/kconfig.h Troy Kisky
2023-03-01 15:33   ` Tom Rini
2023-02-24 18:10 ` [PATCH v2 09/26] tools: Makefile: prepare for CONFIG_IS_ENABLED changes by adding CONFIG_TOOLS_xxx Troy Kisky
2023-03-01 15:33   ` Tom Rini
2023-03-02 18:21     ` Troy Kisky
2023-03-02 19:19       ` Tom Rini
2023-02-24 18:10 ` [PATCH v2 10/26] x86: cpu: qemu: qemu: remove SPL use with CONFIG_IS_ENABLED Troy Kisky
2023-02-24 18:10 ` [PATCH v2 11/26] config_distro_bootcmd: remove booting environment variables from SPL environment Troy Kisky
2023-02-24 18:10 ` [PATCH v2 12/26] ofnode: fdt_support definitions needed if OF_CONTROL is enabled Troy Kisky
2023-02-24 18:10 ` [PATCH v2 13/26] ringneck-px30: use IS_ENABLED_NOCHECK to avoid CI test failure for ENV_IS_NOWHERE Troy Kisky
2023-02-26 14:56   ` Simon Glass
2023-02-24 18:10 ` [PATCH v2 14/26] puma-rk3399: " Troy Kisky
2023-02-26 14:56   ` Simon Glass
2023-03-01 15:33   ` Tom Rini
2023-02-24 18:10 ` [PATCH v2 15/26] fdt_support: always define fdt_fixup_mtdparts Troy Kisky
2023-02-24 18:10 ` [PATCH v2 16/26] m53menlo: define ft_board_setup only if CONFIG_IS_ENABLED(OF_LIBFDT) Troy Kisky
2023-02-24 18:10 ` [PATCH v2 17/26] freescale: common: pfuze: define pfuze_mode_init only if defined(CONFIG_DM_PMIC) Troy Kisky
2023-02-24 18:10 ` [PATCH v2 18/26] ns16550: match when to define bdf with uart code Troy Kisky
2023-02-24 18:10 ` [PATCH v2 19/26] solidrun: mx6cuboxi: use CONFIG_IS_ENABLED(SATA) instead of CONFIG_CMD_SATA Troy Kisky
2023-02-26 14:56   ` Simon Glass
2023-02-24 18:10 ` [PATCH v2 20/26] wandboard: use CONFIG_IS_ENABLED(SATA) instead of ifdef CONFIG_SATA Troy Kisky
2023-02-26 14:56   ` Simon Glass
2023-02-24 18:10 ` [PATCH v2 21/26] arm: mach-imx: use CONFIG_$(SPL_)SATA instead of CONFIG_SATA Troy Kisky
2023-02-24 18:10 ` [PATCH v2 22/26] x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI) Troy Kisky
2023-02-26 14:56   ` Simon Glass
2023-02-24 18:10 ` [PATCH v2 23/26] gateworks: venice: Always define setup_fec and setup_eqos Troy Kisky
2023-02-26 14:56   ` Simon Glass
2023-02-24 18:10 ` [PATCH v2 24/26] power: pmic: add dm style definitions if not CONFIG_IS_ENABLED(POWER_LEGACY) Troy Kisky
2023-02-24 18:10 ` [PATCH v2 25/26] arm: cpu: armv7: ls102xa: fdt: remove eth_device support Troy Kisky
2023-02-24 18:10 ` [PATCH v2 26/26] CI: add test/usage_of_is_enabled_check.sh Troy Kisky

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.