[U-Boot] [PATCH v4 16/25] riscv: Update supports_extension() to use desc from cpu driver
Bin Meng
bmeng.cn at gmail.com
Wed Dec 12 14:11:37 UTC 2018
Hi Lukas,
On Wed, Dec 12, 2018 at 7:53 PM Auer, Lukas
<lukas.auer at aisec.fraunhofer.de> wrote:
>
> Hi Bin,
>
> On Tue, 2018-12-11 at 23:11 -0800, Bin Meng wrote:
> > This updates supports_extension() implementation to use the desc
> > string from the cpu driver whenever possible, which avoids the
> > reading of misa CSR for S-mode U-Boot.
> >
> > Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
> >
> > ---
> >
> > Changes in v4:
> > - print warnings for S-mode without CONFIG_CPU
> >
> > Changes in v3:
> > - new patch to update supports_extension() to use desc from cpu
> > driver
> >
> > Changes in v2: None
> >
> > arch/riscv/cpu/cpu.c | 22 ++++++++++++++++++++++
> > 1 file changed, 22 insertions(+)
> >
> > diff --git a/arch/riscv/cpu/cpu.c b/arch/riscv/cpu/cpu.c
> > index d3c59da..a2ebaf3 100644
> > --- a/arch/riscv/cpu/cpu.c
> > +++ b/arch/riscv/cpu/cpu.c
> > @@ -5,8 +5,10 @@
> >
> > #include <common.h>
> > #include <cpu.h>
> > +#include <dm.h>
> > #include <log.h>
> > #include <asm/csr.h>
> > +#include <dm/uclass-internal.h>
> >
> > /*
> > * prior_stage_fdt_address must be stored in the data section since
> > it is used
> > @@ -16,7 +18,27 @@ phys_addr_t prior_stage_fdt_address
> > __attribute__((section(".data")));
> >
> > static inline bool supports_extension(char ext)
> > {
> > +#ifdef CONFIG_CPU
> > + struct udevice *dev;
> > + char desc[32];
> > +
> > + uclass_find_first_device(UCLASS_CPU, &dev);
>
> Sorry, I missed this before. Can you add error handling here to catch
> uclass_find_first_device returning an error or not finding a device? It
> would probably also make sense to print a warning message to the user
> in this case.
>
Added the error check in v5. Note only checking not finding a device
(dev == NULL) is enough as if uclass_find_first_device() returns an
error code, dev is NULL too.
> Other than that, this patch and the series look good!
> Reviewed-by: Lukas Auer <lukas.auer at aisec.fraunhofer.de>
>
Regards,
Bin
More information about the U-Boot
mailing list