aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2020-05-10 11:40:11 -0600
committerTom Rini <trini@konsulko.com>2020-05-18 21:19:23 -0400
commitc05ed00afb95fa5237f16962fccf5810437317bf (patch)
tree19bb43dd3c7d12205fffb104db7c799d0a37af9f /drivers
parent07e1114671c8b13d1bb90548a3c5ea31c49415d1 (diff)
downloadu-boot-c05ed00afb95fa5237f16962fccf5810437317bf.tar.gz
common: Drop linux/delay.h from common header
Move this uncommon header out of the common header. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/adc/adc-uclass.c1
-rw-r--r--drivers/adc/meson-saradc.c1
-rw-r--r--drivers/adc/stm32-adc.c1
-rw-r--r--drivers/ata/ahci.c1
-rw-r--r--drivers/ata/ahci_sunxi.c1
-rw-r--r--drivers/ata/dwc_ahsata.c1
-rw-r--r--drivers/ata/fsl_sata.c1
-rw-r--r--drivers/ata/mvsata_ide.c1
-rw-r--r--drivers/ata/sata_mv.c1
-rw-r--r--drivers/ata/sata_sil.c1
-rw-r--r--drivers/ata/sata_sil3114.c1
-rw-r--r--drivers/axi/ihs_axi.c1
-rw-r--r--drivers/bios_emulator/atibios.c1
-rw-r--r--drivers/block/ide.c1
-rw-r--r--drivers/clk/aspeed/clk_ast2500.c1
-rw-r--r--drivers/clk/clk-hsdk-cgu.c1
-rw-r--r--drivers/clk/imx/clk-pll14xx.c1
-rw-r--r--drivers/clk/mediatek/clk-mtk.c1
-rw-r--r--drivers/clk/meson/g12a.c1
-rw-r--r--drivers/clk/owl/clk_owl.c1
-rw-r--r--drivers/clk/rockchip/clk_pll.c1
-rw-r--r--drivers/clk/rockchip/clk_px30.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3036.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3128.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3188.c1
-rw-r--r--drivers/clk/rockchip/clk_rk322x.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3288.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3328.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3368.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3399.c1
-rw-r--r--drivers/clk/rockchip/clk_rv1108.c1
-rw-r--r--drivers/clk/sifive/fu540-prci.c1
-rw-r--r--drivers/ddr/altera/sdram_arria10.c1
-rw-r--r--drivers/ddr/fsl/arm_ddr_gen3.c1
-rw-r--r--drivers/ddr/fsl/fsl_ddr_gen4.c1
-rw-r--r--drivers/ddr/fsl/fsl_mmdc.c1
-rw-r--r--drivers/ddr/fsl/mpc85xx_ddr_gen1.c1
-rw-r--r--drivers/ddr/fsl/mpc85xx_ddr_gen2.c1
-rw-r--r--drivers/ddr/fsl/mpc85xx_ddr_gen3.c1
-rw-r--r--drivers/ddr/fsl/mpc86xx_ddr.c1
-rw-r--r--drivers/ddr/fsl/util.c1
-rw-r--r--drivers/ddr/marvell/a38x/ddr3_training.c1
-rw-r--r--drivers/ddr/marvell/a38x/ddr3_training_ip_engine.c1
-rw-r--r--drivers/ddr/marvell/a38x/ddr3_training_leveling.c1
-rw-r--r--drivers/ddr/marvell/a38x/mv_ddr_plat.c1
-rw-r--r--drivers/ddr/marvell/axp/ddr3_dfs.c1
-rw-r--r--drivers/ddr/marvell/axp/ddr3_hw_training.c1
-rw-r--r--drivers/ddr/marvell/axp/ddr3_init.c1
-rw-r--r--drivers/ddr/marvell/axp/ddr3_pbs.c1
-rw-r--r--drivers/ddr/marvell/axp/ddr3_write_leveling.c1
-rw-r--r--drivers/dma/bcm6348-iudma.c1
-rw-r--r--drivers/dma/keystone_nav.c1
-rw-r--r--drivers/dma/lpc32xx_dma.c1
-rw-r--r--drivers/firmware/psci.c1
-rw-r--r--drivers/fpga/ACEX1K.c1
-rw-r--r--drivers/fpga/cyclon2.c1
-rw-r--r--drivers/fpga/lattice.c1
-rw-r--r--drivers/fpga/socfpga_arria10.c1
-rw-r--r--drivers/fpga/stratix10.c1
-rw-r--r--drivers/fpga/stratixII.c1
-rw-r--r--drivers/fpga/stratixv.c1
-rw-r--r--drivers/fpga/virtex2.c1
-rw-r--r--drivers/fpga/zynqpl.c1
-rw-r--r--drivers/i2c/ast_i2c.c1
-rw-r--r--drivers/i2c/davinci_i2c.c1
-rw-r--r--drivers/i2c/designware_i2c.c1
-rw-r--r--drivers/i2c/exynos_hs_i2c.c1
-rw-r--r--drivers/i2c/fsl_i2c.c1
-rw-r--r--drivers/i2c/i2c-cdns.c1
-rw-r--r--drivers/i2c/i2c-gpio.c1
-rw-r--r--drivers/i2c/i2c-uclass.c1
-rw-r--r--drivers/i2c/i2c-versatile.c1
-rw-r--r--drivers/i2c/ihs_i2c.c1
-rw-r--r--drivers/i2c/kona_i2c.c1
-rw-r--r--drivers/i2c/meson_i2c.c1
-rw-r--r--drivers/i2c/muxes/i2c-arb-gpio-challenge.c1
-rw-r--r--drivers/i2c/mv_i2c.c1
-rw-r--r--drivers/i2c/mvtwsi.c1
-rw-r--r--drivers/i2c/mxc_i2c.c1
-rw-r--r--drivers/i2c/omap24xx_i2c.c1
-rw-r--r--drivers/i2c/rcar_i2c.c1
-rw-r--r--drivers/i2c/rcar_iic.c1
-rw-r--r--drivers/i2c/rk_i2c.c1
-rw-r--r--drivers/i2c/sh_i2c.c1
-rw-r--r--drivers/i2c/soft_i2c.c1
-rw-r--r--drivers/i2c/stm32f7_i2c.c1
-rw-r--r--drivers/i2c/tegra_i2c.c1
-rw-r--r--drivers/input/i8042.c1
-rw-r--r--drivers/input/tegra-kbc.c1
-rw-r--r--drivers/led/led_bcm6358.c1
-rw-r--r--drivers/misc/atsha204a-i2c.c1
-rw-r--r--drivers/misc/cros_ec.c1
-rw-r--r--drivers/misc/ds4510.c1
-rw-r--r--drivers/misc/fsl_iim.c1
-rw-r--r--drivers/misc/fsl_sec_mon.c1
-rw-r--r--drivers/misc/i2c_eeprom.c1
-rw-r--r--drivers/misc/ihs_fpga.c1
-rw-r--r--drivers/misc/mpc83xx_serdes.c1
-rw-r--r--drivers/misc/mxc_ocotp.c1
-rw-r--r--drivers/misc/mxs_ocotp.c1
-rw-r--r--drivers/mmc/arm_pl180_mmci.c1
-rw-r--r--drivers/mmc/bcm2835_sdhost.c1
-rw-r--r--drivers/mmc/davinci_mmc.c1
-rw-r--r--drivers/mmc/dw_mmc.c1
-rw-r--r--drivers/mmc/fsl_esdhc.c1
-rw-r--r--drivers/mmc/fsl_esdhc_imx.c1
-rw-r--r--drivers/mmc/gen_atmel_mci.c1
-rw-r--r--drivers/mmc/iproc_sdhci.c1
-rw-r--r--drivers/mmc/jz_mmc.c1
-rw-r--r--drivers/mmc/kona_sdhci.c1
-rw-r--r--drivers/mmc/meson_gx_mmc.c1
-rw-r--r--drivers/mmc/mmc.c1
-rw-r--r--drivers/mmc/mxsmmc.c1
-rw-r--r--drivers/mmc/omap_hsmmc.c1
-rw-r--r--drivers/mmc/pxa_mmc_gen.c1
-rw-r--r--drivers/mmc/renesas-sdhi.c1
-rw-r--r--drivers/mmc/rockchip_dw_mmc.c1
-rw-r--r--drivers/mmc/sdhci.c1
-rw-r--r--drivers/mmc/sh_mmcif.c1
-rw-r--r--drivers/mmc/sh_sdhi.c1
-rw-r--r--drivers/mmc/stm32_sdmmc2.c1
-rw-r--r--drivers/mmc/sunxi_mmc.c1
-rw-r--r--drivers/mmc/tegra_mmc.c1
-rw-r--r--drivers/mmc/tmio-common.c1
-rw-r--r--drivers/mmc/xenon_sdhci.c1
-rw-r--r--drivers/mmc/zynq_sdhci.c1
-rw-r--r--drivers/mtd/cfi_flash.c1
-rw-r--r--drivers/mtd/mw_eeprom.c1
-rw-r--r--drivers/mtd/nand/raw/am335x_spl_bch.c1
-rw-r--r--drivers/mtd/nand/raw/arasan_nfc.c1
-rw-r--r--drivers/mtd/nand/raw/atmel_nand.c1
-rw-r--r--drivers/mtd/nand/raw/denali_spl.c1
-rw-r--r--drivers/mtd/nand/raw/fsl_upm.c1
-rw-r--r--drivers/mtd/nand/raw/kmeter1_nand.c1
-rw-r--r--drivers/mtd/nand/raw/lpc32xx_nand_mlc.c1
-rw-r--r--drivers/mtd/nand/raw/mxc_nand.c1
-rw-r--r--drivers/mtd/nand/raw/mxs_nand_spl.c1
-rw-r--r--drivers/mtd/nand/raw/nand_base.c1
-rw-r--r--drivers/mtd/nand/raw/pxa3xx_nand.c1
-rw-r--r--drivers/mtd/nand/raw/stm32_fmc2_nand.c1
-rw-r--r--drivers/mtd/nand/raw/sunxi_nand.c1
-rw-r--r--drivers/mtd/nand/raw/sunxi_nand_spl.c1
-rw-r--r--drivers/mtd/nand/raw/tegra_nand.c1
-rw-r--r--drivers/mtd/nand/raw/zynq_nand.c1
-rw-r--r--drivers/mtd/spi/sf_dataflash.c1
-rw-r--r--drivers/mtd/st_smi.c1
-rw-r--r--drivers/net/ag7xxx.c1
-rw-r--r--drivers/net/armada100_fec.c1
-rw-r--r--drivers/net/at91_emac.c1
-rw-r--r--drivers/net/ax88180.c1
-rw-r--r--drivers/net/ax88796.c1
-rw-r--r--drivers/net/bcm-sf2-eth-gmac.c1
-rw-r--r--drivers/net/bcm-sf2-eth.c1
-rw-r--r--drivers/net/bcm6368-eth.c1
-rw-r--r--drivers/net/bcmgenet.c1
-rw-r--r--drivers/net/calxedaxgmac.c1
-rw-r--r--drivers/net/cs8900.c1
-rw-r--r--drivers/net/dc2114x.c1
-rw-r--r--drivers/net/designware.c1
-rw-r--r--drivers/net/dm9000x.c1
-rw-r--r--drivers/net/dnet.c1
-rw-r--r--drivers/net/dwc_eth_qos.c1
-rw-r--r--drivers/net/e1000.c1
-rw-r--r--drivers/net/e1000_spi.c1
-rw-r--r--drivers/net/eepro100.c1
-rw-r--r--drivers/net/fec_mxc.c1
-rw-r--r--drivers/net/fm/dtsec.c1
-rw-r--r--drivers/net/fm/eth.c1
-rw-r--r--drivers/net/fm/tgec.c1
-rw-r--r--drivers/net/fsl-mc/mc.c1
-rw-r--r--drivers/net/fsl-mc/mc_sys.c1
-rw-r--r--drivers/net/fsl_enetc.c1
-rw-r--r--drivers/net/fsl_mcdmafec.c1
-rw-r--r--drivers/net/ftmac100.c1
-rw-r--r--drivers/net/higmacv300.c1
-rw-r--r--drivers/net/ks8851_mll.c1
-rw-r--r--drivers/net/lan91c96.c1
-rw-r--r--drivers/net/ldpaa_eth/ldpaa_eth.c1
-rw-r--r--drivers/net/lpc32xx_eth.c1
-rw-r--r--drivers/net/macb.c1
-rw-r--r--drivers/net/mcffec.c1
-rw-r--r--drivers/net/mcfmii.c1
-rw-r--r--drivers/net/mpc8xx_fec.c1
-rw-r--r--drivers/net/mscc_eswitch/jr2_switch.c1
-rw-r--r--drivers/net/mscc_eswitch/mscc_xfer.c1
-rw-r--r--drivers/net/mt7628-eth.c1
-rw-r--r--drivers/net/mtk_eth.c1
-rw-r--r--drivers/net/mvgbe.c1
-rw-r--r--drivers/net/mvneta.c1
-rw-r--r--drivers/net/mvpp2.c1
-rw-r--r--drivers/net/natsemi.c1
-rw-r--r--drivers/net/ne2000.c1
-rw-r--r--drivers/net/ne2000_base.h1
-rw-r--r--drivers/net/ns8382x.c1
-rw-r--r--drivers/net/pch_gbe.c1
-rw-r--r--drivers/net/pcnet.c1
-rw-r--r--drivers/net/pfe_eth/pfe_cmd.c1
-rw-r--r--drivers/net/pfe_eth/pfe_driver.c1
-rw-r--r--drivers/net/pfe_eth/pfe_eth.c1
-rw-r--r--drivers/net/pfe_eth/pfe_mdio.c1
-rw-r--r--drivers/net/phy/aquantia.c1
-rw-r--r--drivers/net/phy/b53.c1
-rw-r--r--drivers/net/phy/broadcom.c1
-rw-r--r--drivers/net/phy/cortina.c1
-rw-r--r--drivers/net/phy/marvell.c1
-rw-r--r--drivers/net/phy/mv88e61xx.c1
-rw-r--r--drivers/net/phy/mv88e6352.c1
-rw-r--r--drivers/net/phy/phy.c1
-rw-r--r--drivers/net/phy/realtek.c1
-rw-r--r--drivers/net/phy/teranetics.c1
-rw-r--r--drivers/net/pic32_eth.c1
-rw-r--r--drivers/net/pic32_mdio.c1
-rw-r--r--drivers/net/ravb.c1
-rw-r--r--drivers/net/rtl8139.c1
-rw-r--r--drivers/net/rtl8169.c1
-rw-r--r--drivers/net/sh_eth.c1
-rw-r--r--drivers/net/smc91111.c1
-rw-r--r--drivers/net/smc911x.c1
-rw-r--r--drivers/net/sni_ave.c1
-rw-r--r--drivers/net/sun8i_emac.c1
-rw-r--r--drivers/net/sunxi_emac.c1
-rw-r--r--drivers/net/ti/cpsw_mdio.c1
-rw-r--r--drivers/net/ti/davinci_emac.c1
-rw-r--r--drivers/net/ti/keystone_net.c1
-rw-r--r--drivers/net/tsec.c1
-rw-r--r--drivers/net/uli526x.c1
-rw-r--r--drivers/net/vsc7385.c1
-rw-r--r--drivers/net/vsc9953.c1
-rw-r--r--drivers/net/xilinx_axi_emac.c1
-rw-r--r--drivers/net/xilinx_emaclite.c1
-rw-r--r--drivers/pci/fsl_pci_init.c1
-rw-r--r--drivers/pci/pci-aardvark.c1
-rw-r--r--drivers/pci/pci-uclass.c1
-rw-r--r--drivers/pci/pci.c1
-rw-r--r--drivers/pci/pci_sh4.c1
-rw-r--r--drivers/pci/pci_sh7751.c1
-rw-r--r--drivers/pci/pci_sh7780.c1
-rw-r--r--drivers/pci/pci_tegra.c1
-rw-r--r--drivers/pci/pcie_dw_mvebu.c1
-rw-r--r--drivers/pci/pcie_dw_ti.c1
-rw-r--r--drivers/pci/pcie_fsl.c1
-rw-r--r--drivers/pci/pcie_imx.c1
-rw-r--r--drivers/pci/pcie_intel_fpga.c1
-rw-r--r--drivers/phy/allwinner/phy-sun4i-usb.c1
-rw-r--r--drivers/phy/bcm6318-usbh-phy.c1
-rw-r--r--drivers/phy/bcm6368-usbh-phy.c1
-rw-r--r--drivers/phy/keystone-usb-phy.c1
-rw-r--r--drivers/phy/marvell/comphy_a3700.c1
-rw-r--r--drivers/phy/marvell/comphy_cp110.c1
-rw-r--r--drivers/phy/meson-g12a-usb2.c1
-rw-r--r--drivers/phy/meson-g12a-usb3-pcie.c1
-rw-r--r--drivers/phy/meson-gxl-usb2.c1
-rw-r--r--drivers/phy/mt76x8-usb-phy.c1
-rw-r--r--drivers/phy/phy-mtk-tphy.c1
-rw-r--r--drivers/phy/phy-rcar-gen2.c1
-rw-r--r--drivers/phy/phy-stm32-usbphyc.c1
-rw-r--r--drivers/phy/phy-ti-am654.c1
-rw-r--r--drivers/phy/ti-pipe3-phy.c1
-rw-r--r--drivers/pinctrl/pinctrl-stmfx.c1
-rw-r--r--drivers/power/axp209.c1
-rw-r--r--drivers/power/battery/bat_trats.c1
-rw-r--r--drivers/power/domain/meson-ee-pwrc.c1
-rw-r--r--drivers/power/domain/meson-gx-pwrc-vpu.c1
-rw-r--r--drivers/power/fuel_gauge/fg_max17042.c1
-rw-r--r--drivers/power/mt6323.c1
-rw-r--r--drivers/power/pmic/pmic_hi6553.c1
-rw-r--r--drivers/power/regulator/pbias_regulator.c1
-rw-r--r--drivers/power/regulator/regulator-uclass.c1
-rw-r--r--drivers/power/regulator/regulator_common.c1
-rw-r--r--drivers/power/regulator/s2mps11_regulator.c1
-rw-r--r--drivers/power/regulator/stpmic1.c1
-rw-r--r--drivers/power/regulator/tps65090_regulator.c1
-rw-r--r--drivers/power/regulator/tps65941_regulator.c1
-rw-r--r--drivers/power/tps6586x.c1
-rw-r--r--drivers/power/twl4030.c1
-rw-r--r--drivers/power/twl6030.c1
-rw-r--r--drivers/qe/uec.c1
-rw-r--r--drivers/qe/uec_phy.c1
-rw-r--r--drivers/ram/imxrt_sdram.c1
-rw-r--r--drivers/ram/mediatek/ddr3-mt7629.c1
-rw-r--r--drivers/ram/rockchip/dmc-rk3368.c1
-rw-r--r--drivers/ram/rockchip/sdram_pctl_px30.c1
-rw-r--r--drivers/ram/rockchip/sdram_phy_px30.c1
-rw-r--r--drivers/ram/rockchip/sdram_px30.c1
-rw-r--r--drivers/ram/rockchip/sdram_rk3188.c1
-rw-r--r--drivers/ram/rockchip/sdram_rk322x.c1
-rw-r--r--drivers/ram/rockchip/sdram_rk3288.c1
-rw-r--r--drivers/ram/rockchip/sdram_rk3328.c1
-rw-r--r--drivers/ram/rockchip/sdram_rk3399.c1
-rw-r--r--drivers/ram/stm32_sdram.c1
-rw-r--r--drivers/ram/stm32mp1/stm32mp1_ddr.c1
-rw-r--r--drivers/ram/stm32mp1/stm32mp1_tuning.c1
-rw-r--r--drivers/reset/reset-bcm6345.c1
-rw-r--r--drivers/reset/reset-imx7.c1
-rw-r--r--drivers/rng/stm32mp1_rng.c1
-rw-r--r--drivers/rtc/davinci.c1
-rw-r--r--drivers/rtc/ds1302.c1
-rw-r--r--drivers/rtc/ds1306.c1
-rw-r--r--drivers/rtc/imxdi.c1
-rw-r--r--drivers/rtc/max6900.c1
-rw-r--r--drivers/rtc/mvrtc.c1
-rw-r--r--drivers/rtc/rv3029.c1
-rw-r--r--drivers/rtc/s35392a.c1
-rw-r--r--drivers/serial/atmel_usart.c1
-rw-r--r--drivers/serial/serial-uclass.c1
-rw-r--r--drivers/serial/serial.c1
-rw-r--r--drivers/serial/serial_sh.c1
-rw-r--r--drivers/serial/serial_stm32.c1
-rw-r--r--drivers/sound/hda_codec.c1
-rw-r--r--drivers/sound/max98090.c1
-rw-r--r--drivers/sound/sound-uclass.c1
-rw-r--r--drivers/spi/cadence_qspi_apb.c1
-rw-r--r--drivers/spi/davinci_spi.c1
-rw-r--r--drivers/spi/exynos_spi.c1
-rw-r--r--drivers/spi/fsl_dspi.c1
-rw-r--r--drivers/spi/fsl_espi.c1
-rw-r--r--drivers/spi/fsl_qspi.c1
-rw-r--r--drivers/spi/ich.c1
-rw-r--r--drivers/spi/mpc8xx_spi.c1
-rw-r--r--drivers/spi/mpc8xxx_spi.c1
-rw-r--r--drivers/spi/mxc_spi.c1
-rw-r--r--drivers/spi/rk_spi.c1
-rw-r--r--drivers/spi/sh_spi.c1
-rw-r--r--drivers/spi/soft_spi.c1
-rw-r--r--drivers/spi/stm32_qspi.c1
-rw-r--r--drivers/spi/stm32_spi.c1
-rw-r--r--drivers/spi/tegra114_spi.c1
-rw-r--r--drivers/spi/tegra20_sflash.c1
-rw-r--r--drivers/spi/tegra20_slink.c1
-rw-r--r--drivers/spi/tegra210_qspi.c1
-rw-r--r--drivers/spi/uniphier_spi.c1
-rw-r--r--drivers/spi/zynq_spi.c1
-rw-r--r--drivers/sysreset/sysreset-uclass.c1
-rw-r--r--drivers/sysreset/sysreset_mpc83xx.c1
-rw-r--r--drivers/thermal/imx_scu_thermal.c1
-rw-r--r--drivers/thermal/imx_thermal.c1
-rw-r--r--drivers/timer/tsc_timer.c1
-rw-r--r--drivers/tpm/cr50_i2c.c1
-rw-r--r--drivers/tpm/tpm-uclass.c1
-rw-r--r--drivers/tpm/tpm2_tis_spi.c1
-rw-r--r--drivers/tpm/tpm_atmel_twi.c1
-rw-r--r--drivers/tpm/tpm_tis_infineon.c1
-rw-r--r--drivers/tpm/tpm_tis_lpc.c1
-rw-r--r--drivers/tpm/tpm_tis_st33zp24_i2c.c1
-rw-r--r--drivers/tpm/tpm_tis_st33zp24_spi.c1
-rw-r--r--drivers/ufs/ufs.c1
-rw-r--r--drivers/usb/cdns3/ep0.c1
-rw-r--r--drivers/usb/cdns3/gadget.c1
-rw-r--r--drivers/usb/dwc3/core.c1
-rw-r--r--drivers/usb/dwc3/dwc3-meson-g12a.c1
-rw-r--r--drivers/usb/dwc3/gadget.c1
-rw-r--r--drivers/usb/dwc3/samsung_usb_phy.c1
-rw-r--r--drivers/usb/dwc3/ti_usb_phy.c1
-rw-r--r--drivers/usb/eth/asix.c1
-rw-r--r--drivers/usb/eth/asix88179.c1
-rw-r--r--drivers/usb/eth/mcs7830.c1
-rw-r--r--drivers/usb/eth/r8152.c1
-rw-r--r--drivers/usb/eth/r8152_fw.c1
-rw-r--r--drivers/usb/eth/smsc95xx.c1
-rw-r--r--drivers/usb/gadget/bcm_udc_otg_phy.c1
-rw-r--r--drivers/usb/gadget/ci_udc.c1
-rw-r--r--drivers/usb/gadget/designware_udc.c1
-rw-r--r--drivers/usb/gadget/dwc2_udc_otg.c1
-rw-r--r--drivers/usb/gadget/dwc2_udc_otg_phy.c1
-rw-r--r--drivers/usb/gadget/f_thor.c1
-rw-r--r--drivers/usb/gadget/fotg210.c1
-rw-r--r--drivers/usb/gadget/pxa25x_udc.c1
-rw-r--r--drivers/usb/gadget/pxa27x_udc.c1
-rw-r--r--drivers/usb/host/dwc2.c1
-rw-r--r--drivers/usb/host/ehci-exynos.c1
-rw-r--r--drivers/usb/host/ehci-faraday.c1
-rw-r--r--drivers/usb/host/ehci-fsl.c1
-rw-r--r--drivers/usb/host/ehci-hcd.c1
-rw-r--r--drivers/usb/host/ehci-marvell.c1
-rw-r--r--drivers/usb/host/ehci-mx5.c1
-rw-r--r--drivers/usb/host/ehci-mx6.c1
-rw-r--r--drivers/usb/host/ehci-mxc.c1
-rw-r--r--drivers/usb/host/ehci-mxs.c1
-rw-r--r--drivers/usb/host/ehci-omap.c1
-rw-r--r--drivers/usb/host/ehci-rmobile.c1
-rw-r--r--drivers/usb/host/ehci-spear.c1
-rw-r--r--drivers/usb/host/ehci-tegra.c1
-rw-r--r--drivers/usb/host/ehci-vf.c1
-rw-r--r--drivers/usb/host/ohci-hcd.c1
-rw-r--r--drivers/usb/host/r8a66597-hcd.c1
-rw-r--r--drivers/usb/host/sl811-hcd.c1
-rw-r--r--drivers/usb/host/utmi-armada100.c1
-rw-r--r--drivers/usb/host/xhci-dwc3.c1
-rw-r--r--drivers/usb/host/xhci-exynos5.c1
-rw-r--r--drivers/usb/host/xhci.c1
-rw-r--r--drivers/usb/musb-new/am35x.c1
-rw-r--r--drivers/usb/musb-new/da8xx.c1
-rw-r--r--drivers/usb/musb-new/linux-compat.h1
-rw-r--r--drivers/usb/musb-new/mt85xx.c1
-rw-r--r--drivers/usb/musb-new/musb_uboot.c1
-rw-r--r--drivers/usb/musb-new/pic32.c1
-rw-r--r--drivers/usb/musb-new/sunxi.c1
-rw-r--r--drivers/usb/musb/am35x.c1
-rw-r--r--drivers/usb/musb/musb_hcd.c1
-rw-r--r--drivers/usb/musb/musb_udc.c1
-rw-r--r--drivers/usb/phy/omap_usb_phy.c1
-rw-r--r--drivers/usb/phy/rockchip_usb2_phy.c1
-rw-r--r--drivers/usb/phy/twl4030.c1
-rw-r--r--drivers/usb/ulpi/omap-ulpi-viewport.c1
-rw-r--r--drivers/usb/ulpi/ulpi-viewport.c1
-rw-r--r--drivers/usb/ulpi/ulpi.c1
-rw-r--r--drivers/video/am335x-fb.c1
-rw-r--r--drivers/video/anx9804.c1
-rw-r--r--drivers/video/ati_radeon_fb.c1
-rw-r--r--drivers/video/atmel_lcdfb.c1
-rw-r--r--drivers/video/bridge/anx6345.c1
-rw-r--r--drivers/video/bridge/ps862x.c1
-rw-r--r--drivers/video/bridge/video-bridge-uclass.c1
-rw-r--r--drivers/video/broadwell_igd.c1
-rw-r--r--drivers/video/da8xx-fb.c1
-rw-r--r--drivers/video/dw_hdmi.c1
-rw-r--r--drivers/video/dw_mipi_dsi.c1
-rw-r--r--drivers/video/exynos/exynos_dp.c1
-rw-r--r--drivers/video/exynos/exynos_dp_lowlevel.c1
-rw-r--r--drivers/video/exynos/exynos_mipi_dsi_common.c1
-rw-r--r--drivers/video/exynos/exynos_mipi_dsi_lowlevel.c1
-rw-r--r--drivers/video/formike.c1
-rw-r--r--drivers/video/hitachi_tx18d42vm_lcd.c1
-rw-r--r--drivers/video/imx/ipu_common.c1
-rw-r--r--drivers/video/imx/ipu_disp.c1
-rw-r--r--drivers/video/ivybridge_igd.c1
-rw-r--r--drivers/video/ld9040.c1
-rw-r--r--drivers/video/lg4573.c1
-rw-r--r--drivers/video/logicore_dp_tx.c1
-rw-r--r--drivers/video/mali_dp.c1
-rw-r--r--drivers/video/mb862xx.c1
-rw-r--r--drivers/video/mvebu_lcd.c1
-rw-r--r--drivers/video/mx3fb.c1
-rw-r--r--drivers/video/mxsfb.c1
-rw-r--r--drivers/video/orisetech_otm8009a.c1
-rw-r--r--drivers/video/pwm_backlight.c1
-rw-r--r--drivers/video/raydium-rm68200.c1
-rw-r--r--drivers/video/rockchip/rk3288_vop.c1
-rw-r--r--drivers/video/rockchip/rk_edp.c1
-rw-r--r--drivers/video/s6e8ax0.c1
-rw-r--r--drivers/video/scf0403_lcd.c1
-rw-r--r--drivers/video/ssd2828.c1
-rw-r--r--drivers/video/sunxi/lcdc.c1
-rw-r--r--drivers/video/sunxi/sunxi_display.c1
-rw-r--r--drivers/video/sunxi/sunxi_dw_hdmi.c1
-rw-r--r--drivers/video/tda19988.c1
-rw-r--r--drivers/video/tegra124/display.c1
-rw-r--r--drivers/video/tegra124/dp.c1
-rw-r--r--drivers/video/tegra124/sor.c1
-rw-r--r--drivers/virtio/virtio_pci_modern.c1
-rw-r--r--drivers/w1/mxc_w1.c1
-rw-r--r--drivers/w1/w1-gpio.c1
452 files changed, 452 insertions, 0 deletions
diff --git a/drivers/adc/adc-uclass.c b/drivers/adc/adc-uclass.c
index 0a492eba543..d4356672581 100644
--- a/drivers/adc/adc-uclass.c
+++ b/drivers/adc/adc-uclass.c
@@ -12,6 +12,7 @@
#include <dm/device-internal.h>
#include <dm/uclass-internal.h>
#include <adc.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#define ADC_UCLASS_PLATDATA_SIZE sizeof(struct adc_uclass_platdata)
diff --git a/drivers/adc/meson-saradc.c b/drivers/adc/meson-saradc.c
index f7c919d3b0a..1e1515f6e31 100644
--- a/drivers/adc/meson-saradc.c
+++ b/drivers/adc/meson-saradc.c
@@ -14,6 +14,7 @@
#include <regmap.h>
#include <errno.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/math64.h>
#include <linux/bitfield.h>
diff --git a/drivers/adc/stm32-adc.c b/drivers/adc/stm32-adc.c
index ca1ac3e757e..140ddcee3cf 100644
--- a/drivers/adc/stm32-adc.c
+++ b/drivers/adc/stm32-adc.c
@@ -10,6 +10,7 @@
#include <adc.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/iopoll.h>
#include "stm32-adc-core.h"
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 2bb45606dc7..dda3586d7c6 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -12,6 +12,7 @@
#include <blk.h>
#include <cpu_func.h>
#include <log.h>
+#include <linux/delay.h>
#include <command.h>
#include <dm.h>
diff --git a/drivers/ata/ahci_sunxi.c b/drivers/ata/ahci_sunxi.c
index 989690a33e0..58e345d9983 100644
--- a/drivers/ata/ahci_sunxi.c
+++ b/drivers/ata/ahci_sunxi.c
@@ -6,6 +6,7 @@
#include <errno.h>
#include <asm/io.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#define AHCI_PHYCS0R 0x00c0
#define AHCI_PHYCS1R 0x00c4
diff --git a/drivers/ata/dwc_ahsata.c b/drivers/ata/dwc_ahsata.c
index 7334129c0f1..562e982e32a 100644
--- a/drivers/ata/dwc_ahsata.c
+++ b/drivers/ata/dwc_ahsata.c
@@ -24,6 +24,7 @@
#include <asm/mach-imx/sata.h>
#include <linux/bitops.h>
#include <linux/ctype.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include "dwc_ahsata_priv.h"
diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c
index e8f2d36510f..8c6726a6214 100644
--- a/drivers/ata/fsl_sata.c
+++ b/drivers/ata/fsl_sata.c
@@ -18,6 +18,7 @@
#include <libata.h>
#include <fis.h>
#include <sata.h>
+#include <linux/delay.h>
#include "fsl_sata.h"
#if CONFIG_IS_ENABLED(BLK)
diff --git a/drivers/ata/mvsata_ide.c b/drivers/ata/mvsata_ide.c
index 6bbb345f6ef..41f9a91617d 100644
--- a/drivers/ata/mvsata_ide.c
+++ b/drivers/ata/mvsata_ide.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <asm/io.h>
+#include <linux/delay.h>
#if defined(CONFIG_ARCH_ORION5X)
#include <asm/arch/orion5x.h>
diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
index 4aa97eefe0d..647d8c72580 100644
--- a/drivers/ata/sata_mv.c
+++ b/drivers/ata/sata_mv.c
@@ -44,6 +44,7 @@
#include <libata.h>
#include <malloc.h>
#include <sata.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <linux/mbus.h>
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index 17db64009cb..6896fa8771b 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -17,6 +17,7 @@
#include <sata.h>
#include <libata.h>
#include <sata.h>
+#include <linux/delay.h>
#if CONFIG_IS_ENABLED(BLK)
#include <dm.h>
diff --git a/drivers/ata/sata_sil3114.c b/drivers/ata/sata_sil3114.c
index 7348566dd0b..4d3a680f17f 100644
--- a/drivers/ata/sata_sil3114.c
+++ b/drivers/ata/sata_sil3114.c
@@ -19,6 +19,7 @@
#include <ide.h>
#include <sata.h>
#include <libata.h>
+#include <linux/delay.h>
#include "sata_sil3114.h"
/* Convert sectorsize to wordsize */
diff --git a/drivers/axi/ihs_axi.c b/drivers/axi/ihs_axi.c
index d4f6a4d6b45..a4aee8b58a4 100644
--- a/drivers/axi/ihs_axi.c
+++ b/drivers/axi/ihs_axi.c
@@ -12,6 +12,7 @@
#include <dm.h>
#include <log.h>
#include <regmap.h>
+#include <linux/delay.h>
/**
* struct ihs_axi_regs - Structure for the register map of a IHS AXI device
diff --git a/drivers/bios_emulator/atibios.c b/drivers/bios_emulator/atibios.c
index d1dc35d0492..9c7f14e98f4 100644
--- a/drivers/bios_emulator/atibios.c
+++ b/drivers/bios_emulator/atibios.c
@@ -51,6 +51,7 @@
#include <log.h>
#include <malloc.h>
#include <vbe.h>
+#include <linux/delay.h>
#include "biosemui.h"
/* Length of the BIOS image */
diff --git a/drivers/block/ide.c b/drivers/block/ide.c
index 1b7fd4974ca..a766b5cf036 100644
--- a/drivers/block/ide.c
+++ b/drivers/block/ide.c
@@ -13,6 +13,7 @@
#include <part.h>
#include <watchdog.h>
#include <asm/io.h>
+#include <linux/delay.h>
#ifdef __PPC__
# define EIEIO __asm__ volatile ("eieio")
diff --git a/drivers/clk/aspeed/clk_ast2500.c b/drivers/clk/aspeed/clk_ast2500.c
index e5b07c73867..ccfeded30c5 100644
--- a/drivers/clk/aspeed/clk_ast2500.c
+++ b/drivers/clk/aspeed/clk_ast2500.c
@@ -11,6 +11,7 @@
#include <asm/arch/scu_ast2500.h>
#include <dm/lists.h>
#include <dt-bindings/clock/ast2500-scu.h>
+#include <linux/delay.h>
#include <linux/err.h>
/*
diff --git a/drivers/clk/clk-hsdk-cgu.c b/drivers/clk/clk-hsdk-cgu.c
index da50a7910d5..42844d46056 100644
--- a/drivers/clk/clk-hsdk-cgu.c
+++ b/drivers/clk/clk-hsdk-cgu.c
@@ -15,6 +15,7 @@
#include <dm.h>
#include <log.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/io.h>
#include <asm/arcregs.h>
diff --git a/drivers/clk/imx/clk-pll14xx.c b/drivers/clk/imx/clk-pll14xx.c
index 1673eb26b2c..c526fc1cce4 100644
--- a/drivers/clk/imx/clk-pll14xx.c
+++ b/drivers/clk/imx/clk-pll14xx.c
@@ -12,6 +12,7 @@
#include <dm/device.h>
#include <dm/devres.h>
#include <linux/clk-provider.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/iopoll.h>
#include <clk.h>
diff --git a/drivers/clk/mediatek/clk-mtk.c b/drivers/clk/mediatek/clk-mtk.c
index c52537cedf3..671d4b35c7a 100644
--- a/drivers/clk/mediatek/clk-mtk.c
+++ b/drivers/clk/mediatek/clk-mtk.c
@@ -11,6 +11,7 @@
#include <div64.h>
#include <dm.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/meson/g12a.c b/drivers/clk/meson/g12a.c
index c9918c17d7b..c540bb0a167 100644
--- a/drivers/clk/meson/g12a.c
+++ b/drivers/clk/meson/g12a.c
@@ -15,6 +15,7 @@
#include <syscon.h>
#include <div64.h>
#include <dt-bindings/clock/g12a-clkc.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/kernel.h>
#include "clk_meson.h"
diff --git a/drivers/clk/owl/clk_owl.c b/drivers/clk/owl/clk_owl.c
index 5607b2b7b51..11b8da15589 100644
--- a/drivers/clk/owl/clk_owl.c
+++ b/drivers/clk/owl/clk_owl.c
@@ -17,6 +17,7 @@
#include <asm/arch-owl/regs_s700.h>
#include <dt-bindings/clock/actions,s700-cmu.h>
#endif
+#include <linux/delay.h>
void owl_clk_init(struct owl_clk_priv *priv)
{
diff --git a/drivers/clk/rockchip/clk_pll.c b/drivers/clk/rockchip/clk_pll.c
index 6dab5097c1d..83d45c75ee2 100644
--- a/drivers/clk/rockchip/clk_pll.c
+++ b/drivers/clk/rockchip/clk_pll.c
@@ -12,6 +12,7 @@
#include <asm/arch-rockchip/clock.h>
#include <asm/arch-rockchip/hardware.h>
#include <div64.h>
+#include <linux/delay.h>
static struct rockchip_pll_rate_table rockchip_auto_table;
diff --git a/drivers/clk/rockchip/clk_px30.c b/drivers/clk/rockchip/clk_px30.c
index 04d85b4b6d9..b5b46e39504 100644
--- a/drivers/clk/rockchip/clk_px30.c
+++ b/drivers/clk/rockchip/clk_px30.c
@@ -17,6 +17,7 @@
#include <asm/io.h>
#include <dm/lists.h>
#include <dt-bindings/clock/px30-cru.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/clk/rockchip/clk_rk3036.c b/drivers/clk/rockchip/clk_rk3036.c
index 276965245d0..274572f70c1 100644
--- a/drivers/clk/rockchip/clk_rk3036.c
+++ b/drivers/clk/rockchip/clk_rk3036.c
@@ -16,6 +16,7 @@
#include <asm/arch-rockchip/hardware.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rk3036-cru.h>
+#include <linux/delay.h>
#include <linux/log2.h>
#include <linux/stringify.h>
diff --git a/drivers/clk/rockchip/clk_rk3128.c b/drivers/clk/rockchip/clk_rk3128.c
index 6d1974844bc..61f823e254e 100644
--- a/drivers/clk/rockchip/clk_rk3128.c
+++ b/drivers/clk/rockchip/clk_rk3128.c
@@ -17,6 +17,7 @@
#include <bitfield.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rk3128-cru.h>
+#include <linux/delay.h>
#include <linux/log2.h>
enum {
diff --git a/drivers/clk/rockchip/clk_rk3188.c b/drivers/clk/rockchip/clk_rk3188.c
index d4df8175f2e..11e3bd33cbe 100644
--- a/drivers/clk/rockchip/clk_rk3188.c
+++ b/drivers/clk/rockchip/clk_rk3188.c
@@ -22,6 +22,7 @@
#include <dm/device-internal.h>
#include <dm/lists.h>
#include <dm/uclass-internal.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/log2.h>
#include <linux/stringify.h>
diff --git a/drivers/clk/rockchip/clk_rk322x.c b/drivers/clk/rockchip/clk_rk322x.c
index 68c1fbdc421..912e1f6e92e 100644
--- a/drivers/clk/rockchip/clk_rk322x.c
+++ b/drivers/clk/rockchip/clk_rk322x.c
@@ -16,6 +16,7 @@
#include <asm/arch-rockchip/hardware.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rk3228-cru.h>
+#include <linux/delay.h>
#include <linux/log2.h>
#include <linux/stringify.h>
diff --git a/drivers/clk/rockchip/clk_rk3288.c b/drivers/clk/rockchip/clk_rk3288.c
index b4514bc850f..3b199bbb869 100644
--- a/drivers/clk/rockchip/clk_rk3288.c
+++ b/drivers/clk/rockchip/clk_rk3288.c
@@ -23,6 +23,7 @@
#include <dm/device-internal.h>
#include <dm/lists.h>
#include <dm/uclass-internal.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/log2.h>
#include <linux/stringify.h>
diff --git a/drivers/clk/rockchip/clk_rk3328.c b/drivers/clk/rockchip/clk_rk3328.c
index 28613a971d4..6d692ec8b70 100644
--- a/drivers/clk/rockchip/clk_rk3328.c
+++ b/drivers/clk/rockchip/clk_rk3328.c
@@ -18,6 +18,7 @@
#include <asm/io.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rk3328-cru.h>
+#include <linux/delay.h>
struct pll_div {
u32 refdiv;
diff --git a/drivers/clk/rockchip/clk_rk3368.c b/drivers/clk/rockchip/clk_rk3368.c
index 34466b8e260..d1804c6e168 100644
--- a/drivers/clk/rockchip/clk_rk3368.c
+++ b/drivers/clk/rockchip/clk_rk3368.c
@@ -21,6 +21,7 @@
#include <asm/io.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rk3368-cru.h>
+#include <linux/delay.h>
#include <linux/stringify.h>
#if CONFIG_IS_ENABLED(OF_PLATDATA)
diff --git a/drivers/clk/rockchip/clk_rk3399.c b/drivers/clk/rockchip/clk_rk3399.c
index dd2834f9d6b..2c58814b70d 100644
--- a/drivers/clk/rockchip/clk_rk3399.c
+++ b/drivers/clk/rockchip/clk_rk3399.c
@@ -20,6 +20,7 @@
#include <asm/arch-rockchip/hardware.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rk3399-cru.h>
+#include <linux/delay.h>
#if CONFIG_IS_ENABLED(OF_PLATDATA)
struct rk3399_clk_plat {
diff --git a/drivers/clk/rockchip/clk_rv1108.c b/drivers/clk/rockchip/clk_rv1108.c
index c1d2724f20a..aa1d98ca2a2 100644
--- a/drivers/clk/rockchip/clk_rv1108.c
+++ b/drivers/clk/rockchip/clk_rv1108.c
@@ -18,6 +18,7 @@
#include <asm/arch-rockchip/hardware.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rv1108-cru.h>
+#include <linux/delay.h>
#include <linux/stringify.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/clk/sifive/fu540-prci.c b/drivers/clk/sifive/fu540-prci.c
index 8847178001b..67e21b6746d 100644
--- a/drivers/clk/sifive/fu540-prci.c
+++ b/drivers/clk/sifive/fu540-prci.c
@@ -35,6 +35,7 @@
#include <div64.h>
#include <dm.h>
#include <errno.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/math64.h>
diff --git a/drivers/ddr/altera/sdram_arria10.c b/drivers/ddr/altera/sdram_arria10.c
index 7e8c0154e54..19d5724a606 100644
--- a/drivers/ddr/altera/sdram_arria10.c
+++ b/drivers/ddr/altera/sdram_arria10.c
@@ -18,6 +18,7 @@
#include <asm/arch/misc.h>
#include <asm/arch/reset_manager.h>
#include <asm/arch/sdram.h>
+#include <linux/delay.h>
#include <linux/kernel.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/ddr/fsl/arm_ddr_gen3.c b/drivers/ddr/fsl/arm_ddr_gen3.c
index abe8c11d141..629ba6784e0 100644
--- a/drivers/ddr/fsl/arm_ddr_gen3.c
+++ b/drivers/ddr/fsl/arm_ddr_gen3.c
@@ -13,6 +13,7 @@
#include <fsl_immap.h>
#include <fsl_ddr.h>
#include <asm/arch/clock.h>
+#include <linux/delay.h>
#if (CONFIG_CHIP_SELECTS_PER_CTRL > 4)
#error Invalid setting for CONFIG_CHIP_SELECTS_PER_CTRL
diff --git a/drivers/ddr/fsl/fsl_ddr_gen4.c b/drivers/ddr/fsl/fsl_ddr_gen4.c
index 2b8475fcd16..eab5b82b239 100644
--- a/drivers/ddr/fsl/fsl_ddr_gen4.c
+++ b/drivers/ddr/fsl/fsl_ddr_gen4.c
@@ -16,6 +16,7 @@
defined(CONFIG_ARM)
#include <asm/arch/clock.h>
#endif
+#include <linux/delay.h>
#define CTLR_INTLV_MASK 0x20000000
diff --git a/drivers/ddr/fsl/fsl_mmdc.c b/drivers/ddr/fsl/fsl_mmdc.c
index 08285120ca5..cbd625b7eea 100644
--- a/drivers/ddr/fsl/fsl_mmdc.c
+++ b/drivers/ddr/fsl/fsl_mmdc.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <fsl_mmdc.h>
#include <asm/io.h>
+#include <linux/delay.h>
static void set_wait_for_bits_clear(void *ptr, u32 value, u32 bits)
{
diff --git a/drivers/ddr/fsl/mpc85xx_ddr_gen1.c b/drivers/ddr/fsl/mpc85xx_ddr_gen1.c
index 4b39b17f72d..572f3703d51 100644
--- a/drivers/ddr/fsl/mpc85xx_ddr_gen1.c
+++ b/drivers/ddr/fsl/mpc85xx_ddr_gen1.c
@@ -7,6 +7,7 @@
#include <log.h>
#include <asm/io.h>
#include <fsl_ddr_sdram.h>
+#include <linux/delay.h>
#if (CONFIG_CHIP_SELECTS_PER_CTRL > 4)
#error Invalid setting for CONFIG_CHIP_SELECTS_PER_CTRL
diff --git a/drivers/ddr/fsl/mpc85xx_ddr_gen2.c b/drivers/ddr/fsl/mpc85xx_ddr_gen2.c
index 54c10a860aa..d7b8064e5f1 100644
--- a/drivers/ddr/fsl/mpc85xx_ddr_gen2.c
+++ b/drivers/ddr/fsl/mpc85xx_ddr_gen2.c
@@ -7,6 +7,7 @@
#include <asm/io.h>
#include <asm/processor.h>
#include <fsl_ddr_sdram.h>
+#include <linux/delay.h>
#if (CONFIG_CHIP_SELECTS_PER_CTRL > 4)
#error Invalid setting for CONFIG_CHIP_SELECTS_PER_CTRL
diff --git a/drivers/ddr/fsl/mpc85xx_ddr_gen3.c b/drivers/ddr/fsl/mpc85xx_ddr_gen3.c
index c6e983b5b4f..ab8d2deaf9f 100644
--- a/drivers/ddr/fsl/mpc85xx_ddr_gen3.c
+++ b/drivers/ddr/fsl/mpc85xx_ddr_gen3.c
@@ -8,6 +8,7 @@
#include <asm/io.h>
#include <fsl_ddr_sdram.h>
#include <asm/processor.h>
+#include <linux/delay.h>
#if (CONFIG_CHIP_SELECTS_PER_CTRL > 4)
#error Invalid setting for CONFIG_CHIP_SELECTS_PER_CTRL
diff --git a/drivers/ddr/fsl/mpc86xx_ddr.c b/drivers/ddr/fsl/mpc86xx_ddr.c
index 737a879e938..43ed1ba432d 100644
--- a/drivers/ddr/fsl/mpc86xx_ddr.c
+++ b/drivers/ddr/fsl/mpc86xx_ddr.c
@@ -7,6 +7,7 @@
#include <log.h>
#include <asm/io.h>
#include <fsl_ddr_sdram.h>
+#include <linux/delay.h>
#if (CONFIG_CHIP_SELECTS_PER_CTRL > 4)
#error Invalid setting for CONFIG_CHIP_SELECTS_PER_CTRL
diff --git a/drivers/ddr/fsl/util.c b/drivers/ddr/fsl/util.c
index 7d6e08d3d16..ac4f8d2732d 100644
--- a/drivers/ddr/fsl/util.c
+++ b/drivers/ddr/fsl/util.c
@@ -8,6 +8,7 @@
#include <asm/fsl_law.h>
#endif
#include <div64.h>
+#include <linux/delay.h>
#include <fsl_ddr.h>
#include <fsl_immap.h>
diff --git a/drivers/ddr/marvell/a38x/ddr3_training.c b/drivers/ddr/marvell/a38x/ddr3_training.c
index 8d7ac79b28d..34cc1709103 100644
--- a/drivers/ddr/marvell/a38x/ddr3_training.c
+++ b/drivers/ddr/marvell/a38x/ddr3_training.c
@@ -8,6 +8,7 @@
#include "mv_ddr_training_db.h"
#include "mv_ddr_regs.h"
#include <log.h>
+#include <linux/delay.h>
#define GET_CS_FROM_MASK(mask) (cs_mask2_num[mask])
#define CS_CBE_VALUE(cs_num) (cs_cbe_reg[cs_num])
diff --git a/drivers/ddr/marvell/a38x/ddr3_training_ip_engine.c b/drivers/ddr/marvell/a38x/ddr3_training_ip_engine.c
index 1eababeebd1..979f3530b79 100644
--- a/drivers/ddr/marvell/a38x/ddr3_training_ip_engine.c
+++ b/drivers/ddr/marvell/a38x/ddr3_training_ip_engine.c
@@ -7,6 +7,7 @@
#include "mv_ddr_regs.h"
#include "ddr_training_ip_db.h"
#include <image.h>
+#include <linux/delay.h>
#define PATTERN_1 0x55555555
#define PATTERN_2 0xaaaaaaaa
diff --git a/drivers/ddr/marvell/a38x/ddr3_training_leveling.c b/drivers/ddr/marvell/a38x/ddr3_training_leveling.c
index 7f7df6794a9..dadb06b3181 100644
--- a/drivers/ddr/marvell/a38x/ddr3_training_leveling.c
+++ b/drivers/ddr/marvell/a38x/ddr3_training_leveling.c
@@ -7,6 +7,7 @@
#include "mv_ddr_training_db.h"
#include "ddr_training_ip_db.h"
#include "mv_ddr_regs.h"
+#include <linux/delay.h>
#define WL_ITERATION_NUM 10
diff --git a/drivers/ddr/marvell/a38x/mv_ddr_plat.c b/drivers/ddr/marvell/a38x/mv_ddr_plat.c
index cc7942d0ba3..72f0dfbbbb1 100644
--- a/drivers/ddr/marvell/a38x/mv_ddr_plat.c
+++ b/drivers/ddr/marvell/a38x/mv_ddr_plat.c
@@ -7,6 +7,7 @@
#include "mv_ddr_training_db.h"
#include "mv_ddr_regs.h"
#include "mv_ddr_sys_env_lib.h"
+#include <linux/delay.h>
#define DDR_INTERFACES_NUM 1
#define DDR_INTERFACE_OCTETS_NUM 5
diff --git a/drivers/ddr/marvell/axp/ddr3_dfs.c b/drivers/ddr/marvell/axp/ddr3_dfs.c
index ba899592f88..b58c0fe01e5 100644
--- a/drivers/ddr/marvell/axp/ddr3_dfs.c
+++ b/drivers/ddr/marvell/axp/ddr3_dfs.c
@@ -9,6 +9,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/delay.h>
#include "ddr3_hw_training.h"
diff --git a/drivers/ddr/marvell/axp/ddr3_hw_training.c b/drivers/ddr/marvell/axp/ddr3_hw_training.c
index 9dc911c3355..35d98faf58f 100644
--- a/drivers/ddr/marvell/axp/ddr3_hw_training.c
+++ b/drivers/ddr/marvell/axp/ddr3_hw_training.c
@@ -10,6 +10,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/delay.h>
#include "ddr3_init.h"
#include "ddr3_hw_training.h"
diff --git a/drivers/ddr/marvell/axp/ddr3_init.c b/drivers/ddr/marvell/axp/ddr3_init.c
index 8e6d44708f5..607f3e12c3a 100644
--- a/drivers/ddr/marvell/axp/ddr3_init.c
+++ b/drivers/ddr/marvell/axp/ddr3_init.c
@@ -10,6 +10,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/delay.h>
#include "ddr3_init.h"
diff --git a/drivers/ddr/marvell/axp/ddr3_pbs.c b/drivers/ddr/marvell/axp/ddr3_pbs.c
index e44f08d26ac..069a42fbf5e 100644
--- a/drivers/ddr/marvell/axp/ddr3_pbs.c
+++ b/drivers/ddr/marvell/axp/ddr3_pbs.c
@@ -9,6 +9,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/delay.h>
#include "ddr3_hw_training.h"
diff --git a/drivers/ddr/marvell/axp/ddr3_write_leveling.c b/drivers/ddr/marvell/axp/ddr3_write_leveling.c
index 20614894e1c..d4add447774 100644
--- a/drivers/ddr/marvell/axp/ddr3_write_leveling.c
+++ b/drivers/ddr/marvell/axp/ddr3_write_leveling.c
@@ -10,6 +10,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/delay.h>
#include "ddr3_hw_training.h"
diff --git a/drivers/dma/bcm6348-iudma.c b/drivers/dma/bcm6348-iudma.c
index cce0c611a8d..9e0e82520e7 100644
--- a/drivers/dma/bcm6348-iudma.c
+++ b/drivers/dma/bcm6348-iudma.c
@@ -26,6 +26,7 @@
#include <net.h>
#include <reset.h>
#include <asm/io.h>
+#include <linux/delay.h>
#define DMA_RX_DESC 6
#define DMA_TX_DESC 1
diff --git a/drivers/dma/keystone_nav.c b/drivers/dma/keystone_nav.c
index 3a151212004..443e4b23669 100644
--- a/drivers/dma/keystone_nav.c
+++ b/drivers/dma/keystone_nav.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <asm/io.h>
#include <asm/ti-common/keystone_nav.h>
+#include <linux/delay.h>
struct qm_config qm_memmap = {
.stat_cfg = CONFIG_KSNAV_QM_QUEUE_STATUS_BASE,
diff --git a/drivers/dma/lpc32xx_dma.c b/drivers/dma/lpc32xx_dma.c
index 1637e329df8..de963347f11 100644
--- a/drivers/dma/lpc32xx_dma.c
+++ b/drivers/dma/lpc32xx_dma.c
@@ -15,6 +15,7 @@
#include <asm/arch/clk.h>
#include <asm/arch/sys_proto.h>
#include <asm/io.h>
+#include <linux/delay.h>
/* DMA controller channel register structure */
struct dmac_chan_reg {
diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
index 1dc179ad4d1..e0d66d74f54 100644
--- a/drivers/firmware/psci.c
+++ b/drivers/firmware/psci.c
@@ -13,6 +13,7 @@
#include <log.h>
#include <dm/lists.h>
#include <efi_loader.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <linux/arm-smccc.h>
#include <linux/errno.h>
diff --git a/drivers/fpga/ACEX1K.c b/drivers/fpga/ACEX1K.c
index 5afd42a97b6..aca8049c56a 100644
--- a/drivers/fpga/ACEX1K.c
+++ b/drivers/fpga/ACEX1K.c
@@ -10,6 +10,7 @@
#include <common.h> /* core U-Boot definitions */
#include <console.h>
#include <ACEX1K.h> /* ACEX device family */
+#include <linux/delay.h>
/* Define FPGA_DEBUG to get debug printf's */
#ifdef FPGA_DEBUG
diff --git a/drivers/fpga/cyclon2.c b/drivers/fpga/cyclon2.c
index c929cd2cc51..3b008facb8c 100644
--- a/drivers/fpga/cyclon2.c
+++ b/drivers/fpga/cyclon2.c
@@ -8,6 +8,7 @@
#include <common.h> /* core U-Boot definitions */
#include <altera.h>
#include <ACEX1K.h> /* ACEX device family */
+#include <linux/delay.h>
/* Define FPGA_DEBUG to get debug printf's */
#ifdef FPGA_DEBUG
diff --git a/drivers/fpga/lattice.c b/drivers/fpga/lattice.c
index 2cf4a602d74..e292d991cd1 100644
--- a/drivers/fpga/lattice.c
+++ b/drivers/fpga/lattice.c
@@ -15,6 +15,7 @@
#include <malloc.h>
#include <fpga.h>
#include <lattice.h>
+#include <linux/delay.h>
static lattice_board_specific_func *pfns;
static const char *fpga_image;
diff --git a/drivers/fpga/socfpga_arria10.c b/drivers/fpga/socfpga_arria10.c
index 272f6d5e5fe..e14204633e7 100644
--- a/drivers/fpga/socfpga_arria10.c
+++ b/drivers/fpga/socfpga_arria10.c
@@ -18,6 +18,7 @@
#include <fs_loader.h>
#include <wait_bit.h>
#include <watchdog.h>
+#include <linux/delay.h>
#define CFGWDTH_32 1
#define MIN_BITSTREAM_SIZECHECK 230
diff --git a/drivers/fpga/stratix10.c b/drivers/fpga/stratix10.c
index 802051069e0..da8fa315e36 100644
--- a/drivers/fpga/stratix10.c
+++ b/drivers/fpga/stratix10.c
@@ -7,6 +7,7 @@
#include <altera.h>
#include <log.h>
#include <asm/arch/mailbox_s10.h>
+#include <linux/delay.h>
#define RECONFIG_STATUS_POLL_RESP_TIMEOUT_MS 60000
#define RECONFIG_STATUS_INTERVAL_DELAY_US 1000000
diff --git a/drivers/fpga/stratixII.c b/drivers/fpga/stratixII.c
index 4edbfe4ba87..b450a81072e 100644
--- a/drivers/fpga/stratixII.c
+++ b/drivers/fpga/stratixII.c
@@ -6,6 +6,7 @@
#include <common.h> /* core U-Boot definitions */
#include <altera.h>
+#include <linux/delay.h>
int StratixII_ps_fpp_load (Altera_desc * desc, void *buf, size_t bsize,
int isSerial, int isSecure);
diff --git a/drivers/fpga/stratixv.c b/drivers/fpga/stratixv.c
index 650b1b136eb..abae3b5b751 100644
--- a/drivers/fpga/stratixv.c
+++ b/drivers/fpga/stratixv.c
@@ -8,6 +8,7 @@
#include <log.h>
#include <spi.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
/* Write the RBF data to FPGA via SPI */
diff --git a/drivers/fpga/virtex2.c b/drivers/fpga/virtex2.c
index 395736875f6..b3e0537bab0 100644
--- a/drivers/fpga/virtex2.c
+++ b/drivers/fpga/virtex2.c
@@ -15,6 +15,7 @@
#include <common.h>
#include <console.h>
#include <virtex2.h>
+#include <linux/delay.h>
#if 0
#define FPGA_DEBUG
diff --git a/drivers/fpga/zynqpl.c b/drivers/fpga/zynqpl.c
index e9bf3a61803..dcfe513eeb3 100644
--- a/drivers/fpga/zynqpl.c
+++ b/drivers/fpga/zynqpl.c
@@ -14,6 +14,7 @@
#include <asm/io.h>
#include <fs.h>
#include <zynqpl.h>
+#include <linux/delay.h>
#include <linux/sizes.h>
#include <asm/arch/hardware.h>
#include <asm/arch/sys_proto.h>
diff --git a/drivers/i2c/ast_i2c.c b/drivers/i2c/ast_i2c.c
index 9e6dc02b61d..214362d04bb 100644
--- a/drivers/i2c/ast_i2c.c
+++ b/drivers/i2c/ast_i2c.c
@@ -14,6 +14,7 @@
#include <log.h>
#include <asm/io.h>
#include <asm/arch/scu_ast2500.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include "ast_i2c.h"
diff --git a/drivers/i2c/davinci_i2c.c b/drivers/i2c/davinci_i2c.c
index f41ea01b10f..f8e9d003e61 100644
--- a/drivers/i2c/davinci_i2c.c
+++ b/drivers/i2c/davinci_i2c.c
@@ -18,6 +18,7 @@
#include <asm/arch/hardware.h>
#include <asm/arch/i2c_defs.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "davinci_i2c.h"
#ifdef CONFIG_DM_I2C
diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c
index 4c4b5e17ca9..42ee7d523e3 100644
--- a/drivers/i2c/designware_i2c.c
+++ b/drivers/i2c/designware_i2c.c
@@ -13,6 +13,7 @@
#include <pci.h>
#include <reset.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "designware_i2c.h"
#include <dm/device_compat.h>
#include <linux/err.h>
diff --git a/drivers/i2c/exynos_hs_i2c.c b/drivers/i2c/exynos_hs_i2c.c
index 59fc9a3c091..4fc9d90580c 100644
--- a/drivers/i2c/exynos_hs_i2c.c
+++ b/drivers/i2c/exynos_hs_i2c.c
@@ -13,6 +13,7 @@
#include <asm/arch/clk.h>
#include <asm/arch/cpu.h>
#include <asm/arch/pinmux.h>
+#include <linux/delay.h>
#include "s3c24x0_i2c.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/i2c/fsl_i2c.c b/drivers/i2c/fsl_i2c.c
index 7e3c75b610e..da933452f51 100644
--- a/drivers/i2c/fsl_i2c.c
+++ b/drivers/i2c/fsl_i2c.c
@@ -16,6 +16,7 @@
#include <clk.h>
#include <dm.h>
#include <mapmem.h>
+#include <linux/delay.h>
/* The maximum number of microseconds we will wait until another master has
* released the bus. If not defined in the board header file, then use a
diff --git a/drivers/i2c/i2c-cdns.c b/drivers/i2c/i2c-cdns.c
index 642df972e5f..402a664876d 100644
--- a/drivers/i2c/i2c-cdns.c
+++ b/drivers/i2c/i2c-cdns.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <dm.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/types.h>
#include <linux/io.h>
#include <linux/errno.h>
diff --git a/drivers/i2c/i2c-gpio.c b/drivers/i2c/i2c-gpio.c
index 900017ad04e..cfdeadc752c 100644
--- a/drivers/i2c/i2c-gpio.c
+++ b/drivers/i2c/i2c-gpio.c
@@ -11,6 +11,7 @@
#include <i2c.h>
#include <log.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#define DEFAULT_UDELAY 5
#define RETRIES 0
diff --git a/drivers/i2c/i2c-uclass.c b/drivers/i2c/i2c-uclass.c
index 32aed921b70..8166df7ba63 100644
--- a/drivers/i2c/i2c-uclass.c
+++ b/drivers/i2c/i2c-uclass.c
@@ -15,6 +15,7 @@
#if CONFIG_IS_ENABLED(DM_GPIO)
#include <asm/gpio.h>
#endif
+#include <linux/delay.h>
#define I2C_MAX_OFFSET_LEN 4
diff --git a/drivers/i2c/i2c-versatile.c b/drivers/i2c/i2c-versatile.c
index f523844204a..46eb017ea0d 100644
--- a/drivers/i2c/i2c-versatile.c
+++ b/drivers/i2c/i2c-versatile.c
@@ -11,6 +11,7 @@
#include <i2c.h>
#include <asm/io.h>
#include <clk.h>
+#include <linux/delay.h>
#include <linux/io.h>
#define I2C_CONTROL_REG 0x00
diff --git a/drivers/i2c/ihs_i2c.c b/drivers/i2c/ihs_i2c.c
index 674561b4ad7..296e01b41cb 100644
--- a/drivers/i2c/ihs_i2c.c
+++ b/drivers/i2c/ihs_i2c.c
@@ -14,6 +14,7 @@
#endif
#include <log.h>
#include <asm/unaligned.h>
+#include <linux/delay.h>
#ifdef CONFIG_DM_I2C
struct ihs_i2c_priv {
diff --git a/drivers/i2c/kona_i2c.c b/drivers/i2c/kona_i2c.c
index 61c40459590..4edcba29110 100644
--- a/drivers/i2c/kona_i2c.c
+++ b/drivers/i2c/kona_i2c.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/arch/sysmap.h>
#include <asm/kona-common/clk.h>
diff --git a/drivers/i2c/meson_i2c.c b/drivers/i2c/meson_i2c.c
index 2eb1eba642e..0a647b8f73c 100644
--- a/drivers/i2c/meson_i2c.c
+++ b/drivers/i2c/meson_i2c.c
@@ -8,6 +8,7 @@
#include <clk.h>
#include <dm.h>
#include <i2c.h>
+#include <linux/delay.h>
#include <linux/err.h>
#define I2C_TIMEOUT_MS 100
diff --git a/drivers/i2c/muxes/i2c-arb-gpio-challenge.c b/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
index 07600c5022d..584d0a4fef1 100644
--- a/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
+++ b/drivers/i2c/muxes/i2c-arb-gpio-challenge.c
@@ -11,6 +11,7 @@
#include <log.h>
#include <malloc.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/i2c/mv_i2c.c b/drivers/i2c/mv_i2c.c
index 88b62959d34..59675d8d574 100644
--- a/drivers/i2c/mv_i2c.c
+++ b/drivers/i2c/mv_i2c.c
@@ -21,6 +21,7 @@
#include <i2c.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "mv_i2c.h"
/* All transfers are described by this data structure */
diff --git a/drivers/i2c/mvtwsi.c b/drivers/i2c/mvtwsi.c
index bd94ad256c5..d3cc9b9d838 100644
--- a/drivers/i2c/mvtwsi.c
+++ b/drivers/i2c/mvtwsi.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <i2c.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <linux/bitops.h>
diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c
index 66a90e42586..3b0d27e6cdb 100644
--- a/drivers/i2c/mxc_i2c.c
+++ b/drivers/i2c/mxc_i2c.c
@@ -18,6 +18,7 @@
#include <asm/arch/clock.h>
#include <asm/arch/imx-regs.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/mach-imx/mxc_i2c.h>
#include <asm/mach-imx/sys_proto.h>
diff --git a/drivers/i2c/omap24xx_i2c.c b/drivers/i2c/omap24xx_i2c.c
index d5be824de89..8592a819c40 100644
--- a/drivers/i2c/omap24xx_i2c.c
+++ b/drivers/i2c/omap24xx_i2c.c
@@ -42,6 +42,7 @@
#include <dm.h>
#include <i2c.h>
#include <log.h>
+#include <linux/delay.h>
#include <asm/io.h>
#include <asm/omap_i2c.h>
diff --git a/drivers/i2c/rcar_i2c.c b/drivers/i2c/rcar_i2c.c
index b877602aab6..5a902047bc9 100644
--- a/drivers/i2c/rcar_i2c.c
+++ b/drivers/i2c/rcar_i2c.c
@@ -18,6 +18,7 @@
#include <asm/io.h>
#include <wait_bit.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#define RCAR_I2C_ICSCR 0x00 /* slave ctrl */
#define RCAR_I2C_ICMCR 0x04 /* master ctrl */
diff --git a/drivers/i2c/rcar_iic.c b/drivers/i2c/rcar_iic.c
index 2a82eb0b764..6b21f6a5326 100644
--- a/drivers/i2c/rcar_iic.c
+++ b/drivers/i2c/rcar_iic.c
@@ -14,6 +14,7 @@
#include <dm.h>
#include <i2c.h>
#include <asm/io.h>
+#include <linux/delay.h>
struct rcar_iic_priv {
void __iomem *base;
diff --git a/drivers/i2c/rk_i2c.c b/drivers/i2c/rk_i2c.c
index 703d9a1c7a0..fa6f69f400c 100644
--- a/drivers/i2c/rk_i2c.c
+++ b/drivers/i2c/rk_i2c.c
@@ -17,6 +17,7 @@
#include <asm/arch-rockchip/i2c.h>
#include <asm/arch-rockchip/periph.h>
#include <dm/pinctrl.h>
+#include <linux/delay.h>
#include <linux/sizes.h>
/* i2c timerout */
diff --git a/drivers/i2c/sh_i2c.c b/drivers/i2c/sh_i2c.c
index 5cc5095666d..f857307e6a4 100644
--- a/drivers/i2c/sh_i2c.c
+++ b/drivers/i2c/sh_i2c.c
@@ -11,6 +11,7 @@
#include <i2c.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/i2c/soft_i2c.c b/drivers/i2c/soft_i2c.c
index 9ad1c281ff2..1031066b8c4 100644
--- a/drivers/i2c/soft_i2c.c
+++ b/drivers/i2c/soft_i2c.c
@@ -25,6 +25,7 @@
#endif
#endif
#include <i2c.h>
+#include <linux/delay.h>
#if defined(CONFIG_SOFT_I2C_GPIO_SCL)
# include <asm/gpio.h>
diff --git a/drivers/i2c/stm32f7_i2c.c b/drivers/i2c/stm32f7_i2c.c
index 4adac498d05..18affd08e36 100644
--- a/drivers/i2c/stm32f7_i2c.c
+++ b/drivers/i2c/stm32f7_i2c.c
@@ -9,6 +9,7 @@
#include <i2c.h>
#include <log.h>
#include <reset.h>
+#include <linux/delay.h>
#include <dm/device.h>
#include <linux/err.h>
diff --git a/drivers/i2c/tegra_i2c.c b/drivers/i2c/tegra_i2c.c
index 09c0be9dcd4..65b3734348b 100644
--- a/drivers/i2c/tegra_i2c.c
+++ b/drivers/i2c/tegra_i2c.c
@@ -19,6 +19,7 @@
#endif
#include <asm/arch/gpio.h>
#include <asm/arch-tegra/tegra_i2c.h>
+#include <linux/delay.h>
#include <linux/err.h>
enum i2c_type {
diff --git a/drivers/input/i8042.c b/drivers/input/i8042.c
index cfd8dc64150..7beaccca2c8 100644
--- a/drivers/input/i8042.c
+++ b/drivers/input/i8042.c
@@ -15,6 +15,7 @@
#include <keyboard.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/input/tegra-kbc.c b/drivers/input/tegra-kbc.c
index 40ebb2497b1..3409bb61d54 100644
--- a/drivers/input/tegra-kbc.c
+++ b/drivers/input/tegra-kbc.c
@@ -17,6 +17,7 @@
#include <asm/arch/clock.h>
#include <asm/arch/funcmux.h>
#include <asm/arch-tegra/timer.h>
+#include <linux/delay.h>
#include <linux/input.h>
enum {
diff --git a/drivers/led/led_bcm6358.c b/drivers/led/led_bcm6358.c
index 56c3d146a54..307d418a178 100644
--- a/drivers/led/led_bcm6358.c
+++ b/drivers/led/led_bcm6358.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <asm/io.h>
#include <dm/lists.h>
+#include <linux/delay.h>
#define LEDS_MAX 32
#define LEDS_WAIT 100
diff --git a/drivers/misc/atsha204a-i2c.c b/drivers/misc/atsha204a-i2c.c
index 8e0b41e3460..422ea6f3e5a 100644
--- a/drivers/misc/atsha204a-i2c.c
+++ b/drivers/misc/atsha204a-i2c.c
@@ -16,6 +16,7 @@
#include <errno.h>
#include <atsha204a-i2c.h>
#include <log.h>
+#include <linux/delay.h>
#include <u-boot/crc.h>
#define ATSHA204A_TWLO 60
diff --git a/drivers/misc/cros_ec.c b/drivers/misc/cros_ec.c
index 818ad56a0dc..a5534b16673 100644
--- a/drivers/misc/cros_ec.c
+++ b/drivers/misc/cros_ec.c
@@ -25,6 +25,7 @@
#include <log.h>
#include <malloc.h>
#include <spi.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm-generic/gpio.h>
diff --git a/drivers/misc/ds4510.c b/drivers/misc/ds4510.c
index 0b37e8a4e41..a2a52915654 100644
--- a/drivers/misc/ds4510.c
+++ b/drivers/misc/ds4510.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <i2c.h>
#include <command.h>
+#include <linux/delay.h>
#include "ds4510.h"
enum {
diff --git a/drivers/misc/fsl_iim.c b/drivers/misc/fsl_iim.c
index f8075db8d5e..85cc3c26b2e 100644
--- a/drivers/misc/fsl_iim.c
+++ b/drivers/misc/fsl_iim.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <fuse.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
diff --git a/drivers/misc/fsl_sec_mon.c b/drivers/misc/fsl_sec_mon.c
index e9f351dc3aa..321bd27fd32 100644
--- a/drivers/misc/fsl_sec_mon.c
+++ b/drivers/misc/fsl_sec_mon.c
@@ -5,6 +5,7 @@
#include <common.h>
#include <fsl_sec_mon.h>
+#include <linux/delay.h>
static u32 get_sec_mon_state(void)
{
diff --git a/drivers/misc/i2c_eeprom.c b/drivers/misc/i2c_eeprom.c
index ef5f103c98e..ed23a623846 100644
--- a/drivers/misc/i2c_eeprom.c
+++ b/drivers/misc/i2c_eeprom.c
@@ -5,6 +5,7 @@
#include <common.h>
#include <eeprom.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/kernel.h>
#include <dm.h>
diff --git a/drivers/misc/ihs_fpga.c b/drivers/misc/ihs_fpga.c
index 71c4226a839..4923c81783d 100644
--- a/drivers/misc/ihs_fpga.c
+++ b/drivers/misc/ihs_fpga.c
@@ -14,6 +14,7 @@
#include <log.h>
#include <regmap.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#include "ihs_fpga.h"
diff --git a/drivers/misc/mpc83xx_serdes.c b/drivers/misc/mpc83xx_serdes.c
index 2d40621c15f..ab1e34e6f46 100644
--- a/drivers/misc/mpc83xx_serdes.c
+++ b/drivers/misc/mpc83xx_serdes.c
@@ -14,6 +14,7 @@
#include <log.h>
#include <mapmem.h>
#include <misc.h>
+#include <linux/delay.h>
#include "mpc83xx_serdes.h"
diff --git a/drivers/misc/mxc_ocotp.c b/drivers/misc/mxc_ocotp.c
index 80cd8dcedac..926c62c8a14 100644
--- a/drivers/misc/mxc_ocotp.c
+++ b/drivers/misc/mxc_ocotp.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <fuse.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/arch/clock.h>
diff --git a/drivers/misc/mxs_ocotp.c b/drivers/misc/mxs_ocotp.c
index 21cae02118f..facc720c8ef 100644
--- a/drivers/misc/mxs_ocotp.c
+++ b/drivers/misc/mxs_ocotp.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <fuse.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/arch/clock.h>
diff --git a/drivers/mmc/arm_pl180_mmci.c b/drivers/mmc/arm_pl180_mmci.c
index 8c95229bf77..846622892a9 100644
--- a/drivers/mmc/arm_pl180_mmci.c
+++ b/drivers/mmc/arm_pl180_mmci.c
@@ -23,6 +23,7 @@
#include <asm-generic/gpio.h>
#include "arm_pl180_mmci.h"
+#include <linux/delay.h>
#ifdef CONFIG_DM_MMC
#include <dm.h>
diff --git a/drivers/mmc/bcm2835_sdhost.c b/drivers/mmc/bcm2835_sdhost.c
index d44799b4af3..52bb39a905e 100644
--- a/drivers/mmc/bcm2835_sdhost.c
+++ b/drivers/mmc/bcm2835_sdhost.c
@@ -39,6 +39,7 @@
#include <dm/device_compat.h>
#include <linux/bug.h>
#include <linux/compat.h>
+#include <linux/delay.h>
#include <linux/io.h>
#include <linux/iopoll.h>
#include <linux/sizes.h>
diff --git a/drivers/mmc/davinci_mmc.c b/drivers/mmc/davinci_mmc.c
index ef5cd4e7234..2408a687d23 100644
--- a/drivers/mmc/davinci_mmc.c
+++ b/drivers/mmc/davinci_mmc.c
@@ -16,6 +16,7 @@
#include <asm/io.h>
#include <asm/arch/sdmmc_defs.h>
#include <asm-generic/gpio.h>
+#include <linux/delay.h>
#define DAVINCI_MAX_BLOCKS (32)
#define WATCHDOG_COUNT (100000)
diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
index ba93c262558..7702f4be3f8 100644
--- a/drivers/mmc/dw_mmc.c
+++ b/drivers/mmc/dw_mmc.c
@@ -16,6 +16,7 @@
#include <dwmmc.h>
#include <wait_bit.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#define PAGE_SIZE 4096
diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
index a35e791fcc9..665eb9aa688 100644
--- a/drivers/mmc/fsl_esdhc.c
+++ b/drivers/mmc/fsl_esdhc.c
@@ -24,6 +24,7 @@
#include <asm/io.h>
#include <dm.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/mmc/fsl_esdhc_imx.c b/drivers/mmc/fsl_esdhc_imx.c
index 27c86320f0b..1d040f60869 100644
--- a/drivers/mmc/fsl_esdhc_imx.c
+++ b/drivers/mmc/fsl_esdhc_imx.c
@@ -22,6 +22,7 @@
#include <part.h>
#include <asm/cache.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <power/regulator.h>
#include <malloc.h>
diff --git a/drivers/mmc/gen_atmel_mci.c b/drivers/mmc/gen_atmel_mci.c
index 6ec454c3bbf..9d20e283839 100644
--- a/drivers/mmc/gen_atmel_mci.c
+++ b/drivers/mmc/gen_atmel_mci.c
@@ -16,6 +16,7 @@
#include <part.h>
#include <malloc.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/byteorder.h>
#include <asm/arch/clk.h>
diff --git a/drivers/mmc/iproc_sdhci.c b/drivers/mmc/iproc_sdhci.c
index c2319b41345..91e2e3f0b87 100644
--- a/drivers/mmc/iproc_sdhci.c
+++ b/drivers/mmc/iproc_sdhci.c
@@ -9,6 +9,7 @@
#include <errno.h>
#include <malloc.h>
#include <sdhci.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/mmc/jz_mmc.c b/drivers/mmc/jz_mmc.c
index 8d4f886cb49..83ae1e51699 100644
--- a/drivers/mmc/jz_mmc.c
+++ b/drivers/mmc/jz_mmc.c
@@ -13,6 +13,7 @@
#include <asm/unaligned.h>
#include <errno.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <mach/jz4780.h>
#include <wait_bit.h>
diff --git a/drivers/mmc/kona_sdhci.c b/drivers/mmc/kona_sdhci.c
index f5e1f2cbbd3..2bbe673b912 100644
--- a/drivers/mmc/kona_sdhci.c
+++ b/drivers/mmc/kona_sdhci.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <malloc.h>
#include <sdhci.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/kona-common/clk.h>
diff --git a/drivers/mmc/meson_gx_mmc.c b/drivers/mmc/meson_gx_mmc.c
index 86c1a7164a9..b7f793cd047 100644
--- a/drivers/mmc/meson_gx_mmc.c
+++ b/drivers/mmc/meson_gx_mmc.c
@@ -14,6 +14,7 @@
#include <asm/io.h>
#include <asm/gpio.h>
#include <asm/arch/sd_emmc.h>
+#include <linux/delay.h>
#include <linux/log2.h>
static inline void *get_regbase(const struct mmc *mmc)
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index df550e25edc..02494db75a7 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -16,6 +16,7 @@
#include <errno.h>
#include <mmc.h>
#include <part.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#include <malloc.h>
#include <memalign.h>
diff --git a/drivers/mmc/mxsmmc.c b/drivers/mmc/mxsmmc.c
index 17f1ebf5d2b..ad2c0e00023 100644
--- a/drivers/mmc/mxsmmc.c
+++ b/drivers/mmc/mxsmmc.c
@@ -24,6 +24,7 @@
#include <log.h>
#include <malloc.h>
#include <mmc.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/arch/clock.h>
diff --git a/drivers/mmc/omap_hsmmc.c b/drivers/mmc/omap_hsmmc.c
index 492bf58c398..0c21ec716e4 100644
--- a/drivers/mmc/omap_hsmmc.c
+++ b/drivers/mmc/omap_hsmmc.c
@@ -50,6 +50,7 @@
#endif
#include <dm.h>
#include <dm/devres.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <power/regulator.h>
#include <thermal.h>
diff --git a/drivers/mmc/pxa_mmc_gen.c b/drivers/mmc/pxa_mmc_gen.c
index a4dcdb5cffc..cc6014703cc 100644
--- a/drivers/mmc/pxa_mmc_gen.c
+++ b/drivers/mmc/pxa_mmc_gen.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <asm/arch/hardware.h>
#include <asm/arch/regs-mmc.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <malloc.h>
diff --git a/drivers/mmc/renesas-sdhi.c b/drivers/mmc/renesas-sdhi.c
index 33bb5dcc0aa..668222999d5 100644
--- a/drivers/mmc/renesas-sdhi.c
+++ b/drivers/mmc/renesas-sdhi.c
@@ -13,6 +13,7 @@
#include <dm.h>
#include <dm/device_compat.h>
#include <linux/compat.h>
+#include <linux/delay.h>
#include <linux/dma-direction.h>
#include <linux/io.h>
#include <linux/sizes.h>
diff --git a/drivers/mmc/rockchip_dw_mmc.c b/drivers/mmc/rockchip_dw_mmc.c
index d1b293aa039..638107a7ff6 100644
--- a/drivers/mmc/rockchip_dw_mmc.c
+++ b/drivers/mmc/rockchip_dw_mmc.c
@@ -16,6 +16,7 @@
#include <asm/gpio.h>
#include <asm/arch-rockchip/clock.h>
#include <asm/arch-rockchip/periph.h>
+#include <linux/delay.h>
#include <linux/err.h>
struct rockchip_mmc_plat {
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index ee942bb939f..73142db29a1 100644
--- a/drivers/mmc/sdhci.c
+++ b/drivers/mmc/sdhci.c
@@ -17,6 +17,7 @@
#include <sdhci.h>
#include <dm.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <linux/dma-mapping.h>
#include <phys2bus.h>
diff --git a/drivers/mmc/sh_mmcif.c b/drivers/mmc/sh_mmcif.c
index bc94d01fab5..1a01fe5a739 100644
--- a/drivers/mmc/sh_mmcif.c
+++ b/drivers/mmc/sh_mmcif.c
@@ -15,6 +15,7 @@
#include <dm.h>
#include <malloc.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/compat.h>
#include <linux/io.h>
diff --git a/drivers/mmc/sh_sdhi.c b/drivers/mmc/sh_sdhi.c
index 54bd687a25c..22a0f78933d 100644
--- a/drivers/mmc/sh_sdhi.c
+++ b/drivers/mmc/sh_sdhi.c
@@ -16,6 +16,7 @@
#include <dm.h>
#include <part.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/compat.h>
#include <linux/io.h>
diff --git a/drivers/mmc/stm32_sdmmc2.c b/drivers/mmc/stm32_sdmmc2.c
index 87cee536128..b802316720a 100644
--- a/drivers/mmc/stm32_sdmmc2.c
+++ b/drivers/mmc/stm32_sdmmc2.c
@@ -12,6 +12,7 @@
#include <log.h>
#include <malloc.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <mmc.h>
#include <reset.h>
diff --git a/drivers/mmc/sunxi_mmc.c b/drivers/mmc/sunxi_mmc.c
index 2903d89ef34..0e03b07ce55 100644
--- a/drivers/mmc/sunxi_mmc.c
+++ b/drivers/mmc/sunxi_mmc.c
@@ -21,6 +21,7 @@
#include <asm/arch/gpio.h>
#include <asm/arch/mmc.h>
#include <asm-generic/gpio.h>
+#include <linux/delay.h>
#ifdef CONFIG_DM_MMC
struct sunxi_mmc_variant {
diff --git a/drivers/mmc/tegra_mmc.c b/drivers/mmc/tegra_mmc.c
index 731a519e400..78838682c7c 100644
--- a/drivers/mmc/tegra_mmc.c
+++ b/drivers/mmc/tegra_mmc.c
@@ -15,6 +15,7 @@
#include <asm/gpio.h>
#include <asm/io.h>
#include <asm/arch-tegra/tegra_mmc.h>
+#include <linux/delay.h>
#include <linux/err.h>
#if defined(CONFIG_TEGRA30) || defined(CONFIG_TEGRA210)
#include <asm/arch/clock.h>
diff --git a/drivers/mmc/tmio-common.c b/drivers/mmc/tmio-common.c
index 1dc13db9eaa..20cd237ef0e 100644
--- a/drivers/mmc/tmio-common.c
+++ b/drivers/mmc/tmio-common.c
@@ -13,6 +13,7 @@
#include <dm/device_compat.h>
#include <dm/pinctrl.h>
#include <linux/compat.h>
+#include <linux/delay.h>
#include <linux/dma-mapping.h>
#include <linux/io.h>
#include <linux/sizes.h>
diff --git a/drivers/mmc/xenon_sdhci.c b/drivers/mmc/xenon_sdhci.c
index 829b75683b2..7dc600032b8 100644
--- a/drivers/mmc/xenon_sdhci.c
+++ b/drivers/mmc/xenon_sdhci.c
@@ -17,6 +17,7 @@
#include <common.h>
#include <dm.h>
#include <fdtdec.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <malloc.h>
#include <sdhci.h>
diff --git a/drivers/mmc/zynq_sdhci.c b/drivers/mmc/zynq_sdhci.c
index 2f46f17f4a6..de404aa9560 100644
--- a/drivers/mmc/zynq_sdhci.c
+++ b/drivers/mmc/zynq_sdhci.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <dm.h>
#include <fdtdec.h>
+#include <linux/delay.h>
#include "mmc_private.h"
#include <log.h>
#include <dm/device_compat.h>
diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
index 6be40d04e9a..b7289ba5394 100644
--- a/drivers/mtd/cfi_flash.c
+++ b/drivers/mtd/cfi_flash.c
@@ -31,6 +31,7 @@
#include <asm/byteorder.h>
#include <asm/unaligned.h>
#include <env_internal.h>
+#include <linux/delay.h>
#include <mtd/cfi_flash.h>
#include <watchdog.h>
diff --git a/drivers/mtd/mw_eeprom.c b/drivers/mtd/mw_eeprom.c
index 6a3a6f67518..9837733beee 100644
--- a/drivers/mtd/mw_eeprom.c
+++ b/drivers/mtd/mw_eeprom.c
@@ -3,6 +3,7 @@
#include <common.h>
#include <eeprom.h>
#include <asm/ic/ssi.h>
+#include <linux/delay.h>
/*
* Serial EEPROM opcodes, including start bit
diff --git a/drivers/mtd/nand/raw/am335x_spl_bch.c b/drivers/mtd/nand/raw/am335x_spl_bch.c
index ba2f33a96ef..b6fc5f29c7a 100644
--- a/drivers/mtd/nand/raw/am335x_spl_bch.c
+++ b/drivers/mtd/nand/raw/am335x_spl_bch.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <nand.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/mtd/nand_ecc.h>
static int nand_ecc_pos[] = CONFIG_SYS_NAND_ECCPOS;
diff --git a/drivers/mtd/nand/raw/arasan_nfc.c b/drivers/mtd/nand/raw/arasan_nfc.c
index 110c32b3961..6c1d64054c6 100644
--- a/drivers/mtd/nand/raw/arasan_nfc.c
+++ b/drivers/mtd/nand/raw/arasan_nfc.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <malloc.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/rawnand.h>
diff --git a/drivers/mtd/nand/raw/atmel_nand.c b/drivers/mtd/nand/raw/atmel_nand.c
index 2b39e4195ac..4a017ea74dc 100644
--- a/drivers/mtd/nand/raw/atmel_nand.c
+++ b/drivers/mtd/nand/raw/atmel_nand.c
@@ -17,6 +17,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <malloc.h>
#include <nand.h>
diff --git a/drivers/mtd/nand/raw/denali_spl.c b/drivers/mtd/nand/raw/denali_spl.c
index 4b815a433e1..f72142817e7 100644
--- a/drivers/mtd/nand/raw/denali_spl.c
+++ b/drivers/mtd/nand/raw/denali_spl.c
@@ -8,6 +8,7 @@
#include <log.h>
#include <asm/io.h>
#include <asm/unaligned.h>
+#include <linux/delay.h>
#include <linux/mtd/rawnand.h>
#include "denali.h"
diff --git a/drivers/mtd/nand/raw/fsl_upm.c b/drivers/mtd/nand/raw/fsl_upm.c
index ec233b27903..6c86a7e7671 100644
--- a/drivers/mtd/nand/raw/fsl_upm.c
+++ b/drivers/mtd/nand/raw/fsl_upm.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/fsl_upm.h>
diff --git a/drivers/mtd/nand/raw/kmeter1_nand.c b/drivers/mtd/nand/raw/kmeter1_nand.c
index 71033000609..cf33f2863e1 100644
--- a/drivers/mtd/nand/raw/kmeter1_nand.c
+++ b/drivers/mtd/nand/raw/kmeter1_nand.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <nand.h>
#include <asm/io.h>
+#include <linux/delay.h>
#define CONFIG_NAND_MODE_REG (void *)(CONFIG_SYS_NAND_BASE + 0x20000)
#define CONFIG_NAND_DATA_REG (void *)(CONFIG_SYS_NAND_BASE + 0x30000)
diff --git a/drivers/mtd/nand/raw/lpc32xx_nand_mlc.c b/drivers/mtd/nand/raw/lpc32xx_nand_mlc.c
index 79d1489dc72..b3232ed59d5 100644
--- a/drivers/mtd/nand/raw/lpc32xx_nand_mlc.c
+++ b/drivers/mtd/nand/raw/lpc32xx_nand_mlc.c
@@ -21,6 +21,7 @@
#include <common.h>
#include <nand.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <nand.h>
diff --git a/drivers/mtd/nand/raw/mxc_nand.c b/drivers/mtd/nand/raw/mxc_nand.c
index 049bc79e3b0..59cef205754 100644
--- a/drivers/mtd/nand/raw/mxc_nand.c
+++ b/drivers/mtd/nand/raw/mxc_nand.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <log.h>
#include <nand.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <asm/io.h>
#if defined(CONFIG_MX25) || defined(CONFIG_MX27) || defined(CONFIG_MX35) || \
diff --git a/drivers/mtd/nand/raw/mxs_nand_spl.c b/drivers/mtd/nand/raw/mxs_nand_spl.c
index 3460f2b61a9..ffe9860c680 100644
--- a/drivers/mtd/nand/raw/mxs_nand_spl.c
+++ b/drivers/mtd/nand/raw/mxs_nand_spl.c
@@ -10,6 +10,7 @@
#include <malloc.h>
#include <mxs_nand.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <linux/err.h>
static struct mtd_info *mtd;
diff --git a/drivers/mtd/nand/raw/nand_base.c b/drivers/mtd/nand/raw/nand_base.c
index c9e54eae399..26650389f43 100644
--- a/drivers/mtd/nand/raw/nand_base.c
+++ b/drivers/mtd/nand/raw/nand_base.c
@@ -37,6 +37,7 @@
#include <watchdog.h>
#include <dm/devres.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/compat.h>
#include <linux/mtd/mtd.h>
diff --git a/drivers/mtd/nand/raw/pxa3xx_nand.c b/drivers/mtd/nand/raw/pxa3xx_nand.c
index fc5b6275f29..244b0fecb7a 100644
--- a/drivers/mtd/nand/raw/pxa3xx_nand.c
+++ b/drivers/mtd/nand/raw/pxa3xx_nand.c
@@ -13,6 +13,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <asm/io.h>
diff --git a/drivers/mtd/nand/raw/stm32_fmc2_nand.c b/drivers/mtd/nand/raw/stm32_fmc2_nand.c
index 912fe480e8a..97188b200cb 100644
--- a/drivers/mtd/nand/raw/stm32_fmc2_nand.c
+++ b/drivers/mtd/nand/raw/stm32_fmc2_nand.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <nand.h>
#include <reset.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/iopoll.h>
#include <linux/ioport.h>
diff --git a/drivers/mtd/nand/raw/sunxi_nand.c b/drivers/mtd/nand/raw/sunxi_nand.c
index 9b99be10e6e..5331e73c2d1 100644
--- a/drivers/mtd/nand/raw/sunxi_nand.c
+++ b/drivers/mtd/nand/raw/sunxi_nand.c
@@ -31,6 +31,7 @@
#include <nand.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/kernel.h>
diff --git a/drivers/mtd/nand/raw/sunxi_nand_spl.c b/drivers/mtd/nand/raw/sunxi_nand_spl.c
index 6cde9814c4f..8b2f7ea4915 100644
--- a/drivers/mtd/nand/raw/sunxi_nand_spl.c
+++ b/drivers/mtd/nand/raw/sunxi_nand_spl.c
@@ -10,6 +10,7 @@
#include <config.h>
#include <nand.h>
#include <linux/ctype.h>
+#include <linux/delay.h>
/* registers */
#define NFC_CTL 0x00000000
diff --git a/drivers/mtd/nand/raw/tegra_nand.c b/drivers/mtd/nand/raw/tegra_nand.c
index b3bdd201c36..b9f5bdd9535 100644
--- a/drivers/mtd/nand/raw/tegra_nand.c
+++ b/drivers/mtd/nand/raw/tegra_nand.c
@@ -16,6 +16,7 @@
#include <asm/arch-tegra/clk_rst.h>
#include <dm/device_compat.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/gpio.h>
#include <fdtdec.h>
diff --git a/drivers/mtd/nand/raw/zynq_nand.c b/drivers/mtd/nand/raw/zynq_nand.c
index 0bddaaaac0c..fa594552109 100644
--- a/drivers/mtd/nand/raw/zynq_nand.c
+++ b/drivers/mtd/nand/raw/zynq_nand.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <malloc.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <nand.h>
#include <linux/ioport.h>
diff --git a/drivers/mtd/spi/sf_dataflash.c b/drivers/mtd/spi/sf_dataflash.c
index f85799d628e..27d847d4218 100644
--- a/drivers/mtd/spi/sf_dataflash.c
+++ b/drivers/mtd/spi/sf_dataflash.c
@@ -15,6 +15,7 @@
#include <spi.h>
#include <spi_flash.h>
#include <div64.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/math64.h>
diff --git a/drivers/mtd/st_smi.c b/drivers/mtd/st_smi.c
index d29a71595dc..7c652e6c535 100644
--- a/drivers/mtd/st_smi.c
+++ b/drivers/mtd/st_smi.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <flash.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/mtd/st_smi.h>
diff --git a/drivers/net/ag7xxx.c b/drivers/net/ag7xxx.c
index 38f3cbac734..0fe140cf6e6 100644
--- a/drivers/net/ag7xxx.c
+++ b/drivers/net/ag7xxx.c
@@ -17,6 +17,7 @@
#include <net.h>
#include <asm/cache.h>
#include <linux/compiler.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/mii.h>
#include <wait_bit.h>
diff --git a/drivers/net/armada100_fec.c b/drivers/net/armada100_fec.c
index 828f978f730..3ee119bcbcc 100644
--- a/drivers/net/armada100_fec.c
+++ b/drivers/net/armada100_fec.c
@@ -17,6 +17,7 @@
#include <netdev.h>
#include <asm/types.h>
#include <asm/byteorder.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/mii.h>
#include <asm/io.h>
diff --git a/drivers/net/at91_emac.c b/drivers/net/at91_emac.c
index fc227edea73..4e4ad61da4e 100644
--- a/drivers/net/at91_emac.c
+++ b/drivers/net/at91_emac.c
@@ -18,6 +18,7 @@
#include <netdev.h>
#include <malloc.h>
#include <miiphy.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#undef MII_DEBUG
diff --git a/drivers/net/ax88180.c b/drivers/net/ax88180.c
index 2715653cd45..28cb41272a9 100644
--- a/drivers/net/ax88180.c
+++ b/drivers/net/ax88180.c
@@ -42,6 +42,7 @@
#include <log.h>
#include <net.h>
#include <malloc.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include "ax88180.h"
diff --git a/drivers/net/ax88796.c b/drivers/net/ax88796.c
index 01c1ae27299..d161f0e09c3 100644
--- a/drivers/net/ax88796.c
+++ b/drivers/net/ax88796.c
@@ -3,6 +3,7 @@
* (c) 2007 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
*/
#include <common.h>
+#include <linux/delay.h>
#include "ax88796.h"
/*
diff --git a/drivers/net/bcm-sf2-eth-gmac.c b/drivers/net/bcm-sf2-eth-gmac.c
index eaadb2662a8..f57861e8704 100644
--- a/drivers/net/bcm-sf2-eth-gmac.c
+++ b/drivers/net/bcm-sf2-eth-gmac.c
@@ -18,6 +18,7 @@
#include <asm/cache.h>
#include <asm/io.h>
#include <phy.h>
+#include <linux/delay.h>
#include "bcm-sf2-eth.h"
#include "bcm-sf2-eth-gmac.h"
diff --git a/drivers/net/bcm-sf2-eth.c b/drivers/net/bcm-sf2-eth.c
index c8393c5f501..2998d57c72f 100644
--- a/drivers/net/bcm-sf2-eth.c
+++ b/drivers/net/bcm-sf2-eth.c
@@ -8,6 +8,7 @@
#include <malloc.h>
#include <net.h>
#include <config.h>
+#include <linux/delay.h>
#include <phy.h>
#include <miiphy.h>
diff --git a/drivers/net/bcm6368-eth.c b/drivers/net/bcm6368-eth.c
index db573c08317..648fafd3e09 100644
--- a/drivers/net/bcm6368-eth.c
+++ b/drivers/net/bcm6368-eth.c
@@ -18,6 +18,7 @@
#include <wait_bit.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#define ETH_PORT_STR "brcm,enetsw-port"
diff --git a/drivers/net/bcmgenet.c b/drivers/net/bcmgenet.c
index 1ef8e8e8b85..d09f17d9947 100644
--- a/drivers/net/bcmgenet.c
+++ b/drivers/net/bcmgenet.c
@@ -23,6 +23,7 @@
#include <cpu_func.h>
#include <dm.h>
#include <fdt_support.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <malloc.h>
#include <miiphy.h>
diff --git a/drivers/net/calxedaxgmac.c b/drivers/net/calxedaxgmac.c
index 0dd64e45821..5dad69c0b76 100644
--- a/drivers/net/calxedaxgmac.c
+++ b/drivers/net/calxedaxgmac.c
@@ -7,6 +7,7 @@
#include <malloc.h>
#include <net.h>
#include <linux/compiler.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <asm/io.h>
diff --git a/drivers/net/cs8900.c b/drivers/net/cs8900.c
index f840e114216..7ec95be6fcf 100644
--- a/drivers/net/cs8900.c
+++ b/drivers/net/cs8900.c
@@ -29,6 +29,7 @@
#include <asm/io.h>
#include <net.h>
#include <malloc.h>
+#include <linux/delay.h>
#include "cs8900.h"
#undef DEBUG
diff --git a/drivers/net/dc2114x.c b/drivers/net/dc2114x.c
index d008696b0ff..611a8c4b9e4 100644
--- a/drivers/net/dc2114x.c
+++ b/drivers/net/dc2114x.c
@@ -6,6 +6,7 @@
#include <net.h>
#include <netdev.h>
#include <pci.h>
+#include <linux/delay.h>
#define SROM_DLEVEL 0
diff --git a/drivers/net/designware.c b/drivers/net/designware.c
index 1eda9c38009..b89a68afe4a 100644
--- a/drivers/net/designware.c
+++ b/drivers/net/designware.c
@@ -23,6 +23,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/compiler.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/kernel.h>
#include <asm/io.h>
diff --git a/drivers/net/dm9000x.c b/drivers/net/dm9000x.c
index a6c0a2452f2..d575a625925 100644
--- a/drivers/net/dm9000x.c
+++ b/drivers/net/dm9000x.c
@@ -54,6 +54,7 @@ TODO: external MII is not functional, only internal at the moment.
#include <net.h>
#include <asm/io.h>
#include <dm9000.h>
+#include <linux/delay.h>
#include "dm9000x.h"
diff --git a/drivers/net/dnet.c b/drivers/net/dnet.c
index 35c2ed9fe06..98e9b2c663b 100644
--- a/drivers/net/dnet.c
+++ b/drivers/net/dnet.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#ifndef CONFIG_DNET_AUTONEG_TIMEOUT
#define CONFIG_DNET_AUTONEG_TIMEOUT 5000000 /* default value */
diff --git a/drivers/net/dwc_eth_qos.c b/drivers/net/dwc_eth_qos.c
index 1cf1ff59eb0..789ac2e818a 100644
--- a/drivers/net/dwc_eth_qos.c
+++ b/drivers/net/dwc_eth_qos.c
@@ -48,6 +48,7 @@
#include <asm/arch/clock.h>
#include <asm/mach-imx/sys_proto.h>
#endif
+#include <linux/delay.h>
/* Core registers */
diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c
index 6c1358568ae..008da4ab3e7 100644
--- a/drivers/net/e1000.c
+++ b/drivers/net/e1000.c
@@ -39,6 +39,7 @@ tested on both gig copper and gig fiber boards
#include <memalign.h>
#include <net.h>
#include <pci.h>
+#include <linux/delay.h>
#include "e1000.h"
#include <asm/cache.h>
diff --git a/drivers/net/e1000_spi.c b/drivers/net/e1000_spi.c
index dcb561ff79e..4fcc65d9782 100644
--- a/drivers/net/e1000_spi.c
+++ b/drivers/net/e1000_spi.c
@@ -1,6 +1,7 @@
#include <common.h>
#include <command.h>
#include <console.h>
+#include <linux/delay.h>
#include "e1000.h"
#include <malloc.h>
#include <linux/compiler.h>
diff --git a/drivers/net/eepro100.c b/drivers/net/eepro100.c
index 36a9d4d91c3..e186ab4e5f2 100644
--- a/drivers/net/eepro100.c
+++ b/drivers/net/eepro100.c
@@ -11,6 +11,7 @@
#include <asm/io.h>
#include <pci.h>
#include <miiphy.h>
+#include <linux/delay.h>
#undef DEBUG
diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
index 4c6eb640d49..9ae2db033e6 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -18,6 +18,7 @@
#include <net.h>
#include <netdev.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#include <asm/io.h>
diff --git a/drivers/net/fm/dtsec.c b/drivers/net/fm/dtsec.c
index 4c78a4d63f5..c51a65cb94f 100644
--- a/drivers/net/fm/dtsec.c
+++ b/drivers/net/fm/dtsec.c
@@ -9,6 +9,7 @@
#include <fsl_dtsec.h>
#include <fsl_mdio.h>
#include <phy.h>
+#include <linux/delay.h>
#include "fm.h"
diff --git a/drivers/net/fm/eth.c b/drivers/net/fm/eth.c
index f3ce2ac40c4..81a4cf21294 100644
--- a/drivers/net/fm/eth.c
+++ b/drivers/net/fm/eth.c
@@ -24,6 +24,7 @@
#include <fsl_dtsec.h>
#include <fsl_tgec.h>
#include <fsl_memac.h>
+#include <linux/delay.h>
#include "fm.h"
diff --git a/drivers/net/fm/tgec.c b/drivers/net/fm/tgec.c
index 9f2f6f6d5b0..9cc9f3fde3a 100644
--- a/drivers/net/fm/tgec.c
+++ b/drivers/net/fm/tgec.c
@@ -12,6 +12,7 @@
#include <asm/types.h>
#include <asm/io.h>
#include <fsl_tgec.h>
+#include <linux/delay.h>
#include "fm.h"
diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c
index 3b44abcd948..1c034273b74 100644
--- a/drivers/net/fsl-mc/mc.c
+++ b/drivers/net/fsl-mc/mc.c
@@ -13,6 +13,7 @@
#include <malloc.h>
#include <linux/bug.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <net.h>
#include <fdt_support.h>
diff --git a/drivers/net/fsl-mc/mc_sys.c b/drivers/net/fsl-mc/mc_sys.c
index fddf5cb0235..b5ae2ea3eb5 100644
--- a/drivers/net/fsl-mc/mc_sys.c
+++ b/drivers/net/fsl-mc/mc_sys.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <errno.h>
#include <asm/io.h>
+#include <linux/delay.h>
#define MC_CMD_HDR_READ_CMDID(_hdr) \
((uint16_t)mc_dec((_hdr), MC_CMD_HDR_CMDID_O, MC_CMD_HDR_CMDID_S))
diff --git a/drivers/net/fsl_enetc.c b/drivers/net/fsl_enetc.c
index b47b27210ce..2929ae72092 100644
--- a/drivers/net/fsl_enetc.c
+++ b/drivers/net/fsl_enetc.c
@@ -16,6 +16,7 @@
#include <pci.h>
#include <miiphy.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include "fsl_enetc.h"
diff --git a/drivers/net/fsl_mcdmafec.c b/drivers/net/fsl_mcdmafec.c
index 45954cecb6b..73e92b7a0d2 100644
--- a/drivers/net/fsl_mcdmafec.c
+++ b/drivers/net/fsl_mcdmafec.c
@@ -18,6 +18,7 @@
#include <config.h>
#include <net.h>
#include <miiphy.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include <asm/immap.h>
#include <asm/fsl_mcdmafec.h>
diff --git a/drivers/net/ftmac100.c b/drivers/net/ftmac100.c
index 24bb45f3515..4aae7c43fea 100644
--- a/drivers/net/ftmac100.c
+++ b/drivers/net/ftmac100.c
@@ -12,6 +12,7 @@
#include <env.h>
#include <malloc.h>
#include <net.h>
+#include <linux/delay.h>
#include <linux/io.h>
#include "ftmac100.h"
diff --git a/drivers/net/higmacv300.c b/drivers/net/higmacv300.c
index ea9f9470c80..1ec98644c92 100644
--- a/drivers/net/higmacv300.c
+++ b/drivers/net/higmacv300.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <console.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include <miiphy.h>
#include <net.h>
diff --git a/drivers/net/ks8851_mll.c b/drivers/net/ks8851_mll.c
index 8fcb63d1a60..6643d1e9c13 100644
--- a/drivers/net/ks8851_mll.c
+++ b/drivers/net/ks8851_mll.c
@@ -11,6 +11,7 @@
#include <malloc.h>
#include <net.h>
#include <miiphy.h>
+#include <linux/delay.h>
#include "ks8851_mll.h"
diff --git a/drivers/net/lan91c96.c b/drivers/net/lan91c96.c
index 1989b66a486..13900f10b1c 100644
--- a/drivers/net/lan91c96.c
+++ b/drivers/net/lan91c96.c
@@ -48,6 +48,7 @@
#include <command.h>
#include <env.h>
#include <malloc.h>
+#include <linux/delay.h>
#include "lan91c96.h"
#include <net.h>
#include <linux/compiler.h>
diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c
index 66bfafe2171..116b307b67c 100644
--- a/drivers/net/ldpaa_eth/ldpaa_eth.c
+++ b/drivers/net/ldpaa_eth/ldpaa_eth.c
@@ -17,6 +17,7 @@
#include <linux/bug.h>
#include <linux/compat.h>
#include <fsl-mc/fsl_dpmac.h>
+#include <linux/delay.h>
#include <fsl-mc/ldpaa_wriop.h>
#include "ldpaa_eth.h"
diff --git a/drivers/net/lpc32xx_eth.c b/drivers/net/lpc32xx_eth.c
index 604f676bfff..f68daaaff56 100644
--- a/drivers/net/lpc32xx_eth.c
+++ b/drivers/net/lpc32xx_eth.c
@@ -12,6 +12,7 @@
#include <malloc.h>
#include <miiphy.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/types.h>
#include <asm/system.h>
diff --git a/drivers/net/macb.c b/drivers/net/macb.c
index ddd1c060599..424ca59707f 100644
--- a/drivers/net/macb.c
+++ b/drivers/net/macb.c
@@ -7,6 +7,7 @@
#include <cpu_func.h>
#include <dm.h>
#include <log.h>
+#include <linux/delay.h>
/*
* The u-boot networking stack is a little weird. It seems like the
diff --git a/drivers/net/mcffec.c b/drivers/net/mcffec.c
index 8caf0ba6b1c..697549301f3 100644
--- a/drivers/net/mcffec.c
+++ b/drivers/net/mcffec.c
@@ -19,6 +19,7 @@
#include <miiphy.h>
#include <asm/fec.h>
#include <asm/immap.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#undef ET_DEBUG
diff --git a/drivers/net/mcfmii.c b/drivers/net/mcfmii.c
index 3b8ee07c13a..393605512d9 100644
--- a/drivers/net/mcfmii.c
+++ b/drivers/net/mcfmii.c
@@ -8,6 +8,7 @@
#include <config.h>
#include <net.h>
#include <netdev.h>
+#include <linux/delay.h>
#ifdef CONFIG_MCF547x_8x
#include <asm/fsl_mcdmafec.h>
diff --git a/drivers/net/mpc8xx_fec.c b/drivers/net/mpc8xx_fec.c
index 69b2174ab3d..f9f7dd7cb36 100644
--- a/drivers/net/mpc8xx_fec.c
+++ b/drivers/net/mpc8xx_fec.c
@@ -12,6 +12,7 @@
#include <netdev.h>
#include <asm/cpm_8xx.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <phy.h>
#include <linux/mii.h>
diff --git a/drivers/net/mscc_eswitch/jr2_switch.c b/drivers/net/mscc_eswitch/jr2_switch.c
index 33dd002146c..76823c618e8 100644
--- a/drivers/net/mscc_eswitch/jr2_switch.c
+++ b/drivers/net/mscc_eswitch/jr2_switch.c
@@ -10,6 +10,7 @@
#include <dm/of_access.h>
#include <dm/of_addr.h>
#include <fdt_support.h>
+#include <linux/delay.h>
#include <linux/io.h>
#include <linux/ioport.h>
#include <miiphy.h>
diff --git a/drivers/net/mscc_eswitch/mscc_xfer.c b/drivers/net/mscc_eswitch/mscc_xfer.c
index 447b53782dd..01eb204db8c 100644
--- a/drivers/net/mscc_eswitch/mscc_xfer.c
+++ b/drivers/net/mscc_eswitch/mscc_xfer.c
@@ -4,6 +4,7 @@
*/
#include <log.h>
+#include <linux/delay.h>
#include <linux/io.h>
#include "mscc_xfer.h"
diff --git a/drivers/net/mt7628-eth.c b/drivers/net/mt7628-eth.c
index 8110af2d825..a2e022db355 100644
--- a/drivers/net/mt7628-eth.c
+++ b/drivers/net/mt7628-eth.c
@@ -25,6 +25,7 @@
#include <asm/cache.h>
#include <asm/io.h>
#include <linux/bitfield.h>
+#include <linux/delay.h>
#include <linux/err.h>
/* Ethernet frame engine register */
diff --git a/drivers/net/mtk_eth.c b/drivers/net/mtk_eth.c
index c0cabd9b365..86f1360ae35 100644
--- a/drivers/net/mtk_eth.c
+++ b/drivers/net/mtk_eth.c
@@ -21,6 +21,7 @@
#include <asm/gpio.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/ioport.h>
#include <linux/mdio.h>
diff --git a/drivers/net/mvgbe.c b/drivers/net/mvgbe.c
index b661cd38f99..7974dfc78da 100644
--- a/drivers/net/mvgbe.c
+++ b/drivers/net/mvgbe.c
@@ -19,6 +19,7 @@
#include <miiphy.h>
#include <wait_bit.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/types.h>
#include <asm/system.h>
diff --git a/drivers/net/mvneta.c b/drivers/net/mvneta.c
index f593aa6508e..f9aef17f7ea 100644
--- a/drivers/net/mvneta.c
+++ b/drivers/net/mvneta.c
@@ -25,6 +25,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <phy.h>
#include <miiphy.h>
diff --git a/drivers/net/mvpp2.c b/drivers/net/mvpp2.c
index 83914286e8b..ebe67e45ab3 100644
--- a/drivers/net/mvpp2.c
+++ b/drivers/net/mvpp2.c
@@ -27,6 +27,7 @@
#include <malloc.h>
#include <asm/io.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <phy.h>
diff --git a/drivers/net/natsemi.c b/drivers/net/natsemi.c
index 86f689802e3..bf6fa8f2ba2 100644
--- a/drivers/net/natsemi.c
+++ b/drivers/net/natsemi.c
@@ -56,6 +56,7 @@
#include <netdev.h>
#include <asm/io.h>
#include <pci.h>
+#include <linux/delay.h>
/* defines */
#define EEPROM_SIZE 0xb /*12 16-bit chunks, or 24 bytes*/
diff --git a/drivers/net/ne2000.c b/drivers/net/ne2000.c
index e6cd3e9ba07..28a99bb8c48 100644
--- a/drivers/net/ne2000.c
+++ b/drivers/net/ne2000.c
@@ -74,6 +74,7 @@ Add SNMP
#include <common.h>
#include <command.h>
+#include <linux/delay.h>
/* NE2000 base header file */
#include "ne2000_base.h"
diff --git a/drivers/net/ne2000_base.h b/drivers/net/ne2000_base.h
index eee0956fdb5..2493608a5a6 100644
--- a/drivers/net/ne2000_base.h
+++ b/drivers/net/ne2000_base.h
@@ -106,6 +106,7 @@ are GPL, so this is, of course, GPL.
#endif
/* timeout for tx/rx in s */
+#include <linux/delay.h>
#define TOUT 5
/* Ether MAC address size */
#define ETHER_ADDR_LEN 6
diff --git a/drivers/net/ns8382x.c b/drivers/net/ns8382x.c
index 9ef3baed1df..c292abad07f 100644
--- a/drivers/net/ns8382x.c
+++ b/drivers/net/ns8382x.c
@@ -57,6 +57,7 @@
#include <netdev.h>
#include <asm/io.h>
#include <pci.h>
+#include <linux/delay.h>
/* defines */
#define DSIZE 0x00000FFF
diff --git a/drivers/net/pch_gbe.c b/drivers/net/pch_gbe.c
index a592ec07da4..1daafbe2b9b 100644
--- a/drivers/net/pch_gbe.c
+++ b/drivers/net/pch_gbe.c
@@ -14,6 +14,7 @@
#include <asm/io.h>
#include <pci.h>
#include <miiphy.h>
+#include <linux/delay.h>
#include "pch_gbe.h"
#if !defined(CONFIG_PHYLIB)
diff --git a/drivers/net/pcnet.c b/drivers/net/pcnet.c
index 39cce052936..260a5a38cff 100644
--- a/drivers/net/pcnet.c
+++ b/drivers/net/pcnet.c
@@ -15,6 +15,7 @@
#include <asm/cache.h>
#include <asm/io.h>
#include <pci.h>
+#include <linux/delay.h>
#define PCNET_DEBUG_LEVEL 0 /* 0=off, 1=init, 2=rx/tx */
diff --git a/drivers/net/pfe_eth/pfe_cmd.c b/drivers/net/pfe_eth/pfe_cmd.c
index 66c8cca4d2b..1e69525cb71 100644
--- a/drivers/net/pfe_eth/pfe_cmd.c
+++ b/drivers/net/pfe_eth/pfe_cmd.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <command.h>
#include <log.h>
+#include <linux/delay.h>
#include <net/pfe_eth/pfe_eth.h>
static inline void pfe_command_help(void)
diff --git a/drivers/net/pfe_eth/pfe_driver.c b/drivers/net/pfe_eth/pfe_driver.c
index e5edfbeaa66..6f443b4ea81 100644
--- a/drivers/net/pfe_eth/pfe_driver.c
+++ b/drivers/net/pfe_eth/pfe_driver.c
@@ -6,6 +6,7 @@
#include <log.h>
#include <malloc.h>
+#include <linux/delay.h>
#include <net/pfe_eth/pfe_eth.h>
#include <net/pfe_eth/pfe_firmware.h>
diff --git a/drivers/net/pfe_eth/pfe_eth.c b/drivers/net/pfe_eth/pfe_eth.c
index 4aa5ac4be62..718e24f14d3 100644
--- a/drivers/net/pfe_eth/pfe_eth.c
+++ b/drivers/net/pfe_eth/pfe_eth.c
@@ -10,6 +10,7 @@
#include <malloc.h>
#include <dm/platform_data/pfe_dm_eth.h>
#include <net.h>
+#include <linux/delay.h>
#include <net/pfe_eth/pfe_eth.h>
#include <net/pfe_eth/pfe_mdio.h>
diff --git a/drivers/net/pfe_eth/pfe_mdio.c b/drivers/net/pfe_eth/pfe_mdio.c
index 2f88f5d8bcf..3228b8df49d 100644
--- a/drivers/net/pfe_eth/pfe_mdio.c
+++ b/drivers/net/pfe_eth/pfe_mdio.c
@@ -9,6 +9,7 @@
#include <malloc.h>
#include <dm/platform_data/pfe_dm_eth.h>
#include <net.h>
+#include <linux/delay.h>
#include <net/pfe_eth/pfe_eth.h>
extern struct gemac_s gem_info[];
diff --git a/drivers/net/phy/aquantia.c b/drivers/net/phy/aquantia.c
index 75396dec958..8b1cad85407 100644
--- a/drivers/net/phy/aquantia.c
+++ b/drivers/net/phy/aquantia.c
@@ -11,6 +11,7 @@
#include <log.h>
#include <net.h>
#include <phy.h>
+#include <linux/delay.h>
#include <u-boot/crc.h>
#include <malloc.h>
#include <asm/byteorder.h>
diff --git a/drivers/net/phy/b53.c b/drivers/net/phy/b53.c
index f039f895c89..25dbf215b41 100644
--- a/drivers/net/phy/b53.c
+++ b/drivers/net/phy/b53.c
@@ -24,6 +24,7 @@
#include <common.h>
#include <command.h>
+#include <linux/delay.h>
#include <errno.h>
#include <malloc.h>
diff --git a/drivers/net/phy/broadcom.c b/drivers/net/phy/broadcom.c
index 3399fd23662..566fcb8de73 100644
--- a/drivers/net/phy/broadcom.c
+++ b/drivers/net/phy/broadcom.c
@@ -7,6 +7,7 @@
*/
#include <common.h>
#include <phy.h>
+#include <linux/delay.h>
/* Broadcom BCM54xx -- taken from linux sungem_phy */
#define MIIM_BCM54xx_AUXCNTL 0x18
diff --git a/drivers/net/phy/cortina.c b/drivers/net/phy/cortina.c
index ecaa2b9f92e..dbc20b14051 100644
--- a/drivers/net/phy/cortina.c
+++ b/drivers/net/phy/cortina.c
@@ -12,6 +12,7 @@
#include <log.h>
#include <malloc.h>
#include <linux/ctype.h>
+#include <linux/delay.h>
#include <linux/string.h>
#include <linux/err.h>
#include <phy.h>
diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
index 93cf44ad4cb..be5e3dcaab2 100644
--- a/drivers/net/phy/marvell.c
+++ b/drivers/net/phy/marvell.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <errno.h>
#include <phy.h>
+#include <linux/delay.h>
#define PHY_AUTONEGOTIATE_TIMEOUT 5000
diff --git a/drivers/net/phy/mv88e61xx.c b/drivers/net/phy/mv88e61xx.c
index cbc36509717..3f8aa7cd99c 100644
--- a/drivers/net/phy/mv88e61xx.c
+++ b/drivers/net/phy/mv88e61xx.c
@@ -31,6 +31,7 @@
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <bitfield.h>
#include <errno.h>
diff --git a/drivers/net/phy/mv88e6352.c b/drivers/net/phy/mv88e6352.c
index e2261d6a11d..62a7f192149 100644
--- a/drivers/net/phy/mv88e6352.c
+++ b/drivers/net/phy/mv88e6352.c
@@ -8,6 +8,7 @@
#include <command.h>
#include <log.h>
#include <miiphy.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <mv88e6352.h>
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
index 6c4381ec6ce..6b6497c93a2 100644
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -17,6 +17,7 @@
#include <miiphy.h>
#include <phy.h>
#include <errno.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/compiler.h>
diff --git a/drivers/net/phy/realtek.c b/drivers/net/phy/realtek.c
index 8f0a897a46d..b4612c1cfd6 100644
--- a/drivers/net/phy/realtek.c
+++ b/drivers/net/phy/realtek.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <linux/bitops.h>
#include <phy.h>
+#include <linux/delay.h>
#define PHY_RTL8211x_FORCE_MASTER BIT(1)
#define PHY_RTL8211E_PINE64_GIGABIT_FIX BIT(2)
diff --git a/drivers/net/phy/teranetics.c b/drivers/net/phy/teranetics.c
index 49d6a1ad901..60049c2074f 100644
--- a/drivers/net/phy/teranetics.c
+++ b/drivers/net/phy/teranetics.c
@@ -7,6 +7,7 @@
*/
#include <common.h>
#include <phy.h>
+#include <linux/delay.h>
#ifndef CONFIG_PHYLIB_10G
#error The Teranetics PHY needs 10G support
diff --git a/drivers/net/pic32_eth.c b/drivers/net/pic32_eth.c
index d367a1fe37e..6a2084947b0 100644
--- a/drivers/net/pic32_eth.c
+++ b/drivers/net/pic32_eth.c
@@ -15,6 +15,7 @@
#include <time.h>
#include <wait_bit.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include "pic32_eth.h"
diff --git a/drivers/net/pic32_mdio.c b/drivers/net/pic32_mdio.c
index 1aa5b1d8dac..d4049cfea52 100644
--- a/drivers/net/pic32_mdio.c
+++ b/drivers/net/pic32_mdio.c
@@ -11,6 +11,7 @@
#include <errno.h>
#include <wait_bit.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "pic32_eth.h"
static int pic32_mdio_write(struct mii_dev *bus,
diff --git a/drivers/net/ravb.c b/drivers/net/ravb.c
index fae72a1127c..3dab91b74b4 100644
--- a/drivers/net/ravb.c
+++ b/drivers/net/ravb.c
@@ -17,6 +17,7 @@
#include <miiphy.h>
#include <malloc.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include <wait_bit.h>
#include <asm/io.h>
diff --git a/drivers/net/rtl8139.c b/drivers/net/rtl8139.c
index e87ee26f7f9..fd2454b56fa 100644
--- a/drivers/net/rtl8139.c
+++ b/drivers/net/rtl8139.c
@@ -76,6 +76,7 @@
#include <netdev.h>
#include <asm/io.h>
#include <pci.h>
+#include <linux/delay.h>
#include <linux/types.h>
#define RTL_TIMEOUT 100000
diff --git a/drivers/net/rtl8169.c b/drivers/net/rtl8169.c
index c3413431ec4..75058fdadc0 100644
--- a/drivers/net/rtl8169.c
+++ b/drivers/net/rtl8169.c
@@ -53,6 +53,7 @@
#include <asm/cache.h>
#include <asm/io.h>
#include <pci.h>
+#include <linux/delay.h>
#undef DEBUG_RTL8169
#undef DEBUG_RTL8169_TX
diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c
index 1ad3d0526df..b26fc7b8eb1 100644
--- a/drivers/net/sh_eth.c
+++ b/drivers/net/sh_eth.c
@@ -18,6 +18,7 @@
#include <netdev.h>
#include <miiphy.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
diff --git a/drivers/net/smc91111.c b/drivers/net/smc91111.c
index 52bbf05a1e0..23265eff936 100644
--- a/drivers/net/smc91111.c
+++ b/drivers/net/smc91111.c
@@ -51,6 +51,7 @@
#include <command.h>
#include <config.h>
#include <malloc.h>
+#include <linux/delay.h>
#include "smc91111.h"
#include <net.h>
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c
index 45ecd6a2633..9d2790e5616 100644
--- a/drivers/net/smc911x.c
+++ b/drivers/net/smc911x.c
@@ -11,6 +11,7 @@
#include <net.h>
#include <miiphy.h>
#include <linux/io.h>
+#include <linux/delay.h>
#include <linux/types.h>
#include "smc911x.h"
diff --git a/drivers/net/sni_ave.c b/drivers/net/sni_ave.c
index 8f651fa4dc9..92b4a656319 100644
--- a/drivers/net/sni_ave.c
+++ b/drivers/net/sni_ave.c
@@ -17,6 +17,7 @@
#include <syscon.h>
#include <asm/cache.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/iopoll.h>
diff --git a/drivers/net/sun8i_emac.c b/drivers/net/sun8i_emac.c
index c24ab83c1a2..45ac1184950 100644
--- a/drivers/net/sun8i_emac.c
+++ b/drivers/net/sun8i_emac.c
@@ -21,6 +21,7 @@
#include <dm.h>
#include <fdt_support.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <malloc.h>
#include <miiphy.h>
diff --git a/drivers/net/sunxi_emac.c b/drivers/net/sunxi_emac.c
index 26c75067bf2..6364beb9f2a 100644
--- a/drivers/net/sunxi_emac.c
+++ b/drivers/net/sunxi_emac.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <log.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <malloc.h>
#include <miiphy.h>
diff --git a/drivers/net/ti/cpsw_mdio.c b/drivers/net/ti/cpsw_mdio.c
index fb93548dee0..e77a2ff0a74 100644
--- a/drivers/net/ti/cpsw_mdio.c
+++ b/drivers/net/ti/cpsw_mdio.c
@@ -11,6 +11,7 @@
#include <asm/io.h>
#include <miiphy.h>
#include <wait_bit.h>
+#include <linux/delay.h>
struct cpsw_mdio_regs {
u32 version;
diff --git a/drivers/net/ti/davinci_emac.c b/drivers/net/ti/davinci_emac.c
index 804797476c6..56ea1fec0af 100644
--- a/drivers/net/ti/davinci_emac.c
+++ b/drivers/net/ti/davinci_emac.c
@@ -32,6 +32,7 @@
#include <linux/compiler.h>
#include <asm/arch/emac_defs.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "davinci_emac.h"
unsigned int emac_dbg = 0;
diff --git a/drivers/net/ti/keystone_net.c b/drivers/net/ti/keystone_net.c
index ecd6df9e451..e3ac40ca0d0 100644
--- a/drivers/net/ti/keystone_net.c
+++ b/drivers/net/ti/keystone_net.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <command.h>
#include <console.h>
+#include <linux/delay.h>
#include <dm.h>
#include <dm/lists.h>
diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
index f85cdcb97eb..15701ee1474 100644
--- a/drivers/net/tsec.c
+++ b/drivers/net/tsec.c
@@ -15,6 +15,7 @@
#include <command.h>
#include <tsec.h>
#include <fsl_mdio.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/processor.h>
#include <asm/io.h>
diff --git a/drivers/net/uli526x.c b/drivers/net/uli526x.c
index c56836641b1..cfdd1137bea 100644
--- a/drivers/net/uli526x.c
+++ b/drivers/net/uli526x.c
@@ -16,6 +16,7 @@
#include <asm/io.h>
#include <pci.h>
#include <miiphy.h>
+#include <linux/delay.h>
/* some kernel function compatible define */
diff --git a/drivers/net/vsc7385.c b/drivers/net/vsc7385.c
index d020aa915ef..af8d99cefbe 100644
--- a/drivers/net/vsc7385.c
+++ b/drivers/net/vsc7385.c
@@ -17,6 +17,7 @@
#include <console.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include "vsc7385.h"
diff --git a/drivers/net/vsc9953.c b/drivers/net/vsc9953.c
index 8bad3519517..c438dab5619 100644
--- a/drivers/net/vsc9953.c
+++ b/drivers/net/vsc9953.c
@@ -17,6 +17,7 @@
#include <malloc.h>
#include <vsc9953.h>
#include <ethsw.h>
+#include <linux/delay.h>
static struct vsc9953_info vsc9953_l2sw = {
.port[0] = VSC9953_PORT_INFO_INITIALIZER(0),
diff --git a/drivers/net/xilinx_axi_emac.c b/drivers/net/xilinx_axi_emac.c
index 09151986f15..d0683db80d8 100644
--- a/drivers/net/xilinx_axi_emac.c
+++ b/drivers/net/xilinx_axi_emac.c
@@ -16,6 +16,7 @@
#include <phy.h>
#include <miiphy.h>
#include <wait_bit.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/net/xilinx_emaclite.c b/drivers/net/xilinx_emaclite.c
index b15e5514e63..9bdb6798b67 100644
--- a/drivers/net/xilinx_emaclite.c
+++ b/drivers/net/xilinx_emaclite.c
@@ -17,6 +17,7 @@
#include <phy.h>
#include <miiphy.h>
#include <fdtdec.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/kernel.h>
#include <asm/io.h>
diff --git a/drivers/pci/fsl_pci_init.c b/drivers/pci/fsl_pci_init.c
index c3c67fc97bd..1d09c5ac4f6 100644
--- a/drivers/pci/fsl_pci_init.c
+++ b/drivers/pci/fsl_pci_init.c
@@ -9,6 +9,7 @@
#include <log.h>
#include <malloc.h>
#include <asm/fsl_serdes.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/pci/pci-aardvark.c b/drivers/pci/pci-aardvark.c
index d678e0b599c..158679139bb 100644
--- a/drivers/pci/pci-aardvark.c
+++ b/drivers/pci/pci-aardvark.c
@@ -30,6 +30,7 @@
#include <asm/io.h>
#include <asm-generic/gpio.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/ioport.h>
/* PCIe core registers */
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c
index 76dfc1a957e..9ab3539a49c 100644
--- a/drivers/pci/pci-uclass.c
+++ b/drivers/pci/pci-uclass.c
@@ -17,6 +17,7 @@
#if defined(CONFIG_X86) && defined(CONFIG_HAVE_FSP)
#include <asm/fsp/fsp_support.h>
#endif
+#include <linux/delay.h>
#include "pci_internal.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 3b67cd24f12..664e8379eb5 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -17,6 +17,7 @@
#include <common.h>
#include <init.h>
#include <log.h>
+#include <linux/delay.h>
#include <command.h>
#include <env.h>
diff --git a/drivers/pci/pci_sh4.c b/drivers/pci/pci_sh4.c
index 4500e8bb296..aac9be055e2 100644
--- a/drivers/pci/pci_sh4.c
+++ b/drivers/pci/pci_sh4.c
@@ -9,6 +9,7 @@
*/
#include <common.h>
+#include <linux/delay.h>
#include <asm/processor.h>
#include <asm/io.h>
diff --git a/drivers/pci/pci_sh7751.c b/drivers/pci/pci_sh7751.c
index 2f48b967193..1f23bbc126e 100644
--- a/drivers/pci/pci_sh7751.c
+++ b/drivers/pci/pci_sh7751.c
@@ -11,6 +11,7 @@
#include <asm/processor.h>
#include <asm/io.h>
#include <asm/pci.h>
+#include <linux/delay.h>
/* Register addresses and such */
#define SH7751_BCR1 (vu_long *)0xFF800000
diff --git a/drivers/pci/pci_sh7780.c b/drivers/pci/pci_sh7780.c
index 722b5e7cf28..06d711a6cb9 100644
--- a/drivers/pci/pci_sh7780.c
+++ b/drivers/pci/pci_sh7780.c
@@ -7,6 +7,7 @@
*/
#include <common.h>
+#include <linux/delay.h>
#include <pci.h>
#include <asm/processor.h>
diff --git a/drivers/pci/pci_tegra.c b/drivers/pci/pci_tegra.c
index 3b4b276abe4..82f5c59d917 100644
--- a/drivers/pci/pci_tegra.c
+++ b/drivers/pci/pci_tegra.c
@@ -21,6 +21,7 @@
#include <pci_tegra.h>
#include <power-domain.h>
#include <reset.h>
+#include <linux/delay.h>
#include <asm/io.h>
#include <asm/gpio.h>
diff --git a/drivers/pci/pcie_dw_mvebu.c b/drivers/pci/pcie_dw_mvebu.c
index b0037911006..c773f8d28d2 100644
--- a/drivers/pci/pcie_dw_mvebu.c
+++ b/drivers/pci/pcie_dw_mvebu.c
@@ -16,6 +16,7 @@
#include <pci.h>
#include <asm/io.h>
#include <asm-generic/gpio.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/pci/pcie_dw_ti.c b/drivers/pci/pcie_dw_ti.c
index 0cca4e6d0d1..e49e39e3991 100644
--- a/drivers/pci/pcie_dw_ti.c
+++ b/drivers/pci/pcie_dw_ti.c
@@ -14,6 +14,7 @@
#include <asm/io.h>
#include <asm-generic/gpio.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/pci/pcie_fsl.c b/drivers/pci/pcie_fsl.c
index dc994b748ad..ab33459e28e 100644
--- a/drivers/pci/pcie_fsl.c
+++ b/drivers/pci/pcie_fsl.c
@@ -14,6 +14,7 @@
#include <asm/fsl_pci.h>
#include <asm/fsl_serdes.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "pcie_fsl.h"
#include <dm/device_compat.h>
diff --git a/drivers/pci/pcie_imx.c b/drivers/pci/pcie_imx.c
index dc18d1ca3a9..cbf12371a0f 100644
--- a/drivers/pci/pcie_imx.c
+++ b/drivers/pci/pcie_imx.c
@@ -20,6 +20,7 @@
#include <asm/gpio.h>
#include <asm/io.h>
#include <dm.h>
+#include <linux/delay.h>
#include <linux/sizes.h>
#include <errno.h>
#include <asm/arch/sys_proto.h>
diff --git a/drivers/pci/pcie_intel_fpga.c b/drivers/pci/pcie_intel_fpga.c
index 6a9f29c5c80..8249c6212ed 100644
--- a/drivers/pci/pcie_intel_fpga.c
+++ b/drivers/pci/pcie_intel_fpga.c
@@ -11,6 +11,7 @@
#include <pci.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#define RP_TX_REG0 0x2000
#define RP_TX_CNTRL 0x2004
diff --git a/drivers/phy/allwinner/phy-sun4i-usb.c b/drivers/phy/allwinner/phy-sun4i-usb.c
index 9696c84e4b3..af974cdddb8 100644
--- a/drivers/phy/allwinner/phy-sun4i-usb.c
+++ b/drivers/phy/allwinner/phy-sun4i-usb.c
@@ -23,6 +23,7 @@
#include <asm/arch/clock.h>
#include <asm/arch/cpu.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
#define REG_ISCR 0x00
diff --git a/drivers/phy/bcm6318-usbh-phy.c b/drivers/phy/bcm6318-usbh-phy.c
index a1ff0b773f3..fe0e43d2703 100644
--- a/drivers/phy/bcm6318-usbh-phy.c
+++ b/drivers/phy/bcm6318-usbh-phy.c
@@ -17,6 +17,7 @@
#include <reset.h>
#include <asm/io.h>
#include <dm/device.h>
+#include <linux/delay.h>
/* USBH Setup register */
#define USBH_SETUP_REG 0x00
diff --git a/drivers/phy/bcm6368-usbh-phy.c b/drivers/phy/bcm6368-usbh-phy.c
index f24e9ff5ee0..8b918b09f97 100644
--- a/drivers/phy/bcm6368-usbh-phy.c
+++ b/drivers/phy/bcm6368-usbh-phy.c
@@ -17,6 +17,7 @@
#include <reset.h>
#include <asm/io.h>
#include <dm/device.h>
+#include <linux/delay.h>
/* USBH PLL Control register */
#define USBH_PLL_REG 0x18
diff --git a/drivers/phy/keystone-usb-phy.c b/drivers/phy/keystone-usb-phy.c
index 3be51a33f8b..7624f10a047 100644
--- a/drivers/phy/keystone-usb-phy.c
+++ b/drivers/phy/keystone-usb-phy.c
@@ -11,6 +11,7 @@
#include <generic-phy.h>
#include <asm/io.h>
#include <asm/arch/psc_defs.h>
+#include <linux/delay.h>
/* USB PHY control register offsets */
#define USB_PHY_CTL_UTMI 0x0000
diff --git a/drivers/phy/marvell/comphy_a3700.c b/drivers/phy/marvell/comphy_a3700.c
index 53b55ce7af1..dc188c44e0d 100644
--- a/drivers/phy/marvell/comphy_a3700.c
+++ b/drivers/phy/marvell/comphy_a3700.c
@@ -9,6 +9,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/delay.h>
#include "comphy_a3700.h"
diff --git a/drivers/phy/marvell/comphy_cp110.c b/drivers/phy/marvell/comphy_cp110.c
index ddfacf65d66..15e80049def 100644
--- a/drivers/phy/marvell/comphy_cp110.c
+++ b/drivers/phy/marvell/comphy_cp110.c
@@ -9,6 +9,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/delay.h>
#include "comphy_core.h"
#include "comphy_hpipe.h"
diff --git a/drivers/phy/meson-g12a-usb2.c b/drivers/phy/meson-g12a-usb2.c
index 6030031184c..a1e62197586 100644
--- a/drivers/phy/meson-g12a-usb2.c
+++ b/drivers/phy/meson-g12a-usb2.c
@@ -16,6 +16,7 @@
#include <errno.h>
#include <generic-phy.h>
#include <regmap.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#include <reset.h>
#include <clk.h>
diff --git a/drivers/phy/meson-g12a-usb3-pcie.c b/drivers/phy/meson-g12a-usb3-pcie.c
index 82655f26dd6..4e9696fd590 100644
--- a/drivers/phy/meson-g12a-usb3-pcie.c
+++ b/drivers/phy/meson-g12a-usb3-pcie.c
@@ -17,6 +17,7 @@
#include <reset.h>
#include <bitfield.h>
#include <generic-phy.h>
+#include <linux/delay.h>
#include <linux/bitops.h>
#include <linux/compat.h>
diff --git a/drivers/phy/meson-gxl-usb2.c b/drivers/phy/meson-gxl-usb2.c
index b4f4c3c76b9..2267bd08c2c 100644
--- a/drivers/phy/meson-gxl-usb2.c
+++ b/drivers/phy/meson-gxl-usb2.c
@@ -15,6 +15,7 @@
#include <errno.h>
#include <generic-phy.h>
#include <regmap.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#include <clk.h>
#include <linux/usb/otg.h>
diff --git a/drivers/phy/mt76x8-usb-phy.c b/drivers/phy/mt76x8-usb-phy.c
index 7fa8c8bf707..4c0818f6e8d 100644
--- a/drivers/phy/mt76x8-usb-phy.c
+++ b/drivers/phy/mt76x8-usb-phy.c
@@ -14,6 +14,7 @@
#include <reset.h>
#include <asm/io.h>
#include <linux/bitops.h>
+#include <linux/delay.h>
#define OFS_U2_PHY_AC0 0x800
#define USBPLL_FBDIV_S 16
diff --git a/drivers/phy/phy-mtk-tphy.c b/drivers/phy/phy-mtk-tphy.c
index 81525a48b70..048e2b19e33 100644
--- a/drivers/phy/phy-mtk-tphy.c
+++ b/drivers/phy/phy-mtk-tphy.c
@@ -14,6 +14,7 @@
#include <asm/io.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/delay.h>
#include <dt-bindings/phy/phy.h>
diff --git a/drivers/phy/phy-rcar-gen2.c b/drivers/phy/phy-rcar-gen2.c
index e93130aee61..18da86e4bea 100644
--- a/drivers/phy/phy-rcar-gen2.c
+++ b/drivers/phy/phy-rcar-gen2.c
@@ -18,6 +18,7 @@
#include <asm/io.h>
#include <dm/device_compat.h>
#include <linux/bitops.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#define USBHS_LPSTS 0x02
diff --git a/drivers/phy/phy-stm32-usbphyc.c b/drivers/phy/phy-stm32-usbphyc.c
index b436c2184ba..464b0735e87 100644
--- a/drivers/phy/phy-stm32-usbphyc.c
+++ b/drivers/phy/phy-stm32-usbphyc.c
@@ -16,6 +16,7 @@
#include <asm/io.h>
#include <dm/device_compat.h>
#include <linux/bitops.h>
+#include <linux/delay.h>
#include <power/regulator.h>
/* USBPHYC registers */
diff --git a/drivers/phy/phy-ti-am654.c b/drivers/phy/phy-ti-am654.c
index 18cf654c785..5220f01558a 100644
--- a/drivers/phy/phy-ti-am654.c
+++ b/drivers/phy/phy-ti-am654.c
@@ -20,6 +20,7 @@
#include <power-domain.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/delay.h>
#include <linux/err.h>
#define CMU_R07C 0x7c
diff --git a/drivers/phy/ti-pipe3-phy.c b/drivers/phy/ti-pipe3-phy.c
index 7fc36319cba..d247a98fc42 100644
--- a/drivers/phy/ti-pipe3-phy.c
+++ b/drivers/phy/ti-pipe3-phy.c
@@ -12,6 +12,7 @@
#include <asm/arch/sys_proto.h>
#include <syscon.h>
#include <regmap.h>
+#include <linux/delay.h>
#include <linux/err.h>
/* PLLCTRL Registers */
diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c
index b0e43ae0a16..9b6a7fa6bb3 100644
--- a/drivers/pinctrl/pinctrl-stmfx.c
+++ b/drivers/pinctrl/pinctrl-stmfx.c
@@ -15,6 +15,7 @@
#include <dm/lists.h>
#include <dm/pinctrl.h>
#include <linux/bitfield.h>
+#include <linux/delay.h>
#include <power/regulator.h>
/* STMFX pins = GPIO[15:0] + aGPIO[7:0] */
diff --git a/drivers/power/axp209.c b/drivers/power/axp209.c
index 60f69ec27ac..ade531940b9 100644
--- a/drivers/power/axp209.c
+++ b/drivers/power/axp209.c
@@ -8,6 +8,7 @@
#include <command.h>
#include <asm/arch/pmic_bus.h>
#include <axp_pmic.h>
+#include <linux/delay.h>
#ifdef CONFIG_AXP_ALDO3_VOLT_SLOPE_08
# define AXP209_VRC_SLOPE AXP209_VRC_LDO3_800uV_uS
diff --git a/drivers/power/battery/bat_trats.c b/drivers/power/battery/bat_trats.c
index f461a37a9f6..54b2bf91e5c 100644
--- a/drivers/power/battery/bat_trats.c
+++ b/drivers/power/battery/bat_trats.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <console.h>
#include <log.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/battery.h>
#include <power/max8997_pmic.h>
diff --git a/drivers/power/domain/meson-ee-pwrc.c b/drivers/power/domain/meson-ee-pwrc.c
index 0fc8cb66d15..b668d949747 100644
--- a/drivers/power/domain/meson-ee-pwrc.c
+++ b/drivers/power/domain/meson-ee-pwrc.c
@@ -15,6 +15,7 @@
#include <clk.h>
#include <dt-bindings/power/meson-g12a-power.h>
#include <dt-bindings/power/meson-sm1-power.h>
+#include <linux/delay.h>
#include <linux/err.h>
/* AO Offsets */
diff --git a/drivers/power/domain/meson-gx-pwrc-vpu.c b/drivers/power/domain/meson-gx-pwrc-vpu.c
index 6a938bb9958..d43383b68dd 100644
--- a/drivers/power/domain/meson-gx-pwrc-vpu.c
+++ b/drivers/power/domain/meson-gx-pwrc-vpu.c
@@ -15,6 +15,7 @@
#include <syscon.h>
#include <reset.h>
#include <clk.h>
+#include <linux/delay.h>
#include <linux/err.h>
enum {
diff --git a/drivers/power/fuel_gauge/fg_max17042.c b/drivers/power/fuel_gauge/fg_max17042.c
index 7c7e9a752da..a395d587a86 100644
--- a/drivers/power/fuel_gauge/fg_max17042.c
+++ b/drivers/power/fuel_gauge/fg_max17042.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/max17042_fg.h>
#include <i2c.h>
diff --git a/drivers/power/mt6323.c b/drivers/power/mt6323.c
index f5b27548d3e..354817a0378 100644
--- a/drivers/power/mt6323.c
+++ b/drivers/power/mt6323.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <command.h>
#include <asm/io.h>
+#include <linux/delay.h>
#define PWRAP_BASE 0x1000d000
#define PWRAP_WACS2_CMD 0x9c
diff --git a/drivers/power/pmic/pmic_hi6553.c b/drivers/power/pmic/pmic_hi6553.c
index 6443c9ffc98..80b9078cf8f 100644
--- a/drivers/power/pmic/pmic_hi6553.c
+++ b/drivers/power/pmic/pmic_hi6553.c
@@ -5,6 +5,7 @@
*/
#include <asm/io.h>
#include <common.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/max8997_muic.h>
#include <power/hi6553_pmic.h>
diff --git a/drivers/power/regulator/pbias_regulator.c b/drivers/power/regulator/pbias_regulator.c
index db8c5a949c6..28a9a1470b1 100644
--- a/drivers/power/regulator/pbias_regulator.c
+++ b/drivers/power/regulator/pbias_regulator.c
@@ -8,6 +8,7 @@
#include <errno.h>
#include <dm.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <power/pmic.h>
#include <power/regulator.h>
diff --git a/drivers/power/regulator/regulator-uclass.c b/drivers/power/regulator/regulator-uclass.c
index b959c469ec6..7dcb3171928 100644
--- a/drivers/power/regulator/regulator-uclass.c
+++ b/drivers/power/regulator/regulator-uclass.c
@@ -9,6 +9,7 @@
#include <dm.h>
#include <log.h>
#include <dm/uclass-internal.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/regulator.h>
diff --git a/drivers/power/regulator/regulator_common.c b/drivers/power/regulator/regulator_common.c
index 637db024348..16d9412cd52 100644
--- a/drivers/power/regulator/regulator_common.c
+++ b/drivers/power/regulator/regulator_common.c
@@ -7,6 +7,7 @@
#include "regulator_common.h"
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <power/regulator.h>
int regulator_common_ofdata_to_platdata(struct udevice *dev,
diff --git a/drivers/power/regulator/s2mps11_regulator.c b/drivers/power/regulator/s2mps11_regulator.c
index 67d1f9689de..a6b4f158ef7 100644
--- a/drivers/power/regulator/s2mps11_regulator.c
+++ b/drivers/power/regulator/s2mps11_regulator.c
@@ -9,6 +9,7 @@
#include <errno.h>
#include <dm.h>
#include <i2c.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/regulator.h>
#include <power/s2mps11.h>
diff --git a/drivers/power/regulator/stpmic1.c b/drivers/power/regulator/stpmic1.c
index 1e3f96f3a08..3e342f48086 100644
--- a/drivers/power/regulator/stpmic1.c
+++ b/drivers/power/regulator/stpmic1.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <dm.h>
#include <errno.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/regulator.h>
#include <power/stpmic1.h>
diff --git a/drivers/power/regulator/tps65090_regulator.c b/drivers/power/regulator/tps65090_regulator.c
index 6dfec893360..9e45627a742 100644
--- a/drivers/power/regulator/tps65090_regulator.c
+++ b/drivers/power/regulator/tps65090_regulator.c
@@ -7,6 +7,7 @@
#include <dm.h>
#include <errno.h>
#include <log.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/regulator.h>
#include <power/tps65090.h>
diff --git a/drivers/power/regulator/tps65941_regulator.c b/drivers/power/regulator/tps65941_regulator.c
index 3f8be6c8e46..150c72d7ec4 100644
--- a/drivers/power/regulator/tps65941_regulator.c
+++ b/drivers/power/regulator/tps65941_regulator.c
@@ -12,6 +12,7 @@
#include <dm.h>
#include <i2c.h>
#include <log.h>
+#include <linux/delay.h>
#include <power/pmic.h>
#include <power/regulator.h>
#include <power/tps65941.h>
diff --git a/drivers/power/tps6586x.c b/drivers/power/tps6586x.c
index 8c61a41b202..49b28a5e6bf 100644
--- a/drivers/power/tps6586x.c
+++ b/drivers/power/tps6586x.c
@@ -9,6 +9,7 @@
#include <tps6586x.h>
#include <asm/io.h>
#include <i2c.h>
+#include <linux/delay.h>
static struct udevice *tps6586x_dev;
diff --git a/drivers/power/twl4030.c b/drivers/power/twl4030.c
index 4cc261aced6..b0d5cba2c49 100644
--- a/drivers/power/twl4030.c
+++ b/drivers/power/twl4030.c
@@ -24,6 +24,7 @@
#include <command.h>
#include <twl4030.h>
+#include <linux/delay.h>
/*
* Power Reset
diff --git a/drivers/power/twl6030.c b/drivers/power/twl6030.c
index 103960d48d2..60a5aaaf19f 100644
--- a/drivers/power/twl6030.c
+++ b/drivers/power/twl6030.c
@@ -4,6 +4,7 @@
* Texas Instruments, <www.ti.com>
*/
#include <config.h>
+#include <linux/delay.h>
#include <twl6030.h>
diff --git a/drivers/qe/uec.c b/drivers/qe/uec.c
index 4ab0e21d217..849f191d6d1 100644
--- a/drivers/qe/uec.c
+++ b/drivers/qe/uec.c
@@ -9,6 +9,7 @@
#include <log.h>
#include <net.h>
#include <malloc.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <linux/immap_qe.h>
diff --git a/drivers/qe/uec_phy.c b/drivers/qe/uec_phy.c
index 1dae2615095..69c22dd5e26 100644
--- a/drivers/qe/uec_phy.c
+++ b/drivers/qe/uec_phy.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <net.h>
#include <malloc.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/immap_qe.h>
#include <asm/io.h>
diff --git a/drivers/ram/imxrt_sdram.c b/drivers/ram/imxrt_sdram.c
index b9831ec8b17..80fcb7e56ea 100644
--- a/drivers/ram/imxrt_sdram.c
+++ b/drivers/ram/imxrt_sdram.c
@@ -11,6 +11,7 @@
#include <log.h>
#include <ram.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/err.h>
/* SDRAM Command Code */
diff --git a/drivers/ram/mediatek/ddr3-mt7629.c b/drivers/ram/mediatek/ddr3-mt7629.c
index b413f499d03..6b4296d714d 100644
--- a/drivers/ram/mediatek/ddr3-mt7629.c
+++ b/drivers/ram/mediatek/ddr3-mt7629.c
@@ -12,6 +12,7 @@
#include <dm.h>
#include <ram.h>
#include <asm/io.h>
+#include <linux/delay.h>
/* EMI */
#define EMI_CONA 0x000
diff --git a/drivers/ram/rockchip/dmc-rk3368.c b/drivers/ram/rockchip/dmc-rk3368.c
index 8dc47389206..31a3c83b039 100644
--- a/drivers/ram/rockchip/dmc-rk3368.c
+++ b/drivers/ram/rockchip/dmc-rk3368.c
@@ -20,6 +20,7 @@
#include <asm/arch-rockchip/ddr_rk3368.h>
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_rk3288.h>
+#include <linux/delay.h>
#include <linux/err.h>
struct dram_info {
diff --git a/drivers/ram/rockchip/sdram_pctl_px30.c b/drivers/ram/rockchip/sdram_pctl_px30.c
index 1839cebb677..331d85fba26 100644
--- a/drivers/ram/rockchip/sdram_pctl_px30.c
+++ b/drivers/ram/rockchip/sdram_pctl_px30.c
@@ -8,6 +8,7 @@
#include <asm/io.h>
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_pctl_px30.h>
+#include <linux/delay.h>
/*
* rank = 1: cs0
diff --git a/drivers/ram/rockchip/sdram_phy_px30.c b/drivers/ram/rockchip/sdram_phy_px30.c
index 5de73770a8c..f7f6de1ba98 100644
--- a/drivers/ram/rockchip/sdram_phy_px30.c
+++ b/drivers/ram/rockchip/sdram_phy_px30.c
@@ -9,6 +9,7 @@
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_common.h>
#include <asm/arch-rockchip/sdram_phy_px30.h>
+#include <linux/delay.h>
static void sdram_phy_dll_bypass_set(void __iomem *phy_base, u32 freq)
{
diff --git a/drivers/ram/rockchip/sdram_px30.c b/drivers/ram/rockchip/sdram_px30.c
index 67f494c7f1f..fd5763d0a0d 100644
--- a/drivers/ram/rockchip/sdram_px30.c
+++ b/drivers/ram/rockchip/sdram_px30.c
@@ -17,6 +17,7 @@
#include <asm/arch-rockchip/hardware.h>
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_px30.h>
+#include <linux/delay.h>
struct dram_info {
#ifdef CONFIG_TPL_BUILD
diff --git a/drivers/ram/rockchip/sdram_rk3188.c b/drivers/ram/rockchip/sdram_rk3188.c
index cc9bd02c161..7aedb4fbac7 100644
--- a/drivers/ram/rockchip/sdram_rk3188.c
+++ b/drivers/ram/rockchip/sdram_rk3188.c
@@ -25,6 +25,7 @@
#include <asm/arch-rockchip/pmu_rk3188.h>
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_rk3288.h>
+#include <linux/delay.h>
#include <linux/err.h>
struct chan_info {
diff --git a/drivers/ram/rockchip/sdram_rk322x.c b/drivers/ram/rockchip/sdram_rk322x.c
index 0b11b48697c..094693ce247 100644
--- a/drivers/ram/rockchip/sdram_rk322x.c
+++ b/drivers/ram/rockchip/sdram_rk322x.c
@@ -20,6 +20,7 @@
#include <asm/arch-rockchip/uart.h>
#include <asm/arch-rockchip/sdram.h>
#include <asm/types.h>
+#include <linux/delay.h>
#include <linux/err.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/ram/rockchip/sdram_rk3288.c b/drivers/ram/rockchip/sdram_rk3288.c
index 2e6186d38d3..64d704ef267 100644
--- a/drivers/ram/rockchip/sdram_rk3288.c
+++ b/drivers/ram/rockchip/sdram_rk3288.c
@@ -25,6 +25,7 @@
#include <asm/arch-rockchip/pmu_rk3288.h>
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_rk3288.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <power/regulator.h>
#include <power/rk8xx_pmic.h>
diff --git a/drivers/ram/rockchip/sdram_rk3328.c b/drivers/ram/rockchip/sdram_rk3328.c
index f01301068ea..3f3926f9e4c 100644
--- a/drivers/ram/rockchip/sdram_rk3328.c
+++ b/drivers/ram/rockchip/sdram_rk3328.c
@@ -19,6 +19,7 @@
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_rk3328.h>
#include <asm/arch-rockchip/uart.h>
+#include <linux/delay.h>
struct dram_info {
#ifdef CONFIG_TPL_BUILD
diff --git a/drivers/ram/rockchip/sdram_rk3399.c b/drivers/ram/rockchip/sdram_rk3399.c
index 9d2d3cf510a..60a1ab8b516 100644
--- a/drivers/ram/rockchip/sdram_rk3399.c
+++ b/drivers/ram/rockchip/sdram_rk3399.c
@@ -22,6 +22,7 @@
#include <asm/arch-rockchip/hardware.h>
#include <asm/arch-rockchip/sdram.h>
#include <asm/arch-rockchip/sdram_rk3399.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <time.h>
diff --git a/drivers/ram/stm32_sdram.c b/drivers/ram/stm32_sdram.c
index d9b1b24f032..1894a60f1a2 100644
--- a/drivers/ram/stm32_sdram.c
+++ b/drivers/ram/stm32_sdram.c
@@ -12,6 +12,7 @@
#include <ram.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#define MEM_MODE_MASK GENMASK(2, 0)
#define SWP_FMC_OFFSET 10
diff --git a/drivers/ram/stm32mp1/stm32mp1_ddr.c b/drivers/ram/stm32mp1/stm32mp1_ddr.c
index f10ecdd2ef3..f523dc8ea23 100644
--- a/drivers/ram/stm32mp1/stm32mp1_ddr.c
+++ b/drivers/ram/stm32mp1/stm32mp1_ddr.c
@@ -11,6 +11,7 @@
#include <timer.h>
#include <asm/io.h>
#include <asm/arch/ddr.h>
+#include <linux/delay.h>
#include <linux/iopoll.h>
#include "stm32mp1_ddr.h"
#include "stm32mp1_ddr_regs.h"
diff --git a/drivers/ram/stm32mp1/stm32mp1_tuning.c b/drivers/ram/stm32mp1/stm32mp1_tuning.c
index d2c3e89fa6b..a8d6892bb09 100644
--- a/drivers/ram/stm32mp1/stm32mp1_tuning.c
+++ b/drivers/ram/stm32mp1/stm32mp1_tuning.c
@@ -11,6 +11,7 @@
#include <reset.h>
#include <asm/io.h>
#include <linux/bitops.h>
+#include <linux/delay.h>
#include <linux/iopoll.h>
#include "stm32mp1_ddr_regs.h"
diff --git a/drivers/reset/reset-bcm6345.c b/drivers/reset/reset-bcm6345.c
index 20ea16d37c2..0511a0c63a3 100644
--- a/drivers/reset/reset-bcm6345.c
+++ b/drivers/reset/reset-bcm6345.c
@@ -13,6 +13,7 @@
#include <malloc.h>
#include <reset-uclass.h>
#include <asm/io.h>
+#include <linux/delay.h>
#define MAX_RESETS 32
diff --git a/drivers/reset/reset-imx7.c b/drivers/reset/reset-imx7.c
index bbbca139251..ce7e1c4ed22 100644
--- a/drivers/reset/reset-imx7.c
+++ b/drivers/reset/reset-imx7.c
@@ -11,6 +11,7 @@
#include <dt-bindings/reset/imx7-reset.h>
#include <dt-bindings/reset/imx8mq-reset.h>
#include <reset-uclass.h>
+#include <linux/delay.h>
struct imx7_reset_priv {
void __iomem *base;
diff --git a/drivers/rng/stm32mp1_rng.c b/drivers/rng/stm32mp1_rng.c
index 7ee74718759..a9a927336be 100644
--- a/drivers/rng/stm32mp1_rng.c
+++ b/drivers/rng/stm32mp1_rng.c
@@ -9,6 +9,7 @@
#include <log.h>
#include <reset.h>
#include <rng.h>
+#include <linux/delay.h>
#include <asm/io.h>
#include <linux/iopoll.h>
diff --git a/drivers/rtc/davinci.c b/drivers/rtc/davinci.c
index 3514e7351ee..c446e7a735f 100644
--- a/drivers/rtc/davinci.c
+++ b/drivers/rtc/davinci.c
@@ -9,6 +9,7 @@
#include <rtc.h>
#include <asm/io.h>
#include <asm/davinci_rtc.h>
+#include <linux/delay.h>
int rtc_get(struct rtc_time *tmp)
{
diff --git a/drivers/rtc/ds1302.c b/drivers/rtc/ds1302.c
index b94163f7486..189607c3e02 100644
--- a/drivers/rtc/ds1302.c
+++ b/drivers/rtc/ds1302.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <command.h>
#include <rtc.h>
+#include <linux/delay.h>
/* GPP Pins */
#define DATA 0x200
diff --git a/drivers/rtc/ds1306.c b/drivers/rtc/ds1306.c
index 1bd1151e1b3..36d615812b2 100644
--- a/drivers/rtc/ds1306.c
+++ b/drivers/rtc/ds1306.c
@@ -18,6 +18,7 @@
#include <command.h>
#include <rtc.h>
#include <spi.h>
+#include <linux/delay.h>
#define RTC_SECONDS 0x00
#define RTC_MINUTES 0x01
diff --git a/drivers/rtc/imxdi.c b/drivers/rtc/imxdi.c
index 39920f1a7a9..e3a1393266c 100644
--- a/drivers/rtc/imxdi.c
+++ b/drivers/rtc/imxdi.c
@@ -16,6 +16,7 @@
#include <command.h>
#include <linux/compat.h>
#include <rtc.h>
+#include <linux/delay.h>
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
diff --git a/drivers/rtc/max6900.c b/drivers/rtc/max6900.c
index b35186579a5..11928839dcf 100644
--- a/drivers/rtc/max6900.c
+++ b/drivers/rtc/max6900.c
@@ -14,6 +14,7 @@
#include <command.h>
#include <rtc.h>
#include <i2c.h>
+#include <linux/delay.h>
#ifndef CONFIG_SYS_I2C_RTC_ADDR
#define CONFIG_SYS_I2C_RTC_ADDR 0x50
diff --git a/drivers/rtc/mvrtc.c b/drivers/rtc/mvrtc.c
index 94a065379c9..6f49505d4eb 100644
--- a/drivers/rtc/mvrtc.c
+++ b/drivers/rtc/mvrtc.c
@@ -13,6 +13,7 @@
#include <dm.h>
#include <rtc.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "mvrtc.h"
/* This RTC does not support century, so we assume 20 */
diff --git a/drivers/rtc/rv3029.c b/drivers/rtc/rv3029.c
index 5e1689a91d9..9be58425bfb 100644
--- a/drivers/rtc/rv3029.c
+++ b/drivers/rtc/rv3029.c
@@ -15,6 +15,7 @@
#include <log.h>
#include <rtc.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#define RTC_RV3029_PAGE_LEN 7
diff --git a/drivers/rtc/s35392a.c b/drivers/rtc/s35392a.c
index 3bfe481403d..80f55c86233 100644
--- a/drivers/rtc/s35392a.c
+++ b/drivers/rtc/s35392a.c
@@ -23,6 +23,7 @@
#include <i2c.h>
#include <linux/bitrev.h>
#include <rtc.h>
+#include <linux/delay.h>
#define S35390A_CHIP_ADDR 0x30
diff --git a/drivers/serial/atmel_usart.c b/drivers/serial/atmel_usart.c
index 98d209072d1..71cb31ff75e 100644
--- a/drivers/serial/atmel_usart.c
+++ b/drivers/serial/atmel_usart.c
@@ -14,6 +14,7 @@
#include <serial.h>
#include <debug_uart.h>
#include <linux/compiler.h>
+#include <linux/delay.h>
#include <asm/io.h>
#ifdef CONFIG_DM_SERIAL
diff --git a/drivers/serial/serial-uclass.c b/drivers/serial/serial-uclass.c
index 7703c674929..a0af0e6bfde 100644
--- a/drivers/serial/serial-uclass.c
+++ b/drivers/serial/serial-uclass.c
@@ -15,6 +15,7 @@
#include <dm/lists.h>
#include <dm/device-internal.h>
#include <dm/of_access.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c
index baeaeaac8ea..da017dc5b3e 100644
--- a/drivers/serial/serial.c
+++ b/drivers/serial/serial.c
@@ -12,6 +12,7 @@
#include <post.h>
#include <linux/compiler.h>
#include <errno.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
index acfcc2954a9..5f45d58e580 100644
--- a/drivers/serial/serial_sh.c
+++ b/drivers/serial/serial_sh.c
@@ -15,6 +15,7 @@
#include <serial.h>
#include <linux/compiler.h>
#include <dm/platform_data/serial_sh.h>
+#include <linux/delay.h>
#include "serial_sh.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/serial/serial_stm32.c b/drivers/serial/serial_stm32.c
index a9f5c3c3ea9..5c1cf81ae04 100644
--- a/drivers/serial/serial_stm32.c
+++ b/drivers/serial/serial_stm32.c
@@ -13,6 +13,7 @@
#include <watchdog.h>
#include <asm/io.h>
#include <asm/arch/stm32.h>
+#include <linux/delay.h>
#include "serial_stm32.h"
#include <dm/device_compat.h>
diff --git a/drivers/sound/hda_codec.c b/drivers/sound/hda_codec.c
index 92e19452f14..b59c63edb33 100644
--- a/drivers/sound/hda_codec.c
+++ b/drivers/sound/hda_codec.c
@@ -15,6 +15,7 @@
#include <sound.h>
#include <asm/io.h>
#include <dt-bindings/sound/azalia.h>
+#include <linux/delay.h>
/**
* struct hda_regs - HDA registers
diff --git a/drivers/sound/max98090.c b/drivers/sound/max98090.c
index 29afbbc5c43..d23955d6e10 100644
--- a/drivers/sound/max98090.c
+++ b/drivers/sound/max98090.c
@@ -14,6 +14,7 @@
#include <log.h>
#include <sound.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#include "maxim_codec.h"
#include "max98090.h"
diff --git a/drivers/sound/sound-uclass.c b/drivers/sound/sound-uclass.c
index 9aeeb809680..92f4b0b924b 100644
--- a/drivers/sound/sound-uclass.c
+++ b/drivers/sound/sound-uclass.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <malloc.h>
#include <sound.h>
+#include <linux/delay.h>
#define SOUND_BITS_IN_BYTE 8
diff --git a/drivers/spi/cadence_qspi_apb.c b/drivers/spi/cadence_qspi_apb.c
index e0a2003239b..63628692997 100644
--- a/drivers/spi/cadence_qspi_apb.c
+++ b/drivers/spi/cadence_qspi_apb.c
@@ -29,6 +29,7 @@
#include <log.h>
#include <asm/io.h>
#include <dma.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <wait_bit.h>
#include <spi.h>
diff --git a/drivers/spi/davinci_spi.c b/drivers/spi/davinci_spi.c
index 3efa8dbaf02..c00a05af7d1 100644
--- a/drivers/spi/davinci_spi.c
+++ b/drivers/spi/davinci_spi.c
@@ -16,6 +16,7 @@
#include <asm/arch/hardware.h>
#include <dm.h>
#include <dm/platform_data/spi_davinci.h>
+#include <linux/delay.h>
/* SPIGCR0 */
#define SPIGCR0_SPIENA_MASK 0x1
diff --git a/drivers/spi/exynos_spi.c b/drivers/spi/exynos_spi.c
index cded7a8ddce..746686a18af 100644
--- a/drivers/spi/exynos_spi.c
+++ b/drivers/spi/exynos_spi.c
@@ -19,6 +19,7 @@
#include <asm/arch/pinmux.h>
#include <asm/arch/spi.h>
#include <asm/io.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/fsl_dspi.c b/drivers/spi/fsl_dspi.c
index c85253dc715..cb3d44cb0f6 100644
--- a/drivers/spi/fsl_dspi.c
+++ b/drivers/spi/fsl_dspi.c
@@ -22,6 +22,7 @@
#include <asm/arch/clock.h>
#endif
#include <fsl_dspi.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/fsl_espi.c b/drivers/spi/fsl_espi.c
index 67544ff522e..ba49839107d 100644
--- a/drivers/spi/fsl_espi.c
+++ b/drivers/spi/fsl_espi.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <malloc.h>
#include <spi.h>
diff --git a/drivers/spi/fsl_qspi.c b/drivers/spi/fsl_qspi.c
index 0ee5074269c..de93cbda67c 100644
--- a/drivers/spi/fsl_qspi.c
+++ b/drivers/spi/fsl_qspi.c
@@ -26,6 +26,7 @@
#include <common.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <linux/sizes.h>
#include <linux/iopoll.h>
diff --git a/drivers/spi/ich.c b/drivers/spi/ich.c
index 537c7566024..9c42755daed 100644
--- a/drivers/spi/ich.c
+++ b/drivers/spi/ich.c
@@ -25,6 +25,7 @@
#include <asm/fast_spi.h>
#include <asm/io.h>
#include <asm/mtrr.h>
+#include <linux/delay.h>
#include <linux/sizes.h>
#include "ich.h"
diff --git a/drivers/spi/mpc8xx_spi.c b/drivers/spi/mpc8xx_spi.c
index b020ce2b9d7..0026ad23e37 100644
--- a/drivers/spi/mpc8xx_spi.c
+++ b/drivers/spi/mpc8xx_spi.c
@@ -20,6 +20,7 @@
#include <dm.h>
#include <mpc8xx.h>
#include <spi.h>
+#include <linux/delay.h>
#include <asm/cpm_8xx.h>
#include <asm/io.h>
diff --git a/drivers/spi/mpc8xxx_spi.c b/drivers/spi/mpc8xxx_spi.c
index 8aedd5e7058..8491eacb1b1 100644
--- a/drivers/spi/mpc8xxx_spi.c
+++ b/drivers/spi/mpc8xxx_spi.c
@@ -14,6 +14,7 @@
#include <asm/mpc8xxx_spi.h>
#include <asm-generic/gpio.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
enum {
SPI_EV_NE = BIT(31 - 22), /* Receiver Not Empty */
diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c
index 4865fd91f8c..e35c6f9b4a9 100644
--- a/drivers/spi/mxc_spi.c
+++ b/drivers/spi/mxc_spi.c
@@ -9,6 +9,7 @@
#include <malloc.h>
#include <spi.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/gpio.h>
diff --git a/drivers/spi/rk_spi.c b/drivers/spi/rk_spi.c
index c5842dc9261..833cb04922e 100644
--- a/drivers/spi/rk_spi.c
+++ b/drivers/spi/rk_spi.c
@@ -18,6 +18,7 @@
#include <log.h>
#include <spi.h>
#include <time.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/arch-rockchip/clock.h>
diff --git a/drivers/spi/sh_spi.c b/drivers/spi/sh_spi.c
index c58fd0ebc43..4ecfe60115b 100644
--- a/drivers/spi/sh_spi.c
+++ b/drivers/spi/sh_spi.c
@@ -10,6 +10,7 @@
#include <malloc.h>
#include <spi.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "sh_spi.h"
static void sh_spi_write(unsigned long data, unsigned long *reg)
diff --git a/drivers/spi/soft_spi.c b/drivers/spi/soft_spi.c
index af0dd7150f7..e5f9f49caf8 100644
--- a/drivers/spi/soft_spi.c
+++ b/drivers/spi/soft_spi.c
@@ -17,6 +17,7 @@
#include <malloc.h>
#include <spi.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/stm32_qspi.c b/drivers/spi/stm32_qspi.c
index ae62aebc02c..9fc5f6e00e9 100644
--- a/drivers/spi/stm32_qspi.c
+++ b/drivers/spi/stm32_qspi.c
@@ -13,6 +13,7 @@
#include <reset.h>
#include <spi-mem.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/iopoll.h>
#include <linux/ioport.h>
#include <linux/sizes.h>
diff --git a/drivers/spi/stm32_spi.c b/drivers/spi/stm32_spi.c
index fdc9f952e7f..8071de09eba 100644
--- a/drivers/spi/stm32_spi.c
+++ b/drivers/spi/stm32_spi.c
@@ -13,6 +13,7 @@
#include <reset.h>
#include <spi.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <asm/io.h>
#include <asm/gpio.h>
diff --git a/drivers/spi/tegra114_spi.c b/drivers/spi/tegra114_spi.c
index 27409186b0c..bf02bdb1afe 100644
--- a/drivers/spi/tegra114_spi.c
+++ b/drivers/spi/tegra114_spi.c
@@ -13,6 +13,7 @@
#include <asm/arch/clock.h>
#include <asm/arch-tegra/clk_rst.h>
#include <spi.h>
+#include <linux/delay.h>
#include "tegra_spi.h"
/* COMMAND1 */
diff --git a/drivers/spi/tegra20_sflash.c b/drivers/spi/tegra20_sflash.c
index 3a1ef8c0935..1461f094277 100644
--- a/drivers/spi/tegra20_sflash.c
+++ b/drivers/spi/tegra20_sflash.c
@@ -17,6 +17,7 @@
#include <asm/arch-tegra/clk_rst.h>
#include <spi.h>
#include <fdtdec.h>
+#include <linux/delay.h>
#include "tegra_spi.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/tegra20_slink.c b/drivers/spi/tegra20_slink.c
index f09d9603d84..dcd09508946 100644
--- a/drivers/spi/tegra20_slink.c
+++ b/drivers/spi/tegra20_slink.c
@@ -14,6 +14,7 @@
#include <asm/arch-tegra/clk_rst.h>
#include <spi.h>
#include <fdtdec.h>
+#include <linux/delay.h>
#include "tegra_spi.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/tegra210_qspi.c b/drivers/spi/tegra210_qspi.c
index c810dc421bd..96ab6502de1 100644
--- a/drivers/spi/tegra210_qspi.c
+++ b/drivers/spi/tegra210_qspi.c
@@ -15,6 +15,7 @@
#include <asm/arch-tegra/clk_rst.h>
#include <spi.h>
#include <fdtdec.h>
+#include <linux/delay.h>
#include "tegra_spi.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/uniphier_spi.c b/drivers/spi/uniphier_spi.c
index 57d41b778b2..42ed1ba20b0 100644
--- a/drivers/spi/uniphier_spi.c
+++ b/drivers/spi/uniphier_spi.c
@@ -11,6 +11,7 @@
#include <time.h>
#include <dm/device_compat.h>
#include <linux/bitfield.h>
+#include <linux/delay.h>
#include <linux/io.h>
#include <spi.h>
#include <wait_bit.h>
diff --git a/drivers/spi/zynq_spi.c b/drivers/spi/zynq_spi.c
index b59b876a626..e3bad5532a5 100644
--- a/drivers/spi/zynq_spi.c
+++ b/drivers/spi/zynq_spi.c
@@ -13,6 +13,7 @@
#include <spi.h>
#include <time.h>
#include <asm/io.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/sysreset/sysreset-uclass.c b/drivers/sysreset/sysreset-uclass.c
index d43c7b70034..995240f0cbc 100644
--- a/drivers/sysreset/sysreset-uclass.c
+++ b/drivers/sysreset/sysreset-uclass.c
@@ -18,6 +18,7 @@
#include <dm/device-internal.h>
#include <dm/lists.h>
#include <dm/root.h>
+#include <linux/delay.h>
#include <linux/err.h>
int sysreset_request(struct udevice *dev, enum sysreset_t type)
diff --git a/drivers/sysreset/sysreset_mpc83xx.c b/drivers/sysreset/sysreset_mpc83xx.c
index ff08d356bfe..456f006bc12 100644
--- a/drivers/sysreset/sysreset_mpc83xx.c
+++ b/drivers/sysreset/sysreset_mpc83xx.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <sysreset.h>
#include <wait_bit.h>
+#include <linux/delay.h>
#include "sysreset_mpc83xx.h"
diff --git a/drivers/thermal/imx_scu_thermal.c b/drivers/thermal/imx_scu_thermal.c
index 2d3a363a20c..321f905e3ac 100644
--- a/drivers/thermal/imx_scu_thermal.c
+++ b/drivers/thermal/imx_scu_thermal.c
@@ -12,6 +12,7 @@
#include <dm/device-internal.h>
#include <dm/device.h>
#include <asm/arch/sci/sci.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
index da3fca90367..101bd5ef2d7 100644
--- a/drivers/thermal/imx_thermal.c
+++ b/drivers/thermal/imx_thermal.c
@@ -16,6 +16,7 @@
#include <dm.h>
#include <errno.h>
#include <malloc.h>
+#include <linux/delay.h>
#include <linux/math64.h>
#include <thermal.h>
#include <imx_thermal.h>
diff --git a/drivers/timer/tsc_timer.c b/drivers/timer/tsc_timer.c
index 890660b44a9..93c959ff444 100644
--- a/drivers/timer/tsc_timer.c
+++ b/drivers/timer/tsc_timer.c
@@ -19,6 +19,7 @@
#include <asm/ibmpc.h>
#include <asm/msr.h>
#include <asm/u-boot-x86.h>
+#include <linux/delay.h>
#define MAX_NUM_FREQS 9
diff --git a/drivers/tpm/cr50_i2c.c b/drivers/tpm/cr50_i2c.c
index 026adbd737b..1942c07c605 100644
--- a/drivers/tpm/cr50_i2c.c
+++ b/drivers/tpm/cr50_i2c.c
@@ -18,6 +18,7 @@
#include <asm/io.h>
#include <asm/arch/iomap.h>
#include <asm/arch/pm.h>
+#include <linux/delay.h>
enum {
TIMEOUT_INIT_MS = 30000, /* Very long timeout for TPM init */
diff --git a/drivers/tpm/tpm-uclass.c b/drivers/tpm/tpm-uclass.c
index 19c0502d873..6ea795bc0c9 100644
--- a/drivers/tpm/tpm-uclass.c
+++ b/drivers/tpm/tpm-uclass.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <dm.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/unaligned/be_byteshift.h>
#include <tpm-v1.h>
#include <tpm-v2.h>
diff --git a/drivers/tpm/tpm2_tis_spi.c b/drivers/tpm/tpm2_tis_spi.c
index 713111f6c3e..03918ed6a74 100644
--- a/drivers/tpm/tpm2_tis_spi.c
+++ b/drivers/tpm/tpm2_tis_spi.c
@@ -19,6 +19,7 @@
#include <log.h>
#include <spi.h>
#include <tpm-v2.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/compiler.h>
#include <linux/types.h>
diff --git a/drivers/tpm/tpm_atmel_twi.c b/drivers/tpm/tpm_atmel_twi.c
index 2079ea913e4..d9e4877c5c2 100644
--- a/drivers/tpm/tpm_atmel_twi.c
+++ b/drivers/tpm/tpm_atmel_twi.c
@@ -10,6 +10,7 @@
#include <tpm-v1.h>
#include <i2c.h>
#include <asm/unaligned.h>
+#include <linux/delay.h>
#include "tpm_internal.h"
diff --git a/drivers/tpm/tpm_tis_infineon.c b/drivers/tpm/tpm_tis_infineon.c
index b007c7ec6fc..f47813e76d0 100644
--- a/drivers/tpm/tpm_tis_infineon.c
+++ b/drivers/tpm/tpm_tis_infineon.c
@@ -25,6 +25,7 @@
#include <i2c.h>
#include <log.h>
#include <tpm-v1.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/compiler.h>
#include <linux/types.h>
diff --git a/drivers/tpm/tpm_tis_lpc.c b/drivers/tpm/tpm_tis_lpc.c
index da4269a56ed..2dd374cf77d 100644
--- a/drivers/tpm/tpm_tis_lpc.c
+++ b/drivers/tpm/tpm_tis_lpc.c
@@ -18,6 +18,7 @@
#include <mapmem.h>
#include <tpm-v1.h>
#include <asm/io.h>
+#include <linux/delay.h>
#define PREFIX "lpc_tpm: "
diff --git a/drivers/tpm/tpm_tis_st33zp24_i2c.c b/drivers/tpm/tpm_tis_st33zp24_i2c.c
index c8f82658135..a253ee15027 100644
--- a/drivers/tpm/tpm_tis_st33zp24_i2c.c
+++ b/drivers/tpm/tpm_tis_st33zp24_i2c.c
@@ -19,6 +19,7 @@
#include <log.h>
#include <tpm-v1.h>
#include <errno.h>
+#include <linux/delay.h>
#include <linux/types.h>
#include <asm/unaligned.h>
diff --git a/drivers/tpm/tpm_tis_st33zp24_spi.c b/drivers/tpm/tpm_tis_st33zp24_spi.c
index 8e7b297fe21..ef54e3b7b29 100644
--- a/drivers/tpm/tpm_tis_st33zp24_spi.c
+++ b/drivers/tpm/tpm_tis_st33zp24_spi.c
@@ -19,6 +19,7 @@
#include <spi.h>
#include <tpm-v1.h>
#include <errno.h>
+#include <linux/delay.h>
#include <linux/types.h>
#include <asm/unaligned.h>
#include <linux/compat.h>
diff --git a/drivers/ufs/ufs.c b/drivers/ufs/ufs.c
index bbb18e89e0f..136dab5602e 100644
--- a/drivers/ufs/ufs.c
+++ b/drivers/ufs/ufs.c
@@ -19,6 +19,7 @@
#include <malloc.h>
#include <hexdump.h>
#include <scsi.h>
+#include <linux/delay.h>
#include <linux/dma-mapping.h>
diff --git a/drivers/usb/cdns3/ep0.c b/drivers/usb/cdns3/ep0.c
index 4266bd630c3..4a6374c4928 100644
--- a/drivers/usb/cdns3/ep0.c
+++ b/drivers/usb/cdns3/ep0.c
@@ -13,6 +13,7 @@
#include <cpu_func.h>
#include <asm/cache.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/usb/composite.h>
#include <linux/iopoll.h>
diff --git a/drivers/usb/cdns3/gadget.c b/drivers/usb/cdns3/gadget.c
index caed27c32f9..f5b6e5be64f 100644
--- a/drivers/usb/cdns3/gadget.c
+++ b/drivers/usb/cdns3/gadget.c
@@ -59,6 +59,7 @@
#include <dm.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/usb/gadget.h>
#include <linux/compat.h>
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
index f21dd2bad8a..8d418c9412b 100644
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -20,6 +20,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/dma-mapping.h>
#include <linux/err.h>
#include <linux/ioport.h>
diff --git a/drivers/usb/dwc3/dwc3-meson-g12a.c b/drivers/usb/dwc3/dwc3-meson-g12a.c
index f66f0834530..6567502cdd1 100644
--- a/drivers/usb/dwc3/dwc3-meson-g12a.c
+++ b/drivers/usb/dwc3/dwc3-meson-g12a.c
@@ -14,6 +14,7 @@
#include <dm/lists.h>
#include <dwc3-uboot.h>
#include <generic-phy.h>
+#include <linux/delay.h>
#include <linux/usb/ch9.h>
#include <linux/usb/gadget.h>
#include <malloc.h>
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 8945abc396a..2aec874e1de 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -20,6 +20,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/dma-mapping.h>
#include <linux/list.h>
diff --git a/drivers/usb/dwc3/samsung_usb_phy.c b/drivers/usb/dwc3/samsung_usb_phy.c
index 677061458cc..abbd4136890 100644
--- a/drivers/usb/dwc3/samsung_usb_phy.c
+++ b/drivers/usb/dwc3/samsung_usb_phy.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <asm/arch/power.h>
#include <asm/arch/xhci-exynos.h>
+#include <linux/delay.h>
void exynos5_usb3_phy_init(struct exynos_usb3_phy *phy)
{
diff --git a/drivers/usb/dwc3/ti_usb_phy.c b/drivers/usb/dwc3/ti_usb_phy.c
index 6b0166a1e06..ade3a7f85c0 100644
--- a/drivers/usb/dwc3/ti_usb_phy.c
+++ b/drivers/usb/dwc3/ti_usb_phy.c
@@ -21,6 +21,7 @@
#include <ti-usb-phy-uboot.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/delay.h>
#include <linux/ioport.h>
#include <asm/io.h>
#include <asm/arch/sys_proto.h>
diff --git a/drivers/usb/eth/asix.c b/drivers/usb/eth/asix.c
index 5f56f6f2dde..db75ae2498c 100644
--- a/drivers/usb/eth/asix.c
+++ b/drivers/usb/eth/asix.c
@@ -12,6 +12,7 @@
#include <usb.h>
#include <malloc.h>
#include <memalign.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include "usb_ether.h"
diff --git a/drivers/usb/eth/asix88179.c b/drivers/usb/eth/asix88179.c
index b4a56390b32..381bef2bed8 100644
--- a/drivers/usb/eth/asix88179.c
+++ b/drivers/usb/eth/asix88179.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <usb.h>
#include <net.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include "usb_ether.h"
#include <malloc.h>
diff --git a/drivers/usb/eth/mcs7830.c b/drivers/usb/eth/mcs7830.c
index b8fe65237d5..0cb7dbc8fb8 100644
--- a/drivers/usb/eth/mcs7830.c
+++ b/drivers/usb/eth/mcs7830.c
@@ -14,6 +14,7 @@
#include <errno.h>
#include <log.h>
#include <net.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include <malloc.h>
#include <memalign.h>
diff --git a/drivers/usb/eth/r8152.c b/drivers/usb/eth/r8152.c
index 1454d98d8f8..61b8683230d 100644
--- a/drivers/usb/eth/r8152.c
+++ b/drivers/usb/eth/r8152.c
@@ -12,6 +12,7 @@
#include <memalign.h>
#include <net.h>
#include <usb.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include <linux/bitops.h>
#include "usb_ether.h"
diff --git a/drivers/usb/eth/r8152_fw.c b/drivers/usb/eth/r8152_fw.c
index 4bf4066d7a4..d564de285f1 100644
--- a/drivers/usb/eth/r8152_fw.c
+++ b/drivers/usb/eth/r8152_fw.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <dm.h>
#include <errno.h>
+#include <linux/delay.h>
#include "usb_ether.h"
#include "r8152.h"
diff --git a/drivers/usb/eth/smsc95xx.c b/drivers/usb/eth/smsc95xx.c
index 82fea742b06..d3532df141f 100644
--- a/drivers/usb/eth/smsc95xx.c
+++ b/drivers/usb/eth/smsc95xx.c
@@ -15,6 +15,7 @@
#include <net.h>
#include <usb.h>
#include <asm/unaligned.h>
+#include <linux/delay.h>
#include <linux/mii.h>
#include "usb_ether.h"
diff --git a/drivers/usb/gadget/bcm_udc_otg_phy.c b/drivers/usb/gadget/bcm_udc_otg_phy.c
index 3ecb669507b..c89cd57c253 100644
--- a/drivers/usb/gadget/bcm_udc_otg_phy.c
+++ b/drivers/usb/gadget/bcm_udc_otg_phy.c
@@ -8,6 +8,7 @@
#include <asm/io.h>
#include <asm/arch/sysmap.h>
#include <asm/kona-common/clk.h>
+#include <linux/delay.h>
#include "dwc2_udc_otg_priv.h"
#include "bcm_udc_otg.h"
diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c
index 5677eab4261..cdbdbcc5cac 100644
--- a/drivers/usb/gadget/ci_udc.c
+++ b/drivers/usb/gadget/ci_udc.c
@@ -15,6 +15,7 @@
#include <malloc.h>
#include <asm/byteorder.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/unaligned.h>
diff --git a/drivers/usb/gadget/designware_udc.c b/drivers/usb/gadget/designware_udc.c
index 70c5c678c3b..7fc5d27d436 100644
--- a/drivers/usb/gadget/designware_udc.c
+++ b/drivers/usb/gadget/designware_udc.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <serial.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <env.h>
#include <usbdevice.h>
diff --git a/drivers/usb/gadget/dwc2_udc_otg.c b/drivers/usb/gadget/dwc2_udc_otg.c
index 32bf92752d4..eaa5dcb9b13 100644
--- a/drivers/usb/gadget/dwc2_udc_otg.c
+++ b/drivers/usb/gadget/dwc2_udc_otg.c
@@ -27,6 +27,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/list.h>
diff --git a/drivers/usb/gadget/dwc2_udc_otg_phy.c b/drivers/usb/gadget/dwc2_udc_otg_phy.c
index c4338af0d73..7f8e9564b9e 100644
--- a/drivers/usb/gadget/dwc2_udc_otg_phy.c
+++ b/drivers/usb/gadget/dwc2_udc_otg_phy.c
@@ -18,6 +18,7 @@
*/
#include <common.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/list.h>
#include <malloc.h>
diff --git a/drivers/usb/gadget/f_thor.c b/drivers/usb/gadget/f_thor.c
index 900eb963776..88fc87f2e90 100644
--- a/drivers/usb/gadget/f_thor.c
+++ b/drivers/usb/gadget/f_thor.c
@@ -23,6 +23,7 @@
#include <malloc.h>
#include <memalign.h>
#include <version.h>
+#include <linux/delay.h>
#include <linux/usb/ch9.h>
#include <linux/usb/gadget.h>
#include <linux/usb/composite.h>
diff --git a/drivers/usb/gadget/fotg210.c b/drivers/usb/gadget/fotg210.c
index 4211eea3a4d..af43433d88d 100644
--- a/drivers/usb/gadget/fotg210.c
+++ b/drivers/usb/gadget/fotg210.c
@@ -14,6 +14,7 @@
#include <net.h>
#include <malloc.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/types.h>
#include <linux/usb/ch9.h>
diff --git a/drivers/usb/gadget/pxa25x_udc.c b/drivers/usb/gadget/pxa25x_udc.c
index ebf1f4eb553..d19ac1d0353 100644
--- a/drivers/usb/gadget/pxa25x_udc.c
+++ b/drivers/usb/gadget/pxa25x_udc.c
@@ -29,6 +29,7 @@
#include <malloc.h>
#include <asm/io.h>
#include <asm/arch/pxa.h>
+#include <linux/delay.h>
#include <linux/usb/ch9.h>
#include <linux/usb/gadget.h>
diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c
index 15c43782b80..ba362b8f258 100644
--- a/drivers/usb/gadget/pxa27x_udc.c
+++ b/drivers/usb/gadget/pxa27x_udc.c
@@ -13,6 +13,7 @@
#include <asm/byteorder.h>
#include <asm/io.h>
#include <usbdevice.h>
+#include <linux/delay.h>
#include <usb/pxa27x_udc.h>
#include <usb/udc.h>
diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
index 0d694f3d39a..cefe9d83b1d 100644
--- a/drivers/usb/host/dwc2.c
+++ b/drivers/usb/host/dwc2.c
@@ -20,6 +20,7 @@
#include <asm/cache.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#include <reset.h>
diff --git a/drivers/usb/host/ehci-exynos.c b/drivers/usb/host/ehci-exynos.c
index 9093e029ea6..0b0b2137c76 100644
--- a/drivers/usb/host/ehci-exynos.c
+++ b/drivers/usb/host/ehci-exynos.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <fdtdec.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <malloc.h>
#include <usb.h>
diff --git a/drivers/usb/host/ehci-faraday.c b/drivers/usb/host/ehci-faraday.c
index f46bdb441d3..b61b5382df4 100644
--- a/drivers/usb/host/ehci-faraday.c
+++ b/drivers/usb/host/ehci-faraday.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <asm/io.h>
#include <usb.h>
+#include <linux/delay.h>
#include <usb/fusbh200.h>
#include <usb/fotg210.h>
diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c
index 75d24ae0155..ac6c5b58452 100644
--- a/drivers/usb/host/ehci-fsl.c
+++ b/drivers/usb/host/ehci-fsl.c
@@ -13,6 +13,7 @@
#include <pci.h>
#include <usb.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <usb/ehci-ci.h>
#include <hwconfig.h>
#include <fsl_usb.h>
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index 1e03c83fe6b..f79f06320bf 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -21,6 +21,7 @@
#include <watchdog.h>
#include <dm/device_compat.h>
#include <linux/compiler.h>
+#include <linux/delay.h>
#include "ehci.h"
diff --git a/drivers/usb/host/ehci-marvell.c b/drivers/usb/host/ehci-marvell.c
index 75dfaf8b3bd..8fe685af26a 100644
--- a/drivers/usb/host/ehci-marvell.c
+++ b/drivers/usb/host/ehci-marvell.c
@@ -9,6 +9,7 @@
#include <log.h>
#include <asm/io.h>
#include <usb.h>
+#include <linux/delay.h>
#include "ehci.h"
#include <linux/mbus.h>
#include <asm/arch/cpu.h>
diff --git a/drivers/usb/host/ehci-mx5.c b/drivers/usb/host/ehci-mx5.c
index 82f99e924e4..212b3623325 100644
--- a/drivers/usb/host/ehci-mx5.c
+++ b/drivers/usb/host/ehci-mx5.c
@@ -9,6 +9,7 @@
#include <usb.h>
#include <errno.h>
#include <linux/compiler.h>
+#include <linux/delay.h>
#include <usb/ehci-ci.h>
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
diff --git a/drivers/usb/host/ehci-mx6.c b/drivers/usb/host/ehci-mx6.c
index 8fcb82e14c2..24f8ad7af84 100644
--- a/drivers/usb/host/ehci-mx6.c
+++ b/drivers/usb/host/ehci-mx6.c
@@ -10,6 +10,7 @@
#include <errno.h>
#include <wait_bit.h>
#include <linux/compiler.h>
+#include <linux/delay.h>
#include <usb/ehci-ci.h>
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
diff --git a/drivers/usb/host/ehci-mxc.c b/drivers/usb/host/ehci-mxc.c
index 4941cb94575..d0b7ac512e8 100644
--- a/drivers/usb/host/ehci-mxc.c
+++ b/drivers/usb/host/ehci-mxc.c
@@ -8,6 +8,7 @@
#include <usb.h>
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
+#include <linux/delay.h>
#include <usb/ehci-ci.h>
#include <errno.h>
diff --git a/drivers/usb/host/ehci-mxs.c b/drivers/usb/host/ehci-mxs.c
index 8e8f6d49289..824c620e638 100644
--- a/drivers/usb/host/ehci-mxs.c
+++ b/drivers/usb/host/ehci-mxs.c
@@ -10,6 +10,7 @@
#include <asm/io.h>
#include <asm/arch/imx-regs.h>
#include <errno.h>
+#include <linux/delay.h>
#include "ehci.h"
diff --git a/drivers/usb/host/ehci-omap.c b/drivers/usb/host/ehci-omap.c
index a5061f7726c..5fee5371400 100644
--- a/drivers/usb/host/ehci-omap.c
+++ b/drivers/usb/host/ehci-omap.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <log.h>
#include <usb.h>
+#include <linux/delay.h>
#include <usb/ulpi.h>
#include <errno.h>
#include <asm/io.h>
diff --git a/drivers/usb/host/ehci-rmobile.c b/drivers/usb/host/ehci-rmobile.c
index 4868581066f..130b73dfe49 100644
--- a/drivers/usb/host/ehci-rmobile.c
+++ b/drivers/usb/host/ehci-rmobile.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <asm/io.h>
#include <asm/arch/ehci-rmobile.h>
+#include <linux/delay.h>
#include "ehci.h"
#if defined(CONFIG_R8A7740)
diff --git a/drivers/usb/host/ehci-spear.c b/drivers/usb/host/ehci-spear.c
index 8f5bfd5ed89..3e87e0c7fd8 100644
--- a/drivers/usb/host/ehci-spear.c
+++ b/drivers/usb/host/ehci-spear.c
@@ -12,6 +12,7 @@
#include <log.h>
#include <asm/io.h>
#include <usb.h>
+#include <linux/delay.h>
#include "ehci.h"
#include <asm/arch/hardware.h>
#include <asm/arch/spr_misc.h>
diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c
index 55fe6fec9a6..d81f4a03f14 100644
--- a/drivers/usb/host/ehci-tegra.c
+++ b/drivers/usb/host/ehci-tegra.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <dm.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm-generic/gpio.h>
diff --git a/drivers/usb/host/ehci-vf.c b/drivers/usb/host/ehci-vf.c
index ba6eecada12..562207d3d26 100644
--- a/drivers/usb/host/ehci-vf.c
+++ b/drivers/usb/host/ehci-vf.c
@@ -19,6 +19,7 @@
#include <asm/arch/crm_regs.h>
#include <asm/mach-imx/iomux-v3.h>
#include <asm/mach-imx/regs-usbphy.h>
+#include <linux/delay.h>
#include <usb/ehci-ci.h>
#include <linux/libfdt.h>
#include <fdtdec.h>
diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
index ac1ad29b02b..c62d8feecce 100644
--- a/drivers/usb/host/ohci-hcd.c
+++ b/drivers/usb/host/ohci-hcd.c
@@ -33,6 +33,7 @@
#include <dm.h>
#include <errno.h>
#include <asm/cache.h>
+#include <linux/delay.h>
#if defined(CONFIG_PCI_OHCI)
# include <pci.h>
diff --git a/drivers/usb/host/r8a66597-hcd.c b/drivers/usb/host/r8a66597-hcd.c
index d790839fda5..37aa2c55f24 100644
--- a/drivers/usb/host/r8a66597-hcd.c
+++ b/drivers/usb/host/r8a66597-hcd.c
@@ -12,6 +12,7 @@
#include <usb.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/iopoll.h>
#include <power/regulator.h>
diff --git a/drivers/usb/host/sl811-hcd.c b/drivers/usb/host/sl811-hcd.c
index e08da6130bd..7c823f241a8 100644
--- a/drivers/usb/host/sl811-hcd.c
+++ b/drivers/usb/host/sl811-hcd.c
@@ -21,6 +21,7 @@
#include <common.h>
#include <mpc8xx.h>
#include <usb.h>
+#include <linux/delay.h>
#include "sl811.h"
#include "../../../board/kup/common/kup.h"
diff --git a/drivers/usb/host/utmi-armada100.c b/drivers/usb/host/utmi-armada100.c
index 8a40f664470..5d66e5881f3 100644
--- a/drivers/usb/host/utmi-armada100.c
+++ b/drivers/usb/host/utmi-armada100.c
@@ -14,6 +14,7 @@
#include <asm/arch/cpu.h>
#include <asm/arch/armada100.h>
#include <asm/arch/utmi-armada100.h>
+#include <linux/delay.h>
static int utmi_phy_init(void)
{
diff --git a/drivers/usb/host/xhci-dwc3.c b/drivers/usb/host/xhci-dwc3.c
index 37b59c80fd8..cf72f0236d4 100644
--- a/drivers/usb/host/xhci-dwc3.c
+++ b/drivers/usb/host/xhci-dwc3.c
@@ -13,6 +13,7 @@
#include <log.h>
#include <usb.h>
#include <dwc3-uboot.h>
+#include <linux/delay.h>
#include <usb/xhci.h>
#include <asm/io.h>
diff --git a/drivers/usb/host/xhci-exynos5.c b/drivers/usb/host/xhci-exynos5.c
index 76aa431243a..1705accbde1 100644
--- a/drivers/usb/host/xhci-exynos5.c
+++ b/drivers/usb/host/xhci-exynos5.c
@@ -16,6 +16,7 @@
#include <dm.h>
#include <fdtdec.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <malloc.h>
#include <usb.h>
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index ec57f725d3f..963cc3c3c53 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -30,6 +30,7 @@
#include <asm/cache.h>
#include <asm/unaligned.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <usb/xhci.h>
diff --git a/drivers/usb/musb-new/am35x.c b/drivers/usb/musb-new/am35x.c
index 69d6104044f..0a52e09e19f 100644
--- a/drivers/usb/musb-new/am35x.c
+++ b/drivers/usb/musb-new/am35x.c
@@ -27,6 +27,7 @@
#include <common.h>
#include <asm/omap_musb.h>
#include <linux/bug.h>
+#include <linux/delay.h>
#include "linux-compat.h"
#endif
diff --git a/drivers/usb/musb-new/da8xx.c b/drivers/usb/musb-new/da8xx.c
index 1f6e51ed983..67488ddb504 100644
--- a/drivers/usb/musb-new/da8xx.c
+++ b/drivers/usb/musb-new/da8xx.c
@@ -21,6 +21,7 @@
#include <dm/lists.h>
#include <asm/arch/hardware.h>
#include <asm/arch/da8xx-usb.h>
+#include <linux/delay.h>
#include <linux/usb/otg.h>
#include <asm/omap_musb.h>
#include <generic-phy.h>
diff --git a/drivers/usb/musb-new/linux-compat.h b/drivers/usb/musb-new/linux-compat.h
index f366ae58e87..733b197f593 100644
--- a/drivers/usb/musb-new/linux-compat.h
+++ b/drivers/usb/musb-new/linux-compat.h
@@ -2,6 +2,7 @@
#define __LINUX_COMPAT_H__
#include <malloc.h>
+#include <linux/delay.h>
#include <linux/list.h>
#include <linux/compat.h>
diff --git a/drivers/usb/musb-new/mt85xx.c b/drivers/usb/musb-new/mt85xx.c
index 131fd7dd79f..c281c38a288 100644
--- a/drivers/usb/musb-new/mt85xx.c
+++ b/drivers/usb/musb-new/mt85xx.c
@@ -14,6 +14,7 @@
#include <dm.h>
#include <dm/lists.h>
#include <dm/root.h>
+#include <linux/delay.h>
#include <linux/usb/musb.h>
#include <usb.h>
#include "linux-compat.h"
diff --git a/drivers/usb/musb-new/musb_uboot.c b/drivers/usb/musb-new/musb_uboot.c
index 72f14b93438..988071a61d1 100644
--- a/drivers/usb/musb-new/musb_uboot.c
+++ b/drivers/usb/musb-new/musb_uboot.c
@@ -2,6 +2,7 @@
#include <console.h>
#include <malloc.h>
#include <watchdog.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/usb/ch9.h>
diff --git a/drivers/usb/musb-new/pic32.c b/drivers/usb/musb-new/pic32.c
index c7867fef8ac..66e8e9ce886 100644
--- a/drivers/usb/musb-new/pic32.c
+++ b/drivers/usb/musb-new/pic32.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/usb/musb.h>
#include "linux-compat.h"
#include "musb_core.h"
diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c
index 1c32f3fc068..a29d10d3354 100644
--- a/drivers/usb/musb-new/sunxi.c
+++ b/drivers/usb/musb-new/sunxi.c
@@ -30,6 +30,7 @@
#include <dm/device_compat.h>
#include <dm/lists.h>
#include <dm/root.h>
+#include <linux/delay.h>
#include <linux/usb/musb.h>
#include "linux-compat.h"
#include "musb_core.h"
diff --git a/drivers/usb/musb/am35x.c b/drivers/usb/musb/am35x.c
index 0617364f358..f945f1f5e2c 100644
--- a/drivers/usb/musb/am35x.c
+++ b/drivers/usb/musb/am35x.c
@@ -10,6 +10,7 @@
*/
#include <common.h>
+#include <linux/delay.h>
#include "am35x.h"
diff --git a/drivers/usb/musb/musb_hcd.c b/drivers/usb/musb/musb_hcd.c
index 632a9882b3c..afbc648883b 100644
--- a/drivers/usb/musb/musb_hcd.c
+++ b/drivers/usb/musb/musb_hcd.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <log.h>
#include <usb.h>
+#include <linux/delay.h>
#include "musb_hcd.h"
/* MSC control transfers */
diff --git a/drivers/usb/musb/musb_udc.c b/drivers/usb/musb/musb_udc.c
index 4d7723621d0..d901f8777c2 100644
--- a/drivers/usb/musb/musb_udc.c
+++ b/drivers/usb/musb/musb_udc.c
@@ -41,6 +41,7 @@
#include <hang.h>
#include <serial.h>
#include <usbdevice.h>
+#include <linux/delay.h>
#include <usb/udc.h>
#include "../gadget/ep0.h"
#include "musb_core.h"
diff --git a/drivers/usb/phy/omap_usb_phy.c b/drivers/usb/phy/omap_usb_phy.c
index 9209942430a..be733f39b23 100644
--- a/drivers/usb/phy/omap_usb_phy.c
+++ b/drivers/usb/phy/omap_usb_phy.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <usb.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/omap_common.h>
#include <asm/arch/cpu.h>
diff --git a/drivers/usb/phy/rockchip_usb2_phy.c b/drivers/usb/phy/rockchip_usb2_phy.c
index 24ea8d8c312..6a60523e0f8 100644
--- a/drivers/usb/phy/rockchip_usb2_phy.c
+++ b/drivers/usb/phy/rockchip_usb2_phy.c
@@ -7,6 +7,7 @@
#include <hang.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include "../gadget/dwc2_udc_otg_priv.h"
diff --git a/drivers/usb/phy/twl4030.c b/drivers/usb/phy/twl4030.c
index d2945d1417b..676868bead3 100644
--- a/drivers/usb/phy/twl4030.c
+++ b/drivers/usb/phy/twl4030.c
@@ -24,6 +24,7 @@
*/
#include <twl4030.h>
+#include <linux/delay.h>
/* Defines for bits in registers */
#define OPMODE_MASK (3 << 3)
diff --git a/drivers/usb/ulpi/omap-ulpi-viewport.c b/drivers/usb/ulpi/omap-ulpi-viewport.c
index 26299e04d54..8b930e3fa91 100644
--- a/drivers/usb/ulpi/omap-ulpi-viewport.c
+++ b/drivers/usb/ulpi/omap-ulpi-viewport.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <log.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <usb/ulpi.h>
#define OMAP_ULPI_WR_OPSEL (2 << 22)
diff --git a/drivers/usb/ulpi/ulpi-viewport.c b/drivers/usb/ulpi/ulpi-viewport.c
index a2158c9bb85..3bb152be893 100644
--- a/drivers/usb/ulpi/ulpi-viewport.c
+++ b/drivers/usb/ulpi/ulpi-viewport.c
@@ -15,6 +15,7 @@
#include <common.h>
#include <asm/io.h>
+#include <linux/delay.h>
#include <usb/ulpi.h>
/* ULPI viewport control bits */
diff --git a/drivers/usb/ulpi/ulpi.c b/drivers/usb/ulpi/ulpi.c
index e8499bfdeec..dd0da0e841e 100644
--- a/drivers/usb/ulpi/ulpi.c
+++ b/drivers/usb/ulpi/ulpi.c
@@ -22,6 +22,7 @@
#include <common.h>
#include <exports.h>
#include <log.h>
+#include <linux/delay.h>
#include <usb/ulpi.h>
#define ULPI_ID_REGS_COUNT 4
diff --git a/drivers/video/am335x-fb.c b/drivers/video/am335x-fb.c
index b1e67cc42b2..2707ff59c7d 100644
--- a/drivers/video/am335x-fb.c
+++ b/drivers/video/am335x-fb.c
@@ -22,6 +22,7 @@
#include <asm/arch/sys_proto.h>
#include <asm/io.h>
#include <asm/utils.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include "am335x-fb.h"
diff --git a/drivers/video/anx9804.c b/drivers/video/anx9804.c
index fc2f431b9c9..b050c4292f6 100644
--- a/drivers/video/anx9804.c
+++ b/drivers/video/anx9804.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <i2c.h>
+#include <linux/delay.h>
#include "anx98xx-edp.h"
#include "anx9804.h"
diff --git a/drivers/video/ati_radeon_fb.c b/drivers/video/ati_radeon_fb.c
index 6fce0336369..c4da2e3ae7f 100644
--- a/drivers/video/ati_radeon_fb.c
+++ b/drivers/video/ati_radeon_fb.c
@@ -16,6 +16,7 @@
*/
#include <common.h>
+#include <linux/delay.h>
#include <command.h>
#include <bios_emul.h>
diff --git a/drivers/video/atmel_lcdfb.c b/drivers/video/atmel_lcdfb.c
index f66ce2cd635..ae8ec26468f 100644
--- a/drivers/video/atmel_lcdfb.c
+++ b/drivers/video/atmel_lcdfb.c
@@ -18,6 +18,7 @@
#include <lcd.h>
#include <bmp_layout.h>
#include <atmel_lcdc.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/video/bridge/anx6345.c b/drivers/video/bridge/anx6345.c
index 6a30a5e6a65..1c5270ff05c 100644
--- a/drivers/video/bridge/anx6345.c
+++ b/drivers/video/bridge/anx6345.c
@@ -10,6 +10,7 @@
#include <edid.h>
#include <log.h>
#include <video_bridge.h>
+#include <linux/delay.h>
#include "../anx98xx-edp.h"
#define DP_MAX_LINK_RATE 0x001
diff --git a/drivers/video/bridge/ps862x.c b/drivers/video/bridge/ps862x.c
index 52e7d697eca..8399c6f74cf 100644
--- a/drivers/video/bridge/ps862x.c
+++ b/drivers/video/bridge/ps862x.c
@@ -10,6 +10,7 @@
#include <i2c.h>
#include <log.h>
#include <video_bridge.h>
+#include <linux/delay.h>
#include <power/regulator.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/video/bridge/video-bridge-uclass.c b/drivers/video/bridge/video-bridge-uclass.c
index bd6635ecf5d..389b02cdcba 100644
--- a/drivers/video/bridge/video-bridge-uclass.c
+++ b/drivers/video/bridge/video-bridge-uclass.c
@@ -10,6 +10,7 @@
#include <edid.h>
#include <log.h>
#include <video_bridge.h>
+#include <linux/delay.h>
int video_bridge_set_backlight(struct udevice *dev, int percent)
{
diff --git a/drivers/video/broadwell_igd.c b/drivers/video/broadwell_igd.c
index fafde7df4b1..8e8fe9d9b39 100644
--- a/drivers/video/broadwell_igd.c
+++ b/drivers/video/broadwell_igd.c
@@ -20,6 +20,7 @@
#include <asm/arch/cpu.h>
#include <asm/arch/iomap.h>
#include <asm/arch/pch.h>
+#include <linux/delay.h>
#include "i915_reg.h"
struct broadwell_igd_priv {
diff --git a/drivers/video/da8xx-fb.c b/drivers/video/da8xx-fb.c
index c21da6ea060..4984dda8477 100644
--- a/drivers/video/da8xx-fb.c
+++ b/drivers/video/da8xx-fb.c
@@ -17,6 +17,7 @@
#include <malloc.h>
#include <memalign.h>
#include <video_fb.h>
+#include <linux/delay.h>
#include <linux/list.h>
#include <linux/fb.h>
diff --git a/drivers/video/dw_hdmi.c b/drivers/video/dw_hdmi.c
index daf0024c640..c4fbb182944 100644
--- a/drivers/video/dw_hdmi.c
+++ b/drivers/video/dw_hdmi.c
@@ -11,6 +11,7 @@
#include <asm/io.h>
#include <i2c.h>
#include <media_bus_format.h>
+#include <linux/delay.h>
#include "dw_hdmi.h"
struct tmds_n_cts {
diff --git a/drivers/video/dw_mipi_dsi.c b/drivers/video/dw_mipi_dsi.c
index 5dd75e7ec82..e8a3af7e608 100644
--- a/drivers/video/dw_mipi_dsi.c
+++ b/drivers/video/dw_mipi_dsi.c
@@ -20,6 +20,7 @@
#include <asm/arch/gpio.h>
#include <dm/device-internal.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/iopoll.h>
#include <video_bridge.h>
diff --git a/drivers/video/exynos/exynos_dp.c b/drivers/video/exynos/exynos_dp.c
index c20d3c1346c..749bde862e0 100644
--- a/drivers/video/exynos/exynos_dp.c
+++ b/drivers/video/exynos/exynos_dp.c
@@ -11,6 +11,7 @@
#include <display.h>
#include <fdtdec.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/libfdt.h>
#include <malloc.h>
#include <video_bridge.h>
diff --git a/drivers/video/exynos/exynos_dp_lowlevel.c b/drivers/video/exynos/exynos_dp_lowlevel.c
index b835b5c3835..ae500a70280 100644
--- a/drivers/video/exynos/exynos_dp_lowlevel.c
+++ b/drivers/video/exynos/exynos_dp_lowlevel.c
@@ -8,6 +8,7 @@
#include <config.h>
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <asm/arch/cpu.h>
#include <asm/arch/dp_info.h>
diff --git a/drivers/video/exynos/exynos_mipi_dsi_common.c b/drivers/video/exynos/exynos_mipi_dsi_common.c
index 48edb9c55fd..ab7d61afc88 100644
--- a/drivers/video/exynos/exynos_mipi_dsi_common.c
+++ b/drivers/video/exynos/exynos_mipi_dsi_common.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <lcd.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <asm/arch/dsim.h>
#include <asm/arch/mipi_dsim.h>
diff --git a/drivers/video/exynos/exynos_mipi_dsi_lowlevel.c b/drivers/video/exynos/exynos_mipi_dsi_lowlevel.c
index 1b6e71dfaf8..8111acd9a0b 100644
--- a/drivers/video/exynos/exynos_mipi_dsi_lowlevel.c
+++ b/drivers/video/exynos/exynos_mipi_dsi_lowlevel.c
@@ -11,6 +11,7 @@
#include <asm/arch/mipi_dsim.h>
#include <asm/arch/power.h>
#include <asm/arch/cpu.h>
+#include <linux/delay.h>
#include "exynos_mipi_dsi_lowlevel.h"
#include "exynos_mipi_dsi_common.h"
diff --git a/drivers/video/formike.c b/drivers/video/formike.c
index 1e2febd7964..5cbe50d4cbd 100644
--- a/drivers/video/formike.c
+++ b/drivers/video/formike.c
@@ -9,6 +9,7 @@
#include <errno.h>
#include <log.h>
#include <spi.h>
+#include <linux/delay.h>
#define TAG_READ 0x80
#define TAG_WRITE 0x00
diff --git a/drivers/video/hitachi_tx18d42vm_lcd.c b/drivers/video/hitachi_tx18d42vm_lcd.c
index a57abd23f73..c6c8df6a96e 100644
--- a/drivers/video/hitachi_tx18d42vm_lcd.c
+++ b/drivers/video/hitachi_tx18d42vm_lcd.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <malloc.h>
+#include <linux/delay.h>
#include <asm/gpio.h>
#include <errno.h>
diff --git a/drivers/video/imx/ipu_common.c b/drivers/video/imx/ipu_common.c
index 0f24de9bf84..5908b23acc9 100644
--- a/drivers/video/imx/ipu_common.c
+++ b/drivers/video/imx/ipu_common.c
@@ -13,6 +13,7 @@
/* #define DEBUG */
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/types.h>
#include <linux/err.h>
#include <asm/io.h>
diff --git a/drivers/video/imx/ipu_disp.c b/drivers/video/imx/ipu_disp.c
index 2274976c6c0..c2f00bff18d 100644
--- a/drivers/video/imx/ipu_disp.c
+++ b/drivers/video/imx/ipu_disp.c
@@ -14,6 +14,7 @@
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <linux/types.h>
#include <linux/errno.h>
#include <asm/io.h>
diff --git a/drivers/video/ivybridge_igd.c b/drivers/video/ivybridge_igd.c
index 18814230915..4c57e311d16 100644
--- a/drivers/video/ivybridge_igd.c
+++ b/drivers/video/ivybridge_igd.c
@@ -17,6 +17,7 @@
#include <asm/pci.h>
#include <asm/arch/pch.h>
#include <asm/arch/sandybridge.h>
+#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/video/ld9040.c b/drivers/video/ld9040.c
index 93aea05ff84..a36bc2f06cb 100644
--- a/drivers/video/ld9040.c
+++ b/drivers/video/ld9040.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <spi.h>
+#include <linux/delay.h>
static const unsigned char SEQ_USER_SETTING[] = {
0xF0, 0x5A, 0x5A
diff --git a/drivers/video/lg4573.c b/drivers/video/lg4573.c
index 8b458e28dc8..45df9c13474 100644
--- a/drivers/video/lg4573.c
+++ b/drivers/video/lg4573.c
@@ -15,6 +15,7 @@
#include <errno.h>
#include <spi.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#define PWR_ON_DELAY_MSECS 120
diff --git a/drivers/video/logicore_dp_tx.c b/drivers/video/logicore_dp_tx.c
index 84fafe43410..9bc4bbb85d3 100644
--- a/drivers/video/logicore_dp_tx.c
+++ b/drivers/video/logicore_dp_tx.c
@@ -14,6 +14,7 @@
#include <display.h>
#include <dm.h>
#include <errno.h>
+#include <linux/delay.h>
#include "axi.h"
#include "logicore_dp_dpcd.h"
diff --git a/drivers/video/mali_dp.c b/drivers/video/mali_dp.c
index 87a75a9ca2a..1e6da0e1e25 100644
--- a/drivers/video/mali_dp.c
+++ b/drivers/video/mali_dp.c
@@ -18,6 +18,7 @@
#include <fdt_support.h>
#include <clk.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/sizes.h>
#define MALIDP_CORE_ID 0x0018
diff --git a/drivers/video/mb862xx.c b/drivers/video/mb862xx.c
index a3a7a8dd98d..04e435f913c 100644
--- a/drivers/video/mb862xx.c
+++ b/drivers/video/mb862xx.c
@@ -10,6 +10,7 @@
*/
#include <common.h>
+#include <linux/delay.h>
#include <asm/io.h>
#include <env.h>
diff --git a/drivers/video/mvebu_lcd.c b/drivers/video/mvebu_lcd.c
index d5ed8d00962..f3cb2bfb480 100644
--- a/drivers/video/mvebu_lcd.c
+++ b/drivers/video/mvebu_lcd.c
@@ -11,6 +11,7 @@
#include <video.h>
#include <asm/cache.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/mbus.h>
#include <asm/io.h>
#include <asm/arch/cpu.h>
diff --git a/drivers/video/mx3fb.c b/drivers/video/mx3fb.c
index 4b8712fb691..9b42ca8d03f 100644
--- a/drivers/video/mx3fb.c
+++ b/drivers/video/mx3fb.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <malloc.h>
#include <video_fb.h>
+#include <linux/delay.h>
#include <asm/arch/imx-regs.h>
#include <asm/arch/clock.h>
diff --git a/drivers/video/mxsfb.c b/drivers/video/mxsfb.c
index 0235731c5c7..6589a2a09d2 100644
--- a/drivers/video/mxsfb.c
+++ b/drivers/video/mxsfb.c
@@ -11,6 +11,7 @@
#include <log.h>
#include <asm/cache.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/errno.h>
#include <malloc.h>
#include <video.h>
diff --git a/drivers/video/orisetech_otm8009a.c b/drivers/video/orisetech_otm8009a.c
index 650ed072393..b1f2dd403ef 100644
--- a/drivers/video/orisetech_otm8009a.c
+++ b/drivers/video/orisetech_otm8009a.c
@@ -14,6 +14,7 @@
#include <panel.h>
#include <asm/gpio.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <power/regulator.h>
#define OTM8009A_BACKLIGHT_DEFAULT 240
diff --git a/drivers/video/pwm_backlight.c b/drivers/video/pwm_backlight.c
index 149fbaef060..468a5703bdb 100644
--- a/drivers/video/pwm_backlight.c
+++ b/drivers/video/pwm_backlight.c
@@ -13,6 +13,7 @@
#include <malloc.h>
#include <pwm.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#include <power/regulator.h>
/**
diff --git a/drivers/video/raydium-rm68200.c b/drivers/video/raydium-rm68200.c
index 853dbc52d61..9169280fb8b 100644
--- a/drivers/video/raydium-rm68200.c
+++ b/drivers/video/raydium-rm68200.c
@@ -14,6 +14,7 @@
#include <panel.h>
#include <asm/gpio.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <power/regulator.h>
/*** Manufacturer Command Set ***/
diff --git a/drivers/video/rockchip/rk3288_vop.c b/drivers/video/rockchip/rk3288_vop.c
index 0f91dab1f25..25ef25b870b 100644
--- a/drivers/video/rockchip/rk3288_vop.c
+++ b/drivers/video/rockchip/rk3288_vop.c
@@ -15,6 +15,7 @@
#include <asm/arch-rockchip/clock.h>
#include <asm/arch-rockchip/grf_rk3288.h>
#include <asm/arch-rockchip/hardware.h>
+#include <linux/delay.h>
#include "rk_vop.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/video/rockchip/rk_edp.c b/drivers/video/rockchip/rk_edp.c
index 49ed5aaae6a..92188be9275 100644
--- a/drivers/video/rockchip/rk_edp.c
+++ b/drivers/video/rockchip/rk_edp.c
@@ -21,6 +21,7 @@
#include <asm/arch-rockchip/grf_rk3288.h>
#include <asm/arch-rockchip/hardware.h>
#include <dt-bindings/clock/rk3288-cru.h>
+#include <linux/delay.h>
#define MAX_CR_LOOP 5
#define MAX_EQ_LOOP 5
diff --git a/drivers/video/s6e8ax0.c b/drivers/video/s6e8ax0.c
index 9c7b5f6ab38..497258f3de9 100644
--- a/drivers/video/s6e8ax0.c
+++ b/drivers/video/s6e8ax0.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <asm/arch/mipi_dsim.h>
+#include <linux/delay.h>
#include "exynos/exynos_mipi_dsi_lowlevel.h"
#include "exynos/exynos_mipi_dsi_common.h"
diff --git a/drivers/video/scf0403_lcd.c b/drivers/video/scf0403_lcd.c
index 60075a6cf32..54f0f88b4c9 100644
--- a/drivers/video/scf0403_lcd.c
+++ b/drivers/video/scf0403_lcd.c
@@ -17,6 +17,7 @@
#include <malloc.h>
#include <asm/gpio.h>
#include <spi.h>
+#include <linux/delay.h>
struct scf0403_cmd {
u16 cmd;
diff --git a/drivers/video/ssd2828.c b/drivers/video/ssd2828.c
index 83566bc6d66..4cdcbe7755a 100644
--- a/drivers/video/ssd2828.c
+++ b/drivers/video/ssd2828.c
@@ -14,6 +14,7 @@
#include <mipi_display.h>
#include <asm/arch/gpio.h>
#include <asm/gpio.h>
+#include <linux/delay.h>
#include "videomodes.h"
#include "ssd2828.h"
diff --git a/drivers/video/sunxi/lcdc.c b/drivers/video/sunxi/lcdc.c
index e8da302303f..73033c3b858 100644
--- a/drivers/video/sunxi/lcdc.c
+++ b/drivers/video/sunxi/lcdc.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <log.h>
+#include <linux/delay.h>
#include <asm/arch/clock.h>
#include <asm/arch/lcdc.h>
diff --git a/drivers/video/sunxi/sunxi_display.c b/drivers/video/sunxi/sunxi_display.c
index c4c1d1b8d3d..f52aba4d21c 100644
--- a/drivers/video/sunxi/sunxi_display.c
+++ b/drivers/video/sunxi/sunxi_display.c
@@ -11,6 +11,7 @@
#include <efi_loader.h>
#include <init.h>
#include <time.h>
+#include <linux/delay.h>
#include <asm/arch/clock.h>
#include <asm/arch/display.h>
diff --git a/drivers/video/sunxi/sunxi_dw_hdmi.c b/drivers/video/sunxi/sunxi_dw_hdmi.c
index 546b863b64b..cf2d6a772be 100644
--- a/drivers/video/sunxi/sunxi_dw_hdmi.c
+++ b/drivers/video/sunxi/sunxi_dw_hdmi.c
@@ -15,6 +15,7 @@
#include <asm/io.h>
#include <asm/arch/clock.h>
#include <asm/arch/lcdc.h>
+#include <linux/delay.h>
struct sunxi_dw_hdmi_priv {
struct dw_hdmi hdmi;
diff --git a/drivers/video/tda19988.c b/drivers/video/tda19988.c
index 01ed6193ea4..4223d5f789b 100644
--- a/drivers/video/tda19988.c
+++ b/drivers/video/tda19988.c
@@ -9,6 +9,7 @@
#include <dm.h>
#include <display.h>
#include <i2c.h>
+#include <linux/delay.h>
/*
* TDA19988 uses paged registers. We encode the page# in the upper
diff --git a/drivers/video/tegra124/display.c b/drivers/video/tegra124/display.c
index 0aa9541101d..6c279322639 100644
--- a/drivers/video/tegra124/display.c
+++ b/drivers/video/tegra124/display.c
@@ -22,6 +22,7 @@
#include <asm/arch/pwm.h>
#include <asm/arch-tegra/dc.h>
#include <dm/uclass-internal.h>
+#include <linux/delay.h>
#include "displayport.h"
/* return in 1000ths of a Hertz */
diff --git a/drivers/video/tegra124/dp.c b/drivers/video/tegra124/dp.c
index e90210b695c..59758eb9361 100644
--- a/drivers/video/tegra124/dp.c
+++ b/drivers/video/tegra124/dp.c
@@ -13,6 +13,7 @@
#include <video_bridge.h>
#include <asm/io.h>
#include <asm/arch-tegra/dc.h>
+#include <linux/delay.h>
#include "display.h"
#include "edid.h"
#include "sor.h"
diff --git a/drivers/video/tegra124/sor.c b/drivers/video/tegra124/sor.c
index 0d35a3eb621..49f33c15b5c 100644
--- a/drivers/video/tegra124/sor.c
+++ b/drivers/video/tegra124/sor.c
@@ -14,6 +14,7 @@
#include <asm/io.h>
#include <asm/arch/clock.h>
#include <asm/arch-tegra/dc.h>
+#include <linux/delay.h>
#include "displayport.h"
#include "sor.h"
#include <linux/err.h>
diff --git a/drivers/virtio/virtio_pci_modern.c b/drivers/virtio/virtio_pci_modern.c
index 64430f3b196..2e5bbade002 100644
--- a/drivers/virtio/virtio_pci_modern.c
+++ b/drivers/virtio/virtio_pci_modern.c
@@ -15,6 +15,7 @@
#include <dm/device.h>
#include <linux/bug.h>
#include <linux/compat.h>
+#include <linux/delay.h>
#include <linux/err.h>
#include <linux/io.h>
#include "virtio_pci.h"
diff --git a/drivers/w1/mxc_w1.c b/drivers/w1/mxc_w1.c
index 08715c6a666..1881a3b1f14 100644
--- a/drivers/w1/mxc_w1.c
+++ b/drivers/w1/mxc_w1.c
@@ -21,6 +21,7 @@
#include <common.h>
#include <dm.h>
#include <dm/device_compat.h>
+#include <linux/delay.h>
#include <linux/io.h>
#include <w1.h>
diff --git a/drivers/w1/w1-gpio.c b/drivers/w1/w1-gpio.c
index 90821cf73bf..45ad47a5d6b 100644
--- a/drivers/w1/w1-gpio.c
+++ b/drivers/w1/w1-gpio.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <log.h>
#include <w1.h>
+#include <linux/delay.h>
#include <asm/gpio.h>