Message ID | 1398424967-9306-1-git-send-email-ian.campbell@citrix.com |
---|---|
State | Superseded |
Headers | show |
Hi Ian, On 25/04/14 12:22, Ian Campbell wrote: > Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Julien Grall <julien.grall@linaro.org> > --- > v2: New patch > --- > tools/libxl/libxl_arm.c | 19 ++++++++----------- > 1 file changed, 8 insertions(+), 11 deletions(-) > > diff --git a/tools/libxl/libxl_arm.c b/tools/libxl/libxl_arm.c > index 4f0f0e2..215ef9e 100644 > --- a/tools/libxl/libxl_arm.c > +++ b/tools/libxl/libxl_arm.c > @@ -256,11 +256,10 @@ static int make_psci_node(libxl__gc *gc, void *fdt) > } > > static int make_memory_node(libxl__gc *gc, void *fdt, > - unsigned long long base, > - unsigned long long size) > + uint64_t base, uint64_t size) > { > int res; > - const char *name = GCSPRINTF("memory@%08llx", base); > + const char *name = GCSPRINTF("memory@%"PRIx64, base); > > res = fdt_begin_node(fdt, name); > if (res) return res; > @@ -269,7 +268,7 @@ static int make_memory_node(libxl__gc *gc, void *fdt, > if (res) return res; > > res = fdt_property_regs(gc, fdt, ROOT_ADDRESS_CELLS, ROOT_SIZE_CELLS, > - 1, (uint64_t)base, (uint64_t)size); > + 1, base, size); > if (res) return res; > > res = fdt_end_node(fdt); > @@ -279,13 +278,11 @@ static int make_memory_node(libxl__gc *gc, void *fdt, > } > > static int make_intc_node(libxl__gc *gc, void *fdt, > - unsigned long long gicd_base, > - unsigned long long gicd_size, > - unsigned long long gicc_base, > - unsigned long long gicc_size) > + uint64_t gicd_base, uint64_t gicd_size, > + uint64_t gicc_base, uint64_t gicc_size) > { > int res; > - const char *name = GCSPRINTF("interrupt-controller@%08llx", gicd_base); > + const char *name = GCSPRINTF("interrupt-controller@%"PRIx64, gicd_base); > > res = fdt_begin_node(fdt, name); > if (res) return res; > @@ -307,8 +304,8 @@ static int make_intc_node(libxl__gc *gc, void *fdt, > > res = fdt_property_regs(gc, fdt, ROOT_ADDRESS_CELLS, ROOT_SIZE_CELLS, > 2, > - (uint64_t)gicd_base, (uint64_t)gicd_size, > - (uint64_t)gicc_base, (uint64_t)gicc_size); > + gicd_base, gicd_size, > + gicc_base, gicc_size); > if (res) return res; > > res = fdt_property_cell(fdt, "linux,phandle", PHANDLE_GIC); >
Ian Campbell writes ("[PATCH v2 1/8] tools: libxl: use uint64_t not unsigned long long for addresses"):
> Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
If we are going to be doing this, why not introduce a type alias or
two ?
Ian.
On Wed, 2014-04-30 at 16:12 +0100, Ian Jackson wrote: > Ian Campbell writes ("[PATCH v2 1/8] tools: libxl: use uint64_t not unsigned long long for addresses"): > > Signed-off-by: Ian Campbell <ian.campbell@citrix.com> > > If we are going to be doing this, why not introduce a type alias or > two ? Good point. I'll do that. Ian.
On Wed, 2014-04-30 at 16:49 +0100, Ian Campbell wrote: > On Wed, 2014-04-30 at 16:12 +0100, Ian Jackson wrote: > > Ian Campbell writes ("[PATCH v2 1/8] tools: libxl: use uint64_t not unsigned long long for addresses"): > > > Signed-off-by: Ian Campbell <ian.campbell@citrix.com> > > > > If we are going to be doing this, why not introduce a type alias or > > two ? > > Good point. I'll do that. Actually, when I came to look at this I realised that because these numbers are being fed into device tree it is much simpler if they are of a fixed size rather than semantic type because you need to declare upfront the number of 32-bit cells each address and size value in the tree takes and it's much simpler to just declare up from "everything is 2 cells" and then use uint64_t throughout. Ian.
diff --git a/tools/libxl/libxl_arm.c b/tools/libxl/libxl_arm.c index 4f0f0e2..215ef9e 100644 --- a/tools/libxl/libxl_arm.c +++ b/tools/libxl/libxl_arm.c @@ -256,11 +256,10 @@ static int make_psci_node(libxl__gc *gc, void *fdt) } static int make_memory_node(libxl__gc *gc, void *fdt, - unsigned long long base, - unsigned long long size) + uint64_t base, uint64_t size) { int res; - const char *name = GCSPRINTF("memory@%08llx", base); + const char *name = GCSPRINTF("memory@%"PRIx64, base); res = fdt_begin_node(fdt, name); if (res) return res; @@ -269,7 +268,7 @@ static int make_memory_node(libxl__gc *gc, void *fdt, if (res) return res; res = fdt_property_regs(gc, fdt, ROOT_ADDRESS_CELLS, ROOT_SIZE_CELLS, - 1, (uint64_t)base, (uint64_t)size); + 1, base, size); if (res) return res; res = fdt_end_node(fdt); @@ -279,13 +278,11 @@ static int make_memory_node(libxl__gc *gc, void *fdt, } static int make_intc_node(libxl__gc *gc, void *fdt, - unsigned long long gicd_base, - unsigned long long gicd_size, - unsigned long long gicc_base, - unsigned long long gicc_size) + uint64_t gicd_base, uint64_t gicd_size, + uint64_t gicc_base, uint64_t gicc_size) { int res; - const char *name = GCSPRINTF("interrupt-controller@%08llx", gicd_base); + const char *name = GCSPRINTF("interrupt-controller@%"PRIx64, gicd_base); res = fdt_begin_node(fdt, name); if (res) return res; @@ -307,8 +304,8 @@ static int make_intc_node(libxl__gc *gc, void *fdt, res = fdt_property_regs(gc, fdt, ROOT_ADDRESS_CELLS, ROOT_SIZE_CELLS, 2, - (uint64_t)gicd_base, (uint64_t)gicd_size, - (uint64_t)gicc_base, (uint64_t)gicc_size); + gicd_base, gicd_size, + gicc_base, gicc_size); if (res) return res; res = fdt_property_cell(fdt, "linux,phandle", PHANDLE_GIC);
Signed-off-by: Ian Campbell <ian.campbell@citrix.com> --- v2: New patch --- tools/libxl/libxl_arm.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-)