[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 2/3] ARM/virt: Use fdt_setprop_strings()
From: |
David Gibson |
Subject: |
Re: [PATCH v2 2/3] ARM/virt: Use fdt_setprop_strings() |
Date: |
Sun, 10 Nov 2019 19:47:23 +0000 |
User-agent: |
Mutt/1.12.1 (2019-06-15) |
On Sat, Nov 09, 2019 at 03:56:21PM +0000, Peter Maydell wrote:
> On Fri, 8 Nov 2019 at 19:48, Palmer Dabbelt <address@hidden> wrote:
> >
> > This new helper function encodes the idiom used by the ARM virt board to
> > set a string array. I don't currently have a working ARM userspace, so I
> > haven't tested
> > this, but I made the helper function because I wanted to use it for the
> > RISC-V virt board where I have tested it.
> >
> > Signed-off-by: Palmer Dabbelt <address@hidden>
> > ---
> > hw/arm/virt.c | 5 ++---
> > 1 file changed, 2 insertions(+), 3 deletions(-)
> >
> > diff --git a/hw/arm/virt.c b/hw/arm/virt.c
> > index d4bedc2607..4dc00f54d5 100644
> > --- a/hw/arm/virt.c
> > +++ b/hw/arm/virt.c
> > @@ -304,9 +304,8 @@ static void fdt_add_timer_nodes(const VirtMachineState
> > *vms)
> >
> > armcpu = ARM_CPU(qemu_get_cpu(0));
> > if (arm_feature(&armcpu->env, ARM_FEATURE_V8)) {
> > - const char compat[] = "arm,armv8-timer\0arm,armv7-timer";
> > - qemu_fdt_setprop(vms->fdt, "/timer", "compatible",
> > - compat, sizeof(compat));
> > + qemu_fdt_setprop_strings(vms->fdt, "/timer", "compatible",
> > + "arm,armv8-timer\0arm,armv7-timer\0");
> > } else {
>
>
> This seems to be changing the property we put in -- in
> the old code it is 'foo\0bar\0', but in the new code
> there will end up being two \0 at the end: 'foo\0bar\0\0'.
In fact it's not because the setprop_strings() helper just uses the
\0\0 to detect the end, but truncates what it actually puts into the
dtb at the first \0. But I agree this is confusing enough not to
really be an improvement over the original version.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature