From 18250ec6c089c0c50cbd9fd87d78e03ff89916df Mon Sep 17 00:00:00 2001 From: John Baldwin Date: Fri, 6 Dec 2024 17:26:16 -0500 Subject: [PATCH] Replace calls to bus_generic_attach with bus_attach_children Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D47675 --- sys/amd64/acpica/acpi_machdep.c | 3 ++- sys/arm/allwinner/aw_rsb.c | 2 +- sys/arm/annapurna/alpine/alpine_pci_msix.c | 3 ++- sys/arm/arm/gic_acpi.c | 2 +- sys/arm/arm/gic_fdt.c | 2 +- sys/arm/arm/nexus.c | 2 +- sys/arm/broadcom/bcm2835/bcm2835_clkman.c | 3 ++- sys/arm/broadcom/bcm2835/bcm2835_pwm.c | 3 ++- sys/arm/broadcom/bcm2835/bcm2835_sdhci.c | 2 +- sys/arm/broadcom/bcm2835/bcm2835_sdhost.c | 2 +- sys/arm/broadcom/bcm2835/bcm2835_spi.c | 3 ++- sys/arm/broadcom/bcm2835/bcm2838_pci.c | 3 ++- sys/arm/freescale/vybrid/vf_spi.c | 3 ++- sys/arm/mv/a37x0_iic.c | 3 ++- sys/arm/mv/mv_pci.c | 3 ++- sys/arm/mv/mv_pci_ctrl.c | 3 ++- sys/arm/mv/mvebu_gpio.c | 3 ++- sys/arm/nvidia/as3722.c | 3 ++- sys/arm/nvidia/drm2/tegra_dc.c | 3 ++- sys/arm/nvidia/drm2/tegra_hdmi.c | 3 ++- sys/arm/nvidia/drm2/tegra_host1x.c | 3 ++- sys/arm/nvidia/tegra_abpmisc.c | 3 ++- sys/arm/nvidia/tegra_efuse.c | 3 ++- sys/arm/nvidia/tegra_gpio.c | 3 ++- sys/arm/nvidia/tegra_i2c.c | 3 ++- sys/arm/nvidia/tegra_mc.c | 3 ++- sys/arm/nvidia/tegra_pcie.c | 3 ++- sys/arm/nvidia/tegra_rtc.c | 3 ++- sys/arm/nvidia/tegra_sdhci.c | 2 +- sys/arm/nvidia/tegra_soctherm.c | 3 ++- sys/arm/qualcomm/ipq4018_usb_hs_phy.c | 3 ++- sys/arm/qualcomm/ipq4018_usb_ss_phy.c | 3 ++- sys/arm/ti/am335x/am335x_ehrpwm.c | 3 ++- sys/arm/ti/am335x/am335x_pwmss.c | 3 ++- sys/arm/ti/am335x/am335x_usb_phy.c | 3 ++- sys/arm/ti/clk/ti_clkctrl.c | 3 ++- sys/arm/ti/clk/ti_divider_clock.c | 9 ++++++--- sys/arm/ti/clk/ti_dpll_clock.c | 9 ++++++--- sys/arm/ti/clk/ti_gate_clock.c | 9 ++++++--- sys/arm/ti/clk/ti_mux_clock.c | 9 ++++++--- sys/arm/ti/cpsw/if_cpsw.c | 2 +- sys/arm/ti/ti_omap4_cm.c | 3 ++- sys/arm/ti/ti_prcm.c | 4 ++-- sys/arm/ti/ti_scm.c | 3 ++- sys/arm/ti/ti_scm_syscon.c | 3 ++- sys/arm/ti/ti_sdhci.c | 2 +- sys/arm/ti/ti_spi.c | 3 ++- sys/arm/ti/ti_sysc.c | 8 +++++--- sys/arm/ti/twl/twl.c | 3 ++- sys/arm/ti/usb/omap_host.c | 3 ++- sys/arm64/arm64/gic_v3_acpi.c | 2 +- sys/arm64/arm64/gic_v3_fdt.c | 3 ++- sys/arm64/arm64/nexus.c | 2 +- sys/arm64/broadcom/brcmmdio/mdio_mux_iproc.c | 3 ++- sys/arm64/broadcom/brcmmdio/mdio_nexus_iproc.c | 3 ++- sys/arm64/broadcom/brcmmdio/mdio_ns2_pcie_phy.c | 3 ++- sys/arm64/cavium/thunder_pcie_pem.c | 4 ++-- sys/arm64/nvidia/tegra210/max77620.c | 3 ++- sys/arm64/nvidia/tegra210/max77620_rtc.c | 3 ++- sys/arm64/qoriq/qoriq_dw_pci.c | 3 ++- sys/arm64/qoriq/qoriq_therm.c | 3 ++- sys/arm64/rockchip/rk3568_pcie.c | 3 ++- sys/arm64/rockchip/rk_pcie.c | 3 ++- sys/arm64/rockchip/rk_pinctrl.c | 3 ++- sys/arm64/rockchip/rk_tsadc.c | 3 ++- sys/arm64/rockchip/rk_usbphy.c | 3 ++- sys/compat/linuxkpi/common/src/linux_i2c.c | 11 ++--------- sys/compat/linuxkpi/common/src/linux_i2cbb.c | 11 ++--------- .../vchiq/interface/vchiq_arm/vchiq_kmod.c | 2 +- sys/dev/aac/aac.c | 7 +++---- sys/dev/aacraid/aacraid.c | 4 ++-- sys/dev/acpi_support/acpi_wmi.c | 2 +- sys/dev/acpica/acpi.c | 4 ++-- sys/dev/acpica/acpi_container.c | 3 ++- sys/dev/acpica/acpi_cpu.c | 2 +- sys/dev/acpica/acpi_pcib_acpi.c | 3 ++- sys/dev/adb/adb_bus.c | 2 +- sys/dev/ahci/ahci.c | 2 +- sys/dev/alpm/alpm.c | 2 +- sys/dev/amdpm/amdpm.c | 2 +- sys/dev/amdsmb/amdsmb.c | 2 +- sys/dev/ata/ata-pci.c | 2 +- sys/dev/ata/chipsets/ata-jmicron.c | 2 +- sys/dev/ata/chipsets/ata-marvell.c | 2 +- sys/dev/atkbdc/atkbdc_isa.c | 2 +- sys/dev/atopcase/atopcase.c | 3 ++- sys/dev/bhnd/bhndb/bhndb_pci.c | 3 +-- sys/dev/bhnd/cores/chipc/chipc.c | 5 ++--- sys/dev/bhnd/cores/chipc/chipc_spi.c | 3 +-- sys/dev/bhnd/cores/pci/bhnd_pci.c | 10 +--------- sys/dev/bhnd/cores/pcie2/bhnd_pcie2.c | 10 +--------- sys/dev/cfi/cfi_core.c | 2 +- sys/dev/clk/allwinner/aw_ccu.c | 3 ++- sys/dev/clk/clk_bus.c | 3 ++- sys/dev/clk/clk_fixed.c | 3 ++- sys/dev/cxgb/cxgb_main.c | 3 +-- sys/dev/cxgbe/t4_main.c | 9 ++------- sys/dev/cxgbe/t4_vf.c | 7 +------ sys/dev/dpaa/bman_portals.c | 3 ++- sys/dev/dpaa/fman.c | 3 ++- sys/dev/dpaa/qman_portals.c | 3 ++- sys/dev/dpaa2/dpaa2_mc.c | 2 +- sys/dev/dpaa2/dpaa2_rc.c | 17 +++++------------ sys/dev/dpaa2/memac_mdio_acpi.c | 2 +- sys/dev/drm2/drm_dp_iic_helper.c | 2 +- sys/dev/dwwdt/dwwdt.c | 3 ++- sys/dev/etherswitch/ar40xx/ar40xx_main.c | 2 +- sys/dev/etherswitch/arswitch/arswitch.c | 7 +------ sys/dev/etherswitch/e6000sw/e6000sw.c | 2 +- sys/dev/etherswitch/e6000sw/e6060sw.c | 4 +--- sys/dev/etherswitch/felix/felix.c | 2 +- sys/dev/etherswitch/infineon/adm6996fc.c | 4 +--- sys/dev/etherswitch/ip17x/ip17x.c | 4 +--- sys/dev/etherswitch/micrel/ksz8995ma.c | 4 +--- sys/dev/etherswitch/miiproxy.c | 13 +++++-------- sys/dev/etherswitch/mtkswitch/mtkswitch.c | 5 +---- sys/dev/etherswitch/rtl8366/rtl8366rb.c | 4 +--- sys/dev/etherswitch/ukswitch/ukswitch.c | 4 +--- sys/dev/fdc/fdc.c | 5 ++--- sys/dev/fdc/fdc_acpi.c | 3 ++- sys/dev/fdt/simple_mfd.c | 3 ++- sys/dev/fdt/simplebus.c | 3 ++- sys/dev/firewire/firewire.c | 2 +- sys/dev/firewire/fwohci_pci.c | 2 +- sys/dev/firmware/arm/scmi.c | 4 ++-- sys/dev/firmware/xilinx/zynqmp_firmware.c | 3 ++- sys/dev/flash/cqspi.c | 2 +- sys/dev/gpio/dwgpio/dwgpio_bus.c | 3 ++- sys/dev/gpio/gpiobus.c | 7 ++++--- sys/dev/gpio/gpioiic.c | 3 ++- sys/dev/gpio/gpiospi.c | 3 ++- sys/dev/gpio/ofw_gpiobus.c | 3 ++- sys/dev/hid/hidbus.c | 7 ++++--- sys/dev/hyperv/input/hv_hid.c | 4 +--- sys/dev/hyperv/pcib/vmbus_pcib.c | 2 +- sys/dev/hyperv/vmbus/vmbus.c | 2 +- sys/dev/ichiic/ig4_iic.c | 6 +----- sys/dev/ida/ida.c | 2 +- sys/dev/iicbus/controller/opencores/iicoc_pci.c | 2 +- sys/dev/iicbus/controller/rockchip/rk_i2c.c | 2 +- sys/dev/iicbus/controller/twsi/twsi.c | 2 +- sys/dev/iicbus/controller/vybrid/vf_i2c.c | 2 +- sys/dev/iicbus/iicbb.c | 2 +- sys/dev/iicbus/iicbus.c | 2 +- sys/dev/iicbus/iichid.c | 7 ++----- sys/dev/iicbus/iicsmb.c | 2 +- sys/dev/iicbus/mux/iic_gpiomux.c | 2 +- sys/dev/iicbus/mux/ltc430x.c | 2 +- sys/dev/iicbus/mux/pca9547.c | 2 +- sys/dev/iicbus/mux/pca954x.c | 2 +- sys/dev/iicbus/ofw_iicbus.c | 3 ++- sys/dev/iicbus/pmic/act8846.c | 3 ++- sys/dev/imcsmb/imcsmb.c | 5 ++--- sys/dev/imcsmb/imcsmb_pci.c | 6 ++---- sys/dev/ips/ips.c | 4 +--- sys/dev/ismt/ismt.c | 6 +----- sys/dev/mdio/mdio.c | 3 ++- sys/dev/mfi/mfi.c | 6 +++--- sys/dev/mge/if_mge.c | 2 +- sys/dev/mii/mii.c | 11 ++++------- sys/dev/mlx/mlx.c | 5 ++--- sys/dev/mmc/mmc.c | 2 +- sys/dev/msk/if_msk.c | 6 +----- sys/dev/mvs/mvs_pci.c | 2 +- sys/dev/mvs/mvs_soc.c | 2 +- sys/dev/neta/if_mvneta.c | 4 ++-- sys/dev/nfsmb/nfsmb.c | 4 ++-- sys/dev/ntb/ntb.c | 2 +- sys/dev/ntb/ntb_transport.c | 2 +- sys/dev/nvdimm/nvdimm_acpi.c | 4 +--- sys/dev/ofw/ofw_cpu.c | 6 ++++-- sys/dev/ofw/ofw_firmware.c | 3 ++- sys/dev/ofw/ofw_pcib.c | 3 ++- sys/dev/ofw/ofwbus.c | 3 ++- sys/dev/ow/ow.c | 3 ++- sys/dev/p2sb/lewisburg_gpiocm.c | 3 ++- sys/dev/p2sb/p2sb.c | 3 ++- sys/dev/pcf/pcf_isa.c | 2 +- sys/dev/pci/controller/pci_n1sdp.c | 3 ++- sys/dev/pci/hostb_pci.c | 2 +- sys/dev/pci/pci.c | 3 ++- sys/dev/pci/pci_dw_mv.c | 3 ++- sys/dev/pci/pci_host_generic_acpi.c | 3 ++- sys/dev/pci/pci_host_generic_den0115.c | 3 ++- sys/dev/pci/pci_host_generic_fdt.c | 3 ++- sys/dev/pci/pci_iov.c | 2 +- sys/dev/pci/pci_pci.c | 5 +++-- sys/dev/pci/vga_pci.c | 2 +- sys/dev/ppbus/ppbconf.c | 2 +- sys/dev/psci/psci.c | 2 +- sys/dev/psci/smccc.c | 3 ++- sys/dev/pst/pst-pci.c | 3 ++- sys/dev/pwm/controller/allwinner/aw_pwm.c | 3 ++- sys/dev/pwm/controller/rockchip/rk_pwm.c | 3 ++- sys/dev/pwm/ofw_pwmbus.c | 3 ++- sys/dev/pwm/pwmbus.c | 3 ++- sys/dev/qcom_dwc3/qcom_dwc3.c | 3 ++- sys/dev/qcom_qup/qcom_spi.c | 3 ++- sys/dev/regulator/regulator_bus.c | 3 ++- sys/dev/regulator/regulator_fixed.c | 9 ++++++--- sys/dev/sdhci/fsl_sdhci.c | 2 +- sys/dev/sdhci/sdhci_fsl_fdt.c | 3 ++- sys/dev/siis/siis.c | 2 +- sys/dev/sk/if_sk.c | 6 +----- sys/dev/smbus/smbus.c | 2 +- sys/dev/sound/pci/csa.c | 2 +- sys/dev/sound/pci/emu10kx.c | 3 ++- sys/dev/sound/pci/fm801.c | 2 +- sys/dev/sound/pci/hda/hdaa.c | 4 ++-- sys/dev/sound/pci/hda/hdac.c | 2 +- sys/dev/sound/pci/hda/hdacc.c | 2 +- sys/dev/sound/pci/hdsp.c | 3 ++- sys/dev/sound/pci/hdspe.c | 4 ++-- sys/dev/sound/usb/uaudio.c | 5 +---- sys/dev/spibus/controller/allwinner/aw_spi.c | 3 ++- sys/dev/spibus/controller/rockchip/rk_spi.c | 3 ++- sys/dev/spibus/ofw_spibus.c | 3 ++- sys/dev/spibus/spibus.c | 3 ++- sys/dev/sram/mmio_sram.c | 3 ++- sys/dev/superio/superio.c | 2 +- sys/dev/syscon/syscon_generic.c | 3 ++- sys/dev/usb/controller/dwc3/aw_dwc3.c | 3 ++- sys/dev/usb/controller/dwc3/rk_dwc3.c | 3 ++- sys/dev/usb/controller/xlnx_dwc3.c | 3 ++- sys/dev/usb/input/usbhid.c | 7 +------ sys/dev/usb/misc/cp2112.c | 2 +- sys/dev/usb/misc/i2ctinyusb.c | 2 +- sys/dev/viapm/viapm.c | 4 ++-- sys/dev/vmd/vmd.c | 3 ++- sys/dev/vnic/mrml_bridge.c | 3 ++- sys/dev/vnic/thunder_mdio_fdt.c | 3 ++- sys/dev/xen/bus/xenpv.c | 5 ++--- sys/dev/xen/pcifront/pcifront.c | 6 ++++-- sys/dev/xen/xenstore/xenstore.c | 4 ++-- sys/dev/xilinx/axi_quad_spi.c | 3 ++- sys/i386/acpica/acpi_machdep.c | 3 ++- sys/isa/isa_common.c | 7 ++++--- sys/isa/vga_isa.c | 4 ++-- sys/powerpc/mambo/mambo.c | 3 ++- sys/powerpc/mpc85xx/fsl_espi.c | 4 ++-- sys/powerpc/mpc85xx/i2c.c | 2 +- sys/powerpc/mpc85xx/lbc.c | 3 ++- sys/powerpc/ofw/ofw_pcibus.c | 3 ++- sys/powerpc/powermac/cuda.c | 3 ++- sys/powerpc/powermac/kiic.c | 3 ++- sys/powerpc/powermac/macgpio.c | 3 ++- sys/powerpc/powermac/macio.c | 3 ++- sys/powerpc/powermac/pmu.c | 3 ++- sys/powerpc/powermac/smu.c | 6 ++++-- sys/powerpc/powermac/uninorth.c | 3 ++- sys/powerpc/powernv/opal_console.c | 3 ++- sys/powerpc/powernv/opal_dev.c | 3 ++- sys/powerpc/powernv/opal_i2c.c | 3 ++- sys/powerpc/powernv/opal_i2cm.c | 3 ++- sys/powerpc/powernv/opal_sensor.c | 3 ++- sys/powerpc/powernv/powernv_centaur.c | 3 ++- sys/powerpc/powernv/powernv_xscom.c | 3 ++- sys/powerpc/powerpc/nexus.c | 2 +- sys/powerpc/ps3/ps3bus.c | 3 ++- sys/powerpc/pseries/vdevice.c | 3 ++- sys/powerpc/psim/ata_iobus.c | 3 ++- sys/powerpc/psim/iobus.c | 3 ++- sys/riscv/riscv/nexus.c | 2 +- sys/riscv/riscv/riscv_console.c | 2 +- sys/riscv/sifive/fu740_pci_dw.c | 3 ++- sys/x86/pci/pci_bus.c | 3 ++- sys/x86/pci/qpi.c | 6 ++++-- sys/x86/x86/legacy.c | 4 ++-- sys/x86/x86/mptable_pci.c | 3 ++- sys/x86/x86/nexus.c | 2 +- 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); }