[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 2/8] arm/boot: Use qemu_devtree_setprop_sized
From: |
Peter Crosthwaite |
Subject: |
Re: [Qemu-devel] [PATCH v3 2/8] arm/boot: Use qemu_devtree_setprop_sized_cells() |
Date: |
Wed, 17 Jul 2013 00:31:08 +1000 |
Hi Peter,
On Tue, Jul 16, 2013 at 10:25 PM, Peter Maydell
<address@hidden> wrote:
> Replace the opencoded assembly of the reg property array for the
> /memory node with a call to qemu_devtree_setprop_sized_cells().
>
> Signed-off-by: Peter Maydell <address@hidden>
> ---
> hw/arm/boot.c | 29 ++++++++---------------------
> 1 file changed, 8 insertions(+), 21 deletions(-)
>
> diff --git a/hw/arm/boot.c b/hw/arm/boot.c
> index a2e4032..1780316 100644
> --- a/hw/arm/boot.c
> +++ b/hw/arm/boot.c
> @@ -227,12 +227,10 @@ static void set_kernel_args_old(const struct
> arm_boot_info *info)
>
> static int load_dtb(hwaddr addr, const struct arm_boot_info *binfo)
> {
> - uint32_t *mem_reg_property;
> - uint32_t mem_reg_propsize;
> void *fdt = NULL;
> char *filename;
> int size, rc;
> - uint32_t acells, scells, hival;
> + uint32_t acells, scells;
>
> filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, binfo->dtb_filename);
> if (!filename) {
> @@ -255,29 +253,18 @@ static int load_dtb(hwaddr addr, const struct
> arm_boot_info *binfo)
> goto fail;
> }
>
> - mem_reg_propsize = acells + scells;
> - mem_reg_property = g_new0(uint32_t, mem_reg_propsize);
> - mem_reg_property[acells - 1] = cpu_to_be32(binfo->loader_start);
> - hival = cpu_to_be32(binfo->loader_start >> 32);
> - if (acells > 1) {
> - mem_reg_property[acells - 2] = hival;
> - } else if (hival != 0) {
> - fprintf(stderr, "qemu: dtb file not compatible with "
> - "RAM start address > 4GB\n");
> - goto fail;
> - }
So it confused me for a while as to why this check is deleted (and not
converted), but I'm guessing it is because binfo->loader_start is a
hwaddr which is probably 32 bit? Which I guess would cause a check
equivalent to the one below to werror. Is it possible in an arm build
for hwaddr to be 64 bit and if so should this check be converted?
Regards,
Peter
- [Qemu-devel] [PATCH v3 0/8] Add virtio-mmio and use it in vexpress, Peter Maydell, 2013/07/16
- [Qemu-devel] [PATCH v3 1/8] device_tree: Add qemu_devtree_setprop_sized_cells() utility functions, Peter Maydell, 2013/07/16
- [Qemu-devel] [PATCH v3 8/8] vexpress: Add virtio-mmio transports, Peter Maydell, 2013/07/16
- [Qemu-devel] [PATCH v3 7/8] vexpress: Make VEDBoardInfo extend arm_boot_info, Peter Maydell, 2013/07/16
- [Qemu-devel] [PATCH v3 3/8] virtio: Add support for guest setting of queue size, Peter Maydell, 2013/07/16
- [Qemu-devel] [PATCH v3 2/8] arm/boot: Use qemu_devtree_setprop_sized_cells(), Peter Maydell, 2013/07/16
- Re: [Qemu-devel] [PATCH v3 2/8] arm/boot: Use qemu_devtree_setprop_sized_cells(),
Peter Crosthwaite <=
- [Qemu-devel] [PATCH v3 6/8] arm/boot: Allow boards to modify the FDT blob, Peter Maydell, 2013/07/16
- [Qemu-devel] [PATCH v3 5/8] virtio: Implement MMIO based virtio transport, Peter Maydell, 2013/07/16
- [Qemu-devel] [PATCH v3 4/8] virtio: Support transports which can specify the vring alignment, Peter Maydell, 2013/07/16