public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: "Chanho Park" <chanho61.park@samsung.com>
To: "'Heinrich Schuchardt'" <heinrich.schuchardt@canonical.com>,
	"'Rick Chen'" <rick@andestech.com>,
	"'Leo'" <ycliang@andestech.com>
Cc: "'Bin Meng'" <bmeng.cn@gmail.com>,
	"'Anup Patel'" <apatel@ventanamicro.com>, <u-boot@lists.denx.de>
Subject: RE: [PATCH 2/2] risc-v: implement DBCN based debug console
Date: Mon, 4 Sep 2023 18:30:23 +0900	[thread overview]
Message-ID: <004301d9df12$6e749600$4b5dc200$@samsung.com> (raw)
In-Reply-To: <20230819131250.10251-3-heinrich.schuchardt@canonical.com>

Hi,

> -----Original Message-----
> From: U-Boot <u-boot-bounces@lists.denx.de> On Behalf Of Heinrich
> Schuchardt
> Sent: Saturday, August 19, 2023 10:13 PM
> To: Rick Chen <rick@andestech.com>; Leo <ycliang@andestech.com>
> Cc: Bin Meng <bmeng.cn@gmail.com>; Anup Patel <apatel@ventanamicro.com>;
> u-boot@lists.denx.de; Heinrich Schuchardt
> <heinrich.schuchardt@canonical.com>
> Subject: [PATCH 2/2] risc-v: implement DBCN based debug console
> 
> Use the DBCN SBI extension to implement a debug console.
> Make it the default for S-mode RISC-V.
> 
> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
> ---
>  drivers/serial/Kconfig      |  3 ++-
>  drivers/serial/serial_sbi.c | 19 +++++++++++++++++++
>  2 files changed, 21 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig index
> a1e089962a..8421c5c047 100644
> --- a/drivers/serial/Kconfig
> +++ b/drivers/serial/Kconfig
> @@ -218,6 +218,7 @@ config DEBUG_UART
>  choice
>  	prompt "Select which UART will provide the debug UART"
>  	depends on DEBUG_UART
> +	default DEBUG_SBI_CONSOLE if RISCV_SMODE
>  	default DEBUG_UART_NS16550
> 
>  config DEBUG_UART_ALTERA_JTAGUART
> @@ -289,7 +290,7 @@ config DEBUG_EFI_CONSOLE
> 
>  config DEBUG_SBI_CONSOLE
>  	bool "SBI"
> -	depends on SBI_V01
> +	depends on RISCV_SMODE
>  	help
>  	  Select this to enable a debug console which calls back to SBI to
>  	  output to the console. This can be useful for early debugging of
> diff --git a/drivers/serial/serial_sbi.c b/drivers/serial/serial_sbi.c
> index b9f35ed36e..093c7309d3 100644
> --- a/drivers/serial/serial_sbi.c
> +++ b/drivers/serial/serial_sbi.c
> @@ -3,6 +3,8 @@
>  #include <debug_uart.h>
>  #include <asm/sbi.h>
> 
> +#ifdef CONFIG_SBI_V01
> +
>  static inline void _debug_uart_init(void)  {  } @@ -13,4 +15,21 @@ static
> inline void _debug_uart_putc(int c)
>  		sbi_console_putchar(c);
>  }
> 
> +#else
> +
> +static int sbi_dbcn_available;
> +
> +static inline void _debug_uart_init(void) {
> +	sbi_dbcn_available = sbi_probe_extension(SBI_EXT_DBCN);
> +}
> +
> +static inline void _debug_uart_putc(int ch) {
> +	if (sbi_dbcn_available)
> +		sbi_dbcn_write_byte(ch);
> +}
> +
> +#endif
> +
>  DEBUG_UART_FUNCS
> --
> 2.40.1

I've got below error when I tried to build it with VisionFive2 board
configuration(starfive_visionfive2_defconfig).
To test this patch, I enabled CONFIG_DEBUG_SBI_CONSOLE. Seems like spl also
includes the driver when DEBUG_SBI_CONSOLE is enabled.
Do I need to do any more configurations to test this?

LD      spl/u-boot-spl
riscv64-unknown-linux-gnu-ld.bfd: drivers/serial/serial_sbi.o: in function
`_debug_uart_putc':
/data/risc-v/vf2/mainline/u-boot/drivers/serial/serial_sbi.c:30: undefined
reference to `sbi_dbcn_write_byte'
riscv64-unknown-linux-gnu-ld.bfd:
/data/risc-v/vf2/mainline/u-boot/drivers/serial/serial_sbi.c:30: undefined
reference to `sbi_dbcn_write_byte'
riscv64-unknown-linux-gnu-ld.bfd: drivers/serial/serial_sbi.o: in function
`_debug_uart_init':
/data/risc-v/vf2/mainline/u-boot/drivers/serial/serial_sbi.c:24: undefined
reference to `sbi_probe_extension'
make[2]: *** [/data/risc-v/vf2/mainline/u-boot/scripts/Makefile.spl:527:
spl/u-boot-spl] Error 1

Best Regards,
Chanho Park


  parent reply	other threads:[~2023-09-04  9:30 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-19 13:12 [PATCH 0/2] risc-v: implement DBCN based debug console Heinrich Schuchardt
2023-08-19 13:12 ` [PATCH 1/2] risc-v: implement DBCN write byte Heinrich Schuchardt
2023-09-04  3:47   ` Leo Liang
2023-08-19 13:12 ` [PATCH 2/2] risc-v: implement DBCN based debug console Heinrich Schuchardt
2023-09-04  3:49   ` Leo Liang
2023-09-04  9:30   ` Chanho Park [this message]
2023-09-04 10:22     ` Heinrich Schuchardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='004301d9df12$6e749600$4b5dc200$@samsung.com' \
    --to=chanho61.park@samsung.com \
    --cc=apatel@ventanamicro.com \
    --cc=bmeng.cn@gmail.com \
    --cc=heinrich.schuchardt@canonical.com \
    --cc=rick@andestech.com \
    --cc=u-boot@lists.denx.de \
    --cc=ycliang@andestech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox