[U-Boot] [PATCH v2 1/1] efi_selftest: don't hang on missing timer

Auer, Lukas lukas.auer at aisec.fraunhofer.de
Thu Nov 15 23:21:17 UTC 2018


On Wed, 2018-11-14 at 09:23 +0100, Alexander Graf wrote:
> On 11/12/2018 08:57 PM, Heinrich Schuchardt wrote:
> > qemu-riscv32_defconfig and qemu-riscv64_defconfig do not supply a
> > timer.
> > This causes the EFI selftest to hang on tests which require a
> > timer.
> > 
> > So let's disable CONFIG_TIMER for these boards and use this
> > variable to
> > decide which tests have to be disabled.
> > 
> > Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> 
> Travis is quite unhappy about this:
> 
> riscv: +qemu-riscv64qemu-riscv32
> +lib/built-in.o: In function `tick_to_time':
> +lib/time.c:119: undefined reference to `get_tbclk'
> +lib/built-in.o: In function `usec_to_tick':
> +lib/time.c:145: undefined reference to `get_tbclk'
> +common/built-in.o: In function `cread_add_str':
> +common/cli_readline.c:239: undefined reference to `get_tbclk'
> 
> 
> 
> 
> Wouldn't it make more sense to just enable timer support for the
> qemu 
> riscv models instead?
> 
> I'll remove the patch from my queue for the time being.
> 
> 
> Alex

I think it makes sense to keep timer support for the RISC-V QEMU
targets enabled. Bin's patch series [1] adds timer support for the
RISC-V QEMU targets, so EFI selftest will not be broken for long.

Lukas

[1]: https://patchwork.ozlabs.org/project/uboot/list/?series=75644

> 
> > ---
> > v2:
> > 	add missing obj-y += \
> > ---
> >   configs/qemu-riscv32_defconfig |  1 +
> >   configs/qemu-riscv64_defconfig |  1 +
> >   lib/efi_selftest/Makefile      | 10 +++++++---
> >   3 files changed, 9 insertions(+), 3 deletions(-)
> > 
> > diff --git a/configs/qemu-riscv32_defconfig b/configs/qemu-
> > riscv32_defconfig
> > index ff1fb1f30ec..70da323bdc1 100644
> > --- a/configs/qemu-riscv32_defconfig
> > +++ b/configs/qemu-riscv32_defconfig
> > @@ -3,4 +3,5 @@ CONFIG_TARGET_QEMU_VIRT=y
> >   CONFIG_NR_DRAM_BANKS=1
> >   CONFIG_DISPLAY_CPUINFO=y
> >   CONFIG_DISPLAY_BOARDINFO=y
> > +# CONFIG_TIMER is not set
> >   CONFIG_OF_BOARD=y
> > diff --git a/configs/qemu-riscv64_defconfig b/configs/qemu-
> > riscv64_defconfig
> > index d6c1a5d646a..258f395b9d5 100644
> > --- a/configs/qemu-riscv64_defconfig
> > +++ b/configs/qemu-riscv64_defconfig
> > @@ -4,4 +4,5 @@ CONFIG_CPU_RISCV_64=y
> >   CONFIG_NR_DRAM_BANKS=1
> >   CONFIG_DISPLAY_CPUINFO=y
> >   CONFIG_DISPLAY_BOARDINFO=y
> > +# CONFIG_TIMER is not set
> >   CONFIG_OF_BOARD=y
> > diff --git a/lib/efi_selftest/Makefile b/lib/efi_selftest/Makefile
> > index 4b1c0bb84b1..aec498fbcf2 100644
> > --- a/lib/efi_selftest/Makefile
> > +++ b/lib/efi_selftest/Makefile
> > @@ -19,7 +19,6 @@ efi_selftest_console.o \
> >   efi_selftest_crc32.o \
> >   efi_selftest_devicepath.o \
> >   efi_selftest_devicepath_util.o \
> > -efi_selftest_events.o \
> >   efi_selftest_event_groups.o \
> >   efi_selftest_exception.o \
> >   efi_selftest_exitbootservices.o \
> > @@ -32,11 +31,16 @@ efi_selftest_snp.o \
> >   efi_selftest_textinput.o \
> >   efi_selftest_textinputex.o \
> >   efi_selftest_textoutput.o \
> > -efi_selftest_tpl.o \
> >   efi_selftest_unicode_collation.o \
> >   efi_selftest_util.o \
> > -efi_selftest_variables.o \
> > +efi_selftest_variables.o
> > +
> > +ifeq ($(CONFIG_TIMER),)
> > +obj-y += \
> > +efi_selftest_events.o \
> > +efi_selftest_tpl.o \
> >   efi_selftest_watchdog.o
> > +endif
> >   
> >   obj-$(CONFIG_CPU_V7) += efi_selftest_unaligned.o
> >   
> 
> 


More information about the U-Boot mailing list