diff options
Diffstat (limited to 'sys/dev/pwm/ofw_pwmbus.c')
-rw-r--r-- | sys/dev/pwm/ofw_pwmbus.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/dev/pwm/ofw_pwmbus.c b/sys/dev/pwm/ofw_pwmbus.c index 2d2c47291bca..913792374fd9 100644 --- a/sys/dev/pwm/ofw_pwmbus.c +++ b/sys/dev/pwm/ofw_pwmbus.c @@ -150,7 +150,8 @@ ofw_pwmbus_attach(device_t dev) if (chan >= sc->base.nchannels) continue; - if ((child = ofw_pwmbus_add_child(dev, 0, NULL, -1)) == NULL) + if ((child = ofw_pwmbus_add_child(dev, 0, NULL, + DEVICE_UNIT_ANY)) == NULL) continue; ivars = device_get_ivars(child); @@ -173,7 +174,8 @@ ofw_pwmbus_attach(device_t dev) */ if (!any_children) { for (chan = 0; chan < sc->base.nchannels; ++chan) { - child = ofw_pwmbus_add_child(dev, 0, "pwmc", -1); + child = ofw_pwmbus_add_child(dev, 0, "pwmc", + DEVICE_UNIT_ANY); if (child == NULL) { device_printf(dev, "failed to add pwmc child " " device for channel %u\n", chan); @@ -184,9 +186,10 @@ ofw_pwmbus_attach(device_t dev) } } bus_enumerate_hinted_children(dev); - bus_generic_probe(dev); + bus_identify_children(dev); + bus_attach_children(dev); - return (bus_generic_attach(dev)); + return (0); } static device_method_t ofw_pwmbus_methods[] = { |