On Tue, Oct 04, 2022 at 05:48:00PM +0200, Ahmad Fatoum wrote: > We can't currently debug malloc() or early parts of the driver model on > sandbox, because we require both to allocate the sandbox console device. > > To make debugging such early startup easier in future, add some simple > DEBUG_LL support. > > Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> > --- > arch/sandbox/Kconfig | 1 + > arch/sandbox/Makefile | 3 ++- > arch/sandbox/include/asm/debug_ll.h | 16 ++++++++++++++++ > 3 files changed, 19 insertions(+), 1 deletion(-) > create mode 100644 arch/sandbox/include/asm/debug_ll.h Applied, thanks Sascha > > diff --git a/arch/sandbox/Kconfig b/arch/sandbox/Kconfig > index a8bca8757f28..d3889fcac03c 100644 > --- a/arch/sandbox/Kconfig > +++ b/arch/sandbox/Kconfig > @@ -16,6 +16,7 @@ config SANDBOX > select ARCH_HAS_STACK_DUMP if ASAN > select GENERIC_FIND_NEXT_BIT > select HAS_ARCH_SJLJ > + select HAS_ASM_DEBUG_LL > default y > > config ARCH_TEXT_BASE > diff --git a/arch/sandbox/Makefile b/arch/sandbox/Makefile > index aee6bccc9c14..d5ba05ba866f 100644 > --- a/arch/sandbox/Makefile > +++ b/arch/sandbox/Makefile > @@ -30,7 +30,8 @@ KBUILD_CFLAGS += -Dmalloc=barebox_malloc -Dcalloc=barebox_calloc \ > -Dopendir=barebox_opendir -Dreaddir=barebox_readdir \ > -Dclosedir=barebox_closedir -Dreadlink=barebox_readlink \ > -Doptarg=barebox_optarg -Doptind=barebox_optind \ > - -Dsetjmp=barebox_setjmp -Dlongjmp=barebox_longjmp > + -Dsetjmp=barebox_setjmp -Dlongjmp=barebox_longjmp \ > + -Dputchar=barebox_putchar > > machdirs := $(patsubst %,arch/sandbox/mach-%/,$(machine-y)) > > diff --git a/arch/sandbox/include/asm/debug_ll.h b/arch/sandbox/include/asm/debug_ll.h > new file mode 100644 > index 000000000000..7bef8710581e > --- /dev/null > +++ b/arch/sandbox/include/asm/debug_ll.h > @@ -0,0 +1,16 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > + > +#ifndef __ASM_DEBUG_LL__ > +#define __ASM_DEBUG_LL__ > + > +#undef putchar > + > +static inline void PUTC_LL(char ch) > +{ > + int putchar(int c); > + putchar(ch); > +} > + > +#define putchar barebox_putchar > + > +#endif /* __ASM_DEBUG_LL__ */ > -- > 2.30.2 > > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |