summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2020-05-10 11:40:13 -0600
committerTom Rini <trini@konsulko.com>2020-05-18 21:19:23 -0400
commitcd93d625fd751d55c729c78b10f82109d56a5f1d (patch)
tree158fd30f3d06142f6a99cbae6ed8ccb0f3be567b /drivers
parentf09f1ecbe77863ecefe586ccd6000064b49105a3 (diff)
common: Drop linux/bitops.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/meson-saradc.c1
-rw-r--r--drivers/adc/rockchip-saradc.c1
-rw-r--r--drivers/adc/stm32-adc-core.c1
-rw-r--r--drivers/adc/stm32-adc.c1
-rw-r--r--drivers/ata/ahci.c1
-rw-r--r--drivers/ata/sata_mv.c1
-rw-r--r--drivers/axi/ihs_axi.c1
-rw-r--r--drivers/cache/cache-v5l2.c1
-rw-r--r--drivers/clk/altera/clk-agilex.c1
-rw-r--r--drivers/clk/altera/clk-agilex.h4
-rw-r--r--drivers/clk/altera/clk-arria10.c1
-rw-r--r--drivers/clk/at91/clk-system.c1
-rw-r--r--drivers/clk/clk-cdce9xx.c1
-rw-r--r--drivers/clk/clk-gate.c1
-rw-r--r--drivers/clk/clk-hsdk-cgu.c1
-rw-r--r--drivers/clk/clk-mux.c1
-rw-r--r--drivers/clk/clk_bcm6345.c1
-rw-r--r--drivers/clk/clk_boston.c1
-rw-r--r--drivers/clk/clk_pic32.c1
-rw-r--r--drivers/clk/clk_sandbox_ccf.c1
-rw-r--r--drivers/clk/clk_stm32f.c1
-rw-r--r--drivers/clk/clk_stm32h7.c1
-rw-r--r--drivers/clk/clk_stm32mp1.c1
-rw-r--r--drivers/clk/clk_vexpress_osc.c1
-rw-r--r--drivers/clk/imx/clk-pll14xx.c1
-rw-r--r--drivers/clk/mediatek/clk-mt7622.c1
-rw-r--r--drivers/clk/mediatek/clk-mt7623.c1
-rw-r--r--drivers/clk/mediatek/clk-mt7629.c1
-rw-r--r--drivers/clk/mediatek/clk-mt8512.c1
-rw-r--r--drivers/clk/mediatek/clk-mt8516.c1
-rw-r--r--drivers/clk/mediatek/clk-mt8518.c1
-rw-r--r--drivers/clk/mediatek/clk-mtk.c1
-rw-r--r--drivers/clk/mediatek/clk-mtk.h1
-rw-r--r--drivers/clk/meson/axg.c1
-rw-r--r--drivers/clk/meson/clk_meson.h1
-rw-r--r--drivers/clk/meson/g12a.c1
-rw-r--r--drivers/clk/meson/gxbb.c1
-rw-r--r--drivers/clk/mpc83xx_clk.c1
-rw-r--r--drivers/clk/mpc83xx_clk.h1
-rw-r--r--drivers/clk/mvebu/armada-37xx-periph.c1
-rw-r--r--drivers/clk/owl/clk_owl.c1
-rw-r--r--drivers/clk/owl/clk_owl.h3
-rw-r--r--drivers/clk/renesas/clk-rcar-gen3.c1
-rw-r--r--drivers/clk/renesas/r8a7790-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a7791-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a7792-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a7794-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a7795-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a7796-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a77965-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a77970-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a77980-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a77990-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/r8a77995-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/renesas-cpg-mssr.c1
-rw-r--r--drivers/clk/renesas/renesas-cpg-mssr.h1
-rw-r--r--drivers/clk/rockchip/clk_px30.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_rk3308.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3328.c1
-rw-r--r--drivers/clk/rockchip/clk_rk3399.c1
-rw-r--r--drivers/clk/sunxi/clk_a10.c1
-rw-r--r--drivers/clk/sunxi/clk_a10s.c1
-rw-r--r--drivers/clk/sunxi/clk_a23.c1
-rw-r--r--drivers/clk/sunxi/clk_a31.c1
-rw-r--r--drivers/clk/sunxi/clk_a64.c1
-rw-r--r--drivers/clk/sunxi/clk_a80.c1
-rw-r--r--drivers/clk/sunxi/clk_a83t.c1
-rw-r--r--drivers/clk/sunxi/clk_h3.c1
-rw-r--r--drivers/clk/sunxi/clk_h6.c1
-rw-r--r--drivers/clk/sunxi/clk_r40.c1
-rw-r--r--drivers/clk/sunxi/clk_sunxi.c1
-rw-r--r--drivers/clk/sunxi/clk_v3s.c1
-rw-r--r--drivers/cpu/bmips_cpu.c1
-rw-r--r--drivers/cpu/imx8_cpu.c1
-rw-r--r--drivers/cpu/mpc83xx_cpu.c1
-rw-r--r--drivers/cpu/riscv_cpu.c1
-rw-r--r--drivers/ddr/altera/sdram_arria10.c1
-rw-r--r--drivers/ddr/altera/sdram_gen5.c1
-rw-r--r--drivers/ddr/fsl/ctrl_regs.c1
-rw-r--r--drivers/ddr/fsl/ddr1_dimm_params.c1
-rw-r--r--drivers/ddr/fsl/ddr2_dimm_params.c1
-rw-r--r--drivers/ddr/fsl/interactive.c1
-rw-r--r--drivers/ddr/fsl/lc_common_dimm_params.c1
-rw-r--r--drivers/ddr/fsl/main.c1
-rw-r--r--drivers/dma/bcm6348-iudma.c1
-rw-r--r--drivers/dma/lpc32xx_dma.c1
-rw-r--r--drivers/dma/ti/k3-udma-hwdef.h1
-rw-r--r--drivers/dma/ti/k3-udma.c1
-rw-r--r--drivers/firmware/ti_sci.c1
-rw-r--r--drivers/firmware/ti_sci.h1
-rw-r--r--drivers/fpga/socfpga_arria10.c1
-rw-r--r--drivers/fpga/zynqmppl.c1
-rw-r--r--drivers/gpio/atmel_pio4.c1
-rw-r--r--drivers/gpio/bcm6345_gpio.c1
-rw-r--r--drivers/gpio/cortina_gpio.c1
-rw-r--r--drivers/gpio/dwapb_gpio.c1
-rw-r--r--drivers/gpio/gpio-rcar.c1
-rw-r--r--drivers/gpio/gpio-rza1.c1
-rw-r--r--drivers/gpio/hi6220_gpio.c1
-rw-r--r--drivers/gpio/hsdk-creg-gpio.c1
-rw-r--r--drivers/gpio/mscc_sgpio.c1
-rw-r--r--drivers/gpio/mt7621_gpio.c1
-rw-r--r--drivers/gpio/mvebu_gpio.c1
-rw-r--r--drivers/gpio/mxs_gpio.c1
-rw-r--r--drivers/gpio/pca953x_gpio.c1
-rw-r--r--drivers/gpio/pcf8575_gpio.c1
-rw-r--r--drivers/gpio/pic32_gpio.c1
-rw-r--r--drivers/gpio/sh_pfc.c1
-rw-r--r--drivers/gpio/sifive-gpio.c1
-rw-r--r--drivers/gpio/stm32_gpio.c1
-rw-r--r--drivers/gpio/tegra186_gpio_priv.h1
-rw-r--r--drivers/gpio/zynq_gpio.c1
-rw-r--r--drivers/hwspinlock/stm32_hwspinlock.c1
-rw-r--r--drivers/i2c/at91_i2c.h1
-rw-r--r--drivers/i2c/designware_i2c.h1
-rw-r--r--drivers/i2c/i2c-cdns.c1
-rw-r--r--drivers/i2c/i2c-versatile.c1
-rw-r--r--drivers/i2c/ihs_i2c.c1
-rw-r--r--drivers/i2c/meson_i2c.c1
-rw-r--r--drivers/i2c/rcar_i2c.c1
-rw-r--r--drivers/i2c/rcar_iic.c1
-rw-r--r--drivers/i2c/stm32f7_i2c.c1
-rw-r--r--drivers/i2c/tegra186_bpmp_i2c.c1
-rw-r--r--drivers/led/led_bcm6858.c1
-rw-r--r--drivers/mailbox/stm32-ipcc.c1
-rw-r--r--drivers/mailbox/tegra-hsp.c1
-rw-r--r--drivers/misc/esm_pmic.c1
-rw-r--r--drivers/misc/gdsys_ioep.h1
-rw-r--r--drivers/misc/ihs_fpga.c1
-rw-r--r--drivers/misc/imx8/scu.c1
-rw-r--r--drivers/misc/jz4780_efuse.c1
-rw-r--r--drivers/misc/k3_avs.c1
-rw-r--r--drivers/misc/k3_esm.c1
-rw-r--r--drivers/misc/mpc83xx_serdes.h1
-rw-r--r--drivers/misc/tegra186_bpmp.c1
-rw-r--r--drivers/misc/vexpress_config.c1
-rw-r--r--drivers/mmc/am654_sdhci.c1
-rw-r--r--drivers/mmc/bcm2835_sdhost.c1
-rw-r--r--drivers/mmc/fsl_esdhc.c1
-rw-r--r--drivers/mmc/fsl_esdhc_imx.c1
-rw-r--r--drivers/mmc/ftsdc010_mci.c1
-rw-r--r--drivers/mmc/jz_mmc.c1
-rw-r--r--drivers/mmc/mmc.c1
-rw-r--r--drivers/mmc/mmc_spi.c1
-rw-r--r--drivers/mmc/mxsmmc.c1
-rw-r--r--drivers/mmc/omap_hsmmc.c1
-rw-r--r--drivers/mmc/renesas-sdhi.c1
-rw-r--r--drivers/mmc/sdhci-cadence.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.c2
-rw-r--r--drivers/mmc/tegra_mmc.c1
-rw-r--r--drivers/mmc/tmio-common.h1
-rw-r--r--drivers/mmc/xenon_sdhci.c1
-rw-r--r--drivers/mtd/altera_qspi.c1
-rw-r--r--drivers/mtd/mtdcore.c1
-rw-r--r--drivers/mtd/nand/bbt.c1
-rw-r--r--drivers/mtd/nand/core.c1
-rw-r--r--drivers/mtd/nand/raw/atmel_nand.c1
-rw-r--r--drivers/mtd/nand/raw/brcmnand/bcm63158_nand.c1
-rw-r--r--drivers/mtd/nand/raw/brcmnand/bcm6368_nand.c1
-rw-r--r--drivers/mtd/nand/raw/brcmnand/bcm68360_nand.c1
-rw-r--r--drivers/mtd/nand/raw/brcmnand/bcm6838_nand.c1
-rw-r--r--drivers/mtd/nand/raw/brcmnand/bcm6858_nand.c1
-rw-r--r--drivers/mtd/nand/raw/brcmnand/brcmnand.c1
-rw-r--r--drivers/mtd/nand/raw/denali.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/spi/core.c1
-rw-r--r--drivers/mtd/nand/spi/micron.c1
-rw-r--r--drivers/mtd/nand/spi/winbond.c1
-rw-r--r--drivers/mtd/onenand/onenand_base.c1
-rw-r--r--drivers/mtd/onenand/onenand_spl.c1
-rw-r--r--drivers/mtd/pic32_flash.c1
-rw-r--r--drivers/mtd/renesas_rpc_hf.c1
-rw-r--r--drivers/mtd/spi/sf_internal.h1
-rw-r--r--drivers/mtd/spi/spi-nor-core.c1
-rw-r--r--drivers/mtd/ubispl/ubispl.c1
-rw-r--r--drivers/net/ag7xxx.c1
-rw-r--r--drivers/net/altera_tse.h1
-rw-r--r--drivers/net/bcm-sf2-eth-gmac.c1
-rw-r--r--drivers/net/bcmgenet.c1
-rw-r--r--drivers/net/dc2114x.c1
-rw-r--r--drivers/net/dwc_eth_qos.c1
-rw-r--r--drivers/net/fsl_enetc.h1
-rw-r--r--drivers/net/ftgmac100.c1
-rw-r--r--drivers/net/ftgmac100.h1
-rw-r--r--drivers/net/gmac_rockchip.c1
-rw-r--r--drivers/net/higmacv300.c1
-rw-r--r--drivers/net/mscc_eswitch/jr2_switch.c1
-rw-r--r--drivers/net/mscc_eswitch/luton_switch.c1
-rw-r--r--drivers/net/mscc_eswitch/mscc_mac_table.c1
-rw-r--r--drivers/net/mscc_eswitch/mscc_miim.c1
-rw-r--r--drivers/net/mscc_eswitch/mscc_xfer.c1
-rw-r--r--drivers/net/mscc_eswitch/ocelot_switch.c1
-rw-r--r--drivers/net/mscc_eswitch/serval_switch.c1
-rw-r--r--drivers/net/mscc_eswitch/servalt_switch.c1
-rw-r--r--drivers/net/mt7628-eth.c1
-rw-r--r--drivers/net/mtk_eth.h1
-rw-r--r--drivers/net/mvmdio.c1
-rw-r--r--drivers/net/mvneta.c1
-rw-r--r--drivers/net/mvpp2.c1
-rw-r--r--drivers/net/pfe_eth/pfe_firmware.c1
-rw-r--r--drivers/net/pfe_eth/pfe_hw.c1
-rw-r--r--drivers/net/phy/aquantia.c1
-rw-r--r--drivers/net/phy/atheros.c1
-rw-r--r--drivers/net/phy/b53.c1
-rw-r--r--drivers/net/phy/dp83867.c1
-rw-r--r--drivers/net/phy/marvell.c1
-rw-r--r--drivers/net/phy/micrel_ksz8xxx.c1
-rw-r--r--drivers/net/phy/mscc.c1
-rw-r--r--drivers/net/phy/mv88e61xx.c1
-rw-r--r--drivers/net/phy/phy.c1
-rw-r--r--drivers/net/pic32_eth.h1
-rw-r--r--drivers/net/ravb.c1
-rw-r--r--drivers/net/rtl8139.c1
-rw-r--r--drivers/net/sni_ave.c1
-rw-r--r--drivers/net/sun8i_emac.c1
-rw-r--r--drivers/net/ti/am65-cpsw-nuss.c1
-rw-r--r--drivers/net/ti/cpsw.c1
-rw-r--r--drivers/net/ti/cpsw_mdio.c1
-rw-r--r--drivers/net/tsec.c1
-rw-r--r--drivers/net/zynq_gem.c1
-rw-r--r--drivers/pci/pci-aardvark.c1
-rw-r--r--drivers/pci/pci-rcar-gen2.c1
-rw-r--r--drivers/pci/pci-rcar-gen3.c1
-rw-r--r--drivers/pci/pci_mpc85xx.c1
-rw-r--r--drivers/pci/pci_mvebu.c1
-rw-r--r--drivers/pci/pci_sh7751.c1
-rw-r--r--drivers/pci/pcie_dw_ti.c1
-rw-r--r--drivers/pci/pcie_intel_fpga.c1
-rw-r--r--drivers/pci/pcie_layerscape_gen4.h1
-rw-r--r--drivers/pci/pcie_mediatek.c1
-rw-r--r--drivers/pci/pcie_xilinx.c1
-rw-r--r--drivers/pci_endpoint/pcie-cadence.h1
-rw-r--r--drivers/phy/allwinner/phy-sun4i-usb.c1
-rw-r--r--drivers/phy/bcm6318-usbh-phy.c1
-rw-r--r--drivers/phy/bcm6348-usbh-phy.c1
-rw-r--r--drivers/phy/bcm6358-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/meson-gxbb-usb2.c1
-rw-r--r--drivers/phy/msm8916-usbh-phy.c1
-rw-r--r--drivers/phy/omap-usb2-phy.c1
-rw-r--r--drivers/phy/phy-mtk-tphy.c1
-rw-r--r--drivers/phy/phy-ti-am654.c1
-rw-r--r--drivers/phy/ti-pipe3-phy.c1
-rw-r--r--drivers/pinctrl/mediatek/pinctrl-mtk-common.c1
-rw-r--r--drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c1
-rw-r--r--drivers/pinctrl/meson/pinctrl-meson.c1
-rw-r--r--drivers/pinctrl/mscc/mscc-common.c1
-rw-r--r--drivers/pinctrl/mvebu/pinctrl-armada-37xx.c1
-rw-r--r--drivers/pinctrl/mvebu/pinctrl-mvebu.c1
-rw-r--r--drivers/pinctrl/nxp/pinctrl-imx.c1
-rw-r--r--drivers/pinctrl/pinctrl-at91-pio4.c1
-rw-r--r--drivers/pinctrl/pinctrl-at91.c1
-rw-r--r--drivers/pinctrl/pinctrl-sandbox.c1
-rw-r--r--drivers/pinctrl/pinctrl-stmfx.c1
-rw-r--r--drivers/pinctrl/pinctrl_pic32.c1
-rw-r--r--drivers/pinctrl/pinctrl_stm32.c1
-rw-r--r--drivers/pinctrl/renesas/pfc-r7s72100.c1
-rw-r--r--drivers/pinctrl/renesas/pfc-r8a77990.c1
-rw-r--r--drivers/pinctrl/renesas/pfc.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-px30.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rk3036.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rk3128.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rk322x.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rk3288.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rk3308.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rk3328.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rk3399.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rockchip-core.c1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rockchip.h1
-rw-r--r--drivers/pinctrl/rockchip/pinctrl-rv1108.c1
-rw-r--r--drivers/pinctrl/uniphier/pinctrl-uniphier-core.c1
-rw-r--r--drivers/power/domain/bcm6328-power-domain.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/domain/mtk-power-domain.c1
-rw-r--r--drivers/power/domain/tegra186-power-domain.c1
-rw-r--r--drivers/power/regulator/bd71837.c1
-rw-r--r--drivers/power/regulator/da9063.c1
-rw-r--r--drivers/power/regulator/fan53555.c1
-rw-r--r--drivers/power/regulator/stm32-vrefbuf.c1
-rw-r--r--drivers/pwm/rk_pwm.c1
-rw-r--r--drivers/ram/imxrt_sdram.c1
-rw-r--r--drivers/ram/k3-am654-ddrss.h1
-rw-r--r--drivers/ram/mediatek/ddr3-mt7629.c1
-rw-r--r--drivers/ram/mpc83xx_sdram.c1
-rw-r--r--drivers/ram/rockchip/dmc-rk3368.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_ddr_regs.h1
-rw-r--r--drivers/reset/reset-bcm6345.c1
-rw-r--r--drivers/reset/reset-hisilicon.c1
-rw-r--r--drivers/reset/reset-hsdk.c1
-rw-r--r--drivers/reset/reset-imx7.c1
-rw-r--r--drivers/reset/reset-mediatek.c1
-rw-r--r--drivers/reset/reset-meson.c1
-rw-r--r--drivers/reset/reset-mtmips.c1
-rw-r--r--drivers/reset/reset-rockchip.c1
-rw-r--r--drivers/reset/reset-sunxi.c1
-rw-r--r--drivers/reset/sti-reset.c1
-rw-r--r--drivers/reset/stm32-reset.c1
-rw-r--r--drivers/rng/rockchip_rng.c1
-rw-r--r--drivers/rng/stm32mp1_rng.c1
-rw-r--r--drivers/rtc/ds3232.c1
-rw-r--r--drivers/rtc/rv3029.c1
-rw-r--r--drivers/rtc/rv8803.c1
-rw-r--r--drivers/rtc/rx8010sj.c1
-rw-r--r--drivers/rtc/stm32_rtc.c1
-rw-r--r--drivers/serial/altera_jtag_uart.c1
-rw-r--r--drivers/serial/altera_uart.c1
-rw-r--r--drivers/serial/serial_ar933x.c1
-rw-r--r--drivers/serial/serial_bcm283x_mu.c1
-rw-r--r--drivers/serial/serial_cortina.c1
-rw-r--r--drivers/serial/serial_lpuart.c1
-rw-r--r--drivers/serial/serial_meson.c1
-rw-r--r--drivers/serial/serial_owl.c1
-rw-r--r--drivers/serial/serial_pic32.c1
-rw-r--r--drivers/serial/serial_sti_asc.c1
-rw-r--r--drivers/serial/serial_stm32.c1
-rw-r--r--drivers/serial/serial_stm32.h1
-rw-r--r--drivers/serial/serial_xuartlite.c1
-rw-r--r--drivers/serial/serial_zynq.c1
-rw-r--r--drivers/soc/ti/k3-navss-ringacc.c1
-rw-r--r--drivers/soc/ti/keystone_serdes.c1
-rw-r--r--drivers/sound/hda_codec.c1
-rw-r--r--drivers/sound/ivybridge_sound.c1
-rw-r--r--drivers/sound/max98088.h1
-rw-r--r--drivers/sound/rockchip_i2s.c1
-rw-r--r--drivers/spi/altera_spi.c1
-rw-r--r--drivers/spi/atmel-quadspi.c1
-rw-r--r--drivers/spi/atmel_spi.h1
-rw-r--r--drivers/spi/bcm63xx_hsspi.c1
-rw-r--r--drivers/spi/cadence_qspi_apb.c1
-rw-r--r--drivers/spi/davinci_spi.c1
-rw-r--r--drivers/spi/designware_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/ich.h1
-rw-r--r--drivers/spi/meson_spifc.c1
-rw-r--r--drivers/spi/mpc8xxx_spi.c1
-rw-r--r--drivers/spi/mscc_bb_spi.c1
-rw-r--r--drivers/spi/mt7621_spi.c1
-rw-r--r--drivers/spi/mvebu_a3700_spi.c1
-rw-r--r--drivers/spi/mxc_spi.c1
-rw-r--r--drivers/spi/mxs_spi.c1
-rw-r--r--drivers/spi/nxp_fspi.c1
-rw-r--r--drivers/spi/omap3_spi.c1
-rw-r--r--drivers/spi/pic32_spi.c1
-rw-r--r--drivers/spi/renesas_rpc_spi.c1
-rw-r--r--drivers/spi/sh_qspi.c1
-rw-r--r--drivers/spi/soft_spi.c1
-rw-r--r--drivers/spi/spi-sifive.c1
-rw-r--r--drivers/spi/spi-sunxi.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/ti_qspi.c1
-rw-r--r--drivers/spi/uniphier_spi.c1
-rw-r--r--drivers/spi/xilinx_spi.c1
-rw-r--r--drivers/spi/zynq_qspi.c1
-rw-r--r--drivers/spi/zynq_spi.c1
-rw-r--r--drivers/spi/zynqmp_gqspi.c1
-rw-r--r--drivers/sysreset/sysreset_socfpga.c1
-rw-r--r--drivers/sysreset/sysreset_sti.c1
-rw-r--r--drivers/timer/altera_timer.c1
-rw-r--r--drivers/timer/atmel_pit_timer.c1
-rw-r--r--drivers/timer/cadence-ttc.c1
-rw-r--r--drivers/timer/mpc83xx_timer.c1
-rw-r--r--drivers/timer/mtk_timer.c1
-rw-r--r--drivers/timer/nomadik-mtu-timer.c1
-rw-r--r--drivers/timer/omap-timer.c1
-rw-r--r--drivers/timer/ostm_timer.c1
-rw-r--r--drivers/timer/stm32_timer.c1
-rw-r--r--drivers/tpm/tpm2_tis_sandbox.c1
-rw-r--r--drivers/tpm/tpm2_tis_spi.c1
-rw-r--r--drivers/ufs/cdns-platform.c1
-rw-r--r--drivers/ufs/ti-j721e-ufs.c1
-rw-r--r--drivers/ufs/ufs.c1
-rw-r--r--drivers/usb/cdns3/cdns3-ti.c1
-rw-r--r--drivers/usb/cdns3/drd.h1
-rw-r--r--drivers/usb/cdns3/ep0.c1
-rw-r--r--drivers/usb/cdns3/gadget.c1
-rw-r--r--drivers/usb/cdns3/gadget.h1
-rw-r--r--drivers/usb/dwc3/core.h1
-rw-r--r--drivers/usb/dwc3/dwc3-generic.c1
-rw-r--r--drivers/usb/dwc3/ti_usb_phy.c1
-rw-r--r--drivers/usb/eth/lan75xx.c1
-rw-r--r--drivers/usb/eth/lan78xx.c1
-rw-r--r--drivers/usb/eth/lan7x.h1
-rw-r--r--drivers/usb/eth/r8152.h1
-rw-r--r--drivers/usb/eth/r8152_fw.c1
-rw-r--r--drivers/usb/gadget/atmel_usba_udc.c1
-rw-r--r--drivers/usb/gadget/dwc2_udc_otg_regs.h1
-rw-r--r--drivers/usb/host/ehci.h1
-rw-r--r--drivers/usb/host/r8a66597.h1
-rw-r--r--drivers/usb/host/xhci-rcar.c1
-rw-r--r--drivers/usb/host/xhci.c1
-rw-r--r--drivers/usb/musb-new/musb_core.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/musb_core.c1
-rw-r--r--drivers/usb/phy/rockchip_usb2_phy.c1
-rw-r--r--drivers/video/anx98xx-edp.h1
-rw-r--r--drivers/video/dw_mipi_dsi.c1
-rw-r--r--drivers/video/meson/meson_dw_hdmi.c1
-rw-r--r--drivers/video/meson/meson_dw_hdmi.h1
-rw-r--r--drivers/video/meson/meson_plane.c1
-rw-r--r--drivers/video/meson/meson_registers.h1
-rw-r--r--drivers/video/meson/meson_vclk.c1
-rw-r--r--drivers/video/meson/meson_vpu_init.c1
-rw-r--r--drivers/video/rockchip/rk_vop.c1
-rw-r--r--drivers/video/stm32/stm32_dsi.c1
-rw-r--r--drivers/video/stm32/stm32_ltdc.c1
-rw-r--r--drivers/video/sunxi/sunxi_de2.c1
-rw-r--r--drivers/video/sunxi/sunxi_dw_hdmi.c1
-rw-r--r--drivers/video/tda19988.c1
-rw-r--r--drivers/virtio/virtio_mmio.h1
-rw-r--r--drivers/w1/mxc_w1.c1
-rw-r--r--drivers/watchdog/designware_wdt.c1
-rw-r--r--drivers/watchdog/mt7621_wdt.c1
-rw-r--r--drivers/watchdog/mtk_wdt.c1
-rw-r--r--drivers/watchdog/orion_wdt.c1
-rw-r--r--drivers/watchdog/stm32mp_wdt.c1
438 files changed, 444 insertions, 0 deletions
diff --git a/drivers/adc/meson-saradc.c b/drivers/adc/meson-saradc.c
index 1e1515f6e31..72b0cc4e5bd 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/bitops.h>
#include <linux/delay.h>
#include <linux/math64.h>
#include <linux/bitfield.h>
diff --git a/drivers/adc/rockchip-saradc.c b/drivers/adc/rockchip-saradc.c
index 850142cce37..561740f63b5 100644
--- a/drivers/adc/rockchip-saradc.c
+++ b/drivers/adc/rockchip-saradc.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <errno.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#define SARADC_CTRL_CHN_MASK GENMASK(2, 0)
diff --git a/drivers/adc/stm32-adc-core.c b/drivers/adc/stm32-adc-core.c
index 2ca0fb4f108..31bbb6f9d68 100644
--- a/drivers/adc/stm32-adc-core.c
+++ b/drivers/adc/stm32-adc-core.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <power/regulator.h>
#include "stm32-adc-core.h"
diff --git a/drivers/adc/stm32-adc.c b/drivers/adc/stm32-adc.c
index 140ddcee3cf..b12f894a9bf 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/bitops.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 dda3586d7c6..47cdea1f586 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/bitops.h>
#include <linux/delay.h>
#include <command.h>
diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
index 647d8c72580..b2b5c699ad1 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
diff --git a/drivers/axi/ihs_axi.c b/drivers/axi/ihs_axi.c
index a4aee8b58a4..39455110907 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/bitops.h>
#include <linux/delay.h>
/**
diff --git a/drivers/cache/cache-v5l2.c b/drivers/cache/cache-v5l2.c
index 1373e7c387d..51c074bfe23 100644
--- a/drivers/cache/cache-v5l2.c
+++ b/drivers/cache/cache-v5l2.c
@@ -11,6 +11,7 @@
#include <hang.h>
#include <asm/io.h>
#include <dm/ofnode.h>
+#include <linux/bitops.h>
struct l2cache {
volatile u64 configure;
diff --git a/drivers/clk/altera/clk-agilex.c b/drivers/clk/altera/clk-agilex.c
index 63153fa6608..0042958f4c4 100644
--- a/drivers/clk/altera/clk-agilex.c
+++ b/drivers/clk/altera/clk-agilex.c
@@ -11,6 +11,7 @@
#include <dm/lists.h>
#include <dm/util.h>
#include <dt-bindings/clock/agilex-clock.h>
+#include <linux/bitops.h>
#include <asm/arch/clock_manager.h>
diff --git a/drivers/clk/altera/clk-agilex.h b/drivers/clk/altera/clk-agilex.h
index d93328ef299..cd68ebc4387 100644
--- a/drivers/clk/altera/clk-agilex.h
+++ b/drivers/clk/altera/clk-agilex.h
@@ -6,6 +6,10 @@
#ifndef _CLK_AGILEX_
#define _CLK_AGILEX_
+#ifndef __ASSEMBLY__
+#include <linux/bitops.h>
+#endif
+
#define CM_REG_READL(plat, reg) \
readl((plat)->regs + (reg))
diff --git a/drivers/clk/altera/clk-arria10.c b/drivers/clk/altera/clk-arria10.c
index 694a9427e1f..ede0be299df 100644
--- a/drivers/clk/altera/clk-arria10.c
+++ b/drivers/clk/altera/clk-arria10.c
@@ -12,6 +12,7 @@
#include <dm/devres.h>
#include <dm/lists.h>
#include <dm/util.h>
+#include <linux/bitops.h>
#include <asm/arch/clock_manager.h>
diff --git a/drivers/clk/at91/clk-system.c b/drivers/clk/at91/clk-system.c
index f9adef2eaac..76b1958670d 100644
--- a/drivers/clk/at91/clk-system.c
+++ b/drivers/clk/at91/clk-system.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <mach/at91_pmc.h>
#include "pmc.h"
diff --git a/drivers/clk/clk-cdce9xx.c b/drivers/clk/clk-cdce9xx.c
index f1f76b0a4da..fd47872ab99 100644
--- a/drivers/clk/clk-cdce9xx.c
+++ b/drivers/clk/clk-cdce9xx.c
@@ -14,6 +14,7 @@
#include <clk-uclass.h>
#include <i2c.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#define MAX_NUMBER_OF_PLLS 4
#define MAX_NUMER_OF_OUTPUTS 9
diff --git a/drivers/clk/clk-gate.c b/drivers/clk/clk-gate.c
index 6415c2f1b91..23c1f2c4ba9 100644
--- a/drivers/clk/clk-gate.c
+++ b/drivers/clk/clk-gate.c
@@ -13,6 +13,7 @@
#include <clk-uclass.h>
#include <dm/device.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/clk-provider.h>
#include <clk.h>
#include "clk.h"
diff --git a/drivers/clk/clk-hsdk-cgu.c b/drivers/clk/clk-hsdk-cgu.c
index 42844d46056..3eb93a55fc4 100644
--- a/drivers/clk/clk-hsdk-cgu.c
+++ b/drivers/clk/clk-hsdk-cgu.c
@@ -14,6 +14,7 @@
#include <div64.h>
#include <dm.h>
#include <log.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
#include <linux/io.h>
diff --git a/drivers/clk/clk-mux.c b/drivers/clk/clk-mux.c
index b9d2ae6778f..c69cce0565d 100644
--- a/drivers/clk/clk-mux.c
+++ b/drivers/clk/clk-mux.c
@@ -27,6 +27,7 @@
#include <clk-uclass.h>
#include <dm/device.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/clk-provider.h>
#include <clk.h>
#include "clk.h"
diff --git a/drivers/clk/clk_bcm6345.c b/drivers/clk/clk_bcm6345.c
index f01ec9a8598..b850b9fc069 100644
--- a/drivers/clk/clk_bcm6345.c
+++ b/drivers/clk/clk_bcm6345.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <errno.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define MAX_CLKS 32
diff --git a/drivers/clk/clk_boston.c b/drivers/clk/clk_boston.c
index 0c49ee0798b..2318dcf6a45 100644
--- a/drivers/clk/clk_boston.c
+++ b/drivers/clk/clk_boston.c
@@ -9,6 +9,7 @@
#include <dt-bindings/clock/boston-clock.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
struct clk_boston {
struct regmap *regmap;
diff --git a/drivers/clk/clk_pic32.c b/drivers/clk/clk_pic32.c
index 7ddff2feaf3..dc46de2a7cf 100644
--- a/drivers/clk/clk_pic32.c
+++ b/drivers/clk/clk_pic32.c
@@ -12,6 +12,7 @@
#include <wait_bit.h>
#include <dm/lists.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <mach/pic32.h>
#include <dt-bindings/clock/microchip,clock.h>
diff --git a/drivers/clk/clk_sandbox_ccf.c b/drivers/clk/clk_sandbox_ccf.c
index 3543bea70d2..0619d04f0ec 100644
--- a/drivers/clk/clk_sandbox_ccf.c
+++ b/drivers/clk/clk_sandbox_ccf.c
@@ -13,6 +13,7 @@
#include <asm/clk.h>
#include <clk-uclass.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/clk-provider.h>
#include <sandbox-clk.h>
#include <linux/err.h>
diff --git a/drivers/clk/clk_stm32f.c b/drivers/clk/clk_stm32f.c
index 6d604cd82c9..93722f74ae4 100644
--- a/drivers/clk/clk_stm32f.c
+++ b/drivers/clk/clk_stm32f.c
@@ -9,6 +9,7 @@
#include <dm.h>
#include <log.h>
#include <stm32_rcc.h>
+#include <linux/bitops.h>
#include <asm/io.h>
#include <asm/arch/stm32.h>
diff --git a/drivers/clk/clk_stm32h7.c b/drivers/clk/clk_stm32h7.c
index f147392fa1a..5e6abca56fa 100644
--- a/drivers/clk/clk_stm32h7.c
+++ b/drivers/clk/clk_stm32h7.c
@@ -12,6 +12,7 @@
#include <syscon.h>
#include <asm/io.h>
#include <dm/root.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/stm32h7-clks.h>
diff --git a/drivers/clk/clk_stm32mp1.c b/drivers/clk/clk_stm32mp1.c
index 767edb3bf7c..6c5eddbd9a3 100644
--- a/drivers/clk/clk_stm32mp1.c
+++ b/drivers/clk/clk_stm32mp1.c
@@ -14,6 +14,7 @@
#include <syscon.h>
#include <time.h>
#include <vsprintf.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/iopoll.h>
#include <dt-bindings/clock/stm32mp1-clks.h>
diff --git a/drivers/clk/clk_vexpress_osc.c b/drivers/clk/clk_vexpress_osc.c
index ddfc5f6e68a..b48319bba67 100644
--- a/drivers/clk/clk_vexpress_osc.c
+++ b/drivers/clk/clk_vexpress_osc.c
@@ -13,6 +13,7 @@
#include <dm/lists.h>
#include <errno.h>
#include <misc.h>
+#include <linux/bitops.h>
#define CLK_FUNCTION BIT(20)
diff --git a/drivers/clk/imx/clk-pll14xx.c b/drivers/clk/imx/clk-pll14xx.c
index c526fc1cce4..b0ccb6c8eda 100644
--- a/drivers/clk/imx/clk-pll14xx.c
+++ b/drivers/clk/imx/clk-pll14xx.c
@@ -11,6 +11,7 @@
#include <clk-uclass.h>
#include <dm/device.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/clk-provider.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/clk/mediatek/clk-mt7622.c b/drivers/clk/mediatek/clk-mt7622.c
index 0a1495a464e..dc0ba71f109 100644
--- a/drivers/clk/mediatek/clk-mt7622.c
+++ b/drivers/clk/mediatek/clk-mt7622.c
@@ -12,6 +12,7 @@
#include <asm/arch-mediatek/reset.h>
#include <asm/io.h>
#include <dt-bindings/clock/mt7622-clk.h>
+#include <linux/bitops.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/mediatek/clk-mt7623.c b/drivers/clk/mediatek/clk-mt7623.c
index c44969a0736..a15fb45e8e7 100644
--- a/drivers/clk/mediatek/clk-mt7623.c
+++ b/drivers/clk/mediatek/clk-mt7623.c
@@ -12,6 +12,7 @@
#include <asm/arch-mediatek/reset.h>
#include <asm/io.h>
#include <dt-bindings/clock/mt7623-clk.h>
+#include <linux/bitops.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/mediatek/clk-mt7629.c b/drivers/clk/mediatek/clk-mt7629.c
index d6837524030..5b2aa5f200a 100644
--- a/drivers/clk/mediatek/clk-mt7629.c
+++ b/drivers/clk/mediatek/clk-mt7629.c
@@ -12,6 +12,7 @@
#include <asm/arch-mediatek/reset.h>
#include <asm/io.h>
#include <dt-bindings/clock/mt7629-clk.h>
+#include <linux/bitops.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/mediatek/clk-mt8512.c b/drivers/clk/mediatek/clk-mt8512.c
index cb168f146b8..ad254d1cce5 100644
--- a/drivers/clk/mediatek/clk-mt8512.c
+++ b/drivers/clk/mediatek/clk-mt8512.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <asm/io.h>
#include <dt-bindings/clock/mt8512-clk.h>
+#include <linux/bitops.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/mediatek/clk-mt8516.c b/drivers/clk/mediatek/clk-mt8516.c
index 071bf69b19a..cd1db257836 100644
--- a/drivers/clk/mediatek/clk-mt8516.c
+++ b/drivers/clk/mediatek/clk-mt8516.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <asm/io.h>
#include <dt-bindings/clock/mt8516-clk.h>
+#include <linux/bitops.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/mediatek/clk-mt8518.c b/drivers/clk/mediatek/clk-mt8518.c
index 76f7b3b361e..985a0c1de5e 100644
--- a/drivers/clk/mediatek/clk-mt8518.c
+++ b/drivers/clk/mediatek/clk-mt8518.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <asm/io.h>
#include <dt-bindings/clock/mt8518-clk.h>
+#include <linux/bitops.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/mediatek/clk-mtk.c b/drivers/clk/mediatek/clk-mtk.c
index 671d4b35c7a..388471b03a9 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/bitops.h>
#include <linux/delay.h>
#include "clk-mtk.h"
diff --git a/drivers/clk/mediatek/clk-mtk.h b/drivers/clk/mediatek/clk-mtk.h
index c7dc980861e..95a23d14a8e 100644
--- a/drivers/clk/mediatek/clk-mtk.h
+++ b/drivers/clk/mediatek/clk-mtk.h
@@ -7,6 +7,7 @@
#ifndef __DRV_CLK_MTK_H
#define __DRV_CLK_MTK_H
+#include <linux/bitops.h>
#define CLK_XTAL 0
#define MHZ (1000 * 1000)
diff --git a/drivers/clk/meson/axg.c b/drivers/clk/meson/axg.c
index d84447260af..6ef8b418d78 100644
--- a/drivers/clk/meson/axg.c
+++ b/drivers/clk/meson/axg.c
@@ -15,6 +15,7 @@
#include <syscon.h>
#include <div64.h>
#include <dt-bindings/clock/axg-clkc.h>
+#include <linux/bitops.h>
#include "clk_meson.h"
#include <linux/err.h>
diff --git a/drivers/clk/meson/clk_meson.h b/drivers/clk/meson/clk_meson.h
index 7adc55a9803..ef72a416c15 100644
--- a/drivers/clk/meson/clk_meson.h
+++ b/drivers/clk/meson/clk_meson.h
@@ -10,6 +10,7 @@
/* Gate Structure */
+#include <linux/bitops.h>
struct meson_gate {
unsigned int reg;
unsigned int bit;
diff --git a/drivers/clk/meson/g12a.c b/drivers/clk/meson/g12a.c
index c540bb0a167..bf2f357435a 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/kernel.h>
diff --git a/drivers/clk/meson/gxbb.c b/drivers/clk/meson/gxbb.c
index 0ed1d03506c..b9353c053eb 100644
--- a/drivers/clk/meson/gxbb.c
+++ b/drivers/clk/meson/gxbb.c
@@ -15,6 +15,7 @@
#include <regmap.h>
#include <syscon.h>
#include <dt-bindings/clock/gxbb-clkc.h>
+#include <linux/bitops.h>
#include "clk_meson.h"
#include <linux/err.h>
diff --git a/drivers/clk/mpc83xx_clk.c b/drivers/clk/mpc83xx_clk.c
index 4c77c8da1a8..8d96ec767ac 100644
--- a/drivers/clk/mpc83xx_clk.c
+++ b/drivers/clk/mpc83xx_clk.c
@@ -14,6 +14,7 @@
#include <dm/lists.h>
#include <dt-bindings/clk/mpc83xx-clk.h>
#include <asm/arch/soc.h>
+#include <linux/bitops.h>
#include "mpc83xx_clk.h"
diff --git a/drivers/clk/mpc83xx_clk.h b/drivers/clk/mpc83xx_clk.h
index 7fb88029204..8a31a4c868f 100644
--- a/drivers/clk/mpc83xx_clk.h
+++ b/drivers/clk/mpc83xx_clk.h
@@ -17,6 +17,7 @@
* @RAT_2_5_TO_1: Ratio 2.5:1
* @RAT_3_TO_1: Ratio 3:1
*/
+#include <linux/bitops.h>
enum ratio {
RAT_UNK,
RAT_BYP,
diff --git a/drivers/clk/mvebu/armada-37xx-periph.c b/drivers/clk/mvebu/armada-37xx-periph.c
index 855f979b4f9..223da22c1b6 100644
--- a/drivers/clk/mvebu/armada-37xx-periph.c
+++ b/drivers/clk/mvebu/armada-37xx-periph.c
@@ -16,6 +16,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#define TBG_SEL 0x0
#define DIV_SEL0 0x4
diff --git a/drivers/clk/owl/clk_owl.c b/drivers/clk/owl/clk_owl.c
index 11b8da15589..9715fce1621 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/bitops.h>
#include <linux/delay.h>
void owl_clk_init(struct owl_clk_priv *priv)
diff --git a/drivers/clk/owl/clk_owl.h b/drivers/clk/owl/clk_owl.h
index b8d33624c5f..cf896bdb98e 100644
--- a/drivers/clk/owl/clk_owl.h
+++ b/drivers/clk/owl/clk_owl.h
@@ -11,6 +11,9 @@
#define _OWL_CLK_H_
#include <clk-uclass.h>
+#ifndef __ASSEMBLY__
+#include <linux/bitops.h>
+#endif
enum owl_soc {
S700,
diff --git a/drivers/clk/renesas/clk-rcar-gen3.c b/drivers/clk/renesas/clk-rcar-gen3.c
index 8e1af1caa1a..15e38337567 100644
--- a/drivers/clk/renesas/clk-rcar-gen3.c
+++ b/drivers/clk/renesas/clk-rcar-gen3.c
@@ -17,6 +17,7 @@
#include <log.h>
#include <wait_bit.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/renesas-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a7790-cpg-mssr.c b/drivers/clk/renesas/r8a7790-cpg-mssr.c
index b62b8753cd4..7451f53ba39 100644
--- a/drivers/clk/renesas/r8a7790-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a7790-cpg-mssr.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a7790-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a7791-cpg-mssr.c b/drivers/clk/renesas/r8a7791-cpg-mssr.c
index e11c02e6e82..25fd4896094 100644
--- a/drivers/clk/renesas/r8a7791-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a7791-cpg-mssr.c
@@ -17,6 +17,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a7791-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a7792-cpg-mssr.c b/drivers/clk/renesas/r8a7792-cpg-mssr.c
index fb18ee7aedf..d47ab99e882 100644
--- a/drivers/clk/renesas/r8a7792-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a7792-cpg-mssr.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a7792-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a7794-cpg-mssr.c b/drivers/clk/renesas/r8a7794-cpg-mssr.c
index b6be1bc0323..7093e0d42cb 100644
--- a/drivers/clk/renesas/r8a7794-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a7794-cpg-mssr.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a7794-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a7795-cpg-mssr.c b/drivers/clk/renesas/r8a7795-cpg-mssr.c
index ab4747ee14b..dcd96ad0177 100644
--- a/drivers/clk/renesas/r8a7795-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a7795-cpg-mssr.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a7795-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a7796-cpg-mssr.c b/drivers/clk/renesas/r8a7796-cpg-mssr.c
index 253a9143b7a..89dc141239d 100644
--- a/drivers/clk/renesas/r8a7796-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a7796-cpg-mssr.c
@@ -18,6 +18,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a7796-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a77965-cpg-mssr.c b/drivers/clk/renesas/r8a77965-cpg-mssr.c
index bd36ea3b6d8..6ed88295c98 100644
--- a/drivers/clk/renesas/r8a77965-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a77965-cpg-mssr.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a77965-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a77970-cpg-mssr.c b/drivers/clk/renesas/r8a77970-cpg-mssr.c
index 961eb7fb600..df071201718 100644
--- a/drivers/clk/renesas/r8a77970-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a77970-cpg-mssr.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a77970-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a77980-cpg-mssr.c b/drivers/clk/renesas/r8a77980-cpg-mssr.c
index c076ac771f2..c8d7a9469ba 100644
--- a/drivers/clk/renesas/r8a77980-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a77980-cpg-mssr.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a77980-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a77990-cpg-mssr.c b/drivers/clk/renesas/r8a77990-cpg-mssr.c
index 3168de20f91..357e7b534da 100644
--- a/drivers/clk/renesas/r8a77990-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a77990-cpg-mssr.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a77990-cpg-mssr.h>
diff --git a/drivers/clk/renesas/r8a77995-cpg-mssr.c b/drivers/clk/renesas/r8a77995-cpg-mssr.c
index 1c793709822..d62aeba635b 100644
--- a/drivers/clk/renesas/r8a77995-cpg-mssr.c
+++ b/drivers/clk/renesas/r8a77995-cpg-mssr.c
@@ -13,6 +13,7 @@
#include <common.h>
#include <clk-uclass.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/r8a77995-cpg-mssr.h>
diff --git a/drivers/clk/renesas/renesas-cpg-mssr.c b/drivers/clk/renesas/renesas-cpg-mssr.c
index 6ad684c10b9..7c1222f6c8c 100644
--- a/drivers/clk/renesas/renesas-cpg-mssr.c
+++ b/drivers/clk/renesas/renesas-cpg-mssr.c
@@ -16,6 +16,7 @@
#include <log.h>
#include <wait_bit.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <dt-bindings/clock/renesas-cpg-mssr.h>
diff --git a/drivers/clk/renesas/renesas-cpg-mssr.h b/drivers/clk/renesas/renesas-cpg-mssr.h
index 5b7012d37c6..b669dec594f 100644
--- a/drivers/clk/renesas/renesas-cpg-mssr.h
+++ b/drivers/clk/renesas/renesas-cpg-mssr.h
@@ -13,6 +13,7 @@
#ifndef __DRIVERS_CLK_RENESAS_CPG_MSSR__
#define __DRIVERS_CLK_RENESAS_CPG_MSSR__
+#include <linux/bitops.h>
struct cpg_mssr_info {
const struct cpg_core_clk *core_clk;
unsigned int core_clk_size;
diff --git a/drivers/clk/rockchip/clk_px30.c b/drivers/clk/rockchip/clk_px30.c
index b5b46e39504..71916dbf3b1 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/bitops.h>
#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/clk/rockchip/clk_rk322x.c b/drivers/clk/rockchip/clk_rk322x.c
index 912e1f6e92e..054b2fd349b 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/bitops.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 3b199bbb869..a1dd642eefe 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/log2.h>
diff --git a/drivers/clk/rockchip/clk_rk3308.c b/drivers/clk/rockchip/clk_rk3308.c
index 5889cf862e6..d3633b69795 100644
--- a/drivers/clk/rockchip/clk_rk3308.c
+++ b/drivers/clk/rockchip/clk_rk3308.c
@@ -17,6 +17,7 @@
#include <asm/arch-rockchip/hardware.h>
#include <dm/lists.h>
#include <dt-bindings/clock/rk3308-cru.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/clk/rockchip/clk_rk3328.c b/drivers/clk/rockchip/clk_rk3328.c
index 6d692ec8b70..02d3b08efa8 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/bitops.h>
#include <linux/delay.h>
struct pll_div {
diff --git a/drivers/clk/rockchip/clk_rk3399.c b/drivers/clk/rockchip/clk_rk3399.c
index 2c58814b70d..e009f1cf6c1 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/bitops.h>
#include <linux/delay.h>
#if CONFIG_IS_ENABLED(OF_PLATDATA)
diff --git a/drivers/clk/sunxi/clk_a10.c b/drivers/clk/sunxi/clk_a10.c
index 7a96d1708ea..67507c5ab1d 100644
--- a/drivers/clk/sunxi/clk_a10.c
+++ b/drivers/clk/sunxi/clk_a10.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun4i-a10-ccu.h>
#include <dt-bindings/reset/sun4i-a10-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate a10_gates[] = {
[CLK_AHB_OTG] = GATE(0x060, BIT(0)),
diff --git a/drivers/clk/sunxi/clk_a10s.c b/drivers/clk/sunxi/clk_a10s.c
index 33d41d47b0f..d11a4b5f038 100644
--- a/drivers/clk/sunxi/clk_a10s.c
+++ b/drivers/clk/sunxi/clk_a10s.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun5i-ccu.h>
#include <dt-bindings/reset/sun5i-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate a10s_gates[] = {
[CLK_AHB_OTG] = GATE(0x060, BIT(0)),
diff --git a/drivers/clk/sunxi/clk_a23.c b/drivers/clk/sunxi/clk_a23.c
index c16019215e2..4d562bfe427 100644
--- a/drivers/clk/sunxi/clk_a23.c
+++ b/drivers/clk/sunxi/clk_a23.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun8i-a23-a33-ccu.h>
#include <dt-bindings/reset/sun8i-a23-a33-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate a23_gates[] = {
[CLK_BUS_MMC0] = GATE(0x060, BIT(8)),
diff --git a/drivers/clk/sunxi/clk_a31.c b/drivers/clk/sunxi/clk_a31.c
index 4ec3c2ae892..4a9454eebe7 100644
--- a/drivers/clk/sunxi/clk_a31.c
+++ b/drivers/clk/sunxi/clk_a31.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun6i-a31-ccu.h>
#include <dt-bindings/reset/sun6i-a31-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate a31_gates[] = {
[CLK_AHB1_MMC0] = GATE(0x060, BIT(8)),
diff --git a/drivers/clk/sunxi/clk_a64.c b/drivers/clk/sunxi/clk_a64.c
index f94e8aa754a..d96cb1aac1c 100644
--- a/drivers/clk/sunxi/clk_a64.c
+++ b/drivers/clk/sunxi/clk_a64.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun50i-a64-ccu.h>
#include <dt-bindings/reset/sun50i-a64-ccu.h>
+#include <linux/bitops.h>
static const struct ccu_clk_gate a64_gates[] = {
[CLK_BUS_MMC0] = GATE(0x060, BIT(8)),
diff --git a/drivers/clk/sunxi/clk_a80.c b/drivers/clk/sunxi/clk_a80.c
index fb76aad528b..80d7407037e 100644
--- a/drivers/clk/sunxi/clk_a80.c
+++ b/drivers/clk/sunxi/clk_a80.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun9i-a80-ccu.h>
#include <dt-bindings/reset/sun9i-a80-ccu.h>
+#include <linux/bitops.h>
static const struct ccu_clk_gate a80_gates[] = {
[CLK_SPI0] = GATE(0x430, BIT(31)),
diff --git a/drivers/clk/sunxi/clk_a83t.c b/drivers/clk/sunxi/clk_a83t.c
index 2be87a31fd5..d6f23ddc778 100644
--- a/drivers/clk/sunxi/clk_a83t.c
+++ b/drivers/clk/sunxi/clk_a83t.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun8i-a83t-ccu.h>
#include <dt-bindings/reset/sun8i-a83t-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate a83t_gates[] = {
[CLK_BUS_MMC0] = GATE(0x060, BIT(8)),
diff --git a/drivers/clk/sunxi/clk_h3.c b/drivers/clk/sunxi/clk_h3.c
index 6111a13f1c1..7e844f4ff16 100644
--- a/drivers/clk/sunxi/clk_h3.c
+++ b/drivers/clk/sunxi/clk_h3.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun8i-h3-ccu.h>
#include <dt-bindings/reset/sun8i-h3-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate h3_gates[] = {
[CLK_BUS_MMC0] = GATE(0x060, BIT(8)),
diff --git a/drivers/clk/sunxi/clk_h6.c b/drivers/clk/sunxi/clk_h6.c
index 105c15d8694..a1cb8952d39 100644
--- a/drivers/clk/sunxi/clk_h6.c
+++ b/drivers/clk/sunxi/clk_h6.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun50i-h6-ccu.h>
#include <dt-bindings/reset/sun50i-h6-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate h6_gates[] = {
[CLK_BUS_MMC0] = GATE(0x84c, BIT(0)),
diff --git a/drivers/clk/sunxi/clk_r40.c b/drivers/clk/sunxi/clk_r40.c
index 44abc4f536d..ac360b2bebd 100644
--- a/drivers/clk/sunxi/clk_r40.c
+++ b/drivers/clk/sunxi/clk_r40.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun8i-r40-ccu.h>
#include <dt-bindings/reset/sun8i-r40-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate r40_gates[] = {
[CLK_BUS_MMC0] = GATE(0x060, BIT(8)),
diff --git a/drivers/clk/sunxi/clk_sunxi.c b/drivers/clk/sunxi/clk_sunxi.c
index 77fba5357f9..41934cd826e 100644
--- a/drivers/clk/sunxi/clk_sunxi.c
+++ b/drivers/clk/sunxi/clk_sunxi.c
@@ -12,6 +12,7 @@
#include <reset.h>
#include <asm/io.h>
#include <asm/arch/ccu.h>
+#include <linux/bitops.h>
#include <linux/log2.h>
static const struct ccu_clk_gate *priv_to_gate(struct ccu_priv *priv,
diff --git a/drivers/clk/sunxi/clk_v3s.c b/drivers/clk/sunxi/clk_v3s.c
index 789ac72026b..b79446cc4fd 100644
--- a/drivers/clk/sunxi/clk_v3s.c
+++ b/drivers/clk/sunxi/clk_v3s.c
@@ -11,6 +11,7 @@
#include <asm/arch/ccu.h>
#include <dt-bindings/clock/sun8i-v3s-ccu.h>
#include <dt-bindings/reset/sun8i-v3s-ccu.h>
+#include <linux/bitops.h>
static struct ccu_clk_gate v3s_gates[] = {
[CLK_BUS_MMC0] = GATE(0x060, BIT(8)),
diff --git a/drivers/cpu/bmips_cpu.c b/drivers/cpu/bmips_cpu.c
index 613c8360495..2649c5c6e91 100644
--- a/drivers/cpu/bmips_cpu.c
+++ b/drivers/cpu/bmips_cpu.c
@@ -13,6 +13,7 @@
#include <errno.h>
#include <init.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define REV_CHIPID_SHIFT 16
#define REV_CHIPID_MASK (0xffff << REV_CHIPID_SHIFT)
diff --git a/drivers/cpu/imx8_cpu.c b/drivers/cpu/imx8_cpu.c
index 9d1d8d7ab89..dddd12d1e40 100644
--- a/drivers/cpu/imx8_cpu.c
+++ b/drivers/cpu/imx8_cpu.c
@@ -12,6 +12,7 @@
#include <asm/arch/sys_proto.h>
#include <asm/arch-imx/cpu.h>
#include <asm/armv8/cpu.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/cpu/mpc83xx_cpu.c b/drivers/cpu/mpc83xx_cpu.c
index c1a7a555c67..f8a84bae9d9 100644
--- a/drivers/cpu/mpc83xx_cpu.c
+++ b/drivers/cpu/mpc83xx_cpu.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <log.h>
#include <vsprintf.h>
+#include <linux/bitops.h>
#include "mpc83xx_cpu.h"
diff --git a/drivers/cpu/riscv_cpu.c b/drivers/cpu/riscv_cpu.c
index 1dc7ee9fdcb..cb04f5638db 100644
--- a/drivers/cpu/riscv_cpu.c
+++ b/drivers/cpu/riscv_cpu.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <dm/device-internal.h>
#include <dm/lists.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/ddr/altera/sdram_arria10.c b/drivers/ddr/altera/sdram_arria10.c
index 19d5724a606..3c58f59f3ab 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/bitops.h>
#include <linux/delay.h>
#include <linux/kernel.h>
diff --git a/drivers/ddr/altera/sdram_gen5.c b/drivers/ddr/altera/sdram_gen5.c
index ba588e96af9..1360bd0a3b8 100644
--- a/drivers/ddr/altera/sdram_gen5.c
+++ b/drivers/ddr/altera/sdram_gen5.c
@@ -15,6 +15,7 @@
#include <asm/arch/reset_manager.h>
#include <asm/arch/sdram.h>
#include <asm/arch/system_manager.h>
+#include <asm/bitops.h>
#include <asm/io.h>
#include <dm/device_compat.h>
diff --git a/drivers/ddr/fsl/ctrl_regs.c b/drivers/ddr/fsl/ctrl_regs.c
index ed60b226dfd..2d3fb1953b8 100644
--- a/drivers/ddr/fsl/ctrl_regs.c
+++ b/drivers/ddr/fsl/ctrl_regs.c
@@ -16,6 +16,7 @@
#include <fsl_ddr.h>
#include <fsl_immap.h>
#include <log.h>
+#include <asm/bitops.h>
#include <asm/io.h>
#if defined(CONFIG_FSL_LSCH2) || defined(CONFIG_FSL_LSCH3) || \
defined(CONFIG_ARM)
diff --git a/drivers/ddr/fsl/ddr1_dimm_params.c b/drivers/ddr/fsl/ddr1_dimm_params.c
index ef430ae1358..e5481eaa0dd 100644
--- a/drivers/ddr/fsl/ddr1_dimm_params.c
+++ b/drivers/ddr/fsl/ddr1_dimm_params.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <fsl_ddr_sdram.h>
#include <log.h>
+#include <asm/bitops.h>
#include <fsl_ddr.h>
diff --git a/drivers/ddr/fsl/ddr2_dimm_params.c b/drivers/ddr/fsl/ddr2_dimm_params.c
index 442f72c2709..3b78118a9d8 100644
--- a/drivers/ddr/fsl/ddr2_dimm_params.c
+++ b/drivers/ddr/fsl/ddr2_dimm_params.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <fsl_ddr_sdram.h>
#include <log.h>
+#include <asm/bitops.h>
#include <fsl_ddr.h>
/*
diff --git a/drivers/ddr/fsl/interactive.c b/drivers/ddr/fsl/interactive.c
index ea8bcbeb516..2f76beb2dbe 100644
--- a/drivers/ddr/fsl/interactive.c
+++ b/drivers/ddr/fsl/interactive.c
@@ -16,6 +16,7 @@
#include <command.h>
#include <env.h>
#include <log.h>
+#include <asm/bitops.h>
#include <linux/ctype.h>
#include <asm/types.h>
#include <asm/io.h>
diff --git a/drivers/ddr/fsl/lc_common_dimm_params.c b/drivers/ddr/fsl/lc_common_dimm_params.c
index 16ff6eeeb95..d299d763db1 100644
--- a/drivers/ddr/fsl/lc_common_dimm_params.c
+++ b/drivers/ddr/fsl/lc_common_dimm_params.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <fsl_ddr_sdram.h>
#include <log.h>
+#include <asm/bitops.h>
#include <fsl_ddr.h>
diff --git a/drivers/ddr/fsl/main.c b/drivers/ddr/fsl/main.c
index 8533b28c258..84139b85c33 100644
--- a/drivers/ddr/fsl/main.c
+++ b/drivers/ddr/fsl/main.c
@@ -16,6 +16,7 @@
#include <fsl_ddr.h>
#include <init.h>
#include <log.h>
+#include <asm/bitops.h>
/*
* CONFIG_SYS_FSL_DDR_SDRAM_BASE_PHY is the physical address from the view
diff --git a/drivers/dma/bcm6348-iudma.c b/drivers/dma/bcm6348-iudma.c
index 9e0e82520e7..91172d483c7 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/bitops.h>
#include <linux/delay.h>
#define DMA_RX_DESC 6
diff --git a/drivers/dma/lpc32xx_dma.c b/drivers/dma/lpc32xx_dma.c
index de963347f11..ab58e97bfe2 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/bitops.h>
#include <linux/delay.h>
/* DMA controller channel register structure */
diff --git a/drivers/dma/ti/k3-udma-hwdef.h b/drivers/dma/ti/k3-udma-hwdef.h
index c88399a815e..5d50bbcb031 100644
--- a/drivers/dma/ti/k3-udma-hwdef.h
+++ b/drivers/dma/ti/k3-udma-hwdef.h
@@ -12,6 +12,7 @@
#ifndef K3_NAVSS_UDMA_HWDEF_H_
#define K3_NAVSS_UDMA_HWDEF_H_
+#include <linux/bitops.h>
#define UDMA_PSIL_DST_THREAD_ID_OFFSET 0x8000
/* Global registers */
diff --git a/drivers/dma/ti/k3-udma.c b/drivers/dma/ti/k3-udma.c
index 299e707adcf..2ce16c8e27f 100644
--- a/drivers/dma/ti/k3-udma.c
+++ b/drivers/dma/ti/k3-udma.c
@@ -12,6 +12,7 @@
#include <asm/io.h>
#include <asm/bitops.h>
#include <malloc.h>
+#include <linux/bitops.h>
#include <linux/dma-mapping.h>
#include <dm.h>
#include <dm/device_compat.h>
diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
index de9a2eaff58..15f5b0b14cc 100644
--- a/drivers/firmware/ti_sci.c
+++ b/drivers/firmware/ti_sci.c
@@ -16,6 +16,7 @@
#include <dm/device.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <linux/err.h>
#include <linux/soc/ti/k3-sec-proxy.h>
diff --git a/drivers/firmware/ti_sci.h b/drivers/firmware/ti_sci.h
index 24b4d1c7948..327bb820f3a 100644
--- a/drivers/firmware/ti_sci.h
+++ b/drivers/firmware/ti_sci.h
@@ -15,6 +15,7 @@
#define __TI_SCI_H
/* Generic Messages */
+#include <linux/bitops.h>
#define TI_SCI_MSG_ENABLE_WDT 0x0000
#define TI_SCI_MSG_WAKE_RESET 0x0001
#define TI_SCI_MSG_VERSION 0x0002
diff --git a/drivers/fpga/socfpga_arria10.c b/drivers/fpga/socfpga_arria10.c
index e14204633e7..dfd3cbb4610 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/bitops.h>
#include <linux/delay.h>
#define CFGWDTH_32 1
diff --git a/drivers/fpga/zynqmppl.c b/drivers/fpga/zynqmppl.c
index b995bcc008b..2ac4e389521 100644
--- a/drivers/fpga/zynqmppl.c
+++ b/drivers/fpga/zynqmppl.c
@@ -12,6 +12,7 @@
#include <zynqmppl.h>
#include <zynqmp_firmware.h>
#include <asm/cache.h>
+#include <linux/bitops.h>
#include <linux/sizes.h>
#include <asm/arch/sys_proto.h>
#include <memalign.h>
diff --git a/drivers/gpio/atmel_pio4.c b/drivers/gpio/atmel_pio4.c
index a3f5e7a2e0a..455944d547a 100644
--- a/drivers/gpio/atmel_pio4.c
+++ b/drivers/gpio/atmel_pio4.c
@@ -12,6 +12,7 @@
#include <malloc.h>
#include <asm/arch/hardware.h>
#include <asm/gpio.h>
+#include <linux/bitops.h>
#include <mach/gpio.h>
#include <mach/atmel_pio4.h>
diff --git a/drivers/gpio/bcm6345_gpio.c b/drivers/gpio/bcm6345_gpio.c
index 71a978cf407..5da11d988e0 100644
--- a/drivers/gpio/bcm6345_gpio.c
+++ b/drivers/gpio/bcm6345_gpio.c
@@ -12,6 +12,7 @@
#include <errno.h>
#include <asm/gpio.h>
#include <asm/io.h>
+#include <linux/bitops.h>
struct bcm6345_gpio_priv {
void __iomem *reg_dirout;
diff --git a/drivers/gpio/cortina_gpio.c b/drivers/gpio/cortina_gpio.c
index c6266b88cbf..055907c1a1d 100644
--- a/drivers/gpio/cortina_gpio.c
+++ b/drivers/gpio/cortina_gpio.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <asm/io.h>
#include <asm/gpio.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <linux/compiler.h>
diff --git a/drivers/gpio/dwapb_gpio.c b/drivers/gpio/dwapb_gpio.c
index 7b50a34b3f9..e5e35181940 100644
--- a/drivers/gpio/dwapb_gpio.c
+++ b/drivers/gpio/dwapb_gpio.c
@@ -19,6 +19,7 @@
#include <dm/root.h>
#include <errno.h>
#include <reset.h>
+#include <linux/bitops.h>
#define GPIO_SWPORT_DR(p) (0x00 + (p) * 0xc)
#define GPIO_SWPORT_DDR(p) (0x04 + (p) * 0xc)
diff --git a/drivers/gpio/gpio-rcar.c b/drivers/gpio/gpio-rcar.c
index 9dc4cd60422..c49a041059d 100644
--- a/drivers/gpio/gpio-rcar.c
+++ b/drivers/gpio/gpio-rcar.c
@@ -12,6 +12,7 @@
#include <errno.h>
#include <asm/gpio.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include "../pinctrl/renesas/sh_pfc.h"
#define GPIO_IOINTSEL 0x00 /* General IO/Interrupt Switching Register */
diff --git a/drivers/gpio/gpio-rza1.c b/drivers/gpio/gpio-rza1.c
index ce2453e2ba6..21a87d645cd 100644
--- a/drivers/gpio/gpio-rza1.c
+++ b/drivers/gpio/gpio-rza1.c
@@ -9,6 +9,7 @@
#include <errno.h>
#include <asm/gpio.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define P(bank) (0x0000 + (bank) * 4)
#define PSR(bank) (0x0100 + (bank) * 4)
diff --git a/drivers/gpio/hi6220_gpio.c b/drivers/gpio/hi6220_gpio.c
index 97a04178917..95de2ae3660 100644
--- a/drivers/gpio/hi6220_gpio.c
+++ b/drivers/gpio/hi6220_gpio.c
@@ -9,6 +9,7 @@
#include <asm/gpio.h>
#include <asm/io.h>
#include <errno.h>
+#include <linux/bitops.h>
static int hi6220_gpio_direction_input(struct udevice *dev, unsigned int gpio)
{
diff --git a/drivers/gpio/hsdk-creg-gpio.c b/drivers/gpio/hsdk-creg-gpio.c
index 8eeb3849c2b..d9df804f639 100644
--- a/drivers/gpio/hsdk-creg-gpio.c
+++ b/drivers/gpio/hsdk-creg-gpio.c
@@ -15,6 +15,7 @@
#include <common.h>
#include <dm.h>
#include <errno.h>
+#include <linux/bitops.h>
#include <linux/printk.h>
#define DRV_NAME "gpio_creg"
diff --git a/drivers/gpio/mscc_sgpio.c b/drivers/gpio/mscc_sgpio.c
index 1bbd212b4fb..780d77b2f86 100644
--- a/drivers/gpio/mscc_sgpio.c
+++ b/drivers/gpio/mscc_sgpio.c
@@ -15,6 +15,7 @@
#include <errno.h>
#include <clk.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#define MSCC_SGPIOS_PER_BANK 32
diff --git a/drivers/gpio/mt7621_gpio.c b/drivers/gpio/mt7621_gpio.c
index 54d313d6f1d..612413e17bc 100644
--- a/drivers/gpio/mt7621_gpio.c
+++ b/drivers/gpio/mt7621_gpio.c
@@ -12,6 +12,7 @@
#include <errno.h>
#include <fdtdec.h>
#include <malloc.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <asm/io.h>
#include <asm/gpio.h>
diff --git a/drivers/gpio/mvebu_gpio.c b/drivers/gpio/mvebu_gpio.c
index e8b1c5965cb..770cbf6b607 100644
--- a/drivers/gpio/mvebu_gpio.c
+++ b/drivers/gpio/mvebu_gpio.c
@@ -8,6 +8,7 @@
#include <asm/gpio.h>
#include <asm/io.h>
#include <errno.h>
+#include <linux/bitops.h>
#define MVEBU_GPIOS_PER_BANK 32
diff --git a/drivers/gpio/mxs_gpio.c b/drivers/gpio/mxs_gpio.c
index 3094f1c804a..815339a1560 100644
--- a/drivers/gpio/mxs_gpio.c
+++ b/drivers/gpio/mxs_gpio.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <log.h>
#include <malloc.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/arch/iomux.h>
diff --git a/drivers/gpio/pca953x_gpio.c b/drivers/gpio/pca953x_gpio.c
index d06b834a3bc..fd17d1a5910 100644
--- a/drivers/gpio/pca953x_gpio.c
+++ b/drivers/gpio/pca953x_gpio.c
@@ -28,6 +28,7 @@
#include <asm/io.h>
#include <dm/device_compat.h>
#include <dt-bindings/gpio/gpio.h>
+#include <linux/bitops.h>
#define PCA953X_INPUT 0
#define PCA953X_OUTPUT 1
diff --git a/drivers/gpio/pcf8575_gpio.c b/drivers/gpio/pcf8575_gpio.c
index 7c790bb64ae..1b9a18fe5dc 100644
--- a/drivers/gpio/pcf8575_gpio.c
+++ b/drivers/gpio/pcf8575_gpio.c
@@ -28,6 +28,7 @@
#include <i2c.h>
#include <log.h>
#include <asm-generic/gpio.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/gpio/pic32_gpio.c b/drivers/gpio/pic32_gpio.c
index d8789e76078..bb1ad256fac 100644
--- a/drivers/gpio/pic32_gpio.c
+++ b/drivers/gpio/pic32_gpio.c
@@ -10,6 +10,7 @@
#include <malloc.h>
#include <asm/io.h>
#include <asm/gpio.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <mach/pic32.h>
diff --git a/drivers/gpio/sh_pfc.c b/drivers/gpio/sh_pfc.c
index 00b806e6a65..0653171af48 100644
--- a/drivers/gpio/sh_pfc.c
+++ b/drivers/gpio/sh_pfc.c
@@ -15,6 +15,7 @@
#include <asm/bitops.h>
#include <asm/io.h>
#include <sh_pfc.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
static struct pinmux_info *gpioc;
diff --git a/drivers/gpio/sifive-gpio.c b/drivers/gpio/sifive-gpio.c
index 76d5a1d34ee..24da3b3c230 100644
--- a/drivers/gpio/sifive-gpio.c
+++ b/drivers/gpio/sifive-gpio.c
@@ -11,6 +11,7 @@
#include <asm/io.h>
#include <errno.h>
#include <asm/gpio.h>
+#include <linux/bitops.h>
static int sifive_gpio_probe(struct udevice *dev)
{
diff --git a/drivers/gpio/stm32_gpio.c b/drivers/gpio/stm32_gpio.c
index 451724e8389..4f710b6b6af 100644
--- a/drivers/gpio/stm32_gpio.c
+++ b/drivers/gpio/stm32_gpio.c
@@ -14,6 +14,7 @@
#include <asm/gpio.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <linux/io.h>
diff --git a/drivers/gpio/tegra186_gpio_priv.h b/drivers/gpio/tegra186_gpio_priv.h
index ac8df27c467..3e686beedc1 100644
--- a/drivers/gpio/tegra186_gpio_priv.h
+++ b/drivers/gpio/tegra186_gpio_priv.h
@@ -10,6 +10,7 @@
* For each GPIO, there are a set of registers than affect it, all packed
* back-to-back.
*/
+#include <linux/bitops.h>
#define TEGRA186_GPIO_ENABLE_CONFIG 0x00
#define TEGRA186_GPIO_ENABLE_CONFIG_ENABLE BIT(0)
#define TEGRA186_GPIO_ENABLE_CONFIG_OUT BIT(1)
diff --git a/drivers/gpio/zynq_gpio.c b/drivers/gpio/zynq_gpio.c
index fe3b2c3b1aa..d0e90b8d633 100644
--- a/drivers/gpio/zynq_gpio.c
+++ b/drivers/gpio/zynq_gpio.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <asm/gpio.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <dm.h>
#include <fdtdec.h>
diff --git a/drivers/hwspinlock/stm32_hwspinlock.c b/drivers/hwspinlock/stm32_hwspinlock.c
index 74afb4aec22..8be585a0c86 100644
--- a/drivers/hwspinlock/stm32_hwspinlock.c
+++ b/drivers/hwspinlock/stm32_hwspinlock.c
@@ -9,6 +9,7 @@
#include <hwspinlock.h>
#include <malloc.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define STM32_MUTEX_COREID BIT(8)
#define STM32_MUTEX_LOCK_BIT BIT(31)
diff --git a/drivers/i2c/at91_i2c.h b/drivers/i2c/at91_i2c.h
index 87f02bfaf3f..3915af83723 100644
--- a/drivers/i2c/at91_i2c.h
+++ b/drivers/i2c/at91_i2c.h
@@ -1,6 +1,7 @@
#ifndef _AT91_I2C_H
#define _AT91_I2C_H
+#include <linux/bitops.h>
#define TWI_CR_START BIT(0) /* Send a Start Condition */
#define TWI_CR_MSEN BIT(2) /* Master Transfer Enable */
#define TWI_CR_STOP BIT(1) /* Send a Stop Condition */
diff --git a/drivers/i2c/designware_i2c.h b/drivers/i2c/designware_i2c.h
index 7ee236193da..dc9a6ccb633 100644
--- a/drivers/i2c/designware_i2c.h
+++ b/drivers/i2c/designware_i2c.h
@@ -10,6 +10,7 @@
#include <clk.h>
#include <i2c.h>
#include <reset.h>
+#include <linux/bitops.h>
struct i2c_regs {
u32 ic_con; /* 0x00 */
diff --git a/drivers/i2c/i2c-cdns.c b/drivers/i2c/i2c-cdns.c
index 402a664876d..024c63c4eae 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/bitops.h>
#include <linux/delay.h>
#include <linux/types.h>
#include <linux/io.h>
diff --git a/drivers/i2c/i2c-versatile.c b/drivers/i2c/i2c-versatile.c
index 46eb017ea0d..62831522bd3 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/bitops.h>
#include <linux/delay.h>
#include <linux/io.h>
diff --git a/drivers/i2c/ihs_i2c.c b/drivers/i2c/ihs_i2c.c
index 296e01b41cb..cec38538da4 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/bitops.h>
#include <linux/delay.h>
#ifdef CONFIG_DM_I2C
diff --git a/drivers/i2c/meson_i2c.c b/drivers/i2c/meson_i2c.c
index 0a647b8f73c..e070caf43f2 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/i2c/rcar_i2c.c b/drivers/i2c/rcar_i2c.c
index 5a902047bc9..4267bbfa5a9 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/bitops.h>
#include <linux/delay.h>
#define RCAR_I2C_ICSCR 0x00 /* slave ctrl */
diff --git a/drivers/i2c/rcar_iic.c b/drivers/i2c/rcar_iic.c
index 6b21f6a5326..cad0a623d36 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/bitops.h>
#include <linux/delay.h>
struct rcar_iic_priv {
diff --git a/drivers/i2c/stm32f7_i2c.c b/drivers/i2c/stm32f7_i2c.c
index 18affd08e36..ada8f4095ed 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/bitops.h>
#include <linux/delay.h>
#include <dm/device.h>
diff --git a/drivers/i2c/tegra186_bpmp_i2c.c b/drivers/i2c/tegra186_bpmp_i2c.c
index ac41a7f0f83..37204718ca1 100644
--- a/drivers/i2c/tegra186_bpmp_i2c.c
+++ b/drivers/i2c/tegra186_bpmp_i2c.c
@@ -9,6 +9,7 @@
#include <log.h>
#include <misc.h>
#include <asm/arch-tegra/bpmp_abi.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/led/led_bcm6858.c b/drivers/led/led_bcm6858.c
index 2be4279c08d..b415d8b2b40 100644
--- a/drivers/led/led_bcm6858.c
+++ b/drivers/led/led_bcm6858.c
@@ -14,6 +14,7 @@
#include <log.h>
#include <asm/io.h>
#include <dm/lists.h>
+#include <linux/bitops.h>
#define LEDS_MAX 32
#define LEDS_WAIT 100
diff --git a/drivers/mailbox/stm32-ipcc.c b/drivers/mailbox/stm32-ipcc.c
index 0778eb52253..b8bf356b4ac 100644
--- a/drivers/mailbox/stm32-ipcc.c
+++ b/drivers/mailbox/stm32-ipcc.c
@@ -11,6 +11,7 @@
#include <malloc.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
/*
* IPCC has one set of registers per CPU
diff --git a/drivers/mailbox/tegra-hsp.c b/drivers/mailbox/tegra-hsp.c
index 1d2c9798474..f82e6d3d166 100644
--- a/drivers/mailbox/tegra-hsp.c
+++ b/drivers/mailbox/tegra-hsp.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <mailbox-uclass.h>
#include <dt-bindings/mailbox/tegra186-hsp.h>
+#include <linux/bitops.h>
#define TEGRA_HSP_INT_DIMENSIONING 0x380
#define TEGRA_HSP_INT_DIMENSIONING_NSI_SHIFT 16
diff --git a/drivers/misc/esm_pmic.c b/drivers/misc/esm_pmic.c
index 92c8d68f7c8..a195dc5eb1d 100644
--- a/drivers/misc/esm_pmic.c
+++ b/drivers/misc/esm_pmic.c
@@ -12,6 +12,7 @@
#include <errno.h>
#include <power/pmic.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#define INT_ESM_REG 0x6c
#define INT_ESM_MASK 0x3f
diff --git a/drivers/misc/gdsys_ioep.h b/drivers/misc/gdsys_ioep.h
index 4d9524b6b63..f195388edaf 100644
--- a/drivers/misc/gdsys_ioep.h
+++ b/drivers/misc/gdsys_ioep.h
@@ -15,6 +15,7 @@
* @bc: Block counter (filled in by FPGA).
* @packet_length: Length of the packet's payload bytes.
*/
+#include <linux/bitops.h>
struct io_generic_packet {
u16 target_address;
u16 source_address;
diff --git a/drivers/misc/ihs_fpga.c b/drivers/misc/ihs_fpga.c
index 4923c81783d..00d34a3adc2 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/bitops.h>
#include <linux/delay.h>
#include "ihs_fpga.h"
diff --git a/drivers/misc/imx8/scu.c b/drivers/misc/imx8/scu.c
index babcb09f876..ee635eb9471 100644
--- a/drivers/misc/imx8/scu.c
+++ b/drivers/misc/imx8/scu.c
@@ -13,6 +13,7 @@
#include <dm/root.h>
#include <dm/device-internal.h>
#include <asm/arch/sci/sci.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
#include <misc.h>
diff --git a/drivers/misc/jz4780_efuse.c b/drivers/misc/jz4780_efuse.c
index bc3dc93af2d..1fba3271db6 100644
--- a/drivers/misc/jz4780_efuse.c
+++ b/drivers/misc/jz4780_efuse.c
@@ -10,6 +10,7 @@
#include <asm/io.h>
#include <asm/unaligned.h>
#include <errno.h>
+#include <linux/bitops.h>
#include <mach/jz4780.h>
#include <wait_bit.h>
diff --git a/drivers/misc/k3_avs.c b/drivers/misc/k3_avs.c
index d8048e1b70b..408c89315a9 100644
--- a/drivers/misc/k3_avs.c
+++ b/drivers/misc/k3_avs.c
@@ -14,6 +14,7 @@
#include <i2c.h>
#include <k3-avs.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <power/regulator.h>
#define AM6_VTM_DEVINFO(i) (priv->base + 0x100 + 0x20 * (i))
diff --git a/drivers/misc/k3_esm.c b/drivers/misc/k3_esm.c
index 8f270f3b5cb..cc2a23dd663 100644
--- a/drivers/misc/k3_esm.c
+++ b/drivers/misc/k3_esm.c
@@ -12,6 +12,7 @@
#include <errno.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#define ESM_SFT_RST 0x0c
#define ESM_SFT_RST_KEY 0x0f
diff --git a/drivers/misc/mpc83xx_serdes.h b/drivers/misc/mpc83xx_serdes.h
index 89ea1dbab73..2a13c5892bf 100644
--- a/drivers/misc/mpc83xx_serdes.h
+++ b/drivers/misc/mpc83xx_serdes.h
@@ -18,6 +18,7 @@
* lane E) field of the SRCSCR0
* @SRDSCR0_TXEQE_SATA: Bitmask to set the TXEQE to the value used for SATA
*/
+#include <linux/bitops.h>
enum srdscr0_mask {
SRDSCR0_DPPA = BIT(31 - 16),
SRDSCR0_DPPE = BIT(31 - 20),
diff --git a/drivers/misc/tegra186_bpmp.c b/drivers/misc/tegra186_bpmp.c
index 4077c46a237..18da138507c 100644
--- a/drivers/misc/tegra186_bpmp.c
+++ b/drivers/misc/tegra186_bpmp.c
@@ -14,6 +14,7 @@
#include <misc.h>
#include <asm/arch-tegra/bpmp_abi.h>
#include <asm/arch-tegra/ivc.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#define BPMP_IVC_FRAME_COUNT 1
diff --git a/drivers/misc/vexpress_config.c b/drivers/misc/vexpress_config.c
index 53d7e1d154a..02e5b586e29 100644
--- a/drivers/misc/vexpress_config.c
+++ b/drivers/misc/vexpress_config.c
@@ -9,6 +9,7 @@
#include <malloc.h>
#include <dm/read.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/delay.h>
#include <misc.h>
diff --git a/drivers/mmc/am654_sdhci.c b/drivers/mmc/am654_sdhci.c
index ca76e1f5595..cbc531dc535 100644
--- a/drivers/mmc/am654_sdhci.c
+++ b/drivers/mmc/am654_sdhci.c
@@ -13,6 +13,7 @@
#include <regmap.h>
#include <sdhci.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/err.h>
/* CTL_CFG Registers */
diff --git a/drivers/mmc/bcm2835_sdhost.c b/drivers/mmc/bcm2835_sdhost.c
index 52bb39a905e..c4876e81f8c 100644
--- a/drivers/mmc/bcm2835_sdhost.c
+++ b/drivers/mmc/bcm2835_sdhost.c
@@ -37,6 +37,7 @@
#include <asm/arch/mbox.h>
#include <asm/unaligned.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/compat.h>
#include <linux/delay.h>
diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
index 665eb9aa688..d5d955846cd 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/bitops.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 1d040f60869..588d6a9d764 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <power/regulator.h>
diff --git a/drivers/mmc/ftsdc010_mci.c b/drivers/mmc/ftsdc010_mci.c
index 5b8416813bd..b37523e26f8 100644
--- a/drivers/mmc/ftsdc010_mci.c
+++ b/drivers/mmc/ftsdc010_mci.c
@@ -15,6 +15,7 @@
#include <malloc.h>
#include <part.h>
#include <mmc.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/errno.h>
#include <asm/byteorder.h>
diff --git a/drivers/mmc/jz_mmc.c b/drivers/mmc/jz_mmc.c
index 83ae1e51699..d3f1eddf450 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/bitops.h>
#include <linux/delay.h>
#include <mach/jz4780.h>
#include <wait_bit.h>
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index 02494db75a7..620bb930640 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/bitops.h>
#include <linux/delay.h>
#include <power/regulator.h>
#include <malloc.h>
diff --git a/drivers/mmc/mmc_spi.c b/drivers/mmc/mmc_spi.c
index 0b690ecb4bd..e76ab54838b 100644
--- a/drivers/mmc/mmc_spi.c
+++ b/drivers/mmc/mmc_spi.c
@@ -13,6 +13,7 @@
#include <part.h>
#include <mmc.h>
#include <stdlib.h>
+#include <linux/bitops.h>
#include <u-boot/crc.h>
#include <linux/crc7.h>
#include <asm/byteorder.h>
diff --git a/drivers/mmc/mxsmmc.c b/drivers/mmc/mxsmmc.c
index ad2c0e00023..e3c352b44a8 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
diff --git a/drivers/mmc/omap_hsmmc.c b/drivers/mmc/omap_hsmmc.c
index 0c21ec716e4..8636cd713a3 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <power/regulator.h>
diff --git a/drivers/mmc/renesas-sdhi.c b/drivers/mmc/renesas-sdhi.c
index 668222999d5..d6ea99d2cee 100644
--- a/drivers/mmc/renesas-sdhi.c
+++ b/drivers/mmc/renesas-sdhi.c
@@ -12,6 +12,7 @@
#include <mmc.h>
#include <dm.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <linux/delay.h>
#include <linux/dma-direction.h>
diff --git a/drivers/mmc/sdhci-cadence.c b/drivers/mmc/sdhci-cadence.c
index 86408d57f30..7b5010b6558 100644
--- a/drivers/mmc/sdhci-cadence.c
+++ b/drivers/mmc/sdhci-cadence.c
@@ -8,6 +8,7 @@
#include <dm.h>
#include <dm/device_compat.h>
#include <linux/bitfield.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/io.h>
#include <linux/iopoll.h>
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index 73142db29a1..92cc8434af2 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/bitops.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 1a01fe5a739..2e994d0178d 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/compat.h>
diff --git a/drivers/mmc/sh_sdhi.c b/drivers/mmc/sh_sdhi.c
index 22a0f78933d..772fe943e4d 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/compat.h>
diff --git a/drivers/mmc/stm32_sdmmc2.c b/drivers/mmc/stm32_sdmmc2.c
index b802316720a..6d503562171 100644
--- a/drivers/mmc/stm32_sdmmc2.c
+++ b/drivers/mmc/stm32_sdmmc2.c
@@ -11,7 +11,9 @@
#include <fdtdec.h>
#include <log.h>
#include <malloc.h>
+#include <asm/bitops.h>
#include <asm/cache.h>
+#include <linux/bitops.h>
#include <linux/delay.h>
#include <linux/libfdt.h>
#include <mmc.h>
diff --git a/drivers/mmc/tegra_mmc.c b/drivers/mmc/tegra_mmc.c
index 78838682c7c..cc78a2f2f08 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#if defined(CONFIG_TEGRA30) || defined(CONFIG_TEGRA210)
diff --git a/drivers/mmc/tmio-common.h b/drivers/mmc/tmio-common.h
index 2f671df4bc9..9062300c64f 100644
--- a/drivers/mmc/tmio-common.h
+++ b/drivers/mmc/tmio-common.h
@@ -7,6 +7,7 @@
#ifndef __TMIO_COMMON_H__
#define __TMIO_COMMON_H__
+#include <linux/bitops.h>
#define TMIO_SD_CMD 0x000 /* command */
#define TMIO_SD_CMD_NOSTOP BIT(14) /* No automatic CMD12 issue */
#define TMIO_SD_CMD_MULTI BIT(13) /* multiple block transfer */
diff --git a/drivers/mmc/xenon_sdhci.c b/drivers/mmc/xenon_sdhci.c
index 7dc600032b8..e765dd384ac 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/bitops.h>
#include <linux/delay.h>
#include <linux/libfdt.h>
#include <malloc.h>
diff --git a/drivers/mtd/altera_qspi.c b/drivers/mtd/altera_qspi.c
index 6896351995f..cd4d32959a0 100644
--- a/drivers/mtd/altera_qspi.c
+++ b/drivers/mtd/altera_qspi.c
@@ -12,6 +12,7 @@
#include <log.h>
#include <mtd.h>
#include <asm/io.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c
index 97e88b71784..1a4dec34d93 100644
--- a/drivers/mtd/mtdcore.c
+++ b/drivers/mtd/mtdcore.c
@@ -28,6 +28,7 @@
#include <linux/gfp.h>
#include <linux/slab.h>
#else
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/err.h>
#include <ubi_uboot.h>
diff --git a/drivers/mtd/nand/bbt.c b/drivers/mtd/nand/bbt.c
index 133670cb199..84d60b86521 100644
--- a/drivers/mtd/nand/bbt.c
+++ b/drivers/mtd/nand/bbt.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/mtd/nand.h>
#ifndef __UBOOT__
#include <linux/slab.h>
diff --git a/drivers/mtd/nand/core.c b/drivers/mtd/nand/core.c
index bc0accf8c66..6fbd24ba749 100644
--- a/drivers/mtd/nand/core.c
+++ b/drivers/mtd/nand/core.c
@@ -14,6 +14,7 @@
#include <linux/compat.h>
#include <linux/module.h>
#endif
+#include <linux/bitops.h>
#include <linux/mtd/nand.h>
/**
diff --git a/drivers/mtd/nand/raw/atmel_nand.c b/drivers/mtd/nand/raw/atmel_nand.c
index 4a017ea74dc..5e95901e275 100644
--- a/drivers/mtd/nand/raw/atmel_nand.c
+++ b/drivers/mtd/nand/raw/atmel_nand.c
@@ -16,6 +16,7 @@
#include <asm/arch/gpio.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
diff --git a/drivers/mtd/nand/raw/brcmnand/bcm63158_nand.c b/drivers/mtd/nand/raw/brcmnand/bcm63158_nand.c
index ea7c65a1f6b..6313403cd65 100644
--- a/drivers/mtd/nand/raw/brcmnand/bcm63158_nand.c
+++ b/drivers/mtd/nand/raw/brcmnand/bcm63158_nand.c
@@ -4,6 +4,7 @@
#include <asm/io.h>
#include <memalign.h>
#include <nand.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/io.h>
diff --git a/drivers/mtd/nand/raw/brcmnand/bcm6368_nand.c b/drivers/mtd/nand/raw/brcmnand/bcm6368_nand.c
index e2f5452c272..cd4b24a51a1 100644
--- a/drivers/mtd/nand/raw/brcmnand/bcm6368_nand.c
+++ b/drivers/mtd/nand/raw/brcmnand/bcm6368_nand.c
@@ -4,6 +4,7 @@
#include <asm/io.h>
#include <memalign.h>
#include <nand.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <linux/io.h>
#include <linux/ioport.h>
diff --git a/drivers/mtd/nand/raw/brcmnand/bcm68360_nand.c b/drivers/mtd/nand/raw/brcmnand/bcm68360_nand.c
index 0f1a28e4765..aa042bef158 100644
--- a/drivers/mtd/nand/raw/brcmnand/bcm68360_nand.c
+++ b/drivers/mtd/nand/raw/brcmnand/bcm68360_nand.c
@@ -4,6 +4,7 @@
#include <asm/io.h>
#include <memalign.h>
#include <nand.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <linux/io.h>
#include <linux/ioport.h>
diff --git a/drivers/mtd/nand/raw/brcmnand/bcm6838_nand.c b/drivers/mtd/nand/raw/brcmnand/bcm6838_nand.c
index 3a136155dd9..07884550906 100644
--- a/drivers/mtd/nand/raw/brcmnand/bcm6838_nand.c
+++ b/drivers/mtd/nand/raw/brcmnand/bcm6838_nand.c
@@ -4,6 +4,7 @@
#include <asm/io.h>
#include <memalign.h>
#include <nand.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/io.h>
diff --git a/drivers/mtd/nand/raw/brcmnand/bcm6858_nand.c b/drivers/mtd/nand/raw/brcmnand/bcm6858_nand.c
index 6aca011db25..818eae8a7c6 100644
--- a/drivers/mtd/nand/raw/brcmnand/bcm6858_nand.c
+++ b/drivers/mtd/nand/raw/brcmnand/bcm6858_nand.c
@@ -4,6 +4,7 @@
#include <asm/io.h>
#include <memalign.h>
#include <nand.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/io.h>
diff --git a/drivers/mtd/nand/raw/brcmnand/brcmnand.c b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
index 5d77d53a09d..48c0ca69de5 100644
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
@@ -19,6 +19,7 @@
#include <clk.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/err.h>
#include <linux/ioport.h>
diff --git a/drivers/mtd/nand/raw/denali.c b/drivers/mtd/nand/raw/denali.c
index a58d7ce4ab1..5bae7f1197e 100644
--- a/drivers/mtd/nand/raw/denali.c
+++ b/drivers/mtd/nand/raw/denali.c
@@ -14,6 +14,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <linux/bitfield.h>
+#include <linux/bitops.h>
#include <linux/delay.h>
#include <linux/dma-direction.h>
#include <linux/dma-mapping.h>
diff --git a/drivers/mtd/nand/raw/mxs_nand_spl.c b/drivers/mtd/nand/raw/mxs_nand_spl.c
index ffe9860c680..46dc29df369 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/mtd/nand/raw/nand_base.c b/drivers/mtd/nand/raw/nand_base.c
index 26650389f43..698968bc116 100644
--- a/drivers/mtd/nand/raw/nand_base.c
+++ b/drivers/mtd/nand/raw/nand_base.c
@@ -36,6 +36,7 @@
#include <malloc.h>
#include <watchdog.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/mtd/nand/raw/pxa3xx_nand.c b/drivers/mtd/nand/raw/pxa3xx_nand.c
index 244b0fecb7a..a30e82166b9 100644
--- a/drivers/mtd/nand/raw/pxa3xx_nand.c
+++ b/drivers/mtd/nand/raw/pxa3xx_nand.c
@@ -12,6 +12,7 @@
#include <nand.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/mtd/nand/raw/stm32_fmc2_nand.c b/drivers/mtd/nand/raw/stm32_fmc2_nand.c
index 97188b200cb..3306bd8ac94 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/iopoll.h>
diff --git a/drivers/mtd/nand/raw/sunxi_nand.c b/drivers/mtd/nand/raw/sunxi_nand.c
index 5331e73c2d1..004b6f17a51 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/mtd/nand/raw/sunxi_nand_spl.c b/drivers/mtd/nand/raw/sunxi_nand_spl.c
index 8b2f7ea4915..85d8013b1a6 100644
--- a/drivers/mtd/nand/raw/sunxi_nand_spl.c
+++ b/drivers/mtd/nand/raw/sunxi_nand_spl.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <config.h>
#include <nand.h>
+#include <linux/bitops.h>
#include <linux/ctype.h>
#include <linux/delay.h>
diff --git a/drivers/mtd/nand/spi/core.c b/drivers/mtd/nand/spi/core.c
index f76b1239a4a..93371fdde07 100644
--- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c
@@ -26,6 +26,7 @@
#include <spi-mem.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/mtd/spinand.h>
#endif
diff --git a/drivers/mtd/nand/spi/micron.c b/drivers/mtd/nand/spi/micron.c
index 687306e33e6..04de51cb466 100644
--- a/drivers/mtd/nand/spi/micron.c
+++ b/drivers/mtd/nand/spi/micron.c
@@ -11,6 +11,7 @@
#include <linux/device.h>
#include <linux/kernel.h>
#endif
+#include <linux/bitops.h>
#include <linux/mtd/spinand.h>
#define SPINAND_MFR_MICRON 0x2c
diff --git a/drivers/mtd/nand/spi/winbond.c b/drivers/mtd/nand/spi/winbond.c
index 6ede98c85d2..c119486efb7 100644
--- a/drivers/mtd/nand/spi/winbond.c
+++ b/drivers/mtd/nand/spi/winbond.c
@@ -12,6 +12,7 @@
#include <linux/device.h>
#include <linux/kernel.h>
#endif
+#include <linux/bitops.h>
#include <linux/mtd/spinand.h>
#define SPINAND_MFR_WINBOND 0xEF
diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c
index 0580b509f89..36daef01aec 100644
--- a/drivers/mtd/onenand/onenand_base.c
+++ b/drivers/mtd/onenand/onenand_base.c
@@ -23,6 +23,7 @@
#include <log.h>
#include <watchdog.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <linux/mtd/mtd.h>
#include "linux/mtd/flashchip.h"
diff --git a/drivers/mtd/onenand/onenand_spl.c b/drivers/mtd/onenand/onenand_spl.c
index c4983d15d51..ab6f1a8be3e 100644
--- a/drivers/mtd/onenand/onenand_spl.c
+++ b/drivers/mtd/onenand/onenand_spl.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/mtd/onenand_regs.h>
#include <onenand_uboot.h>
diff --git a/drivers/mtd/pic32_flash.c b/drivers/mtd/pic32_flash.c
index 1766ba48023..a58a2c4b6c3 100644
--- a/drivers/mtd/pic32_flash.c
+++ b/drivers/mtd/pic32_flash.c
@@ -12,6 +12,7 @@
#include <flash.h>
#include <init.h>
#include <irq_func.h>
+#include <linux/bitops.h>
#include <mach/pic32.h>
#include <wait_bit.h>
diff --git a/drivers/mtd/renesas_rpc_hf.c b/drivers/mtd/renesas_rpc_hf.c
index fc2aa22d7f3..65320c7ed98 100644
--- a/drivers/mtd/renesas_rpc_hf.c
+++ b/drivers/mtd/renesas_rpc_hf.c
@@ -19,6 +19,7 @@
#include <flash.h>
#include <mtd.h>
#include <wait_bit.h>
+#include <linux/bitops.h>
#include <mtd/cfi_flash.h>
#define RPC_CMNCR 0x0000 /* R/W */
diff --git a/drivers/mtd/spi/sf_internal.h b/drivers/mtd/spi/sf_internal.h
index 940b2e4c9e0..ce0cf4c428b 100644
--- a/drivers/mtd/spi/sf_internal.h
+++ b/drivers/mtd/spi/sf_internal.h
@@ -9,6 +9,7 @@
#ifndef _SF_INTERNAL_H_
#define _SF_INTERNAL_H_
+#include <linux/bitops.h>
#include <linux/types.h>
#include <linux/compiler.h>
diff --git a/drivers/mtd/spi/spi-nor-core.c b/drivers/mtd/spi/spi-nor-core.c
index 76511f5d140..56b44ebbe8d 100644
--- a/drivers/mtd/spi/spi-nor-core.c
+++ b/drivers/mtd/spi/spi-nor-core.c
@@ -13,6 +13,7 @@
#include <log.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/log2.h>
diff --git a/drivers/mtd/ubispl/ubispl.c b/drivers/mtd/ubispl/ubispl.c
index ee2df11522b..03b31f002b9 100644
--- a/drivers/mtd/ubispl/ubispl.c
+++ b/drivers/mtd/ubispl/ubispl.c
@@ -13,6 +13,7 @@
#include <u-boot/crc.h>
#include <ubispl.h>
+#include <linux/bitops.h>
#include <linux/crc32.h>
#include "ubispl.h"
diff --git a/drivers/net/ag7xxx.c b/drivers/net/ag7xxx.c
index 0fe140cf6e6..3b5d11f956d 100644
--- a/drivers/net/ag7xxx.c
+++ b/drivers/net/ag7xxx.c
@@ -16,6 +16,7 @@
#include <malloc.h>
#include <net.h>
#include <asm/cache.h>
+#include <linux/bitops.h>
#include <linux/compiler.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/net/altera_tse.h b/drivers/net/altera_tse.h
index 2b1af814297..79509b80847 100644
--- a/drivers/net/altera_tse.h
+++ b/drivers/net/altera_tse.h
@@ -11,6 +11,7 @@
#ifndef _ALTERA_TSE_H_
#define _ALTERA_TSE_H_
+#include <linux/bitops.h>
#define __packed_1_ __packed __aligned(1)
/* dma type */
diff --git a/drivers/net/bcm-sf2-eth-gmac.c b/drivers/net/bcm-sf2-eth-gmac.c
index f57861e8704..3caf0f33109 100644
--- a/drivers/net/bcm-sf2-eth-gmac.c
+++ b/drivers/net/bcm-sf2-eth-gmac.c
@@ -19,6 +19,7 @@
#include <asm/io.h>
#include <phy.h>
#include <linux/delay.h>
+#include <linux/bitops.h>
#include "bcm-sf2-eth.h"
#include "bcm-sf2-eth-gmac.h"
diff --git a/drivers/net/bcmgenet.c b/drivers/net/bcmgenet.c
index d09f17d9947..11b6148ab63 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <malloc.h>
diff --git a/drivers/net/dc2114x.c b/drivers/net/dc2114x.c
index 611a8c4b9e4..c55358ef839 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/bitops.h>
#include <linux/delay.h>
#define SROM_DLEVEL 0
diff --git a/drivers/net/dwc_eth_qos.c b/drivers/net/dwc_eth_qos.c
index 789ac2e818a..3f4437069ba 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/bitops.h>
#include <linux/delay.h>
/* Core registers */
diff --git a/drivers/net/fsl_enetc.h b/drivers/net/fsl_enetc.h
index 48c3005cb3a..37e7e858435 100644
--- a/drivers/net/fsl_enetc.h
+++ b/drivers/net/fsl_enetc.h
@@ -7,6 +7,7 @@
#ifndef _ENETC_H
#define _ENETC_H
+#include <linux/bitops.h>
#define enetc_dbg(dev, fmt, args...) debug("%s:" fmt, dev->name, ##args)
/* PCI function IDs */
diff --git a/drivers/net/ftgmac100.c b/drivers/net/ftgmac100.c
index 3322dcf2aab..e4d08f2ba01 100644
--- a/drivers/net/ftgmac100.c
+++ b/drivers/net/ftgmac100.c
@@ -22,6 +22,7 @@
#include <wait_bit.h>
#include <asm/cache.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/iopoll.h>
diff --git a/drivers/net/ftgmac100.h b/drivers/net/ftgmac100.h
index 9a789e4d5be..f7874ae68b6 100644
--- a/drivers/net/ftgmac100.h
+++ b/drivers/net/ftgmac100.h
@@ -13,6 +13,7 @@
#define __FTGMAC100_H
/* The registers offset table of ftgmac100 */
+#include <linux/bitops.h>
struct ftgmac100 {
unsigned int isr; /* 0x00 */
unsigned int ier; /* 0x04 */
diff --git a/drivers/net/gmac_rockchip.c b/drivers/net/gmac_rockchip.c
index 52a637bd548..8d95ee15ffd 100644
--- a/drivers/net/gmac_rockchip.c
+++ b/drivers/net/gmac_rockchip.c
@@ -26,6 +26,7 @@
#include <asm/arch-rockchip/grf_rv1108.h>
#include <dm/pinctrl.h>
#include <dt-bindings/clock/rk3288-cru.h>
+#include <linux/bitops.h>
#include "designware.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/net/higmacv300.c b/drivers/net/higmacv300.c
index 1ec98644c92..2aae7f4863c 100644
--- a/drivers/net/higmacv300.c
+++ b/drivers/net/higmacv300.c
@@ -10,6 +10,7 @@
#include <asm/io.h>
#include <common.h>
#include <console.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
#include <linux/mii.h>
diff --git a/drivers/net/mscc_eswitch/jr2_switch.c b/drivers/net/mscc_eswitch/jr2_switch.c
index 76823c618e8..1c9a401de81 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/bitops.h>
#include <linux/delay.h>
#include <linux/io.h>
#include <linux/ioport.h>
diff --git a/drivers/net/mscc_eswitch/luton_switch.c b/drivers/net/mscc_eswitch/luton_switch.c
index 9d24c005c12..1d46d0e5e1e 100644
--- a/drivers/net/mscc_eswitch/luton_switch.c
+++ b/drivers/net/mscc_eswitch/luton_switch.c
@@ -10,6 +10,7 @@
#include <dm/of_access.h>
#include <dm/of_addr.h>
#include <fdt_support.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/ioport.h>
#include <miiphy.h>
diff --git a/drivers/net/mscc_eswitch/mscc_mac_table.c b/drivers/net/mscc_eswitch/mscc_mac_table.c
index 833e233aa5a..25b9cad42c9 100644
--- a/drivers/net/mscc_eswitch/mscc_mac_table.c
+++ b/drivers/net/mscc_eswitch/mscc_mac_table.c
@@ -3,6 +3,7 @@
* Copyright (c) 2018 Microsemi Corporation
*/
+#include <linux/bitops.h>
#include <linux/io.h>
#include "mscc_mac_table.h"
diff --git a/drivers/net/mscc_eswitch/mscc_miim.c b/drivers/net/mscc_eswitch/mscc_miim.c
index d8ee8df47b1..6687787b1a6 100644
--- a/drivers/net/mscc_eswitch/mscc_miim.c
+++ b/drivers/net/mscc_eswitch/mscc_miim.c
@@ -5,6 +5,7 @@
#include <miiphy.h>
#include <wait_bit.h>
+#include <linux/bitops.h>
#include "mscc_miim.h"
#define MIIM_STATUS 0x0
diff --git a/drivers/net/mscc_eswitch/mscc_xfer.c b/drivers/net/mscc_eswitch/mscc_xfer.c
index 01eb204db8c..6f747464571 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/bitops.h>
#include <linux/delay.h>
#include <linux/io.h>
#include "mscc_xfer.h"
diff --git a/drivers/net/mscc_eswitch/ocelot_switch.c b/drivers/net/mscc_eswitch/ocelot_switch.c
index cae31e2f6e7..2a48dc6a190 100644
--- a/drivers/net/mscc_eswitch/ocelot_switch.c
+++ b/drivers/net/mscc_eswitch/ocelot_switch.c
@@ -11,6 +11,7 @@
#include <dm/of_access.h>
#include <dm/of_addr.h>
#include <fdt_support.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/ioport.h>
#include <miiphy.h>
diff --git a/drivers/net/mscc_eswitch/serval_switch.c b/drivers/net/mscc_eswitch/serval_switch.c
index cf8bf9c8b06..d8ee1a76989 100644
--- a/drivers/net/mscc_eswitch/serval_switch.c
+++ b/drivers/net/mscc_eswitch/serval_switch.c
@@ -11,6 +11,7 @@
#include <dm/of_access.h>
#include <dm/of_addr.h>
#include <fdt_support.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/ioport.h>
#include <miiphy.h>
diff --git a/drivers/net/mscc_eswitch/servalt_switch.c b/drivers/net/mscc_eswitch/servalt_switch.c
index bf95a38354d..1cf2273142b 100644
--- a/drivers/net/mscc_eswitch/servalt_switch.c
+++ b/drivers/net/mscc_eswitch/servalt_switch.c
@@ -10,6 +10,7 @@
#include <dm/of_access.h>
#include <dm/of_addr.h>
#include <fdt_support.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/ioport.h>
#include <miiphy.h>
diff --git a/drivers/net/mt7628-eth.c b/drivers/net/mt7628-eth.c
index a2e022db355..64f1c8c828d 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/net/mtk_eth.h b/drivers/net/mtk_eth.h
index f2940c9996f..be74ac27eaf 100644
--- a/drivers/net/mtk_eth.h
+++ b/drivers/net/mtk_eth.h
@@ -10,6 +10,7 @@
#define _MTK_ETH_H_
/* Frame Engine Register Bases */
+#include <linux/bitops.h>
#define PDMA_BASE 0x0800
#define GDMA1_BASE 0x0500
#define GDMA2_BASE 0x1500
diff --git a/drivers/net/mvmdio.c b/drivers/net/mvmdio.c
index ec6805e536e..a8e93e80fc0 100644
--- a/drivers/net/mvmdio.c
+++ b/drivers/net/mvmdio.c
@@ -12,6 +12,7 @@
#include <phy.h>
#include <asm/io.h>
#include <wait_bit.h>
+#include <linux/bitops.h>
#define MVMDIO_SMI_DATA_SHIFT 0
#define MVMDIO_SMI_PHY_ADDR_SHIFT 16
diff --git a/drivers/net/mvneta.c b/drivers/net/mvneta.c
index f9aef17f7ea..092f619bd5c 100644
--- a/drivers/net/mvneta.c
+++ b/drivers/net/mvneta.c
@@ -24,6 +24,7 @@
#include <asm/io.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
#include <linux/errno.h>
diff --git a/drivers/net/mvpp2.c b/drivers/net/mvpp2.c
index ebe67e45ab3..19b9375ee27 100644
--- a/drivers/net/mvpp2.c
+++ b/drivers/net/mvpp2.c
@@ -26,6 +26,7 @@
#include <config.h>
#include <malloc.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/net/pfe_eth/pfe_firmware.c b/drivers/net/pfe_eth/pfe_firmware.c
index 0ad8c63d710..0493cfe8724 100644
--- a/drivers/net/pfe_eth/pfe_firmware.c
+++ b/drivers/net/pfe_eth/pfe_firmware.c
@@ -13,6 +13,7 @@
#include <image.h>
#include <log.h>
#include <malloc.h>
+#include <linux/bitops.h>
#include <net/pfe_eth/pfe_eth.h>
#include <net/pfe_eth/pfe_firmware.h>
#ifdef CONFIG_CHAIN_OF_TRUST
diff --git a/drivers/net/pfe_eth/pfe_hw.c b/drivers/net/pfe_eth/pfe_hw.c
index caba8717be1..722f5c238fa 100644
--- a/drivers/net/pfe_eth/pfe_hw.c
+++ b/drivers/net/pfe_eth/pfe_hw.c
@@ -4,6 +4,7 @@
* Copyright 2017 NXP
*/
#include <log.h>
+#include <linux/bitops.h>
#include <net/pfe_eth/pfe_eth.h>
#include <net/pfe_eth/pfe/pfe_hw.h>
diff --git a/drivers/net/phy/aquantia.c b/drivers/net/phy/aquantia.c
index 8b1cad85407..68cd3d03fd0 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/bitops.h>
#include <linux/delay.h>
#include <u-boot/crc.h>
#include <malloc.h>
diff --git a/drivers/net/phy/atheros.c b/drivers/net/phy/atheros.c
index 47ff9f8d44c..13f7275d170 100644
--- a/drivers/net/phy/atheros.c
+++ b/drivers/net/phy/atheros.c
@@ -10,6 +10,7 @@
#include <phy.h>
#include <dm/device_compat.h>
#include <linux/bitfield.h>
+#include <linux/bitops.h>
#include <dt-bindings/net/qca-ar803x.h>
#define AR803x_PHY_DEBUG_ADDR_REG 0x1d
diff --git a/drivers/net/phy/b53.c b/drivers/net/phy/b53.c
index 25dbf215b41..21da53c7e5b 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/bitops.h>
#include <linux/delay.h>
#include <errno.h>
diff --git a/drivers/net/phy/dp83867.c b/drivers/net/phy/dp83867.c
index 6fac0d59563..d435cc1e6c5 100644
--- a/drivers/net/phy/dp83867.c
+++ b/drivers/net/phy/dp83867.c
@@ -7,6 +7,7 @@
#include <log.h>
#include <phy.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <malloc.h>
diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
index be5e3dcaab2..a62c695c5c8 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/bitops.h>
#include <linux/delay.h>
#define PHY_AUTONEGOTIATE_TIMEOUT 5000
diff --git a/drivers/net/phy/micrel_ksz8xxx.c b/drivers/net/phy/micrel_ksz8xxx.c
index e27fc45a281..98a0c83e68b 100644
--- a/drivers/net/phy/micrel_ksz8xxx.c
+++ b/drivers/net/phy/micrel_ksz8xxx.c
@@ -12,6 +12,7 @@
#include <fdtdec.h>
#include <micrel.h>
#include <phy.h>
+#include <linux/bitops.h>
static struct phy_driver KSZ804_driver = {
.name = "Micrel KSZ804",
diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c
index 9fd5ca7c9fc..709979f48c9 100644
--- a/drivers/net/phy/mscc.c
+++ b/drivers/net/phy/mscc.c
@@ -13,6 +13,7 @@
#include <miiphy.h>
#include <bitfield.h>
#include <time.h>
+#include <linux/bitops.h>
#include <linux/delay.h>
/* Microsemi PHY ID's */
diff --git a/drivers/net/phy/mv88e61xx.c b/drivers/net/phy/mv88e61xx.c
index 3f8aa7cd99c..7eff37b2449 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/bitops.h>
#include <linux/delay.h>
#include <bitfield.h>
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
index 6b6497c93a2..cce09c47f9d 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/compiler.h>
diff --git a/drivers/net/pic32_eth.h b/drivers/net/pic32_eth.h
index 823c565a9b8..7b873bc7728 100644
--- a/drivers/net/pic32_eth.h
+++ b/drivers/net/pic32_eth.h
@@ -7,6 +7,7 @@
#ifndef __MICROCHIP_PIC32_ETH_H_
#define __MICROCHIP_PIC32_ETH_H_
+#include <linux/bitops.h>
#include <mach/pic32.h>
/* Ethernet */
diff --git a/drivers/net/ravb.c b/drivers/net/ravb.c
index 3dab91b74b4..393ee9bb816 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/bitops.h>
#include <linux/delay.h>
#include <linux/mii.h>
#include <wait_bit.h>
diff --git a/drivers/net/rtl8139.c b/drivers/net/rtl8139.c
index fd2454b56fa..0daeefa489b 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/bitops.h>
#include <linux/delay.h>
#include <linux/types.h>
diff --git a/drivers/net/sni_ave.c b/drivers/net/sni_ave.c
index 92b4a656319..07846356895 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/io.h>
diff --git a/drivers/net/sun8i_emac.c b/drivers/net/sun8i_emac.c
index 45ac1184950..99e24c63482 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <malloc.h>
diff --git a/drivers/net/ti/am65-cpsw-nuss.c b/drivers/net/ti/am65-cpsw-nuss.c
index 220b461124d..85f3e49c055 100644
--- a/drivers/net/ti/am65-cpsw-nuss.c
+++ b/drivers/net/ti/am65-cpsw-nuss.c
@@ -21,6 +21,7 @@
#include <net.h>
#include <phy.h>
#include <power-domain.h>
+#include <linux/bitops.h>
#include <linux/soc/ti/ti-udma.h>
#include "cpsw_mdio.h"
diff --git a/drivers/net/ti/cpsw.c b/drivers/net/ti/cpsw.c
index a927ea03e04..95761fffc0f 100644
--- a/drivers/net/ti/cpsw.c
+++ b/drivers/net/ti/cpsw.c
@@ -16,6 +16,7 @@
#include <netdev.h>
#include <cpsw.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <asm/gpio.h>
#include <asm/io.h>
diff --git a/drivers/net/ti/cpsw_mdio.c b/drivers/net/ti/cpsw_mdio.c
index e77a2ff0a74..f4cb86d10a7 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/bitops.h>
#include <linux/delay.h>
struct cpsw_mdio_regs {
diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
index 15701ee1474..c2e755f2b1e 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/processor.h>
diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c
index 28cef3b1eaf..412daf7d58b 100644
--- a/drivers/net/zynq_gem.c
+++ b/drivers/net/zynq_gem.c
@@ -28,6 +28,7 @@
#include <asm/arch/hardware.h>
#include <asm/arch/sys_proto.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/errno.h>
diff --git a/drivers/pci/pci-aardvark.c b/drivers/pci/pci-aardvark.c
index 158679139bb..711b930d0f9 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/bitops.h>
#include <linux/delay.h>
#include <linux/ioport.h>
diff --git a/drivers/pci/pci-rcar-gen2.c b/drivers/pci/pci-rcar-gen2.c
index 014d8704788..e76abc1f84c 100644
--- a/drivers/pci/pci-rcar-gen2.c
+++ b/drivers/pci/pci-rcar-gen2.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <errno.h>
#include <pci.h>
+#include <linux/bitops.h>
/* AHB-PCI Bridge PCI communication registers */
#define RCAR_AHBPCI_PCICOM_OFFSET 0x800
diff --git a/drivers/pci/pci-rcar-gen3.c b/drivers/pci/pci-rcar-gen3.c
index 30eff67dca2..df7b37a5924 100644
--- a/drivers/pci/pci-rcar-gen3.c
+++ b/drivers/pci/pci-rcar-gen3.c
@@ -22,6 +22,7 @@
#include <errno.h>
#include <pci.h>
#include <wait_bit.h>
+#include <linux/bitops.h>
#define PCIECAR 0x000010
#define PCIECCTLR 0x000018
diff --git a/drivers/pci/pci_mpc85xx.c b/drivers/pci/pci_mpc85xx.c
index 8dff68dbd0e..6576f53f52a 100644
--- a/drivers/pci/pci_mpc85xx.c
+++ b/drivers/pci/pci_mpc85xx.c
@@ -5,6 +5,7 @@
*
*/
#include <common.h>
+#include <asm/bitops.h>
#include <asm/cpm_85xx.h>
#include <pci.h>
#include <dm.h>
diff --git a/drivers/pci/pci_mvebu.c b/drivers/pci/pci_mvebu.c
index 8bc04c978d0..c9afe751501 100644
--- a/drivers/pci/pci_mvebu.c
+++ b/drivers/pci/pci_mvebu.c
@@ -20,6 +20,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <linux/ioport.h>
#include <linux/mbus.h>
diff --git a/drivers/pci/pci_sh7751.c b/drivers/pci/pci_sh7751.c
index 1f23bbc126e..e110550c71c 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/bitops.h>
#include <linux/delay.h>
/* Register addresses and such */
diff --git a/drivers/pci/pcie_dw_ti.c b/drivers/pci/pcie_dw_ti.c
index e49e39e3991..742dd93633e 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/pci/pcie_intel_fpga.c b/drivers/pci/pcie_intel_fpga.c
index 8249c6212ed..aa1903e547c 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/bitops.h>
#include <linux/delay.h>
#define RP_TX_REG0 0x2000
diff --git a/drivers/pci/pcie_layerscape_gen4.h b/drivers/pci/pcie_layerscape_gen4.h
index 27c2d09332c..d298a2b8109 100644
--- a/drivers/pci/pcie_layerscape_gen4.h
+++ b/drivers/pci/pcie_layerscape_gen4.h
@@ -10,6 +10,7 @@
#define _PCIE_LAYERSCAPE_GEN4_H_
#include <pci.h>
#include <dm.h>
+#include <linux/bitops.h>
#ifndef CONFIG_SYS_PCI_MEMORY_SIZE
#define CONFIG_SYS_PCI_MEMORY_SIZE (4 * 1024 * 1024 * 1024ULL)
diff --git a/drivers/pci/pcie_mediatek.c b/drivers/pci/pcie_mediatek.c
index c7cd2f5b692..6e6375cec09 100644
--- a/drivers/pci/pcie_mediatek.c
+++ b/drivers/pci/pcie_mediatek.c
@@ -17,6 +17,7 @@
#include <reset.h>
#include <asm/io.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
#include <linux/list.h>
diff --git a/drivers/pci/pcie_xilinx.c b/drivers/pci/pcie_xilinx.c
index 05787ae1448..713ad49d045 100644
--- a/drivers/pci/pcie_xilinx.c
+++ b/drivers/pci/pcie_xilinx.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <dm.h>
#include <pci.h>
+#include <linux/bitops.h>
#include <asm/io.h>
diff --git a/drivers/pci_endpoint/pcie-cadence.h b/drivers/pci_endpoint/pcie-cadence.h
index 91630d35c3f..8a659c36aa2 100644
--- a/drivers/pci_endpoint/pcie-cadence.h
+++ b/drivers/pci_endpoint/pcie-cadence.h
@@ -14,6 +14,7 @@
#include <common.h>
#include <pci_ep.h>
#include <asm/io.h>
+#include <linux/bitops.h>
/*
* Local Management Registers
diff --git a/drivers/phy/allwinner/phy-sun4i-usb.c b/drivers/phy/allwinner/phy-sun4i-usb.c
index af974cdddb8..b4bae22c2cf 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/phy/bcm6318-usbh-phy.c b/drivers/phy/bcm6318-usbh-phy.c
index fe0e43d2703..d29344ddb48 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/bitops.h>
#include <linux/delay.h>
/* USBH Setup register */
diff --git a/drivers/phy/bcm6348-usbh-phy.c b/drivers/phy/bcm6348-usbh-phy.c
index a486152da76..8d28292726c 100644
--- a/drivers/phy/bcm6348-usbh-phy.c
+++ b/drivers/phy/bcm6348-usbh-phy.c
@@ -16,6 +16,7 @@
#include <reset.h>
#include <asm/io.h>
#include <dm/device.h>
+#include <linux/bitops.h>
#define USBH_SETUP_PORT1_EN BIT(0)
diff --git a/drivers/phy/bcm6358-usbh-phy.c b/drivers/phy/bcm6358-usbh-phy.c
index 13e0e7b6124..501b97f3e21 100644
--- a/drivers/phy/bcm6358-usbh-phy.c
+++ b/drivers/phy/bcm6358-usbh-phy.c
@@ -15,6 +15,7 @@
#include <reset.h>
#include <asm/io.h>
#include <dm/device.h>
+#include <linux/bitops.h>
/* USBH Swap Control register */
#define USBH_SWAP_REG 0x00
diff --git a/drivers/phy/bcm6368-usbh-phy.c b/drivers/phy/bcm6368-usbh-phy.c
index 8b918b09f97..99fdd33499a 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/bitops.h>
#include <linux/delay.h>
/* USBH PLL Control register */
diff --git a/drivers/phy/keystone-usb-phy.c b/drivers/phy/keystone-usb-phy.c
index 7624f10a047..9faf5010033 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/bitops.h>
#include <linux/delay.h>
/* USB PHY control register offsets */
diff --git a/drivers/phy/meson-gxbb-usb2.c b/drivers/phy/meson-gxbb-usb2.c
index 88c2ec69b22..d1beebee43e 100644
--- a/drivers/phy/meson-gxbb-usb2.c
+++ b/drivers/phy/meson-gxbb-usb2.c
@@ -15,6 +15,7 @@
#include <power/regulator.h>
#include <regmap.h>
#include <reset.h>
+#include <linux/bitops.h>
#define REG_CONFIG 0x00
#define REG_CONFIG_CLK_EN BIT(0)
diff --git a/drivers/phy/msm8916-usbh-phy.c b/drivers/phy/msm8916-usbh-phy.c
index 2c90738fca0..4efaddd701c 100644
--- a/drivers/phy/msm8916-usbh-phy.c
+++ b/drivers/phy/msm8916-usbh-phy.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <dm.h>
#include <generic-phy.h>
+#include <linux/bitops.h>
#include <usb/ehci-ci.h>
#include <usb/ulpi.h>
#include <asm/io.h>
diff --git a/drivers/phy/omap-usb2-phy.c b/drivers/phy/omap-usb2-phy.c
index 160a386801e..0793b97dd51 100644
--- a/drivers/phy/omap-usb2-phy.c
+++ b/drivers/phy/omap-usb2-phy.c
@@ -13,6 +13,7 @@
#include <generic-phy.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#define OMAP_USB2_CALIBRATE_FALSE_DISCONNECT BIT(0)
diff --git a/drivers/phy/phy-mtk-tphy.c b/drivers/phy/phy-mtk-tphy.c
index 048e2b19e33..1e65c24356e 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/bitops.h>
#include <linux/delay.h>
#include <dt-bindings/phy/phy.h>
diff --git a/drivers/phy/phy-ti-am654.c b/drivers/phy/phy-ti-am654.c
index 5220f01558a..6907c1afb39 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/phy/ti-pipe3-phy.c b/drivers/phy/ti-pipe3-phy.c
index d247a98fc42..3f49851bcab 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
index c7351f32bb6..5fdc150295e 100644
--- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
+++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
@@ -11,6 +11,7 @@
#include <dm/pinctrl.h>
#include <asm/io.h>
#include <asm-generic/gpio.h>
+#include <linux/bitops.h>
#include "pinctrl-mtk-common.h"
diff --git a/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c b/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c
index adfc9aedcc9..159f3406a20 100644
--- a/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c
+++ b/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <dm.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include "pinctrl-meson-gx.h"
diff --git a/drivers/pinctrl/meson/pinctrl-meson.c b/drivers/pinctrl/meson/pinctrl-meson.c
index 18b8eee8839..d4539b02d88 100644
--- a/drivers/pinctrl/meson/pinctrl-meson.c
+++ b/drivers/pinctrl/meson/pinctrl-meson.c
@@ -12,6 +12,7 @@
#include <dm/lists.h>
#include <dm/pinctrl.h>
#include <fdt_support.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/libfdt.h>
diff --git a/drivers/pinctrl/mscc/mscc-common.c b/drivers/pinctrl/mscc/mscc-common.c
index 90c54b45c3e..307ed1db875 100644
--- a/drivers/pinctrl/mscc/mscc-common.c
+++ b/drivers/pinctrl/mscc/mscc-common.c
@@ -21,6 +21,7 @@
#include <dm/root.h>
#include <errno.h>
#include <fdtdec.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include "mscc-common.h"
diff --git a/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c b/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
index b9fb46815b9..2dee79af17e 100644
--- a/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
+++ b/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
@@ -32,6 +32,7 @@
#include <asm/gpio.h>
#include <asm/system.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/libfdt.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/pinctrl/mvebu/pinctrl-mvebu.c b/drivers/pinctrl/mvebu/pinctrl-mvebu.c
index 550de384ed5..2206e958ec7 100644
--- a/drivers/pinctrl/mvebu/pinctrl-mvebu.c
+++ b/drivers/pinctrl/mvebu/pinctrl-mvebu.c
@@ -15,6 +15,7 @@
#include <asm/system.h>
#include <asm/io.h>
#include <asm/arch-armada8k/soc-info.h>
+#include <linux/bitops.h>
#include "pinctrl-mvebu.h"
#define AP_EMMC_PHY_CTRL_REG 0x100
diff --git a/drivers/pinctrl/nxp/pinctrl-imx.c b/drivers/pinctrl/nxp/pinctrl-imx.c
index 474c38a0497..48c7bde3752 100644
--- a/drivers/pinctrl/nxp/pinctrl-imx.c
+++ b/drivers/pinctrl/nxp/pinctrl-imx.c
@@ -8,6 +8,7 @@
#include <mapmem.h>
#include <dm/device_compat.h>
#include <dm/devres.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/err.h>
#include <dm.h>
diff --git a/drivers/pinctrl/pinctrl-at91-pio4.c b/drivers/pinctrl/pinctrl-at91-pio4.c
index 0c43686e01c..801d14253c1 100644
--- a/drivers/pinctrl/pinctrl-at91-pio4.c
+++ b/drivers/pinctrl/pinctrl-at91-pio4.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <dm.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/err.h>
#include <mach/atmel_pio4.h>
diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index ff663ab374a..b3fa124cfbf 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -11,6 +11,7 @@
#include <log.h>
#include <dm/pinctrl.h>
#include <asm/hardware.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/err.h>
#include <mach/at91_pio.h>
diff --git a/drivers/pinctrl/pinctrl-sandbox.c b/drivers/pinctrl/pinctrl-sandbox.c
index dcef38ea5b3..ac0119d1988 100644
--- a/drivers/pinctrl/pinctrl-sandbox.c
+++ b/drivers/pinctrl/pinctrl-sandbox.c
@@ -9,6 +9,7 @@
#include <dm.h>
#include <log.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
static const char * const sandbox_pins[] = {
"SCL",
diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c
index 9b6a7fa6bb3..a3240ccd5a0 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/bitops.h>
#include <linux/delay.h>
#include <power/regulator.h>
diff --git a/drivers/pinctrl/pinctrl_pic32.c b/drivers/pinctrl/pinctrl_pic32.c
index ce02d28b901..911af1297b8 100644
--- a/drivers/pinctrl/pinctrl_pic32.c
+++ b/drivers/pinctrl/pinctrl_pic32.c
@@ -10,6 +10,7 @@
#include <log.h>
#include <asm/io.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <mach/pic32.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/pinctrl/pinctrl_stm32.c b/drivers/pinctrl/pinctrl_stm32.c
index 14fcacdbed9..fc241fdcdef 100644
--- a/drivers/pinctrl/pinctrl_stm32.c
+++ b/drivers/pinctrl/pinctrl_stm32.c
@@ -9,6 +9,7 @@
#include <dm/device_compat.h>
#include <dm/lists.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/libfdt.h>
diff --git a/drivers/pinctrl/renesas/pfc-r7s72100.c b/drivers/pinctrl/renesas/pfc-r7s72100.c
index 7e4530d684c..5055780bf75 100644
--- a/drivers/pinctrl/renesas/pfc-r7s72100.c
+++ b/drivers/pinctrl/renesas/pfc-r7s72100.c
@@ -9,6 +9,7 @@
#include <dm.h>
#include <dm/lists.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/err.h>
diff --git a/drivers/pinctrl/renesas/pfc-r8a77990.c b/drivers/pinctrl/renesas/pfc-r8a77990.c
index 5313f2f5098..de22e49ebef 100644
--- a/drivers/pinctrl/renesas/pfc-r8a77990.c
+++ b/drivers/pinctrl/renesas/pfc-r8a77990.c
@@ -15,6 +15,7 @@
#include <dm.h>
#include <errno.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <linux/kernel.h>
#include "sh_pfc.h"
diff --git a/drivers/pinctrl/renesas/pfc.c b/drivers/pinctrl/renesas/pfc.c
index efbff49f9ba..1179afd2e7b 100644
--- a/drivers/pinctrl/renesas/pfc.c
+++ b/drivers/pinctrl/renesas/pfc.c
@@ -17,6 +17,7 @@
#include <dm/device_compat.h>
#include <dm/devres.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/io.h>
#include <linux/sizes.h>
diff --git a/drivers/pinctrl/rockchip/pinctrl-px30.c b/drivers/pinctrl/rockchip/pinctrl-px30.c
index 20ffd249c78..617721a6264 100644
--- a/drivers/pinctrl/rockchip/pinctrl-px30.c
+++ b/drivers/pinctrl/rockchip/pinctrl-px30.c
@@ -9,6 +9,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rk3036.c b/drivers/pinctrl/rockchip/pinctrl-rk3036.c
index 28c905129ba..d49e3007cea 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rk3036.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rk3036.c
@@ -8,6 +8,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rk3128.c b/drivers/pinctrl/rockchip/pinctrl-rk3128.c
index 3eb4d952bb5..a175d6c07f1 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rk3128.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rk3128.c
@@ -8,6 +8,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rk322x.c b/drivers/pinctrl/rockchip/pinctrl-rk322x.c
index e082eb6a323..85bc0ef0f31 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rk322x.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rk322x.c
@@ -9,6 +9,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rk3288.c b/drivers/pinctrl/rockchip/pinctrl-rk3288.c
index 2780302585c..faaa2ce1f70 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rk3288.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rk3288.c
@@ -8,6 +8,7 @@
#include <log.h>
#include <dm/pinctrl.h>
#include <regmap.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rk3308.c b/drivers/pinctrl/rockchip/pinctrl-rk3308.c
index 0817f7136c4..db2b10a6906 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rk3308.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rk3308.c
@@ -9,6 +9,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rk3328.c b/drivers/pinctrl/rockchip/pinctrl-rk3328.c
index 990f6811e93..f9160f26c78 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rk3328.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rk3328.c
@@ -9,6 +9,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rk3399.c b/drivers/pinctrl/rockchip/pinctrl-rk3399.c
index 7647d90eb5d..d04c1afb090 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rk3399.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rk3399.c
@@ -9,6 +9,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rockchip-core.c b/drivers/pinctrl/rockchip/pinctrl-rockchip-core.c
index 63aebdb612f..ec1cb9b652f 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rockchip-core.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rockchip-core.c
@@ -10,6 +10,7 @@
#include <regmap.h>
#include <syscon.h>
#include <fdtdec.h>
+#include <linux/bitops.h>
#include <linux/libfdt.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/rockchip/pinctrl-rockchip.h b/drivers/pinctrl/rockchip/pinctrl-rockchip.h
index 5edc7cbd742..d969c200826 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rockchip.h
+++ b/drivers/pinctrl/rockchip/pinctrl-rockchip.h
@@ -6,6 +6,7 @@
#ifndef __DRIVERS_PINCTRL_ROCKCHIP_H
#define __DRIVERS_PINCTRL_ROCKCHIP_H
+#include <linux/bitops.h>
#include <linux/types.h>
/**
diff --git a/drivers/pinctrl/rockchip/pinctrl-rv1108.c b/drivers/pinctrl/rockchip/pinctrl-rv1108.c
index 653e40b354b..22334329ed4 100644
--- a/drivers/pinctrl/rockchip/pinctrl-rv1108.c
+++ b/drivers/pinctrl/rockchip/pinctrl-rv1108.c
@@ -9,6 +9,7 @@
#include <dm/pinctrl.h>
#include <regmap.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include "pinctrl-rockchip.h"
diff --git a/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c b/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c
index 25231c10f9c..8545b9d0707 100644
--- a/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c
+++ b/drivers/pinctrl/uniphier/pinctrl-uniphier-core.c
@@ -7,6 +7,7 @@
#include <common.h>
#include <dm.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/io.h>
#include <linux/err.h>
diff --git a/drivers/power/domain/bcm6328-power-domain.c b/drivers/power/domain/bcm6328-power-domain.c
index a6426bee27f..a494bfa8c9d 100644
--- a/drivers/power/domain/bcm6328-power-domain.c
+++ b/drivers/power/domain/bcm6328-power-domain.c
@@ -8,6 +8,7 @@
#include <malloc.h>
#include <power-domain-uclass.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define MAX_DOMAINS 32
diff --git a/drivers/power/domain/meson-ee-pwrc.c b/drivers/power/domain/meson-ee-pwrc.c
index b668d949747..8349a9c1582 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/power/domain/meson-gx-pwrc-vpu.c b/drivers/power/domain/meson-gx-pwrc-vpu.c
index d43383b68dd..a41b230448f 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/power/domain/mtk-power-domain.c b/drivers/power/domain/mtk-power-domain.c
index 3ff7ca1befa..fae4749012b 100644
--- a/drivers/power/domain/mtk-power-domain.c
+++ b/drivers/power/domain/mtk-power-domain.c
@@ -13,6 +13,7 @@
#include <syscon.h>
#include <asm/io.h>
#include <asm/processor.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/iopoll.h>
diff --git a/drivers/power/domain/tegra186-power-domain.c b/drivers/power/domain/tegra186-power-domain.c
index 9cebc7f3f16..707735cf851 100644
--- a/drivers/power/domain/tegra186-power-domain.c
+++ b/drivers/power/domain/tegra186-power-domain.c
@@ -10,6 +10,7 @@
#include <misc.h>
#include <power-domain-uclass.h>
#include <asm/arch-tegra/bpmp_abi.h>
+#include <linux/bitops.h>
#define UPDATE BIT(0)
#define ON BIT(1)
diff --git a/drivers/power/regulator/bd71837.c b/drivers/power/regulator/bd71837.c
index 850b533b846..931d753e344 100644
--- a/drivers/power/regulator/bd71837.c
+++ b/drivers/power/regulator/bd71837.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <dm.h>
#include <log.h>
+#include <linux/bitops.h>
#include <power/bd71837.h>
#include <power/pmic.h>
#include <power/regulator.h>
diff --git a/drivers/power/regulator/da9063.c b/drivers/power/regulator/da9063.c
index 8990be113ea..5055e39cb79 100644
--- a/drivers/power/regulator/da9063.c
+++ b/drivers/power/regulator/da9063.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <power/da9063_pmic.h>
#include <power/pmic.h>
#include <power/regulator.h>
diff --git a/drivers/power/regulator/fan53555.c b/drivers/power/regulator/fan53555.c
index fa92fd84f9f..b407f555fe3 100644
--- a/drivers/power/regulator/fan53555.c
+++ b/drivers/power/regulator/fan53555.c
@@ -11,6 +11,7 @@
#include <i2c.h>
#include <log.h>
#include <asm/gpio.h>
+#include <linux/bitops.h>
#include <power/fan53555.h>
#include <power/pmic.h>
#include <power/regulator.h>
diff --git a/drivers/power/regulator/stm32-vrefbuf.c b/drivers/power/regulator/stm32-vrefbuf.c
index 08a10f05b41..250773514f5 100644
--- a/drivers/power/regulator/stm32-vrefbuf.c
+++ b/drivers/power/regulator/stm32-vrefbuf.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
#include <linux/kernel.h>
#include <power/regulator.h>
diff --git a/drivers/pwm/rk_pwm.c b/drivers/pwm/rk_pwm.c
index 66eb0e72fed..911da1d4261 100644
--- a/drivers/pwm/rk_pwm.c
+++ b/drivers/pwm/rk_pwm.c
@@ -14,6 +14,7 @@
#include <syscon.h>
#include <asm/io.h>
#include <asm/arch-rockchip/pwm.h>
+#include <linux/bitops.h>
#include <power/regulator.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/ram/imxrt_sdram.c b/drivers/ram/imxrt_sdram.c
index 80fcb7e56ea..765a2141d13 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/ram/k3-am654-ddrss.h b/drivers/ram/k3-am654-ddrss.h
index 94a7c91b2b7..c87f186291e 100644
--- a/drivers/ram/k3-am654-ddrss.h
+++ b/drivers/ram/k3-am654-ddrss.h
@@ -11,6 +11,7 @@
#define __K3_AM654_DDRSS_H
/* DDRSS subsystem wrapper logic registers */
+#include <linux/bitops.h>
#define DDRSS_SS_ID_REV_REG 0x00000000
#define DDRSS_SS_CTL_REG 0x00000004
#define DDRSS_V2H_CTL_REG 0x00000020
diff --git a/drivers/ram/mediatek/ddr3-mt7629.c b/drivers/ram/mediatek/ddr3-mt7629.c
index 6b4296d714d..b3a68cb0787 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/bitops.h>
#include <linux/delay.h>
/* EMI */
diff --git a/drivers/ram/mpc83xx_sdram.c b/drivers/ram/mpc83xx_sdram.c
index e97467029ff..a226bac2cc3 100644
--- a/drivers/ram/mpc83xx_sdram.c
+++ b/drivers/ram/mpc83xx_sdram.c
@@ -9,6 +9,7 @@
#include <init.h>
#include <log.h>
#include <ram.h>
+#include <asm/bitops.h>
#include <dt-bindings/memory/mpc83xx-sdram.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/ram/rockchip/dmc-rk3368.c b/drivers/ram/rockchip/dmc-rk3368.c
index 31a3c83b039..92457a1fa42 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
diff --git a/drivers/ram/stm32_sdram.c b/drivers/ram/stm32_sdram.c
index 1894a60f1a2..3fddf4df961 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/bitops.h>
#include <linux/delay.h>
#define MEM_MODE_MASK GENMASK(2, 0)
diff --git a/drivers/ram/stm32mp1/stm32mp1_ddr.c b/drivers/ram/stm32mp1/stm32mp1_ddr.c
index f523dc8ea23..bf3a4c97a41 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/bitops.h>
#include <linux/delay.h>
#include <linux/iopoll.h>
#include "stm32mp1_ddr.h"
diff --git a/drivers/ram/stm32mp1/stm32mp1_ddr_regs.h b/drivers/ram/stm32mp1/stm32mp1_ddr_regs.h
index afd93c518eb..3c8885a9657 100644
--- a/drivers/ram/stm32mp1/stm32mp1_ddr_regs.h
+++ b/drivers/ram/stm32mp1/stm32mp1_ddr_regs.h
@@ -7,6 +7,7 @@
#define _RAM_STM32MP1_DDR_REGS_H
/* DDR3/LPDDR2/LPDDR3 Controller (DDRCTRL) registers */
+#include <linux/bitops.h>
struct stm32mp1_ddrctl {
u32 mstr ; /* 0x0 Master*/
u32 stat; /* 0x4 Operating Mode Status*/
diff --git a/drivers/reset/reset-bcm6345.c b/drivers/reset/reset-bcm6345.c
index 0511a0c63a3..156703e0843 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/bitops.h>
#include <linux/delay.h>
#define MAX_RESETS 32
diff --git a/drivers/reset/reset-hisilicon.c b/drivers/reset/reset-hisilicon.c
index e7bec9cd7c0..139bc5d73e0 100644
--- a/drivers/reset/reset-hisilicon.c
+++ b/drivers/reset/reset-hisilicon.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <dt-bindings/reset/ti-syscon.h>
#include <reset-uclass.h>
+#include <linux/bitops.h>
struct hisi_reset_priv {
void __iomem *base;
diff --git a/drivers/reset/reset-hsdk.c b/drivers/reset/reset-hsdk.c
index 149eaef0e91..0c8f276293d 100644
--- a/drivers/reset/reset-hsdk.c
+++ b/drivers/reset/reset-hsdk.c
@@ -10,6 +10,7 @@
#include <asm/io.h>
#include <common.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
#include <reset-uclass.h>
diff --git a/drivers/reset/reset-imx7.c b/drivers/reset/reset-imx7.c
index ce7e1c4ed22..96916b644ad 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/bitops.h>
#include <linux/delay.h>
struct imx7_reset_priv {
diff --git a/drivers/reset/reset-mediatek.c b/drivers/reset/reset-mediatek.c
index 9f2e809aa47..97d3d575927 100644
--- a/drivers/reset/reset-mediatek.c
+++ b/drivers/reset/reset-mediatek.c
@@ -14,6 +14,7 @@
#include <regmap.h>
#include <reset-uclass.h>
#include <syscon.h>
+#include <linux/bitops.h>
#include <linux/err.h>
struct mediatek_reset_priv {
diff --git a/drivers/reset/reset-meson.c b/drivers/reset/reset-meson.c
index 461c0ccb7a0..4e3327898e2 100644
--- a/drivers/reset/reset-meson.c
+++ b/drivers/reset/reset-meson.c
@@ -12,6 +12,7 @@
#include <malloc.h>
#include <reset-uclass.h>
#include <regmap.h>
+#include <linux/bitops.h>
#define REG_COUNT 8
#define BITS_PER_REG 32
diff --git a/drivers/reset/reset-mtmips.c b/drivers/reset/reset-mtmips.c
index a79a4acd676..bc20e3335c5 100644
--- a/drivers/reset/reset-mtmips.c
+++ b/drivers/reset/reset-mtmips.c
@@ -11,6 +11,7 @@
#include <log.h>
#include <malloc.h>
#include <reset-uclass.h>
+#include <linux/bitops.h>
#include <linux/io.h>
struct mtmips_reset_priv {
diff --git a/drivers/reset/reset-rockchip.c b/drivers/reset/reset-rockchip.c
index 7c30919215c..80925556508 100644
--- a/drivers/reset/reset-rockchip.c
+++ b/drivers/reset/reset-rockchip.c
@@ -8,6 +8,7 @@
#include <log.h>
#include <malloc.h>
#include <reset-uclass.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <asm/arch-rockchip/hardware.h>
#include <dm/lists.h>
diff --git a/drivers/reset/reset-sunxi.c b/drivers/reset/reset-sunxi.c
index 48c24ed44d8..05f7f599ce3 100644
--- a/drivers/reset/reset-sunxi.c
+++ b/drivers/reset/reset-sunxi.c
@@ -12,6 +12,7 @@
#include <reset-uclass.h>
#include <asm/io.h>
#include <dm/lists.h>
+#include <linux/bitops.h>
#include <linux/log2.h>
#include <asm/arch/ccu.h>
diff --git a/drivers/reset/sti-reset.c b/drivers/reset/sti-reset.c
index ab67bc02de8..ac3a99f9bff 100644
--- a/drivers/reset/sti-reset.c
+++ b/drivers/reset/sti-reset.c
@@ -14,6 +14,7 @@
#include <regmap.h>
#include <syscon.h>
#include <dt-bindings/reset/stih407-resets.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/reset/stm32-reset.c b/drivers/reset/stm32-reset.c
index 47ed140166f..64a11cfcfc0 100644
--- a/drivers/reset/stm32-reset.c
+++ b/drivers/reset/stm32-reset.c
@@ -12,6 +12,7 @@
#include <reset-uclass.h>
#include <stm32_rcc.h>
#include <asm/io.h>
+#include <linux/bitops.h>
/* reset clear offset for STM32MP RCC */
#define RCC_CL 0x4
diff --git a/drivers/rng/rockchip_rng.c b/drivers/rng/rockchip_rng.c
index 47fb140077d..c6a834b67c5 100644
--- a/drivers/rng/rockchip_rng.c
+++ b/drivers/rng/rockchip_rng.c
@@ -6,6 +6,7 @@
#include <asm/io.h>
#include <common.h>
#include <dm.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
#include <linux/string.h>
#include <rng.h>
diff --git a/drivers/rng/stm32mp1_rng.c b/drivers/rng/stm32mp1_rng.c
index a9a927336be..7ef7ff9756d 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/bitops.h>
#include <linux/delay.h>
#include <asm/io.h>
diff --git a/drivers/rtc/ds3232.c b/drivers/rtc/ds3232.c
index e3b3579c4aa..0a30e0eabb4 100644
--- a/drivers/rtc/ds3232.c
+++ b/drivers/rtc/ds3232.c
@@ -9,6 +9,7 @@
#include <i2c.h>
#include <rtc.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
/*
* RTC register addresses
diff --git a/drivers/rtc/rv3029.c b/drivers/rtc/rv3029.c
index 9be58425bfb..3afe5b2fdd6 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/bitops.h>
#include <linux/delay.h>
#define RTC_RV3029_PAGE_LEN 7
diff --git a/drivers/rtc/rv8803.c b/drivers/rtc/rv8803.c
index 7f56b155fc3..acd50c65648 100644
--- a/drivers/rtc/rv8803.c
+++ b/drivers/rtc/rv8803.c
@@ -16,6 +16,7 @@
#include <log.h>
#include <rtc.h>
#include <i2c.h>
+#include <linux/bitops.h>
/*
* RTC register addresses
diff --git a/drivers/rtc/rx8010sj.c b/drivers/rtc/rx8010sj.c
index 82c5185e2e5..d513561b820 100644
--- a/drivers/rtc/rx8010sj.c
+++ b/drivers/rtc/rx8010sj.c
@@ -21,6 +21,7 @@
#include <dm.h>
#include <i2c.h>
#include <rtc.h>
+#include <linux/bitops.h>
/*---------------------------------------------------------------------*/
/* #undef DEBUG_RTC */
diff --git a/drivers/rtc/stm32_rtc.c b/drivers/rtc/stm32_rtc.c
index 3e12f57ce0b..f9db318af1d 100644
--- a/drivers/rtc/stm32_rtc.c
+++ b/drivers/rtc/stm32_rtc.c
@@ -9,6 +9,7 @@
#include <rtc.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
#define STM32_RTC_TR 0x00
diff --git a/drivers/serial/altera_jtag_uart.c b/drivers/serial/altera_jtag_uart.c
index 86c3de4e455..7a86161a0df 100644
--- a/drivers/serial/altera_jtag_uart.c
+++ b/drivers/serial/altera_jtag_uart.c
@@ -9,6 +9,7 @@
#include <errno.h>
#include <serial.h>
#include <asm/io.h>
+#include <linux/bitops.h>
/* data register */
#define ALTERA_JTAG_RVALID BIT(15) /* Read valid */
diff --git a/drivers/serial/altera_uart.c b/drivers/serial/altera_uart.c
index 436cf2331df..f88a293d560 100644
--- a/drivers/serial/altera_uart.c
+++ b/drivers/serial/altera_uart.c
@@ -9,6 +9,7 @@
#include <errno.h>
#include <serial.h>
#include <asm/io.h>
+#include <linux/bitops.h>
/* status register */
#define ALTERA_UART_TMT BIT(5) /* tx empty */
diff --git a/drivers/serial/serial_ar933x.c b/drivers/serial/serial_ar933x.c
index 897ea5d6dc2..382c3b3d34a 100644
--- a/drivers/serial/serial_ar933x.c
+++ b/drivers/serial/serial_ar933x.c
@@ -13,6 +13,7 @@
#include <asm/addrspace.h>
#include <asm/types.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <mach/ar71xx_regs.h>
#define AR933X_UART_DATA_REG 0x00
diff --git a/drivers/serial/serial_bcm283x_mu.c b/drivers/serial/serial_bcm283x_mu.c
index febb5ceea2a..0102b10ed25 100644
--- a/drivers/serial/serial_bcm283x_mu.c
+++ b/drivers/serial/serial_bcm283x_mu.c
@@ -23,6 +23,7 @@
#include <serial.h>
#include <dm/platform_data/serial_bcm283x_mu.h>
#include <dm/pinctrl.h>
+#include <linux/bitops.h>
#include <linux/compiler.h>
struct bcm283x_mu_regs {
diff --git a/drivers/serial/serial_cortina.c b/drivers/serial/serial_cortina.c
index 4f227bfe0ad..cc20673efef 100644
--- a/drivers/serial/serial_cortina.c
+++ b/drivers/serial/serial_cortina.c
@@ -11,6 +11,7 @@
#include <watchdog.h>
#include <asm/io.h>
#include <serial.h>
+#include <linux/bitops.h>
#include <linux/compiler.h>
/* Register definitions */
diff --git a/drivers/serial/serial_lpuart.c b/drivers/serial/serial_lpuart.c
index 9d7ed5e88aa..0c63c41270e 100644
--- a/drivers/serial/serial_lpuart.c
+++ b/drivers/serial/serial_lpuart.c
@@ -13,6 +13,7 @@
#include <asm/io.h>
#include <serial.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/compiler.h>
#include <asm/arch/imx-regs.h>
#include <asm/arch/clock.h>
diff --git a/drivers/serial/serial_meson.c b/drivers/serial/serial_meson.c
index b3dad77aa28..439057b1b9a 100644
--- a/drivers/serial/serial_meson.c
+++ b/drivers/serial/serial_meson.c
@@ -7,6 +7,7 @@
#include <dm.h>
#include <errno.h>
#include <fdtdec.h>
+#include <linux/bitops.h>
#include <linux/compiler.h>
#include <serial.h>
diff --git a/drivers/serial/serial_owl.c b/drivers/serial/serial_owl.c
index bb60ca2d9b8..2651a45a7f3 100644
--- a/drivers/serial/serial_owl.c
+++ b/drivers/serial/serial_owl.c
@@ -14,6 +14,7 @@
#include <serial.h>
#include <asm/io.h>
#include <asm/types.h>
+#include <linux/bitops.h>
/* UART Registers */
#define OWL_UART_CTL (0x0000)
diff --git a/drivers/serial/serial_pic32.c b/drivers/serial/serial_pic32.c
index bac506ed79d..a492063e39c 100644
--- a/drivers/serial/serial_pic32.c
+++ b/drivers/serial/serial_pic32.c
@@ -9,6 +9,7 @@
#include <malloc.h>
#include <serial.h>
#include <wait_bit.h>
+#include <linux/bitops.h>
#include <mach/pic32.h>
#include <dt-bindings/clock/microchip,clock.h>
diff --git a/drivers/serial/serial_sti_asc.c b/drivers/serial/serial_sti_asc.c
index 27d3ec9dbc3..5fbbfac8207 100644
--- a/drivers/serial/serial_sti_asc.c
+++ b/drivers/serial/serial_sti_asc.c
@@ -11,6 +11,7 @@
#include <log.h>
#include <serial.h>
#include <asm/io.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/serial/serial_stm32.c b/drivers/serial/serial_stm32.c
index 5c1cf81ae04..e77b90670a3 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/bitops.h>
#include <linux/delay.h>
#include "serial_stm32.h"
#include <dm/device_compat.h>
diff --git a/drivers/serial/serial_stm32.h b/drivers/serial/serial_stm32.h
index 7b0c53145e8..57376518880 100644
--- a/drivers/serial/serial_stm32.h
+++ b/drivers/serial/serial_stm32.h
@@ -7,6 +7,7 @@
#ifndef _SERIAL_STM32_
#define _SERIAL_STM32_
+#include <linux/bitops.h>
#define CR1_OFFSET(x) (x ? 0x0c : 0x00)
#define CR3_OFFSET(x) (x ? 0x14 : 0x08)
#define BRR_OFFSET(x) (x ? 0x08 : 0x0c)
diff --git a/drivers/serial/serial_xuartlite.c b/drivers/serial/serial_xuartlite.c
index 1be777bd3bb..f29a9a0b569 100644
--- a/drivers/serial/serial_xuartlite.c
+++ b/drivers/serial/serial_xuartlite.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <dm.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/compiler.h>
#include <serial.h>
diff --git a/drivers/serial/serial_zynq.c b/drivers/serial/serial_zynq.c
index 5f2dcd6d6b9..0e71cada1bb 100644
--- a/drivers/serial/serial_zynq.c
+++ b/drivers/serial/serial_zynq.c
@@ -14,6 +14,7 @@
#include <watchdog.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/compiler.h>
#include <serial.h>
#include <linux/err.h>
diff --git a/drivers/soc/ti/k3-navss-ringacc.c b/drivers/soc/ti/k3-navss-ringacc.c
index c3953fdf855..ecc4b8b5a06 100644
--- a/drivers/soc/ti/k3-navss-ringacc.c
+++ b/drivers/soc/ti/k3-navss-ringacc.c
@@ -17,6 +17,7 @@
#include <dm/devres.h>
#include <dm/read.h>
#include <dm/uclass.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <linux/dma-mapping.h>
#include <linux/err.h>
diff --git a/drivers/soc/ti/keystone_serdes.c b/drivers/soc/ti/keystone_serdes.c
index 7907e6f9773..2ece1a8f647 100644
--- a/drivers/soc/ti/keystone_serdes.c
+++ b/drivers/soc/ti/keystone_serdes.c
@@ -9,6 +9,7 @@
#include <errno.h>
#include <common.h>
#include <asm/ti-common/keystone_serdes.h>
+#include <linux/bitops.h>
#define SERDES_CMU_REGS(x) (0x0000 + (0x0c00 * (x)))
#define SERDES_LANE_REGS(x) (0x0200 + (0x200 * (x)))
diff --git a/drivers/sound/hda_codec.c b/drivers/sound/hda_codec.c
index b59c63edb33..4154d293998 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/bitops.h>
#include <linux/delay.h>
/**
diff --git a/drivers/sound/ivybridge_sound.c b/drivers/sound/ivybridge_sound.c
index f446a140b22..bc3c1e85f8c 100644
--- a/drivers/sound/ivybridge_sound.c
+++ b/drivers/sound/ivybridge_sound.c
@@ -18,6 +18,7 @@
#include <log.h>
#include <pch.h>
#include <sound.h>
+#include <linux/bitops.h>
static int bd82x6x_azalia_probe(struct udevice *dev)
{
diff --git a/drivers/sound/max98088.h b/drivers/sound/max98088.h
index 127d2bda305..b1307a73623 100644
--- a/drivers/sound/max98088.h
+++ b/drivers/sound/max98088.h
@@ -9,6 +9,7 @@
#define _MAX98088_H
/* MAX98088 Registers Definition */
+#include <linux/bitops.h>
#define M98088_REG_IRQ_STATUS 0x00
#define M98088_REG_MIC_STATUS 0x01
#define M98088_REG_JACK_STAUS 0x02
diff --git a/drivers/sound/rockchip_i2s.c b/drivers/sound/rockchip_i2s.c
index 5e8ed6d8967..4e9e68aaac8 100644
--- a/drivers/sound/rockchip_i2s.c
+++ b/drivers/sound/rockchip_i2s.c
@@ -13,6 +13,7 @@
#include <log.h>
#include <sound.h>
#include <asm/io.h>
+#include <linux/bitops.h>
struct rk_i2s_regs {
u32 txcr; /* I2S_TXCR, 0x00 */
diff --git a/drivers/spi/altera_spi.c b/drivers/spi/altera_spi.c
index 11d745f53a6..3aa7a40b77e 100644
--- a/drivers/spi/altera_spi.c
+++ b/drivers/spi/altera_spi.c
@@ -14,6 +14,7 @@
#include <fdtdec.h>
#include <spi.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define ALTERA_SPI_STATUS_RRDY_MSK BIT(7)
#define ALTERA_SPI_CONTROL_SSO_MSK BIT(10)
diff --git a/drivers/spi/atmel-quadspi.c b/drivers/spi/atmel-quadspi.c
index a6c3939db54..9320a8be685 100644
--- a/drivers/spi/atmel-quadspi.c
+++ b/drivers/spi/atmel-quadspi.c
@@ -17,6 +17,7 @@
#include <errno.h>
#include <fdtdec.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/iopoll.h>
diff --git a/drivers/spi/atmel_spi.h b/drivers/spi/atmel_spi.h
index 76b8556c98a..6167bd164bb 100644
--- a/drivers/spi/atmel_spi.h
+++ b/drivers/spi/atmel_spi.h
@@ -3,6 +3,7 @@
*/
/* Register offsets */
+#include <linux/bitops.h>
#define ATMEL_SPI_CR 0x0000
#define ATMEL_SPI_MR 0x0004
#define ATMEL_SPI_RDR 0x0008
diff --git a/drivers/spi/bcm63xx_hsspi.c b/drivers/spi/bcm63xx_hsspi.c
index afc7be0f01e..f30a8a42bd4 100644
--- a/drivers/spi/bcm63xx_hsspi.c
+++ b/drivers/spi/bcm63xx_hsspi.c
@@ -16,6 +16,7 @@
#include <reset.h>
#include <wait_bit.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define HSSPI_PP 0
diff --git a/drivers/spi/cadence_qspi_apb.c b/drivers/spi/cadence_qspi_apb.c
index 63628692997..f9675f75a40 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <wait_bit.h>
diff --git a/drivers/spi/davinci_spi.c b/drivers/spi/davinci_spi.c
index c00a05af7d1..97ac97b1a5d 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/bitops.h>
#include <linux/delay.h>
/* SPIGCR0 */
diff --git a/drivers/spi/designware_spi.c b/drivers/spi/designware_spi.c
index 09044bd137f..c9b14f90292 100644
--- a/drivers/spi/designware_spi.c
+++ b/drivers/spi/designware_spi.c
@@ -20,6 +20,7 @@
#include <fdtdec.h>
#include <reset.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <linux/iopoll.h>
#include <asm/io.h>
diff --git a/drivers/spi/fsl_dspi.c b/drivers/spi/fsl_dspi.c
index cb3d44cb0f6..1cdb2331104 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/bitops.h>
#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/fsl_espi.c b/drivers/spi/fsl_espi.c
index ba49839107d..50d194f614b 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/bitops.h>
#include <linux/delay.h>
#include <malloc.h>
diff --git a/drivers/spi/fsl_qspi.c b/drivers/spi/fsl_qspi.c
index de93cbda67c..e715f9838f1 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/bitops.h>
#include <linux/delay.h>
#include <linux/libfdt.h>
#include <linux/sizes.h>
diff --git a/drivers/spi/ich.c b/drivers/spi/ich.c
index 9c42755daed..74050628463 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/bitops.h>
#include <linux/delay.h>
#include <linux/sizes.h>
diff --git a/drivers/spi/ich.h b/drivers/spi/ich.h
index d7f1ffdf37d..23c7827740b 100644
--- a/drivers/spi/ich.h
+++ b/drivers/spi/ich.h
@@ -8,6 +8,7 @@
#ifndef _ICH_H_
#define _ICH_H_
+#include <linux/bitops.h>
struct ich7_spi_regs {
uint16_t spis;
uint16_t spic;
diff --git a/drivers/spi/meson_spifc.c b/drivers/spi/meson_spifc.c
index ad159955734..2cdc0186825 100644
--- a/drivers/spi/meson_spifc.c
+++ b/drivers/spi/meson_spifc.c
@@ -16,6 +16,7 @@
#include <errno.h>
#include <asm/io.h>
#include <linux/bitfield.h>
+#include <linux/bitops.h>
/* register map */
#define REG_CMD 0x00
diff --git a/drivers/spi/mpc8xxx_spi.c b/drivers/spi/mpc8xxx_spi.c
index 8491eacb1b1..811b5d44fb2 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/bitops.h>
#include <linux/delay.h>
enum {
diff --git a/drivers/spi/mscc_bb_spi.c b/drivers/spi/mscc_bb_spi.c
index 37327ec508f..0454410ee9b 100644
--- a/drivers/spi/mscc_bb_spi.c
+++ b/drivers/spi/mscc_bb_spi.c
@@ -14,6 +14,7 @@
#include <dm.h>
#include <asm/gpio.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/delay.h>
struct mscc_bb_priv {
diff --git a/drivers/spi/mt7621_spi.c b/drivers/spi/mt7621_spi.c
index df9d9da1a9b..3a0738eb2b7 100644
--- a/drivers/spi/mt7621_spi.c
+++ b/drivers/spi/mt7621_spi.c
@@ -14,6 +14,7 @@
#include <log.h>
#include <spi.h>
#include <wait_bit.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#define MT7621_RX_FIFO_LEN 32
diff --git a/drivers/spi/mvebu_a3700_spi.c b/drivers/spi/mvebu_a3700_spi.c
index 73a3f91efc9..2302e62be4f 100644
--- a/drivers/spi/mvebu_a3700_spi.c
+++ b/drivers/spi/mvebu_a3700_spi.c
@@ -14,6 +14,7 @@
#include <wait_bit.h>
#include <asm/io.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c
index e35c6f9b4a9..f52ebf4d67c 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <asm/io.h>
diff --git a/drivers/spi/mxs_spi.c b/drivers/spi/mxs_spi.c
index 635955e819b..0da4a80d712 100644
--- a/drivers/spi/mxs_spi.c
+++ b/drivers/spi/mxs_spi.c
@@ -19,6 +19,7 @@
#include <memalign.h>
#include <spi.h>
#include <asm/cache.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <asm/io.h>
#include <asm/arch/clock.h>
diff --git a/drivers/spi/nxp_fspi.c b/drivers/spi/nxp_fspi.c
index 22a5c0e3c72..c507437f2e7 100644
--- a/drivers/spi/nxp_fspi.c
+++ b/drivers/spi/nxp_fspi.c
@@ -40,6 +40,7 @@
#include <spi-mem.h>
#include <dm.h>
#include <clk.h>
+#include <linux/bitops.h>
#include <linux/kernel.h>
#include <linux/sizes.h>
#include <linux/iopoll.h>
diff --git a/drivers/spi/omap3_spi.c b/drivers/spi/omap3_spi.c
index ff4c700645c..6a615d1498e 100644
--- a/drivers/spi/omap3_spi.c
+++ b/drivers/spi/omap3_spi.c
@@ -21,6 +21,7 @@
#include <spi.h>
#include <malloc.h>
#include <asm/io.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/pic32_spi.c b/drivers/spi/pic32_spi.c
index 88dc1444e14..52e9eff743c 100644
--- a/drivers/spi/pic32_spi.c
+++ b/drivers/spi/pic32_spi.c
@@ -10,6 +10,7 @@
#include <clk.h>
#include <dm.h>
#include <log.h>
+#include <linux/bitops.h>
#include <linux/compat.h>
#include <malloc.h>
#include <spi.h>
diff --git a/drivers/spi/renesas_rpc_spi.c b/drivers/spi/renesas_rpc_spi.c
index 61ae92d603d..3ea59b8fb82 100644
--- a/drivers/spi/renesas_rpc_spi.c
+++ b/drivers/spi/renesas_rpc_spi.c
@@ -12,6 +12,7 @@
#include <dm/of_access.h>
#include <dt-structs.h>
#include <errno.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/errno.h>
#include <spi.h>
diff --git a/drivers/spi/sh_qspi.c b/drivers/spi/sh_qspi.c
index 5ae203d8d4f..2839dd1cebd 100644
--- a/drivers/spi/sh_qspi.c
+++ b/drivers/spi/sh_qspi.c
@@ -13,6 +13,7 @@
#include <wait_bit.h>
#include <asm/arch/rmobile.h>
#include <asm/io.h>
+#include <linux/bitops.h>
/* SH QSPI register bit masks <REG>_<BIT> */
#define SPCR_MSTR 0x08
diff --git a/drivers/spi/soft_spi.c b/drivers/spi/soft_spi.c
index e5f9f49caf8..e8d7758da03 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/bitops.h>
#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/spi-sifive.c b/drivers/spi/spi-sifive.c
index 4cab0391f7d..0e0ce25abb9 100644
--- a/drivers/spi/spi-sifive.c
+++ b/drivers/spi/spi-sifive.c
@@ -13,6 +13,7 @@
#include <spi-mem.h>
#include <wait_bit.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/log2.h>
#include <clk.h>
diff --git a/drivers/spi/spi-sunxi.c b/drivers/spi/spi-sunxi.c
index 85b662bb0ad..d2dccd67e5b 100644
--- a/drivers/spi/spi-sunxi.c
+++ b/drivers/spi/spi-sunxi.c
@@ -28,6 +28,7 @@
#include <reset.h>
#include <wait_bit.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <asm/bitops.h>
#include <asm/gpio.h>
diff --git a/drivers/spi/stm32_qspi.c b/drivers/spi/stm32_qspi.c
index 9fc5f6e00e9..001f0703e3c 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/bitops.h>
#include <linux/delay.h>
#include <linux/iopoll.h>
#include <linux/ioport.h>
diff --git a/drivers/spi/stm32_spi.c b/drivers/spi/stm32_spi.c
index 8071de09eba..4a0833b6fa9 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/bitops.h>
#include <linux/delay.h>
#include <asm/io.h>
diff --git a/drivers/spi/tegra114_spi.c b/drivers/spi/tegra114_spi.c
index bf02bdb1afe..0e8198c5a02 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/bitops.h>
#include <linux/delay.h>
#include "tegra_spi.h"
diff --git a/drivers/spi/tegra20_sflash.c b/drivers/spi/tegra20_sflash.c
index 1461f094277..22a0304bfcb 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/bitops.h>
#include <linux/delay.h>
#include "tegra_spi.h"
diff --git a/drivers/spi/tegra20_slink.c b/drivers/spi/tegra20_slink.c
index dcd09508946..3679cf06a00 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/bitops.h>
#include <linux/delay.h>
#include "tegra_spi.h"
diff --git a/drivers/spi/tegra210_qspi.c b/drivers/spi/tegra210_qspi.c
index 96ab6502de1..ae16b45dcb4 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/bitops.h>
#include <linux/delay.h>
#include "tegra_spi.h"
diff --git a/drivers/spi/ti_qspi.c b/drivers/spi/ti_qspi.c
index f25fc363acb..0db0de8f1bf 100644
--- a/drivers/spi/ti_qspi.c
+++ b/drivers/spi/ti_qspi.c
@@ -19,6 +19,7 @@
#include <asm/omap_gpio.h>
#include <asm/omap_common.h>
#include <asm/ti-common/ti-edma3.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <linux/kernel.h>
#include <regmap.h>
diff --git a/drivers/spi/uniphier_spi.c b/drivers/spi/uniphier_spi.c
index 42ed1ba20b0..114bd8abd7a 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/bitops.h>
#include <linux/delay.h>
#include <linux/io.h>
#include <spi.h>
diff --git a/drivers/spi/xilinx_spi.c b/drivers/spi/xilinx_spi.c
index 4a568cb56d6..05768eef721 100644
--- a/drivers/spi/xilinx_spi.c
+++ b/drivers/spi/xilinx_spi.c
@@ -21,6 +21,7 @@
#include <spi.h>
#include <asm/io.h>
#include <wait_bit.h>
+#include <linux/bitops.h>
/*
* [0]: http://www.xilinx.com/support/documentation
diff --git a/drivers/spi/zynq_qspi.c b/drivers/spi/zynq_qspi.c
index 8451f83b706..db473da6ea8 100644
--- a/drivers/spi/zynq_qspi.c
+++ b/drivers/spi/zynq_qspi.c
@@ -12,6 +12,7 @@
#include <malloc.h>
#include <spi.h>
#include <asm/io.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/zynq_spi.c b/drivers/spi/zynq_spi.c
index e3bad5532a5..3e66b34ebbb 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/bitops.h>
#include <linux/delay.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/spi/zynqmp_gqspi.c b/drivers/spi/zynqmp_gqspi.c
index f12c6f766da..c3a5b3e3015 100644
--- a/drivers/spi/zynqmp_gqspi.c
+++ b/drivers/spi/zynqmp_gqspi.c
@@ -19,6 +19,7 @@
#include <ubi_uboot.h>
#include <wait_bit.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#define GQSPI_GFIFO_STRT_MODE_MASK BIT(29)
diff --git a/drivers/sysreset/sysreset_socfpga.c b/drivers/sysreset/sysreset_socfpga.c
index 3390b7bdc2c..178bcb227ff 100644
--- a/drivers/sysreset/sysreset_socfpga.c
+++ b/drivers/sysreset/sysreset_socfpga.c
@@ -10,6 +10,7 @@
#include <sysreset.h>
#include <asm/io.h>
#include <asm/arch/reset_manager.h>
+#include <linux/bitops.h>
struct socfpga_sysreset_data {
void __iomem *rstmgr_base;
diff --git a/drivers/sysreset/sysreset_sti.c b/drivers/sysreset/sysreset_sti.c
index 9996716f13d..3482d2a0787 100644
--- a/drivers/sysreset/sysreset_sti.c
+++ b/drivers/sysreset/sysreset_sti.c
@@ -10,6 +10,7 @@
#include <syscon.h>
#include <sysreset.h>
#include <asm/io.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/timer/altera_timer.c b/drivers/timer/altera_timer.c
index 6f504f7cc4d..6ca9501eb17 100644
--- a/drivers/timer/altera_timer.c
+++ b/drivers/timer/altera_timer.c
@@ -12,6 +12,7 @@
#include <errno.h>
#include <timer.h>
#include <asm/io.h>
+#include <linux/bitops.h>
/* control register */
#define ALTERA_TIMER_CONT BIT(1) /* Continuous mode */
diff --git a/drivers/timer/atmel_pit_timer.c b/drivers/timer/atmel_pit_timer.c
index 009af2f9298..70511697fef 100644
--- a/drivers/timer/atmel_pit_timer.c
+++ b/drivers/timer/atmel_pit_timer.c
@@ -9,6 +9,7 @@
#include <dm.h>
#include <timer.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define AT91_PIT_VALUE 0xfffff
#define AT91_PIT_PITEN BIT(24) /* Timer Enabled */
diff --git a/drivers/timer/cadence-ttc.c b/drivers/timer/cadence-ttc.c
index f4942a5500c..e6b6dfe3765 100644
--- a/drivers/timer/cadence-ttc.c
+++ b/drivers/timer/cadence-ttc.c
@@ -10,6 +10,7 @@
#include <init.h>
#include <timer.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#define CNT_CNTRL_RESET BIT(4)
diff --git a/drivers/timer/mpc83xx_timer.c b/drivers/timer/mpc83xx_timer.c
index 186fe2b45ac..ad8bb28e8b3 100644
--- a/drivers/timer/mpc83xx_timer.c
+++ b/drivers/timer/mpc83xx_timer.c
@@ -15,6 +15,7 @@
#include <timer.h>
#include <watchdog.h>
#include <asm/ptrace.h>
+#include <linux/bitops.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/timer/mtk_timer.c b/drivers/timer/mtk_timer.c
index e99135e5bec..69ed521811d 100644
--- a/drivers/timer/mtk_timer.c
+++ b/drivers/timer/mtk_timer.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <timer.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define MTK_GPT4_CTRL 0x40
#define MTK_GPT4_CLK 0x44
diff --git a/drivers/timer/nomadik-mtu-timer.c b/drivers/timer/nomadik-mtu-timer.c
index 8648f1f1df9..7ff921385a3 100644
--- a/drivers/timer/nomadik-mtu-timer.c
+++ b/drivers/timer/nomadik-mtu-timer.c
@@ -16,6 +16,7 @@
#include <dm.h>
#include <timer.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define MTU_NUM_TIMERS 4
diff --git a/drivers/timer/omap-timer.c b/drivers/timer/omap-timer.c
index a13fb711656..700c349f371 100644
--- a/drivers/timer/omap-timer.c
+++ b/drivers/timer/omap-timer.c
@@ -11,6 +11,7 @@
#include <timer.h>
#include <asm/io.h>
#include <asm/arch/clock.h>
+#include <linux/bitops.h>
/* Timer register bits */
#define TCLR_START BIT(0) /* Start=1 */
diff --git a/drivers/timer/ostm_timer.c b/drivers/timer/ostm_timer.c
index 48a5055b05e..bea97159ebe 100644
--- a/drivers/timer/ostm_timer.c
+++ b/drivers/timer/ostm_timer.c
@@ -11,6 +11,7 @@
#include <dm.h>
#include <clk.h>
#include <timer.h>
+#include <linux/bitops.h>
#define OSTM_CMP 0x00
#define OSTM_CNT 0x04
diff --git a/drivers/timer/stm32_timer.c b/drivers/timer/stm32_timer.c
index 76d99a2b865..c57fa3f5570 100644
--- a/drivers/timer/stm32_timer.c
+++ b/drivers/timer/stm32_timer.c
@@ -10,6 +10,7 @@
#include <fdtdec.h>
#include <timer.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <asm/io.h>
diff --git a/drivers/tpm/tpm2_tis_sandbox.c b/drivers/tpm/tpm2_tis_sandbox.c
index 522988795c0..41a15bd49fb 100644
--- a/drivers/tpm/tpm2_tis_sandbox.c
+++ b/drivers/tpm/tpm2_tis_sandbox.c
@@ -9,6 +9,7 @@
#include <tpm-v2.h>
#include <asm/state.h>
#include <asm/unaligned.h>
+#include <linux/bitops.h>
#include <u-boot/crc.h>
/* Hierarchies */
diff --git a/drivers/tpm/tpm2_tis_spi.c b/drivers/tpm/tpm2_tis_spi.c
index 03918ed6a74..36016de4a60 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/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/compiler.h>
diff --git a/drivers/ufs/cdns-platform.c b/drivers/ufs/cdns-platform.c
index 41ee6a60c96..1a7bb7bed8a 100644
--- a/drivers/ufs/cdns-platform.c
+++ b/drivers/ufs/cdns-platform.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <ufs.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include "ufs.h"
diff --git a/drivers/ufs/ti-j721e-ufs.c b/drivers/ufs/ti-j721e-ufs.c
index 4990fba6ebb..d875269760c 100644
--- a/drivers/ufs/ti-j721e-ufs.c
+++ b/drivers/ufs/ti-j721e-ufs.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <dm.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#define UFS_SS_CTRL 0x4
diff --git a/drivers/ufs/ufs.c b/drivers/ufs/ufs.c
index 136dab5602e..87b4e5fc560 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/bitops.h>
#include <linux/delay.h>
#include <linux/dma-mapping.h>
diff --git a/drivers/usb/cdns3/cdns3-ti.c b/drivers/usb/cdns3/cdns3-ti.c
index 652cd5cb17a..cd7b2113ace 100644
--- a/drivers/usb/cdns3/cdns3-ti.c
+++ b/drivers/usb/cdns3/cdns3-ti.c
@@ -10,6 +10,7 @@
#include <clk.h>
#include <dm.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <linux/io.h>
#include <linux/usb/otg.h>
#include <malloc.h>
diff --git a/drivers/usb/cdns3/drd.h b/drivers/usb/cdns3/drd.h
index 815b93f2fb4..fffda7b43a4 100644
--- a/drivers/usb/cdns3/drd.h
+++ b/drivers/usb/cdns3/drd.h
@@ -9,6 +9,7 @@
#ifndef __LINUX_CDNS3_DRD
#define __LINUX_CDNS3_DRD
+#include <linux/bitops.h>
#include <linux/types.h>
#include <linux/usb/otg.h>
#include "core.h"
diff --git a/drivers/usb/cdns3/ep0.c b/drivers/usb/cdns3/ep0.c
index 4a6374c4928..a08c6945590 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/bitops.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 f5b6e5be64f..8f81d17ec8e 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/bitops.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/usb/gadget.h>
diff --git a/drivers/usb/cdns3/gadget.h b/drivers/usb/cdns3/gadget.h
index 3d5242b331d..8803fa48bd3 100644
--- a/drivers/usb/cdns3/gadget.h
+++ b/drivers/usb/cdns3/gadget.h
@@ -11,6 +11,7 @@
*/
#ifndef __LINUX_CDNS3_GADGET
#define __LINUX_CDNS3_GADGET
+#include <linux/bitops.h>
#include <linux/usb/gadget.h>
/*
diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h
index 7f45a9c4597..2b4c51a4061 100644
--- a/drivers/usb/dwc3/core.h
+++ b/drivers/usb/dwc3/core.h
@@ -17,6 +17,7 @@
#ifndef __DRIVERS_USB_DWC3_CORE_H
#define __DRIVERS_USB_DWC3_CORE_H
+#include <linux/bitops.h>
#include <linux/ioport.h>
#include <linux/usb/ch9.h>
diff --git a/drivers/usb/dwc3/dwc3-generic.c b/drivers/usb/dwc3/dwc3-generic.c
index e172e36852b..484e7a7b8c8 100644
--- a/drivers/usb/dwc3/dwc3-generic.c
+++ b/drivers/usb/dwc3/dwc3-generic.c
@@ -15,6 +15,7 @@
#include <dm/device-internal.h>
#include <dm/lists.h>
#include <dwc3-uboot.h>
+#include <linux/bitops.h>
#include <linux/usb/ch9.h>
#include <linux/usb/gadget.h>
#include <malloc.h>
diff --git a/drivers/usb/dwc3/ti_usb_phy.c b/drivers/usb/dwc3/ti_usb_phy.c
index ade3a7f85c0..f8ab06482c9 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/bitops.h>
#include <linux/delay.h>
#include <linux/ioport.h>
#include <asm/io.h>
diff --git a/drivers/usb/eth/lan75xx.c b/drivers/usb/eth/lan75xx.c
index 94c6522a411..46b92e8d68b 100644
--- a/drivers/usb/eth/lan75xx.c
+++ b/drivers/usb/eth/lan75xx.c
@@ -6,6 +6,7 @@
#include <dm.h>
#include <log.h>
#include <usb.h>
+#include <linux/bitops.h>
#include <linux/mii.h>
#include "usb_ether.h"
#include "lan7x.h"
diff --git a/drivers/usb/eth/lan78xx.c b/drivers/usb/eth/lan78xx.c
index 1d1b64ef3e2..e34ad2603fb 100644
--- a/drivers/usb/eth/lan78xx.c
+++ b/drivers/usb/eth/lan78xx.c
@@ -7,6 +7,7 @@
#include <log.h>
#include <net.h>
#include <usb.h>
+#include <linux/bitops.h>
#include "usb_ether.h"
#include "lan7x.h"
diff --git a/drivers/usb/eth/lan7x.h b/drivers/usb/eth/lan7x.h
index 35965e9645a..f71e8c7268c 100644
--- a/drivers/usb/eth/lan7x.h
+++ b/drivers/usb/eth/lan7x.h
@@ -6,6 +6,7 @@
#include <console.h>
#include <time.h>
#include <watchdog.h>
+#include <linux/bitops.h>
#include <linux/delay.h>
#include <linux/errno.h>
diff --git a/drivers/usb/eth/r8152.h b/drivers/usb/eth/r8152.h
index b6df535a832..09f1c6178b9 100644
--- a/drivers/usb/eth/r8152.h
+++ b/drivers/usb/eth/r8152.h
@@ -7,6 +7,7 @@
#ifndef _RTL8152_ETH_H
#define _RTL8152_ETH_H
+#include <linux/bitops.h>
#define R8152_BASE_NAME "r8152"
#define PLA_IDR 0xc000
diff --git a/drivers/usb/eth/r8152_fw.c b/drivers/usb/eth/r8152_fw.c
index d564de285f1..3ebbd533cc0 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/bitops.h>
#include <linux/delay.h>
#include "usb_ether.h"
#include "r8152.h"
diff --git a/drivers/usb/gadget/atmel_usba_udc.c b/drivers/usb/gadget/atmel_usba_udc.c
index dffa5117f9c..7d51821497b 100644
--- a/drivers/usb/gadget/atmel_usba_udc.c
+++ b/drivers/usb/gadget/atmel_usba_udc.c
@@ -8,6 +8,7 @@
*/
#include <common.h>
+#include <linux/bitops.h>
#include <linux/errno.h>
#include <asm/gpio.h>
#include <asm/hardware.h>
diff --git a/drivers/usb/gadget/dwc2_udc_otg_regs.h b/drivers/usb/gadget/dwc2_udc_otg_regs.h
index 434db5ba39a..2eda5c37206 100644
--- a/drivers/usb/gadget/dwc2_udc_otg_regs.h
+++ b/drivers/usb/gadget/dwc2_udc_otg_regs.h
@@ -11,6 +11,7 @@
#define __ASM_ARCH_REGS_USB_OTG_HS_H
/* USB2.0 OTG Controller register */
+#include <linux/bitops.h>
struct dwc2_usbotg_phy {
u32 phypwr;
u32 phyclk;
diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h
index 66c1d61dbf2..8e0755423a9 100644
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
@@ -298,4 +298,5 @@ extern struct dm_usb_ops ehci_usb_ops;
int ehci_setup_phy(struct udevice *dev, struct phy *phy, int index);
int ehci_shutdown_phy(struct udevice *dev, struct phy *phy);
+#include <linux/bitops.h>
#endif /* USB_EHCI_H */
diff --git a/drivers/usb/host/r8a66597.h b/drivers/usb/host/r8a66597.h
index b6110d6b3f4..625d4938cce 100644
--- a/drivers/usb/host/r8a66597.h
+++ b/drivers/usb/host/r8a66597.h
@@ -8,6 +8,7 @@
#ifndef __R8A66597_H__
#define __R8A66597_H__
+#include <linux/bitops.h>
#define SYSCFG0 0x00
#define SYSCFG1 0x02
#define SYSSTS0 0x04
diff --git a/drivers/usb/host/xhci-rcar.c b/drivers/usb/host/xhci-rcar.c
index b3675bb1db2..4964697f27b 100644
--- a/drivers/usb/host/xhci-rcar.c
+++ b/drivers/usb/host/xhci-rcar.c
@@ -14,6 +14,7 @@
#include <usb.h>
#include <wait_bit.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
#include <usb/xhci.h>
#include "xhci-rcar-r8a779x_usb3_v3.h"
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index 963cc3c3c53..ebd29545715 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -29,6 +29,7 @@
#include <watchdog.h>
#include <asm/cache.h>
#include <asm/unaligned.h>
+#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/delay.h>
#include <linux/errno.h>
diff --git a/drivers/usb/musb-new/musb_core.c b/drivers/usb/musb-new/musb_core.c
index 8e0e57cae88..961de99795e 100644
--- a/drivers/usb/musb-new/musb_core.c
+++ b/drivers/usb/musb-new/musb_core.c
@@ -81,6 +81,7 @@
#else
#include <common.h>
#include <usb.h>
+#include <linux/bitops.h>
#include <linux/bug.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 66e8e9ce886..74a841af460 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/bitops.h>
#include <linux/delay.h>
#include <linux/usb/musb.h>
#include "linux-compat.h"
diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c
index a29d10d3354..53c336fc3f5 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/bitops.h>
#include <linux/delay.h>
#include <linux/usb/musb.h>
#include "linux-compat.h"
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index c6d47bef56a..147b2eb929f 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
@@ -9,6 +9,7 @@
*/
#include <common.h>
+#include <linux/bitops.h>
#include "musb_core.h"
struct musb_regs *musbr;
diff --git a/drivers/usb/phy/rockchip_usb2_phy.c b/drivers/usb/phy/rockchip_usb2_phy.c
index 6a60523e0f8..f1cf9160d56 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/bitops.h>
#include <linux/delay.h>
#include "../gadget/dwc2_udc_otg_priv.h"
diff --git a/drivers/video/anx98xx-edp.h b/drivers/video/anx98xx-edp.h
index 64269c30bd7..ece36d41eee 100644
--- a/drivers/video/anx98xx-edp.h
+++ b/drivers/video/anx98xx-edp.h
@@ -6,6 +6,7 @@
/* Registers at i2c address 0x38 */
+#include <linux/bitops.h>
#define ANX9804_HDCP_CONTROL_0_REG 0x01
#define ANX9804_SYS_CTRL1_REG 0x80
diff --git a/drivers/video/dw_mipi_dsi.c b/drivers/video/dw_mipi_dsi.c
index e8a3af7e608..b7bfbb5e501 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/bitops.h>
#include <linux/delay.h>
#include <linux/iopoll.h>
#include <video_bridge.h>
diff --git a/drivers/video/meson/meson_dw_hdmi.c b/drivers/video/meson/meson_dw_hdmi.c
index 288b9065445..7b2ff94eba5 100644
--- a/drivers/video/meson/meson_dw_hdmi.c
+++ b/drivers/video/meson/meson_dw_hdmi.c
@@ -13,6 +13,7 @@
#include <dw_hdmi.h>
#include <dm/device-internal.h>
#include <dm/uclass-internal.h>
+#include <linux/bitops.h>
#include <power/regulator.h>
#include <clk.h>
#include <linux/delay.h>
diff --git a/drivers/video/meson/meson_dw_hdmi.h b/drivers/video/meson/meson_dw_hdmi.h
index b13beb1f75a..d507e59c064 100644
--- a/drivers/video/meson/meson_dw_hdmi.h
+++ b/drivers/video/meson/meson_dw_hdmi.h
@@ -24,6 +24,7 @@
* Bit 0 RW sw_reset_core: connects to IP's ~irstz. 1=Apply reset;
* 0=Release from reset. Default 1.
*/
+#include <linux/bitops.h>
#define HDMITX_TOP_SW_RESET (0x000)
/*
diff --git a/drivers/video/meson/meson_plane.c b/drivers/video/meson/meson_plane.c
index 8edf451f13f..b367276f237 100644
--- a/drivers/video/meson/meson_plane.c
+++ b/drivers/video/meson/meson_plane.c
@@ -10,6 +10,7 @@
#include <dm.h>
#include <asm/io.h>
#include <linux/bitfield.h>
+#include <linux/bitops.h>
#include "meson_vpu.h"
diff --git a/drivers/video/meson/meson_registers.h b/drivers/video/meson/meson_registers.h
index 39e8ec86395..f6a5d1ac8ce 100644
--- a/drivers/video/meson/meson_registers.h
+++ b/drivers/video/meson/meson_registers.h
@@ -7,6 +7,7 @@
#define __MESON_REGISTERS_H
/* Shift all registers by 2 */
+#include <linux/bitops.h>
#define _REG(reg) ((reg) << 2)
#define writel_bits(mask, val, addr) \
diff --git a/drivers/video/meson/meson_vclk.c b/drivers/video/meson/meson_vclk.c
index 3b5b73b7c3b..cd1e69040f7 100644
--- a/drivers/video/meson/meson_vclk.c
+++ b/drivers/video/meson/meson_vclk.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <dm.h>
#include <edid.h>
+#include <linux/bitops.h>
#include "meson_vpu.h"
#include <log.h>
#include <linux/iopoll.h>
diff --git a/drivers/video/meson/meson_vpu_init.c b/drivers/video/meson/meson_vpu_init.c
index 8408c59eaa1..c9808e1c631 100644
--- a/drivers/video/meson/meson_vpu_init.c
+++ b/drivers/video/meson/meson_vpu_init.c
@@ -11,6 +11,7 @@
#include <common.h>
#include <dm.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include "meson_vpu.h"
diff --git a/drivers/video/rockchip/rk_vop.c b/drivers/video/rockchip/rk_vop.c
index 45385b175b8..9032eb430e7 100644
--- a/drivers/video/rockchip/rk_vop.c
+++ b/drivers/video/rockchip/rk_vop.c
@@ -20,6 +20,7 @@
#include <asm/arch-rockchip/vop_rk3288.h>
#include <dm/device-internal.h>
#include <dm/uclass-internal.h>
+#include <linux/bitops.h>
#include <linux/err.h>
#include <power/regulator.h>
#include "rk_vop.h"
diff --git a/drivers/video/stm32/stm32_dsi.c b/drivers/video/stm32/stm32_dsi.c
index fa4efdb2987..04796435f11 100644
--- a/drivers/video/stm32/stm32_dsi.c
+++ b/drivers/video/stm32/stm32_dsi.c
@@ -23,6 +23,7 @@
#include <dm/device-internal.h>
#include <dm/device_compat.h>
#include <dm/lists.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
#include <power/regulator.h>
diff --git a/drivers/video/stm32/stm32_ltdc.c b/drivers/video/stm32/stm32_ltdc.c
index ff48fd7af92..2f3427a32ee 100644
--- a/drivers/video/stm32/stm32_ltdc.c
+++ b/drivers/video/stm32/stm32_ltdc.c
@@ -18,6 +18,7 @@
#include <asm/arch/gpio.h>
#include <dm/device-internal.h>
#include <dm/device_compat.h>
+#include <linux/bitops.h>
struct stm32_ltdc_priv {
void __iomem *regs;
diff --git a/drivers/video/sunxi/sunxi_de2.c b/drivers/video/sunxi/sunxi_de2.c
index adc8a98714f..b657e163f06 100644
--- a/drivers/video/sunxi/sunxi_de2.c
+++ b/drivers/video/sunxi/sunxi_de2.c
@@ -21,6 +21,7 @@
#include <asm/arch/display2.h>
#include <dm/device-internal.h>
#include <dm/uclass-internal.h>
+#include <linux/bitops.h>
#include "simplefb_common.h"
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/video/sunxi/sunxi_dw_hdmi.c b/drivers/video/sunxi/sunxi_dw_hdmi.c
index cf2d6a772be..01d4b7a11c9 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/bitops.h>
#include <linux/delay.h>
struct sunxi_dw_hdmi_priv {
diff --git a/drivers/video/tda19988.c b/drivers/video/tda19988.c
index 4223d5f789b..191cda3ce76 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/bitops.h>
#include <linux/delay.h>
/*
diff --git a/drivers/virtio/virtio_mmio.h b/drivers/virtio/virtio_mmio.h
index b3408828a59..b446674ccce 100644
--- a/drivers/virtio/virtio_mmio.h
+++ b/drivers/virtio/virtio_mmio.h
@@ -12,6 +12,7 @@
/* Control registers */
/* Magic value ("virt" string) - Read Only */
+#include <linux/bitops.h>
#define VIRTIO_MMIO_MAGIC_VALUE 0x000
/* Virtio device version - Read Only */
diff --git a/drivers/w1/mxc_w1.c b/drivers/w1/mxc_w1.c
index 1881a3b1f14..5bf08653a90 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/bitops.h>
#include <linux/delay.h>
#include <linux/io.h>
#include <w1.h>
diff --git a/drivers/watchdog/designware_wdt.c b/drivers/watchdog/designware_wdt.c
index 1024a04596f..12f09a7a392 100644
--- a/drivers/watchdog/designware_wdt.c
+++ b/drivers/watchdog/designware_wdt.c
@@ -10,6 +10,7 @@
#include <wdt.h>
#include <asm/io.h>
#include <asm/utils.h>
+#include <linux/bitops.h>
#define DW_WDT_CR 0x00
#define DW_WDT_TORR 0x04
diff --git a/drivers/watchdog/mt7621_wdt.c b/drivers/watchdog/mt7621_wdt.c
index 38866141e4a..1cd8866ef8d 100644
--- a/drivers/watchdog/mt7621_wdt.c
+++ b/drivers/watchdog/mt7621_wdt.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <dm.h>
#include <wdt.h>
+#include <linux/bitops.h>
#include <linux/io.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/watchdog/mtk_wdt.c b/drivers/watchdog/mtk_wdt.c
index b3c597e1d03..a636cff354d 100644
--- a/drivers/watchdog/mtk_wdt.c
+++ b/drivers/watchdog/mtk_wdt.c
@@ -11,6 +11,7 @@
#include <hang.h>
#include <wdt.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#define MTK_WDT_MODE 0x00
#define MTK_WDT_LENGTH 0x04
diff --git a/drivers/watchdog/orion_wdt.c b/drivers/watchdog/orion_wdt.c
index 581e1f16938..d33e2ac3dc1 100644
--- a/drivers/watchdog/orion_wdt.c
+++ b/drivers/watchdog/orion_wdt.c
@@ -17,6 +17,7 @@
#include <clk.h>
#include <log.h>
#include <wdt.h>
+#include <linux/bitops.h>
#include <linux/kernel.h>
#include <asm/io.h>
#include <asm/arch/cpu.h>
diff --git a/drivers/watchdog/stm32mp_wdt.c b/drivers/watchdog/stm32mp_wdt.c
index 2d509a05224..2d8bfc09a0d 100644
--- a/drivers/watchdog/stm32mp_wdt.c
+++ b/drivers/watchdog/stm32mp_wdt.c
@@ -10,6 +10,7 @@
#include <syscon.h>
#include <wdt.h>
#include <asm/io.h>
+#include <linux/bitops.h>
#include <linux/iopoll.h>
/* IWDG registers */