summaryrefslogtreecommitdiffstats
path: root/sys/isa
diff options
context:
space:
mode:
Diffstat (limited to 'sys/isa')
-rw-r--r--sys/isa/isa_common.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/isa/isa_common.c b/sys/isa/isa_common.c
index 2d5a866..8b8034b 100644
--- a/sys/isa/isa_common.c
+++ b/sys/isa/isa_common.c
@@ -627,6 +627,10 @@ isa_add_child(device_t dev, int order, const char *name, int unit)
device_t child;
struct isa_device *idev;
+ child = device_add_child_ordered(dev, order, name, unit);
+ if (child == NULL)
+ return (child);
+
idev = malloc(sizeof(struct isa_device), M_ISADEV, M_NOWAIT | M_ZERO);
if (!idev)
return 0;
@@ -634,10 +638,9 @@ isa_add_child(device_t dev, int order, const char *name, int unit)
resource_list_init(&idev->id_resources);
TAILQ_INIT(&idev->id_configs);
- child = device_add_child_ordered(dev, order, name, unit);
- device_set_ivars(child, idev);
+ device_set_ivars(child, idev);
- return child;
+ return (child);
}
static int
OpenPOWER on IntegriCloud