summaryrefslogtreecommitdiffstats
path: root/sys/dev/fdt/fdt_common.c
diff options
context:
space:
mode:
authorgber <gber@FreeBSD.org>2012-09-14 09:33:35 +0000
committergber <gber@FreeBSD.org>2012-09-14 09:33:35 +0000
commit5dd175c3fd9e3e14cbf3982b8553df7c3fbb18f3 (patch)
tree3cca4b9f51fe24be5f92c095c2ae2e593227bdf0 /sys/dev/fdt/fdt_common.c
parentb08d96186e4b3d0553ddc80760b3a104a0df464c (diff)
downloadFreeBSD-src-5dd175c3fd9e3e14cbf3982b8553df7c3fbb18f3.zip
FreeBSD-src-5dd175c3fd9e3e14cbf3982b8553df7c3fbb18f3.tar.gz
Set busaddr and bussize to 0 when fdt_get_range() fails.
Obtained from: Semihalf
Diffstat (limited to 'sys/dev/fdt/fdt_common.c')
-rw-r--r--sys/dev/fdt/fdt_common.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c
index e257851..cc55c65 100644
--- a/sys/dev/fdt/fdt_common.c
+++ b/sys/dev/fdt/fdt_common.c
@@ -431,7 +431,10 @@ fdt_reg_to_rl(phandle_t node, struct resource_list *rl)
if (fdt_addrsize_cells(OF_parent(node), &addr_cells, &size_cells) != 0)
return (ENXIO);
- fdt_get_range(OF_parent(node), 0, &busaddr, &bussize);
+ if (fdt_get_range(OF_parent(node), 0, &busaddr, &bussize)) {
+ busaddr = 0;
+ bussize = 0;
+ }
tuple_size = sizeof(pcell_t) * (addr_cells + size_cells);
tuples = OF_getprop_alloc(node, "reg", tuple_size, (void **)&reg);
OpenPOWER on IntegriCloud