summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-02-17 13:51:26 -0600
committerTom Rini <[email protected]>2026-02-17 13:51:26 -0600
commit9ddccb51443d4856e5ad2f06cc3552627b86b3d9 (patch)
treed42c5647f5f59098c626f8bd5d16e53b283f35f0 /common
parent54f9b6528e34f1f75c2258ed29887f496a35dd6a (diff)
parent0f90b1e715f8abe41b0875752eb184f46032ff11 (diff)
Merge patch series "treewide: Clean up usage of DECLARE_GLOBAL_DATA_PTR"
Peng Fan (OSS) <[email protected]> says: This patch set primarily removes unused DECLARE_GLOBAL_DATA_PTR instances. Many files declare DECLARE_GLOBAL_DATA_PTR and include asm/global_data.h even though gd is never used. In these cases, asm/global_data.h is effectively treated as a proxy header, which is not a good practice. Following the Include What You Use principle, files should include only the headers they actually depend on, rather than relying on global_data.h indirectly. This approach is also adopted in Linux kernel [1]. The first few patches are prepartion to avoid building break after remove the including of global_data.h. A script is for filtering the files: list=`find . -name "*.[ch]"` for source in ${list} do result=`sed -n '/DECLARE_GLOBAL_DATA_PTR/p' ${source}` if [ "${result}" == "DECLARE_GLOBAL_DATA_PTR;" ]; then echo "Found in ${source}" result=`sed -n '/\<gd\>/p' ${source}` result2=`sed -n '/\<gd_/p' ${source}` result3=`sed -n '/\<gd->/p' ${source}` if [ "${result}" == "" ] && [ "${result2}" == "" ] && [ "${result3}" == "" ];then echo "Cleanup ${source}" sed -i '/DECLARE_GLOBAL_DATA_PTR/{N;/\n[[:space:]]*$/d;s/.*\n//;}' ${source} sed -i '/DECLARE_GLOBAL_DATA_PTR/d' ${source} sed -i '/global_data.h/d' ${source} git add ${source} fi fi done [1] https://lpc.events/event/17/contributions/1620/attachments/1228/2520/Linux%20Kernel%20Header%20Optimization.pdf CI: https://github.com/u-boot/u-boot/pull/865 Link: https://lore.kernel.org/r/[email protected]
Diffstat (limited to 'common')
-rw-r--r--common/cli_hush.c4
-rw-r--r--common/stdio.c3
2 files changed, 1 insertions, 6 deletions
diff --git a/common/cli_hush.c b/common/cli_hush.c
index 7bd6943d3ed..fe8fe93bd54 100644
--- a/common/cli_hush.c
+++ b/common/cli_hush.c
@@ -83,7 +83,7 @@
#include <cli.h>
#include <cli_hush.h>
#include <command.h> /* find_cmd */
-#include <asm/global_data.h>
+#include <vsprintf.h>
#endif
#ifndef __U_BOOT__
#include <ctype.h> /* isalpha, isdigit */
@@ -124,8 +124,6 @@
#endif
#ifdef __U_BOOT__
-DECLARE_GLOBAL_DATA_PTR;
-
#define EXIT_SUCCESS 0
#define EOF -1
#define syntax() syntax_err()
diff --git a/common/stdio.c b/common/stdio.c
index 3eeb289dd8b..fc965944209 100644
--- a/common/stdio.c
+++ b/common/stdio.c
@@ -18,11 +18,8 @@
#include <serial.h>
#include <splash.h>
#include <i2c.h>
-#include <asm/global_data.h>
#include <dm/device-internal.h>
-DECLARE_GLOBAL_DATA_PTR;
-
static struct stdio_dev devs;
struct stdio_dev *stdio_devices[] = { NULL, NULL, NULL };
char *stdio_names[MAX_FILES] = { "stdin", "stdout", "stderr" };