[PATCH 0/4] Initialize the console as early as possible
Anup Patel
anup at brainfault.org
Fri Jun 21 05:07:07 PDT 2024
On Thu, Jun 6, 2024 at 2:47 PM Xiang W <wxjstz at 126.com> wrote:
>
> Initializing the console as early as possible can output more useful
> information. This series of patches is used to initialize the console
> as early as possible.
>
> This series of patches is based on a previous patch
> http://lists.infradead.org/pipermail/opensbi/2024-May/006960.html
>
> Xiang W (4):
> include: sbi_utils: fixup fdt_get_address
> lib: sbi: Add domains_init to sbi_console_device
> lib: utils/serial: add domains_init for 8250
> lib: sbi: Initialize the console as early as possible
The problem with this series is that it is changing the order
of platform callback in coldboot path because sbi_scratch_init,
sbi_heap_init, and sbi_domain_init should always be the
first things done in the coldboot path.
Instead, I suggest the following:
1) Update generic platform to call generic_console_init()
from generic_early_init() in coldboot path and don't
provide the console_init() callback.
2) Update all other platform to do similar thing as #1
3) Drop sbi_console_init(), sbi_platform_console_init() and
console_init() callback.
For prints before sbi_platform_early_init(), the sbi_console.c
can implement a small circular buffer which is flushed whenever
some driver sets a console device.
>
> include/sbi/sbi_console.h | 3 +++
> include/sbi_utils/fdt/fdt_helper.h | 4 +++-
> include/sbi_utils/serial/uart8250.h | 1 +
> lib/sbi/sbi_domain.c | 10 ++++++++++
> lib/sbi/sbi_init.c | 8 ++++----
> lib/utils/serial/uart8250.c | 28 +++++++++++++++++++---------
> 6 files changed, 40 insertions(+), 14 deletions(-)
>
> --
> 2.43.0
>
Regards,
Anup
More information about the opensbi
mailing list