[RFC PATCH v2 50/56] kconfig: Drop CONFIG_IF_ENABLED_INT()
Simon Glass
sjg at chromium.org
Sat Feb 4 01:26:13 CET 2023
We can use IF_ENABLED_INT() instead, so drop the other macro. Also clean
up a few things left behind and fix the comment.
Signed-off-by: Simon Glass <sjg at chromium.org>
---
(no changes since v1)
include/linux/kconfig.h | 32 ++++++--------------------------
test/lib/kconfig.c | 15 ---------------
test/lib/kconfig_spl.c | 10 ----------
test/py/tests/test_kconfig.py | 6 ++----
4 files changed, 8 insertions(+), 55 deletions(-)
diff --git a/include/linux/kconfig.h b/include/linux/kconfig.h
index 57d5afc7a1a..77d8e6b6129 100644
--- a/include/linux/kconfig.h
+++ b/include/linux/kconfig.h
@@ -47,19 +47,6 @@
___config_opt_enabled(arg1_or_junk arg2, def_val)
#define ___config_opt_enabled(__ignored, val, ...) val
-#ifndef __ASSEMBLY__
-/*
- * Detect usage of a the value when the conditional is not enabled. When used
- * in assembly context, this likely produces a assembly error, or hopefully at
- * least something recognisable.
- */
-long invalid_use_of_IF_ENABLED_INT(void);
-#endif
-
-/* Evaluates to int_option if option is defined, otherwise a build error */
-#define IF_ENABLED_INT(option, int_option) \
- config_opt_enabled(option, int_option, invalid_use_of_IF_ENABLED_INT())
-
/*
* Count number of arguments to a variadic macro. Currently only need
* it for 1, 2 or 3 arguments.
@@ -103,22 +90,15 @@ long invalid_use_of_IF_ENABLED_INT(void);
#ifndef __ASSEMBLY__
/*
- * Detect usage of a the value when the conditional is not enabled. When used
- * in assembly context, this likely produces a assembly error, or hopefully at
+ * Detect usage of the value when the conditional is not enabled. When used
+ * in assembly context, this likely produces an assembly error, or hopefully at
* least something recognisable.
*/
-long invalid_use_of_CONFIG_IF_ENABLED_INT(void);
+long invalid_use_of_IF_ENABLED_INT(void);
#endif
-/*
- * Evaluates to SPL_/TPL_int_option if SPL_/TPL_/option is not defined,
- * otherwise build error
- */
-#define CONFIG_IF_ENABLED_INT(option, int_option) \
- CONFIG_IS_ENABLED(option, (int_option), \
- (invalid_use_of_CONFIG_IF_ENABLED_INT()))
-
-#define CONFIG_IF_INT(option, int_option) \
- CONFIG_IF_ENABLED_INT(option, int_option)
+/* Evaluates to int_option if option is defined, otherwise build error */
+#define IF_ENABLED_INT(option, int_option) \
+ IS_ENABLED(option, (int_option), (invalid_use_of_IF_ENABLED_INT()))
#endif /* __LINUX_KCONFIG_H */
diff --git a/test/lib/kconfig.c b/test/lib/kconfig.c
index 029a2be8cd9..0c4345b6b3f 100644
--- a/test/lib/kconfig.c
+++ b/test/lib/kconfig.c
@@ -24,8 +24,6 @@ static int lib_test_is_enabled(struct unit_test_state *uts)
ut_asserteq(0xc000,
IF_ENABLED_INT(CONFIG_BLOBLIST_FIXED, CONFIG_BLOBLIST_ADDR));
- ut_asserteq(0xc000,
- CONFIG_IF_ENABLED_INT(CONFIG_BLOBLIST_FIXED, CONFIG_BLOBLIST_ADDR));
/*
* This fails if CONFIG_TEST_KCONFIG_ENABLE is not enabled, since the
@@ -40,19 +38,6 @@ static int lib_test_is_enabled(struct unit_test_state *uts)
printf("value %ld\n", val);
}
- /*
- * This fails if CONFIG_TEST_KCONFIG_ENABLE is not enabled, since the
- * value is used. Disable for SPL so that the errors in kconfig_spl.c
- * are detected, since otherwise a build error when building U-Boot may
- * cause SPL to not be built.
- */
- if (!IS_ENABLED(CONFIG_SANDBOX_SPL) &&
- IS_ENABLED(CONFIG_TEST_KCONFIG)) {
- val = CONFIG_IF_ENABLED_INT(CONFIG_TEST_KCONFIG_ENABLE,
- CONFIG_TEST_KCONFIG_VALUE);
- printf("value2 %ld\n", val);
- }
-
return 0;
}
LIB_TEST(lib_test_is_enabled, 0);
diff --git a/test/lib/kconfig_spl.c b/test/lib/kconfig_spl.c
index 2894a03f1e8..69c107fd524 100644
--- a/test/lib/kconfig_spl.c
+++ b/test/lib/kconfig_spl.c
@@ -29,16 +29,6 @@ static int lib_test_spl_is_enabled(struct unit_test_state *uts)
printf("value %ld\n", val);
}
- /*
- * This fails if CONFIG_TEST_KCONFIG_ENABLE is not enabled, since the
- * value is used.
- */
- if (IS_ENABLED(CONFIG_TEST_KCONFIG)) {
- val = CONFIG_IF_ENABLED_INT(CONFIG_TEST_KCONFIG_ENABLE,
- CONFIG_TEST_KCONFIG_VALUE);
- printf("value2 %ld\n", val);
- }
-
return 0;
}
LIB_TEST(lib_test_spl_is_enabled, 0);
diff --git a/test/py/tests/test_kconfig.py b/test/py/tests/test_kconfig.py
index 0b9e6bc3bd1..c4287e1144c 100644
--- a/test/py/tests/test_kconfig.py
+++ b/test/py/tests/test_kconfig.py
@@ -20,7 +20,6 @@ def test_kconfig(u_boot_console):
cons, ['./tools/buildman/buildman', '-m', '--board', 'sandbox',
'-a', 'TEST_KCONFIG', '-o', TMPDIR], ignore_errors=True)
assert 'invalid_use_of_IF_ENABLED_INT' in out
- assert 'invalid_use_of_CONFIG_IF_ENABLED_INT' in out
@pytest.mark.slow
@pytest.mark.boardspec('sandbox_spl')
@@ -32,8 +31,7 @@ def test_kconfig_spl(u_boot_console):
out = util.run_and_log(
cons, ['./tools/buildman/buildman', '-m', '--board', 'sandbox_spl',
'-a', 'TEST_KCONFIG', '-o', TMPDIR], ignore_errors=True)
- assert 'invalid_use_of_IF_ENABLED_INT' in out
- # There is no CONFIG_SPL_TEST_KCONFIG, so the CONFIG_IF_ENABLED_INT()
+ # There is no CONFIG_SPL_TEST_KCONFIG, so the IF_ENABLED_INT()
# line should not generate an error
- assert 'invalid_use_of_CONFIG_IF_ENABLED_INT' not in out
+ assert 'invalid_use_of_IF_ENABLED_INT' not in out
--
2.39.1.519.gcb327c4b5f-goog
More information about the U-Boot
mailing list