aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/acpica/acpi_machdep.c3
-rw-r--r--sys/arm/allwinner/aw_rsb.c2
-rw-r--r--sys/arm/annapurna/alpine/alpine_pci_msix.c3
-rw-r--r--sys/arm/arm/gic_acpi.c2
-rw-r--r--sys/arm/arm/gic_fdt.c2
-rw-r--r--sys/arm/arm/nexus.c2
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2835_clkman.c3
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2835_pwm.c3
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2835_sdhci.c2
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2835_sdhost.c2
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2835_spi.c3
-rw-r--r--sys/arm/broadcom/bcm2835/bcm2838_pci.c3
-rw-r--r--sys/arm/freescale/vybrid/vf_spi.c3
-rw-r--r--sys/arm/mv/a37x0_iic.c3
-rw-r--r--sys/arm/mv/mv_pci.c3
-rw-r--r--sys/arm/mv/mv_pci_ctrl.c3
-rw-r--r--sys/arm/mv/mvebu_gpio.c3
-rw-r--r--sys/arm/nvidia/as3722.c3
-rw-r--r--sys/arm/nvidia/drm2/tegra_dc.c3
-rw-r--r--sys/arm/nvidia/drm2/tegra_hdmi.c3
-rw-r--r--sys/arm/nvidia/drm2/tegra_host1x.c3
-rw-r--r--sys/arm/nvidia/tegra_abpmisc.c3
-rw-r--r--sys/arm/nvidia/tegra_efuse.c3
-rw-r--r--sys/arm/nvidia/tegra_gpio.c3
-rw-r--r--sys/arm/nvidia/tegra_i2c.c3
-rw-r--r--sys/arm/nvidia/tegra_mc.c3
-rw-r--r--sys/arm/nvidia/tegra_pcie.c3
-rw-r--r--sys/arm/nvidia/tegra_rtc.c3
-rw-r--r--sys/arm/nvidia/tegra_sdhci.c2
-rw-r--r--sys/arm/nvidia/tegra_soctherm.c3
-rw-r--r--sys/arm/qualcomm/ipq4018_usb_hs_phy.c3
-rw-r--r--sys/arm/qualcomm/ipq4018_usb_ss_phy.c3
-rw-r--r--sys/arm/ti/am335x/am335x_ehrpwm.c3
-rw-r--r--sys/arm/ti/am335x/am335x_pwmss.c3
-rw-r--r--sys/arm/ti/am335x/am335x_usb_phy.c3
-rw-r--r--sys/arm/ti/clk/ti_clkctrl.c3
-rw-r--r--sys/arm/ti/clk/ti_divider_clock.c9
-rw-r--r--sys/arm/ti/clk/ti_dpll_clock.c9
-rw-r--r--sys/arm/ti/clk/ti_gate_clock.c9
-rw-r--r--sys/arm/ti/clk/ti_mux_clock.c9
-rw-r--r--sys/arm/ti/cpsw/if_cpsw.c2
-rw-r--r--sys/arm/ti/ti_omap4_cm.c3
-rw-r--r--sys/arm/ti/ti_prcm.c4
-rw-r--r--sys/arm/ti/ti_scm.c3
-rw-r--r--sys/arm/ti/ti_scm_syscon.c3
-rw-r--r--sys/arm/ti/ti_sdhci.c2
-rw-r--r--sys/arm/ti/ti_spi.c3
-rw-r--r--sys/arm/ti/ti_sysc.c8
-rw-r--r--sys/arm/ti/twl/twl.c3
-rw-r--r--sys/arm/ti/usb/omap_host.c3
-rw-r--r--sys/arm64/arm64/gic_v3_acpi.c2
-rw-r--r--sys/arm64/arm64/gic_v3_fdt.c3
-rw-r--r--sys/arm64/arm64/nexus.c2
-rw-r--r--sys/arm64/broadcom/brcmmdio/mdio_mux_iproc.c3
-rw-r--r--sys/arm64/broadcom/brcmmdio/mdio_nexus_iproc.c3
-rw-r--r--sys/arm64/broadcom/brcmmdio/mdio_ns2_pcie_phy.c3
-rw-r--r--sys/arm64/cavium/thunder_pcie_pem.c4
-rw-r--r--sys/arm64/nvidia/tegra210/max77620.c3
-rw-r--r--sys/arm64/nvidia/tegra210/max77620_rtc.c3
-rw-r--r--sys/arm64/qoriq/qoriq_dw_pci.c3
-rw-r--r--sys/arm64/qoriq/qoriq_therm.c3
-rw-r--r--sys/arm64/rockchip/rk3568_pcie.c3
-rw-r--r--sys/arm64/rockchip/rk_pcie.c3
-rw-r--r--sys/arm64/rockchip/rk_pinctrl.c3
-rw-r--r--sys/arm64/rockchip/rk_tsadc.c3
-rw-r--r--sys/arm64/rockchip/rk_usbphy.c3
-rw-r--r--sys/compat/linuxkpi/common/src/linux_i2c.c11
-rw-r--r--sys/compat/linuxkpi/common/src/linux_i2cbb.c11
-rw-r--r--sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c2
-rw-r--r--sys/dev/aac/aac.c7
-rw-r--r--sys/dev/aacraid/aacraid.c4
-rw-r--r--sys/dev/acpi_support/acpi_wmi.c2
-rw-r--r--sys/dev/acpica/acpi.c4
-rw-r--r--sys/dev/acpica/acpi_container.c3
-rw-r--r--sys/dev/acpica/acpi_cpu.c2
-rw-r--r--sys/dev/acpica/acpi_pcib_acpi.c3
-rw-r--r--sys/dev/adb/adb_bus.c2
-rw-r--r--sys/dev/ahci/ahci.c2
-rw-r--r--sys/dev/alpm/alpm.c2
-rw-r--r--sys/dev/amdpm/amdpm.c2
-rw-r--r--sys/dev/amdsmb/amdsmb.c2
-rw-r--r--sys/dev/ata/ata-pci.c2
-rw-r--r--sys/dev/ata/chipsets/ata-jmicron.c2
-rw-r--r--sys/dev/ata/chipsets/ata-marvell.c2
-rw-r--r--sys/dev/atkbdc/atkbdc_isa.c2
-rw-r--r--sys/dev/atopcase/atopcase.c3
-rw-r--r--sys/dev/bhnd/bhndb/bhndb_pci.c3
-rw-r--r--sys/dev/bhnd/cores/chipc/chipc.c5
-rw-r--r--sys/dev/bhnd/cores/chipc/chipc_spi.c3
-rw-r--r--sys/dev/bhnd/cores/pci/bhnd_pci.c10
-rw-r--r--sys/dev/bhnd/cores/pcie2/bhnd_pcie2.c10
-rw-r--r--sys/dev/cfi/cfi_core.c2
-rw-r--r--sys/dev/clk/allwinner/aw_ccu.c3
-rw-r--r--sys/dev/clk/clk_bus.c3
-rw-r--r--sys/dev/clk/clk_fixed.c3
-rw-r--r--sys/dev/cxgb/cxgb_main.c3
-rw-r--r--sys/dev/cxgbe/t4_main.c9
-rw-r--r--sys/dev/cxgbe/t4_vf.c7
-rw-r--r--sys/dev/dpaa/bman_portals.c3
-rw-r--r--sys/dev/dpaa/fman.c3
-rw-r--r--sys/dev/dpaa/qman_portals.c3
-rw-r--r--sys/dev/dpaa2/dpaa2_mc.c2
-rw-r--r--sys/dev/dpaa2/dpaa2_rc.c17
-rw-r--r--sys/dev/dpaa2/memac_mdio_acpi.c2
-rw-r--r--sys/dev/drm2/drm_dp_iic_helper.c2
-rw-r--r--sys/dev/dwwdt/dwwdt.c3
-rw-r--r--sys/dev/etherswitch/ar40xx/ar40xx_main.c2
-rw-r--r--sys/dev/etherswitch/arswitch/arswitch.c7
-rw-r--r--sys/dev/etherswitch/e6000sw/e6000sw.c2
-rw-r--r--sys/dev/etherswitch/e6000sw/e6060sw.c4
-rw-r--r--sys/dev/etherswitch/felix/felix.c2
-rw-r--r--sys/dev/etherswitch/infineon/adm6996fc.c4
-rw-r--r--sys/dev/etherswitch/ip17x/ip17x.c4
-rw-r--r--sys/dev/etherswitch/micrel/ksz8995ma.c4
-rw-r--r--sys/dev/etherswitch/miiproxy.c13
-rw-r--r--sys/dev/etherswitch/mtkswitch/mtkswitch.c5
-rw-r--r--sys/dev/etherswitch/rtl8366/rtl8366rb.c4
-rw-r--r--sys/dev/etherswitch/ukswitch/ukswitch.c4
-rw-r--r--sys/dev/fdc/fdc.c5
-rw-r--r--sys/dev/fdc/fdc_acpi.c3
-rw-r--r--sys/dev/fdt/simple_mfd.c3
-rw-r--r--sys/dev/fdt/simplebus.c3
-rw-r--r--sys/dev/firewire/firewire.c2
-rw-r--r--sys/dev/firewire/fwohci_pci.c2
-rw-r--r--sys/dev/firmware/arm/scmi.c4
-rw-r--r--sys/dev/firmware/xilinx/zynqmp_firmware.c3
-rw-r--r--sys/dev/flash/cqspi.c2
-rw-r--r--sys/dev/gpio/dwgpio/dwgpio_bus.c3
-rw-r--r--sys/dev/gpio/gpiobus.c7
-rw-r--r--sys/dev/gpio/gpioiic.c3
-rw-r--r--sys/dev/gpio/gpiospi.c3
-rw-r--r--sys/dev/gpio/ofw_gpiobus.c3
-rw-r--r--sys/dev/hid/hidbus.c7
-rw-r--r--sys/dev/hyperv/input/hv_hid.c4
-rw-r--r--sys/dev/hyperv/pcib/vmbus_pcib.c2
-rw-r--r--sys/dev/hyperv/vmbus/vmbus.c2
-rw-r--r--sys/dev/ichiic/ig4_iic.c6
-rw-r--r--sys/dev/ida/ida.c2
-rw-r--r--sys/dev/iicbus/controller/opencores/iicoc_pci.c2
-rw-r--r--sys/dev/iicbus/controller/rockchip/rk_i2c.c2
-rw-r--r--sys/dev/iicbus/controller/twsi/twsi.c2
-rw-r--r--sys/dev/iicbus/controller/vybrid/vf_i2c.c2
-rw-r--r--sys/dev/iicbus/iicbb.c2
-rw-r--r--sys/dev/iicbus/iicbus.c2
-rw-r--r--sys/dev/iicbus/iichid.c7
-rw-r--r--sys/dev/iicbus/iicsmb.c2
-rw-r--r--sys/dev/iicbus/mux/iic_gpiomux.c2
-rw-r--r--sys/dev/iicbus/mux/ltc430x.c2
-rw-r--r--sys/dev/iicbus/mux/pca9547.c2
-rw-r--r--sys/dev/iicbus/mux/pca954x.c2
-rw-r--r--sys/dev/iicbus/ofw_iicbus.c3
-rw-r--r--sys/dev/iicbus/pmic/act8846.c3
-rw-r--r--sys/dev/imcsmb/imcsmb.c5
-rw-r--r--sys/dev/imcsmb/imcsmb_pci.c6
-rw-r--r--sys/dev/ips/ips.c4
-rw-r--r--sys/dev/ismt/ismt.c6
-rw-r--r--sys/dev/mdio/mdio.c3
-rw-r--r--sys/dev/mfi/mfi.c6
-rw-r--r--sys/dev/mge/if_mge.c2
-rw-r--r--sys/dev/mii/mii.c11
-rw-r--r--sys/dev/mlx/mlx.c5
-rw-r--r--sys/dev/mmc/mmc.c2
-rw-r--r--sys/dev/msk/if_msk.c6
-rw-r--r--sys/dev/mvs/mvs_pci.c2
-rw-r--r--sys/dev/mvs/mvs_soc.c2
-rw-r--r--sys/dev/neta/if_mvneta.c4
-rw-r--r--sys/dev/nfsmb/nfsmb.c4
-rw-r--r--sys/dev/ntb/ntb.c2
-rw-r--r--sys/dev/ntb/ntb_transport.c2
-rw-r--r--sys/dev/nvdimm/nvdimm_acpi.c4
-rw-r--r--sys/dev/ofw/ofw_cpu.c6
-rw-r--r--sys/dev/ofw/ofw_firmware.c3
-rw-r--r--sys/dev/ofw/ofw_pcib.c3
-rw-r--r--sys/dev/ofw/ofwbus.c3
-rw-r--r--sys/dev/ow/ow.c3
-rw-r--r--sys/dev/p2sb/lewisburg_gpiocm.c3
-rw-r--r--sys/dev/p2sb/p2sb.c3
-rw-r--r--sys/dev/pcf/pcf_isa.c2
-rw-r--r--sys/dev/pci/controller/pci_n1sdp.c3
-rw-r--r--sys/dev/pci/hostb_pci.c2
-rw-r--r--sys/dev/pci/pci.c3
-rw-r--r--sys/dev/pci/pci_dw_mv.c3
-rw-r--r--sys/dev/pci/pci_host_generic_acpi.c3
-rw-r--r--sys/dev/pci/pci_host_generic_den0115.c3
-rw-r--r--sys/dev/pci/pci_host_generic_fdt.c3
-rw-r--r--sys/dev/pci/pci_iov.c2
-rw-r--r--sys/dev/pci/pci_pci.c5
-rw-r--r--sys/dev/pci/vga_pci.c2
-rw-r--r--sys/dev/ppbus/ppbconf.c2
-rw-r--r--sys/dev/psci/psci.c2
-rw-r--r--sys/dev/psci/smccc.c3
-rw-r--r--sys/dev/pst/pst-pci.c3
-rw-r--r--sys/dev/pwm/controller/allwinner/aw_pwm.c3
-rw-r--r--sys/dev/pwm/controller/rockchip/rk_pwm.c3
-rw-r--r--sys/dev/pwm/ofw_pwmbus.c3
-rw-r--r--sys/dev/pwm/pwmbus.c3
-rw-r--r--sys/dev/qcom_dwc3/qcom_dwc3.c3
-rw-r--r--sys/dev/qcom_qup/qcom_spi.c3
-rw-r--r--sys/dev/regulator/regulator_bus.c3
-rw-r--r--sys/dev/regulator/regulator_fixed.c9
-rw-r--r--sys/dev/sdhci/fsl_sdhci.c2
-rw-r--r--sys/dev/sdhci/sdhci_fsl_fdt.c3
-rw-r--r--sys/dev/siis/siis.c2
-rw-r--r--sys/dev/sk/if_sk.c6
-rw-r--r--sys/dev/smbus/smbus.c2
-rw-r--r--sys/dev/sound/pci/csa.c2
-rw-r--r--sys/dev/sound/pci/emu10kx.c3
-rw-r--r--sys/dev/sound/pci/fm801.c2
-rw-r--r--sys/dev/sound/pci/hda/hdaa.c4
-rw-r--r--sys/dev/sound/pci/hda/hdac.c2
-rw-r--r--sys/dev/sound/pci/hda/hdacc.c2
-rw-r--r--sys/dev/sound/pci/hdsp.c3
-rw-r--r--sys/dev/sound/pci/hdspe.c4
-rw-r--r--sys/dev/sound/usb/uaudio.c5
-rw-r--r--sys/dev/spibus/controller/allwinner/aw_spi.c3
-rw-r--r--sys/dev/spibus/controller/rockchip/rk_spi.c3
-rw-r--r--sys/dev/spibus/ofw_spibus.c3
-rw-r--r--sys/dev/spibus/spibus.c3
-rw-r--r--sys/dev/sram/mmio_sram.c3
-rw-r--r--sys/dev/superio/superio.c2
-rw-r--r--sys/dev/syscon/syscon_generic.c3
-rw-r--r--sys/dev/usb/controller/dwc3/aw_dwc3.c3
-rw-r--r--sys/dev/usb/controller/dwc3/rk_dwc3.c3
-rw-r--r--sys/dev/usb/controller/xlnx_dwc3.c3
-rw-r--r--sys/dev/usb/input/usbhid.c7
-rw-r--r--sys/dev/usb/misc/cp2112.c2
-rw-r--r--sys/dev/usb/misc/i2ctinyusb.c2
-rw-r--r--sys/dev/viapm/viapm.c4
-rw-r--r--sys/dev/vmd/vmd.c3
-rw-r--r--sys/dev/vnic/mrml_bridge.c3
-rw-r--r--sys/dev/vnic/thunder_mdio_fdt.c3
-rw-r--r--sys/dev/xen/bus/xenpv.c5
-rw-r--r--sys/dev/xen/pcifront/pcifront.c6
-rw-r--r--sys/dev/xen/xenstore/xenstore.c4
-rw-r--r--sys/dev/xilinx/axi_quad_spi.c3
-rw-r--r--sys/i386/acpica/acpi_machdep.c3
-rw-r--r--sys/isa/isa_common.c7
-rw-r--r--sys/isa/vga_isa.c4
-rw-r--r--sys/powerpc/mambo/mambo.c3
-rw-r--r--sys/powerpc/mpc85xx/fsl_espi.c4
-rw-r--r--sys/powerpc/mpc85xx/i2c.c2
-rw-r--r--sys/powerpc/mpc85xx/lbc.c3
-rw-r--r--sys/powerpc/ofw/ofw_pcibus.c3
-rw-r--r--sys/powerpc/powermac/cuda.c3
-rw-r--r--sys/powerpc/powermac/kiic.c3
-rw-r--r--sys/powerpc/powermac/macgpio.c3
-rw-r--r--sys/powerpc/powermac/macio.c3
-rw-r--r--sys/powerpc/powermac/pmu.c3
-rw-r--r--sys/powerpc/powermac/smu.c6
-rw-r--r--sys/powerpc/powermac/uninorth.c3
-rw-r--r--sys/powerpc/powernv/opal_console.c3
-rw-r--r--sys/powerpc/powernv/opal_dev.c3
-rw-r--r--sys/powerpc/powernv/opal_i2c.c3
-rw-r--r--sys/powerpc/powernv/opal_i2cm.c3
-rw-r--r--sys/powerpc/powernv/opal_sensor.c3
-rw-r--r--sys/powerpc/powernv/powernv_centaur.c3
-rw-r--r--sys/powerpc/powernv/powernv_xscom.c3
-rw-r--r--sys/powerpc/powerpc/nexus.c2
-rw-r--r--sys/powerpc/ps3/ps3bus.c3
-rw-r--r--sys/powerpc/pseries/vdevice.c3
-rw-r--r--sys/powerpc/psim/ata_iobus.c3
-rw-r--r--sys/powerpc/psim/iobus.c3
-rw-r--r--sys/riscv/riscv/nexus.c2
-rw-r--r--sys/riscv/riscv/riscv_console.c2
-rw-r--r--sys/riscv/sifive/fu740_pci_dw.c3
-rw-r--r--sys/x86/pci/pci_bus.c3
-rw-r--r--sys/x86/pci/qpi.c6
-rw-r--r--sys/x86/x86/legacy.c4
-rw-r--r--sys/x86/x86/mptable_pci.c3
-rw-r--r--sys/x86/x86/nexus.c2
270 files changed, 491 insertions, 449 deletions
diff --git a/sys/amd64/acpica/acpi_machdep.c b/sys/amd64/acpica/acpi_machdep.c
index 67e71cb2de55..67bbced4f611 100644
--- a/sys/amd64/acpica/acpi_machdep.c
+++ b/sys/amd64/acpica/acpi_machdep.c
@@ -270,8 +270,9 @@ nexus_acpi_attach(device_t dev)
bus_identify_children(dev);
if (BUS_ADD_CHILD(dev, 10, "acpi", 0) == NULL)
panic("failed to add acpi0 device");
+ bus_attach_children(dev);
- return (bus_generic_attach(dev));
+ return (0);
}
static device_method_t nexus_acpi_methods[] = {
diff --git a/sys/arm/allwinner/aw_rsb.c b/sys/arm/allwinner/aw_rsb.c
index 6ca6b3acbf8c..773b88d01d84 100644
--- a/sys/arm/allwinner/aw_rsb.c
+++ b/sys/arm/allwinner/aw_rsb.c
@@ -449,7 +449,7 @@ rsb_attach(device_t dev)
goto fail;
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
diff --git a/sys/arm/annapurna/alpine/alpine_pci_msix.c b/sys/arm/annapurna/alpine/alpine_pci_msix.c
index c4ecfe68144a..fc2915ae7815 100644
--- a/sys/arm/annapurna/alpine/alpine_pci_msix.c
+++ b/sys/arm/annapurna/alpine/alpine_pci_msix.c
@@ -216,7 +216,8 @@ al_msix_attach(device_t dev)
device_printf(dev, "MSI-X SPI IRQ %d-%d\n", sc->irq_min, sc->irq_max);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/arm/gic_acpi.c b/sys/arm/arm/gic_acpi.c
index f30f51e1a1b7..6c8257beddfb 100644
--- a/sys/arm/arm/gic_acpi.c
+++ b/sys/arm/arm/gic_acpi.c
@@ -243,7 +243,7 @@ gic_acpi_attach(device_t dev)
/* If we have children probe and attach them */
if (arm_gic_add_children(dev)) {
bus_identify_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
}
return (0);
diff --git a/sys/arm/arm/gic_fdt.c b/sys/arm/arm/gic_fdt.c
index 6c5b5be43175..1546e754c2e3 100644
--- a/sys/arm/arm/gic_fdt.c
+++ b/sys/arm/arm/gic_fdt.c
@@ -186,7 +186,7 @@ gic_fdt_attach(device_t dev)
/* If we have children probe and attach them */
if (arm_gic_add_children(dev)) {
bus_identify_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
}
return (0);
diff --git a/sys/arm/arm/nexus.c b/sys/arm/arm/nexus.c
index 06f599652698..3653d7087a5c 100644
--- a/sys/arm/arm/nexus.c
+++ b/sys/arm/arm/nexus.c
@@ -185,7 +185,7 @@ nexus_attach(device_t dev)
* Next, deal with the children we know about already.
*/
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_clkman.c b/sys/arm/broadcom/bcm2835/bcm2835_clkman.c
index 744125cc2bb4..7061acbba820 100644
--- a/sys/arm/broadcom/bcm2835/bcm2835_clkman.c
+++ b/sys/arm/broadcom/bcm2835/bcm2835_clkman.c
@@ -112,7 +112,8 @@ bcm2835_clkman_attach(device_t dev)
sc->sc_m_bst = rman_get_bustag(sc->sc_m_res);
sc->sc_m_bsh = rman_get_bushandle(sc->sc_m_res);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
uint32_t
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_pwm.c b/sys/arm/broadcom/bcm2835/bcm2835_pwm.c
index c1711261922d..ad794a6d20ed 100644
--- a/sys/arm/broadcom/bcm2835/bcm2835_pwm.c
+++ b/sys/arm/broadcom/bcm2835/bcm2835_pwm.c
@@ -460,7 +460,8 @@ bcm_pwm_attach(device_t dev)
sc->period2 = 10000; /* 12.5 khz */
sc->ratio2 = 2500; /* 25% */
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c b/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c
index 5ff7b5069c6b..e0c4327d8e05 100644
--- a/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c
+++ b/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c
@@ -354,7 +354,7 @@ bcm_sdhci_attach(device_t dev)
SDHCI_BUFFER;
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
sdhci_start_slot(&sc->sc_slot);
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_sdhost.c b/sys/arm/broadcom/bcm2835/bcm2835_sdhost.c
index 29f062d6ab2b..2fe641ebe390 100644
--- a/sys/arm/broadcom/bcm2835/bcm2835_sdhost.c
+++ b/sys/arm/broadcom/bcm2835/bcm2835_sdhost.c
@@ -473,7 +473,7 @@ bcm_sdhost_attach(device_t dev)
sdhci_init_slot(dev, &sc->sc_slot, 0);
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
sdhci_start_slot(&sc->sc_slot);
diff --git a/sys/arm/broadcom/bcm2835/bcm2835_spi.c b/sys/arm/broadcom/bcm2835/bcm2835_spi.c
index 17419be0c8a7..a1a77d9fabb0 100644
--- a/sys/arm/broadcom/bcm2835/bcm2835_spi.c
+++ b/sys/arm/broadcom/bcm2835/bcm2835_spi.c
@@ -299,8 +299,9 @@ bcm_spi_attach(device_t dev)
#endif
device_add_child(dev, "spibus", DEVICE_UNIT_ANY);
+ bus_attach_children(dev);
- return (bus_generic_attach(dev));
+ return (0);
}
static int
diff --git a/sys/arm/broadcom/bcm2835/bcm2838_pci.c b/sys/arm/broadcom/bcm2835/bcm2838_pci.c
index 0f41dcff37ca..2b2ad1e3bdf8 100644
--- a/sys/arm/broadcom/bcm2835/bcm2838_pci.c
+++ b/sys/arm/broadcom/bcm2835/bcm2838_pci.c
@@ -745,7 +745,8 @@ bcm_pcib_attach(device_t dev)
/* Done. */
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
/*
diff --git a/sys/arm/freescale/vybrid/vf_spi.c b/sys/arm/freescale/vybrid/vf_spi.c
index 5d32723e118c..12dbaabe987e 100644
--- a/sys/arm/freescale/vybrid/vf_spi.c
+++ b/sys/arm/freescale/vybrid/vf_spi.c
@@ -197,7 +197,8 @@ spi_attach(device_t dev)
WRITE4(sc, SPI_CTAR0, reg);
device_add_child(dev, "spibus", 0);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/mv/a37x0_iic.c b/sys/arm/mv/a37x0_iic.c
index 01fda1579bd6..f9a71b97240a 100644
--- a/sys/arm/mv/a37x0_iic.c
+++ b/sys/arm/mv/a37x0_iic.c
@@ -237,7 +237,8 @@ a37x0_iic_attach(device_t dev)
}
/* Probe and attach the iicbus. */
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/mv/mv_pci.c b/sys/arm/mv/mv_pci.c
index 69c72c074c67..5983076d6be8 100644
--- a/sys/arm/mv/mv_pci.c
+++ b/sys/arm/mv/mv_pci.c
@@ -562,7 +562,8 @@ mv_pcib_attach(device_t self)
}
mtx_init(&sc->sc_msi_mtx, "msi_mtx", NULL, MTX_DEF);
- return (bus_generic_attach(self));
+ bus_attach_children(self);
+ return (0);
error:
/* XXX SYS_RES_ should be released here */
diff --git a/sys/arm/mv/mv_pci_ctrl.c b/sys/arm/mv/mv_pci_ctrl.c
index e32d38281e9d..902c0e129dbb 100644
--- a/sys/arm/mv/mv_pci_ctrl.c
+++ b/sys/arm/mv/mv_pci_ctrl.c
@@ -149,7 +149,8 @@ mv_pcib_ctrl_attach(device_t dev)
if (err != 0)
return (err);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/mv/mvebu_gpio.c b/sys/arm/mv/mvebu_gpio.c
index a2001589867c..681cf20f7f9f 100644
--- a/sys/arm/mv/mvebu_gpio.c
+++ b/sys/arm/mv/mvebu_gpio.c
@@ -810,7 +810,8 @@ mvebu_gpio_attach(device_t dev)
return (ENXIO);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/nvidia/as3722.c b/sys/arm/nvidia/as3722.c
index ed5f47363b01..55cdc5111a15 100644
--- a/sys/arm/nvidia/as3722.c
+++ b/sys/arm/nvidia/as3722.c
@@ -328,7 +328,8 @@ as3722_attach(device_t dev)
device_printf(dev, "Cannot setup interrupt.\n");
goto fail;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->irq_h != NULL)
diff --git a/sys/arm/nvidia/drm2/tegra_dc.c b/sys/arm/nvidia/drm2/tegra_dc.c
index a8a0e3f4abf8..eca7ce78c9b2 100644
--- a/sys/arm/nvidia/drm2/tegra_dc.c
+++ b/sys/arm/nvidia/drm2/tegra_dc.c
@@ -1368,7 +1368,8 @@ dc_attach(device_t dev)
goto fail;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
TEGRA_DRM_DEREGISTER_CLIENT(device_get_parent(sc->dev), sc->dev);
diff --git a/sys/arm/nvidia/drm2/tegra_hdmi.c b/sys/arm/nvidia/drm2/tegra_hdmi.c
index 067df21c889c..e727d0279247 100644
--- a/sys/arm/nvidia/drm2/tegra_hdmi.c
+++ b/sys/arm/nvidia/drm2/tegra_hdmi.c
@@ -1242,7 +1242,8 @@ hdmi_attach(device_t dev)
device_printf(dev, "Cannot register DRM device\n");
goto fail;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
TEGRA_DRM_DEREGISTER_CLIENT(device_get_parent(sc->dev), sc->dev);
diff --git a/sys/arm/nvidia/drm2/tegra_host1x.c b/sys/arm/nvidia/drm2/tegra_host1x.c
index ee43efba5ba7..81f727a83edc 100644
--- a/sys/arm/nvidia/drm2/tegra_host1x.c
+++ b/sys/arm/nvidia/drm2/tegra_host1x.c
@@ -571,7 +571,8 @@ host1x_attach(device_t dev)
goto fail;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->tegra_drm != NULL)
diff --git a/sys/arm/nvidia/tegra_abpmisc.c b/sys/arm/nvidia/tegra_abpmisc.c
index 1f54a918f63b..7f219b79990e 100644
--- a/sys/arm/nvidia/tegra_abpmisc.c
+++ b/sys/arm/nvidia/tegra_abpmisc.c
@@ -151,7 +151,8 @@ tegra_abpmisc_attach(device_t dev)
}
dev_sc = sc;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->abp_misc_res != NULL)
diff --git a/sys/arm/nvidia/tegra_efuse.c b/sys/arm/nvidia/tegra_efuse.c
index dc637e6d0bec..a756f9681e92 100644
--- a/sys/arm/nvidia/tegra_efuse.c
+++ b/sys/arm/nvidia/tegra_efuse.c
@@ -481,7 +481,8 @@ tegra_efuse_attach(device_t dev)
if (bootverbose)
tegra_efuse_dump_sku();
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
dev_sc = NULL;
diff --git a/sys/arm/nvidia/tegra_gpio.c b/sys/arm/nvidia/tegra_gpio.c
index 29bc8624e27a..16e1ef94d6a9 100644
--- a/sys/arm/nvidia/tegra_gpio.c
+++ b/sys/arm/nvidia/tegra_gpio.c
@@ -824,7 +824,8 @@ tegra_gpio_attach(device_t dev)
return (ENXIO);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/nvidia/tegra_i2c.c b/sys/arm/nvidia/tegra_i2c.c
index b01f1a1fdce4..bed1bf0ed7e3 100644
--- a/sys/arm/nvidia/tegra_i2c.c
+++ b/sys/arm/nvidia/tegra_i2c.c
@@ -722,7 +722,8 @@ tegra_i2c_attach(device_t dev)
}
/* Probe and attach the iicbus. */
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->irq_h != NULL)
diff --git a/sys/arm/nvidia/tegra_mc.c b/sys/arm/nvidia/tegra_mc.c
index 0f05c32117e9..2568ff8324af 100644
--- a/sys/arm/nvidia/tegra_mc.c
+++ b/sys/arm/nvidia/tegra_mc.c
@@ -260,7 +260,8 @@ tegra_mc_attach(device_t dev)
/* Enable Interrupts */
WR4(sc, MC_INTMASK, MC_INT_INT_MASK);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->clk != NULL)
diff --git a/sys/arm/nvidia/tegra_pcie.c b/sys/arm/nvidia/tegra_pcie.c
index 2a91a81d40a9..b76e74da4f7d 100644
--- a/sys/arm/nvidia/tegra_pcie.c
+++ b/sys/arm/nvidia/tegra_pcie.c
@@ -1566,8 +1566,9 @@ tegra_pcib_attach(device_t dev)
goto out;
#endif
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
+ bus_attach_children(dev);
- return (bus_generic_attach(dev));
+ return (0);
out:
diff --git a/sys/arm/nvidia/tegra_rtc.c b/sys/arm/nvidia/tegra_rtc.c
index 09bd42bc64e3..b94ee24e81a5 100644
--- a/sys/arm/nvidia/tegra_rtc.c
+++ b/sys/arm/nvidia/tegra_rtc.c
@@ -246,7 +246,8 @@ tegra_rtc_attach(device_t dev)
*/
/* clock_register(dev, 1000000); */
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->clk != NULL)
diff --git a/sys/arm/nvidia/tegra_sdhci.c b/sys/arm/nvidia/tegra_sdhci.c
index d37f71a150a2..4d2eaccf4c27 100644
--- a/sys/arm/nvidia/tegra_sdhci.c
+++ b/sys/arm/nvidia/tegra_sdhci.c
@@ -387,7 +387,7 @@ tegra_sdhci_attach(device_t dev)
sc->gpio = sdhci_fdt_gpio_setup(sc->dev, &sc->slot);
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
sdhci_start_slot(&sc->slot);
diff --git a/sys/arm/nvidia/tegra_soctherm.c b/sys/arm/nvidia/tegra_soctherm.c
index fa6d0d9fa5cd..630287adb137 100644
--- a/sys/arm/nvidia/tegra_soctherm.c
+++ b/sys/arm/nvidia/tegra_soctherm.c
@@ -780,7 +780,8 @@ soctherm_attach(device_t dev)
}
OF_device_register_xref(OF_xref_from_node(node), dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->irq_ih != NULL)
diff --git a/sys/arm/qualcomm/ipq4018_usb_hs_phy.c b/sys/arm/qualcomm/ipq4018_usb_hs_phy.c
index 97f65766466c..5ed964abf0ec 100644
--- a/sys/arm/qualcomm/ipq4018_usb_hs_phy.c
+++ b/sys/arm/qualcomm/ipq4018_usb_hs_phy.c
@@ -200,7 +200,8 @@ ipq4018_usb_hs_usbphy_attach(device_t dev)
rv = ipq4018_usb_hs_usbphy_init_phy(sc, node);
if (rv != 0)
goto fail;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
return (ENXIO);
diff --git a/sys/arm/qualcomm/ipq4018_usb_ss_phy.c b/sys/arm/qualcomm/ipq4018_usb_ss_phy.c
index e9b880319bbc..ef8a315e3906 100644
--- a/sys/arm/qualcomm/ipq4018_usb_ss_phy.c
+++ b/sys/arm/qualcomm/ipq4018_usb_ss_phy.c
@@ -180,7 +180,8 @@ ipq4018_usb_ss_usbphy_attach(device_t dev)
rv = ipq4018_usb_ss_usbphy_init_phy(sc, node);
if (rv != 0)
goto fail;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
return (ENXIO);
diff --git a/sys/arm/ti/am335x/am335x_ehrpwm.c b/sys/arm/ti/am335x/am335x_ehrpwm.c
index 77b6384b17a7..95301f9cfed3 100644
--- a/sys/arm/ti/am335x/am335x_ehrpwm.c
+++ b/sys/arm/ti/am335x/am335x_ehrpwm.c
@@ -518,7 +518,8 @@ am335x_ehrpwm_attach(device_t dev)
}
bus_identify_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
PWM_LOCK_DESTROY(sc);
if (sc->sc_mem_res)
diff --git a/sys/arm/ti/am335x/am335x_pwmss.c b/sys/arm/ti/am335x/am335x_pwmss.c
index 9d584910ee58..039448f9099f 100644
--- a/sys/arm/ti/am335x/am335x_pwmss.c
+++ b/sys/arm/ti/am335x/am335x_pwmss.c
@@ -158,7 +158,8 @@ am335x_pwmss_attach(device_t dev)
for (node = OF_child(node); node > 0; node = OF_peer(node))
simplebus_add_device(dev, node, 0, NULL, -1, NULL);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/am335x/am335x_usb_phy.c b/sys/arm/ti/am335x/am335x_usb_phy.c
index 05b1c085aea3..56fb49519336 100644
--- a/sys/arm/ti/am335x/am335x_usb_phy.c
+++ b/sys/arm/ti/am335x/am335x_usb_phy.c
@@ -85,7 +85,8 @@ ti_usb_phy_attach(device_t dev)
/* FIXME: Add dev/phy/ interface */
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/clk/ti_clkctrl.c b/sys/arm/ti/clk/ti_clkctrl.c
index 169cc7a62f73..cba832640fa3 100644
--- a/sys/arm/ti/clk/ti_clkctrl.c
+++ b/sys/arm/ti/clk/ti_clkctrl.c
@@ -241,7 +241,8 @@ cleanup:
if (err)
return (err);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/clk/ti_divider_clock.c b/sys/arm/ti/clk/ti_divider_clock.c
index ebe623762efc..7812d3607b07 100644
--- a/sys/arm/ti/clk/ti_divider_clock.c
+++ b/sys/arm/ti/clk/ti_divider_clock.c
@@ -182,7 +182,8 @@ ti_divider_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_divider_new_pass */
DPRINTF(sc->sc_dev, "find_parent_clock_names failed\n");
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->sc_dev);
+ return (0);
}
err = register_clk(sc);
@@ -190,14 +191,16 @@ ti_divider_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_divider_new_pass */
DPRINTF(sc->sc_dev, "register_clk failed\n");
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->sc_dev);
+ return (0);
}
sc->attach_done = true;
free_clkdef(&sc->div_def.clkdef);
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->sc_dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/clk/ti_dpll_clock.c b/sys/arm/ti/clk/ti_dpll_clock.c
index 84b86008b6d6..9252dc1abfe1 100644
--- a/sys/arm/ti/clk/ti_dpll_clock.c
+++ b/sys/arm/ti/clk/ti_dpll_clock.c
@@ -292,7 +292,8 @@ ti_dpll_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_dpll_new_pass */
DPRINTF(sc->dev, "find_parent_clock_names failed\n");
- return (bus_generic_attach(sc->dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
err = register_clk(sc);
@@ -300,14 +301,16 @@ ti_dpll_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_dpll_new_pass */
DPRINTF(sc->dev, "register_clk failed\n");
- return (bus_generic_attach(sc->dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
sc->attach_done = true;
free_clkdef(&sc->dpll_def.clkdef);
- return (bus_generic_attach(sc->dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/clk/ti_gate_clock.c b/sys/arm/ti/clk/ti_gate_clock.c
index fc54a196fb5e..71512b8490ab 100644
--- a/sys/arm/ti/clk/ti_gate_clock.c
+++ b/sys/arm/ti/clk/ti_gate_clock.c
@@ -185,7 +185,8 @@ ti_gate_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_gate_new_pass */
DPRINTF(sc->sc_dev, "find_parent_clock_names failed\n");
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
err = register_clk(sc);
@@ -193,14 +194,16 @@ ti_gate_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_gate_new_pass */
DPRINTF(sc->sc_dev, "register_clk failed\n");
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
sc->attach_done = true;
free_clkdef(&sc->gate_def.clkdef);
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/clk/ti_mux_clock.c b/sys/arm/ti/clk/ti_mux_clock.c
index a6c506fedce0..ac570ba58439 100644
--- a/sys/arm/ti/clk/ti_mux_clock.c
+++ b/sys/arm/ti/clk/ti_mux_clock.c
@@ -167,7 +167,8 @@ ti_mux_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_mux_new_pass */
DPRINTF(sc->sc_dev, "find_parent_clock_names failed\n");
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
err = register_clk(sc);
@@ -175,14 +176,16 @@ ti_mux_attach(device_t dev)
if (err) {
/* free_clkdef will be called in ti_mux_new_pass */
DPRINTF(sc->sc_dev, "register_clk failed\n");
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
sc->attach_done = true;
free_clkdef(&sc->mux_def.clkdef);
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
static void
diff --git a/sys/arm/ti/cpsw/if_cpsw.c b/sys/arm/ti/cpsw/if_cpsw.c
index 7756940bb28d..732b5a81857a 100644
--- a/sys/arm/ti/cpsw/if_cpsw.c
+++ b/sys/arm/ti/cpsw/if_cpsw.c
@@ -912,7 +912,7 @@ cpsw_attach(device_t dev)
}
}
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/arm/ti/ti_omap4_cm.c b/sys/arm/ti/ti_omap4_cm.c
index 67c17ec4df98..572bae7173a1 100644
--- a/sys/arm/ti/ti_omap4_cm.c
+++ b/sys/arm/ti/ti_omap4_cm.c
@@ -115,7 +115,8 @@ ti_omap4_cm_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/ti_prcm.c b/sys/arm/ti/ti_prcm.c
index 7afb9a2a5678..3fc1fef1fdfb 100644
--- a/sys/arm/ti/ti_prcm.c
+++ b/sys/arm/ti/ti_prcm.c
@@ -192,8 +192,8 @@ ti_prcm_attach(device_t dev)
for (child = OF_child(node); child != 0; child = OF_peer(child)) {
simplebus_add_device(dev, child, 0, NULL, -1, NULL);
}
-
- return (bus_generic_attach(sc->dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
int
diff --git a/sys/arm/ti/ti_scm.c b/sys/arm/ti/ti_scm.c
index 23507febb90d..dc687641502c 100644
--- a/sys/arm/ti/ti_scm.c
+++ b/sys/arm/ti/ti_scm.c
@@ -127,7 +127,8 @@ ti_scm_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/ti_scm_syscon.c b/sys/arm/ti/ti_scm_syscon.c
index 729af03c4abd..37d802d6c5d7 100644
--- a/sys/arm/ti/ti_scm_syscon.c
+++ b/sys/arm/ti/ti_scm_syscon.c
@@ -190,7 +190,8 @@ ti_scm_syscon_attach(device_t dev)
simplebus_add_device(sc->dev, child, 0, NULL, -1, NULL);
}
- return (bus_generic_attach(sc->dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
/* syscon interface */
diff --git a/sys/arm/ti/ti_sdhci.c b/sys/arm/ti/ti_sdhci.c
index 597d2a35fba6..e6d4ef542a4d 100644
--- a/sys/arm/ti/ti_sdhci.c
+++ b/sys/arm/ti/ti_sdhci.c
@@ -688,7 +688,7 @@ ti_sdhci_attach(device_t dev)
sc->force_card_present = true;
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
sdhci_start_slot(&sc->slot);
return (0);
diff --git a/sys/arm/ti/ti_spi.c b/sys/arm/ti/ti_spi.c
index 9fabed46917d..26d6691e5bb5 100644
--- a/sys/arm/ti/ti_spi.c
+++ b/sys/arm/ti/ti_spi.c
@@ -264,8 +264,9 @@ ti_spi_attach(device_t dev)
#endif
device_add_child(dev, "spibus", DEVICE_UNIT_ANY);
+ bus_attach_children(dev);
- return (bus_generic_attach(dev));
+ return (0);
}
static int
diff --git a/sys/arm/ti/ti_sysc.c b/sys/arm/ti/ti_sysc.c
index f5a132e5702d..3b7d0b2b3123 100644
--- a/sys/arm/ti/ti_sysc.c
+++ b/sys/arm/ti/ti_sysc.c
@@ -539,7 +539,8 @@ ti_sysc_attach(device_t dev)
err = ti_sysc_attach_clocks(sc);
if (err) {
DPRINTF(sc->dev, "Failed to attach clocks\n");
- return (bus_generic_attach(sc->dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
}
@@ -552,7 +553,8 @@ ti_sysc_attach(device_t dev)
sc->attach_done = true;
- return (bus_generic_attach(sc->dev));
+ bus_attach_children(sc->dev);
+ return (0);
}
static int
@@ -593,7 +595,7 @@ ti_sysc_new_pass(device_t dev)
}
sc->attach_done = true;
- bus_generic_attach(sc->dev);
+ bus_attach_children(sc->dev);
}
static device_method_t ti_sysc_methods[] = {
diff --git a/sys/arm/ti/twl/twl.c b/sys/arm/ti/twl/twl.c
index 88391b136df3..3a7a0ddcb0b1 100644
--- a/sys/arm/ti/twl/twl.c
+++ b/sys/arm/ti/twl/twl.c
@@ -417,7 +417,8 @@ twl_attach(device_t dev)
if ((sc->sc_clks = device_add_child(dev, "twl_clks", -1)) == NULL)
device_printf(dev, "could not allocate twl_clks instance\n");
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm/ti/usb/omap_host.c b/sys/arm/ti/usb/omap_host.c
index 2e4677a2a488..b7c387c00601 100644
--- a/sys/arm/ti/usb/omap_host.c
+++ b/sys/arm/ti/usb/omap_host.c
@@ -420,7 +420,8 @@ omap_uhh_attach(device_t dev)
*/
for (node = OF_child(node); node > 0; node = OF_peer(node))
simplebus_add_device(dev, node, 0, NULL, -1, NULL);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
error:
omap_uhh_detach(dev);
diff --git a/sys/arm64/arm64/gic_v3_acpi.c b/sys/arm64/arm64/gic_v3_acpi.c
index 86ddb316da1d..44c55cf5bbf2 100644
--- a/sys/arm64/arm64/gic_v3_acpi.c
+++ b/sys/arm64/arm64/gic_v3_acpi.c
@@ -464,7 +464,7 @@ gic_v3_acpi_bus_attach(device_t dev)
acpi_unmap_table(madt);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
}
static struct resource_list *
diff --git a/sys/arm64/arm64/gic_v3_fdt.c b/sys/arm64/arm64/gic_v3_fdt.c
index f913d3bfaee6..9c034b417624 100644
--- a/sys/arm64/arm64/gic_v3_fdt.c
+++ b/sys/arm64/arm64/gic_v3_fdt.c
@@ -376,7 +376,8 @@ gic_v3_ofw_bus_attach(device_t dev)
}
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static struct resource_list *
diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c
index 8628e29bd94c..8d7489b844ae 100644
--- a/sys/arm64/arm64/nexus.c
+++ b/sys/arm64/arm64/nexus.c
@@ -178,7 +178,7 @@ nexus_attach(device_t dev)
panic("nexus_attach irq_rman");
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/arm64/broadcom/brcmmdio/mdio_mux_iproc.c b/sys/arm64/broadcom/brcmmdio/mdio_mux_iproc.c
index 6e6b3ad97310..81e79a16bf02 100644
--- a/sys/arm64/broadcom/brcmmdio/mdio_mux_iproc.c
+++ b/sys/arm64/broadcom/brcmmdio/mdio_mux_iproc.c
@@ -362,7 +362,8 @@ brcm_iproc_mdio_attach(device_t dev)
node = ofw_bus_get_node(dev);
OF_device_register_xref(OF_xref_from_node(node), dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
error:
brcm_iproc_mdio_detach(dev);
diff --git a/sys/arm64/broadcom/brcmmdio/mdio_nexus_iproc.c b/sys/arm64/broadcom/brcmmdio/mdio_nexus_iproc.c
index 852bd8815e7f..2d3185e22041 100644
--- a/sys/arm64/broadcom/brcmmdio/mdio_nexus_iproc.c
+++ b/sys/arm64/broadcom/brcmmdio/mdio_nexus_iproc.c
@@ -174,7 +174,8 @@ brcm_mdionexus_fdt_attach(device_t dev)
if (err != 0)
return (err);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
diff --git a/sys/arm64/broadcom/brcmmdio/mdio_ns2_pcie_phy.c b/sys/arm64/broadcom/brcmmdio/mdio_ns2_pcie_phy.c
index f8f5c670c35b..89db48842e55 100644
--- a/sys/arm64/broadcom/brcmmdio/mdio_ns2_pcie_phy.c
+++ b/sys/arm64/broadcom/brcmmdio/mdio_ns2_pcie_phy.c
@@ -154,5 +154,6 @@ ns2_pcie_phy_fdt_attach(device_t dev)
if (ns2_pci_phy_init(dev) < 0)
return (EINVAL);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
diff --git a/sys/arm64/cavium/thunder_pcie_pem.c b/sys/arm64/cavium/thunder_pcie_pem.c
index 6b57aeee0732..b01dfecb347e 100644
--- a/sys/arm64/cavium/thunder_pcie_pem.c
+++ b/sys/arm64/cavium/thunder_pcie_pem.c
@@ -907,8 +907,8 @@ thunder_pem_attach(device_t dev)
}
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
-
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail_io:
rman_fini(&sc->io_rman);
diff --git a/sys/arm64/nvidia/tegra210/max77620.c b/sys/arm64/nvidia/tegra210/max77620.c
index a7d938cb8123..d9c7736bd4c3 100644
--- a/sys/arm64/nvidia/tegra210/max77620.c
+++ b/sys/arm64/nvidia/tegra210/max77620.c
@@ -435,7 +435,8 @@ max77620_attach(device_t dev)
goto fail;
}
#endif
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->irq_h != NULL)
diff --git a/sys/arm64/nvidia/tegra210/max77620_rtc.c b/sys/arm64/nvidia/tegra210/max77620_rtc.c
index dca90549443c..77d38c347d14 100644
--- a/sys/arm64/nvidia/tegra210/max77620_rtc.c
+++ b/sys/arm64/nvidia/tegra210/max77620_rtc.c
@@ -355,7 +355,8 @@ max77620_rtc_attach(device_t dev)
clock_register(sc->dev, 1000000);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
LOCK_DESTROY(sc);
diff --git a/sys/arm64/qoriq/qoriq_dw_pci.c b/sys/arm64/qoriq/qoriq_dw_pci.c
index 2d7de343564a..2492130e4b42 100644
--- a/sys/arm64/qoriq/qoriq_dw_pci.c
+++ b/sys/arm64/qoriq/qoriq_dw_pci.c
@@ -241,7 +241,8 @@ qorif_dw_pci_attach(device_t dev)
goto out;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
out:
/* XXX Cleanup */
return (rv);
diff --git a/sys/arm64/qoriq/qoriq_therm.c b/sys/arm64/qoriq/qoriq_therm.c
index decd55fad6e4..72c0e6ff0fa2 100644
--- a/sys/arm64/qoriq/qoriq_therm.c
+++ b/sys/arm64/qoriq/qoriq_therm.c
@@ -464,7 +464,8 @@ qoriq_therm_attach(device_t dev)
}
OF_device_register_xref(OF_xref_from_node(node), dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
if (sc->irq_ih != NULL)
diff --git a/sys/arm64/rockchip/rk3568_pcie.c b/sys/arm64/rockchip/rk3568_pcie.c
index d55bfb1bcc73..9e3a1fa054cc 100644
--- a/sys/arm64/rockchip/rk3568_pcie.c
+++ b/sys/arm64/rockchip/rk3568_pcie.c
@@ -362,7 +362,8 @@ rk3568_pcie_attach(device_t dev)
goto fail;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
rk3568_pcie_detach(dev);
return (ENXIO);
diff --git a/sys/arm64/rockchip/rk_pcie.c b/sys/arm64/rockchip/rk_pcie.c
index 54619ca5b1d8..f22cfcf19def 100644
--- a/sys/arm64/rockchip/rk_pcie.c
+++ b/sys/arm64/rockchip/rk_pcie.c
@@ -1354,7 +1354,8 @@ rk_pcie_attach(device_t dev)
DELAY(250000);
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
out_full:
bus_teardown_intr(dev, sc->sys_irq_res, sc->sys_irq_cookie);
diff --git a/sys/arm64/rockchip/rk_pinctrl.c b/sys/arm64/rockchip/rk_pinctrl.c
index f77e7965a549..f38601742142 100644
--- a/sys/arm64/rockchip/rk_pinctrl.c
+++ b/sys/arm64/rockchip/rk_pinctrl.c
@@ -1537,7 +1537,8 @@ rk_pinctrl_attach(device_t dev)
fdt_pinctrl_configure_tree(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/arm64/rockchip/rk_tsadc.c b/sys/arm64/rockchip/rk_tsadc.c
index a8a64b69d7d3..e6cbad36f697 100644
--- a/sys/arm64/rockchip/rk_tsadc.c
+++ b/sys/arm64/rockchip/rk_tsadc.c
@@ -818,7 +818,8 @@ tsadc_attach(device_t dev)
}
OF_device_register_xref(OF_xref_from_node(node), dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail_sysctl:
sysctl_ctx_free(&tsadc_sysctl_ctx);
diff --git a/sys/arm64/rockchip/rk_usbphy.c b/sys/arm64/rockchip/rk_usbphy.c
index f9acbdff6d79..5db6cbb827dd 100644
--- a/sys/arm64/rockchip/rk_usbphy.c
+++ b/sys/arm64/rockchip/rk_usbphy.c
@@ -274,7 +274,8 @@ rk_usbphy_attach(device_t dev)
if (rv != 0)
goto fail;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
return (ENXIO);
diff --git a/sys/compat/linuxkpi/common/src/linux_i2c.c b/sys/compat/linuxkpi/common/src/linux_i2c.c
index 60f7737cf6ec..d3e69d5df212 100644
--- a/sys/compat/linuxkpi/common/src/linux_i2c.c
+++ b/sys/compat/linuxkpi/common/src/linux_i2c.c
@@ -90,7 +90,7 @@ lkpi_iic_attach(device_t dev)
device_printf(dev, "Couldn't add iicbus child, aborting\n");
return (ENXIO);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
@@ -316,7 +316,6 @@ int
lkpi_i2c_add_adapter(struct i2c_adapter *adapter)
{
device_t lkpi_iic;
- int error;
if (adapter->name[0] == '\0')
return (-EINVAL);
@@ -332,14 +331,8 @@ lkpi_i2c_add_adapter(struct i2c_adapter *adapter)
}
bus_topo_lock();
- error = bus_generic_attach(adapter->dev.parent->bsddev);
+ bus_attach_children(adapter->dev.parent->bsddev);
bus_topo_unlock();
- if (error) {
- device_printf(adapter->dev.parent->bsddev,
- "failed to attach child: error %d\n", error);
- sx_xunlock(&lkpi_sx_i2c);
- return (ENXIO);
- }
LKPI_IIC_ADD_ADAPTER(lkpi_iic, adapter);
sx_xunlock(&lkpi_sx_i2c);
return (0);
diff --git a/sys/compat/linuxkpi/common/src/linux_i2cbb.c b/sys/compat/linuxkpi/common/src/linux_i2cbb.c
index 1ebc0b597c4d..f266a1404af7 100644
--- a/sys/compat/linuxkpi/common/src/linux_i2cbb.c
+++ b/sys/compat/linuxkpi/common/src/linux_i2cbb.c
@@ -95,7 +95,7 @@ lkpi_iicbb_attach(device_t dev)
device_printf(dev, "Couldn't add iicbb child, aborting\n");
return (ENXIO);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
@@ -303,7 +303,6 @@ int
lkpi_i2c_bit_add_bus(struct i2c_adapter *adapter)
{
device_t lkpi_iicbb;
- int error;
if (bootverbose)
device_printf(adapter->dev.parent->bsddev,
@@ -317,14 +316,8 @@ lkpi_i2c_bit_add_bus(struct i2c_adapter *adapter)
}
bus_topo_lock();
- error = bus_generic_attach(adapter->dev.parent->bsddev);
+ bus_attach_children(adapter->dev.parent->bsddev);
bus_topo_unlock();
- if (error) {
- device_printf(adapter->dev.parent->bsddev,
- "failed to attach child: error %d\n", error);
- sx_xunlock(&lkpi_sx_i2cbb);
- return (ENXIO);
- }
LKPI_IIC_ADD_ADAPTER(lkpi_iicbb, adapter);
sx_xunlock(&lkpi_sx_i2cbb);
return (0);
diff --git a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c
index 1a1f18d825bf..190b6d16781e 100644
--- a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c
+++ b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c
@@ -193,7 +193,7 @@ bcm_vchiq_attach(device_t dev)
vchiq_init();
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/aac/aac.c b/sys/dev/aac/aac.c
index db434841f778..12f5eb50426b 100644
--- a/sys/dev/aac/aac.c
+++ b/sys/dev/aac/aac.c
@@ -441,8 +441,7 @@ aac_startup(void *arg)
sc->aac_state &= ~AAC_STATE_SUSPEND;
/* poke the bus to actually attach the child devices */
- if (bus_generic_attach(sc->aac_dev))
- device_printf(sc->aac_dev, "bus_generic_attach failed\n");
+ bus_attach_children(sc->aac_dev);
/* disconnect ourselves from the intrhook chain */
config_intrhook_disestablish(&sc->aac_ich);
@@ -3324,7 +3323,7 @@ aac_handle_aif(struct aac_softc *sc, struct aac_fib *fib)
if (added) {
mtx_unlock(&sc->aac_io_lock);
bus_topo_lock();
- bus_generic_attach(sc->aac_dev);
+ bus_attach_children(sc->aac_dev);
bus_topo_unlock();
mtx_lock(&sc->aac_io_lock);
}
@@ -3808,5 +3807,5 @@ aac_get_bus_info(struct aac_softc *sc)
}
if (found)
- bus_generic_attach(sc->aac_dev);
+ bus_attach_children(sc->aac_dev);
}
diff --git a/sys/dev/aacraid/aacraid.c b/sys/dev/aacraid/aacraid.c
index 3bebba01c1b1..9e9b1c602b9d 100644
--- a/sys/dev/aacraid/aacraid.c
+++ b/sys/dev/aacraid/aacraid.c
@@ -335,7 +335,7 @@ aacraid_attach(struct aac_softc *sc)
aac_get_bus_info(sc);
/* poke the bus to actually attach the child devices */
- bus_generic_attach(sc->aac_dev);
+ bus_attach_children(sc->aac_dev);
/* mark the controller up */
sc->aac_state &= ~AAC_STATE_SUSPEND;
@@ -3631,7 +3631,7 @@ aac_container_bus(struct aac_softc *sc)
device_set_desc(child, aac_describe_code(aac_container_types,
mir->MntTable[0].VolType));
*/
- bus_generic_attach(sc->aac_dev);
+ bus_attach_children(sc->aac_dev);
}
static void
diff --git a/sys/dev/acpi_support/acpi_wmi.c b/sys/dev/acpi_support/acpi_wmi.c
index d4b90ad9a508..56a08e59934d 100644
--- a/sys/dev/acpi_support/acpi_wmi.c
+++ b/sys/dev/acpi_support/acpi_wmi.c
@@ -297,7 +297,7 @@ acpi_wmi_attach(device_t dev)
if (ret == 0) {
bus_identify_children(dev);
- ret = bus_generic_attach(dev);
+ bus_attach_children(dev);
}
return (ret);
diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c
index a16719dd0941..f2ff1d59ccc7 100644
--- a/sys/dev/acpica/acpi.c
+++ b/sys/dev/acpica/acpi.c
@@ -2282,8 +2282,8 @@ acpi_probe_children(device_t bus)
bus_identify_children(bus);
/* Probe/attach all children, created statically and from the namespace. */
- ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "acpi bus_generic_attach\n"));
- bus_generic_attach(bus);
+ ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "acpi bus_attach_children\n"));
+ bus_attach_children(bus);
/*
* Reserve resources allocated to children but not yet allocated
diff --git a/sys/dev/acpica/acpi_container.c b/sys/dev/acpica/acpi_container.c
index ec4150ab186f..f9903e2b2bba 100644
--- a/sys/dev/acpica/acpi_container.c
+++ b/sys/dev/acpica/acpi_container.c
@@ -104,7 +104,8 @@ acpi_syscont_attach(device_t dev)
{
bus_identify_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/acpica/acpi_cpu.c b/sys/dev/acpica/acpi_cpu.c
index 58be4b228507..f9b9a386c0c5 100644
--- a/sys/dev/acpica/acpi_cpu.c
+++ b/sys/dev/acpica/acpi_cpu.c
@@ -471,7 +471,7 @@ acpi_cpu_postattach(void *unused __unused)
}
CPU_FOREACH(i) {
if ((sc = cpu_softc[i]) != NULL) {
- bus_generic_attach(sc->cpu_dev);
+ bus_attach_children(sc->cpu_dev);
attached = 1;
}
}
diff --git a/sys/dev/acpica/acpi_pcib_acpi.c b/sys/dev/acpica/acpi_pcib_acpi.c
index a268181ff2d6..bd005aed8fdc 100644
--- a/sys/dev/acpica/acpi_pcib_acpi.c
+++ b/sys/dev/acpica/acpi_pcib_acpi.c
@@ -535,7 +535,8 @@ acpi_pcib_acpi_attach(device_t dev)
error = ENXIO;
goto errout;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
errout:
device_printf(device_get_parent(dev), "couldn't attach pci bus\n");
diff --git a/sys/dev/adb/adb_bus.c b/sys/dev/adb/adb_bus.c
index 9e0d1f2a1ce5..7f4bd8676fcf 100644
--- a/sys/dev/adb/adb_bus.c
+++ b/sys/dev/adb/adb_bus.c
@@ -182,7 +182,7 @@ adb_bus_enumerate(void *xdev)
}
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
config_intrhook_disestablish(&sc->enum_hook);
}
diff --git a/sys/dev/ahci/ahci.c b/sys/dev/ahci/ahci.c
index 76d27dbe4953..d64ec8caa13f 100644
--- a/sys/dev/ahci/ahci.c
+++ b/sys/dev/ahci/ahci.c
@@ -383,7 +383,7 @@ ahci_attach(device_t dev)
else
device_set_ivars(child, (void *)(intptr_t)AHCI_EM_UNIT);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/alpm/alpm.c b/sys/dev/alpm/alpm.c
index 814cfcd86802..46dc85ebc485 100644
--- a/sys/dev/alpm/alpm.c
+++ b/sys/dev/alpm/alpm.c
@@ -223,7 +223,7 @@ alpm_attach(device_t dev)
alpm_detach(dev);
return (EINVAL);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/amdpm/amdpm.c b/sys/dev/amdpm/amdpm.c
index 4f8515f21e0d..22b252f572b0 100644
--- a/sys/dev/amdpm/amdpm.c
+++ b/sys/dev/amdpm/amdpm.c
@@ -220,7 +220,7 @@ amdpm_attach(device_t dev)
return (EINVAL);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/amdsmb/amdsmb.c b/sys/dev/amdsmb/amdsmb.c
index 57a9bccbf58b..00e2f979b6cc 100644
--- a/sys/dev/amdsmb/amdsmb.c
+++ b/sys/dev/amdsmb/amdsmb.c
@@ -165,7 +165,7 @@ amdsmb_attach(device_t dev)
return (EINVAL);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/ata/ata-pci.c b/sys/dev/ata/ata-pci.c
index 436601267012..8c22bb6ff427 100644
--- a/sys/dev/ata/ata-pci.c
+++ b/sys/dev/ata/ata-pci.c
@@ -126,7 +126,7 @@ ata_pci_attach(device_t dev)
else
device_set_ivars(child, (void *)(intptr_t)unit);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return 0;
}
diff --git a/sys/dev/ata/chipsets/ata-jmicron.c b/sys/dev/ata/chipsets/ata-jmicron.c
index 7965e642869e..3a5c359dcd9e 100644
--- a/sys/dev/ata/chipsets/ata-jmicron.c
+++ b/sys/dev/ata/chipsets/ata-jmicron.c
@@ -113,7 +113,7 @@ ata_jmicron_chipinit(device_t dev)
child = device_add_child(dev, NULL, DEVICE_UNIT_ANY);
if (child != NULL) {
device_set_ivars(child, (void *)(intptr_t)-1);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
}
}
ctlr->ch_attach = ata_jmicron_ch_attach;
diff --git a/sys/dev/ata/chipsets/ata-marvell.c b/sys/dev/ata/chipsets/ata-marvell.c
index 1f5f12b951b5..c17b04744543 100644
--- a/sys/dev/ata/chipsets/ata-marvell.c
+++ b/sys/dev/ata/chipsets/ata-marvell.c
@@ -128,7 +128,7 @@ ata_marvell_chipinit(device_t dev)
child = device_add_child(dev, NULL, DEVICE_UNIT_ANY);
if (child != NULL) {
device_set_ivars(child, (void *)(intptr_t)-1);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
}
}
ctlr->ch_attach = ata_marvell_ch_attach;
diff --git a/sys/dev/atkbdc/atkbdc_isa.c b/sys/dev/atkbdc/atkbdc_isa.c
index f73589cdf2a2..057ebbc7ec0d 100644
--- a/sys/dev/atkbdc/atkbdc_isa.c
+++ b/sys/dev/atkbdc/atkbdc_isa.c
@@ -239,7 +239,7 @@ atkbdc_isa_attach(device_t dev)
*(atkbdc_softc_t **)device_get_softc(dev) = sc;
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return 0;
}
diff --git a/sys/dev/atopcase/atopcase.c b/sys/dev/atopcase/atopcase.c
index db1258b77a69..e4e248f7ce0a 100644
--- a/sys/dev/atopcase/atopcase.c
+++ b/sys/dev/atopcase/atopcase.c
@@ -533,7 +533,8 @@ atopcase_init(struct atopcase_softc *sc)
if (sc->sc_tq != NULL)
taskqueue_enqueue_timeout(sc->sc_tq, &sc->sc_task, hz / 120);
- return (bus_generic_attach(sc->sc_dev));
+ bus_attach_children(sc->sc_dev);
+ return (0);
err:
return (err);
diff --git a/sys/dev/bhnd/bhndb/bhndb_pci.c b/sys/dev/bhnd/bhndb/bhndb_pci.c
index 4e205614ce8a..0cdcba1daefb 100644
--- a/sys/dev/bhnd/bhndb/bhndb_pci.c
+++ b/sys/dev/bhnd/bhndb/bhndb_pci.c
@@ -458,8 +458,7 @@ bhndb_pci_attach(device_t dev)
goto cleanup;
/* Probe and attach our children */
- if ((error = bus_generic_attach(dev)))
- goto cleanup;
+ bus_attach_children(dev);
bhndb_pci_probe_free_core_table(cores);
diff --git a/sys/dev/bhnd/cores/chipc/chipc.c b/sys/dev/bhnd/cores/chipc/chipc.c
index a7da4ec9b7fc..010ebbbd6cb2 100644
--- a/sys/dev/bhnd/cores/chipc/chipc.c
+++ b/sys/dev/bhnd/cores/chipc/chipc.c
@@ -211,13 +211,12 @@ chipc_attach(device_t dev)
* response to ChipCommin API requests.
*
* Since our children may need access to ChipCommon, this must be done
- * before attaching our children below (via bus_generic_attach).
+ * before attaching our children below (via bus_attach_children).
*/
if ((error = bhnd_register_provider(dev, BHND_SERVICE_CHIPC)))
goto failed;
- if ((error = bus_generic_attach(dev)))
- goto failed;
+ bus_attach_children(dev);
return (0);
diff --git a/sys/dev/bhnd/cores/chipc/chipc_spi.c b/sys/dev/bhnd/cores/chipc/chipc_spi.c
index 46b445cf0756..e89d128fa441 100644
--- a/sys/dev/bhnd/cores/chipc/chipc_spi.c
+++ b/sys/dev/bhnd/cores/chipc/chipc_spi.c
@@ -115,8 +115,7 @@ chipc_spi_attach(device_t dev)
/* Let spibus perform full attach before we try to call
* BUS_ADD_CHILD() */
- if ((error = bus_generic_attach(dev)))
- goto failed;
+ bus_attach_children(dev);
/* Determine flash type and add the flash child */
ccaps = BHND_CHIPC_GET_CAPS(device_get_parent(dev));
diff --git a/sys/dev/bhnd/cores/pci/bhnd_pci.c b/sys/dev/bhnd/cores/pci/bhnd_pci.c
index 7fd104f3460c..45775916e5cf 100644
--- a/sys/dev/bhnd/cores/pci/bhnd_pci.c
+++ b/sys/dev/bhnd/cores/pci/bhnd_pci.c
@@ -125,7 +125,6 @@ int
bhnd_pci_generic_attach(device_t dev)
{
struct bhnd_pci_softc *sc;
- int error;
sc = device_get_softc(dev);
sc->dev = dev;
@@ -141,16 +140,9 @@ bhnd_pci_generic_attach(device_t dev)
BHND_PCI_LOCK_INIT(sc);
/* Probe and attach children */
- if ((error = bus_generic_attach(dev)))
- goto cleanup;
+ bus_attach_children(dev);
return (0);
-
-cleanup:
- bhnd_release_resource(dev, SYS_RES_MEMORY, sc->mem_rid, sc->mem_res);
- BHND_PCI_LOCK_DESTROY(sc);
-
- return (error);
}
int
diff --git a/sys/dev/bhnd/cores/pcie2/bhnd_pcie2.c b/sys/dev/bhnd/cores/pcie2/bhnd_pcie2.c
index 4f880ed4dee9..15a93f9e0b93 100644
--- a/sys/dev/bhnd/cores/pcie2/bhnd_pcie2.c
+++ b/sys/dev/bhnd/cores/pcie2/bhnd_pcie2.c
@@ -89,7 +89,6 @@ int
bhnd_pcie2_generic_attach(device_t dev)
{
struct bhnd_pcie2_softc *sc;
- int error;
sc = device_get_softc(dev);
sc->dev = dev;
@@ -105,16 +104,9 @@ bhnd_pcie2_generic_attach(device_t dev)
BHND_PCIE2_LOCK_INIT(sc);
/* Probe and attach children */
- if ((error = bus_generic_attach(dev)))
- goto cleanup;
+ bus_attach_children(dev);
return (0);
-
-cleanup:
- bhnd_release_resource(dev, SYS_RES_MEMORY, sc->mem_rid, sc->mem_res);
- BHND_PCIE2_LOCK_DESTROY(sc);
-
- return (error);
}
int
diff --git a/sys/dev/cfi/cfi_core.c b/sys/dev/cfi/cfi_core.c
index 79e09b45909b..12d3964719ba 100644
--- a/sys/dev/cfi/cfi_core.c
+++ b/sys/dev/cfi/cfi_core.c
@@ -446,7 +446,7 @@ cfi_attach(device_t dev)
#endif
device_add_child(dev, "cfid", DEVICE_UNIT_ANY);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/clk/allwinner/aw_ccu.c b/sys/dev/clk/allwinner/aw_ccu.c
index 9ee08f8f2dd1..b7a088bb68f6 100644
--- a/sys/dev/clk/allwinner/aw_ccu.c
+++ b/sys/dev/clk/allwinner/aw_ccu.c
@@ -220,7 +220,8 @@ aw_ccu_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t aw_ccu_methods[] = {
diff --git a/sys/dev/clk/clk_bus.c b/sys/dev/clk/clk_bus.c
index 622ff1fbf01d..2eb25fff6542 100644
--- a/sys/dev/clk/clk_bus.c
+++ b/sys/dev/clk/clk_bus.c
@@ -69,7 +69,8 @@ ofw_clkbus_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t ofw_clkbus_methods[] = {
diff --git a/sys/dev/clk/clk_fixed.c b/sys/dev/clk/clk_fixed.c
index 7aec5b92dfe0..f8dcfb8378cd 100644
--- a/sys/dev/clk/clk_fixed.c
+++ b/sys/dev/clk/clk_fixed.c
@@ -269,7 +269,8 @@ clk_fixed_attach(device_t dev)
OF_prop_free(__DECONST(char *, def.clkdef.name));
OF_prop_free(def.clkdef.parent_names);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
OF_prop_free(__DECONST(char *, def.clkdef.name));
diff --git a/sys/dev/cxgb/cxgb_main.c b/sys/dev/cxgb/cxgb_main.c
index c159849076c5..ed0993f934f1 100644
--- a/sys/dev/cxgb/cxgb_main.c
+++ b/sys/dev/cxgb/cxgb_main.c
@@ -641,8 +641,7 @@ cxgb_controller_attach(device_t dev)
sc->portdev[i] = child;
device_set_softc(child, pi);
}
- if ((error = bus_generic_attach(dev)) != 0)
- goto out;
+ bus_attach_children(dev);
/* initialize sge private state */
t3_sge_init_adapter(sc);
diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c
index 2030b287a496..cb7f091f93ca 100644
--- a/sys/dev/cxgbe/t4_main.c
+++ b/sys/dev/cxgbe/t4_main.c
@@ -1635,12 +1635,7 @@ t4_attach(device_t dev)
*/
sc->flags |= CHK_MBOX_ACCESS;
- rc = bus_generic_attach(dev);
- if (rc != 0) {
- device_printf(dev,
- "failed to attach all child ports: %d\n", rc);
- goto done;
- }
+ bus_attach_children(dev);
t4_calibration_start(sc);
device_printf(dev,
@@ -2775,7 +2770,7 @@ cxgbe_attach(device_t dev)
cxgbe_sysctls(pi);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/cxgbe/t4_vf.c b/sys/dev/cxgbe/t4_vf.c
index a7ea848eae17..b7b08e226a57 100644
--- a/sys/dev/cxgbe/t4_vf.c
+++ b/sys/dev/cxgbe/t4_vf.c
@@ -755,12 +755,7 @@ t4vf_attach(device_t dev)
goto done;
}
- rc = bus_generic_attach(dev);
- if (rc != 0) {
- device_printf(dev,
- "failed to attach all child ports: %d\n", rc);
- goto done;
- }
+ bus_attach_children(dev);
device_printf(dev,
"%d ports, %d %s interrupt%s, %d eq, %d iq\n",
diff --git a/sys/dev/dpaa/bman_portals.c b/sys/dev/dpaa/bman_portals.c
index 09bd9ea892ac..10c788410e1c 100644
--- a/sys/dev/dpaa/bman_portals.c
+++ b/sys/dev/dpaa/bman_portals.c
@@ -67,7 +67,8 @@ bman_portals_attach(device_t dev)
/* Set portal properties for XX_VirtToPhys() */
XX_PortalSetInfo(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
int
diff --git a/sys/dev/dpaa/fman.c b/sys/dev/dpaa/fman.c
index 9dc4ac151789..6f63e50f3a14 100644
--- a/sys/dev/dpaa/fman.c
+++ b/sys/dev/dpaa/fman.c
@@ -473,7 +473,8 @@ fman_attach(device_t dev)
goto err;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
err:
fman_detach(dev);
diff --git a/sys/dev/dpaa/qman_portals.c b/sys/dev/dpaa/qman_portals.c
index 67a9fd1827e4..0f00a9f1a173 100644
--- a/sys/dev/dpaa/qman_portals.c
+++ b/sys/dev/dpaa/qman_portals.c
@@ -72,7 +72,8 @@ qman_portals_attach(device_t dev)
/* Set portal properties for XX_VirtToPhys() */
XX_PortalSetInfo(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
int
diff --git a/sys/dev/dpaa2/dpaa2_mc.c b/sys/dev/dpaa2/dpaa2_mc.c
index 738a1db8b7e1..1d0275127ced 100644
--- a/sys/dev/dpaa2/dpaa2_mc.c
+++ b/sys/dev/dpaa2/dpaa2_mc.c
@@ -269,7 +269,7 @@ dpaa2_mc_attach(device_t dev)
return (ENXIO);
}
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/dpaa2/dpaa2_rc.c b/sys/dev/dpaa2/dpaa2_rc.c
index 221af43f2bf7..7f8eddff1353 100644
--- a/sys/dev/dpaa2/dpaa2_rc.c
+++ b/sys/dev/dpaa2/dpaa2_rc.c
@@ -2827,11 +2827,7 @@ dpaa2_rc_discover(struct dpaa2_rc_softc *sc)
}
/* Probe and attach MC portals. */
bus_identify_children(rcdev);
- rc = bus_generic_attach(rcdev);
- if (rc) {
- DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd);
- return (rc);
- }
+ bus_attach_children(rcdev);
/* Add managed devices (except DPMCPs) to the resource container. */
for (uint32_t i = 0; i < obj_count; i++) {
@@ -2855,11 +2851,7 @@ dpaa2_rc_discover(struct dpaa2_rc_softc *sc)
}
/* Probe and attach managed devices properly. */
bus_identify_children(rcdev);
- rc = bus_generic_attach(rcdev);
- if (rc) {
- DPAA2_CMD_RC_CLOSE(rcdev, child, &cmd);
- return (rc);
- }
+ bus_attach_children(rcdev);
/* Add other devices to the resource container. */
for (uint32_t i = 0; i < obj_count; i++) {
@@ -2880,7 +2872,8 @@ dpaa2_rc_discover(struct dpaa2_rc_softc *sc)
/* Probe and attach the rest of devices. */
bus_identify_children(rcdev);
- return (bus_generic_attach(rcdev));
+ bus_attach_children(rcdev);
+ return (0);
}
/**
@@ -2987,7 +2980,7 @@ dpaa2_rc_add_child(struct dpaa2_rc_softc *sc, struct dpaa2_cmd *cmd,
* container and add them as children to perform a proper initialization.
*
* NOTE: It must be called together with bus_identify_children() and
- * bus_generic_attach() before dpaa2_rc_add_child().
+ * bus_attach_children() before dpaa2_rc_add_child().
*/
static int
dpaa2_rc_add_managed_child(struct dpaa2_rc_softc *sc, struct dpaa2_cmd *cmd,
diff --git a/sys/dev/dpaa2/memac_mdio_acpi.c b/sys/dev/dpaa2/memac_mdio_acpi.c
index a3e88303b1d9..3a816901815b 100644
--- a/sys/dev/dpaa2/memac_mdio_acpi.c
+++ b/sys/dev/dpaa2/memac_mdio_acpi.c
@@ -263,7 +263,7 @@ memac_mdio_acpi_attach(device_t dev)
memac_mdio_acpi_probe_child, &ctx);
if (ctx.countok > 0) {
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
}
return (0);
diff --git a/sys/dev/drm2/drm_dp_iic_helper.c b/sys/dev/drm2/drm_dp_iic_helper.c
index 06ee8c34f8bb..444ceb1dcfb4 100644
--- a/sys/dev/drm2/drm_dp_iic_helper.c
+++ b/sys/dev/drm2/drm_dp_iic_helper.c
@@ -211,7 +211,7 @@ iic_dp_aux_attach(device_t idev)
if (aux_data->port == NULL)
return (ENXIO);
device_quiet(aux_data->port);
- bus_generic_attach(idev);
+ bus_attach_children(idev);
return (0);
}
diff --git a/sys/dev/dwwdt/dwwdt.c b/sys/dev/dwwdt/dwwdt.c
index c433317a8d87..13610b3637cb 100644
--- a/sys/dev/dwwdt/dwwdt.c
+++ b/sys/dev/dwwdt/dwwdt.c
@@ -290,7 +290,8 @@ dwwdt_attach(device_t dev)
sc->sc_evtag = EVENTHANDLER_REGISTER(watchdog_list, dwwdt_event, sc, 0);
sc->sc_status = DWWDT_STOPPED;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
err_no_freq:
clk_release(sc->sc_clk);
diff --git a/sys/dev/etherswitch/ar40xx/ar40xx_main.c b/sys/dev/etherswitch/ar40xx/ar40xx_main.c
index 979d5bb39444..41e6813bc840 100644
--- a/sys/dev/etherswitch/ar40xx/ar40xx_main.c
+++ b/sys/dev/etherswitch/ar40xx/ar40xx_main.c
@@ -484,7 +484,7 @@ ar40xx_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- ret = bus_generic_attach(dev);
+ bus_attach_children(dev);
/* Start timer */
callout_init_mtx(&sc->sc_phy_callout, &sc->sc_mtx, 0);
diff --git a/sys/dev/etherswitch/arswitch/arswitch.c b/sys/dev/etherswitch/arswitch/arswitch.c
index 395edf3322ae..92c3460e5f78 100644
--- a/sys/dev/etherswitch/arswitch/arswitch.c
+++ b/sys/dev/etherswitch/arswitch/arswitch.c
@@ -651,12 +651,7 @@ arswitch_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- if (err != 0) {
- DPRINTF(sc, ARSWITCH_DBG_ANY,
- "%s: bus_generic_attach: err=%d\n", __func__, err);
- return (err);
- }
+ bus_attach_children(dev);
callout_init_mtx(&sc->callout_tick, &sc->sc_mtx, 0);
diff --git a/sys/dev/etherswitch/e6000sw/e6000sw.c b/sys/dev/etherswitch/e6000sw/e6000sw.c
index 26152d1ebf26..e79082759593 100644
--- a/sys/dev/etherswitch/e6000sw/e6000sw.c
+++ b/sys/dev/etherswitch/e6000sw/e6000sw.c
@@ -643,7 +643,7 @@ e6000sw_attach(device_t dev)
E6000SW_UNLOCK(sc);
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
taskqueue_enqueue_timeout(sc->sc_tq, &sc->sc_tt, hz);
diff --git a/sys/dev/etherswitch/e6000sw/e6060sw.c b/sys/dev/etherswitch/e6000sw/e6060sw.c
index 5f22b4396a9e..374eb8c5316b 100644
--- a/sys/dev/etherswitch/e6000sw/e6060sw.c
+++ b/sys/dev/etherswitch/e6000sw/e6060sw.c
@@ -308,9 +308,7 @@ e6060sw_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- if (err != 0)
- return (err);
+ bus_attach_children(dev);
callout_init(&sc->callout_tick, 0);
diff --git a/sys/dev/etherswitch/felix/felix.c b/sys/dev/etherswitch/felix/felix.c
index d5b40b3902f3..622cf3bca140 100644
--- a/sys/dev/etherswitch/felix/felix.c
+++ b/sys/dev/etherswitch/felix/felix.c
@@ -464,7 +464,7 @@ felix_attach(device_t dev)
/* Allow etherswitch to attach as our child. */
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
diff --git a/sys/dev/etherswitch/infineon/adm6996fc.c b/sys/dev/etherswitch/infineon/adm6996fc.c
index f33219244ca1..2a8ee58107ee 100644
--- a/sys/dev/etherswitch/infineon/adm6996fc.c
+++ b/sys/dev/etherswitch/infineon/adm6996fc.c
@@ -260,9 +260,7 @@ adm6996fc_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- if (err != 0)
- goto failed;
+ bus_attach_children(dev);
callout_init(&sc->callout_tick, 0);
diff --git a/sys/dev/etherswitch/ip17x/ip17x.c b/sys/dev/etherswitch/ip17x/ip17x.c
index c79ae069d2f0..1eee45148040 100644
--- a/sys/dev/etherswitch/ip17x/ip17x.c
+++ b/sys/dev/etherswitch/ip17x/ip17x.c
@@ -259,9 +259,7 @@ ip17x_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- if (err != 0)
- return (err);
+ bus_attach_children(dev);
if (sc->miipoll) {
callout_init(&sc->callout_tick, 0);
diff --git a/sys/dev/etherswitch/micrel/ksz8995ma.c b/sys/dev/etherswitch/micrel/ksz8995ma.c
index bb93a881c6ab..a51bdb50fdfc 100644
--- a/sys/dev/etherswitch/micrel/ksz8995ma.c
+++ b/sys/dev/etherswitch/micrel/ksz8995ma.c
@@ -310,9 +310,7 @@ ksz8995ma_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- if (err != 0)
- goto failed;
+ bus_attach_children(dev);
callout_init(&sc->callout_tick, 0);
diff --git a/sys/dev/etherswitch/miiproxy.c b/sys/dev/etherswitch/miiproxy.c
index 3a621eae0875..1974a8d7bbb1 100644
--- a/sys/dev/etherswitch/miiproxy.c
+++ b/sys/dev/etherswitch/miiproxy.c
@@ -265,7 +265,8 @@ miiproxy_attach(device_t dev)
* The ethernet interface needs to call mii_attach_proxy() to pass
* the relevant parameters for rendezvous with the MDIO target.
*/
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
@@ -348,7 +349,8 @@ mdioproxy_attach(device_t dev)
{
rendezvous_register_target(dev, mdioproxy_rendezvous_callback);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
@@ -368,7 +370,6 @@ device_t
mii_attach_proxy(device_t dev)
{
struct miiproxy_softc *sc;
- int error;
const char *name;
device_t miiproxy;
@@ -381,11 +382,7 @@ mii_attach_proxy(device_t dev)
}
miiproxy = device_add_child(dev, miiproxy_driver.name, DEVICE_UNIT_ANY);
- error = bus_generic_attach(dev);
- if (error != 0) {
- device_printf(dev, "can't attach miiproxy\n");
- return (NULL);
- }
+ bus_attach_children(dev);
sc = device_get_softc(miiproxy);
sc->parent = dev;
sc->proxy = miiproxy;
diff --git a/sys/dev/etherswitch/mtkswitch/mtkswitch.c b/sys/dev/etherswitch/mtkswitch/mtkswitch.c
index 837362982223..7c4e8ae6f934 100644
--- a/sys/dev/etherswitch/mtkswitch/mtkswitch.c
+++ b/sys/dev/etherswitch/mtkswitch/mtkswitch.c
@@ -233,10 +233,7 @@ mtkswitch_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- DPRINTF(dev, "%s: bus_generic_attach: err=%d\n", __func__, err);
- if (err != 0)
- return (err);
+ bus_attach_children(dev);
callout_init_mtx(&sc->callout_tick, &sc->sc_mtx, 0);
diff --git a/sys/dev/etherswitch/rtl8366/rtl8366rb.c b/sys/dev/etherswitch/rtl8366/rtl8366rb.c
index a2a847bff621..304e7f7b8325 100644
--- a/sys/dev/etherswitch/rtl8366/rtl8366rb.c
+++ b/sys/dev/etherswitch/rtl8366/rtl8366rb.c
@@ -256,9 +256,7 @@ rtl8366rb_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- if (err != 0)
- return (err);
+ bus_attach_children(dev);
callout_init_mtx(&sc->callout_tick, &sc->callout_mtx, 0);
rtl8366rb_tick(sc);
diff --git a/sys/dev/etherswitch/ukswitch/ukswitch.c b/sys/dev/etherswitch/ukswitch/ukswitch.c
index c0f67310196f..ed1a27a19494 100644
--- a/sys/dev/etherswitch/ukswitch/ukswitch.c
+++ b/sys/dev/etherswitch/ukswitch/ukswitch.c
@@ -211,9 +211,7 @@ ukswitch_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- err = bus_generic_attach(dev);
- if (err != 0)
- return (err);
+ bus_attach_children(dev);
callout_init(&sc->callout_tick, 0);
diff --git a/sys/dev/fdc/fdc.c b/sys/dev/fdc/fdc.c
index 8563b549bd07..431396e44535 100644
--- a/sys/dev/fdc/fdc.c
+++ b/sys/dev/fdc/fdc.c
@@ -1840,7 +1840,7 @@ int
fdc_hints_probe(device_t dev)
{
const char *name, *dname;
- int i, error, dunit;
+ int i, dunit;
/*
* Probe and attach any children. We should probably detect
@@ -1853,8 +1853,7 @@ fdc_hints_probe(device_t dev)
fdc_add_child(dev, dname, dunit);
}
- if ((error = bus_generic_attach(dev)) != 0)
- return (error);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/fdc/fdc_acpi.c b/sys/dev/fdc/fdc_acpi.c
index 7f991c8f0cb3..ab3160909c1d 100644
--- a/sys/dev/fdc/fdc_acpi.c
+++ b/sys/dev/fdc/fdc_acpi.c
@@ -178,7 +178,8 @@ fdc_acpi_probe_children(device_t bus, device_t dev, void *fde)
free(ctx, M_TEMP);
/* Attach any children found during the probe. */
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static ACPI_STATUS
diff --git a/sys/dev/fdt/simple_mfd.c b/sys/dev/fdt/simple_mfd.c
index 5228c6998821..1c642c6ca99c 100644
--- a/sys/dev/fdt/simple_mfd.c
+++ b/sys/dev/fdt/simple_mfd.c
@@ -223,7 +223,8 @@ simple_mfd_attach(device_t dev)
return (ENXIO);
}
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/fdt/simplebus.c b/sys/dev/fdt/simplebus.c
index 0f41d3433d75..ee308c44114c 100644
--- a/sys/dev/fdt/simplebus.c
+++ b/sys/dev/fdt/simplebus.c
@@ -182,7 +182,8 @@ simplebus_attach(device_t dev)
if (rv != 0)
return (rv);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
int
diff --git a/sys/dev/firewire/firewire.c b/sys/dev/firewire/firewire.c
index 1346cb255580..a4316a636720 100644
--- a/sys/dev/firewire/firewire.c
+++ b/sys/dev/firewire/firewire.c
@@ -455,7 +455,7 @@ firewire_attach(device_t dev)
bus_identify_children(dev);
/* launch attachement of the added children */
- bus_generic_attach(dev);
+ bus_attach_children(dev);
/* bus_reset */
FW_GLOCK(fc);
diff --git a/sys/dev/firewire/fwohci_pci.c b/sys/dev/firewire/fwohci_pci.c
index 603915a1e637..591503728093 100644
--- a/sys/dev/firewire/fwohci_pci.c
+++ b/sys/dev/firewire/fwohci_pci.c
@@ -315,7 +315,7 @@ fwohci_pci_attach(device_t self)
/* probe and attach a child device(firewire) */
bus_identify_children(self);
- bus_generic_attach(self);
+ bus_attach_children(self);
return 0;
}
diff --git a/sys/dev/firmware/arm/scmi.c b/sys/dev/firmware/arm/scmi.c
index afabdcf9917b..82c06e969926 100644
--- a/sys/dev/firmware/arm/scmi.c
+++ b/sys/dev/firmware/arm/scmi.c
@@ -182,9 +182,9 @@ scmi_attach(device_t dev)
for (node = OF_child(node); node > 0; node = OF_peer(node))
simplebus_add_device(dev, node, 0, NULL, -1, NULL);
- error = bus_generic_attach(dev);
+ bus_attach_children(dev);
- return (error);
+ return (0);
}
static int
diff --git a/sys/dev/firmware/xilinx/zynqmp_firmware.c b/sys/dev/firmware/xilinx/zynqmp_firmware.c
index a6b55a3528a1..dfe41842c40c 100644
--- a/sys/dev/firmware/xilinx/zynqmp_firmware.c
+++ b/sys/dev/firmware/xilinx/zynqmp_firmware.c
@@ -477,7 +477,8 @@ zynqmp_firmware_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t zynqmp_firmware_methods[] = {
diff --git a/sys/dev/flash/cqspi.c b/sys/dev/flash/cqspi.c
index 9332ec85477c..4774d14add0e 100644
--- a/sys/dev/flash/cqspi.c
+++ b/sys/dev/flash/cqspi.c
@@ -620,7 +620,7 @@ cqspi_delayed_attach(void *arg)
sc = arg;
cqspi_add_devices(sc->dev);
- bus_generic_attach(sc->dev);
+ bus_attach_children(sc->dev);
config_intrhook_disestablish(&sc->config_intrhook);
}
diff --git a/sys/dev/gpio/dwgpio/dwgpio_bus.c b/sys/dev/gpio/dwgpio/dwgpio_bus.c
index 7aa681d7aaad..7f3fc5b91f69 100644
--- a/sys/dev/gpio/dwgpio/dwgpio_bus.c
+++ b/sys/dev/gpio/dwgpio/dwgpio_bus.c
@@ -102,7 +102,8 @@ dwgpiobus_attach(device_t dev)
for (node = OF_child(node); node > 0; node = OF_peer(node))
simplebus_add_device(dev, node, 0, NULL, -1, NULL);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/gpio/gpiobus.c b/sys/dev/gpio/gpiobus.c
index 4632f0dcd911..bc166f43d398 100644
--- a/sys/dev/gpio/gpiobus.c
+++ b/sys/dev/gpio/gpiobus.c
@@ -307,7 +307,7 @@ gpiobus_attach_bus(device_t dev)
#ifdef FDT
ofw_gpiobus_register_provider(dev);
#endif
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (busdev);
}
@@ -563,7 +563,8 @@ gpiobus_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
/*
@@ -713,7 +714,7 @@ gpiobus_rescan(device_t dev)
* hints or drivers have arrived since we last tried.
*/
bus_enumerate_hinted_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/gpio/gpioiic.c b/sys/dev/gpio/gpioiic.c
index 68068c0e7ec1..2404e70fc648 100644
--- a/sys/dev/gpio/gpioiic.c
+++ b/sys/dev/gpio/gpioiic.c
@@ -321,7 +321,8 @@ gpioiic_attach(device_t dev)
/* Add the bitbang driver as our only child; it will add iicbus. */
device_add_child(sc->dev, "iicbb", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/gpio/gpiospi.c b/sys/dev/gpio/gpiospi.c
index 60307e4328af..e9f052b5ee32 100644
--- a/sys/dev/gpio/gpiospi.c
+++ b/sys/dev/gpio/gpiospi.c
@@ -178,7 +178,8 @@ gpio_spi_attach(device_t dev)
gpio_spi_chip_deactivate(sc, -1);
device_add_child(dev, "spibus", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/gpio/ofw_gpiobus.c b/sys/dev/gpio/ofw_gpiobus.c
index ee52748a8c6b..32dc5b55e698 100644
--- a/sys/dev/gpio/ofw_gpiobus.c
+++ b/sys/dev/gpio/ofw_gpiobus.c
@@ -440,7 +440,8 @@ ofw_gpiobus_attach(device_t dev)
continue;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_t
diff --git a/sys/dev/hid/hidbus.c b/sys/dev/hid/hidbus.c
index 596f9d2e6cd4..8e55d65f308b 100644
--- a/sys/dev/hid/hidbus.c
+++ b/sys/dev/hid/hidbus.c
@@ -272,9 +272,10 @@ hidbus_attach_children(device_t dev)
if (sc->nest != 0)
return (0);
- if (hid_is_keyboard(sc->rdesc.data, sc->rdesc.len) != 0)
- error = bus_generic_attach(dev);
- else
+ if (hid_is_keyboard(sc->rdesc.data, sc->rdesc.len) != 0) {
+ bus_attach_children(dev);
+ error = 0;
+ } else
error = bus_delayed_attach_children(dev);
if (error != 0)
device_printf(dev, "failed to attach child: error %d\n", error);
diff --git a/sys/dev/hyperv/input/hv_hid.c b/sys/dev/hyperv/input/hv_hid.c
index b8fc9605bf67..c54bc43c0f24 100644
--- a/sys/dev/hyperv/input/hv_hid.c
+++ b/sys/dev/hyperv/input/hv_hid.c
@@ -443,9 +443,7 @@ hv_hid_attach(device_t dev)
goto out;
}
device_set_ivars(child, &sc->hdi);
- ret = bus_generic_attach(dev);
- if (ret != 0)
- device_printf(sc->dev, "failed to attach hidbus\n");
+ bus_attach_children(dev);
out:
if (ret != 0)
hv_hid_detach(dev);
diff --git a/sys/dev/hyperv/pcib/vmbus_pcib.c b/sys/dev/hyperv/pcib/vmbus_pcib.c
index 7c596c724e52..7b755e5f9c63 100644
--- a/sys/dev/hyperv/pcib/vmbus_pcib.c
+++ b/sys/dev/hyperv/pcib/vmbus_pcib.c
@@ -1571,7 +1571,7 @@ vmbus_pcib_attach(device_t dev)
goto vmbus_close;
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
hbus->state = hv_pcibus_installed;
diff --git a/sys/dev/hyperv/vmbus/vmbus.c b/sys/dev/hyperv/vmbus/vmbus.c
index 672f94f5fd85..1c620a1f5d84 100644
--- a/sys/dev/hyperv/vmbus/vmbus.c
+++ b/sys/dev/hyperv/vmbus/vmbus.c
@@ -560,7 +560,7 @@ vmbus_scan(struct vmbus_softc *sc)
* Identify, probe and attach for non-channel devices.
*/
bus_identify_children(sc->vmbus_dev);
- bus_generic_attach(sc->vmbus_dev);
+ bus_attach_children(sc->vmbus_dev);
/*
* This taskqueue serializes vmbus devices' attach and detach
diff --git a/sys/dev/ichiic/ig4_iic.c b/sys/dev/ichiic/ig4_iic.c
index 086c547cfd00..806b406af326 100644
--- a/sys/dev/ichiic/ig4_iic.c
+++ b/sys/dev/ichiic/ig4_iic.c
@@ -1069,11 +1069,7 @@ ig4iic_attach(ig4iic_softc_t *sc)
"Unable to setup irq: error %d\n", error);
}
- error = bus_generic_attach(sc->dev);
- if (error) {
- device_printf(sc->dev,
- "failed to attach child: error %d\n", error);
- }
+ bus_attach_children(sc->dev);
done:
return (error);
diff --git a/sys/dev/ida/ida.c b/sys/dev/ida/ida.c
index ea38f2ccb606..ea231b041e13 100644
--- a/sys/dev/ida/ida.c
+++ b/sys/dev/ida/ida.c
@@ -333,7 +333,7 @@ ida_startup(void *arg)
config_intrhook_disestablish(&ida->ich);
bus_topo_lock();
- bus_generic_attach(ida->dev);
+ bus_attach_children(ida->dev);
bus_topo_unlock();
}
diff --git a/sys/dev/iicbus/controller/opencores/iicoc_pci.c b/sys/dev/iicbus/controller/opencores/iicoc_pci.c
index 85fefdb7abe9..cecfa888349b 100644
--- a/sys/dev/iicbus/controller/opencores/iicoc_pci.c
+++ b/sys/dev/iicbus/controller/opencores/iicoc_pci.c
@@ -88,7 +88,7 @@ iicoc_attach(device_t dev)
mtx_destroy(&sc->sc_mtx);
return (-1);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/iicbus/controller/rockchip/rk_i2c.c b/sys/dev/iicbus/controller/rockchip/rk_i2c.c
index a335ceb81902..0ef65d1121f5 100644
--- a/sys/dev/iicbus/controller/rockchip/rk_i2c.c
+++ b/sys/dev/iicbus/controller/rockchip/rk_i2c.c
@@ -665,7 +665,7 @@ rk_i2c_attach(device_t dev)
goto fail;
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
diff --git a/sys/dev/iicbus/controller/twsi/twsi.c b/sys/dev/iicbus/controller/twsi/twsi.c
index 55d12b6ee5ae..20d39aa7d93b 100644
--- a/sys/dev/iicbus/controller/twsi/twsi.c
+++ b/sys/dev/iicbus/controller/twsi/twsi.c
@@ -817,7 +817,7 @@ twsi_attach(device_t dev)
twsi_detach(dev);
return (ENXIO);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
config_intrhook_oneshot(twsi_intr_start, dev);
diff --git a/sys/dev/iicbus/controller/vybrid/vf_i2c.c b/sys/dev/iicbus/controller/vybrid/vf_i2c.c
index ea0e1eeac7fb..f6d0eb4c2c59 100644
--- a/sys/dev/iicbus/controller/vybrid/vf_i2c.c
+++ b/sys/dev/iicbus/controller/vybrid/vf_i2c.c
@@ -193,7 +193,7 @@ vf_i2c_attach_common(device_t dev)
return (ENXIO);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/iicbus/iicbb.c b/sys/dev/iicbus/iicbb.c
index a86871085fe6..dec5e4bc0c7e 100644
--- a/sys/dev/iicbus/iicbb.c
+++ b/sys/dev/iicbus/iicbb.c
@@ -164,7 +164,7 @@ iicbb_attach(device_t dev)
"io_latency", CTLFLAG_RWTUN, &sc->io_latency,
0, "Estimate of pin toggling latency, microseconds");
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/iicbus/iicbus.c b/sys/dev/iicbus/iicbus.c
index bfc86ebe28a9..97dc9c437866 100644
--- a/sys/dev/iicbus/iicbus.c
+++ b/sys/dev/iicbus/iicbus.c
@@ -127,7 +127,7 @@ iicbus_attach_common(device_t dev, u_int bus_freq)
#endif
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/iicbus/iichid.c b/sys/dev/iicbus/iichid.c
index 86b02250d5d3..ed016fa0e0cc 100644
--- a/sys/dev/iicbus/iichid.c
+++ b/sys/dev/iicbus/iichid.c
@@ -1199,11 +1199,8 @@ iichid_attach(device_t dev)
}
device_set_ivars(child, &sc->hw);
- error = bus_generic_attach(dev);
- if (error) {
- device_printf(dev, "failed to attach child: error %d\n", error);
- iichid_detach(dev);
- }
+ bus_attach_children(dev);
+ error = 0;
done:
iicbus_request_bus(device_get_parent(dev), dev, IIC_WAIT);
if (!sc->open) {
diff --git a/sys/dev/iicbus/iicsmb.c b/sys/dev/iicbus/iicsmb.c
index 3e7e06a85f09..e502ad904070 100644
--- a/sys/dev/iicbus/iicsmb.c
+++ b/sys/dev/iicbus/iicsmb.c
@@ -155,7 +155,7 @@ iicsmb_attach(device_t dev)
sc->smbus = device_add_child(dev, "smbus", DEVICE_UNIT_ANY);
/* probe and attach the smbus */
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/iicbus/mux/iic_gpiomux.c b/sys/dev/iicbus/mux/iic_gpiomux.c
index c4dbe4066bd0..929b0f961af4 100644
--- a/sys/dev/iicbus/mux/iic_gpiomux.c
+++ b/sys/dev/iicbus/mux/iic_gpiomux.c
@@ -212,7 +212,7 @@ gpiomux_attach(device_t dev)
/* Init the core driver, have it add our child downstream buses. */
if ((err = iicmux_attach(dev, busdev, numchannels)) == 0)
- bus_generic_attach(dev);
+ bus_attach_children(dev);
errexit:
diff --git a/sys/dev/iicbus/mux/ltc430x.c b/sys/dev/iicbus/mux/ltc430x.c
index 984f79223ee5..3dc410da0152 100644
--- a/sys/dev/iicbus/mux/ltc430x.c
+++ b/sys/dev/iicbus/mux/ltc430x.c
@@ -211,7 +211,7 @@ ltc430x_attach(device_t dev)
* the probe and attach code of any child iicbus instances it added.
*/
if ((err = iicmux_attach(dev, device_get_parent(dev), numchan)) == 0)
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (err);
}
diff --git a/sys/dev/iicbus/mux/pca9547.c b/sys/dev/iicbus/mux/pca9547.c
index b76f8d132b43..654a81e6f3e1 100644
--- a/sys/dev/iicbus/mux/pca9547.c
+++ b/sys/dev/iicbus/mux/pca9547.c
@@ -120,7 +120,7 @@ pca9547_attach(device_t dev)
rv = iicmux_attach(sc->dev, device_get_parent(dev), 8);
if (rv != 0)
return (rv);
- rv = bus_generic_attach(dev);
+ bus_attach_children(dev);
return (rv);
}
diff --git a/sys/dev/iicbus/mux/pca954x.c b/sys/dev/iicbus/mux/pca954x.c
index befa0db39172..1925f6c90e83 100644
--- a/sys/dev/iicbus/mux/pca954x.c
+++ b/sys/dev/iicbus/mux/pca954x.c
@@ -214,7 +214,7 @@ pca954x_attach(device_t dev)
sc->descr = descr = pca954x_find_chip(dev);
error = iicmux_attach(dev, device_get_parent(dev), descr->numchannels);
if (error == 0)
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (error);
}
diff --git a/sys/dev/iicbus/ofw_iicbus.c b/sys/dev/iicbus/ofw_iicbus.c
index 4b0494f8fcc4..84ddcbbdd3d5 100644
--- a/sys/dev/iicbus/ofw_iicbus.c
+++ b/sys/dev/iicbus/ofw_iicbus.c
@@ -194,7 +194,8 @@ ofw_iicbus_attach(device_t dev)
/* Register bus */
OF_device_register_xref(OF_xref_from_node(node), dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_t
diff --git a/sys/dev/iicbus/pmic/act8846.c b/sys/dev/iicbus/pmic/act8846.c
index e55fc70986a8..6e5d85fdc6b0 100644
--- a/sys/dev/iicbus/pmic/act8846.c
+++ b/sys/dev/iicbus/pmic/act8846.c
@@ -215,7 +215,8 @@ act8846_attach(device_t dev)
if (rv != 0)
goto fail;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
LOCK_DESTROY(sc);
diff --git a/sys/dev/imcsmb/imcsmb.c b/sys/dev/imcsmb/imcsmb.c
index 7708234d2fa2..2507d948e8e4 100644
--- a/sys/dev/imcsmb/imcsmb.c
+++ b/sys/dev/imcsmb/imcsmb.c
@@ -99,9 +99,8 @@ imcsmb_attach(device_t dev)
}
/* Attach the smbus child. */
- if ((rc = bus_generic_attach(dev)) != 0) {
- device_printf(dev, "Failed to attach smbus: %d\n", rc);
- }
+ bus_attach_children(dev);
+ rc = 0;
out:
return (rc);
diff --git a/sys/dev/imcsmb/imcsmb_pci.c b/sys/dev/imcsmb/imcsmb_pci.c
index 384363481e4c..c6e5d1d690c0 100644
--- a/sys/dev/imcsmb/imcsmb_pci.c
+++ b/sys/dev/imcsmb/imcsmb_pci.c
@@ -188,10 +188,8 @@ imcsmb_pci_attach(device_t dev)
}
/* Attach the imcsmbX children. */
- if ((rc = bus_generic_attach(dev)) != 0) {
- device_printf(dev, "failed to attach children: %d\n", rc);
- goto out;
- }
+ bus_attach_children(dev);
+ rc = 0;
out:
return (rc);
diff --git a/sys/dev/ips/ips.c b/sys/dev/ips/ips.c
index 79ac06d78035..0079e4183db5 100644
--- a/sys/dev/ips/ips.c
+++ b/sys/dev/ips/ips.c
@@ -273,9 +273,7 @@ static int ips_diskdev_init(ips_softc_t *sc)
device_set_ivars(sc->diskdev[i],(void *)(uintptr_t) i);
}
}
- if(bus_generic_attach(sc->dev)){
- device_printf(sc->dev, "Attaching bus failed\n");
- }
+ bus_attach_children(sc->dev);
return 0;
}
diff --git a/sys/dev/ismt/ismt.c b/sys/dev/ismt/ismt.c
index 3f3c7bdf26c8..650353c75e9f 100644
--- a/sys/dev/ismt/ismt.c
+++ b/sys/dev/ismt/ismt.c
@@ -607,11 +607,7 @@ ismt_attach(device_t dev)
sc->mmio_handle = rman_get_bushandle(sc->mmio_res);
/* Attach "smbus" child */
- if ((err = bus_generic_attach(dev)) != 0) {
- device_printf(dev, "failed to attach child: %d\n", err);
- err = ENXIO;
- goto fail;
- }
+ bus_attach_children(dev);
bus_dma_tag_create(bus_get_dma_tag(dev), 4, PAGE_SIZE,
BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL, NULL,
diff --git a/sys/dev/mdio/mdio.c b/sys/dev/mdio/mdio.c
index 827165ccd349..706a1048c5eb 100644
--- a/sys/dev/mdio/mdio.c
+++ b/sys/dev/mdio/mdio.c
@@ -56,7 +56,8 @@ mdio_attach(device_t dev)
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/mfi/mfi.c b/sys/dev/mfi/mfi.c
index 328118ef9596..9e41464a7a2a 100644
--- a/sys/dev/mfi/mfi.c
+++ b/sys/dev/mfi/mfi.c
@@ -776,7 +776,7 @@ mfi_attach(struct mfi_softc *sc)
"Don't detach the mfid device for a busy volume that is deleted");
device_add_child(sc->mfi_dev, "mfip", DEVICE_UNIT_ANY);
- bus_generic_attach(sc->mfi_dev);
+ bus_attach_children(sc->mfi_dev);
/* Start the timeout watchdog */
callout_init(&sc->mfi_watchdog_callout, 1);
@@ -1932,7 +1932,7 @@ mfi_add_ld_complete(struct mfi_command *cm)
device_set_ivars(child, ld_info);
device_set_desc(child, "MFI Logical Disk");
- bus_generic_attach(sc->mfi_dev);
+ bus_attach_children(sc->mfi_dev);
bus_topo_unlock();
mtx_lock(&sc->mfi_io_lock);
}
@@ -2020,7 +2020,7 @@ mfi_add_sys_pd_complete(struct mfi_command *cm)
device_set_ivars(child, pd_info);
device_set_desc(child, "MFI System PD");
- bus_generic_attach(sc->mfi_dev);
+ bus_attach_children(sc->mfi_dev);
bus_topo_unlock();
mtx_lock(&sc->mfi_io_lock);
}
diff --git a/sys/dev/mge/if_mge.c b/sys/dev/mge/if_mge.c
index 203c46341aba..e657cb1ad5c7 100644
--- a/sys/dev/mge/if_mge.c
+++ b/sys/dev/mge/if_mge.c
@@ -919,7 +919,7 @@ mge_attach(device_t dev)
if (sc->switch_attached) {
MGE_WRITE(sc, MGE_REG_PHYDEV, MGE_SWITCH_PHYDEV);
device_add_child(dev, "mdio", DEVICE_UNIT_ANY);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
}
return (0);
diff --git a/sys/dev/mii/mii.c b/sys/dev/mii/mii.c
index dde79c189322..b63bfb6285bb 100644
--- a/sys/dev/mii/mii.c
+++ b/sys/dev/mii/mii.c
@@ -147,7 +147,8 @@ miibus_attach(device_t dev)
if_setcapenablebit(mii->mii_ifp, IFCAP_LINKSTATE, 0);
LIST_INIT(&mii->mii_phys);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
@@ -520,16 +521,12 @@ mii_attach(device_t dev, device_t *miibus, if_t ifp,
rv = ENXIO;
goto fail;
}
- rv = bus_generic_attach(dev);
- if (rv != 0)
- goto fail;
+ bus_attach_children(dev);
/* Attaching of the PHY drivers is done in miibus_attach(). */
return (0);
}
- rv = bus_generic_attach(*miibus);
- if (rv != 0)
- goto fail;
+ bus_attach_children(*miibus);
return (0);
diff --git a/sys/dev/mlx/mlx.c b/sys/dev/mlx/mlx.c
index 7e4cb443894a..d9a2a1f5442b 100644
--- a/sys/dev/mlx/mlx.c
+++ b/sys/dev/mlx/mlx.c
@@ -522,7 +522,7 @@ mlx_startup(struct mlx_softc *sc)
{
struct mlx_enq_sys_drive *mes;
struct mlx_sysdrive *dr;
- int i, error;
+ int i;
debug_called(1);
@@ -567,8 +567,7 @@ mlx_startup(struct mlx_softc *sc)
}
}
free(mes, M_DEVBUF);
- if ((error = bus_generic_attach(sc->mlx_dev)) != 0)
- device_printf(sc->mlx_dev, "bus_generic_attach returned %d", error);
+ bus_attach_children(sc->mlx_dev);
/* mark controller back up */
MLX_IO_LOCK(sc);
diff --git a/sys/dev/mmc/mmc.c b/sys/dev/mmc/mmc.c
index 0e29ee9207e9..78b38f91a1f0 100644
--- a/sys/dev/mmc/mmc.c
+++ b/sys/dev/mmc/mmc.c
@@ -2457,7 +2457,7 @@ mmc_scan(struct mmc_softc *sc)
device_printf(dev, "Failed to release bus after scanning\n");
return;
}
- (void)bus_generic_attach(dev);
+ bus_attach_children(dev);
}
static int
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c
index 31c80b87511d..46219c3c9ab2 100644
--- a/sys/dev/msk/if_msk.c
+++ b/sys/dev/msk/if_msk.c
@@ -1972,11 +1972,7 @@ mskc_attach(device_t dev)
device_set_ivars(sc->msk_devs[MSK_PORT_B], mmd);
}
- error = bus_generic_attach(dev);
- if (error) {
- device_printf(dev, "failed to attach port(s)\n");
- goto fail;
- }
+ bus_attach_children(dev);
/* Hook interrupt last to avoid having to lock softc. */
error = bus_setup_intr(dev, sc->msk_irq[0], INTR_TYPE_NET |
diff --git a/sys/dev/mvs/mvs_pci.c b/sys/dev/mvs/mvs_pci.c
index 9e7d5b60715c..9743328d9593 100644
--- a/sys/dev/mvs/mvs_pci.c
+++ b/sys/dev/mvs/mvs_pci.c
@@ -168,7 +168,7 @@ mvs_attach(device_t dev)
else
device_set_ivars(child, (void *)(intptr_t)unit);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return 0;
}
diff --git a/sys/dev/mvs/mvs_soc.c b/sys/dev/mvs/mvs_soc.c
index 140308f94b01..41f2bf648c9d 100644
--- a/sys/dev/mvs/mvs_soc.c
+++ b/sys/dev/mvs/mvs_soc.c
@@ -172,7 +172,7 @@ mvs_attach(device_t dev)
else
device_set_ivars(child, (void *)(intptr_t)unit);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return 0;
}
diff --git a/sys/dev/neta/if_mvneta.c b/sys/dev/neta/if_mvneta.c
index bc57b10b6d8e..84cbc1e43462 100644
--- a/sys/dev/neta/if_mvneta.c
+++ b/sys/dev/neta/if_mvneta.c
@@ -807,8 +807,8 @@ mvneta_attach(device_t self)
mvneta_detach(self);
return (ENXIO);
}
- bus_generic_attach(sc->dev);
- bus_generic_attach(child);
+ bus_attach_children(sc->dev);
+ bus_attach_children(child);
}
/* Configure MAC media */
diff --git a/sys/dev/nfsmb/nfsmb.c b/sys/dev/nfsmb/nfsmb.c
index c17dffdcdd19..462f90264885 100644
--- a/sys/dev/nfsmb/nfsmb.c
+++ b/sys/dev/nfsmb/nfsmb.c
@@ -202,7 +202,7 @@ nfsmbsub_attach(device_t dev)
return (EINVAL);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
@@ -265,7 +265,7 @@ nfsmb_attach(device_t dev)
break;
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/ntb/ntb.c b/sys/dev/ntb/ntb.c
index c346ad1c0146..53d9b47a9114 100644
--- a/sys/dev/ntb/ntb.c
+++ b/sys/dev/ntb/ntb.c
@@ -142,7 +142,7 @@ ntb_register_device(device_t dev)
i++;
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/ntb/ntb_transport.c b/sys/dev/ntb/ntb_transport.c
index 10c8dff1f8ab..6e085d8d276f 100644
--- a/sys/dev/ntb/ntb_transport.c
+++ b/sys/dev/ntb/ntb_transport.c
@@ -511,7 +511,7 @@ ntb_transport_attach(device_t dev)
if (enable_xeon_watchdog != 0)
callout_reset(&nt->link_watchdog, 0, xeon_link_watchdog_hb, nt);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
err:
diff --git a/sys/dev/nvdimm/nvdimm_acpi.c b/sys/dev/nvdimm/nvdimm_acpi.c
index f6a7ebe6e2b9..b9803c2c3a05 100644
--- a/sys/dev/nvdimm/nvdimm_acpi.c
+++ b/sys/dev/nvdimm/nvdimm_acpi.c
@@ -188,9 +188,7 @@ nvdimm_root_attach(device_t dev)
error = nvdimm_root_create_devs(dev, nfitbl);
if (error != 0)
return (error);
- error = bus_generic_attach(dev);
- if (error != 0)
- return (error);
+ bus_attach_children(dev);
root = device_get_softc(dev);
error = nvdimm_root_create_spas(root, nfitbl);
AcpiPutTable(&nfitbl->Header);
diff --git a/sys/dev/ofw/ofw_cpu.c b/sys/dev/ofw/ofw_cpu.c
index ae4863b45c0f..ad0fd670421a 100644
--- a/sys/dev/ofw/ofw_cpu.c
+++ b/sys/dev/ofw/ofw_cpu.c
@@ -134,7 +134,8 @@ ofw_cpulist_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
@@ -298,7 +299,8 @@ ofw_cpu_attach(device_t dev)
device_printf(dev, "Nominal frequency %dMhz\n",
sc->sc_nominal_mhz);
bus_identify_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/ofw/ofw_firmware.c b/sys/dev/ofw/ofw_firmware.c
index 8723965f74be..360f7ee56e8a 100644
--- a/sys/dev/ofw/ofw_firmware.c
+++ b/sys/dev/ofw/ofw_firmware.c
@@ -150,7 +150,8 @@ ofw_firmware_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t ofw_firmware_methods[] = {
diff --git a/sys/dev/ofw/ofw_pcib.c b/sys/dev/ofw/ofw_pcib.c
index 4356a9f83e19..0cfddd155e52 100644
--- a/sys/dev/ofw/ofw_pcib.c
+++ b/sys/dev/ofw/ofw_pcib.c
@@ -303,7 +303,8 @@ ofw_pcib_attach(device_t dev)
}
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/ofw/ofwbus.c b/sys/dev/ofw/ofwbus.c
index af1a85fecc9e..d66befcb7314 100644
--- a/sys/dev/ofw/ofwbus.c
+++ b/sys/dev/ofw/ofwbus.c
@@ -125,7 +125,8 @@ ofwbus_attach(device_t dev)
for (node = OF_child(node); node > 0; node = OF_peer(node))
simplebus_add_device(dev, node, 0, NULL, -1, NULL);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static struct resource *
diff --git a/sys/dev/ow/ow.c b/sys/dev/ow/ow.c
index 6157c9df2939..9cbd05cd88b1 100644
--- a/sys/dev/ow/ow.c
+++ b/sys/dev/ow/ow.c
@@ -558,7 +558,8 @@ ow_attach(device_t ndev)
sc->dev = ndev;
mtx_init(&sc->mtx, device_get_nameunit(sc->dev), "ow", MTX_DEF);
ow_enumerate(ndev, ow_search_rom, ow_device_found);
- return bus_generic_attach(ndev);
+ bus_attach_children(ndev);
+ return (0);
}
static int
diff --git a/sys/dev/p2sb/lewisburg_gpiocm.c b/sys/dev/p2sb/lewisburg_gpiocm.c
index e46575217d92..7eeab669d625 100644
--- a/sys/dev/p2sb/lewisburg_gpiocm.c
+++ b/sys/dev/p2sb/lewisburg_gpiocm.c
@@ -318,7 +318,8 @@ lbggpiocm_attach(device_t dev)
group->dev = device_add_child(dev, "gpio", -1);
}
sc->community->ngroups = i;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/p2sb/p2sb.c b/sys/dev/p2sb/p2sb.c
index 2f294f03158a..941e35469c69 100644
--- a/sys/dev/p2sb/p2sb.c
+++ b/sys/dev/p2sb/p2sb.c
@@ -149,7 +149,8 @@ p2sb_attach(device_t dev)
for (i = 0; i < nitems(lbg_communities); ++i)
device_add_child(dev, "lbggpiocm", i);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
/* Detach device. */
diff --git a/sys/dev/pcf/pcf_isa.c b/sys/dev/pcf/pcf_isa.c
index 173fc2c4170f..190554258c3a 100644
--- a/sys/dev/pcf/pcf_isa.c
+++ b/sys/dev/pcf/pcf_isa.c
@@ -164,7 +164,7 @@ pcf_isa_attach(device_t dev)
device_printf(dev, "could not allocate iicbus instance\n");
/* probe and attach the iicbus */
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
diff --git a/sys/dev/pci/controller/pci_n1sdp.c b/sys/dev/pci/controller/pci_n1sdp.c
index 1022a76eba88..487041bc78e4 100644
--- a/sys/dev/pci/controller/pci_n1sdp.c
+++ b/sys/dev/pci/controller/pci_n1sdp.c
@@ -223,7 +223,8 @@ n1sdp_pcie_acpi_attach(device_t dev)
return (err);
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/pci/hostb_pci.c b/sys/dev/pci/hostb_pci.c
index 2d9e35e07bab..e6c10418a684 100644
--- a/sys/dev/pci/hostb_pci.c
+++ b/sys/dev/pci/hostb_pci.c
@@ -77,7 +77,7 @@ pci_hostb_attach(device_t dev)
*/
if (pci_find_cap(dev, PCIY_AGP, NULL) == 0)
device_add_child(dev, "agp", DEVICE_UNIT_ANY);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c
index 843f70a594a0..64bce9f01ea8 100644
--- a/sys/dev/pci/pci.c
+++ b/sys/dev/pci/pci.c
@@ -4495,7 +4495,8 @@ pci_attach(device_t dev)
domain = pcib_get_domain(dev);
busno = pcib_get_bus(dev);
pci_add_children(dev, domain, busno);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
int
diff --git a/sys/dev/pci/pci_dw_mv.c b/sys/dev/pci/pci_dw_mv.c
index 97d957932d42..d7eada39a6d6 100644
--- a/sys/dev/pci/pci_dw_mv.c
+++ b/sys/dev/pci/pci_dw_mv.c
@@ -306,7 +306,8 @@ pci_mv_attach(device_t dev)
goto out;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
out:
/* XXX Cleanup */
return (rv);
diff --git a/sys/dev/pci/pci_host_generic_acpi.c b/sys/dev/pci/pci_host_generic_acpi.c
index 439d41fb3df6..770060e7f46f 100644
--- a/sys/dev/pci/pci_host_generic_acpi.c
+++ b/sys/dev/pci/pci_host_generic_acpi.c
@@ -336,7 +336,8 @@ pci_host_generic_acpi_attach(device_t dev)
return (error);
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/pci/pci_host_generic_den0115.c b/sys/dev/pci/pci_host_generic_den0115.c
index a14fe84039fe..3f6daa12344e 100644
--- a/sys/dev/pci/pci_host_generic_den0115.c
+++ b/sys/dev/pci/pci_host_generic_den0115.c
@@ -194,7 +194,8 @@ pci_host_acpi_smccc_attach(device_t dev)
}
device_add_child(dev, "pci", -1);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static uint32_t
diff --git a/sys/dev/pci/pci_host_generic_fdt.c b/sys/dev/pci/pci_host_generic_fdt.c
index 3e057553999b..4e933dec35db 100644
--- a/sys/dev/pci/pci_host_generic_fdt.c
+++ b/sys/dev/pci/pci_host_generic_fdt.c
@@ -171,7 +171,8 @@ pci_host_generic_fdt_attach(device_t dev)
return (error);
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/pci/pci_iov.c b/sys/dev/pci/pci_iov.c
index 31bbb74e791f..e65006c436fa 100644
--- a/sys/dev/pci/pci_iov.c
+++ b/sys/dev/pci/pci_iov.c
@@ -670,7 +670,7 @@ pci_iov_enumerate_vfs(struct pci_devinfo *dinfo, const nvlist_t *config,
}
}
- bus_generic_attach(bus);
+ bus_attach_children(bus);
}
static int
diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c
index 63fdd4b985a6..c4f7814dfee5 100644
--- a/sys/dev/pci/pci_pci.c
+++ b/sys/dev/pci/pci_pci.c
@@ -1114,7 +1114,7 @@ pcib_pcie_hotplug_task(void *context, int pending)
if (pcib_hotplug_present(sc) != 0) {
if (sc->child == NULL) {
sc->child = device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
}
} else {
if (sc->child != NULL) {
@@ -1533,7 +1533,8 @@ pcib_attach_child(device_t dev)
#endif
sc->child = device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
int
diff --git a/sys/dev/pci/vga_pci.c b/sys/dev/pci/vga_pci.c
index 2f86171e5ea9..243c0b53dda4 100644
--- a/sys/dev/pci/vga_pci.c
+++ b/sys/dev/pci/vga_pci.c
@@ -370,7 +370,7 @@ vga_pci_attach(device_t dev)
/* Always create a drmn child for now to make it easier on drm. */
device_add_child(dev, "drmn", DEVICE_UNIT_ANY);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
if (vga_pci_is_boot_display(dev))
device_printf(dev, "Boot video device\n");
diff --git a/sys/dev/ppbus/ppbconf.c b/sys/dev/ppbus/ppbconf.c
index 1f82df001b49..17fef1eebde7 100644
--- a/sys/dev/ppbus/ppbconf.c
+++ b/sys/dev/ppbus/ppbconf.c
@@ -414,7 +414,7 @@ ppbus_attach(device_t dev)
#endif /* !DONTPROBE_1284 */
/* launch attachment of the added children */
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/psci/psci.c b/sys/dev/psci/psci.c
index e445e90956ac..497b23d2d4c3 100644
--- a/sys/dev/psci/psci.c
+++ b/sys/dev/psci/psci.c
@@ -350,7 +350,7 @@ psci_attach(device_t dev, psci_initfn_t psci_init, int default_version)
if (sc->smccc_dev == NULL)
device_printf(dev, "Unable to add SMCCC device\n");
- bus_generic_attach(dev);
+ bus_attach_children(dev);
#endif
return (0);
diff --git a/sys/dev/psci/smccc.c b/sys/dev/psci/smccc.c
index 0cd3255fc911..8e43401338e2 100644
--- a/sys/dev/psci/smccc.c
+++ b/sys/dev/psci/smccc.c
@@ -91,7 +91,8 @@ smccc_probe(device_t dev)
static int
smccc_attach(device_t dev)
{
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
uint32_t
diff --git a/sys/dev/pst/pst-pci.c b/sys/dev/pst/pst-pci.c
index 2b9295984845..54eeb5c755c1 100644
--- a/sys/dev/pst/pst-pci.c
+++ b/sys/dev/pst/pst-pci.c
@@ -94,7 +94,8 @@ iop_pci_attach(device_t dev)
if (!iop_init(sc))
return 0;
- return bus_generic_attach(dev);
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/pwm/controller/allwinner/aw_pwm.c b/sys/dev/pwm/controller/allwinner/aw_pwm.c
index 9c760849ee88..0f505957bb1a 100644
--- a/sys/dev/pwm/controller/allwinner/aw_pwm.c
+++ b/sys/dev/pwm/controller/allwinner/aw_pwm.c
@@ -190,7 +190,8 @@ skipcfg:
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);
diff --git a/sys/dev/pwm/controller/rockchip/rk_pwm.c b/sys/dev/pwm/controller/rockchip/rk_pwm.c
index 601cab6067dc..d05a51e9afb9 100644
--- a/sys/dev/pwm/controller/rockchip/rk_pwm.c
+++ b/sys/dev/pwm/controller/rockchip/rk_pwm.c
@@ -214,7 +214,8 @@ rk_pwm_attach(device_t dev)
sc->busdev = device_add_child(dev, "pwmbus", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
rk_pwm_detach(dev);
diff --git a/sys/dev/pwm/ofw_pwmbus.c b/sys/dev/pwm/ofw_pwmbus.c
index 6bc1a63ccde9..28a6a542c0a7 100644
--- a/sys/dev/pwm/ofw_pwmbus.c
+++ b/sys/dev/pwm/ofw_pwmbus.c
@@ -185,8 +185,9 @@ ofw_pwmbus_attach(device_t dev)
}
bus_enumerate_hinted_children(dev);
bus_identify_children(dev);
+ bus_attach_children(dev);
- return (bus_generic_attach(dev));
+ return (0);
}
static device_method_t ofw_pwmbus_methods[] = {
diff --git a/sys/dev/pwm/pwmbus.c b/sys/dev/pwm/pwmbus.c
index 1ead8fd7a65d..ae40a23d0d45 100644
--- a/sys/dev/pwm/pwmbus.c
+++ b/sys/dev/pwm/pwmbus.c
@@ -183,8 +183,9 @@ pwmbus_attach(device_t dev)
bus_enumerate_hinted_children(dev);
bus_identify_children(dev);
+ bus_attach_children(dev);
- return (bus_generic_attach(dev));
+ return (0);
}
static int
diff --git a/sys/dev/qcom_dwc3/qcom_dwc3.c b/sys/dev/qcom_dwc3/qcom_dwc3.c
index 5fc93b871ad1..5c5a47989441 100644
--- a/sys/dev/qcom_dwc3/qcom_dwc3.c
+++ b/sys/dev/qcom_dwc3/qcom_dwc3.c
@@ -156,7 +156,8 @@ qcom_dwc3_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t qcom_dwc3_methods[] = {
diff --git a/sys/dev/qcom_qup/qcom_spi.c b/sys/dev/qcom_qup/qcom_spi.c
index b7e4d6519a36..d3f38dee041f 100644
--- a/sys/dev/qcom_qup/qcom_spi.c
+++ b/sys/dev/qcom_qup/qcom_spi.c
@@ -429,7 +429,8 @@ qcom_spi_attach(device_t dev)
/* Register for debug sysctl */
qcom_spi_sysctl_attach(sc);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
error:
if (sc->sc_irq_h)
bus_teardown_intr(dev, sc->sc_irq_res, sc->sc_irq_h);
diff --git a/sys/dev/regulator/regulator_bus.c b/sys/dev/regulator/regulator_bus.c
index 99081c792b90..15b6d71f0c46 100644
--- a/sys/dev/regulator/regulator_bus.c
+++ b/sys/dev/regulator/regulator_bus.c
@@ -64,7 +64,8 @@ ofw_regulator_bus_attach(device_t dev)
simplebus_add_device(dev, child, 0, NULL, -1, NULL);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t ofw_regulator_bus_methods[] = {
diff --git a/sys/dev/regulator/regulator_fixed.c b/sys/dev/regulator/regulator_fixed.c
index d9ebbe017e11..0a76da7140a0 100644
--- a/sys/dev/regulator/regulator_fixed.c
+++ b/sys/dev/regulator/regulator_fixed.c
@@ -485,14 +485,17 @@ regfix_attach(device_t dev)
/* Try to get and configure GPIO. */
rv = regfix_get_gpio(sc);
- if (rv != 0)
- return (bus_generic_attach(dev));
+ if (rv != 0) {
+ bus_attach_children(dev);
+ return (0);
+ }
/* Register regulator. */
regnode_fixed_register(sc->dev, &sc->init_def);
sc->attach_done = true;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t regfix_methods[] = {
diff --git a/sys/dev/sdhci/fsl_sdhci.c b/sys/dev/sdhci/fsl_sdhci.c
index 91a0daa3e3b4..2f3f89f3d925 100644
--- a/sys/dev/sdhci/fsl_sdhci.c
+++ b/sys/dev/sdhci/fsl_sdhci.c
@@ -926,7 +926,7 @@ fsl_sdhci_attach(device_t dev)
sc->slot_init_done = true;
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
sdhci_start_slot(&sc->slot);
diff --git a/sys/dev/sdhci/sdhci_fsl_fdt.c b/sys/dev/sdhci/sdhci_fsl_fdt.c
index 3220f00f277d..185b53a6d2c9 100644
--- a/sys/dev/sdhci/sdhci_fsl_fdt.c
+++ b/sys/dev/sdhci/sdhci_fsl_fdt.c
@@ -995,7 +995,8 @@ sdhci_fsl_fdt_attach(device_t dev)
sc->slot_init_done = true;
sdhci_start_slot(&sc->slot);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
err_free_gpio:
sdhci_fdt_gpio_teardown(sc->gpio);
diff --git a/sys/dev/siis/siis.c b/sys/dev/siis/siis.c
index 8f8ca506561f..4cc78ed57323 100644
--- a/sys/dev/siis/siis.c
+++ b/sys/dev/siis/siis.c
@@ -195,7 +195,7 @@ siis_attach(device_t dev)
else
device_set_ivars(child, (void *)(intptr_t)unit);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return 0;
}
diff --git a/sys/dev/sk/if_sk.c b/sys/dev/sk/if_sk.c
index 423c2eeff945..643b49119ef1 100644
--- a/sys/dev/sk/if_sk.c
+++ b/sys/dev/sk/if_sk.c
@@ -1718,11 +1718,7 @@ skc_attach(device_t dev)
/* Turn on the 'driver is loaded' LED. */
CSR_WRITE_2(sc, SK_LED, SK_LED_GREEN_ON);
- error = bus_generic_attach(dev);
- if (error) {
- device_printf(dev, "failed to attach port(s)\n");
- goto fail;
- }
+ bus_attach_children(dev);
/* Hook interrupt last to avoid having to lock softc */
error = bus_setup_intr(dev, sc->sk_res[1], INTR_TYPE_NET|INTR_MPSAFE,
diff --git a/sys/dev/smbus/smbus.c b/sys/dev/smbus/smbus.c
index 1ba824b69b53..28d1a16e8c96 100644
--- a/sys/dev/smbus/smbus.c
+++ b/sys/dev/smbus/smbus.c
@@ -69,7 +69,7 @@ smbus_attach(device_t dev)
mtx_init(&sc->lock, device_get_nameunit(dev), "smbus", MTX_DEF);
bus_identify_children(dev);
bus_enumerate_hinted_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/sound/pci/csa.c b/sys/dev/sound/pci/csa.c
index d62759e22dcb..4c43c42b1cc3 100644
--- a/sys/dev/sound/pci/csa.c
+++ b/sys/dev/sound/pci/csa.c
@@ -286,7 +286,7 @@ csa_attach(device_t dev)
scp->midi = device_add_child(dev, "midi", DEVICE_UNIT_ANY);
device_set_ivars(scp->midi, func);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
diff --git a/sys/dev/sound/pci/emu10kx.c b/sys/dev/sound/pci/emu10kx.c
index b35a5e3139cb..0c445482a932 100644
--- a/sys/dev/sound/pci/emu10kx.c
+++ b/sys/dev/sound/pci/emu10kx.c
@@ -3318,7 +3318,8 @@ emu_pci_attach(device_t dev)
device_set_ivars(sc->midi[1], func);
}
#endif
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
bad:
/* XXX can we just call emu_pci_detach here? */
diff --git a/sys/dev/sound/pci/fm801.c b/sys/dev/sound/pci/fm801.c
index ea043e87a59c..72a476708aa7 100644
--- a/sys/dev/sound/pci/fm801.c
+++ b/sys/dev/sound/pci/fm801.c
@@ -649,7 +649,7 @@ fm801_pci_attach(device_t dev)
goto oops;
fm801->radio = device_add_child(dev, "radio", DEVICE_UNIT_ANY);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return 0;
diff --git a/sys/dev/sound/pci/hda/hdaa.c b/sys/dev/sound/pci/hda/hdaa.c
index ee8464a550df..2fab3ae014d1 100644
--- a/sys/dev/sound/pci/hda/hdaa.c
+++ b/sys/dev/sound/pci/hda/hdaa.c
@@ -6468,7 +6468,7 @@ hdaa_sysctl_reconfig(SYSCTL_HANDLER_ARGS)
hdaa_unconfigure(dev);
hdaa_configure(dev);
hdaa_unlock(devinfo);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
HDA_BOOTHVERBOSE(
device_printf(dev, "Reconfiguration done\n");
);
@@ -6674,7 +6674,7 @@ hdaa_attach(device_t dev)
SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO,
"init_clear", CTLFLAG_RW,
&devinfo->init_clear, 1,"Clear initial pin widget configuration");
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c
index 929080b7ac69..c9b11de01d18 100644
--- a/sys/dev/sound/pci/hda/hdac.c
+++ b/sys/dev/sound/pci/hda/hdac.c
@@ -1625,7 +1625,7 @@ hdac_attach2(void *arg)
sc->codecs[i].dev = child;
}
}
- bus_generic_attach(sc->dev);
+ bus_attach_children(sc->dev);
SYSCTL_ADD_PROC(device_get_sysctl_ctx(sc->dev),
SYSCTL_CHILDREN(device_get_sysctl_tree(sc->dev)), OID_AUTO,
diff --git a/sys/dev/sound/pci/hda/hdacc.c b/sys/dev/sound/pci/hda/hdacc.c
index d5643caf4405..c79e9297025c 100644
--- a/sys/dev/sound/pci/hda/hdacc.c
+++ b/sys/dev/sound/pci/hda/hdacc.c
@@ -530,7 +530,7 @@ hdacc_attach(device_t dev)
device_set_ivars(child, &codec->fgs[n]);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/dev/sound/pci/hdsp.c b/sys/dev/sound/pci/hdsp.c
index d678fed527dd..ac343928b26b 100644
--- a/sys/dev/sound/pci/hdsp.c
+++ b/sys/dev/sound/pci/hdsp.c
@@ -952,7 +952,8 @@ hdsp_attach(device_t dev)
"Analog input level ('LowGain', '+4dBU', '-10dBV')");
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static void
diff --git a/sys/dev/sound/pci/hdspe.c b/sys/dev/sound/pci/hdspe.c
index f983f0be2275..4b5c31801d55 100644
--- a/sys/dev/sound/pci/hdspe.c
+++ b/sys/dev/sound/pci/hdspe.c
@@ -844,8 +844,8 @@ hdspe_attach(device_t dev)
"Analog input level ('LowGain', '+4dBU', '-10dBV')");
}
-
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static void
diff --git a/sys/dev/sound/usb/uaudio.c b/sys/dev/sound/usb/uaudio.c
index 1f927bcb49de..ff9f59fe42ab 100644
--- a/sys/dev/sound/usb/uaudio.c
+++ b/sys/dev/sound/usb/uaudio.c
@@ -1135,10 +1135,7 @@ uaudio_attach(device_t dev)
&sc->sc_sndcard_func);
}
- if (bus_generic_attach(dev)) {
- DPRINTF("child attach failed\n");
- goto detach;
- }
+ bus_attach_children(dev);
if (uaudio_handle_hid) {
if (uaudio_hid_probe(sc, uaa) == 0) {
diff --git a/sys/dev/spibus/controller/allwinner/aw_spi.c b/sys/dev/spibus/controller/allwinner/aw_spi.c
index 2b13d9520556..e17152b054d7 100644
--- a/sys/dev/spibus/controller/allwinner/aw_spi.c
+++ b/sys/dev/spibus/controller/allwinner/aw_spi.c
@@ -237,7 +237,8 @@ aw_spi_attach(device_t dev)
sc->spibus = device_add_child(dev, "spibus", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
aw_spi_detach(dev);
diff --git a/sys/dev/spibus/controller/rockchip/rk_spi.c b/sys/dev/spibus/controller/rockchip/rk_spi.c
index f37ec6813e0a..2c8093c6dc82 100644
--- a/sys/dev/spibus/controller/rockchip/rk_spi.c
+++ b/sys/dev/spibus/controller/rockchip/rk_spi.c
@@ -338,7 +338,8 @@ rk_spi_attach(device_t dev)
RK_SPI_WRITE_4(sc, RK_SPI_TXFTLR, sc->fifo_size/2 - 1);
RK_SPI_WRITE_4(sc, RK_SPI_RXFTLR, sc->fifo_size/2 - 1);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
rk_spi_detach(dev);
diff --git a/sys/dev/spibus/ofw_spibus.c b/sys/dev/spibus/ofw_spibus.c
index caa36644dc80..cbf87b7b356d 100644
--- a/sys/dev/spibus/ofw_spibus.c
+++ b/sys/dev/spibus/ofw_spibus.c
@@ -156,7 +156,8 @@ ofw_spibus_attach(device_t dev)
device_set_ivars(childdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_t
diff --git a/sys/dev/spibus/spibus.c b/sys/dev/spibus/spibus.c
index 03083cfafc04..9251bd0c2962 100644
--- a/sys/dev/spibus/spibus.c
+++ b/sys/dev/spibus/spibus.c
@@ -57,7 +57,8 @@ spibus_attach(device_t dev)
sc->dev = dev;
bus_enumerate_hinted_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
/*
diff --git a/sys/dev/sram/mmio_sram.c b/sys/dev/sram/mmio_sram.c
index b9a104760194..4409386d9ad1 100644
--- a/sys/dev/sram/mmio_sram.c
+++ b/sys/dev/sram/mmio_sram.c
@@ -102,7 +102,8 @@ mmio_sram_attach(device_t dev)
for (node = OF_child(node); node > 0; node = OF_peer(node))
simplebus_add_device(dev, node, 0, NULL, -1, NULL);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/superio/superio.c b/sys/dev/superio/superio.c
index fe049a5d5419..7bed7bb510d3 100644
--- a/sys/dev/superio/superio.c
+++ b/sys/dev/superio/superio.c
@@ -718,7 +718,7 @@ superio_attach(device_t dev)
}
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
sc->chardev = make_dev(&superio_cdevsw, device_get_unit(dev),
UID_ROOT, GID_WHEEL, 0600, "superio%d", device_get_unit(dev));
diff --git a/sys/dev/syscon/syscon_generic.c b/sys/dev/syscon/syscon_generic.c
index be3d093915cc..6f039a680644 100644
--- a/sys/dev/syscon/syscon_generic.c
+++ b/sys/dev/syscon/syscon_generic.c
@@ -194,7 +194,8 @@ syscon_generic_attach(device_t dev)
sc->simplebus_attached = true;
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/usb/controller/dwc3/aw_dwc3.c b/sys/dev/usb/controller/dwc3/aw_dwc3.c
index 802c46bdae28..be941ca2148f 100644
--- a/sys/dev/usb/controller/dwc3/aw_dwc3.c
+++ b/sys/dev/usb/controller/dwc3/aw_dwc3.c
@@ -125,7 +125,8 @@ aw_dwc3_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t aw_dwc3_methods[] = {
diff --git a/sys/dev/usb/controller/dwc3/rk_dwc3.c b/sys/dev/usb/controller/dwc3/rk_dwc3.c
index f53f446a29f3..16fc5f73f922 100644
--- a/sys/dev/usb/controller/dwc3/rk_dwc3.c
+++ b/sys/dev/usb/controller/dwc3/rk_dwc3.c
@@ -182,7 +182,8 @@ rk_dwc3_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t rk_dwc3_methods[] = {
diff --git a/sys/dev/usb/controller/xlnx_dwc3.c b/sys/dev/usb/controller/xlnx_dwc3.c
index b0680db97d22..ab2e9b899b2a 100644
--- a/sys/dev/usb/controller/xlnx_dwc3.c
+++ b/sys/dev/usb/controller/xlnx_dwc3.c
@@ -133,7 +133,8 @@ xlnx_dwc3_attach(device_t dev)
device_probe_and_attach(cdev);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t xlnx_dwc3_methods[] = {
diff --git a/sys/dev/usb/input/usbhid.c b/sys/dev/usb/input/usbhid.c
index 4d7bf12c7387..d357a699b527 100644
--- a/sys/dev/usb/input/usbhid.c
+++ b/sys/dev/usb/input/usbhid.c
@@ -842,12 +842,7 @@ usbhid_attach(device_t dev)
}
device_set_ivars(child, &sc->sc_hw);
- error = bus_generic_attach(dev);
- if (error) {
- device_printf(dev, "failed to attach child: %d\n", error);
- usbhid_detach(dev);
- return (error);
- }
+ bus_attach_children(dev);
return (0); /* success */
}
diff --git a/sys/dev/usb/misc/cp2112.c b/sys/dev/usb/misc/cp2112.c
index 19ab28246040..2492eae978bb 100644
--- a/sys/dev/usb/misc/cp2112.c
+++ b/sys/dev/usb/misc/cp2112.c
@@ -1340,7 +1340,7 @@ cp2112iic_attach(device_t dev)
err = ENXIO;
goto detach;
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
detach:
diff --git a/sys/dev/usb/misc/i2ctinyusb.c b/sys/dev/usb/misc/i2ctinyusb.c
index cae20880e441..47f27d9383a6 100644
--- a/sys/dev/usb/misc/i2ctinyusb.c
+++ b/sys/dev/usb/misc/i2ctinyusb.c
@@ -173,7 +173,7 @@ i2ctinyusb_attach(device_t dev)
err = ENXIO;
goto detach;
}
- err = bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
diff --git a/sys/dev/viapm/viapm.c b/sys/dev/viapm/viapm.c
index 2eb811523612..b19ad478a3ff 100644
--- a/sys/dev/viapm/viapm.c
+++ b/sys/dev/viapm/viapm.c
@@ -374,7 +374,7 @@ viapm_pro_attach(device_t dev)
viapm->smbus = device_add_child(dev, "smbus", DEVICE_UNIT_ANY);
/* probe and attach the smbus */
- bus_generic_attach(dev);
+ bus_attach_children(dev);
/* disable slave function */
VIAPM_OUTB(SMBSCTRL, VIAPM_INB(SMBSCTRL) & ~SMBSCTRL_ENABLE);
@@ -426,7 +426,7 @@ viapm_586b_attach(device_t dev)
if (!(viapm->iicbb = device_add_child(dev, "iicbb", -1)))
goto error;
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return 0;
diff --git a/sys/dev/vmd/vmd.c b/sys/dev/vmd/vmd.c
index 1eeeb630433a..40565eab6f3e 100644
--- a/sys/dev/vmd/vmd.c
+++ b/sys/dev/vmd/vmd.c
@@ -384,7 +384,8 @@ vmd_attach(device_t dev)
sc->vmd_dma_tag = bus_get_dma_tag(dev);
sc->psc.child = device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
vmd_free(sc);
diff --git a/sys/dev/vnic/mrml_bridge.c b/sys/dev/vnic/mrml_bridge.c
index d0a60d95ece2..b77ef03ad072 100644
--- a/sys/dev/vnic/mrml_bridge.c
+++ b/sys/dev/vnic/mrml_bridge.c
@@ -108,7 +108,8 @@ mrmlb_fdt_attach(device_t dev)
if (err != 0)
return (err);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
/* OFW bus interface */
diff --git a/sys/dev/vnic/thunder_mdio_fdt.c b/sys/dev/vnic/thunder_mdio_fdt.c
index 158c84cee440..e98471535bf8 100644
--- a/sys/dev/vnic/thunder_mdio_fdt.c
+++ b/sys/dev/vnic/thunder_mdio_fdt.c
@@ -167,7 +167,8 @@ mdionexus_fdt_attach(device_t dev)
if (err != 0)
return (err);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
/* OFW bus interface */
diff --git a/sys/dev/xen/bus/xenpv.c b/sys/dev/xen/bus/xenpv.c
index cc4b4bea4537..f710b0f91140 100644
--- a/sys/dev/xen/bus/xenpv.c
+++ b/sys/dev/xen/bus/xenpv.c
@@ -127,10 +127,9 @@ xenpv_attach(device_t dev)
* found.
*/
bus_identify_children(dev);
+ bus_attach_children(dev);
- error = bus_generic_attach(dev);
-
- return (error);
+ return (0);
}
static int
diff --git a/sys/dev/xen/pcifront/pcifront.c b/sys/dev/xen/pcifront/pcifront.c
index d8d2ac48dbb7..76339cd3d361 100644
--- a/sys/dev/xen/pcifront/pcifront.c
+++ b/sys/dev/xen/pcifront/pcifront.c
@@ -502,7 +502,8 @@ xpcife_attach(device_t dev)
}
out:
- return bus_generic_attach(dev);
+ bus_attach_children(dev);
+ return (0);
}
static devclass_t xpcife_devclass;
@@ -559,7 +560,8 @@ xpcib_attach(device_t dev)
DPRINTF("xpcib attach (bus=%d)\n", sc->bus);
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return bus_generic_attach(dev);
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/dev/xen/xenstore/xenstore.c b/sys/dev/xen/xenstore/xenstore.c
index ddb064843227..2cccc00ca5a7 100644
--- a/sys/dev/xen/xenstore/xenstore.c
+++ b/sys/dev/xen/xenstore/xenstore.c
@@ -1069,7 +1069,7 @@ xs_attach_deferred(void *arg)
{
bus_identify_children(xs.xs_dev);
- bus_generic_attach(xs.xs_dev);
+ bus_attach_children(xs.xs_dev);
config_intrhook_disestablish(&xs.xs_attachcb);
}
@@ -1080,7 +1080,7 @@ xs_attach_late(void *arg, int pending)
KASSERT((pending == 1), ("xs late attach queued several times"));
bus_identify_children(xs.xs_dev);
- bus_generic_attach(xs.xs_dev);
+ bus_attach_children(xs.xs_dev);
}
/**
diff --git a/sys/dev/xilinx/axi_quad_spi.c b/sys/dev/xilinx/axi_quad_spi.c
index 54f4c6aa8810..eba320731659 100644
--- a/sys/dev/xilinx/axi_quad_spi.c
+++ b/sys/dev/xilinx/axi_quad_spi.c
@@ -149,7 +149,8 @@ spi_attach(device_t dev)
WRITE4(sc, SPI_CR, reg);
device_add_child(dev, "spibus", 0);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/i386/acpica/acpi_machdep.c b/sys/i386/acpica/acpi_machdep.c
index f36ee90e33a5..67875dd8263f 100644
--- a/sys/i386/acpica/acpi_machdep.c
+++ b/sys/i386/acpica/acpi_machdep.c
@@ -290,7 +290,8 @@ nexus_acpi_attach(device_t dev)
if (BUS_ADD_CHILD(dev, 10, "acpi", 0) == NULL)
panic("failed to add acpi0 device");
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static device_method_t nexus_acpi_methods[] = {
diff --git a/sys/isa/isa_common.c b/sys/isa/isa_common.c
index c4b3d8d6a0b7..8e4064af1455 100644
--- a/sys/isa/isa_common.c
+++ b/sys/isa/isa_common.c
@@ -1115,9 +1115,10 @@ isab_attach(device_t dev)
device_t child;
child = device_add_child(dev, "isa", 0);
- if (child != NULL)
- return (bus_generic_attach(dev));
- return (ENXIO);
+ if (child == NULL)
+ return (ENXIO);
+ bus_attach_children(dev);
+ return (0);
}
char *
diff --git a/sys/isa/vga_isa.c b/sys/isa/vga_isa.c
index f42845745873..d1a4a09bcd76 100644
--- a/sys/isa/vga_isa.c
+++ b/sys/isa/vga_isa.c
@@ -191,7 +191,7 @@ isavga_attach(device_t dev)
#if 0 /* experimental */
device_add_child(dev, "fb", DEVICE_UNIT_ANY);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
#endif
return (0);
@@ -260,7 +260,7 @@ vgapm_attach(device_t dev)
{
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/powerpc/mambo/mambo.c b/sys/powerpc/mambo/mambo.c
index b00375684717..2e4dbf49c477 100644
--- a/sys/powerpc/mambo/mambo.c
+++ b/sys/powerpc/mambo/mambo.c
@@ -91,5 +91,6 @@ static int
mambobus_attach(device_t dev)
{
bus_identify_children(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
diff --git a/sys/powerpc/mpc85xx/fsl_espi.c b/sys/powerpc/mpc85xx/fsl_espi.c
index 0eb85d6f3c2b..7f8378083d63 100644
--- a/sys/powerpc/mpc85xx/fsl_espi.c
+++ b/sys/powerpc/mpc85xx/fsl_espi.c
@@ -195,8 +195,8 @@ fsl_espi_attach(device_t dev)
FSL_ESPI_WRITE(sc, ESPI_SPIM, 0);
device_add_child(dev, "spibus", DEVICE_UNIT_ANY);
-
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/mpc85xx/i2c.c b/sys/powerpc/mpc85xx/i2c.c
index c28b2da7fd2c..a4f8265fd4b1 100644
--- a/sys/powerpc/mpc85xx/i2c.c
+++ b/sys/powerpc/mpc85xx/i2c.c
@@ -239,7 +239,7 @@ i2c_attach(device_t dev)
return (ENXIO);
}
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (IIC_NOERR);
}
static int
diff --git a/sys/powerpc/mpc85xx/lbc.c b/sys/powerpc/mpc85xx/lbc.c
index f23f8d9b305b..1399ecf206b9 100644
--- a/sys/powerpc/mpc85xx/lbc.c
+++ b/sys/powerpc/mpc85xx/lbc.c
@@ -665,7 +665,8 @@ lbc_attach(device_t dev)
lbc_banks_enable(sc);
OF_prop_free(rangesptr);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
OF_prop_free(rangesptr);
diff --git a/sys/powerpc/ofw/ofw_pcibus.c b/sys/powerpc/ofw/ofw_pcibus.c
index 9619ccc6c899..ff0fe39592e2 100644
--- a/sys/powerpc/ofw/ofw_pcibus.c
+++ b/sys/powerpc/ofw/ofw_pcibus.c
@@ -145,7 +145,8 @@ ofw_pcibus_attach(device_t dev)
if (!ofw_devices_only)
ofw_pcibus_enum_bus(dev, domain, busno);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
struct pci_devinfo *
diff --git a/sys/powerpc/powermac/cuda.c b/sys/powerpc/powermac/cuda.c
index 367eb7a059c2..d4c3472e5a5e 100644
--- a/sys/powerpc/powermac/cuda.c
+++ b/sys/powerpc/powermac/cuda.c
@@ -254,7 +254,8 @@ cuda_attach(device_t dev)
EVENTHANDLER_REGISTER(shutdown_final, cuda_shutdown, sc,
SHUTDOWN_PRI_LAST);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int cuda_detach(device_t dev) {
diff --git a/sys/powerpc/powermac/kiic.c b/sys/powerpc/powermac/kiic.c
index 14170468698f..1948b3248db7 100644
--- a/sys/powerpc/powermac/kiic.c
+++ b/sys/powerpc/powermac/kiic.c
@@ -241,7 +241,8 @@ kiic_attach(device_t self)
/* Add the IIC bus layer */
sc->sc_iicbus = device_add_child(self, "iicbus", DEVICE_UNIT_ANY);
- return (bus_generic_attach(self));
+ bus_attach_children(self);
+ return (0);
}
static void
diff --git a/sys/powerpc/powermac/macgpio.c b/sys/powerpc/powermac/macgpio.c
index 7c4f6911817b..b17ba3f64128 100644
--- a/sys/powerpc/powermac/macgpio.c
+++ b/sys/powerpc/powermac/macgpio.c
@@ -211,7 +211,8 @@ macgpio_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/powermac/macio.c b/sys/powerpc/powermac/macio.c
index b6ed3a25995f..fbd99a1ac87d 100644
--- a/sys/powerpc/powermac/macio.c
+++ b/sys/powerpc/powermac/macio.c
@@ -461,7 +461,8 @@ macio_attach(device_t dev)
}
#endif
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/powermac/pmu.c b/sys/powerpc/powermac/pmu.c
index e0358c6f9887..de1f09805396 100644
--- a/sys/powerpc/powermac/pmu.c
+++ b/sys/powerpc/powermac/pmu.c
@@ -517,7 +517,8 @@ pmu_attach(device_t dev)
EVENTHANDLER_REGISTER(shutdown_final, pmu_shutdown, sc,
SHUTDOWN_PRI_LAST);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/powermac/smu.c b/sys/powerpc/powermac/smu.c
index 8a7e210d5e2c..8107ef8ef790 100644
--- a/sys/powerpc/powermac/smu.c
+++ b/sys/powerpc/powermac/smu.c
@@ -400,7 +400,8 @@ smu_attach(device_t dev)
EVENTHANDLER_REGISTER(shutdown_final, smu_shutdown, dev,
SHUTDOWN_PRI_LAST);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
@@ -1478,7 +1479,8 @@ smuiic_attach(device_t dev)
/* Add the IIC bus layer */
device_add_child(dev, "iicbus", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/powermac/uninorth.c b/sys/powerpc/powermac/uninorth.c
index 5df0319bd213..8f3d567202c7 100644
--- a/sys/powerpc/powermac/uninorth.c
+++ b/sys/powerpc/powermac/uninorth.c
@@ -418,7 +418,8 @@ unin_chip_attach(device_t dev)
if (strcmp(compat, "gmac") == 0)
unin_enable_gmac(dev);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/powernv/opal_console.c b/sys/powerpc/powernv/opal_console.c
index 2589d94f61a5..d284ad1342c8 100644
--- a/sys/powerpc/powernv/opal_console.c
+++ b/sys/powerpc/powernv/opal_console.c
@@ -578,7 +578,8 @@ opalcons_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
diff --git a/sys/powerpc/powernv/opal_dev.c b/sys/powerpc/powernv/opal_dev.c
index 5a8a6e09b6aa..ab94e0ac8e36 100644
--- a/sys/powerpc/powernv/opal_dev.c
+++ b/sys/powerpc/powernv/opal_dev.c
@@ -227,7 +227,8 @@ opaldev_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/powernv/opal_i2c.c b/sys/powerpc/powernv/opal_i2c.c
index 1f2002102116..4e3bc4a7384a 100644
--- a/sys/powerpc/powernv/opal_i2c.c
+++ b/sys/powerpc/powernv/opal_i2c.c
@@ -144,7 +144,8 @@ opal_i2c_attach(device_t dev)
I2C_LOCK_INIT(sc);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/powernv/opal_i2cm.c b/sys/powerpc/powernv/opal_i2cm.c
index 775487980127..74bf2b1aebab 100644
--- a/sys/powerpc/powernv/opal_i2cm.c
+++ b/sys/powerpc/powernv/opal_i2cm.c
@@ -108,7 +108,8 @@ opal_i2cm_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
diff --git a/sys/powerpc/powernv/opal_sensor.c b/sys/powerpc/powernv/opal_sensor.c
index a2f3c0a80a5b..5e99884e83e0 100644
--- a/sys/powerpc/powernv/opal_sensor.c
+++ b/sys/powerpc/powernv/opal_sensor.c
@@ -292,7 +292,8 @@ opalsens_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
diff --git a/sys/powerpc/powernv/powernv_centaur.c b/sys/powerpc/powernv/powernv_centaur.c
index cd3a1eed1e34..af0b2cc8689e 100644
--- a/sys/powerpc/powernv/powernv_centaur.c
+++ b/sys/powerpc/powernv/powernv_centaur.c
@@ -107,7 +107,8 @@ powernv_centaur_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
diff --git a/sys/powerpc/powernv/powernv_xscom.c b/sys/powerpc/powernv/powernv_xscom.c
index 9e1f0af7fb7c..81a155771103 100644
--- a/sys/powerpc/powernv/powernv_xscom.c
+++ b/sys/powerpc/powernv/powernv_xscom.c
@@ -107,7 +107,8 @@ powernv_xscom_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c
index be94583fd41e..18b8fc57114f 100644
--- a/sys/powerpc/powerpc/nexus.c
+++ b/sys/powerpc/powerpc/nexus.c
@@ -142,7 +142,7 @@ nexus_attach(device_t dev)
/* Now, probe children. */
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/powerpc/ps3/ps3bus.c b/sys/powerpc/ps3/ps3bus.c
index 570190176520..8aa0a806f116 100644
--- a/sys/powerpc/ps3/ps3bus.c
+++ b/sys/powerpc/ps3/ps3bus.c
@@ -479,7 +479,8 @@ ps3bus_attach(device_t self)
clock_register(self, 1000);
- return (bus_generic_attach(self));
+ bus_attach_children(self);
+ return (0);
}
static int
diff --git a/sys/powerpc/pseries/vdevice.c b/sys/powerpc/pseries/vdevice.c
index 77764d8eb9f1..9763922e6028 100644
--- a/sys/powerpc/pseries/vdevice.c
+++ b/sys/powerpc/pseries/vdevice.c
@@ -156,7 +156,8 @@ vdevice_attach(device_t dev)
device_set_ivars(cdev, dinfo);
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static const struct ofw_bus_devinfo *
diff --git a/sys/powerpc/psim/ata_iobus.c b/sys/powerpc/psim/ata_iobus.c
index 25c37812b8c2..4ca9ecafc99c 100644
--- a/sys/powerpc/psim/ata_iobus.c
+++ b/sys/powerpc/psim/ata_iobus.c
@@ -112,7 +112,8 @@ ata_iobus_attach(device_t dev)
* to add two
*/
device_add_child(dev, "ata", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/powerpc/psim/iobus.c b/sys/powerpc/psim/iobus.c
index e763999f7bf1..288d85effcc2 100644
--- a/sys/powerpc/psim/iobus.c
+++ b/sys/powerpc/psim/iobus.c
@@ -240,7 +240,8 @@ iobus_attach(device_t dev)
}
}
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/riscv/riscv/nexus.c b/sys/riscv/riscv/nexus.c
index b018a9969bfa..6eb194f86390 100644
--- a/sys/riscv/riscv/nexus.c
+++ b/sys/riscv/riscv/nexus.c
@@ -172,7 +172,7 @@ nexus_attach(device_t dev)
nexus_add_child(dev, 2, "ofwbus", 0);
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/riscv/riscv/riscv_console.c b/sys/riscv/riscv/riscv_console.c
index e582b3385384..9fb027a5f0fc 100644
--- a/sys/riscv/riscv/riscv_console.c
+++ b/sys/riscv/riscv/riscv_console.c
@@ -243,7 +243,7 @@ rcons_attach(device_t dev)
sc = device_get_softc(dev);
sc->dev = dev;
- bus_generic_attach(sc->dev);
+ bus_attach_children(sc->dev);
return (0);
}
diff --git a/sys/riscv/sifive/fu740_pci_dw.c b/sys/riscv/sifive/fu740_pci_dw.c
index d0490d6548f2..2c8068775637 100644
--- a/sys/riscv/sifive/fu740_pci_dw.c
+++ b/sys/riscv/sifive/fu740_pci_dw.c
@@ -425,7 +425,8 @@ fupci_attach(device_t dev)
if (error != 0)
goto fail;
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
fail:
/* XXX Cleanup */
diff --git a/sys/x86/pci/pci_bus.c b/sys/x86/pci/pci_bus.c
index ca4773ecff9e..bff64da3ae2d 100644
--- a/sys/x86/pci/pci_bus.c
+++ b/sys/x86/pci/pci_bus.c
@@ -524,7 +524,8 @@ legacy_pcib_attach(device_t dev)
}
#endif
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return bus_generic_attach(dev);
+ bus_attach_children(dev);
+ return (0);
}
int
diff --git a/sys/x86/pci/qpi.c b/sys/x86/pci/qpi.c
index 278489dfe10a..94dd46d26a92 100644
--- a/sys/x86/pci/qpi.c
+++ b/sys/x86/pci/qpi.c
@@ -155,7 +155,8 @@ qpi_attach(device_t dev)
for (bus = PCI_BUSMAX; bus >= 0; bus--)
qpi_probe_pcib(dev, bus);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
@@ -227,7 +228,8 @@ qpi_pcib_attach(device_t dev)
{
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/x86/x86/legacy.c b/sys/x86/x86/legacy.c
index f8f3517238f0..4f42986290f6 100644
--- a/sys/x86/x86/legacy.c
+++ b/sys/x86/x86/legacy.c
@@ -162,7 +162,7 @@ legacy_attach(device_t dev)
* found.
*/
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
/*
* If we didn't see ISA on a PCI bridge, add a top-level bus.
@@ -343,7 +343,7 @@ static int
cpu_attach(device_t dev)
{
bus_identify_children(dev);
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}
diff --git a/sys/x86/x86/mptable_pci.c b/sys/x86/x86/mptable_pci.c
index ea729670d492..ab47910f971d 100644
--- a/sys/x86/x86/mptable_pci.c
+++ b/sys/x86/x86/mptable_pci.c
@@ -66,7 +66,8 @@ mptable_hostb_attach(device_t dev)
mptable_pci_host_res_init(dev);
device_add_child(dev, "pci", DEVICE_UNIT_ANY);
- return (bus_generic_attach(dev));
+ bus_attach_children(dev);
+ return (0);
}
static int
diff --git a/sys/x86/x86/nexus.c b/sys/x86/x86/nexus.c
index 0fe8e80147ca..625cd49c7c1b 100644
--- a/sys/x86/x86/nexus.c
+++ b/sys/x86/x86/nexus.c
@@ -271,7 +271,7 @@ nexus_attach(device_t dev)
*/
if (BUS_ADD_CHILD(dev, 10, "legacy", 0) == NULL)
panic("legacy: could not attach");
- bus_generic_attach(dev);
+ bus_attach_children(dev);
return (0);
}