aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/pwm/controller/allwinner/aw_pwm.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/pwm/controller/allwinner/aw_pwm.c')
-rw-r--r--sys/dev/pwm/controller/allwinner/aw_pwm.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/sys/dev/pwm/controller/allwinner/aw_pwm.c b/sys/dev/pwm/controller/allwinner/aw_pwm.c
index 8d7e38834fdd..117f3ae17e1b 100644
--- a/sys/dev/pwm/controller/allwinner/aw_pwm.c
+++ b/sys/dev/pwm/controller/allwinner/aw_pwm.c
@@ -188,9 +188,10 @@ skipcfg:
node = ofw_bus_get_node(dev);
OF_device_register_xref(OF_xref_from_node(node), dev);
- sc->busdev = device_add_child(dev, "pwmbus", -1);
+ sc->busdev = device_add_child(dev, "pwmbus", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
aw_pwm_detach(dev);
@@ -210,9 +211,6 @@ aw_pwm_detach(device_t dev)
return (error);
}
- if (sc->busdev != NULL)
- device_delete_child(dev, sc->busdev);
-
if (sc->res != NULL)
bus_release_resources(dev, aw_pwm_spec, &sc->res);