diff options
| author | Tom Rini <trini@konsulko.com> | 2024-08-26 14:06:16 -0600 |
|---|---|---|
| committer | Tom Rini <trini@konsulko.com> | 2024-08-26 14:06:16 -0600 |
| commit | 02d587a447ccae12618abbfb2b8ddd88ac3c7648 (patch) | |
| tree | 23acd3b2a0e077ab3a4f8924d132a137ea01ad20 /board/ronetix/pm9263/pm9263.c | |
| parent | 7670200d4b7bbb572290d0fb2ed9cd0fb1f989cc (diff) | |
| parent | cafaa1a17f765e684e3a5b52448d495c0e1da83d (diff) | |
Merge patch series "global_data: Reduce size of struct global_data"
Simon Glass <sjg@chromium.org> says:
The global data structure has grown quite a lot over the years, being
the best place to put an important pointer or something that must be
accessed before and after relocation.
This series attempts to reduce the size a little, by moving some things
out and shrinking and aligning some fields.
Some fields are needed during init but not afterwards. To deal with this
a new 'boardf' structure is created, which sits on the stack and is only
present during board_init_f(). It is possible that more fields could
move to this struct, but for now only 4 are moved.
An assumption is made that an int is 32-bits wide on all architectures,
which seems to be true, but maintainers should be able to confirm.
Mostly the code-size impact is neutral, but the patch
'Use less space for environment fields' does increase U-Boot's size by
about 30 bytes on aarch64.
For firefly-rk3399 (64-bit) the size of global reduces from 456 to 368
bytes. For SPL it reduces from 416 to 272 bytes.
There are other things which could be attempted, for example:
- Using hlist instead of list for some lists
- Checking that only necessary fields are present in SPL
Diffstat (limited to 'board/ronetix/pm9263/pm9263.c')
| -rw-r--r-- | board/ronetix/pm9263/pm9263.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/board/ronetix/pm9263/pm9263.c b/board/ronetix/pm9263/pm9263.c index 1de1bd68701..8125f064cf1 100644 --- a/board/ronetix/pm9263/pm9263.c +++ b/board/ronetix/pm9263/pm9263.c @@ -9,6 +9,7 @@ #include <config.h> #include <init.h> +#include <video.h> #include <asm/global_data.h> #include <linux/sizes.h> #include <asm/io.h> @@ -110,11 +111,12 @@ int dram_init_banksize(void) #ifdef CONFIG_DISPLAY_BOARDINFO int checkboard (void) { + ulong fb_base = video_get_fb(); char *ss; printf ("Board : Ronetix PM9263\n"); - switch (gd->fb_base) { + switch (fb_base) { case PHYS_PSRAM: ss = "(PSRAM)"; break; @@ -127,7 +129,7 @@ int checkboard (void) ss = ""; break; } - printf("Video memory : 0x%08lX %s\n", gd->fb_base, ss ); + printf("Video memory : 0x%08lX %s\n", fb_base, ss); printf ("\n"); return 0; |
