[PATCH 1/1] riscv: enable CONFIG_DEBUG_UART by default

Leo Liang ycliang at andestech.com
Wed Sep 27 04:44:15 CEST 2023


Hi Heinrich,

On Tue, Sep 26, 2023 at 10:38:48AM +0200, Heinrich Schuchardt wrote:
> On 9/26/23 09:53, Leo Liang wrote:
> > Hi Heinrich,
> > 
> > On Sat, Sep 23, 2023 at 01:35:26AM +0200, Heinrich Schuchardt wrote:
> > > Most boards don't enable the pre-console buffer. So we will not see any
> > > early messages. OpenSBI 1.3 provides us with the debug console extension
> > > that can fill this gap.
> > > 
> > > For S-Mode U-Boot enable CONFIG_DEBUG_UART by default.
> > > 
> > > Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> > > ---
> > >   arch/riscv/Kconfig | 1 +
> > >   1 file changed, 1 insertion(+)
> > > 
> > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> > > index 1c62c2345b..06fae7ebe8 100644
> > > --- a/arch/riscv/Kconfig
> > > +++ b/arch/riscv/Kconfig
> > > @@ -141,6 +141,7 @@ config RISCV_MMODE
> > >   config RISCV_SMODE
> > >   	bool "Supervisor"
> > > +	imply DEBUG_UART
> > 
> > This patch will cause the following compilation warnings.
> > Could you take a look at them ?
> > 
> > It seems that some configuration values will not be set
> > if we imply DEBUG_UART.
> > 
> > u-boot$ make qemu-riscv64_spl_defconfig
> >    HOSTCC  scripts/basic/fixdep
> >    HOSTCC  scripts/kconfig/conf.o
> >    YACC    scripts/kconfig/zconf.tab.c
> >    LEX     scripts/kconfig/zconf.lex.c
> >    HOSTCC  scripts/kconfig/zconf.tab.o
> >    HOSTLD  scripts/kconfig/conf
> > #
> > # configuration written to .config
> > #
> > 
> 
> Hello Leo,
> 
> thanks for testing.
> 
> > u-boot$ make ARCH_FLAGS="-march=rv64imafdc" -j`nproc`
> 
> This does not work with a current gcc.
> arch/riscv/lib/cache.c:12: Error: unrecognized opcode `fence.i', extension
> `zifencei' required
> 
> > scripts/kconfig/conf  --syncconfig Kconfig
> > .config:78:warning: symbol value '' invalid for DEBUG_UART_BASE
> 
> Please, observe:
> 
> origin/next lacks these patches
> 
> d14222e7c152 ("risc-v: implement DBCN write byte")
> dfe08374943c ("risc-v: implement DBCN based debug console")
> 
> You must add these when testing the current patch.
> 
> On Ubuntu 23.10 I have been running
> 
> export CROSS_COMPILE=riscv64-linux-gnu-
> make clean
> make qemu-riscv64_spl_defconfig
> make -j8
> 
> for origin/master and the current patch. I did not see any warning.
> 
> Same for origin/next and all three patches applied.
> 
> We have
> 
> config DEBUG_UART_BASE
>         hex "Base address of UART"
>         depends on DEBUG_UART
>         default 0 if DEBUG_SBI_CONSOLE
> 
> since 41f7be73344.
> 
> I don't see any issues in
> https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/17882
> (origin/master + this patch).
> 
> Best regards
> 
> Heinrich

Totally Got it! Thanks for the detailed explanation!

Best regards,
Leo

> 
> > .config:79:warning: symbol value '' invalid for DEBUG_UART_CLOCK
> > .config:1347:warning: symbol value '' invalid for SPL_DEBUG_UART_BASE
> > ...
> > 
> > Best regards,
> > Leo
> > 
> > >   	help
> > >   	  Choose this option to build U-Boot for RISC-V S-Mode.
> > > -- 
> > > 2.40.1
> > > 
> 


More information about the U-Boot mailing list