diff options
author | Eric Auger <eric.auger@linaro.org> | 2016-02-19 09:42:30 -0700 |
---|---|---|
committer | Alex Williamson <alex.williamson@redhat.com> | 2016-02-19 09:42:30 -0700 |
commit | 58e71097ced49600de1b38d2b59a823a9db66f19 (patch) | |
tree | 54f61c6fb3704a282575d4586710b941d86e94ab /hw/arm | |
parent | 78e24f235eda4d3313917a50e135b7e06a046407 (diff) |
device_tree: qemu_fdt_getprop_cell converted to use the error API
This patch aligns the prototype with qemu_fdt_getprop. The caller
can choose whether the function self-asserts on error (passing
&error_fatal as Error ** argument, corresponding to the legacy behavior),
or behaves differently such as simply output a message.
In this later case the caller can use the new lenp parameter to interpret
the error if any.
Signed-off-by: Eric Auger <eric.auger@linaro.org>
Reviewed-by: Peter Crosthwaite <crosthwaite.peter@gmail.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Diffstat (limited to 'hw/arm')
-rw-r--r-- | hw/arm/boot.c | 6 | ||||
-rw-r--r-- | hw/arm/vexpress.c | 6 |
2 files changed, 8 insertions, 4 deletions
diff --git a/hw/arm/boot.c b/hw/arm/boot.c index cce8c7cd1c..0a56d34cfe 100644 --- a/hw/arm/boot.c +++ b/hw/arm/boot.c @@ -437,8 +437,10 @@ static int load_dtb(hwaddr addr, const struct arm_boot_info *binfo, return 0; } - acells = qemu_fdt_getprop_cell(fdt, "/", "#address-cells"); - scells = qemu_fdt_getprop_cell(fdt, "/", "#size-cells"); + acells = qemu_fdt_getprop_cell(fdt, "/", "#address-cells", + NULL, &error_fatal); + scells = qemu_fdt_getprop_cell(fdt, "/", "#size-cells", + NULL, &error_fatal); if (acells == 0 || scells == 0) { fprintf(stderr, "dtb file invalid (#address-cells or #size-cells 0)\n"); goto fail; diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c index 3154aeaa95..726c4e0c55 100644 --- a/hw/arm/vexpress.c +++ b/hw/arm/vexpress.c @@ -478,8 +478,10 @@ static void vexpress_modify_dtb(const struct arm_boot_info *info, void *fdt) uint32_t acells, scells, intc; const VEDBoardInfo *daughterboard = (const VEDBoardInfo *)info; - acells = qemu_fdt_getprop_cell(fdt, "/", "#address-cells"); - scells = qemu_fdt_getprop_cell(fdt, "/", "#size-cells"); + acells = qemu_fdt_getprop_cell(fdt, "/", "#address-cells", + NULL, &error_fatal); + scells = qemu_fdt_getprop_cell(fdt, "/", "#size-cells", + NULL, &error_fatal); intc = find_int_controller(fdt); if (!intc) { /* Not fatal, we just won't provide virtio. This will |