Files
u-boot/include
Tom Rini 9ddccb5144 Merge patch series "treewide: Clean up usage of DECLARE_GLOBAL_DATA_PTR"
Peng Fan (OSS) <peng.fan@oss.nxp.com> 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/20260209-cleanup-v2-0-73a3a84ddbdb@nxp.com
2026-02-17 13:51:26 -06:00
..
2025-11-06 08:30:33 -06:00
2025-12-08 13:17:27 -06:00
2026-01-14 16:25:09 +01:00
2025-11-21 19:25:56 +01:00
2025-12-04 09:38:58 -06:00
2025-08-25 16:20:48 +02:00
2025-06-02 17:26:15 -06:00
2025-07-23 17:37:14 -06:00
2025-10-26 09:03:32 -06:00
2025-06-12 16:14:33 -06:00
2025-06-02 17:26:15 -06:00
2025-05-29 08:29:16 -06:00
2025-06-02 17:26:15 -06:00
2025-12-30 11:22:57 -06:00
2025-08-06 08:41:30 +02:00
2025-09-26 11:55:13 -06:00
2025-11-07 15:34:04 -06:00
2025-06-02 17:26:15 -06:00
2025-08-25 16:20:48 +02:00
2025-05-13 11:30:09 -06:00
2025-06-27 11:48:20 -06:00
2026-02-02 14:24:40 -06:00
2025-08-06 08:41:30 +02:00
2025-06-02 17:26:16 -06:00
2025-03-10 07:41:16 +01:00
2025-04-03 11:41:54 -06:00
2025-04-03 16:54:49 -06:00
2025-07-08 13:11:12 -06:00
2025-05-29 08:30:25 -06:00
2024-11-25 23:07:37 -03:00
2025-05-05 14:16:50 -06:00
2025-07-08 13:11:12 -06:00
2025-05-29 18:35:49 -06:00
2025-02-28 08:41:54 -06:00
2025-02-11 20:10:58 -06:00
2025-01-07 15:45:51 +02:00
2025-12-04 09:38:58 -06:00
2025-01-01 10:40:33 -06:00
2025-07-11 10:43:29 -06:00
2025-02-03 16:01:36 -06:00