[RFCv2 13/16] common: Drop linux/types.h from common header

Tom Rini trini at konsulko.com
Wed Aug 19 15:09:05 CEST 2020


From: Simon Glass <sjg at chromium.org>

Move this out of the common header and include it only where needed.

Signed-off-by: Simon Glass <sjg at chromium.org>
---
 api/api_display.c                                             | 1 +
 api/api_private.h                                             | 1 +
 api/api_storage.c                                             | 1 +
 arch/arc/include/asm/sections.h                               | 1 +
 arch/arc/include/asm/u-boot-arc.h                             | 1 +
 arch/arc/lib/bootm.c                                          | 2 ++
 arch/arc/lib/cache.c                                          | 1 +
 arch/arc/lib/cpu.c                                            | 1 +
 arch/arc/lib/relocate.c                                       | 1 +
 arch/arc/lib/reset.c                                          | 2 ++
 arch/arm/cpu/arm1136/mx31/generic.c                           | 1 +
 arch/arm/cpu/arm1136/mx35/generic.c                           | 1 +
 arch/arm/cpu/arm720t/interrupts.c                             | 1 +
 arch/arm/cpu/arm920t/ep93xx/cpu.c                             | 1 +
 arch/arm/cpu/arm920t/ep93xx/led.c                             | 1 +
 arch/arm/cpu/arm920t/ep93xx/speed.c                           | 1 +
 arch/arm/cpu/arm926ejs/armada100/cpu.c                        | 1 +
 arch/arm/cpu/arm926ejs/armada100/dram.c                       | 1 +
 arch/arm/cpu/arm926ejs/armada100/timer.c                      | 1 +
 arch/arm/cpu/arm926ejs/cache.c                                | 1 +
 arch/arm/cpu/arm926ejs/mx25/generic.c                         | 1 +
 arch/arm/cpu/arm926ejs/mx25/reset.c                           | 1 +
 arch/arm/cpu/arm926ejs/mx27/generic.c                         | 1 +
 arch/arm/cpu/arm926ejs/mx27/reset.c                           | 1 +
 arch/arm/cpu/arm926ejs/mx27/timer.c                           | 1 +
 arch/arm/cpu/arm926ejs/mxs/clock.c                            | 1 +
 arch/arm/cpu/arm926ejs/mxs/iomux.c                            | 1 +
 arch/arm/cpu/arm926ejs/mxs/mxs.c                              | 2 ++
 arch/arm/cpu/arm926ejs/mxs/mxs_init.h                         | 1 +
 arch/arm/cpu/arm926ejs/mxs/spl_boot.c                         | 1 +
 arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c                     | 2 ++
 arch/arm/cpu/arm926ejs/mxs/spl_power_init.c                   | 2 ++
 arch/arm/cpu/arm926ejs/mxs/timer.c                            | 1 +
 arch/arm/cpu/arm926ejs/spear/cpu.c                            | 1 +
 arch/arm/cpu/arm926ejs/spear/reset.c                          | 1 +
 arch/arm/cpu/arm926ejs/spear/spear600.c                       | 1 +
 arch/arm/cpu/arm926ejs/spear/spl.c                            | 1 +
 .../cpu/arm926ejs/spear/spr600_mt47h128m8_3_266_cl5_async.c   | 1 +
 .../arm/cpu/arm926ejs/spear/spr600_mt47h32m16_333_cl5_psync.c | 1 +
 .../cpu/arm926ejs/spear/spr600_mt47h32m16_37e_166_cl4_sync.c  | 1 +
 .../cpu/arm926ejs/spear/spr600_mt47h64m16_3_333_cl5_psync.c   | 1 +
 arch/arm/cpu/arm926ejs/spear/spr_misc.c                       | 1 +
 arch/arm/cpu/arm926ejs/spear/timer.c                          | 1 +
 arch/arm/cpu/arm946es/cpu.c                                   | 1 +
 arch/arm/cpu/armv7/arch_timer.c                               | 1 +
 arch/arm/cpu/armv7/bcm235xx/clk-bsc.c                         | 1 +
 arch/arm/cpu/armv7/bcm235xx/clk-core.c                        | 2 ++
 arch/arm/cpu/armv7/bcm235xx/clk-core.h                        | 1 +
 arch/arm/cpu/armv7/bcm235xx/clk-sdio.c                        | 1 +
 arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c                     | 1 +
 arch/arm/cpu/armv7/bcm281xx/clk-bsc.c                         | 1 +
 arch/arm/cpu/armv7/bcm281xx/clk-core.c                        | 2 ++
 arch/arm/cpu/armv7/bcm281xx/clk-core.h                        | 1 +
 arch/arm/cpu/armv7/bcm281xx/clk-sdio.c                        | 1 +
 arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c                     | 1 +
 arch/arm/cpu/armv7/bcm281xx/reset.c                           | 1 +
 arch/arm/cpu/armv7/bcmcygnus/reset.c                          | 1 +
 arch/arm/cpu/armv7/bcmnsp/reset.c                             | 1 +
 arch/arm/cpu/armv7/cache_v7.c                                 | 1 +
 arch/arm/cpu/armv7/cp15.c                                     | 2 ++
 arch/arm/cpu/armv7/cpu.c                                      | 1 +
 arch/arm/cpu/armv7/exception_level.c                          | 1 +
 arch/arm/cpu/armv7/iproc-common/armpll.c                      | 1 +
 arch/arm/cpu/armv7/iproc-common/timer.c                       | 1 +
 arch/arm/cpu/armv7/kona-common/clk-stubs.c                    | 1 +
 arch/arm/cpu/armv7/ls102xa/clock.c                            | 2 ++
 arch/arm/cpu/armv7/ls102xa/cpu.c                              | 2 ++
 arch/arm/cpu/armv7/ls102xa/fdt.c                              | 2 ++
 arch/arm/cpu/armv7/ls102xa/fsl_epu.c                          | 1 +
 arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c                   | 2 ++
 arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.h                   | 1 +
 arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c                     | 2 ++
 arch/arm/cpu/armv7/ls102xa/ls102xa_serdes.c                   | 1 +
 arch/arm/cpu/armv7/ls102xa/soc.c                              | 2 ++
 arch/arm/cpu/armv7/ls102xa/spl.c                              | 1 +
 arch/arm/cpu/armv7/ls102xa/timer.c                            | 1 +
 arch/arm/cpu/armv7/mpu_v7r.c                                  | 1 +
 arch/arm/cpu/armv7/psci-common.c                              | 1 +
 arch/arm/cpu/armv7/s5p-common/cpu_info.c                      | 1 +
 arch/arm/cpu/armv7/s5p-common/pwm.c                           | 1 +
 arch/arm/cpu/armv7/s5p-common/sromc.c                         | 1 +
 arch/arm/cpu/armv7/s5p-common/timer.c                         | 1 +
 arch/arm/cpu/armv7/s5p4418/cpu.c                              | 1 +
 arch/arm/cpu/armv7/stv0991/reset.c                            | 1 +
 arch/arm/cpu/armv7/stv0991/timer.c                            | 1 +
 arch/arm/cpu/armv7/sunxi/psci.c                               | 1 +
 arch/arm/cpu/armv7/sunxi/timer.c                              | 1 +
 arch/arm/cpu/armv7/syslib.c                                   | 1 +
 arch/arm/cpu/armv7/vf610/generic.c                            | 2 ++
 arch/arm/cpu/armv7/vf610/timer.c                              | 1 +
 arch/arm/cpu/armv7/virt-v7.c                                  | 2 ++
 arch/arm/cpu/armv7m/cache.c                                   | 1 +
 arch/arm/cpu/armv7m/cpu.c                                     | 1 +
 arch/arm/cpu/armv7m/mpu.c                                     | 1 +
 arch/arm/cpu/armv7m/systick-timer.c                           | 1 +
 arch/arm/cpu/armv8/cache_v8.c                                 | 3 +++
 arch/arm/cpu/armv8/cpu.c                                      | 2 ++
 arch/arm/cpu/armv8/exception_level.c                          | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/cpu.c                       | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/cpu.h                       | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/fdt.c                       | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c          | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c           | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c          | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c           | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/icid.c                      | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/ls1012a_serdes.c            | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/ls1028_ids.c                | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/ls1028a_serdes.c            | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/ls1043a_serdes.c            | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/ls1046a_serdes.c            | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/ls1088a_serdes.c            | 3 +++
 arch/arm/cpu/armv8/fsl-layerscape/ls2080a_serdes.c            | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/lx2160a_serdes.c            | 1 +
 arch/arm/cpu/armv8/fsl-layerscape/mp.c                        | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/ppa.c                       | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/soc.c                       | 2 ++
 arch/arm/cpu/armv8/fsl-layerscape/spl.c                       | 2 ++
 arch/arm/cpu/armv8/fwcall.c                                   | 1 +
 arch/arm/cpu/armv8/generic_timer.c                            | 1 +
 arch/arm/cpu/armv8/hisilicon/pinmux.c                         | 1 +
 arch/arm/cpu/armv8/s32v234/cpu.c                              | 1 +
 arch/arm/cpu/armv8/s32v234/cpu.h                              | 1 +
 arch/arm/cpu/armv8/s32v234/generic.c                          | 1 +
 arch/arm/cpu/armv8/sec_firmware.c                             | 3 +++
 arch/arm/cpu/armv8/spl_data.c                                 | 1 +
 arch/arm/cpu/pxa/cache.c                                      | 1 +
 arch/arm/cpu/pxa/cpuinfo.c                                    | 1 +
 arch/arm/cpu/pxa/pxa2xx.c                                     | 1 +
 arch/arm/cpu/sa1100/cpu.c                                     | 1 +
 arch/arm/cpu/sa1100/timer.c                                   | 1 +
 arch/arm/include/asm/arch-am33xx/clk_synthesizer.h            | 1 +
 arch/arm/include/asm/arch-am33xx/clock.h                      | 1 +
 arch/arm/include/asm/arch-am33xx/ddr_defs.h                   | 1 +
 arch/arm/include/asm/arch-am33xx/sys_proto.h                  | 1 +
 arch/arm/include/asm/arch-armada100/cpu.h                     | 1 +
 arch/arm/include/asm/arch-armada100/spi.h                     | 1 +
 arch/arm/include/asm/arch-armada100/utmi-armada100.h          | 1 +
 arch/arm/include/asm/arch-armv7/globaltimer.h                 | 1 +
 arch/arm/include/asm/arch-armv7/sysctrl.h                     | 1 +
 arch/arm/include/asm/arch-armv7/systimer.h                    | 1 +
 arch/arm/include/asm/arch-armv7/wdt.h                         | 1 +
 arch/arm/include/asm/arch-aspeed/scu_ast2500.h                | 1 +
 arch/arm/include/asm/arch-aspeed/sdram_ast2500.h              | 1 +
 arch/arm/include/asm/arch-aspeed/timer.h                      | 1 +
 arch/arm/include/asm/arch-aspeed/wdt.h                        | 1 +
 arch/arm/include/asm/arch-ep93xx/ep93xx.h                     | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/clock.h              | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/cpu.h                | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/fsl_portals.h        | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/fsl_serdes.h         | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/gpio.h               | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/immap_lsch2.h        | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h        | 1 +
 arch/arm/include/asm/arch-fsl-layerscape/mp.h                 | 1 +
 arch/arm/include/asm/arch-hi6220/dwmmc.h                      | 1 +
 arch/arm/include/asm/arch-hi6220/gpio.h                       | 1 +
 arch/arm/include/asm/arch-hi6220/hi6220_regs_alwayson.h       | 1 +
 arch/arm/include/asm/arch-hi6220/pinmux.h                     | 1 +
 arch/arm/include/asm/arch-imx/cpu.h                           | 1 +
 arch/arm/include/asm/arch-imx8/clock.h                        | 1 +
 arch/arm/include/asm/arch-imx8/gpio.h                         | 1 +
 arch/arm/include/asm/arch-imx8/image.h                        | 1 +
 arch/arm/include/asm/arch-imx8/iomux.h                        | 1 +
 arch/arm/include/asm/arch-imx8/sci/rpc.h                      | 1 +
 arch/arm/include/asm/arch-imx8/sci/sci.h                      | 1 +
 arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h             | 1 +
 arch/arm/include/asm/arch-imx8/sci/svc/pm/api.h               | 1 +
 arch/arm/include/asm/arch-imx8/sci/svc/rm/api.h               | 1 +
 arch/arm/include/asm/arch-imx8/sci/svc/seco/api.h             | 1 +
 arch/arm/include/asm/arch-imx8m/clock.h                       | 1 +
 arch/arm/include/asm/arch-imx8m/clock_imx8mm.h                | 1 +
 arch/arm/include/asm/arch-imx8m/ddr.h                         | 1 +
 arch/arm/include/asm/arch-imxrt/gpio.h                        | 1 +
 arch/arm/include/asm/arch-lpc32xx/dma.h                       | 1 +
 arch/arm/include/asm/arch-lpc32xx/gpio.h                      | 1 +
 arch/arm/include/asm/arch-lpc32xx/i2c.h                       | 1 +
 arch/arm/include/asm/arch-lpc32xx/mux.h                       | 1 +
 arch/arm/include/asm/arch-ls102xa/clock.h                     | 1 +
 arch/arm/include/asm/arch-ls102xa/fsl_serdes.h                | 1 +
 arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h             | 1 +
 arch/arm/include/asm/arch-ls102xa/ls102xa_stream_id.h         | 1 +
 arch/arm/include/asm/arch-mediatek/reset.h                    | 2 ++
 arch/arm/include/asm/arch-meson/clock-gx.h                    | 1 +
 arch/arm/include/asm/arch-meson/sm.h                          | 1 +
 arch/arm/include/asm/arch-mvebu/spi.h                         | 1 +
 arch/arm/include/asm/arch-mx27/gpio.h                         | 1 +
 arch/arm/include/asm/arch-mx27/imx-regs.h                     | 1 +
 arch/arm/include/asm/arch-mx27/regs-rtc.h                     | 1 +
 arch/arm/include/asm/arch-mx31/clock.h                        | 1 +
 arch/arm/include/asm/arch-mx31/sys_proto.h                    | 1 +
 arch/arm/include/asm/arch-mx35/clock.h                        | 1 +
 arch/arm/include/asm/arch-mx35/sys_proto.h                    | 1 +
 arch/arm/include/asm/arch-mx5/clock.h                         | 1 +
 arch/arm/include/asm/arch-mx5/crm_regs.h                      | 1 +
 arch/arm/include/asm/arch-mx6/crm_regs.h                      | 1 +
 arch/arm/include/asm/arch-mx6/mx6-ddr.h                       | 1 +
 arch/arm/include/asm/arch-mx6/mxc_hdmi.h                      | 1 +
 arch/arm/include/asm/arch-mx6/sys_proto.h                     | 1 +
 arch/arm/include/asm/arch-mx7/clock.h                         | 1 +
 arch/arm/include/asm/arch-mx7/clock_slice.h                   | 1 +
 arch/arm/include/asm/arch-mx7/crm_regs.h                      | 1 +
 arch/arm/include/asm/arch-mx7/imx-regs.h                      | 1 +
 arch/arm/include/asm/arch-mx7/mx7-ddr.h                       | 1 +
 arch/arm/include/asm/arch-mx7ulp/clock.h                      | 1 +
 arch/arm/include/asm/arch-mx7ulp/gpio.h                       | 1 +
 arch/arm/include/asm/arch-mx7ulp/pcc.h                        | 1 +
 arch/arm/include/asm/arch-mx7ulp/scg.h                        | 1 +
 arch/arm/include/asm/arch-mxs/clock.h                         | 1 +
 arch/arm/include/asm/arch-mxs/regs-clkctrl-mx23.h             | 1 +
 arch/arm/include/asm/arch-mxs/regs-clkctrl-mx28.h             | 1 +
 arch/arm/include/asm/arch-mxs/regs-digctl.h                   | 1 +
 arch/arm/include/asm/arch-mxs/regs-pinctrl.h                  | 1 +
 arch/arm/include/asm/arch-mxs/regs-power-mx23.h               | 1 +
 arch/arm/include/asm/arch-mxs/regs-power-mx28.h               | 1 +
 arch/arm/include/asm/arch-mxs/regs-ssp.h                      | 1 +
 arch/arm/include/asm/arch-mxs/regs-usb.h                      | 1 +
 arch/arm/include/asm/arch-mxs/sys_proto.h                     | 1 +
 arch/arm/include/asm/arch-omap3/dma.h                         | 1 +
 arch/arm/include/asm/arch-omap3/dss.h                         | 1 +
 arch/arm/include/asm/arch-omap3/mem.h                         | 1 +
 arch/arm/include/asm/arch-omap3/musb.h                        | 1 +
 arch/arm/include/asm/arch-omap3/sys_proto.h                   | 1 +
 arch/arm/include/asm/arch-omap4/clock.h                       | 1 +
 arch/arm/include/asm/arch-omap4/sys_proto.h                   | 1 +
 arch/arm/include/asm/arch-omap5/dra7xx_iodelay.h              | 1 +
 arch/arm/include/asm/arch-omap5/sys_proto.h                   | 1 +
 arch/arm/include/asm/arch-pxa/pxa.h                           | 1 +
 arch/arm/include/asm/arch-pxa/regs-mmc.h                      | 1 +
 arch/arm/include/asm/arch-pxa/regs-uart.h                     | 1 +
 arch/arm/include/asm/arch-pxa/regs-usb.h                      | 1 +
 arch/arm/include/asm/arch-rk3308/cru_rk3308.h                 | 1 +
 arch/arm/include/asm/arch-rockchip/bootrom.h                  | 1 +
 arch/arm/include/asm/arch-rockchip/clock.h                    | 2 ++
 arch/arm/include/asm/arch-rockchip/cpu_rk3288.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_px30.h                 | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rk3036.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rk3128.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rk3188.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rk322x.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rk3288.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rk3328.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rk3399.h               | 1 +
 arch/arm/include/asm/arch-rockchip/cru_rv1108.h               | 1 +
 arch/arm/include/asm/arch-rockchip/ddr_rk3188.h               | 1 +
 arch/arm/include/asm/arch-rockchip/ddr_rk3288.h               | 1 +
 arch/arm/include/asm/arch-rockchip/ddr_rk3368.h               | 1 +
 arch/arm/include/asm/arch-rockchip/edp_rk3288.h               | 1 +
 arch/arm/include/asm/arch-rockchip/f_rockusb.h                | 1 +
 arch/arm/include/asm/arch-rockchip/gpio.h                     | 1 +
 arch/arm/include/asm/arch-rockchip/grf_rk3188.h               | 1 +
 arch/arm/include/asm/arch-rockchip/grf_rk3288.h               | 1 +
 arch/arm/include/asm/arch-rockchip/grf_rk3328.h               | 1 +
 arch/arm/include/asm/arch-rockchip/grf_rk3368.h               | 1 +
 arch/arm/include/asm/arch-rockchip/grf_rk3399.h               | 1 +
 arch/arm/include/asm/arch-rockchip/grf_rv1108.h               | 1 +
 arch/arm/include/asm/arch-rockchip/i2c.h                      | 1 +
 arch/arm/include/asm/arch-rockchip/misc.h                     | 1 +
 arch/arm/include/asm/arch-rockchip/pmu_rk3188.h               | 1 +
 arch/arm/include/asm/arch-rockchip/pmu_rk3288.h               | 1 +
 arch/arm/include/asm/arch-rockchip/pmu_rk3399.h               | 1 +
 arch/arm/include/asm/arch-rockchip/sdram.h                    | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_common.h             | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_msch.h               | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_pctl_px30.h          | 2 ++
 arch/arm/include/asm/arch-rockchip/sdram_phy_px30.h           | 2 ++
 arch/arm/include/asm/arch-rockchip/sdram_px30.h               | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_rk3036.h             | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_rk322x.h             | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_rk3288.h             | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_rk3328.h             | 1 +
 arch/arm/include/asm/arch-rockchip/sdram_rk3399.h             | 1 +
 arch/arm/include/asm/arch-rockchip/timer.h                    | 1 +
 arch/arm/include/asm/arch-rockchip/vop_rk3288.h               | 1 +
 arch/arm/include/asm/arch-s32v234/lpddr2.h                    | 1 +
 arch/arm/include/asm/arch-spear/gpio.h                        | 1 +
 arch/arm/include/asm/arch-spear/spr_defs.h                    | 1 +
 arch/arm/include/asm/arch-spear/spr_emi.h                     | 1 +
 arch/arm/include/asm/arch-spear/spr_gpt.h                     | 1 +
 arch/arm/include/asm/arch-spear/spr_misc.h                    | 1 +
 arch/arm/include/asm/arch-spear/spr_ssp.h                     | 1 +
 arch/arm/include/asm/arch-spear/spr_syscntl.h                 | 1 +
 arch/arm/include/asm/arch-stm32/gpio.h                        | 1 +
 arch/arm/include/asm/arch-stm32f4/stm32.h                     | 1 +
 arch/arm/include/asm/arch-stm32f4/stm32_pwr.h                 | 1 +
 arch/arm/include/asm/arch-stm32f7/stm32.h                     | 1 +
 arch/arm/include/asm/arch-stm32f7/stm32_pwr.h                 | 1 +
 arch/arm/include/asm/arch-stm32f7/syscfg.h                    | 1 +
 arch/arm/include/asm/arch-stv0991/gpio.h                      | 1 +
 arch/arm/include/asm/arch-stv0991/stv0991_cgu.h               | 1 +
 arch/arm/include/asm/arch-stv0991/stv0991_creg.h              | 1 +
 arch/arm/include/asm/arch-stv0991/stv0991_gpt.h               | 1 +
 arch/arm/include/asm/arch-stv0991/stv0991_wdru.h              | 1 +
 arch/arm/include/asm/arch-sunxi/ccu.h                         | 1 +
 arch/arm/include/asm/arch-sunxi/clock_sun4i.h                 | 1 +
 arch/arm/include/asm/arch-sunxi/clock_sun50i_h6.h             | 1 +
 arch/arm/include/asm/arch-sunxi/clock_sun6i.h                 | 1 +
 arch/arm/include/asm/arch-sunxi/clock_sun8i_a83t.h            | 1 +
 arch/arm/include/asm/arch-sunxi/clock_sun9i.h                 | 1 +
 arch/arm/include/asm/arch-sunxi/cpucfg.h                      | 1 +
 arch/arm/include/asm/arch-sunxi/display.h                     | 1 +
 arch/arm/include/asm/arch-sunxi/display2.h                    | 1 +
 arch/arm/include/asm/arch-sunxi/dma_sun4i.h                   | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sun4i.h                  | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sun50i_h6.h              | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sun6i.h                  | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sun8i_a23.h              | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sun8i_a33.h              | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sun8i_a83t.h             | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sun9i.h                  | 1 +
 arch/arm/include/asm/arch-sunxi/dram_sunxi_dw.h               | 1 +
 arch/arm/include/asm/arch-sunxi/lcdc.h                        | 1 +
 arch/arm/include/asm/arch-sunxi/prcm.h                        | 1 +
 arch/arm/include/asm/arch-sunxi/pwm.h                         | 1 +
 arch/arm/include/asm/arch-sunxi/rsb.h                         | 1 +
 arch/arm/include/asm/arch-sunxi/spl.h                         | 1 +
 arch/arm/include/asm/arch-sunxi/tve.h                         | 1 +
 arch/arm/include/asm/arch-sunxi/tzpc.h                        | 1 +
 arch/arm/include/asm/arch-sunxi/watchdog.h                    | 1 +
 arch/arm/include/asm/arch-tegra/apb_misc.h                    | 1 +
 arch/arm/include/asm/arch-tegra/bpmp_abi.h                    | 1 +
 arch/arm/include/asm/arch-tegra/cboot.h                       | 1 +
 arch/arm/include/asm/arch-tegra/clk_rst.h                     | 1 +
 arch/arm/include/asm/arch-tegra/clock.h                       | 1 +
 arch/arm/include/asm/arch-tegra/dc.h                          | 1 +
 arch/arm/include/asm/arch-tegra/fuse.h                        | 1 +
 arch/arm/include/asm/arch-tegra/gpio.h                        | 1 +
 arch/arm/include/asm/arch-tegra/ivc.h                         | 1 +
 arch/arm/include/asm/arch-tegra/pmc.h                         | 1 +
 arch/arm/include/asm/arch-tegra/pwm.h                         | 1 +
 arch/arm/include/asm/arch-tegra/scu.h                         | 1 +
 arch/arm/include/asm/arch-tegra/tegra_ahub.h                  | 1 +
 arch/arm/include/asm/arch-tegra/tegra_i2s.h                   | 1 +
 arch/arm/include/asm/arch-tegra/uart.h                        | 1 +
 arch/arm/include/asm/arch-tegra/usb.h                         | 1 +
 arch/arm/include/asm/arch-tegra/warmboot.h                    | 1 +
 arch/arm/include/asm/arch-tegra114/flow.h                     | 1 +
 arch/arm/include/asm/arch-tegra114/gp_padctrl.h               | 1 +
 arch/arm/include/asm/arch-tegra114/mc.h                       | 1 +
 arch/arm/include/asm/arch-tegra114/sysctr.h                   | 1 +
 arch/arm/include/asm/arch-tegra124/ahb.h                      | 1 +
 arch/arm/include/asm/arch-tegra124/clock.h                    | 1 +
 arch/arm/include/asm/arch-tegra124/flow.h                     | 1 +
 arch/arm/include/asm/arch-tegra124/gp_padctrl.h               | 1 +
 arch/arm/include/asm/arch-tegra124/gpio.h                     | 1 +
 arch/arm/include/asm/arch-tegra124/mc.h                       | 1 +
 arch/arm/include/asm/arch-tegra124/sysctr.h                   | 1 +
 arch/arm/include/asm/arch-tegra20/display.h                   | 1 +
 arch/arm/include/asm/arch-tegra20/flow.h                      | 1 +
 arch/arm/include/asm/arch-tegra20/gp_padctrl.h                | 1 +
 arch/arm/include/asm/arch-tegra20/gpio.h                      | 1 +
 arch/arm/include/asm/arch-tegra20/mc.h                        | 1 +
 arch/arm/include/asm/arch-tegra20/sdram_param.h               | 1 +
 arch/arm/include/asm/arch-tegra210/ahb.h                      | 1 +
 arch/arm/include/asm/arch-tegra210/flow.h                     | 1 +
 arch/arm/include/asm/arch-tegra210/gp_padctrl.h               | 1 +
 arch/arm/include/asm/arch-tegra210/gpio.h                     | 1 +
 arch/arm/include/asm/arch-tegra210/mc.h                       | 1 +
 arch/arm/include/asm/arch-tegra210/sysctr.h                   | 1 +
 arch/arm/include/asm/arch-tegra30/flow.h                      | 1 +
 arch/arm/include/asm/arch-tegra30/gp_padctrl.h                | 1 +
 arch/arm/include/asm/arch-tegra30/gpio.h                      | 1 +
 arch/arm/include/asm/arch-tegra30/mc.h                        | 1 +
 arch/arm/include/asm/arch-vf610/clock.h                       | 1 +
 arch/arm/include/asm/arch-vf610/ddrmc-vf610.h                 | 1 +
 arch/arm/include/asm/arch-vf610/gpio.h                        | 1 +
 arch/arm/include/asm/armv7_mpu.h                              | 1 +
 arch/arm/include/asm/armv7m.h                                 | 1 +
 arch/arm/include/asm/armv8/mmu.h                              | 2 ++
 arch/arm/include/asm/armv8/sec_firmware.h                     | 1 +
 arch/arm/include/asm/bootm.h                                  | 1 +
 arch/arm/include/asm/ehci-omap.h                              | 1 +
 arch/arm/include/asm/handoff.h                                | 1 +
 arch/arm/include/asm/io.h                                     | 1 +
 arch/arm/include/asm/iproc-common/iproc_sdhci.h               | 1 +
 arch/arm/include/asm/kona-common/kona_sdhci.h                 | 1 +
 arch/arm/include/asm/mach-imx/dma.h                           | 1 +
 arch/arm/include/asm/mach-imx/gpio.h                          | 1 +
 arch/arm/include/asm/mach-imx/hab.h                           | 1 +
 arch/arm/include/asm/mach-imx/imx-nandbcb.h                   | 1 +
 arch/arm/include/asm/mach-imx/module_fuse.h                   | 1 +
 arch/arm/include/asm/mach-imx/mxc_i2c.h                       | 1 +
 arch/arm/include/asm/mach-imx/rdc-sema.h                      | 1 +
 arch/arm/include/asm/mach-imx/regs-apbh.h                     | 1 +
 arch/arm/include/asm/mach-imx/regs-bch.h                      | 1 +
 arch/arm/include/asm/mach-imx/regs-gpmi.h                     | 1 +
 arch/arm/include/asm/mach-imx/regs-lcdif.h                    | 1 +
 arch/arm/include/asm/mach-imx/sys_proto.h                     | 1 +
 arch/arm/include/asm/mach-imx/syscounter.h                    | 1 +
 arch/arm/include/asm/mach-imx/video.h                         | 1 +
 arch/arm/include/asm/omap_gpio.h                              | 1 +
 arch/arm/include/asm/omap_i2c.h                               | 1 +
 arch/arm/include/asm/omap_mmc.h                               | 1 +
 arch/arm/include/asm/omap_musb.h                              | 1 +
 arch/arm/include/asm/omap_sec_common.h                        | 1 +
 arch/arm/include/asm/secure.h                                 | 1 +
 arch/arm/include/asm/setjmp.h                                 | 1 +
 arch/arm/include/asm/setup.h                                  | 1 +
 arch/arm/include/asm/system.h                                 | 1 +
 arch/arm/include/asm/ti-common/davinci_nand.h                 | 1 +
 arch/arm/include/asm/ti-common/keystone_nav.h                 | 1 +
 arch/arm/include/asm/ti-common/keystone_net.h                 | 1 +
 arch/arm/include/asm/ti-common/keystone_serdes.h              | 1 +
 arch/arm/include/asm/ti-common/sys_proto.h                    | 1 +
 arch/arm/include/asm/ti-common/ti-edma3.h                     | 2 ++
 arch/arm/include/asm/u-boot-arm.h                             | 1 +
 arch/arm/include/asm/utils.h                                  | 1 +
 arch/arm/lib/bootm-fdt.c                                      | 1 +
 arch/arm/lib/bootm.c                                          | 2 ++
 arch/arm/lib/cache-cp15.c                                     | 2 ++
 arch/arm/lib/cache.c                                          | 2 ++
 arch/arm/lib/cmd_boot.c                                       | 1 +
 arch/arm/lib/eabi_compat.c                                    | 1 +
 arch/arm/lib/gic-v3-its.c                                     | 1 +
 arch/arm/lib/image.c                                          | 2 ++
 arch/arm/lib/interrupts.c                                     | 1 +
 arch/arm/lib/interrupts_64.c                                  | 2 ++
 arch/arm/lib/reloc_aarch64_efi.c                              | 1 +
 arch/arm/lib/reloc_arm_efi.c                                  | 1 +
 arch/arm/lib/reset.c                                          | 1 +
 arch/arm/lib/semihosting.c                                    | 1 +
 arch/arm/lib/spl.c                                            | 2 ++
 arch/arm/lib/zimage.c                                         | 2 ++
 arch/arm/mach-aspeed/ast2500/sdram_ast2500.c                  | 1 +
 arch/arm/mach-aspeed/ast_wdt.c                                | 1 +
 arch/arm/mach-at91/arm920t/clock.c                            | 1 +
 arch/arm/mach-at91/arm920t/reset.c                            | 1 +
 arch/arm/mach-at91/arm920t/timer.c                            | 1 +
 arch/arm/mach-at91/arm926ejs/clock.c                          | 1 +
 arch/arm/mach-at91/arm926ejs/cpu.c                            | 1 +
 arch/arm/mach-at91/arm926ejs/eflash.c                         | 1 +
 arch/arm/mach-at91/arm926ejs/reset.c                          | 1 +
 arch/arm/mach-at91/arm926ejs/timer.c                          | 1 +
 arch/arm/mach-at91/armv7/clock.c                              | 1 +
 arch/arm/mach-at91/armv7/cpu.c                                | 1 +
 arch/arm/mach-at91/armv7/reset.c                              | 1 +
 arch/arm/mach-at91/armv7/timer.c                              | 1 +
 arch/arm/mach-at91/atmel_sfr.c                                | 1 +
 arch/arm/mach-at91/clock.c                                    | 1 +
 arch/arm/mach-at91/include/mach/at91_common.h                 | 1 +
 arch/arm/mach-at91/include/mach/at91_dbu.h                    | 1 +
 arch/arm/mach-at91/include/mach/at91_eefc.h                   | 1 +
 arch/arm/mach-at91/include/mach/at91_emac.h                   | 1 +
 arch/arm/mach-at91/include/mach/at91_gpbr.h                   | 1 +
 arch/arm/mach-at91/include/mach/at91_matrix.h                 | 1 +
 arch/arm/mach-at91/include/mach/at91_mc.h                     | 1 +
 arch/arm/mach-at91/include/mach/at91_pdc.h                    | 1 +
 arch/arm/mach-at91/include/mach/at91_pio.h                    | 1 +
 arch/arm/mach-at91/include/mach/at91_pit.h                    | 1 +
 arch/arm/mach-at91/include/mach/at91_rstc.h                   | 1 +
 arch/arm/mach-at91/include/mach/at91_rtt.h                    | 1 +
 arch/arm/mach-at91/include/mach/at91_sfr.h                    | 1 +
 arch/arm/mach-at91/include/mach/at91_spi.h                    | 1 +
 arch/arm/mach-at91/include/mach/at91_st.h                     | 1 +
 arch/arm/mach-at91/include/mach/at91_tc.h                     | 1 +
 arch/arm/mach-at91/include/mach/at91_wdt.h                    | 2 ++
 arch/arm/mach-at91/include/mach/at91sam9260_matrix.h          | 1 +
 arch/arm/mach-at91/include/mach/at91sam9261_matrix.h          | 1 +
 arch/arm/mach-at91/include/mach/at91sam9263_matrix.h          | 1 +
 arch/arm/mach-at91/include/mach/at91sam9_sdramc.h             | 1 +
 arch/arm/mach-at91/include/mach/at91sam9_smc.h                | 1 +
 arch/arm/mach-at91/include/mach/at91sam9g45_matrix.h          | 1 +
 arch/arm/mach-at91/include/mach/at91sam9rl_matrix.h           | 1 +
 arch/arm/mach-at91/include/mach/at91sam9x5_matrix.h           | 1 +
 arch/arm/mach-at91/include/mach/atmel_mpddrc.h                | 1 +
 arch/arm/mach-at91/include/mach/atmel_pio4.h                  | 1 +
 arch/arm/mach-at91/include/mach/atmel_sdhci.h                 | 1 +
 arch/arm/mach-at91/include/mach/atmel_serial.h                | 1 +
 arch/arm/mach-at91/include/mach/clk.h                         | 1 +
 arch/arm/mach-at91/include/mach/gpio.h                        | 1 +
 arch/arm/mach-at91/include/mach/sama5_matrix.h                | 1 +
 arch/arm/mach-at91/include/mach/sama5d2_smc.h                 | 1 +
 arch/arm/mach-at91/include/mach/sama5d3_smc.h                 | 1 +
 arch/arm/mach-at91/mpddrc.c                                   | 1 +
 arch/arm/mach-at91/spl.c                                      | 1 +
 arch/arm/mach-at91/spl_at91.c                                 | 2 ++
 arch/arm/mach-at91/spl_atmel.c                                | 2 ++
 arch/arm/mach-bcm283x/include/mach/gpio.h                     | 1 +
 arch/arm/mach-bcm283x/include/mach/mbox.h                     | 2 ++
 arch/arm/mach-bcm283x/include/mach/msg.h                      | 1 +
 arch/arm/mach-bcm283x/include/mach/sdhci.h                    | 1 +
 arch/arm/mach-bcm283x/include/mach/wdog.h                     | 1 +
 arch/arm/mach-bcm283x/init.c                                  | 1 +
 arch/arm/mach-bcm283x/mbox.c                                  | 1 +
 arch/arm/mach-bcm283x/msg.c                                   | 1 +
 arch/arm/mach-bcm283x/reset.c                                 | 1 +
 arch/arm/mach-bcmstb/include/mach/timer.h                     | 1 +
 arch/arm/mach-davinci/include/mach/davinci_misc.h             | 1 +
 arch/arm/mach-davinci/include/mach/dm365_lowlevel.h           | 1 +
 arch/arm/mach-davinci/include/mach/sdmmc_defs.h               | 1 +
 arch/arm/mach-davinci/include/mach/timer_defs.h               | 1 +
 arch/arm/mach-davinci/misc.c                                  | 1 +
 arch/arm/mach-davinci/spl.c                                   | 1 +
 arch/arm/mach-davinci/timer.c                                 | 1 +
 arch/arm/mach-exynos/clock.c                                  | 1 +
 arch/arm/mach-exynos/clock_init.h                             | 1 +
 arch/arm/mach-exynos/clock_init_exynos5.c                     | 1 +
 arch/arm/mach-exynos/common_setup.h                           | 1 +
 arch/arm/mach-exynos/dmc_common.c                             | 1 +
 arch/arm/mach-exynos/dmc_init_ddr3.c                          | 1 +
 arch/arm/mach-exynos/exynos5_setup.h                          | 1 +
 arch/arm/mach-exynos/include/mach/mmc.h                       | 1 +
 arch/arm/mach-exynos/include/mach/power.h                     | 1 +
 arch/arm/mach-exynos/include/mach/spl.h                       | 2 ++
 arch/arm/mach-exynos/include/mach/sromc.h                     | 1 +
 arch/arm/mach-exynos/include/mach/sys_proto.h                 | 1 +
 arch/arm/mach-exynos/include/mach/tmu.h                       | 1 +
 arch/arm/mach-exynos/lowlevel_init.c                          | 1 +
 arch/arm/mach-exynos/pinmux.c                                 | 1 +
 arch/arm/mach-exynos/power.c                                  | 1 +
 arch/arm/mach-exynos/soc.c                                    | 1 +
 arch/arm/mach-exynos/spl_boot.c                               | 1 +
 arch/arm/mach-imx/cache.c                                     | 1 +
 arch/arm/mach-imx/cmd_dek.c                                   | 1 +
 arch/arm/mach-imx/cmd_nandbcb.c                               | 2 ++
 arch/arm/mach-imx/cpu.c                                       | 1 +
 arch/arm/mach-imx/ddrmc-vf610-calibration.c                   | 1 +
 arch/arm/mach-imx/hab.c                                       | 1 +
 arch/arm/mach-imx/i2c-mxv7.c                                  | 1 +
 arch/arm/mach-imx/imx8/ahab.c                                 | 2 ++
 arch/arm/mach-imx/imx8/clock.c                                | 1 +
 arch/arm/mach-imx/imx8/cpu.c                                  | 3 +++
 arch/arm/mach-imx/imx8/fdt.c                                  | 1 +
 arch/arm/mach-imx/imx8/image.c                                | 1 +
 arch/arm/mach-imx/imx8/iomux.c                                | 1 +
 arch/arm/mach-imx/imx8/misc.c                                 | 1 +
 arch/arm/mach-imx/imx8/parse-container.c                      | 1 +
 arch/arm/mach-imx/imx8/snvs_security_sc.c                     | 1 +
 arch/arm/mach-imx/imx8m/clock_imx8mm.c                        | 2 ++
 arch/arm/mach-imx/imx8m/clock_imx8mq.c                        | 2 ++
 arch/arm/mach-imx/imx8m/clock_slice.c                         | 3 +++
 arch/arm/mach-imx/imx8m/soc.c                                 | 3 +++
 arch/arm/mach-imx/imx_bootaux.c                               | 1 +
 arch/arm/mach-imx/init.c                                      | 1 +
 arch/arm/mach-imx/iomux-v3.c                                  | 1 +
 arch/arm/mach-imx/mac.c                                       | 1 +
 arch/arm/mach-imx/misc.c                                      | 1 +
 arch/arm/mach-imx/mmc_env.c                                   | 2 ++
 arch/arm/mach-imx/mmdc_size.c                                 | 1 +
 arch/arm/mach-imx/mx5/clock.c                                 | 2 ++
 arch/arm/mach-imx/mx5/soc.c                                   | 2 ++
 arch/arm/mach-imx/mx6/clock.c                                 | 2 ++
 arch/arm/mach-imx/mx6/ddr.c                                   | 1 +
 arch/arm/mach-imx/mx6/module_fuse.c                           | 1 +
 arch/arm/mach-imx/mx6/mp.c                                    | 1 +
 arch/arm/mach-imx/mx6/opos6ul.c                               | 2 ++
 arch/arm/mach-imx/mx6/soc.c                                   | 2 ++
 arch/arm/mach-imx/mx7/clock.c                                 | 1 +
 arch/arm/mach-imx/mx7/clock_slice.c                           | 2 ++
 arch/arm/mach-imx/mx7/psci-mx7.c                              | 1 +
 arch/arm/mach-imx/mx7/snvs.c                                  | 1 +
 arch/arm/mach-imx/mx7/soc.c                                   | 3 +++
 arch/arm/mach-imx/mx7ulp/clock.c                              | 1 +
 arch/arm/mach-imx/mx7ulp/iomux.c                              | 1 +
 arch/arm/mach-imx/mx7ulp/pcc.c                                | 2 ++
 arch/arm/mach-imx/mx7ulp/scg.c                                | 1 +
 arch/arm/mach-imx/mx7ulp/soc.c                                | 2 ++
 arch/arm/mach-imx/rdc-sema.c                                  | 1 +
 arch/arm/mach-imx/spl.c                                       | 2 ++
 arch/arm/mach-imx/spl_imx_romapi.c                            | 1 +
 arch/arm/mach-imx/syscounter.c                                | 1 +
 arch/arm/mach-imx/timer.c                                     | 1 +
 arch/arm/mach-ipq40xx/clock-ipq4019.c                         | 1 +
 arch/arm/mach-ipq40xx/pinctrl-snapdragon.c                    | 1 +
 arch/arm/mach-k3/am6_init.c                                   | 1 +
 arch/arm/mach-k3/common.c                                     | 2 ++
 arch/arm/mach-k3/common.h                                     | 1 +
 arch/arm/mach-k3/include/mach/sys_proto.h                     | 1 +
 arch/arm/mach-k3/j721e_init.c                                 | 1 +
 arch/arm/mach-k3/r5_mpu.c                                     | 1 +
 arch/arm/mach-k3/security.c                                   | 1 +
 arch/arm/mach-k3/sysfw-loader.c                               | 1 +
 arch/arm/mach-keystone/clock.c                                | 2 ++
 arch/arm/mach-keystone/cmd_mon.c                              | 1 +
 arch/arm/mach-keystone/ddr3.c                                 | 1 +
 arch/arm/mach-keystone/ddr3_spd.c                             | 1 +
 arch/arm/mach-keystone/include/mach/clock_defs.h              | 1 +
 arch/arm/mach-keystone/include/mach/ddr3.h                    | 1 +
 arch/arm/mach-keystone/include/mach/hardware-k2g.h            | 1 +
 arch/arm/mach-keystone/include/mach/hardware.h                | 1 +
 arch/arm/mach-keystone/include/mach/mon.h                     | 1 +
 arch/arm/mach-keystone/include/mach/msmc.h                    | 1 +
 arch/arm/mach-keystone/include/mach/mux-k2g.h                 | 1 +
 arch/arm/mach-keystone/include/mach/psc_defs.h                | 1 +
 arch/arm/mach-keystone/init.c                                 | 1 +
 arch/arm/mach-keystone/keystone.c                             | 1 +
 arch/arm/mach-keystone/mon.c                                  | 1 +
 arch/arm/mach-keystone/msmc.c                                 | 1 +
 arch/arm/mach-keystone/psc.c                                  | 1 +
 arch/arm/mach-kirkwood/cache.c                                | 1 +
 arch/arm/mach-kirkwood/cpu.c                                  | 1 +
 arch/arm/mach-kirkwood/include/mach/cpu.h                     | 1 +
 arch/arm/mach-kirkwood/mpp.c                                  | 1 +
 arch/arm/mach-lpc32xx/clk.c                                   | 1 +
 arch/arm/mach-lpc32xx/cpu.c                                   | 1 +
 arch/arm/mach-lpc32xx/devices.c                               | 1 +
 arch/arm/mach-lpc32xx/dram.c                                  | 1 +
 arch/arm/mach-lpc32xx/timer.c                                 | 1 +
 arch/arm/mach-mediatek/mt7622/init.c                          | 1 +
 arch/arm/mach-mediatek/mt7623/init.c                          | 2 ++
 arch/arm/mach-mediatek/mt7623/preloader.h                     | 1 +
 arch/arm/mach-mediatek/mt7629/init.c                          | 2 ++
 arch/arm/mach-mediatek/mt8512/init.c                          | 1 +
 arch/arm/mach-mediatek/mt8516/init.c                          | 1 +
 arch/arm/mach-mediatek/mt8518/init.c                          | 1 +
 arch/arm/mach-mediatek/spl.c                                  | 1 +
 arch/arm/mach-meson/board-axg.c                               | 1 +
 arch/arm/mach-meson/board-common.c                            | 2 ++
 arch/arm/mach-meson/board-g12a.c                              | 1 +
 arch/arm/mach-meson/board-gx.c                                | 1 +
 arch/arm/mach-meson/board-info.c                              | 1 +
 arch/arm/mach-meson/sm.c                                      | 1 +
 arch/arm/mach-mvebu/arm64-common.c                            | 2 ++
 arch/arm/mach-mvebu/armada3700/cpu.c                          | 1 +
 arch/arm/mach-mvebu/armada8k/cpu.c                            | 1 +
 arch/arm/mach-mvebu/cpu.c                                     | 2 ++
 arch/arm/mach-mvebu/dram.c                                    | 1 +
 arch/arm/mach-mvebu/efuse.c                                   | 1 +
 arch/arm/mach-mvebu/gpio.c                                    | 1 +
 arch/arm/mach-mvebu/include/mach/cpu.h                        | 1 +
 arch/arm/mach-mvebu/include/mach/efuse.h                      | 1 +
 arch/arm/mach-mvebu/mbus.c                                    | 2 ++
 arch/arm/mach-mvebu/serdes/a38x/ctrl_pex.c                    | 2 ++
 arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec-38x.c     | 1 +
 arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec.c         | 1 +
 arch/arm/mach-mvebu/serdes/a38x/seq_exec.c                    | 1 +
 arch/arm/mach-mvebu/serdes/a38x/seq_exec.h                    | 1 +
 arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c                 | 1 +
 arch/arm/mach-mvebu/serdes/axp/high_speed_env_lib.c           | 2 ++
 arch/arm/mach-mvebu/serdes/axp/high_speed_env_spec.c          | 1 +
 arch/arm/mach-mvebu/spl.c                                     | 1 +
 arch/arm/mach-nexell/clock.c                                  | 2 ++
 arch/arm/mach-nexell/cmd_boot_linux.c                         | 1 +
 arch/arm/mach-nexell/include/mach/display.h                   | 1 +
 arch/arm/mach-nexell/include/mach/display_dev.h               | 1 +
 arch/arm/mach-nexell/include/mach/mipi_display.h              | 1 +
 arch/arm/mach-nexell/include/mach/reset.h                     | 1 +
 arch/arm/mach-nexell/include/mach/sec_reg.h                   | 1 +
 arch/arm/mach-nexell/include/mach/tieoff.h                    | 1 +
 arch/arm/mach-nexell/nx_sec_reg.c                             | 1 +
 arch/arm/mach-nexell/reset.c                                  | 1 +
 arch/arm/mach-nexell/tieoff.c                                 | 2 ++
 arch/arm/mach-nexell/timer.c                                  | 2 ++
 arch/arm/mach-omap2/abb.c                                     | 2 ++
 arch/arm/mach-omap2/am33xx/board.c                            | 2 ++
 arch/arm/mach-omap2/am33xx/clk_synthesizer.c                  | 1 +
 arch/arm/mach-omap2/am33xx/clock.c                            | 2 ++
 arch/arm/mach-omap2/am33xx/clock_am33xx.c                     | 2 ++
 arch/arm/mach-omap2/am33xx/clock_am43xx.c                     | 1 +
 arch/arm/mach-omap2/am33xx/clock_ti814x.c                     | 1 +
 arch/arm/mach-omap2/am33xx/clock_ti816x.c                     | 1 +
 arch/arm/mach-omap2/am33xx/ddr.c                              | 1 +
 arch/arm/mach-omap2/am33xx/emif4.c                            | 1 +
 arch/arm/mach-omap2/am33xx/mux.c                              | 1 +
 arch/arm/mach-omap2/am33xx/sys_info.c                         | 1 +
 arch/arm/mach-omap2/boot-common.c                             | 2 ++
 arch/arm/mach-omap2/clocks-common.c                           | 2 ++
 arch/arm/mach-omap2/emif-common.c                             | 2 ++
 arch/arm/mach-omap2/fdt-common.c                              | 1 +
 arch/arm/mach-omap2/hwinit-common.c                           | 2 ++
 arch/arm/mach-omap2/mem-common.c                              | 1 +
 arch/arm/mach-omap2/omap-cache.c                              | 1 +
 arch/arm/mach-omap2/omap3/am35x_musb.c                        | 3 ++-
 arch/arm/mach-omap2/omap3/board.c                             | 2 ++
 arch/arm/mach-omap2/omap3/boot.c                              | 1 +
 arch/arm/mach-omap2/omap3/clock.c                             | 1 +
 arch/arm/mach-omap2/omap3/emac.c                              | 1 +
 arch/arm/mach-omap2/omap3/emif4.c                             | 1 +
 arch/arm/mach-omap2/omap3/sdrc.c                              | 1 +
 arch/arm/mach-omap2/omap3/sys_info.c                          | 2 ++
 arch/arm/mach-omap2/omap4/boot.c                              | 1 +
 arch/arm/mach-omap2/omap4/emif.c                              | 1 +
 arch/arm/mach-omap2/omap4/hw_data.c                           | 1 +
 arch/arm/mach-omap2/omap4/hwinit.c                            | 1 +
 arch/arm/mach-omap2/omap4/sdram_elpida.c                      | 2 ++
 arch/arm/mach-omap2/omap5/abb.c                               | 1 +
 arch/arm/mach-omap2/omap5/boot.c                              | 1 +
 arch/arm/mach-omap2/omap5/dra7xx_iodelay.c                    | 1 +
 arch/arm/mach-omap2/omap5/emif.c                              | 1 +
 arch/arm/mach-omap2/omap5/fdt.c                               | 1 +
 arch/arm/mach-omap2/omap5/hw_data.c                           | 2 ++
 arch/arm/mach-omap2/omap5/hwinit.c                            | 2 ++
 arch/arm/mach-omap2/omap5/prcm-regs.c                         | 1 +
 arch/arm/mach-omap2/omap5/sdram.c                             | 2 ++
 arch/arm/mach-omap2/pipe3-phy.c                               | 2 ++
 arch/arm/mach-omap2/pipe3-phy.h                               | 2 ++
 arch/arm/mach-omap2/reset.c                                   | 2 ++
 arch/arm/mach-omap2/sata.c                                    | 2 ++
 arch/arm/mach-omap2/sec-common.c                              | 1 +
 arch/arm/mach-omap2/sysinfo-common.c                          | 1 +
 arch/arm/mach-omap2/timer.c                                   | 1 +
 arch/arm/mach-omap2/utils.c                                   | 2 ++
 arch/arm/mach-omap2/vc.c                                      | 1 +
 arch/arm/mach-orion5x/cpu.c                                   | 1 +
 arch/arm/mach-orion5x/dram.c                                  | 1 +
 arch/arm/mach-orion5x/include/mach/cpu.h                      | 1 +
 arch/arm/mach-orion5x/timer.c                                 | 1 +
 arch/arm/mach-owl/soc.c                                       | 1 +
 arch/arm/mach-rmobile/cpu_info-r8a7740.c                      | 1 +
 arch/arm/mach-rmobile/cpu_info-rcar.c                         | 1 +
 arch/arm/mach-rmobile/cpu_info-sh73a0.c                       | 1 +
 arch/arm/mach-rmobile/cpu_info.c                              | 1 +
 arch/arm/mach-rmobile/include/mach/ehci-rmobile.h             | 1 +
 arch/arm/mach-rmobile/include/mach/rcar-mstp.h                | 1 +
 arch/arm/mach-rmobile/include/mach/rmobile.h                  | 1 +
 arch/arm/mach-rmobile/timer.c                                 | 1 +
 arch/arm/mach-rockchip/board.c                                | 2 ++
 arch/arm/mach-rockchip/boot_mode.c                            | 1 +
 arch/arm/mach-rockchip/bootrom.c                              | 1 +
 arch/arm/mach-rockchip/misc.c                                 | 1 +
 arch/arm/mach-rockchip/px30-board-tpl.c                       | 1 +
 arch/arm/mach-rockchip/px30/px30.c                            | 1 +
 arch/arm/mach-rockchip/px30/syscon_px30.c                     | 1 +
 arch/arm/mach-rockchip/rk3036-board-spl.c                     | 1 +
 arch/arm/mach-rockchip/rk3036/sdram_rk3036.c                  | 1 +
 arch/arm/mach-rockchip/rk3188/rk3188.c                        | 1 +
 arch/arm/mach-rockchip/rk3188/syscon_rk3188.c                 | 1 +
 arch/arm/mach-rockchip/rk3288/rk3288.c                        | 2 ++
 arch/arm/mach-rockchip/rk3288/syscon_rk3288.c                 | 1 +
 arch/arm/mach-rockchip/rk3308/rk3308.c                        | 2 ++
 arch/arm/mach-rockchip/rk3368/rk3368.c                        | 1 +
 arch/arm/mach-rockchip/rk3368/syscon_rk3368.c                 | 1 +
 arch/arm/mach-rockchip/rk3399/rk3399.c                        | 2 ++
 arch/arm/mach-rockchip/rk3399/syscon_rk3399.c                 | 1 +
 arch/arm/mach-rockchip/sdram.c                                | 1 +
 arch/arm/mach-rockchip/spl-boot-order.c                       | 2 ++
 arch/arm/mach-rockchip/spl.c                                  | 2 ++
 arch/arm/mach-rockchip/tpl.c                                  | 2 ++
 arch/arm/mach-s5pc1xx/clock.c                                 | 1 +
 arch/arm/mach-s5pc1xx/include/mach/gpio.h                     | 1 +
 arch/arm/mach-s5pc1xx/include/mach/mmc.h                      | 1 +
 arch/arm/mach-s5pc1xx/include/mach/sromc.h                    | 1 +
 arch/arm/mach-s5pc1xx/include/mach/sys_proto.h                | 1 +
 arch/arm/mach-snapdragon/clock-apq8016.c                      | 1 +
 arch/arm/mach-snapdragon/clock-apq8096.c                      | 1 +
 arch/arm/mach-snapdragon/clock-snapdragon.c                   | 1 +
 arch/arm/mach-snapdragon/clock-snapdragon.h                   | 1 +
 arch/arm/mach-snapdragon/dram.c                               | 2 ++
 arch/arm/mach-snapdragon/include/mach/misc.h                  | 1 +
 arch/arm/mach-snapdragon/misc.c                               | 1 +
 arch/arm/mach-snapdragon/pinctrl-snapdragon.c                 | 1 +
 arch/arm/mach-socfpga/clock_manager.c                         | 1 +
 arch/arm/mach-socfpga/clock_manager_agilex.c                  | 1 +
 arch/arm/mach-socfpga/clock_manager_arria10.c                 | 1 +
 arch/arm/mach-socfpga/clock_manager_gen5.c                    | 1 +
 arch/arm/mach-socfpga/clock_manager_s10.c                     | 1 +
 arch/arm/mach-socfpga/firewall.c                              | 1 +
 arch/arm/mach-socfpga/freeze_controller.c                     | 1 +
 arch/arm/mach-socfpga/include/mach/clock_manager.h            | 4 ++--
 arch/arm/mach-socfpga/include/mach/clock_manager_gen5.h       | 1 +
 arch/arm/mach-socfpga/include/mach/clock_manager_s10.h        | 1 +
 arch/arm/mach-socfpga/include/mach/firewall.h                 | 1 +
 arch/arm/mach-socfpga/include/mach/fpga_manager.h             | 1 +
 arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h     | 1 +
 arch/arm/mach-socfpga/include/mach/fpga_manager_gen5.h        | 1 +
 arch/arm/mach-socfpga/include/mach/freeze_controller.h        | 1 +
 arch/arm/mach-socfpga/include/mach/mailbox_s10.h              | 1 +
 arch/arm/mach-socfpga/include/mach/misc.h                     | 1 +
 arch/arm/mach-socfpga/include/mach/nic301.h                   | 1 +
 arch/arm/mach-socfpga/include/mach/reset_manager.h            | 1 +
 arch/arm/mach-socfpga/include/mach/scan_manager.h             | 1 +
 arch/arm/mach-socfpga/include/mach/scu.h                      | 1 +
 arch/arm/mach-socfpga/include/mach/sdram_arria10.h            | 1 +
 arch/arm/mach-socfpga/include/mach/sdram_gen5.h               | 1 +
 arch/arm/mach-socfpga/include/mach/system_manager.h           | 1 +
 arch/arm/mach-socfpga/include/mach/system_manager_gen5.h      | 1 +
 arch/arm/mach-socfpga/include/mach/system_manager_soc64.h     | 1 +
 arch/arm/mach-socfpga/include/mach/timer.h                    | 1 +
 arch/arm/mach-socfpga/mailbox_s10.c                           | 1 +
 arch/arm/mach-socfpga/misc.c                                  | 1 +
 arch/arm/mach-socfpga/misc_arria10.c                          | 1 +
 arch/arm/mach-socfpga/misc_gen5.c                             | 2 ++
 arch/arm/mach-socfpga/misc_s10.c                              | 1 +
 arch/arm/mach-socfpga/pinmux_arria10.c                        | 1 +
 arch/arm/mach-socfpga/reset_manager_arria10.c                 | 1 +
 arch/arm/mach-socfpga/reset_manager_gen5.c                    | 1 +
 arch/arm/mach-socfpga/reset_manager_s10.c                     | 1 +
 arch/arm/mach-socfpga/scan_manager.c                          | 1 +
 arch/arm/mach-socfpga/spl_a10.c                               | 1 +
 arch/arm/mach-socfpga/spl_agilex.c                            | 1 +
 arch/arm/mach-socfpga/spl_gen5.c                              | 1 +
 arch/arm/mach-socfpga/spl_s10.c                               | 1 +
 arch/arm/mach-socfpga/system_manager_gen5.c                   | 1 +
 arch/arm/mach-socfpga/system_manager_s10.c                    | 1 +
 arch/arm/mach-socfpga/wrap_pinmux_config.c                    | 1 +
 arch/arm/mach-socfpga/wrap_pinmux_config_s10.c                | 1 +
 arch/arm/mach-socfpga/wrap_pll_config_s10.c                   | 1 +
 arch/arm/mach-socfpga/wrap_sdram_config.c                     | 1 +
 arch/arm/mach-stm32mp/bsec.c                                  | 1 +
 arch/arm/mach-stm32mp/cmd_stm32key.c                          | 1 +
 arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c           | 1 +
 arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c               | 2 ++
 arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h               | 1 +
 arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c        | 1 +
 arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_usb.c           | 1 +
 arch/arm/mach-stm32mp/cpu.c                                   | 2 ++
 arch/arm/mach-stm32mp/dram_init.c                             | 1 +
 arch/arm/mach-stm32mp/fdt.c                                   | 2 ++
 arch/arm/mach-stm32mp/include/mach/gpio.h                     | 1 +
 arch/arm/mach-stm32mp/include/mach/stm32mp1_smc.h             | 1 +
 arch/arm/mach-stm32mp/include/mach/sys_proto.h                | 1 +
 arch/arm/mach-stm32mp/psci.c                                  | 1 +
 arch/arm/mach-stm32mp/pwr_regulator.c                         | 2 ++
 arch/arm/mach-stm32mp/spl.c                                   | 2 ++
 arch/arm/mach-sunxi/board.c                                   | 1 +
 arch/arm/mach-sunxi/clock.c                                   | 2 ++
 arch/arm/mach-sunxi/clock_sun4i.c                             | 1 +
 arch/arm/mach-sunxi/clock_sun50i_h6.c                         | 1 +
 arch/arm/mach-sunxi/clock_sun6i.c                             | 1 +
 arch/arm/mach-sunxi/clock_sun8i_a83t.c                        | 1 +
 arch/arm/mach-sunxi/clock_sun9i.c                             | 1 +
 arch/arm/mach-sunxi/cpu_info.c                                | 1 +
 arch/arm/mach-sunxi/dram_helpers.c                            | 1 +
 arch/arm/mach-sunxi/dram_sun4i.c                              | 2 ++
 arch/arm/mach-sunxi/dram_sun50i_h6.c                          | 1 +
 arch/arm/mach-sunxi/dram_sun6i.c                              | 1 +
 arch/arm/mach-sunxi/dram_sun8i_a23.c                          | 1 +
 arch/arm/mach-sunxi/dram_sun8i_a33.c                          | 1 +
 arch/arm/mach-sunxi/dram_sun8i_a83t.c                         | 1 +
 arch/arm/mach-sunxi/dram_sun9i.c                              | 1 +
 arch/arm/mach-sunxi/dram_sunxi_dw.c                           | 2 ++
 arch/arm/mach-sunxi/dram_timings/ddr2_v3s.c                   | 1 +
 arch/arm/mach-sunxi/dram_timings/ddr3_1333.c                  | 1 +
 arch/arm/mach-sunxi/dram_timings/h6_ddr3_1333.c               | 1 +
 arch/arm/mach-sunxi/dram_timings/h6_lpddr3.c                  | 1 +
 arch/arm/mach-sunxi/dram_timings/lpddr3_stock.c               | 1 +
 arch/arm/mach-sunxi/p2wi.c                                    | 1 +
 arch/arm/mach-sunxi/pinmux.c                                  | 1 +
 arch/arm/mach-sunxi/pmic_bus.c                                | 1 +
 arch/arm/mach-sunxi/prcm.c                                    | 1 +
 arch/arm/mach-sunxi/rsb.c                                     | 1 +
 arch/arm/mach-sunxi/spl_spi_sunxi.c                           | 1 +
 arch/arm/mach-tegra/ap.c                                      | 1 +
 arch/arm/mach-tegra/board.c                                   | 2 ++
 arch/arm/mach-tegra/board2.c                                  | 2 ++
 arch/arm/mach-tegra/cache.c                                   | 1 +
 arch/arm/mach-tegra/cboot.c                                   | 2 ++
 arch/arm/mach-tegra/clock.c                                   | 3 +++
 arch/arm/mach-tegra/cpu.c                                     | 1 +
 arch/arm/mach-tegra/ivc.c                                     | 1 +
 arch/arm/mach-tegra/pinmux-common.c                           | 1 +
 arch/arm/mach-tegra/pmc.c                                     | 1 +
 arch/arm/mach-tegra/spl.c                                     | 1 +
 arch/arm/mach-tegra/tegra114/clock.c                          | 1 +
 arch/arm/mach-tegra/tegra114/cpu.c                            | 1 +
 arch/arm/mach-tegra/tegra124/clock.c                          | 1 +
 arch/arm/mach-tegra/tegra124/cpu.c                            | 1 +
 arch/arm/mach-tegra/tegra124/psci.c                           | 1 +
 arch/arm/mach-tegra/tegra124/xusb-padctl.c                    | 1 +
 arch/arm/mach-tegra/tegra20/clock.c                           | 1 +
 arch/arm/mach-tegra/tegra20/cpu.c                             | 1 +
 arch/arm/mach-tegra/tegra20/crypto.c                          | 1 +
 arch/arm/mach-tegra/tegra20/crypto.h                          | 1 +
 arch/arm/mach-tegra/tegra20/emc.c                             | 1 +
 arch/arm/mach-tegra/tegra20/warmboot.c                        | 1 +
 arch/arm/mach-tegra/tegra20/warmboot_avp.c                    | 1 +
 arch/arm/mach-tegra/tegra210/clock.c                          | 1 +
 arch/arm/mach-tegra/tegra210/xusb-padctl.c                    | 1 +
 arch/arm/mach-tegra/tegra30/clock.c                           | 1 +
 arch/arm/mach-tegra/tegra30/cpu.c                             | 1 +
 arch/arm/mach-tegra/xusb-padctl-common.c                      | 1 +
 arch/arm/mach-tegra/xusb-padctl-common.h                      | 1 +
 arch/arm/mach-u8500/cpuinfo.c                                 | 1 +
 arch/arm/mach-uniphier/arm32/cache-uniphier.c                 | 2 ++
 arch/arm/mach-uniphier/arm32/psci.c                           | 1 +
 arch/arm/mach-uniphier/base-address.c                         | 1 +
 arch/arm/mach-uniphier/board_init.c                           | 1 +
 arch/arm/mach-uniphier/boot-device/boot-device-ld11.c         | 1 +
 arch/arm/mach-uniphier/boot-device/boot-device-pxs2.c         | 1 +
 arch/arm/mach-uniphier/boot-device/boot-device-pxs3.c         | 1 +
 arch/arm/mach-uniphier/boot-device/boot-device.c              | 2 ++
 arch/arm/mach-uniphier/boot-device/boot-device.h              | 1 +
 arch/arm/mach-uniphier/clk/clk-dram-ld4.c                     | 1 +
 arch/arm/mach-uniphier/clk/clk-dram-pro5.c                    | 1 +
 arch/arm/mach-uniphier/clk/clk-dram-pxs2.c                    | 1 +
 arch/arm/mach-uniphier/clk/clk-early-ld4.c                    | 1 +
 arch/arm/mach-uniphier/clk/clk-ld11.c                         | 1 +
 arch/arm/mach-uniphier/clk/clk-ld20.c                         | 1 +
 arch/arm/mach-uniphier/clk/clk-pro4.c                         | 1 +
 arch/arm/mach-uniphier/clk/clk-pro5.c                         | 1 +
 arch/arm/mach-uniphier/clk/clk-pxs2.c                         | 1 +
 arch/arm/mach-uniphier/clk/clk-pxs3.c                         | 1 +
 arch/arm/mach-uniphier/clk/dpll-ld4.c                         | 1 +
 arch/arm/mach-uniphier/clk/dpll-pro4.c                        | 1 +
 arch/arm/mach-uniphier/clk/dpll-sld8.c                        | 1 +
 arch/arm/mach-uniphier/clk/dpll-tail.c                        | 1 +
 arch/arm/mach-uniphier/clk/pll-base-ld20.c                    | 2 ++
 arch/arm/mach-uniphier/clk/pll-ld4.c                          | 1 +
 arch/arm/mach-uniphier/clk/pll-pro4.c                         | 1 +
 arch/arm/mach-uniphier/debug-uart/debug-uart-ld6b.c           | 1 +
 arch/arm/mach-uniphier/debug-uart/debug-uart-pro4.c           | 1 +
 arch/arm/mach-uniphier/debug-uart/debug-uart-pro5.c           | 1 +
 arch/arm/mach-uniphier/debug-uart/debug-uart-pxs2.c           | 1 +
 arch/arm/mach-uniphier/debug-uart/debug-uart.c                | 2 ++
 arch/arm/mach-uniphier/debug.h                                | 1 +
 arch/arm/mach-uniphier/dram/cmd_ddrmphy.c                     | 2 ++
 arch/arm/mach-uniphier/dram/cmd_ddrphy.c                      | 2 ++
 arch/arm/mach-uniphier/dram/ddrphy-ld4.c                      | 2 ++
 arch/arm/mach-uniphier/dram/ddrphy-training.c                 | 2 ++
 arch/arm/mach-uniphier/dram/umc-ld4.c                         | 2 ++
 arch/arm/mach-uniphier/dram/umc-pro4.c                        | 2 ++
 arch/arm/mach-uniphier/dram/umc-pxs2.c                        | 2 ++
 arch/arm/mach-uniphier/dram/umc-sld8.c                        | 2 ++
 arch/arm/mach-uniphier/dram_init.c                            | 2 ++
 arch/arm/mach-uniphier/memconf.c                              | 1 +
 arch/arm/mach-uniphier/micro-support-card.c                   | 2 ++
 arch/arm/mach-uniphier/mmc-boot-mode.c                        | 1 +
 arch/arm/mach-uniphier/reset.c                                | 1 +
 arch/arm/mach-uniphier/sc-regs.h                              | 1 +
 arch/arm/mach-uniphier/sc64-regs.h                            | 1 +
 arch/arm/mach-uniphier/sg-regs.h                              | 1 +
 arch/arm/mach-versal/include/mach/hardware.h                  | 1 +
 arch/arm/mach-versal/include/mach/sys_proto.h                 | 1 +
 arch/arm/mach-versal/mp.c                                     | 1 +
 arch/arm/mach-versatile/timer.c                               | 1 +
 arch/arm/mach-zynq/clk.c                                      | 1 +
 arch/arm/mach-zynq/cpu.c                                      | 1 +
 arch/arm/mach-zynq/ddrc.c                                     | 1 +
 arch/arm/mach-zynq/include/mach/hardware.h                    | 1 +
 arch/arm/mach-zynq/include/mach/sys_proto.h                   | 1 +
 arch/arm/mach-zynq/ps7_spl_init.c                             | 1 +
 arch/arm/mach-zynq/slcr.c                                     | 1 +
 arch/arm/mach-zynq/spl.c                                      | 1 +
 arch/arm/mach-zynq/timer.c                                    | 1 +
 arch/arm/mach-zynqmp-r5/cpu.c                                 | 1 +
 arch/arm/mach-zynqmp/clk.c                                    | 1 +
 arch/arm/mach-zynqmp/cpu.c                                    | 1 +
 arch/arm/mach-zynqmp/handoff.c                                | 1 +
 arch/arm/mach-zynqmp/include/mach/hardware.h                  | 1 +
 arch/arm/mach-zynqmp/include/mach/sys_proto.h                 | 1 +
 arch/arm/mach-zynqmp/mp.c                                     | 1 +
 arch/arm/mach-zynqmp/psu_spl_init.c                           | 2 ++
 arch/arm/mach-zynqmp/spl.c                                    | 1 +
 arch/m68k/cpu/mcf5227x/cpu.c                                  | 1 +
 arch/m68k/cpu/mcf5227x/speed.c                                | 1 +
 arch/m68k/cpu/mcf523x/cpu.c                                   | 1 +
 arch/m68k/cpu/mcf52x2/cpu.c                                   | 1 +
 arch/m68k/cpu/mcf52x2/cpu.h                                   | 1 +
 arch/m68k/cpu/mcf52x2/cpu_init.c                              | 1 +
 arch/m68k/cpu/mcf532x/cpu.c                                   | 1 +
 arch/m68k/cpu/mcf532x/cpu_init.c                              | 1 +
 arch/m68k/cpu/mcf532x/speed.c                                 | 1 +
 arch/m68k/cpu/mcf5445x/cpu.c                                  | 1 +
 arch/m68k/cpu/mcf5445x/cpu_init.c                             | 1 +
 arch/m68k/cpu/mcf5445x/pci.c                                  | 1 +
 arch/m68k/cpu/mcf5445x/speed.c                                | 1 +
 arch/m68k/cpu/mcf547x_8x/cpu.c                                | 1 +
 arch/m68k/cpu/mcf547x_8x/cpu_init.c                           | 1 +
 arch/m68k/cpu/mcf547x_8x/pci.c                                | 1 +
 arch/m68k/cpu/mcf547x_8x/slicetimer.c                         | 1 +
 arch/m68k/include/asm/coldfire/ata.h                          | 1 +
 arch/m68k/include/asm/coldfire/crossbar.h                     | 1 +
 arch/m68k/include/asm/coldfire/dspi.h                         | 1 +
 arch/m68k/include/asm/coldfire/edma.h                         | 1 +
 arch/m68k/include/asm/coldfire/eport.h                        | 1 +
 arch/m68k/include/asm/coldfire/flexbus.h                      | 1 +
 arch/m68k/include/asm/coldfire/flexcan.h                      | 1 +
 arch/m68k/include/asm/coldfire/intctrl.h                      | 1 +
 arch/m68k/include/asm/coldfire/lcd.h                          | 1 +
 arch/m68k/include/asm/coldfire/mdha.h                         | 1 +
 arch/m68k/include/asm/coldfire/pwm.h                          | 1 +
 arch/m68k/include/asm/coldfire/qspi.h                         | 1 +
 arch/m68k/include/asm/coldfire/rng.h                          | 1 +
 arch/m68k/include/asm/coldfire/skha.h                         | 1 +
 arch/m68k/include/asm/coldfire/ssi.h                          | 1 +
 arch/m68k/include/asm/fec.h                                   | 1 +
 arch/m68k/include/asm/fsl_mcdmafec.h                          | 1 +
 arch/m68k/include/asm/immap_520x.h                            | 1 +
 arch/m68k/include/asm/immap_5227x.h                           | 1 +
 arch/m68k/include/asm/immap_5235.h                            | 1 +
 arch/m68k/include/asm/immap_5272.h                            | 1 +
 arch/m68k/include/asm/immap_5275.h                            | 1 +
 arch/m68k/include/asm/immap_5282.h                            | 1 +
 arch/m68k/include/asm/immap_5301x.h                           | 1 +
 arch/m68k/include/asm/immap_5307.h                            | 1 +
 arch/m68k/include/asm/immap_5329.h                            | 1 +
 arch/m68k/include/asm/immap_5441x.h                           | 1 +
 arch/m68k/include/asm/immap_5445x.h                           | 1 +
 arch/m68k/include/asm/immap_547x_8x.h                         | 1 +
 arch/m68k/include/asm/io.h                                    | 1 +
 arch/m68k/include/asm/m5282.h                                 | 1 +
 arch/m68k/include/asm/ptrace.h                                | 1 +
 arch/m68k/include/asm/rtc.h                                   | 1 +
 arch/m68k/include/asm/timer.h                                 | 1 +
 arch/m68k/include/asm/uart.h                                  | 1 +
 arch/m68k/lib/bdinfo.c                                        | 1 +
 arch/m68k/lib/bootm.c                                         | 1 +
 arch/m68k/lib/cache.c                                         | 2 ++
 arch/m68k/lib/fec.c                                           | 1 +
 arch/m68k/lib/time.c                                          | 1 +
 arch/m68k/lib/traps.c                                         | 1 +
 arch/microblaze/cpu/cache.c                                   | 1 +
 arch/microblaze/cpu/interrupts.c                              | 1 +
 arch/microblaze/cpu/spl.c                                     | 1 +
 arch/microblaze/cpu/timer.c                                   | 1 +
 arch/microblaze/lib/bootm.c                                   | 1 +
 arch/mips/cpu/cpu.c                                           | 1 +
 arch/mips/cpu/time.c                                          | 1 +
 arch/mips/include/asm/cacheops.h                              | 1 +
 arch/mips/include/asm/io.h                                    | 1 +
 arch/mips/include/asm/mach-generic/ioremap.h                  | 1 +
 arch/mips/include/asm/mipsregs.h                              | 1 +
 arch/mips/include/asm/pgtable-bits.h                          | 1 +
 arch/mips/include/asm/sections.h                              | 1 +
 arch/mips/lib/boot.c                                          | 1 +
 arch/mips/lib/bootm.c                                         | 1 +
 arch/mips/lib/cache.c                                         | 3 +++
 arch/mips/lib/reloc.c                                         | 1 +
 arch/mips/lib/traps.c                                         | 1 +
 arch/mips/mach-ath79/ar933x/clk.c                             | 2 ++
 arch/mips/mach-ath79/ar933x/ddr.c                             | 1 +
 arch/mips/mach-ath79/ar934x/clk.c                             | 2 ++
 arch/mips/mach-ath79/ar934x/ddr.c                             | 1 +
 arch/mips/mach-ath79/cpu.c                                    | 1 +
 arch/mips/mach-ath79/qca953x/clk.c                            | 2 ++
 arch/mips/mach-ath79/qca953x/ddr.c                            | 1 +
 arch/mips/mach-ath79/qca956x/clk.c                            | 2 ++
 arch/mips/mach-ath79/qca956x/ddr.c                            | 1 +
 arch/mips/mach-ath79/reset.c                                  | 1 +
 arch/mips/mach-bmips/include/ioremap.h                        | 1 +
 arch/mips/mach-jz47xx/include/mach/jz4780.h                   | 2 ++
 arch/mips/mach-jz47xx/include/mach/jz4780_dram.h              | 1 +
 arch/mips/mach-jz47xx/jz4780/gpio.c                           | 1 +
 arch/mips/mach-jz47xx/jz4780/jz4780.c                         | 1 +
 arch/mips/mach-jz47xx/jz4780/pll.c                            | 2 ++
 arch/mips/mach-jz47xx/jz4780/reset.c                          | 1 +
 arch/mips/mach-jz47xx/jz4780/sdram.c                          | 2 ++
 arch/mips/mach-jz47xx/jz4780/timer.c                          | 2 ++
 arch/mips/mach-mscc/gpio.c                                    | 1 +
 arch/mips/mach-mscc/include/ioremap.h                         | 1 +
 arch/mips/mach-mscc/include/mach/common.h                     | 1 +
 arch/mips/mach-mscc/include/mach/ddr.h                        | 2 ++
 arch/mips/mach-mscc/include/mach/jr2/jr2.h                    | 1 +
 arch/mips/mach-mscc/include/mach/luton/luton.h                | 2 ++
 arch/mips/mach-mscc/include/mach/ocelot/ocelot.h              | 2 ++
 arch/mips/mach-mscc/include/mach/serval/serval.h              | 2 ++
 arch/mips/mach-mscc/include/mach/servalt/servalt.h            | 2 ++
 arch/mips/mach-mscc/include/mach/tlb.h                        | 1 +
 arch/mips/mach-mscc/phy.c                                     | 1 +
 arch/mips/mach-mscc/reset.c                                   | 1 +
 arch/mips/mach-mtmips/ddr_cal.c                               | 3 +++
 arch/mips/mach-mtmips/ddr_init.c                              | 2 ++
 arch/mips/mach-mtmips/include/mach/ddr.h                      | 1 +
 arch/mips/mach-mtmips/mt7628/ddr.c                            | 2 ++
 arch/mips/mach-mtmips/mt7628/init.c                           | 1 +
 arch/mips/mach-mtmips/mt7628/serial.c                         | 1 +
 arch/mips/mach-mtmips/spl.c                                   | 1 +
 arch/mips/mach-octeon/cache.c                                 | 1 +
 arch/mips/mach-octeon/clock.c                                 | 1 +
 arch/mips/mach-octeon/cpu.c                                   | 1 +
 arch/mips/mach-octeon/dram.c                                  | 1 +
 arch/mips/mach-octeon/include/ioremap.h                       | 1 +
 arch/mips/mach-pic32/cpu.c                                    | 2 ++
 arch/mips/mach-pic32/include/mach/ddr.h                       | 1 +
 arch/mips/mach-pic32/include/mach/pic32.h                     | 2 ++
 arch/mips/mach-pic32/reset.c                                  | 1 +
 arch/nds32/cpu/n1213/ag101/timer.c                            | 1 +
 arch/nds32/include/asm/bootm.h                                | 1 +
 arch/nds32/include/asm/io.h                                   | 1 +
 arch/nds32/include/asm/setup.h                                | 1 +
 arch/nds32/lib/boot.c                                         | 1 +
 arch/nds32/lib/bootm.c                                        | 1 +
 arch/nios2/cpu/interrupts.c                                   | 1 +
 arch/nios2/include/asm/dma-mapping.h                          | 1 +
 arch/nios2/include/asm/global_data.h                          | 1 +
 arch/nios2/include/asm/io.h                                   | 1 +
 arch/nios2/lib/bootm.c                                        | 1 +
 arch/powerpc/cpu/mpc83xx/arbiter/arbiter.h                    | 1 +
 arch/powerpc/cpu/mpc83xx/cpu.c                                | 1 +
 arch/powerpc/cpu/mpc83xx/cpu_init.c                           | 1 +
 arch/powerpc/cpu/mpc83xx/ecc.c                                | 2 ++
 arch/powerpc/cpu/mpc83xx/fdt.c                                | 1 +
 arch/powerpc/cpu/mpc83xx/initreg/initreg.h                    | 1 +
 arch/powerpc/cpu/mpc83xx/interrupts.c                         | 1 +
 arch/powerpc/cpu/mpc83xx/pci.c                                | 1 +
 arch/powerpc/cpu/mpc83xx/pcie.c                               | 1 +
 arch/powerpc/cpu/mpc83xx/qe_io.c                              | 1 +
 arch/powerpc/cpu/mpc83xx/spd_sdram.c                          | 1 +
 arch/powerpc/cpu/mpc83xx/speed.c                              | 1 +
 arch/powerpc/cpu/mpc83xx/spl_minimal.c                        | 1 +
 arch/powerpc/cpu/mpc83xx/traps.c                              | 1 +
 arch/powerpc/cpu/mpc85xx/b4860_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/bsc9132_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/c29x_serdes.c                        | 1 +
 arch/powerpc/cpu/mpc85xx/cmd_errata.c                         | 2 ++
 arch/powerpc/cpu/mpc85xx/commproc.c                           | 1 +
 arch/powerpc/cpu/mpc85xx/cpu.c                                | 2 ++
 arch/powerpc/cpu/mpc85xx/cpu_init.c                           | 2 ++
 arch/powerpc/cpu/mpc85xx/cpu_init_early.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/ether_fcc.c                          | 1 +
 arch/powerpc/cpu/mpc85xx/fdt.c                                | 2 ++
 arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c                | 2 ++
 arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.h                | 1 +
 arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c                 | 1 +
 arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.h                 | 1 +
 arch/powerpc/cpu/mpc85xx/interrupts.c                         | 2 ++
 arch/powerpc/cpu/mpc85xx/liodn.c                              | 1 +
 arch/powerpc/cpu/mpc85xx/mp.c                                 | 1 +
 arch/powerpc/cpu/mpc85xx/mp.h                                 | 1 +
 arch/powerpc/cpu/mpc85xx/mpc8536_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/mpc8544_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/mpc8548_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/mpc8568_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/mpc8569_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/mpc8572_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc85xx/p1010_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p1021_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p1022_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p1023_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p2020_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p2041_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p3041_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p4080_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p5020_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/p5040_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/pci.c                                | 1 +
 arch/powerpc/cpu/mpc85xx/portals.c                            | 1 +
 arch/powerpc/cpu/mpc85xx/qe_io.c                              | 1 +
 arch/powerpc/cpu/mpc85xx/serial_scc.c                         | 2 ++
 arch/powerpc/cpu/mpc85xx/speed.c                              | 1 +
 arch/powerpc/cpu/mpc85xx/spl_minimal.c                        | 1 +
 arch/powerpc/cpu/mpc85xx/t1024_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/t1040_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/t4240_serdes.c                       | 1 +
 arch/powerpc/cpu/mpc85xx/tlb.c                                | 2 ++
 arch/powerpc/cpu/mpc85xx/traps.c                              | 1 +
 arch/powerpc/cpu/mpc86xx/cpu.c                                | 1 +
 arch/powerpc/cpu/mpc86xx/fdt.c                                | 1 +
 arch/powerpc/cpu/mpc86xx/interrupts.c                         | 1 +
 arch/powerpc/cpu/mpc86xx/mp.c                                 | 1 +
 arch/powerpc/cpu/mpc86xx/mpc8610_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc86xx/mpc8641_serdes.c                     | 1 +
 arch/powerpc/cpu/mpc86xx/speed.c                              | 1 +
 arch/powerpc/cpu/mpc86xx/traps.c                              | 1 +
 arch/powerpc/cpu/mpc8xx/cpu.c                                 | 2 ++
 arch/powerpc/cpu/mpc8xx/cpu_init.c                            | 2 ++
 arch/powerpc/cpu/mpc8xx/immap.c                               | 2 ++
 arch/powerpc/cpu/mpc8xx/interrupts.c                          | 2 ++
 arch/powerpc/cpu/mpc8xx/speed.c                               | 2 ++
 arch/powerpc/cpu/mpc8xx/traps.c                               | 1 +
 arch/powerpc/cpu/mpc8xxx/cpu.c                                | 2 ++
 arch/powerpc/cpu/mpc8xxx/fdt.c                                | 1 +
 arch/powerpc/cpu/mpc8xxx/fsl_lbc.c                            | 1 +
 arch/powerpc/cpu/mpc8xxx/fsl_pamu.c                           | 1 +
 arch/powerpc/cpu/mpc8xxx/law.c                                | 1 +
 arch/powerpc/cpu/mpc8xxx/pamu_table.c                         | 1 +
 arch/powerpc/cpu/mpc8xxx/srio.c                               | 1 +
 arch/powerpc/include/asm/arch-mpc83xx/gpio.h                  | 1 +
 arch/powerpc/include/asm/arch-mpc85xx/gpio.h                  | 1 +
 arch/powerpc/include/asm/cache.h                              | 1 +
 arch/powerpc/include/asm/cpm_85xx.h                           | 1 +
 arch/powerpc/include/asm/cpm_8xx.h                            | 1 +
 arch/powerpc/include/asm/fsl_dma.h                            | 1 +
 arch/powerpc/include/asm/fsl_i2c.h                            | 2 ++
 arch/powerpc/include/asm/fsl_law.h                            | 1 +
 arch/powerpc/include/asm/fsl_lbc.h                            | 1 +
 arch/powerpc/include/asm/fsl_mpc83xx_serdes.h                 | 1 +
 arch/powerpc/include/asm/fsl_pamu.h                           | 1 +
 arch/powerpc/include/asm/fsl_pci.h                            | 1 +
 arch/powerpc/include/asm/fsl_portals.h                        | 1 +
 arch/powerpc/include/asm/fsl_serdes.h                         | 1 +
 arch/powerpc/include/asm/global_data.h                        | 2 +-
 arch/powerpc/include/asm/immap_86xx.h                         | 1 +
 arch/powerpc/include/asm/immap_8xx.h                          | 1 +
 arch/powerpc/include/asm/io.h                                 | 2 ++
 arch/powerpc/include/asm/iopin_8xx.h                          | 1 +
 arch/powerpc/include/asm/mmu.h                                | 1 +
 arch/powerpc/include/asm/mp.h                                 | 1 +
 arch/powerpc/include/asm/ppc.h                                | 1 +
 arch/powerpc/lib/bdinfo.c                                     | 2 ++
 arch/powerpc/lib/bootm.c                                      | 1 +
 arch/powerpc/lib/cache.c                                      | 1 +
 arch/powerpc/lib/interrupts.c                                 | 1 +
 arch/powerpc/lib/spl.c                                        | 1 +
 arch/powerpc/lib/stack.c                                      | 1 +
 arch/powerpc/lib/time.c                                       | 1 +
 arch/riscv/cpu/cpu.c                                          | 1 +
 arch/riscv/cpu/fu540/cache.c                                  | 1 +
 arch/riscv/cpu/fu540/dram.c                                   | 1 +
 arch/riscv/cpu/generic/dram.c                                 | 1 +
 arch/riscv/include/asm/global_data.h                          | 1 +
 arch/riscv/include/asm/io.h                                   | 1 +
 arch/riscv/include/asm/ptrace.h                               | 1 +
 arch/riscv/include/asm/smp.h                                  | 1 +
 arch/riscv/lib/andes_plic.c                                   | 2 ++
 arch/riscv/lib/andes_plmt.c                                   | 2 ++
 arch/riscv/lib/boot.c                                         | 1 +
 arch/riscv/lib/bootm.c                                        | 2 ++
 arch/riscv/lib/fdt_fixup.c                                    | 1 +
 arch/riscv/lib/image.c                                        | 1 +
 arch/riscv/lib/interrupts.c                                   | 1 +
 arch/riscv/lib/rdtime.c                                       | 2 ++
 arch/riscv/lib/reloc_riscv_efi.c                              | 1 +
 arch/riscv/lib/sbi.c                                          | 1 +
 arch/riscv/lib/sbi_ipi.c                                      | 1 +
 arch/riscv/lib/sifive_clint.c                                 | 2 ++
 arch/riscv/lib/smp.c                                          | 1 +
 arch/riscv/lib/spl.c                                          | 2 ++
 arch/sandbox/cpu/cpu.c                                        | 1 +
 arch/sandbox/cpu/sdl.c                                        | 1 +
 arch/sandbox/cpu/spl.c                                        | 1 +
 arch/sandbox/cpu/start.c                                      | 1 +
 arch/sandbox/cpu/state.c                                      | 1 +
 arch/sandbox/include/asm/axi.h                                | 1 +
 arch/sandbox/include/asm/clk.h                                | 1 +
 arch/sandbox/include/asm/eth.h                                | 1 +
 arch/sandbox/include/asm/global_data.h                        | 1 +
 arch/sandbox/include/asm/gpio.h                               | 1 +
 arch/sandbox/include/asm/handoff.h                            | 1 +
 arch/sandbox/include/asm/io.h                                 | 1 +
 arch/sandbox/include/asm/mbox.h                               | 1 +
 arch/sandbox/include/asm/sdl.h                                | 1 +
 arch/sandbox/include/asm/sections.h                           | 1 +
 arch/sandbox/include/asm/setjmp.h                             | 1 +
 arch/sandbox/include/asm/state.h                              | 1 +
 arch/sandbox/include/asm/test.h                               | 1 +
 arch/sandbox/include/asm/u-boot-sandbox.h                     | 1 +
 arch/sandbox/lib/bootm.c                                      | 2 ++
 arch/sandbox/lib/pci_io.c                                     | 1 +
 arch/sh/cpu/sh4/cache.c                                       | 1 +
 arch/sh/include/asm/pci.h                                     | 1 +
 arch/sh/include/asm/string.h                                  | 1 +
 arch/sh/lib/board.c                                           | 1 +
 arch/sh/lib/time_sh2.c                                        | 1 +
 arch/sh/lib/zimageboot.c                                      | 1 +
 arch/x86/cpu/acpi_gpe.c                                       | 1 +
 arch/x86/cpu/apollolake/cpu_spl.c                             | 1 +
 arch/x86/cpu/apollolake/fsp_bindings.c                        | 1 +
 arch/x86/cpu/apollolake/fsp_s.c                               | 2 ++
 arch/x86/cpu/apollolake/hostbridge.c                          | 1 +
 arch/x86/cpu/apollolake/lpc.c                                 | 1 +
 arch/x86/cpu/apollolake/pmc.c                                 | 2 ++
 arch/x86/cpu/apollolake/punit.c                               | 1 +
 arch/x86/cpu/apollolake/spl.c                                 | 1 +
 arch/x86/cpu/apollolake/uart.c                                | 1 +
 arch/x86/cpu/baytrail/acpi.c                                  | 1 +
 arch/x86/cpu/baytrail/cpu.c                                   | 1 +
 arch/x86/cpu/baytrail/early_uart.c                            | 1 +
 arch/x86/cpu/baytrail/fsp_configs.c                           | 1 +
 arch/x86/cpu/braswell/early_uart.c                            | 1 +
 arch/x86/cpu/braswell/fsp_configs.c                           | 1 +
 arch/x86/cpu/broadwell/adsp.c                                 | 1 +
 arch/x86/cpu/broadwell/cpu_full.c                             | 2 ++
 arch/x86/cpu/broadwell/iobp.c                                 | 1 +
 arch/x86/cpu/broadwell/lpc.c                                  | 1 +
 arch/x86/cpu/broadwell/me.c                                   | 1 +
 arch/x86/cpu/broadwell/northbridge.c                          | 2 ++
 arch/x86/cpu/broadwell/pch.c                                  | 2 ++
 arch/x86/cpu/broadwell/pinctrl_broadwell.c                    | 2 ++
 arch/x86/cpu/broadwell/refcode.c                              | 2 ++
 arch/x86/cpu/broadwell/sata.c                                 | 1 +
 arch/x86/cpu/broadwell/sdram.c                                | 1 +
 arch/x86/cpu/coreboot/coreboot.c                              | 1 +
 arch/x86/cpu/coreboot/sdram.c                                 | 1 +
 arch/x86/cpu/coreboot/tables.c                                | 2 ++
 arch/x86/cpu/coreboot/timestamp.c                             | 2 ++
 arch/x86/cpu/cpu.c                                            | 2 ++
 arch/x86/cpu/efi/payload.c                                    | 1 +
 arch/x86/cpu/efi/sdram.c                                      | 1 +
 arch/x86/cpu/i386/cpu.c                                       | 3 +++
 arch/x86/cpu/i386/interrupt.c                                 | 2 ++
 arch/x86/cpu/intel_common/cpu.c                               | 1 +
 arch/x86/cpu/intel_common/fast_spi.c                          | 1 +
 arch/x86/cpu/intel_common/itss.c                              | 2 ++
 arch/x86/cpu/intel_common/lpc.c                               | 2 ++
 arch/x86/cpu/intel_common/microcode.c                         | 1 +
 arch/x86/cpu/intel_common/mrc.c                               | 2 ++
 arch/x86/cpu/intel_common/p2sb.c                              | 2 ++
 arch/x86/cpu/intel_common/pch.c                               | 1 +
 arch/x86/cpu/intel_common/report_platform.c                   | 1 +
 arch/x86/cpu/ioapic.c                                         | 1 +
 arch/x86/cpu/irq.c                                            | 1 +
 arch/x86/cpu/ivybridge/bd82x6x.c                              | 1 +
 arch/x86/cpu/ivybridge/cpu.c                                  | 1 +
 arch/x86/cpu/ivybridge/early_me.c                             | 1 +
 arch/x86/cpu/ivybridge/lpc.c                                  | 1 +
 arch/x86/cpu/ivybridge/model_206ax.c                          | 2 ++
 arch/x86/cpu/ivybridge/northbridge.c                          | 1 +
 arch/x86/cpu/ivybridge/sata.c                                 | 1 +
 arch/x86/cpu/ivybridge/sdram.c                                | 1 +
 arch/x86/cpu/mp_init.c                                        | 2 ++
 arch/x86/cpu/mtrr.c                                           | 1 +
 arch/x86/cpu/pci.c                                            | 1 +
 arch/x86/cpu/qemu/dram.c                                      | 1 +
 arch/x86/cpu/qemu/qemu.c                                      | 1 +
 arch/x86/cpu/quark/acpi.c                                     | 1 +
 arch/x86/cpu/quark/dram.c                                     | 1 +
 arch/x86/cpu/quark/hte.c                                      | 1 +
 arch/x86/cpu/quark/hte.h                                      | 1 +
 arch/x86/cpu/quark/mrc.c                                      | 1 +
 arch/x86/cpu/quark/mrc_util.c                                 | 1 +
 arch/x86/cpu/quark/mrc_util.h                                 | 1 +
 arch/x86/cpu/quark/msg_port.c                                 | 1 +
 arch/x86/cpu/quark/quark.c                                    | 1 +
 arch/x86/cpu/quark/smc.c                                      | 1 +
 arch/x86/cpu/quark/smc.h                                      | 1 +
 arch/x86/cpu/queensbay/tnc.c                                  | 1 +
 arch/x86/cpu/slimbootloader/sdram.c                           | 1 +
 arch/x86/cpu/tangier/acpi.c                                   | 1 +
 arch/x86/cpu/tangier/pinmux.c                                 | 3 +++
 arch/x86/cpu/tangier/sdram.c                                  | 1 +
 arch/x86/include/asm/acpi_nhlt.h                              | 1 +
 arch/x86/include/asm/acpi_table.h                             | 1 +
 arch/x86/include/asm/arch-apollolake/fsp/fsp_m_upd.h          | 2 ++
 arch/x86/include/asm/arch-apollolake/fsp/fsp_s_upd.h          | 2 ++
 arch/x86/include/asm/arch-apollolake/fsp_bindings.h           | 1 +
 arch/x86/include/asm/arch-apollolake/global_nvs.h             | 2 ++
 arch/x86/include/asm/arch-apollolake/lpc.h                    | 1 +
 arch/x86/include/asm/arch-apollolake/uart.h                   | 1 +
 arch/x86/include/asm/arch-baytrail/fsp/fsp_vpd.h              | 2 ++
 arch/x86/include/asm/arch-baytrail/global_nvs.h               | 2 ++
 arch/x86/include/asm/arch-braswell/fsp/fsp_vpd.h              | 2 ++
 arch/x86/include/asm/arch-broadwell/gpio.h                    | 1 +
 arch/x86/include/asm/arch-broadwell/me.h                      | 2 ++
 arch/x86/include/asm/arch-broadwell/pch.h                     | 1 +
 arch/x86/include/asm/arch-broadwell/pei_data.h                | 2 ++
 arch/x86/include/asm/arch-broadwell/pm.h                      | 1 +
 arch/x86/include/asm/arch-coreboot/sysinfo.h                  | 1 +
 arch/x86/include/asm/arch-coreboot/timestamp.h                | 1 +
 arch/x86/include/asm/arch-ivybridge/fsp/fsp_configs.h         | 1 +
 arch/x86/include/asm/arch-ivybridge/me.h                      | 2 ++
 arch/x86/include/asm/arch-ivybridge/model_206ax.h             | 1 +
 arch/x86/include/asm/arch-ivybridge/pch.h                     | 1 +
 arch/x86/include/asm/arch-ivybridge/pei_data.h                | 2 ++
 arch/x86/include/asm/arch-qemu/qemu.h                         | 1 +
 arch/x86/include/asm/arch-quark/global_nvs.h                  | 2 ++
 arch/x86/include/asm/arch-quark/mrc.h                         | 1 +
 arch/x86/include/asm/arch-quark/msg_port.h                    | 1 +
 arch/x86/include/asm/arch-quark/quark.h                       | 1 +
 arch/x86/include/asm/arch-queensbay/fsp/fsp_vpd.h             | 2 ++
 arch/x86/include/asm/arch-queensbay/tnc.h                     | 1 +
 arch/x86/include/asm/arch-slimbootloader/slimbootloader.h     | 1 +
 arch/x86/include/asm/arch-tangier/global_nvs.h                | 2 ++
 arch/x86/include/asm/bootm.h                                  | 1 +
 arch/x86/include/asm/coreboot_tables.h                        | 2 ++
 arch/x86/include/asm/cpu.h                                    | 1 +
 arch/x86/include/asm/cpu_common.h                             | 1 +
 arch/x86/include/asm/early_cmos.h                             | 1 +
 arch/x86/include/asm/fast_spi.h                               | 1 +
 arch/x86/include/asm/fsp/fsp_api.h                            | 1 +
 arch/x86/include/asm/fsp/fsp_azalia.h                         | 2 ++
 arch/x86/include/asm/fsp/fsp_fv.h                             | 1 +
 arch/x86/include/asm/fsp/fsp_hob.h                            | 2 ++
 arch/x86/include/asm/fsp/fsp_infoheader.h                     | 2 ++
 arch/x86/include/asm/fsp/fsp_support.h                        | 1 +
 arch/x86/include/asm/fsp1/fsp_api.h                           | 1 +
 arch/x86/include/asm/fsp1/fsp_ffs.h                           | 2 ++
 arch/x86/include/asm/fsp1/fsp_support.h                       | 1 +
 arch/x86/include/asm/fsp2/fsp_api.h                           | 2 ++
 arch/x86/include/asm/fsp2/fsp_internal.h                      | 1 +
 arch/x86/include/asm/global_data.h                            | 2 ++
 arch/x86/include/asm/gpio.h                                   | 1 +
 arch/x86/include/asm/handoff.h                                | 2 ++
 arch/x86/include/asm/hob.h                                    | 1 +
 arch/x86/include/asm/intel_pinctrl.h                          | 1 +
 arch/x86/include/asm/io.h                                     | 1 +
 arch/x86/include/asm/ioapic.h                                 | 1 +
 arch/x86/include/asm/irq.h                                    | 1 +
 arch/x86/include/asm/me_common.h                              | 1 +
 arch/x86/include/asm/microcode.h                              | 1 +
 arch/x86/include/asm/mpspec.h                                 | 1 +
 arch/x86/include/asm/mrc_common.h                             | 1 +
 arch/x86/include/asm/mrccache.h                               | 1 +
 arch/x86/include/asm/mtrr.h                                   | 2 ++
 arch/x86/include/asm/pch_common.h                             | 1 +
 arch/x86/include/asm/pci.h                                    | 1 +
 arch/x86/include/asm/pirq_routing.h                           | 2 ++
 arch/x86/include/asm/pnp_def.h                                | 1 +
 arch/x86/include/asm/processor.h                              | 1 +
 arch/x86/include/asm/scu.h                                    | 1 +
 arch/x86/include/asm/sfi.h                                    | 1 +
 arch/x86/include/asm/sipi.h                                   | 2 ++
 arch/x86/include/asm/speedstep.h                              | 1 +
 arch/x86/include/asm/spl.h                                    | 1 +
 arch/x86/include/asm/tables.h                                 | 1 +
 arch/x86/include/asm/u-boot-x86.h                             | 1 +
 arch/x86/include/asm/zimage.h                                 | 1 +
 arch/x86/lib/acpi.c                                           | 1 +
 arch/x86/lib/acpi_nhlt.c                                      | 1 +
 arch/x86/lib/acpi_table.c                                     | 2 ++
 arch/x86/lib/bios.c                                           | 1 +
 arch/x86/lib/bios.h                                           | 3 +++
 arch/x86/lib/bios_interrupts.c                                | 1 +
 arch/x86/lib/bootm.c                                          | 1 +
 arch/x86/lib/cmd_boot.c                                       | 1 +
 arch/x86/lib/coreboot_table.c                                 | 1 +
 arch/x86/lib/div64.c                                          | 2 ++
 arch/x86/lib/e820.c                                           | 1 +
 arch/x86/lib/early_cmos.c                                     | 1 +
 arch/x86/lib/fsp/fsp_common.c                                 | 1 +
 arch/x86/lib/fsp/fsp_dram.c                                   | 1 +
 arch/x86/lib/fsp/fsp_graphics.c                               | 1 +
 arch/x86/lib/fsp/fsp_support.c                                | 1 +
 arch/x86/lib/fsp1/fsp_dram.c                                  | 1 +
 arch/x86/lib/fsp1/fsp_support.c                               | 1 +
 arch/x86/lib/fsp2/fsp_dram.c                                  | 1 +
 arch/x86/lib/fsp2/fsp_init.c                                  | 1 +
 arch/x86/lib/fsp2/fsp_meminit.c                               | 1 +
 arch/x86/lib/fsp2/fsp_silicon_init.c                          | 1 +
 arch/x86/lib/fsp2/fsp_support.c                               | 2 ++
 arch/x86/lib/hob.c                                            | 1 +
 arch/x86/lib/i8254.c                                          | 1 +
 arch/x86/lib/i8259.c                                          | 1 +
 arch/x86/lib/interrupts.c                                     | 1 +
 arch/x86/lib/mpspec.c                                         | 3 +++
 arch/x86/lib/mrccache.c                                       | 1 +
 arch/x86/lib/physmem.c                                        | 1 +
 arch/x86/lib/pinctrl_ich6.c                                   | 1 +
 arch/x86/lib/pirq_routing.c                                   | 2 ++
 arch/x86/lib/pmu.c                                            | 1 +
 arch/x86/lib/ramtest.c                                        | 1 +
 arch/x86/lib/relocate.c                                       | 1 +
 arch/x86/lib/scu.c                                            | 1 +
 arch/x86/lib/sfi.c                                            | 1 +
 arch/x86/lib/spl.c                                            | 2 ++
 arch/x86/lib/tables.c                                         | 1 +
 arch/x86/lib/tpl.c                                            | 2 ++
 arch/x86/lib/zimage.c                                         | 1 +
 arch/xtensa/cpu/cpu.c                                         | 1 +
 arch/xtensa/include/asm/ldscript.h                            | 1 +
 arch/xtensa/lib/bootm.c                                       | 1 +
 arch/xtensa/lib/cache.c                                       | 1 +
 arch/xtensa/lib/relocate.c                                    | 1 +
 arch/xtensa/lib/time.c                                        | 1 +
 board/AndesTech/adp-ae3xx/adp-ae3xx.c                         | 1 +
 board/AndesTech/adp-ag101p/adp-ag101p.c                       | 1 +
 board/AndesTech/ax25-ae350/ax25-ae350.c                       | 1 +
 board/Arcturus/ucp1020/cmd_arc.c                              | 1 +
 board/Arcturus/ucp1020/ddr.c                                  | 1 +
 board/Arcturus/ucp1020/spl.c                                  | 1 +
 board/Arcturus/ucp1020/spl_minimal.c                          | 1 +
 board/Arcturus/ucp1020/ucp1020.c                              | 1 +
 board/BuR/brppt1/board.c                                      | 1 +
 board/BuR/brppt2/board.c                                      | 1 +
 board/BuR/brsmarc1/board.c                                    | 1 +
 board/BuR/brxre1/board.c                                      | 1 +
 board/BuR/common/br_resetc.c                                  | 2 ++
 board/BuR/common/br_resetc.h                                  | 1 +
 board/BuR/common/bur_common.h                                 | 1 +
 board/BuR/common/common.c                                     | 1 +
 board/BuS/eb_cpu5282/eb_cpu5282.c                             | 1 +
 board/CZ.NIC/turris_mox/mox_sp.c                              | 1 +
 board/CZ.NIC/turris_mox/mox_sp.h                              | 1 +
 board/CZ.NIC/turris_mox/turris_mox.c                          | 1 +
 board/CZ.NIC/turris_omnia/turris_omnia.c                      | 2 ++
 board/LaCie/common/common.c                                   | 1 +
 board/LaCie/common/common.h                                   | 1 +
 board/LaCie/edminiv2/edminiv2.c                               | 1 +
 board/LaCie/net2big_v2/net2big_v2.c                           | 1 +
 board/LaCie/netspace_v2/netspace_v2.c                         | 1 +
 board/Marvell/aspenite/aspenite.c                             | 1 +
 board/Marvell/db-88f6281-bp/db-88f6281-bp.c                   | 1 +
 board/Marvell/db-88f6820-amc/db-88f6820-amc.c                 | 1 +
 board/Marvell/db-88f6820-gp/db-88f6820-gp.c                   | 1 +
 board/Marvell/db-mv784mp-gp/db-mv784mp-gp.c                   | 1 +
 board/Marvell/dreamplug/dreamplug.c                           | 1 +
 board/Marvell/gplugd/gplugd.c                                 | 1 +
 board/Marvell/guruplug/guruplug.c                             | 1 +
 board/Marvell/mvebu_armada-37xx/board.c                       | 1 +
 board/Marvell/mvebu_armada-8k/board.c                         | 1 +
 board/Marvell/openrd/openrd.c                                 | 1 +
 board/Marvell/sheevaplug/sheevaplug.c                         | 1 +
 board/Seagate/dockstar/dockstar.c                             | 1 +
 board/Seagate/goflexhome/goflexhome.c                         | 1 +
 board/Seagate/nas220/nas220.c                                 | 1 +
 board/Synology/ds109/ds109.c                                  | 1 +
 board/Synology/ds109/ds109.h                                  | 1 +
 board/Synology/ds414/cmd_syno.c                               | 1 +
 board/Synology/ds414/ds414.c                                  | 1 +
 board/abilis/tb100/tb100.c                                    | 1 +
 board/advantech/dms-ba16/dms-ba16.c                           | 1 +
 board/advantech/imx8qm_rom7720_a1/imx8qm_rom7720_a1.c         | 1 +
 board/advantech/imx8qm_rom7720_a1/spl.c                       | 1 +
 board/advantech/som-db5800-som-6867/som-db5800-som-6867.c     | 1 +
 board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c                   | 1 +
 board/alliedtelesis/SBx81LIFXCAT/sbx81lifxcat.c               | 1 +
 board/alliedtelesis/x530/x530.c                               | 1 +
 board/altera/arria5-socdk/qts/pinmux_config.h                 | 1 +
 board/altera/arria5-socdk/qts/sdram_config.h                  | 1 +
 board/altera/cyclone5-socdk/qts/pinmux_config.h               | 1 +
 board/altera/cyclone5-socdk/qts/sdram_config.h                | 1 +
 board/amazon/kc1/kc1.c                                        | 1 +
 board/amlogic/odroid-n2/odroid-n2.c                           | 1 +
 board/amlogic/p200/p200.c                                     | 1 +
 board/amlogic/p201/p201.c                                     | 1 +
 board/amlogic/p212/p212.c                                     | 1 +
 board/amlogic/q200/q200.c                                     | 1 +
 board/aries/mcvevk/qts/pinmux_config.h                        | 1 +
 board/aries/mcvevk/qts/sdram_config.h                         | 1 +
 board/aristainetos/aristainetos.c                             | 1 +
 board/armadeus/apf27/apf27.c                                  | 1 +
 board/armltd/integrator/integrator.c                          | 1 +
 board/armltd/integrator/pci.c                                 | 1 +
 board/armltd/integrator/timer.c                               | 1 +
 board/armltd/vexpress/vexpress_common.c                       | 1 +
 board/armltd/vexpress/vexpress_tc2.c                          | 1 +
 board/armltd/vexpress64/pcie.c                                | 1 +
 board/armltd/vexpress64/vexpress64.c                          | 2 ++
 board/astro/mcf5373l/fpga.c                                   | 1 +
 board/astro/mcf5373l/mcf5373l.c                               | 1 +
 board/atmark-techno/armadillo-800eva/armadillo-800eva.c       | 1 +
 board/atmel/at91rm9200ek/at91rm9200ek.c                       | 1 +
 board/atmel/at91sam9261ek/at91sam9261ek.c                     | 1 +
 board/atmel/at91sam9263ek/at91sam9263ek.c                     | 1 +
 board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c               | 1 +
 board/atmel/at91sam9n12ek/at91sam9n12ek.c                     | 1 +
 board/atmel/at91sam9rlek/at91sam9rlek.c                       | 1 +
 board/atmel/common/board.c                                    | 1 +
 board/atmel/common/mac-spi-nor.c                              | 1 +
 board/atmel/common/video_display.c                            | 1 +
 board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c               | 1 +
 board/atmel/sama5d27_wlsom1_ek/sama5d27_wlsom1_ek.c           | 1 +
 board/atmel/sama5d2_icp/sama5d2_icp.c                         | 1 +
 board/atmel/sama5d2_xplained/sama5d2_xplained.c               | 1 +
 board/atmel/sama5d3_xplained/sama5d3_xplained.c               | 1 +
 board/atmel/sama5d3xek/sama5d3xek.c                           | 1 +
 board/atmel/sama5d4_xplained/sama5d4_xplained.c               | 1 +
 board/atmel/sama5d4ek/sama5d4ek.c                             | 1 +
 board/avionic-design/common/tamonten-ng.c                     | 1 +
 board/bachmann/ot1200/ot1200.c                                | 1 +
 board/bachmann/ot1200/ot1200_spl.c                            | 1 +
 board/barco/platinum/spl_picon.c                              | 1 +
 board/barco/platinum/spl_titanium.c                           | 1 +
 board/beacon/beacon-rzg2m/beacon-rzg2m.c                      | 1 +
 board/beacon/imx8mm/spl.c                                     | 1 +
 board/beckhoff/mx53cx9020/mx53cx9020.c                        | 1 +
 board/beckhoff/mx53cx9020/mx53cx9020_video.c                  | 1 +
 board/bluegiga/apx4devkit/apx4devkit.c                        | 1 +
 board/bluegiga/apx4devkit/spl_boot.c                          | 1 +
 board/bluewater/gurnard/gurnard.c                             | 1 +
 board/bosch/shc/board.c                                       | 1 +
 board/bosch/shc/board.h                                       | 1 +
 board/boundary/nitrogen6x/nitrogen6x.c                        | 1 +
 board/broadcom/bcm_ep/board.c                                 | 1 +
 board/broadcom/bcmns2/northstar2.c                            | 1 +
 board/broadcom/bcmns3/ns3.c                                   | 1 +
 board/bticino/mamoj/spl.c                                     | 1 +
 board/buffalo/lsxl/lsxl.c                                     | 1 +
 board/cadence/xtfpga/xtfpga.c                                 | 1 +
 board/cavium/thunderx/atf.c                                   | 1 +
 board/cavium/thunderx/thunderx.c                              | 1 +
 board/ccv/xpress/spl.c                                        | 1 +
 board/ccv/xpress/xpress.c                                     | 1 +
 board/cirrus/edb93xx/edb93xx.c                                | 1 +
 board/cloudengines/pogo_e02/pogo_e02.c                        | 1 +
 board/cobra5272/flash.c                                       | 1 +
 board/compulab/cl-som-imx7/cl-som-imx7.c                      | 1 +
 board/compulab/cl-som-imx7/spl.c                              | 1 +
 board/compulab/cm_fx6/cm_fx6.c                                | 1 +
 board/compulab/cm_fx6/spl.c                                   | 1 +
 board/compulab/cm_t335/cm_t335.c                              | 1 +
 board/compulab/cm_t43/cm_t43.c                                | 1 +
 board/compulab/cm_t43/spl.c                                   | 1 +
 board/compulab/common/common.c                                | 2 ++
 board/compulab/common/common.h                                | 1 +
 board/compulab/common/eeprom.c                                | 1 +
 board/compulab/common/eeprom.h                                | 1 +
 board/compulab/common/omap3_display.c                         | 1 +
 board/compulab/common/omap3_smc911x.c                         | 1 +
 board/congatec/cgtqmx6eval/cgtqmx6eval.c                      | 2 ++
 board/congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c    | 1 +
 board/corscience/tricorder/led.c                              | 1 +
 board/corscience/tricorder/tricorder-eeprom.c                 | 2 ++
 board/corscience/tricorder/tricorder-eeprom.h                 | 2 ++
 board/corscience/tricorder/tricorder.c                        | 1 +
 board/cortina/presidio-asic/presidio.c                        | 1 +
 board/creative/xfi3/spl_boot.c                                | 1 +
 board/creative/xfi3/xfi3.c                                    | 1 +
 board/cssi/MCR3000/MCR3000.c                                  | 2 ++
 board/cssi/MCR3000/nand.c                                     | 1 +
 board/d-link/dns325/dns325.c                                  | 1 +
 board/davinci/da8xxevm/da850evm.c                             | 1 +
 board/davinci/da8xxevm/omapl138_lcdk.c                        | 1 +
 board/devboards/dbm-soc1/qts/pinmux_config.h                  | 1 +
 board/devboards/dbm-soc1/qts/sdram_config.h                   | 1 +
 board/dhelectronics/dh_imx6/dh_imx6.c                         | 1 +
 board/dhelectronics/dh_imx6/dh_imx6_spl.c                     | 1 +
 board/dhelectronics/dh_stm32mp1/board.c                       | 2 ++
 board/ebv/socrates/qts/pinmux_config.h                        | 1 +
 board/ebv/socrates/qts/sdram_config.h                         | 1 +
 board/eets/pdu001/board.c                                     | 1 +
 board/eets/pdu001/board.h                                     | 1 +
 board/eets/pdu001/mux.c                                       | 1 +
 board/egnite/ethernut5/ethernut5_pwrman.c                     | 1 +
 board/el/el6x/el6x.c                                          | 1 +
 board/embest/mx6boards/mx6boards.c                            | 1 +
 board/emulation/qemu-arm/qemu-arm.c                           | 1 +
 board/emulation/qemu-riscv/qemu-riscv.c                       | 1 +
 board/engicam/common/board.c                                  | 1 +
 board/engicam/common/spl.c                                    | 1 +
 board/engicam/imx6q/imx6q.c                                   | 1 +
 board/esd/meesc/meesc.c                                       | 1 +
 board/esd/vme8349/caddy.c                                     | 1 +
 board/esd/vme8349/caddy.h                                     | 1 +
 board/esd/vme8349/pci.c                                       | 1 +
 board/esd/vme8349/vme8349.c                                   | 1 +
 board/freescale/common/arm_sleep.c                            | 2 ++
 board/freescale/common/cadmus.c                               | 1 +
 board/freescale/common/cds_pci_ft.c                           | 1 +
 board/freescale/common/cmd_esbc_validate.c                    | 1 +
 board/freescale/common/dcu_sii9022a.c                         | 1 +
 board/freescale/common/diu_ch7301.c                           | 1 +
 board/freescale/common/emc2305.c                              | 1 +
 board/freescale/common/emc2305.h                              | 1 +
 board/freescale/common/fman.c                                 | 1 +
 board/freescale/common/fman.h                                 | 1 +
 board/freescale/common/fsl_chain_of_trust.c                   | 2 ++
 board/freescale/common/fsl_validate.c                         | 2 ++
 board/freescale/common/ics307_clk.c                           | 1 +
 board/freescale/common/idt8t49n222a_serdes_clk.h              | 1 +
 board/freescale/common/ls102xa_stream_id.c                    | 1 +
 board/freescale/common/mc34vr500.c                            | 1 +
 board/freescale/common/mpc85xx_sleep.c                        | 2 ++
 board/freescale/common/ngpixis.c                              | 1 +
 board/freescale/common/ngpixis.h                              | 1 +
 board/freescale/common/ns_access.c                            | 1 +
 board/freescale/common/pfuze.c                                | 1 +
 board/freescale/common/pfuze.h                                | 1 +
 board/freescale/common/pixis.c                                | 1 +
 board/freescale/common/pixis.h                                | 1 +
 board/freescale/common/pq-mds-pib.c                           | 1 +
 board/freescale/common/qixis.c                                | 2 ++
 board/freescale/common/qixis.h                                | 1 +
 board/freescale/common/sdhc_boot.c                            | 1 +
 board/freescale/common/sgmii_riser.c                          | 1 +
 board/freescale/common/spl.h                                  | 1 +
 board/freescale/common/sys_eeprom.c                           | 2 ++
 board/freescale/common/vid.c                                  | 2 ++
 board/freescale/common/vid.h                                  | 1 +
 board/freescale/corenet_ds/corenet_ds.c                       | 1 +
 board/freescale/corenet_ds/ddr.c                              | 1 +
 board/freescale/corenet_ds/eth_hydra.c                        | 1 +
 board/freescale/corenet_ds/eth_p4080.c                        | 1 +
 board/freescale/corenet_ds/eth_superhydra.c                   | 1 +
 board/freescale/imx8mm_evk/spl.c                              | 1 +
 board/freescale/imx8mn_evk/spl.c                              | 1 +
 board/freescale/imx8mp_evk/spl.c                              | 1 +
 board/freescale/imx8mq_evk/spl.c                              | 1 +
 board/freescale/imx8qm_mek/imx8qm_mek.c                       | 2 ++
 board/freescale/imx8qm_mek/spl.c                              | 1 +
 board/freescale/imx8qxp_mek/imx8qxp_mek.c                     | 2 ++
 board/freescale/imx8qxp_mek/spl.c                             | 1 +
 board/freescale/imxrt1020-evk/imxrt1020-evk.c                 | 1 +
 board/freescale/imxrt1050-evk/imxrt1050-evk.c                 | 1 +
 board/freescale/ls1012afrdm/ls1012afrdm.c                     | 1 +
 board/freescale/ls1012aqds/eth.c                              | 1 +
 board/freescale/ls1012aqds/ls1012aqds.c                       | 2 ++
 board/freescale/ls1012ardb/eth.c                              | 1 +
 board/freescale/ls1012ardb/ls1012ardb.c                       | 1 +
 board/freescale/ls1021aiot/ls1021aiot.c                       | 1 +
 board/freescale/ls1021aqds/dcu.c                              | 1 +
 board/freescale/ls1021aqds/ddr.c                              | 2 ++
 board/freescale/ls1021aqds/ddr.h                              | 1 +
 board/freescale/ls1021aqds/eth.c                              | 1 +
 board/freescale/ls1021aqds/ls1021aqds.c                       | 2 ++
 board/freescale/ls1021atsn/ls1021atsn.c                       | 1 +
 board/freescale/ls1021atwr/ls1021atwr.c                       | 2 ++
 board/freescale/ls1028a/ls1028a.c                             | 2 ++
 board/freescale/ls1043aqds/ddr.c                              | 1 +
 board/freescale/ls1043aqds/ddr.h                              | 1 +
 board/freescale/ls1043aqds/eth.c                              | 1 +
 board/freescale/ls1043aqds/ls1043aqds.c                       | 2 ++
 board/freescale/ls1043ardb/cpld.c                             | 1 +
 board/freescale/ls1043ardb/cpld.h                             | 1 +
 board/freescale/ls1043ardb/ddr.c                              | 1 +
 board/freescale/ls1043ardb/ddr.h                              | 1 +
 board/freescale/ls1043ardb/eth.c                              | 1 +
 board/freescale/ls1043ardb/ls1043ardb.c                       | 1 +
 board/freescale/ls1046afrwy/eth.c                             | 1 +
 board/freescale/ls1046afrwy/ls1046afrwy.c                     | 1 +
 board/freescale/ls1046aqds/ddr.c                              | 1 +
 board/freescale/ls1046aqds/ddr.h                              | 1 +
 board/freescale/ls1046aqds/eth.c                              | 1 +
 board/freescale/ls1046aqds/ls1046aqds.c                       | 2 ++
 board/freescale/ls1046ardb/cpld.c                             | 1 +
 board/freescale/ls1046ardb/cpld.h                             | 1 +
 board/freescale/ls1046ardb/ddr.c                              | 1 +
 board/freescale/ls1046ardb/ddr.h                              | 1 +
 board/freescale/ls1046ardb/eth.c                              | 1 +
 board/freescale/ls1046ardb/ls1046ardb.c                       | 1 +
 board/freescale/ls1088a/ddr.c                                 | 1 +
 board/freescale/ls1088a/ddr.h                                 | 1 +
 board/freescale/ls1088a/eth_ls1088aqds.c                      | 3 +++
 board/freescale/ls1088a/eth_ls1088ardb.c                      | 1 +
 board/freescale/ls1088a/ls1088a.c                             | 3 +++
 board/freescale/ls2080a/ddr.c                                 | 1 +
 board/freescale/ls2080a/ddr.h                                 | 1 +
 board/freescale/ls2080a/ls2080a.c                             | 1 +
 board/freescale/ls2080aqds/ddr.c                              | 1 +
 board/freescale/ls2080aqds/ddr.h                              | 1 +
 board/freescale/ls2080aqds/eth.c                              | 3 +++
 board/freescale/ls2080aqds/ls2080aqds.c                       | 2 ++
 board/freescale/ls2080ardb/ddr.c                              | 1 +
 board/freescale/ls2080ardb/ddr.h                              | 1 +
 board/freescale/ls2080ardb/eth_ls2080rdb.c                    | 1 +
 board/freescale/ls2080ardb/ls2080ardb.c                       | 2 ++
 board/freescale/lx2160a/eth_lx2160aqds.c                      | 2 ++
 board/freescale/lx2160a/eth_lx2160ardb.c                      | 1 +
 board/freescale/lx2160a/lx2160a.c                             | 2 ++
 board/freescale/m5208evbe/m5208evbe.c                         | 1 +
 board/freescale/m52277evb/m52277evb.c                         | 1 +
 board/freescale/m5235evb/m5235evb.c                           | 1 +
 board/freescale/m5249evb/m5249evb.c                           | 1 +
 board/freescale/m5253demo/flash.c                             | 1 +
 board/freescale/m5253demo/m5253demo.c                         | 1 +
 board/freescale/m5282evb/m5282evb.c                           | 1 +
 board/freescale/m53017evb/m53017evb.c                         | 1 +
 board/freescale/m5329evb/m5329evb.c                           | 1 +
 board/freescale/m5329evb/nand.c                               | 1 +
 board/freescale/m5373evb/m5373evb.c                           | 1 +
 board/freescale/m5373evb/nand.c                               | 1 +
 board/freescale/m54418twr/m54418twr.c                         | 1 +
 board/freescale/m54451evb/m54451evb.c                         | 1 +
 board/freescale/m54455evb/m54455evb.c                         | 1 +
 board/freescale/m547xevb/m547xevb.c                           | 1 +
 board/freescale/m548xevb/m548xevb.c                           | 1 +
 board/freescale/mpc8308rdb/mpc8308rdb.c                       | 1 +
 board/freescale/mpc8308rdb/sdram.c                            | 1 +
 board/freescale/mpc8313erdb/mpc8313erdb.c                     | 1 +
 board/freescale/mpc8313erdb/sdram.c                           | 1 +
 board/freescale/mpc8315erdb/mpc8315erdb.c                     | 1 +
 board/freescale/mpc8315erdb/sdram.c                           | 1 +
 board/freescale/mpc8323erdb/mpc8323erdb.c                     | 1 +
 board/freescale/mpc832xemds/mpc832xemds.c                     | 1 +
 board/freescale/mpc8349emds/ddr.c                             | 1 +
 board/freescale/mpc8349emds/mpc8349emds.c                     | 1 +
 board/freescale/mpc8349emds/pci.c                             | 1 +
 board/freescale/mpc8349itx/mpc8349itx.c                       | 1 +
 board/freescale/mpc8349itx/pci.c                              | 1 +
 board/freescale/mpc837xemds/mpc837xemds.c                     | 2 ++
 board/freescale/mpc837xemds/pci.c                             | 1 +
 board/freescale/mpc837xerdb/mpc837xerdb.c                     | 2 ++
 board/freescale/mpc837xerdb/pci.c                             | 1 +
 board/freescale/mpc8541cds/mpc8541cds.c                       | 1 +
 board/freescale/mpc8544ds/mpc8544ds.c                         | 1 +
 board/freescale/mpc8548cds/mpc8548cds.c                       | 1 +
 board/freescale/mpc8555cds/mpc8555cds.c                       | 1 +
 board/freescale/mpc8568mds/bcsr.c                             | 1 +
 board/freescale/mpc8568mds/mpc8568mds.c                       | 1 +
 board/freescale/mpc8569mds/bcsr.c                             | 1 +
 board/freescale/mpc8569mds/mpc8569mds.c                       | 2 ++
 board/freescale/mpc8572ds/ddr.c                               | 1 +
 board/freescale/mpc8572ds/mpc8572ds.c                         | 2 ++
 board/freescale/mpc8610hpcd/mpc8610hpcd.c                     | 2 ++
 board/freescale/mpc8610hpcd/mpc8610hpcd_diu.c                 | 1 +
 board/freescale/mpc8641hpcn/ddr.c                             | 1 +
 board/freescale/mpc8641hpcn/mpc8641hpcn.c                     | 2 ++
 board/freescale/mx23evk/spl_boot.c                            | 1 +
 board/freescale/mx28evk/iomux.c                               | 1 +
 board/freescale/mx51evk/mx51evk.c                             | 1 +
 board/freescale/mx53ard/mx53ard.c                             | 1 +
 board/freescale/mx53evk/mx53evk.c                             | 1 +
 board/freescale/mx53loco/mx53loco.c                           | 1 +
 board/freescale/mx53smd/mx53smd.c                             | 1 +
 board/freescale/mx6memcal/spl.c                               | 1 +
 board/freescale/mx6qarm2/mx6qarm2.c                           | 1 +
 board/freescale/mx6sabreauto/mx6sabreauto.c                   | 1 +
 board/freescale/mx6sabresd/mx6sabresd.c                       | 1 +
 board/freescale/mx6slevk/mx6slevk.c                           | 1 +
 board/freescale/mx6sllevk/mx6sllevk.c                         | 1 +
 board/freescale/mx6sxsabreauto/mx6sxsabreauto.c               | 1 +
 board/freescale/mx6sxsabresd/mx6sxsabresd.c                   | 1 +
 board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c             | 1 +
 board/freescale/p1010rdb/ddr.c                                | 1 +
 board/freescale/p1010rdb/p1010rdb.c                           | 2 ++
 board/freescale/p1010rdb/spl.c                                | 1 +
 board/freescale/p1010rdb/spl_minimal.c                        | 1 +
 board/freescale/p1023rdb/p1023rdb.c                           | 1 +
 board/freescale/p1_p2_rdb_pc/ddr.c                            | 1 +
 board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c                   | 1 +
 board/freescale/p1_p2_rdb_pc/spl.c                            | 1 +
 board/freescale/p1_p2_rdb_pc/spl_minimal.c                    | 1 +
 board/freescale/p2041rdb/cpld.c                               | 1 +
 board/freescale/p2041rdb/cpld.h                               | 1 +
 board/freescale/p2041rdb/ddr.c                                | 1 +
 board/freescale/p2041rdb/eth.c                                | 1 +
 board/freescale/p2041rdb/p2041rdb.c                           | 1 +
 board/freescale/qemu-ppce500/qemu-ppce500.c                   | 1 +
 board/freescale/s32v234evb/clock.c                            | 1 +
 board/freescale/s32v234evb/lpddr2.c                           | 1 +
 board/freescale/t102xrdb/cpld.c                               | 1 +
 board/freescale/t102xrdb/cpld.h                               | 1 +
 board/freescale/t102xrdb/ddr.c                                | 2 ++
 board/freescale/t102xrdb/eth_t102xrdb.c                       | 1 +
 board/freescale/t102xrdb/spl.c                                | 2 ++
 board/freescale/t102xrdb/t102xrdb.c                           | 2 ++
 board/freescale/t102xrdb/t102xrdb.h                           | 1 +
 board/freescale/t104xrdb/cpld.c                               | 1 +
 board/freescale/t104xrdb/cpld.h                               | 1 +
 board/freescale/t104xrdb/ddr.c                                | 2 ++
 board/freescale/t104xrdb/ddr.h                                | 1 +
 board/freescale/t104xrdb/diu.c                                | 1 +
 board/freescale/t104xrdb/spl.c                                | 1 +
 board/freescale/t104xrdb/t104xrdb.c                           | 2 ++
 board/freescale/t208xqds/ddr.c                                | 1 +
 board/freescale/t208xqds/ddr.h                                | 1 +
 board/freescale/t208xqds/eth_t208xqds.c                       | 1 +
 board/freescale/t208xqds/spl.c                                | 1 +
 board/freescale/t208xqds/t208xqds.c                           | 1 +
 board/freescale/t208xrdb/cpld.c                               | 1 +
 board/freescale/t208xrdb/cpld.h                               | 1 +
 board/freescale/t208xrdb/ddr.c                                | 1 +
 board/freescale/t208xrdb/ddr.h                                | 1 +
 board/freescale/t208xrdb/eth_t208xrdb.c                       | 1 +
 board/freescale/t208xrdb/spl.c                                | 1 +
 board/freescale/t208xrdb/t208xrdb.c                           | 1 +
 board/freescale/t4rdb/cpld.c                                  | 1 +
 board/freescale/t4rdb/cpld.h                                  | 1 +
 board/freescale/t4rdb/ddr.c                                   | 1 +
 board/freescale/t4rdb/ddr.h                                   | 1 +
 board/freescale/t4rdb/eth.c                                   | 1 +
 board/freescale/t4rdb/spl.c                                   | 1 +
 board/freescale/t4rdb/t4240rdb.c                              | 1 +
 board/friendlyarm/nanopi2/board.c                             | 1 +
 board/friendlyarm/nanopi2/hwrev.c                             | 1 +
 board/friendlyarm/nanopi2/hwrev.h                             | 1 +
 board/gardena/smart-gateway-mt7688/board.c                    | 2 ++
 board/gateworks/gw_ventana/common.c                           | 1 +
 board/gateworks/gw_ventana/eeprom.c                           | 1 +
 board/gateworks/gw_ventana/gsc.c                              | 1 +
 board/gateworks/gw_ventana/gsc.h                              | 1 +
 board/gateworks/gw_ventana/gw_ventana.c                       | 1 +
 board/gateworks/gw_ventana/gw_ventana_spl.c                   | 1 +
 board/gateworks/gw_ventana/ventana_eeprom.h                   | 1 +
 board/gdsys/a38x/controlcenterdc.c                            | 1 +
 board/gdsys/a38x/dt_helpers.c                                 | 1 +
 board/gdsys/a38x/dt_helpers.h                                 | 1 +
 board/gdsys/a38x/hre.c                                        | 2 ++
 board/gdsys/a38x/hre.h                                        | 1 +
 board/gdsys/a38x/hydra.c                                      | 2 ++
 board/gdsys/a38x/hydra.h                                      | 1 +
 board/gdsys/a38x/ihs_phys.c                                   | 2 ++
 board/gdsys/a38x/ihs_phys.h                                   | 1 +
 board/gdsys/a38x/keyprogram.c                                 | 1 +
 board/gdsys/a38x/spl.c                                        | 1 +
 board/gdsys/common/cmd_ioloop.c                               | 2 ++
 board/gdsys/common/dp501.c                                    | 1 +
 board/gdsys/common/dp501.h                                    | 1 +
 board/gdsys/common/fanctrl.h                                  | 1 +
 board/gdsys/common/ihs_mdio.c                                 | 1 +
 board/gdsys/common/ihs_mdio.h                                 | 1 +
 board/gdsys/common/ioep-fpga.c                                | 1 +
 board/gdsys/common/mclink.h                                   | 1 +
 board/gdsys/common/osd.c                                      | 1 +
 board/gdsys/common/osd_cmd.c                                  | 1 +
 board/gdsys/common/phy.c                                      | 1 +
 board/gdsys/mpc8308/hrcon.c                                   | 2 ++
 board/gdsys/mpc8308/mpc8308.c                                 | 1 +
 board/gdsys/mpc8308/mpc8308.h                                 | 1 +
 board/gdsys/mpc8308/strider.c                                 | 2 ++
 board/gdsys/p1022/controlcenterd-id.c                         | 2 ++
 board/gdsys/p1022/controlcenterd.c                            | 1 +
 board/gdsys/p1022/ddr.c                                       | 1 +
 board/gdsys/p1022/diu.c                                       | 1 +
 board/gdsys/p1022/sdhc_boot.c                                 | 1 +
 board/ge/bx50v3/bx50v3.c                                      | 2 ++
 board/ge/common/ge_common.c                                   | 1 +
 board/ge/common/vpd_reader.c                                  | 1 +
 board/ge/common/vpd_reader.h                                  | 1 +
 board/ge/mx53ppd/mx53ppd.c                                    | 1 +
 board/ge/mx53ppd/mx53ppd_video.c                              | 1 +
 board/google/imx8mq_phanbell/spl.c                            | 1 +
 board/grinn/chiliboard/board.c                                | 1 +
 board/grinn/liteboard/board.c                                 | 1 +
 board/highbank/ahci.c                                         | 1 +
 board/highbank/highbank.c                                     | 2 ++
 board/hisilicon/hikey/hikey.c                                 | 1 +
 board/hisilicon/hikey960/hikey960.c                           | 1 +
 board/hisilicon/poplar/poplar.c                               | 1 +
 board/ids/ids8313/ids8313.c                                   | 1 +
 board/imgtec/boston/checkboard.c                              | 1 +
 board/imgtec/boston/ddr.c                                     | 1 +
 board/imgtec/ci20/ci20.c                                      | 2 ++
 board/imgtec/malta/malta.c                                    | 2 ++
 board/imgtec/malta/superio.c                                  | 1 +
 board/intel/edison/edison.c                                   | 1 +
 board/intel/galileo/galileo.c                                 | 1 +
 board/inversepath/usbarmory/usbarmory.c                       | 1 +
 board/iomega/iconnect/iconnect.c                              | 1 +
 board/is1/qts/pinmux_config.h                                 | 1 +
 board/is1/qts/sdram_config.h                                  | 1 +
 board/isee/igep003x/board.c                                   | 1 +
 board/isee/igep00x0/igep00x0.c                                | 1 +
 board/k+p/kp_imx53/kp_id_rev.c                                | 1 +
 board/k+p/kp_imx53/kp_id_rev.h                                | 2 ++
 board/k+p/kp_imx53/kp_imx53.c                                 | 1 +
 board/k+p/kp_imx6q_tpc/kp_imx6q_tpc_spl.c                     | 1 +
 board/keymile/common/common.c                                 | 1 +
 board/keymile/common/common.h                                 | 1 +
 board/keymile/common/qrio.c                                   | 2 ++
 board/keymile/common/qrio.h                                   | 1 +
 board/keymile/km83xx/km83xx.c                                 | 2 ++
 board/keymile/km83xx/km83xx_i2c.c                             | 1 +
 board/keymile/km_arm/fpga_config.c                            | 1 +
 board/keymile/km_arm/km_arm.c                                 | 1 +
 board/keymile/kmp204x/kmp204x.c                               | 1 +
 board/keymile/kmp204x/pci.c                                   | 1 +
 board/keymile/secu1/qts/pinmux_config.h                       | 1 +
 board/keymile/secu1/qts/sdram_config.h                        | 1 +
 board/keymile/secu1/socfpga.c                                 | 1 +
 board/kmc/kzm9g/kzm9g.c                                       | 1 +
 board/kobol/helios4/helios4.c                                 | 1 +
 board/kosagi/novena/novena.c                                  | 1 +
 board/kosagi/novena/novena_spl.c                              | 1 +
 board/kosagi/novena/video.c                                   | 1 +
 board/laird/wb50n/wb50n.c                                     | 1 +
 board/lego/ev3/legoev3.c                                      | 1 +
 board/lg/sniper/sniper.c                                      | 1 +
 board/liebherr/display5/display5.c                            | 2 ++
 board/liebherr/display5/spl.c                                 | 1 +
 board/liebherr/mccmon6/spl.c                                  | 1 +
 board/liebherr/xea/spl_xea.c                                  | 1 +
 board/liebherr/xea/xea.c                                      | 1 +
 board/logicpd/am3517evm/am3517evm.c                           | 1 +
 board/logicpd/imx6/imx6logic.c                                | 1 +
 board/logicpd/omap3som/omap3logic.c                           | 1 +
 board/menlo/m53menlo/m53menlo.c                               | 1 +
 board/microchip/pic32mzda/pic32mzda.c                         | 1 +
 board/mini-box/picosam9g45/picosam9g45.c                      | 1 +
 board/mpc8308_p1m/sdram.c                                     | 1 +
 board/mscc/common/spi.c                                       | 1 +
 board/mscc/jr2/jr2.c                                          | 2 ++
 board/mscc/luton/luton.c                                      | 1 +
 board/mscc/serval/serval.c                                    | 1 +
 board/netgear/dgnd3700v2/dgnd3700v2.c                         | 1 +
 board/nokia/rx51/rx51.c                                       | 1 +
 board/nokia/rx51/rx51.h                                       | 1 +
 board/nokia/rx51/tag_omap.h                                   | 1 +
 board/nvidia/cardhu/cardhu.c                                  | 1 +
 board/nvidia/dalmore/dalmore.c                                | 1 +
 board/nvidia/e2220-1170/e2220-1170.c                          | 1 +
 board/nvidia/p2371-0000/p2371-0000.c                          | 1 +
 board/nvidia/p2371-2180/p2371-2180.c                          | 1 +
 board/nvidia/p2571/p2571.c                                    | 1 +
 board/nvidia/p2771-0000/p2771-0000.c                          | 1 +
 board/nvidia/p3450-0000/p3450-0000.c                          | 1 +
 board/nvidia/venice2/as3722_init.c                            | 1 +
 board/olimex/mx23_olinuxino/spl_boot.c                        | 1 +
 board/phytec/pcl063/pcl063.c                                  | 1 +
 board/phytec/pcl063/spl.c                                     | 1 +
 board/phytec/pcm052/pcm052.c                                  | 1 +
 board/phytec/pcm058/pcm058.c                                  | 1 +
 board/phytec/pfla02/pfla02.c                                  | 1 +
 board/phytec/phycore_rk3288/phycore-rk3288.c                  | 1 +
 board/phytec/phycore_rk3288/som.h                             | 1 +
 board/phytium/durian/durian.c                                 | 1 +
 board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c        | 1 +
 board/pine64/rockpro64_rk3399/rockpro64-rk3399.c              | 1 +
 board/ppcag/bg0900/spl_boot.c                                 | 1 +
 board/qca/ap121/ap121.c                                       | 1 +
 board/qca/ap143/ap143.c                                       | 1 +
 board/qca/ap152/ap152.c                                       | 1 +
 board/qemu-mips/qemu-mips.c                                   | 1 +
 board/qualcomm/dragonboard410c/dragonboard410c.c              | 1 +
 board/qualcomm/dragonboard820c/dragonboard820c.c              | 1 +
 board/raidsonic/ib62x0/ib62x0.c                               | 1 +
 board/raspberrypi/rpi/rpi.c                                   | 2 ++
 board/renesas/alt/alt.c                                       | 1 +
 board/renesas/alt/alt_spl.c                                   | 1 +
 board/renesas/alt/qos.c                                       | 1 +
 board/renesas/blanche/blanche.c                               | 1 +
 board/renesas/blanche/qos.c                                   | 1 +
 board/renesas/condor/condor.c                                 | 1 +
 board/renesas/draak/draak.c                                   | 1 +
 board/renesas/eagle/eagle.c                                   | 1 +
 board/renesas/ebisu/ebisu.c                                   | 1 +
 board/renesas/gose/gose.c                                     | 1 +
 board/renesas/gose/gose_spl.c                                 | 1 +
 board/renesas/gose/qos.c                                      | 1 +
 board/renesas/grpeach/grpeach.c                               | 1 +
 board/renesas/koelsch/koelsch.c                               | 1 +
 board/renesas/koelsch/koelsch_spl.c                           | 1 +
 board/renesas/koelsch/qos.c                                   | 1 +
 board/renesas/lager/lager.c                                   | 1 +
 board/renesas/lager/lager_spl.c                               | 1 +
 board/renesas/lager/qos.c                                     | 1 +
 board/renesas/porter/porter.c                                 | 1 +
 board/renesas/porter/porter_spl.c                             | 1 +
 board/renesas/porter/qos.c                                    | 1 +
 board/renesas/rcar-common/gen3-spl.c                          | 1 +
 board/renesas/salvator-x/salvator-x.c                         | 1 +
 board/renesas/sh7757lcr/sh7757lcr.c                           | 1 +
 board/renesas/sh7763rdp/sh7763rdp.c                           | 1 +
 board/renesas/silk/qos.c                                      | 1 +
 board/renesas/silk/silk.c                                     | 1 +
 board/renesas/silk/silk_spl.c                                 | 1 +
 board/renesas/stout/cpld.c                                    | 1 +
 board/renesas/stout/qos.c                                     | 1 +
 board/renesas/stout/stout.c                                   | 1 +
 board/renesas/stout/stout_spl.c                               | 1 +
 board/renesas/ulcb/cpld.c                                     | 1 +
 board/renesas/ulcb/ulcb.c                                     | 1 +
 board/rockchip/tinker_rk3288/tinker-rk3288.c                  | 1 +
 board/samsung/arndale/arndale.c                               | 1 +
 board/samsung/common/board.c                                  | 2 ++
 board/samsung/common/exynos5-dt-types.c                       | 2 ++
 board/samsung/common/exynos5-dt.c                             | 1 +
 board/samsung/common/misc.c                                   | 1 +
 board/samsung/goni/goni.c                                     | 1 +
 board/samsung/origen/origen.c                                 | 1 +
 board/samsung/smdkc100/smdkc100.c                             | 1 +
 board/samsung/smdkv310/smdkv310.c                             | 1 +
 board/samsung/trats/trats.c                                   | 1 +
 board/samsung/trats2/trats2.c                                 | 1 +
 board/samsung/universal_c210/universal.c                      | 1 +
 board/sandbox/sandbox.c                                       | 1 +
 board/sandisk/sansa_fuze_plus/sfp.c                           | 1 +
 board/sandisk/sansa_fuze_plus/spl_boot.c                      | 1 +
 board/sbc8349/sbc8349.c                                       | 1 +
 board/sbc8548/ddr.c                                           | 2 ++
 board/sbc8548/sbc8548.c                                       | 1 +
 board/sbc8641d/sbc8641d.c                                     | 1 +
 board/schulercontrol/sc_sps_1/spl_boot.c                      | 1 +
 board/seco/mx6quq7/mx6quq7.c                                  | 1 +
 board/seeed/linkit-smart-7688/board.c                         | 1 +
 board/siemens/capricorn/board.c                               | 2 ++
 board/siemens/capricorn/spl.c                                 | 1 +
 board/siemens/common/factoryset.c                             | 1 +
 board/siemens/common/factoryset.h                             | 1 +
 board/siemens/corvus/board.c                                  | 1 +
 board/siemens/draco/board.c                                   | 1 +
 board/siemens/pxm2/board.c                                    | 1 +
 board/siemens/rut/board.c                                     | 2 ++
 board/sifive/fu540/fu540.c                                    | 1 +
 board/sifive/fu540/spl.c                                      | 1 +
 board/sks-kinkel/sksimx6/sksimx6.c                            | 1 +
 board/socrates/nand.c                                         | 1 +
 board/socrates/sdram.c                                        | 2 ++
 board/socrates/socrates.c                                     | 1 +
 board/softing/vining_2000/vining_2000.c                       | 2 ++
 board/softing/vining_fpga/qts/pinmux_config.h                 | 1 +
 board/softing/vining_fpga/qts/sdram_config.h                  | 1 +
 board/softing/vining_fpga/socfpga.c                           | 1 +
 board/solidrun/clearfog/clearfog.c                            | 2 ++
 board/solidrun/common/tlv_data.c                              | 2 ++
 board/solidrun/mx6cuboxi/mx6cuboxi.c                          | 2 ++
 board/spear/spear300/spear300.c                               | 1 +
 board/spear/spear310/spear310.c                               | 1 +
 board/spear/spear320/spear320.c                               | 1 +
 board/spear/spear600/spear600.c                               | 1 +
 board/spear/x600/fpga.c                                       | 1 +
 board/sr1500/qts/pinmux_config.h                              | 1 +
 board/sr1500/qts/sdram_config.h                               | 1 +
 board/st/common/stm32mp_dfu.c                                 | 2 ++
 board/st/common/stpmic1.c                                     | 1 +
 board/st/common/stpmic1.h                                     | 1 +
 board/st/stm32f429-discovery/stm32f429-discovery.c            | 1 +
 board/st/stm32f429-evaluation/stm32f429-evaluation.c          | 1 +
 board/st/stm32f469-discovery/stm32f469-discovery.c            | 1 +
 board/st/stm32f746-disco/stm32f746-disco.c                    | 1 +
 board/st/stm32h743-disco/stm32h743-disco.c                    | 1 +
 board/st/stm32h743-eval/stm32h743-eval.c                      | 1 +
 board/st/stm32mp1/spl.c                                       | 1 +
 board/st/stm32mp1/stm32mp1.c                                  | 2 ++
 board/st/stv0991/stv0991.c                                    | 1 +
 board/sunxi/board.c                                           | 1 +
 board/synopsys/axs10x/axs10x.c                                | 2 ++
 board/synopsys/emsdp/emsdp.c                                  | 1 +
 board/synopsys/hsdk/clk-lib.c                                 | 1 +
 board/synopsys/hsdk/clk-lib.h                                 | 1 +
 board/synopsys/hsdk/env-lib.h                                 | 1 +
 board/synopsys/hsdk/hsdk.c                                    | 3 +++
 board/synopsys/iot_devkit/iot_devkit.c                        | 1 +
 board/sysam/amcore/amcore.c                                   | 1 +
 board/sysam/stmark2/stmark2.c                                 | 1 +
 board/tbs/tbs2910/tbs2910.c                                   | 1 +
 board/tcl/sl50/board.c                                        | 1 +
 board/technexion/pico-imx6/pico-imx6.c                        | 1 +
 board/technexion/pico-imx6/spl.c                              | 1 +
 board/technexion/pico-imx6ul/pico-imx6ul.c                    | 1 +
 board/technexion/pico-imx6ul/spl.c                            | 1 +
 board/technexion/pico-imx7d/spl.c                             | 2 ++
 board/technexion/pico-imx8mq/spl.c                            | 1 +
 board/technologic/ts4600/iomux.c                              | 1 +
 board/technologic/ts4800/ts4800.c                             | 1 +
 board/technologic/ts4800/ts4800.h                             | 1 +
 board/terasic/de0-nano-soc/qts/pinmux_config.h                | 1 +
 board/terasic/de0-nano-soc/qts/sdram_config.h                 | 1 +
 board/terasic/de1-soc/qts/pinmux_config.h                     | 1 +
 board/terasic/de1-soc/qts/sdram_config.h                      | 1 +
 board/terasic/de1-soc/socfpga.c                               | 1 +
 board/terasic/de10-nano/qts/pinmux_config.h                   | 1 +
 board/terasic/de10-nano/qts/sdram_config.h                    | 1 +
 board/terasic/sockit/qts/pinmux_config.h                      | 1 +
 board/terasic/sockit/qts/sdram_config.h                       | 1 +
 board/theadorable/fpga.c                                      | 1 +
 board/theadorable/theadorable.c                               | 1 +
 board/theobroma-systems/puma_rk3399/puma-rk3399.c             | 1 +
 board/ti/am335x/board.c                                       | 1 +
 board/ti/am43xx/board.c                                       | 2 ++
 board/ti/am57xx/board.c                                       | 2 ++
 board/ti/am65x/evm.c                                          | 1 +
 board/ti/beagle/beagle.c                                      | 1 +
 board/ti/common/board_detect.c                                | 3 +++
 board/ti/common/board_detect.h                                | 2 ++
 board/ti/dra7xx/evm.c                                         | 1 +
 board/ti/evm/evm.c                                            | 1 +
 board/ti/evm/evm.h                                            | 1 +
 board/ti/j721e/evm.c                                          | 2 ++
 board/ti/ks2_evm/board.c                                      | 2 ++
 board/ti/ks2_evm/board_k2e.c                                  | 1 +
 board/ti/ks2_evm/board_k2g.c                                  | 1 +
 board/ti/ks2_evm/board_k2hk.c                                 | 1 +
 board/ti/ks2_evm/board_k2l.c                                  | 1 +
 board/ti/ks2_evm/ddr3_k2e.c                                   | 1 +
 board/ti/ks2_evm/ddr3_k2g.c                                   | 1 +
 board/ti/ks2_evm/ddr3_k2hk.c                                  | 1 +
 board/ti/ks2_evm/ddr3_k2l.c                                   | 1 +
 board/ti/omap5_uevm/evm.c                                     | 1 +
 board/ti/panda/panda.c                                        | 1 +
 board/ti/sdp4430/sdp.c                                        | 1 +
 board/ti/ti816x/evm.c                                         | 1 +
 board/timll/devkit3250/devkit3250_spl.c                       | 1 +
 board/timll/devkit8000/devkit8000.c                           | 1 +
 board/toradex/apalis-imx8/apalis-imx8.c                       | 1 +
 board/toradex/apalis-tk1/apalis-tk1.c                         | 1 +
 board/toradex/apalis-tk1/as3722_init.c                        | 1 +
 board/toradex/apalis_imx6/apalis_imx6.c                       | 1 +
 board/toradex/apalis_imx6/pf0100.c                            | 1 +
 board/toradex/apalis_t30/apalis_t30.c                         | 1 +
 board/toradex/colibri-imx8x/colibri-imx8x.c                   | 1 +
 board/toradex/colibri_imx6/colibri_imx6.c                     | 1 +
 board/toradex/colibri_imx6/pf0100.c                           | 1 +
 board/toradex/colibri_imx7/colibri_imx7.c                     | 1 +
 board/toradex/colibri_t20/colibri_t20.c                       | 1 +
 board/toradex/colibri_vf/colibri_vf.c                         | 1 +
 board/toradex/common/tdx-cfg-block.c                          | 2 ++
 board/toradex/common/tdx-common.c                             | 1 +
 board/toradex/verdin-imx8mm/spl.c                             | 1 +
 board/tplink/wdr4300/wdr4300.c                                | 1 +
 board/tqc/tqm834x/pci.c                                       | 1 +
 board/tqc/tqm834x/tqm834x.c                                   | 1 +
 board/tqc/tqma6/tqma6.c                                       | 2 ++
 board/udoo/neo/neo.c                                          | 1 +
 board/udoo/udoo.c                                             | 1 +
 board/udoo/udoo_spl.c                                         | 1 +
 board/variscite/dart_6ul/spl.c                                | 1 +
 board/varisys/common/sys_eeprom.c                             | 2 ++
 board/varisys/cyrus/cyrus.c                                   | 1 +
 board/varisys/cyrus/ddr.c                                     | 1 +
 board/ve8313/ve8313.c                                         | 1 +
 board/vscom/baltos/board.c                                    | 1 +
 board/vscom/baltos/board.h                                    | 1 +
 board/wandboard/spl.c                                         | 1 +
 board/wandboard/wandboard.c                                   | 2 ++
 board/work-microwave/work_92105/work_92105_display.c          | 1 +
 board/work-microwave/work_92105/work_92105_spl.c              | 1 +
 board/xes/common/actl_nand.c                                  | 1 +
 board/xes/common/fsl_8xxx_clk.c                               | 1 +
 board/xes/common/fsl_8xxx_misc.c                              | 1 +
 board/xes/common/fsl_8xxx_misc.h                              | 1 +
 board/xes/common/fsl_8xxx_pci.c                               | 1 +
 board/xes/xpedite517x/ddr.c                                   | 1 +
 board/xes/xpedite520x/ddr.c                                   | 1 +
 board/xes/xpedite537x/ddr.c                                   | 1 +
 board/xes/xpedite550x/ddr.c                                   | 1 +
 board/xilinx/common/board.c                                   | 1 +
 board/xilinx/microblaze-generic/microblaze-generic.c          | 1 +
 board/xilinx/versal/board.c                                   | 1 +
 board/xilinx/zynq/bootimg.c                                   | 1 +
 board/xilinx/zynq/cmds.c                                      | 2 ++
 board/xilinx/zynqmp/cmds.c                                    | 1 +
 board/xilinx/zynqmp/pm_cfg_obj.h                              | 1 +
 board/xilinx/zynqmp/tap_delays.c                              | 1 +
 board/xilinx/zynqmp/zynqmp.c                                  | 2 ++
 board/zyxel/nsa310s/nsa310s.c                                 | 1 +
 cmd/abootimg.c                                                | 1 +
 cmd/acpi.c                                                    | 1 +
 cmd/adtimg.c                                                  | 1 +
 cmd/aes.c                                                     | 1 +
 cmd/armflash.c                                                | 1 +
 cmd/avb.c                                                     | 2 ++
 cmd/axi.c                                                     | 1 +
 cmd/bcb.c                                                     | 1 +
 cmd/bdinfo.c                                                  | 2 ++
 cmd/bedbug.c                                                  | 1 +
 cmd/binop.c                                                   | 1 +
 cmd/blk_common.c                                              | 1 +
 cmd/blob.c                                                    | 2 ++
 cmd/bmp.c                                                     | 2 ++
 cmd/boot.c                                                    | 1 +
 cmd/bootefi.c                                                 | 1 +
 cmd/booti.c                                                   | 1 +
 cmd/bootm.c                                                   | 1 +
 cmd/bootstage.c                                               | 1 +
 cmd/bootz.c                                                   | 2 ++
 cmd/cache.c                                                   | 1 +
 cmd/cbfs.c                                                    | 1 +
 cmd/clk.c                                                     | 2 ++
 cmd/cpu.c                                                     | 1 +
 cmd/cramfs.c                                                  | 1 +
 cmd/cros_ec.c                                                 | 1 +
 cmd/demo.c                                                    | 1 +
 cmd/disk.c                                                    | 1 +
 cmd/eeprom.c                                                  | 2 ++
 cmd/efi.c                                                     | 2 ++
 cmd/efidebug.c                                                | 1 +
 cmd/elf.c                                                     | 1 +
 cmd/fastboot.c                                                | 1 +
 cmd/fat.c                                                     | 1 +
 cmd/flash.c                                                   | 1 +
 cmd/fpga.c                                                    | 1 +
 cmd/fpgad.c                                                   | 1 +
 cmd/fuse.c                                                    | 1 +
 cmd/gpio.c                                                    | 2 ++
 cmd/gpt.c                                                     | 2 ++
 cmd/i2c.c                                                     | 2 ++
 cmd/ini.c                                                     | 1 +
 cmd/io.c                                                      | 1 +
 cmd/iotrace.c                                                 | 1 +
 cmd/itest.c                                                   | 1 +
 cmd/jffs2.c                                                   | 1 +
 cmd/legacy-mtd-utils.c                                        | 1 +
 cmd/legacy-mtd-utils.h                                        | 1 +
 cmd/legacy_led.c                                              | 1 +
 cmd/load.c                                                    | 1 +
 cmd/log.c                                                     | 1 +
 cmd/lzmadec.c                                                 | 1 +
 cmd/md5sum.c                                                  | 1 +
 cmd/mdio.c                                                    | 1 +
 cmd/mem.c                                                     | 2 ++
 cmd/mii.c                                                     | 2 ++
 cmd/misc.c                                                    | 1 +
 cmd/mmc.c                                                     | 2 ++
 cmd/mtd.c                                                     | 2 ++
 cmd/mtdparts.c                                                | 1 +
 cmd/mvebu/bubt.c                                              | 1 +
 cmd/nand.c                                                    | 1 +
 cmd/net.c                                                     | 1 +
 cmd/nvedit.c                                                  | 2 ++
 cmd/nvedit_efi.c                                              | 2 ++
 cmd/onenand.c                                                 | 1 +
 cmd/osd.c                                                     | 1 +
 cmd/pcap.c                                                    | 1 +
 cmd/pci.c                                                     | 2 ++
 cmd/pmic.c                                                    | 1 +
 cmd/pxe_utils.c                                               | 2 ++
 cmd/pxe_utils.h                                               | 1 +
 cmd/qfw.c                                                     | 1 +
 cmd/read.c                                                    | 1 +
 cmd/regulator.c                                               | 1 +
 cmd/reiser.c                                                  | 1 +
 cmd/remoteproc.c                                              | 1 +
 cmd/rng.c                                                     | 1 +
 cmd/rtc.c                                                     | 1 +
 cmd/setexpr.c                                                 | 1 +
 cmd/sf.c                                                      | 2 ++
 cmd/source.c                                                  | 1 +
 cmd/spi.c                                                     | 1 +
 cmd/ti/ddr3.c                                                 | 1 +
 cmd/time.c                                                    | 1 +
 cmd/tlv_eeprom.c                                              | 2 ++
 cmd/tpm-common.c                                              | 1 +
 cmd/tpm-user-utils.h                                          | 1 +
 cmd/tpm-v1.c                                                  | 1 +
 cmd/tpm-v2.c                                                  | 1 +
 cmd/tpm_test.c                                                | 1 +
 cmd/trace.c                                                   | 1 +
 cmd/tsi148.c                                                  | 1 +
 cmd/ubi.c                                                     | 2 ++
 cmd/ubifs.c                                                   | 1 +
 cmd/universe.c                                                | 1 +
 cmd/unlz4.c                                                   | 1 +
 cmd/usb.c                                                     | 1 +
 cmd/usb_mass_storage.c                                        | 1 +
 cmd/version.c                                                 | 1 +
 cmd/w1.c                                                      | 1 +
 cmd/wdt.c                                                     | 1 +
 cmd/wol.c                                                     | 1 +
 cmd/x86/fsp.c                                                 | 1 +
 cmd/x86/hob.c                                                 | 1 +
 cmd/x86/mtrr.c                                                | 1 +
 cmd/ximg.c                                                    | 1 +
 cmd/yaffs2.c                                                  | 1 +
 cmd/zfs.c                                                     | 1 +
 common/android_ab.c                                           | 2 ++
 common/autoboot.c                                             | 1 +
 common/avb_verify.c                                           | 2 ++
 common/bloblist.c                                             | 2 ++
 common/board_f.c                                              | 3 +++
 common/board_info.c                                           | 1 +
 common/board_r.c                                              | 2 ++
 common/bootm.c                                                | 3 +++
 common/bootm_os.c                                             | 3 +++
 common/bootretry.c                                            | 1 +
 common/bootstage.c                                            | 1 +
 common/bouncebuf.c                                            | 1 +
 common/cli.c                                                  | 1 +
 common/cli_hush.c                                             | 1 +
 common/cli_readline.c                                         | 1 +
 common/command.c                                              | 1 +
 common/common_fit.c                                           | 1 +
 common/console.c                                              | 1 +
 common/ddr_spd.c                                              | 1 +
 common/dlmalloc.c                                             | 1 +
 common/edid.c                                                 | 2 ++
 common/eeprom/eeprom_layout.c                                 | 1 +
 common/fdt_support.c                                          | 1 +
 common/flash.c                                                | 1 +
 common/hash.c                                                 | 2 ++
 common/hwconfig.c                                             | 1 +
 common/image-android-dt.c                                     | 1 +
 common/image-android.c                                        | 2 ++
 common/image-cipher.c                                         | 1 +
 common/image-fdt.c                                            | 2 ++
 common/image-fit-sig.c                                        | 2 ++
 common/image-fit.c                                            | 1 +
 common/image-sig.c                                            | 1 +
 common/image.c                                                | 2 ++
 common/init/board_init.c                                      | 2 ++
 common/iotrace.c                                              | 1 +
 common/lcd.c                                                  | 1 +
 common/lcd_console.c                                          | 2 ++
 common/lcd_console_rotation.c                                 | 1 +
 common/lcd_simplefb.c                                         | 1 +
 common/log.c                                                  | 1 +
 common/log_syslog.c                                           | 1 +
 common/malloc_simple.c                                        | 1 +
 common/memsize.c                                              | 1 +
 common/s_record.c                                             | 1 +
 common/spl/spl.c                                              | 3 +++
 common/spl/spl_atf.c                                          | 2 ++
 common/spl/spl_bootrom.c                                      | 1 +
 common/spl/spl_ext.c                                          | 1 +
 common/spl/spl_fat.c                                          | 1 +
 common/spl/spl_fit.c                                          | 2 ++
 common/spl/spl_legacy.c                                       | 1 +
 common/spl/spl_mmc.c                                          | 2 ++
 common/spl/spl_nand.c                                         | 2 ++
 common/spl/spl_net.c                                          | 1 +
 common/spl/spl_nor.c                                          | 2 ++
 common/spl/spl_opensbi.c                                      | 1 +
 common/spl/spl_ram.c                                          | 1 +
 common/spl/spl_sata.c                                         | 1 +
 common/spl/spl_spi.c                                          | 2 ++
 common/spl/spl_ymodem.c                                       | 1 +
 common/splash.c                                               | 2 ++
 common/splash_source.c                                        | 2 ++
 common/stdio.c                                                | 1 +
 common/update.c                                               | 1 +
 common/usb.c                                                  | 2 ++
 common/usb_hub.c                                              | 3 +++
 common/usb_kbd.c                                              | 1 +
 common/usb_storage.c                                          | 1 +
 common/xyzModem.c                                             | 1 +
 disk/part.c                                                   | 1 +
 disk/part_amiga.c                                             | 1 +
 disk/part_amiga.h                                             | 1 +
 disk/part_dos.c                                               | 1 +
 disk/part_efi.c                                               | 1 +
 disk/part_iso.c                                               | 1 +
 disk/part_mac.c                                               | 1 +
 disk/part_mac.h                                               | 1 +
 drivers/adc/meson-saradc.c                                    | 2 ++
 drivers/adc/rockchip-saradc.c                                 | 1 +
 drivers/adc/stm32-adc-core.c                                  | 1 +
 drivers/adc/stm32-adc-core.h                                  | 1 +
 drivers/adc/stm32-adc.c                                       | 2 ++
 drivers/ata/ahci.c                                            | 2 ++
 drivers/ata/ahci_mvebu.c                                      | 2 ++
 drivers/ata/ahci_sunxi.c                                      | 1 +
 drivers/ata/dwc_ahci.c                                        | 1 +
 drivers/ata/dwc_ahsata.c                                      | 2 ++
 drivers/ata/fsl_sata.c                                        | 2 ++
 drivers/ata/fsl_sata.h                                        | 1 +
 drivers/ata/libata.c                                          | 1 +
 drivers/ata/mvsata_ide.c                                      | 1 +
 drivers/ata/sata.c                                            | 1 +
 drivers/ata/sata_ceva.c                                       | 1 +
 drivers/ata/sata_mv.c                                         | 1 +
 drivers/ata/sata_sandbox.c                                    | 1 +
 drivers/ata/sata_sil.c                                        | 1 +
 drivers/ata/sata_sil.h                                        | 1 +
 drivers/ata/sata_sil3114.c                                    | 1 +
 drivers/axi/axi-emul-uclass.c                                 | 1 +
 drivers/axi/axi-uclass.c                                      | 1 +
 drivers/axi/axi_sandbox.c                                     | 1 +
 drivers/axi/ihs_axi.c                                         | 1 +
 drivers/axi/sandbox_store.c                                   | 1 +
 drivers/bios_emulator/atibios.c                               | 1 +
 drivers/bios_emulator/besys.c                                 | 1 +
 drivers/bios_emulator/bios.c                                  | 1 +
 drivers/bios_emulator/biosemu.c                               | 1 +
 drivers/bios_emulator/include/biosemu.h                       | 1 +
 drivers/bios_emulator/include/x86emu/debug.h                  | 1 +
 drivers/bios_emulator/include/x86emu/decode.h                 | 1 +
 drivers/bios_emulator/include/x86emu/ops.h                    | 1 +
 drivers/bios_emulator/include/x86emu/prim_ops.h               | 1 +
 drivers/bios_emulator/include/x86emu/regs.h                   | 1 +
 drivers/bios_emulator/x86emu/debug.c                          | 1 +
 drivers/bios_emulator/x86emu/decode.c                         | 1 +
 drivers/bios_emulator/x86emu/ops.c                            | 1 +
 drivers/bios_emulator/x86emu/ops2.c                           | 1 +
 drivers/bios_emulator/x86emu/prim_ops.c                       | 1 +
 drivers/bios_emulator/x86emu/sys.c                            | 1 +
 drivers/block/blk-uclass.c                                    | 2 ++
 drivers/block/blk_legacy.c                                    | 2 ++
 drivers/block/ide.c                                           | 2 ++
 drivers/block/sandbox.c                                       | 1 +
 drivers/board/board-uclass.c                                  | 1 +
 drivers/board/sandbox.c                                       | 2 ++
 drivers/bootcount/bootcount-uclass.c                          | 1 +
 drivers/bootcount/bootcount.c                                 | 3 +++
 drivers/bootcount/bootcount_at91.c                            | 1 +
 drivers/bootcount/bootcount_davinci.c                         | 1 +
 drivers/bootcount/bootcount_env.c                             | 1 +
 drivers/bootcount/bootcount_ext.c                             | 1 +
 drivers/bootcount/bootcount_i2c.c                             | 1 +
 drivers/bootcount/bootcount_ram.c                             | 1 +
 drivers/bootcount/i2c-eeprom.c                                | 1 +
 drivers/bootcount/rtc.c                                       | 1 +
 drivers/bus/uniphier-system-bus.c                             | 1 +
 drivers/cache/cache-l2x0.c                                    | 1 +
 drivers/cache/cache-ncore.c                                   | 2 ++
 drivers/cache/cache-v5l2.c                                    | 2 ++
 drivers/clk/altera/clk-agilex.c                               | 2 ++
 drivers/clk/altera/clk-agilex.h                               | 1 +
 drivers/clk/altera/clk-arria10.c                              | 2 ++
 drivers/clk/analogbits/wrpll-cln28hpc.c                       | 1 +
 drivers/clk/aspeed/clk_ast2500.c                              | 2 ++
 drivers/clk/at91/clk-generated.c                              | 1 +
 drivers/clk/at91/clk-h32mx.c                                  | 1 +
 drivers/clk/at91/clk-main.c                                   | 1 +
 drivers/clk/at91/clk-master.c                                 | 1 +
 drivers/clk/at91/clk-peripheral.c                             | 1 +
 drivers/clk/at91/clk-plla.c                                   | 1 +
 drivers/clk/at91/clk-plladiv.c                                | 1 +
 drivers/clk/at91/clk-slow.c                                   | 1 +
 drivers/clk/at91/clk-system.c                                 | 1 +
 drivers/clk/at91/clk-usb.c                                    | 1 +
 drivers/clk/at91/clk-utmi.c                                   | 1 +
 drivers/clk/clk-cdce9xx.c                                     | 1 +
 drivers/clk/clk-composite.c                                   | 1 +
 drivers/clk/clk-divider.c                                     | 3 +++
 drivers/clk/clk-fixed-factor.c                                | 1 +
 drivers/clk/clk-gate.c                                        | 2 ++
 drivers/clk/clk-hsdk-cgu.c                                    | 3 +++
 drivers/clk/clk-mux.c                                         | 2 ++
 drivers/clk/clk-ti-sci.c                                      | 1 +
 drivers/clk/clk-uclass.c                                      | 2 ++
 drivers/clk/clk.c                                             | 1 +
 drivers/clk/clk_bcm6345.c                                     | 1 +
 drivers/clk/clk_boston.c                                      | 1 +
 drivers/clk/clk_fixed_factor.c                                | 1 +
 drivers/clk/clk_fixed_rate.c                                  | 1 +
 drivers/clk/clk_pic32.c                                       | 2 ++
 drivers/clk/clk_sandbox.c                                     | 1 +
 drivers/clk/clk_sandbox_ccf.c                                 | 3 +++
 drivers/clk/clk_sandbox_test.c                                | 1 +
 drivers/clk/clk_stm32f.c                                      | 2 ++
 drivers/clk/clk_stm32h7.c                                     | 1 +
 drivers/clk/clk_stm32mp1.c                                    | 3 +++
 drivers/clk/clk_versal.c                                      | 1 +
 drivers/clk/clk_vexpress_osc.c                                | 1 +
 drivers/clk/clk_zynq.c                                        | 2 ++
 drivers/clk/clk_zynqmp.c                                      | 2 ++
 drivers/clk/exynos/clk-exynos7420.c                           | 1 +
 drivers/clk/exynos/clk-pll.c                                  | 1 +
 drivers/clk/ics8n3qv01.c                                      | 1 +
 drivers/clk/imx/clk-composite-8m.c                            | 2 ++
 drivers/clk/imx/clk-gate2.c                                   | 2 ++
 drivers/clk/imx/clk-imx6q.c                                   | 2 ++
 drivers/clk/imx/clk-imx8.c                                    | 2 ++
 drivers/clk/imx/clk-imx8.h                                    | 1 +
 drivers/clk/imx/clk-imx8mm.c                                  | 3 +++
 drivers/clk/imx/clk-imx8mn.c                                  | 3 +++
 drivers/clk/imx/clk-imx8mp.c                                  | 3 +++
 drivers/clk/imx/clk-imx8qm.c                                  | 2 ++
 drivers/clk/imx/clk-imx8qxp.c                                 | 2 ++
 drivers/clk/imx/clk-imxrt1020.c                               | 2 ++
 drivers/clk/imx/clk-imxrt1050.c                               | 2 ++
 drivers/clk/imx/clk-pfd.c                                     | 2 ++
 drivers/clk/imx/clk-pll14xx.c                                 | 3 +++
 drivers/clk/imx/clk-pllv3.c                                   | 3 +++
 drivers/clk/imx/clk.h                                         | 2 ++
 drivers/clk/intel/clk_intel.c                                 | 1 +
 drivers/clk/kendryte/bypass.c                                 | 1 +
 drivers/clk/kendryte/clk.c                                    | 2 ++
 drivers/clk/kendryte/pll.c                                    | 3 +++
 drivers/clk/mediatek/clk-mt7622.c                             | 1 +
 drivers/clk/mediatek/clk-mt7623.c                             | 1 +
 drivers/clk/mediatek/clk-mt7629.c                             | 1 +
 drivers/clk/mediatek/clk-mtk.c                                | 2 ++
 drivers/clk/mediatek/clk-mtk.h                                | 2 ++
 drivers/clk/meson/axg.c                                       | 2 ++
 drivers/clk/meson/clk_meson.h                                 | 1 +
 drivers/clk/meson/g12a.c                                      | 2 ++
 drivers/clk/meson/gxbb.c                                      | 2 ++
 drivers/clk/mpc83xx_clk.c                                     | 2 ++
 drivers/clk/mpc83xx_clk.h                                     | 1 +
 drivers/clk/mtmips/clk-mt7628.c                               | 2 ++
 drivers/clk/mvebu/armada-37xx-periph.c                        | 3 +++
 drivers/clk/mvebu/armada-37xx-tbg.c                           | 2 ++
 drivers/clk/owl/clk_owl.c                                     | 1 +
 drivers/clk/owl/clk_owl.h                                     | 1 +
 drivers/clk/renesas/clk-rcar-gen2.c                           | 1 +
 drivers/clk/renesas/clk-rcar-gen3.c                           | 1 +
 drivers/clk/renesas/r8a774a1-cpg-mssr.c                       | 1 +
 drivers/clk/renesas/r8a7790-cpg-mssr.c                        | 1 +
 drivers/clk/renesas/r8a7791-cpg-mssr.c                        | 1 +
 drivers/clk/renesas/r8a7792-cpg-mssr.c                        | 1 +
 drivers/clk/renesas/r8a7794-cpg-mssr.c                        | 1 +
 drivers/clk/renesas/r8a7795-cpg-mssr.c                        | 1 +
 drivers/clk/renesas/r8a7796-cpg-mssr.c                        | 1 +
 drivers/clk/renesas/r8a77965-cpg-mssr.c                       | 1 +
 drivers/clk/renesas/r8a77970-cpg-mssr.c                       | 1 +
 drivers/clk/renesas/r8a77980-cpg-mssr.c                       | 1 +
 drivers/clk/renesas/r8a77990-cpg-mssr.c                       | 1 +
 drivers/clk/renesas/r8a77995-cpg-mssr.c                       | 1 +
 drivers/clk/renesas/rcar-gen2-cpg.h                           | 1 +
 drivers/clk/renesas/rcar-gen3-cpg.h                           | 2 ++
 drivers/clk/renesas/renesas-cpg-mssr.c                        | 2 ++
 drivers/clk/renesas/renesas-cpg-mssr.h                        | 2 ++
 drivers/clk/rockchip/clk_pll.c                                | 2 ++
 drivers/clk/rockchip/clk_px30.c                               | 1 +
 drivers/clk/rockchip/clk_rk3036.c                             | 1 +
 drivers/clk/rockchip/clk_rk3128.c                             | 1 +
 drivers/clk/rockchip/clk_rk3188.c                             | 2 ++
 drivers/clk/rockchip/clk_rk322x.c                             | 1 +
 drivers/clk/rockchip/clk_rk3288.c                             | 2 ++
 drivers/clk/rockchip/clk_rk3308.c                             | 1 +
 drivers/clk/rockchip/clk_rk3328.c                             | 1 +
 drivers/clk/rockchip/clk_rk3368.c                             | 1 +
 drivers/clk/rockchip/clk_rk3399.c                             | 1 +
 drivers/clk/rockchip/clk_rv1108.c                             | 1 +
 drivers/clk/sifive/fu540-prci.c                               | 2 ++
 drivers/clk/sunxi/clk_a10.c                                   | 1 +
 drivers/clk/sunxi/clk_a10s.c                                  | 1 +
 drivers/clk/sunxi/clk_a23.c                                   | 1 +
 drivers/clk/sunxi/clk_a31.c                                   | 1 +
 drivers/clk/sunxi/clk_a64.c                                   | 1 +
 drivers/clk/sunxi/clk_a80.c                                   | 1 +
 drivers/clk/sunxi/clk_a83t.c                                  | 1 +
 drivers/clk/sunxi/clk_h3.c                                    | 1 +
 drivers/clk/sunxi/clk_h6.c                                    | 1 +
 drivers/clk/sunxi/clk_r40.c                                   | 1 +
 drivers/clk/sunxi/clk_sunxi.c                                 | 2 ++
 drivers/clk/sunxi/clk_v3s.c                                   | 1 +
 drivers/clk/tegra/tegra-car-clk.c                             | 1 +
 drivers/clk/tegra/tegra186-clk.c                              | 1 +
 drivers/clk/uniphier/clk-uniphier-core.c                      | 2 ++
 drivers/core/acpi.c                                           | 1 +
 drivers/core/device-remove.c                                  | 1 +
 drivers/core/device.c                                         | 2 ++
 drivers/core/devres.c                                         | 2 ++
 drivers/core/dump.c                                           | 1 +
 drivers/core/fdtaddr.c                                        | 1 +
 drivers/core/of_access.c                                      | 2 ++
 drivers/core/of_addr.c                                        | 1 +
 drivers/core/of_extra.c                                       | 1 +
 drivers/core/ofnode.c                                         | 2 ++
 drivers/core/read.c                                           | 1 +
 drivers/core/regmap.c                                         | 1 +
 drivers/core/root.c                                           | 3 +++
 drivers/core/simple-bus.c                                     | 1 +
 drivers/core/syscon-uclass.c                                  | 1 +
 drivers/core/uclass.c                                         | 1 +
 drivers/cpu/bmips_cpu.c                                       | 2 ++
 drivers/cpu/imx8_cpu.c                                        | 1 +
 drivers/cpu/mpc83xx_cpu.c                                     | 1 +
 drivers/cpu/riscv_cpu.c                                       | 1 +
 drivers/crypto/ace_sha.h                                      | 1 +
 drivers/crypto/fsl/desc.h                                     | 2 ++
 drivers/crypto/fsl/desc_constr.h                              | 1 +
 drivers/crypto/fsl/error.c                                    | 1 +
 drivers/crypto/fsl/fsl_blob.c                                 | 1 +
 drivers/crypto/fsl/fsl_hash.c                                 | 1 +
 drivers/crypto/fsl/fsl_hash.h                                 | 1 +
 drivers/crypto/fsl/fsl_rsa.c                                  | 1 +
 drivers/crypto/fsl/jobdesc.c                                  | 1 +
 drivers/crypto/fsl/jobdesc.h                                  | 1 +
 drivers/crypto/fsl/jr.c                                       | 2 ++
 drivers/crypto/fsl/jr.h                                       | 2 ++
 drivers/crypto/fsl/rng.c                                      | 1 +
 drivers/crypto/fsl/rsa_caam.h                                 | 1 +
 drivers/crypto/fsl/sec.c                                      | 2 ++
 drivers/crypto/rsa_mod_exp/mod_exp_sw.c                       | 1 +
 drivers/crypto/rsa_mod_exp/mod_exp_uclass.c                   | 1 +
 drivers/ddr/altera/sdram_agilex.c                             | 1 +
 drivers/ddr/altera/sdram_arria10.c                            | 1 +
 drivers/ddr/altera/sdram_gen5.c                               | 1 +
 drivers/ddr/altera/sdram_s10.c                                | 1 +
 drivers/ddr/altera/sdram_soc64.c                              | 2 ++
 drivers/ddr/altera/sdram_soc64.h                              | 2 ++
 drivers/ddr/altera/sequencer.c                                | 2 ++
 drivers/ddr/altera/sequencer.h                                | 1 +
 drivers/ddr/fsl/arm_ddr_gen3.c                                | 2 ++
 drivers/ddr/fsl/ctrl_regs.c                                   | 3 +++
 drivers/ddr/fsl/ddr3_dimm_params.c                            | 1 +
 drivers/ddr/fsl/ddr4_dimm_params.c                            | 1 +
 drivers/ddr/fsl/fsl_ddr_gen4.c                                | 2 ++
 drivers/ddr/fsl/fsl_mmdc.c                                    | 1 +
 drivers/ddr/fsl/interactive.c                                 | 1 +
 drivers/ddr/fsl/main.c                                        | 3 +++
 drivers/ddr/fsl/mpc85xx_ddr_gen1.c                            | 1 +
 drivers/ddr/fsl/mpc85xx_ddr_gen2.c                            | 2 ++
 drivers/ddr/fsl/mpc85xx_ddr_gen3.c                            | 2 ++
 drivers/ddr/fsl/mpc86xx_ddr.c                                 | 1 +
 drivers/ddr/fsl/options.c                                     | 2 ++
 drivers/ddr/fsl/util.c                                        | 2 ++
 drivers/ddr/imx/imx8m/ddr_init.c                              | 1 +
 drivers/ddr/imx/imx8m/ddrphy_csr.c                            | 1 +
 drivers/ddr/imx/imx8m/ddrphy_utils.c                          | 1 +
 drivers/ddr/imx/imx8m/helper.c                                | 1 +
 drivers/ddr/marvell/a38x/ddr3_logging_def.h                   | 1 +
 drivers/ddr/marvell/a38x/ddr3_patterns_64bit.h                | 1 +
 drivers/ddr/marvell/a38x/ddr3_training_hw_algo.h              | 1 +
 drivers/ddr/marvell/a38x/ddr3_training_ip_centralization.h    | 1 +
 drivers/ddr/marvell/a38x/ddr3_training_ip_db.h                | 1 +
 drivers/ddr/marvell/a38x/ddr3_training_ip_pbs.h               | 1 +
 drivers/ddr/marvell/a38x/ddr3_training_leveling.h             | 1 +
 drivers/ddr/marvell/a38x/ddr_ml_wrapper.h                     | 1 +
 drivers/ddr/marvell/a38x/mv_ddr_common.h                      | 1 +
 drivers/ddr/marvell/a38x/seq_exec.h                           | 1 +
 drivers/ddr/marvell/a38x/xor.h                                | 1 +
 drivers/ddr/marvell/axp/ddr3_dfs.c                            | 1 +
 drivers/ddr/marvell/axp/ddr3_dqs.c                            | 1 +
 drivers/ddr/marvell/axp/ddr3_hw_training.c                    | 1 +
 drivers/ddr/marvell/axp/ddr3_init.c                           | 2 ++
 drivers/ddr/marvell/axp/ddr3_patterns_64bit.h                 | 1 +
 drivers/ddr/marvell/axp/ddr3_pbs.c                            | 1 +
 drivers/ddr/marvell/axp/ddr3_read_leveling.c                  | 1 +
 drivers/ddr/marvell/axp/ddr3_sdram.c                          | 1 +
 drivers/ddr/marvell/axp/ddr3_spd.c                            | 1 +
 drivers/ddr/marvell/axp/ddr3_write_leveling.c                 | 1 +
 drivers/ddr/marvell/axp/xor.c                                 | 1 +
 drivers/ddr/microchip/ddr2.c                                  | 2 ++
 drivers/ddr/microchip/ddr2_regs.h                             | 1 +
 drivers/demo/demo-shape.c                                     | 1 +
 drivers/demo/demo-simple.c                                    | 1 +
 drivers/dfu/dfu.c                                             | 3 +++
 drivers/dfu/dfu_mmc.c                                         | 1 +
 drivers/dfu/dfu_mtd.c                                         | 2 ++
 drivers/dfu/dfu_nand.c                                        | 1 +
 drivers/dfu/dfu_ram.c                                         | 1 +
 drivers/dfu/dfu_sf.c                                          | 1 +
 drivers/dfu/dfu_tftp.c                                        | 1 +
 drivers/dfu/dfu_virt.c                                        | 2 ++
 drivers/dma/MCD_dmaApi.c                                      | 1 +
 drivers/dma/MCD_tasks.c                                       | 1 +
 drivers/dma/MCD_tasksInit.c                                   | 1 +
 drivers/dma/apbh_dma.c                                        | 1 +
 drivers/dma/bcm6348-iudma.c                                   | 2 ++
 drivers/dma/dma-uclass.c                                      | 1 +
 drivers/dma/fsl_dma.c                                         | 1 +
 drivers/dma/keystone_nav.c                                    | 1 +
 drivers/dma/keystone_nav_cfg.c                                | 1 +
 drivers/dma/lpc32xx_dma.c                                     | 1 +
 drivers/dma/sandbox-dma-test.c                                | 1 +
 drivers/dma/ti-edma3.c                                        | 1 +
 drivers/dma/ti/k3-psil.c                                      | 1 +
 drivers/dma/ti/k3-udma.c                                      | 3 +++
 drivers/fastboot/fb_command.c                                 | 1 +
 drivers/fastboot/fb_common.c                                  | 2 ++
 drivers/fastboot/fb_getvar.c                                  | 1 +
 drivers/fastboot/fb_mmc.c                                     | 1 +
 drivers/fastboot/fb_nand.c                                    | 2 ++
 drivers/firmware/firmware-zynqmp.c                            | 1 +
 drivers/firmware/ti_sci.c                                     | 2 ++
 drivers/firmware/ti_sci.h                                     | 2 ++
 drivers/fpga/ACEX1K.c                                         | 1 +
 drivers/fpga/altera.c                                         | 1 +
 drivers/fpga/cyclon2.c                                        | 1 +
 drivers/fpga/fpga.c                                           | 2 ++
 drivers/fpga/lattice.c                                        | 1 +
 drivers/fpga/socfpga.c                                        | 1 +
 drivers/fpga/socfpga_arria10.c                                | 1 +
 drivers/fpga/socfpga_gen5.c                                   | 1 +
 drivers/fpga/spartan2.c                                       | 1 +
 drivers/fpga/spartan3.c                                       | 1 +
 drivers/fpga/stratix10.c                                      | 1 +
 drivers/fpga/stratixII.c                                      | 1 +
 drivers/fpga/stratixv.c                                       | 1 +
 drivers/fpga/versalpl.c                                       | 1 +
 drivers/fpga/virtex2.c                                        | 1 +
 drivers/fpga/xilinx.c                                         | 1 +
 drivers/fpga/zynqmppl.c                                       | 2 ++
 drivers/fpga/zynqpl.c                                         | 1 +
 drivers/gpio/74x164_gpio.c                                    | 1 +
 drivers/gpio/adi_gpio2.c                                      | 1 +
 drivers/gpio/altera_pio.c                                     | 1 +
 drivers/gpio/at91_gpio.c                                      | 1 +
 drivers/gpio/atmel_pio4.c                                     | 1 +
 drivers/gpio/axp_gpio.c                                       | 1 +
 drivers/gpio/bcm2835_gpio.c                                   | 1 +
 drivers/gpio/bcm6345_gpio.c                                   | 1 +
 drivers/gpio/cortina_gpio.c                                   | 1 +
 drivers/gpio/da8xx_gpio.h                                     | 1 +
 drivers/gpio/db8500_gpio.c                                    | 2 ++
 drivers/gpio/dwapb_gpio.c                                     | 1 +
 drivers/gpio/gpio-rcar.c                                      | 2 ++
 drivers/gpio/gpio-rza1.c                                      | 1 +
 drivers/gpio/gpio-uclass.c                                    | 2 ++
 drivers/gpio/gpio-uniphier.c                                  | 2 ++
 drivers/gpio/hi6220_gpio.c                                    | 1 +
 drivers/gpio/hsdk-creg-gpio.c                                 | 1 +
 drivers/gpio/imx_rgpio2p.c                                    | 1 +
 drivers/gpio/intel_broadwell_gpio.c                           | 1 +
 drivers/gpio/intel_gpio.c                                     | 1 +
 drivers/gpio/intel_ich6_gpio.c                                | 1 +
 drivers/gpio/iproc_gpio.c                                     | 2 ++
 drivers/gpio/kona_gpio.c                                      | 1 +
 drivers/gpio/kw_gpio.c                                        | 1 +
 drivers/gpio/mpc83xx_spisel_boot.c                            | 2 ++
 drivers/gpio/mpc8xxx_gpio.c                                   | 2 ++
 drivers/gpio/mscc_sgpio.c                                     | 2 ++
 drivers/gpio/msm_gpio.c                                       | 1 +
 drivers/gpio/mt7621_gpio.c                                    | 2 ++
 drivers/gpio/mvebu_gpio.c                                     | 1 +
 drivers/gpio/mvgpio.c                                         | 1 +
 drivers/gpio/mvgpio.h                                         | 1 +
 drivers/gpio/mvmfp.c                                          | 1 +
 drivers/gpio/mxc_gpio.c                                       | 1 +
 drivers/gpio/mxs_gpio.c                                       | 1 +
 drivers/gpio/nx_gpio.c                                        | 1 +
 drivers/gpio/omap_gpio.c                                      | 1 +
 drivers/gpio/pca953x.c                                        | 1 +
 drivers/gpio/pca953x_gpio.c                                   | 1 +
 drivers/gpio/pca9698.c                                        | 1 +
 drivers/gpio/pcf8575_gpio.c                                   | 1 +
 drivers/gpio/pm8916_gpio.c                                    | 1 +
 drivers/gpio/rk_gpio.c                                        | 1 +
 drivers/gpio/s5p_gpio.c                                       | 1 +
 drivers/gpio/sandbox.c                                        | 1 +
 drivers/gpio/sh_pfc.c                                         | 1 +
 drivers/gpio/sifive-gpio.c                                    | 2 ++
 drivers/gpio/spear_gpio.c                                     | 1 +
 drivers/gpio/stm32_gpio.c                                     | 1 +
 drivers/gpio/sunxi_gpio.c                                     | 1 +
 drivers/gpio/tca642x.c                                        | 1 +
 drivers/gpio/tegra186_gpio.c                                  | 2 ++
 drivers/gpio/tegra_gpio.c                                     | 1 +
 drivers/gpio/vybrid_gpio.c                                    | 1 +
 drivers/gpio/xilinx_gpio.c                                    | 1 +
 drivers/gpio/zynq_gpio.c                                      | 1 +
 drivers/hwspinlock/hwspinlock-uclass.c                        | 1 +
 drivers/hwspinlock/stm32_hwspinlock.c                         | 1 +
 drivers/i2c/ast_i2c.c                                         | 2 ++
 drivers/i2c/ast_i2c.h                                         | 1 +
 drivers/i2c/at91_i2c.c                                        | 2 ++
 drivers/i2c/at91_i2c.h                                        | 1 +
 drivers/i2c/cros_ec_ldo.c                                     | 1 +
 drivers/i2c/davinci_i2c.c                                     | 1 +
 drivers/i2c/davinci_i2c.h                                     | 1 +
 drivers/i2c/designware_i2c.c                                  | 2 ++
 drivers/i2c/designware_i2c.h                                  | 1 +
 drivers/i2c/designware_i2c_pci.c                              | 2 ++
 drivers/i2c/exynos_hs_i2c.c                                   | 1 +
 drivers/i2c/fsl_i2c.c                                         | 1 +
 drivers/i2c/i2c-cdns.c                                        | 2 ++
 drivers/i2c/i2c-cortina.c                                     | 1 +
 drivers/i2c/i2c-cortina.h                                     | 1 +
 drivers/i2c/i2c-gpio.c                                        | 2 ++
 drivers/i2c/i2c-uclass.c                                      | 1 +
 drivers/i2c/i2c-uniphier-f.c                                  | 1 +
 drivers/i2c/i2c-uniphier.c                                    | 1 +
 drivers/i2c/i2c-versatile.c                                   | 1 +
 drivers/i2c/i2c_core.c                                        | 2 ++
 drivers/i2c/ihs_i2c.c                                         | 2 ++
 drivers/i2c/imx_lpi2c.c                                       | 2 ++
 drivers/i2c/intel_i2c.c                                       | 1 +
 drivers/i2c/iproc_i2c.c                                       | 2 ++
 drivers/i2c/kona_i2c.c                                        | 1 +
 drivers/i2c/lpc32xx_i2c.c                                     | 1 +
 drivers/i2c/meson_i2c.c                                       | 2 ++
 drivers/i2c/muxes/i2c-arb-gpio-challenge.c                    | 1 +
 drivers/i2c/muxes/i2c-mux-gpio.c                              | 1 +
 drivers/i2c/muxes/i2c-mux-uclass.c                            | 1 +
 drivers/i2c/muxes/pca954x.c                                   | 1 +
 drivers/i2c/mv_i2c.c                                          | 2 ++
 drivers/i2c/mvtwsi.c                                          | 1 +
 drivers/i2c/mxc_i2c.c                                         | 2 ++
 drivers/i2c/nx_i2c.c                                          | 1 +
 drivers/i2c/octeon_i2c.c                                      | 2 ++
 drivers/i2c/omap24xx_i2c.c                                    | 2 ++
 drivers/i2c/rcar_i2c.c                                        | 2 ++
 drivers/i2c/rcar_iic.c                                        | 2 ++
 drivers/i2c/rk_i2c.c                                          | 2 ++
 drivers/i2c/s3c24x0_i2c.c                                     | 1 +
 drivers/i2c/s3c24x0_i2c.h                                     | 1 +
 drivers/i2c/sh_i2c.c                                          | 1 +
 drivers/i2c/soft_i2c.c                                        | 1 +
 drivers/i2c/stm32f7_i2c.c                                     | 2 ++
 drivers/i2c/tegra186_bpmp_i2c.c                               | 1 +
 drivers/i2c/tegra_i2c.c                                       | 2 ++
 drivers/i2c/xilinx_xiic.c                                     | 2 ++
 drivers/input/input.c                                         | 2 ++
 drivers/input/key_matrix.c                                    | 1 +
 drivers/input/tegra-kbc.c                                     | 1 +
 drivers/input/twl4030.c                                       | 1 +
 drivers/input/twl6030.c                                       | 1 +
 drivers/led/led_bcm6328.c                                     | 2 ++
 drivers/led/led_bcm6358.c                                     | 2 ++
 drivers/led/led_bcm6858.c                                     | 2 ++
 drivers/mailbox/k3-sec-proxy.c                                | 1 +
 drivers/mailbox/mailbox-uclass.c                              | 1 +
 drivers/mailbox/sandbox-mbox-test.c                           | 1 +
 drivers/mailbox/sandbox-mbox.c                                | 1 +
 drivers/mailbox/stm32-ipcc.c                                  | 2 ++
 drivers/mailbox/tegra-hsp.c                                   | 1 +
 drivers/mailbox/zynqmp-ipi.c                                  | 2 ++
 drivers/misc/ali512x.c                                        | 1 +
 drivers/misc/altera_sysid.c                                   | 1 +
 drivers/misc/atsha204a-i2c.c                                  | 1 +
 drivers/misc/cbmem_console.c                                  | 2 ++
 drivers/misc/cros_ec.c                                        | 2 ++
 drivers/misc/cros_ec_i2c.c                                    | 2 ++
 drivers/misc/cros_ec_lpc.c                                    | 1 +
 drivers/misc/cros_ec_sandbox.c                                | 2 ++
 drivers/misc/cros_ec_spi.c                                    | 1 +
 drivers/misc/ds4510.c                                         | 1 +
 drivers/misc/fs_loader.c                                      | 1 +
 drivers/misc/fsl_devdis.c                                     | 2 ++
 drivers/misc/fsl_ifc.c                                        | 1 +
 drivers/misc/fsl_iim.c                                        | 1 +
 drivers/misc/fsl_portals.c                                    | 2 ++
 drivers/misc/fsl_sec_mon.c                                    | 1 +
 drivers/misc/gdsys_ioep.c                                     | 1 +
 drivers/misc/gdsys_ioep.h                                     | 2 ++
 drivers/misc/gdsys_rxaui_ctrl.c                               | 1 +
 drivers/misc/i2c_eeprom.c                                     | 1 +
 drivers/misc/i2c_eeprom_emul.c                                | 1 +
 drivers/misc/ihs_fpga.c                                       | 1 +
 drivers/misc/ihs_fpga.h                                       | 1 +
 drivers/misc/imx8/fuse.c                                      | 1 +
 drivers/misc/imx8/scu.c                                       | 1 +
 drivers/misc/imx8/scu_api.c                                   | 1 +
 drivers/misc/irq-uclass.c                                     | 1 +
 drivers/misc/irq_sandbox.c                                    | 1 +
 drivers/misc/jz4780_efuse.c                                   | 2 ++
 drivers/misc/k3_avs.c                                         | 1 +
 drivers/misc/k3_esm.c                                         | 2 ++
 drivers/misc/microchip_flexcom.c                              | 1 +
 drivers/misc/misc_sandbox.c                                   | 1 +
 drivers/misc/mpc83xx_serdes.c                                 | 1 +
 drivers/misc/mpc83xx_serdes.h                                 | 1 +
 drivers/misc/mxc_ocotp.c                                      | 1 +
 drivers/misc/mxs_ocotp.c                                      | 1 +
 drivers/misc/p2sb-uclass.c                                    | 2 ++
 drivers/misc/p2sb_emul.c                                      | 1 +
 drivers/misc/p2sb_sandbox.c                                   | 1 +
 drivers/misc/pca9551_led.c                                    | 1 +
 drivers/misc/qfw.c                                            | 2 ++
 drivers/misc/rockchip-efuse.c                                 | 2 ++
 drivers/misc/rockchip-otp.c                                   | 2 ++
 drivers/misc/sandbox_adder.c                                  | 1 +
 drivers/misc/sifive-otp.c                                     | 2 ++
 drivers/misc/smsc_lpc47m.c                                    | 1 +
 drivers/misc/smsc_sio1007.c                                   | 1 +
 drivers/misc/spltest_sandbox.c                                | 1 +
 drivers/misc/status_led.c                                     | 1 +
 drivers/misc/stm32_rcc.c                                      | 1 +
 drivers/misc/stm32mp_fuse.c                                   | 1 +
 drivers/misc/swap_case.c                                      | 1 +
 drivers/misc/tegra186_bpmp.c                                  | 1 +
 drivers/misc/vexpress_config.c                                | 1 +
 drivers/misc/winbond_w83627.c                                 | 1 +
 drivers/mmc/am654_sdhci.c                                     | 2 ++
 drivers/mmc/arm_pl180_mmci.h                                  | 1 +
 drivers/mmc/aspeed_sdhci.c                                    | 1 +
 drivers/mmc/atmel_sdhci.c                                     | 1 +
 drivers/mmc/bcm2835_sdhci.c                                   | 1 +
 drivers/mmc/bcm2835_sdhost.c                                  | 3 +++
 drivers/mmc/ca_dw_mmc.c                                       | 2 ++
 drivers/mmc/davinci_mmc.c                                     | 1 +
 drivers/mmc/dw_mmc.c                                          | 1 +
 drivers/mmc/exynos_dw_mmc.c                                   | 1 +
 drivers/mmc/fsl_esdhc.c                                       | 3 +++
 drivers/mmc/fsl_esdhc_imx.c                                   | 2 ++
 drivers/mmc/fsl_esdhc_spl.c                                   | 1 +
 drivers/mmc/ftsdc010_mci.c                                    | 3 +++
 drivers/mmc/ftsdc010_mci.h                                    | 2 ++
 drivers/mmc/gen_atmel_mci.c                                   | 1 +
 drivers/mmc/hi6220_dw_mmc.c                                   | 1 +
 drivers/mmc/iproc_sdhci.c                                     | 1 +
 drivers/mmc/jz_mmc.c                                          | 2 ++
 drivers/mmc/kona_sdhci.c                                      | 1 +
 drivers/mmc/meson_gx_mmc.c                                    | 2 ++
 drivers/mmc/mmc-uclass.c                                      | 2 ++
 drivers/mmc/mmc.c                                             | 3 +++
 drivers/mmc/mmc_boot.c                                        | 1 +
 drivers/mmc/mmc_private.h                                     | 1 +
 drivers/mmc/mmc_spi.c                                         | 1 +
 drivers/mmc/mmc_write.c                                       | 1 +
 drivers/mmc/msm_sdhci.c                                       | 1 +
 drivers/mmc/mtk-sd.c                                          | 2 ++
 drivers/mmc/mv_sdhci.c                                        | 2 ++
 drivers/mmc/mvebu_mmc.c                                       | 1 +
 drivers/mmc/mxcmmc.c                                          | 1 +
 drivers/mmc/mxsmmc.c                                          | 1 +
 drivers/mmc/nexell_dw_mmc.c                                   | 1 +
 drivers/mmc/omap_hsmmc.c                                      | 3 +++
 drivers/mmc/pic32_sdhci.c                                     | 1 +
 drivers/mmc/pxa_mmc_gen.c                                     | 1 +
 drivers/mmc/renesas-sdhi.c                                    | 2 ++
 drivers/mmc/rockchip_dw_mmc.c                                 | 2 ++
 drivers/mmc/s5p_sdhci.c                                       | 1 +
 drivers/mmc/sandbox_mmc.c                                     | 1 +
 drivers/mmc/sdhci-cadence.c                                   | 2 ++
 drivers/mmc/sdhci.c                                           | 2 ++
 drivers/mmc/sh_mmcif.c                                        | 1 +
 drivers/mmc/sh_mmcif.h                                        | 1 +
 drivers/mmc/sh_sdhi.c                                         | 2 ++
 drivers/mmc/snps_dw_mmc.c                                     | 1 +
 drivers/mmc/socfpga_dw_mmc.c                                  | 1 +
 drivers/mmc/stm32_sdmmc2.c                                    | 2 ++
 drivers/mmc/sunxi_mmc.c                                       | 1 +
 drivers/mmc/tangier_sdhci.c                                   | 1 +
 drivers/mmc/tegra_mmc.c                                       | 1 +
 drivers/mmc/tmio-common.c                                     | 2 ++
 drivers/mmc/tmio-common.h                                     | 2 ++
 drivers/mmc/uniphier-sd.c                                     | 1 +
 drivers/mmc/xenon_sdhci.c                                     | 1 +
 drivers/mmc/zynq_sdhci.c                                      | 1 +
 drivers/mtd/altera_qspi.c                                     | 1 +
 drivers/mtd/cfi_flash.c                                       | 2 ++
 drivers/mtd/cfi_mtd.c                                         | 1 +
 drivers/mtd/hbmc-am654.c                                      | 2 ++
 drivers/mtd/jedec_flash.c                                     | 1 +
 drivers/mtd/mtd_uboot.c                                       | 1 +
 drivers/mtd/mtdcore.c                                         | 2 ++
 drivers/mtd/mtdpart.c                                         | 1 +
 drivers/mtd/mw_eeprom.c                                       | 1 +
 drivers/mtd/nand/raw/am335x_spl_bch.c                         | 2 ++
 drivers/mtd/nand/raw/arasan_nfc.c                             | 3 +++
 drivers/mtd/nand/raw/atmel_nand.c                             | 2 ++
 drivers/mtd/nand/raw/atmel_nand_ecc.h                         | 1 +
 drivers/mtd/nand/raw/brcmnand/bcm63158_nand.c                 | 3 +++
 drivers/mtd/nand/raw/brcmnand/bcm6368_nand.c                  | 3 +++
 drivers/mtd/nand/raw/brcmnand/bcm68360_nand.c                 | 3 +++
 drivers/mtd/nand/raw/brcmnand/bcm6838_nand.c                  | 3 +++
 drivers/mtd/nand/raw/brcmnand/bcm6858_nand.c                  | 3 +++
 drivers/mtd/nand/raw/brcmnand/brcmnand.c                      | 3 +++
 drivers/mtd/nand/raw/brcmnand/brcmnand.h                      | 1 +
 drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c               | 1 +
 drivers/mtd/nand/raw/brcmnand/brcmnand_compat.h               | 2 ++
 drivers/mtd/nand/raw/davinci_nand.c                           | 2 ++
 drivers/mtd/nand/raw/denali.c                                 | 1 +
 drivers/mtd/nand/raw/denali.h                                 | 1 +
 drivers/mtd/nand/raw/denali_spl.c                             | 2 ++
 drivers/mtd/nand/raw/fsl_elbc_nand.c                          | 2 ++
 drivers/mtd/nand/raw/fsl_elbc_spl.c                           | 1 +
 drivers/mtd/nand/raw/fsl_ifc_nand.c                           | 2 ++
 drivers/mtd/nand/raw/fsl_ifc_spl.c                            | 1 +
 drivers/mtd/nand/raw/fsl_upm.c                                | 2 ++
 drivers/mtd/nand/raw/fsmc_nand.c                              | 2 ++
 drivers/mtd/nand/raw/kb9202_nand.c                            | 1 +
 drivers/mtd/nand/raw/kirkwood_nand.c                          | 1 +
 drivers/mtd/nand/raw/kmeter1_nand.c                           | 1 +
 drivers/mtd/nand/raw/lpc32xx_nand_mlc.c                       | 2 ++
 drivers/mtd/nand/raw/lpc32xx_nand_slc.c                       | 2 ++
 drivers/mtd/nand/raw/mxc_nand.c                               | 2 ++
 drivers/mtd/nand/raw/mxc_nand.h                               | 1 +
 drivers/mtd/nand/raw/mxc_nand_spl.c                           | 1 +
 drivers/mtd/nand/raw/mxs_nand.c                               | 1 +
 drivers/mtd/nand/raw/mxs_nand_spl.c                           | 1 +
 drivers/mtd/nand/raw/nand.c                                   | 2 ++
 drivers/mtd/nand/raw/nand_base.c                              | 2 ++
 drivers/mtd/nand/raw/nand_bbt.c                               | 1 +
 drivers/mtd/nand/raw/nand_ecc.c                               | 1 +
 drivers/mtd/nand/raw/nand_spl_loaders.c                       | 1 +
 drivers/mtd/nand/raw/nand_spl_simple.c                        | 2 ++
 drivers/mtd/nand/raw/nand_util.c                              | 1 +
 drivers/mtd/nand/raw/omap_elm.c                               | 1 +
 drivers/mtd/nand/raw/omap_gpmc.c                              | 2 ++
 drivers/mtd/nand/raw/pxa3xx_nand.c                            | 1 +
 drivers/mtd/nand/raw/pxa3xx_nand.h                            | 1 +
 drivers/mtd/nand/raw/stm32_fmc2_nand.c                        | 3 +++
 drivers/mtd/nand/raw/sunxi_nand.c                             | 3 +++
 drivers/mtd/nand/raw/sunxi_nand_spl.c                         | 2 ++
 drivers/mtd/nand/raw/tegra_nand.c                             | 1 +
 drivers/mtd/nand/raw/tegra_nand.h                             | 1 +
 drivers/mtd/nand/raw/vf610_nfc.c                              | 2 ++
 drivers/mtd/nand/raw/zynq_nand.c                              | 3 +++
 drivers/mtd/nand/spi/core.c                                   | 2 ++
 drivers/mtd/nand/spi/gigadevice.c                             | 1 +
 drivers/mtd/nand/spi/macronix.c                               | 1 +
 drivers/mtd/nand/spi/micron.c                                 | 1 +
 drivers/mtd/nand/spi/toshiba.c                                | 1 +
 drivers/mtd/nand/spi/winbond.c                                | 1 +
 drivers/mtd/onenand/onenand_base.c                            | 2 ++
 drivers/mtd/onenand/onenand_bbt.c                             | 1 +
 drivers/mtd/onenand/onenand_spl.c                             | 1 +
 drivers/mtd/onenand/samsung.c                                 | 2 ++
 drivers/mtd/pic32_flash.c                                     | 2 ++
 drivers/mtd/renesas_rpc_hf.c                                  | 2 ++
 drivers/mtd/spi/fsl_espi_spl.c                                | 1 +
 drivers/mtd/spi/sandbox.c                                     | 1 +
 drivers/mtd/spi/sf-uclass.c                                   | 1 +
 drivers/mtd/spi/sf_dataflash.c                                | 1 +
 drivers/mtd/spi/sf_mtd.c                                      | 1 +
 drivers/mtd/spi/sf_probe.c                                    | 1 +
 drivers/mtd/spi/spi-nor-core.c                                | 2 ++
 drivers/mtd/spi/spi-nor-tiny.c                                | 2 ++
 drivers/mtd/st_smi.c                                          | 1 +
 drivers/mtd/stm32_flash.c                                     | 1 +
 drivers/mtd/stm32_flash.h                                     | 1 +
 drivers/mtd/ubi/attach.c                                      | 1 +
 drivers/mtd/ubi/build.c                                       | 2 ++
 drivers/mtd/ubi/crc32table.h                                  | 1 +
 drivers/mtd/ubi/debug.c                                       | 1 +
 drivers/mtd/ubi/eba.c                                         | 1 +
 drivers/mtd/ubi/fastmap.c                                     | 1 +
 drivers/mtd/ubi/io.c                                          | 1 +
 drivers/mtd/ubi/misc.c                                        | 1 +
 drivers/mtd/ubi/ubi-media.h                                   | 2 ++
 drivers/mtd/ubi/upd.c                                         | 1 +
 drivers/mtd/ubi/vmt.c                                         | 1 +
 drivers/mtd/ubi/vtbl.c                                        | 1 +
 drivers/mtd/ubispl/ubispl.c                                   | 1 +
 drivers/net/ag7xxx.c                                          | 2 ++
 drivers/net/altera_tse.c                                      | 1 +
 drivers/net/altera_tse.h                                      | 2 ++
 drivers/net/armada100_fec.h                                   | 1 +
 drivers/net/at91_emac.c                                       | 1 +
 drivers/net/ax88796.c                                         | 1 +
 drivers/net/ax88796.h                                         | 1 +
 drivers/net/bcm-sf2-eth-gmac.c                                | 2 ++
 drivers/net/bcm-sf2-eth-gmac.h                                | 1 +
 drivers/net/bcm-sf2-eth.c                                     | 1 +
 drivers/net/bcm-sf2-eth.h                                     | 1 +
 drivers/net/bcm6348-eth.c                                     | 2 ++
 drivers/net/bcm6368-eth.c                                     | 2 ++
 drivers/net/bcmgenet.c                                        | 1 +
 drivers/net/calxedaxgmac.c                                    | 1 +
 drivers/net/cs8900.c                                          | 1 +
 drivers/net/cs8900.h                                          | 1 +
 drivers/net/dc2114x.c                                         | 2 ++
 drivers/net/designware.c                                      | 1 +
 drivers/net/designware.h                                      | 1 +
 drivers/net/dm9000x.c                                         | 1 +
 drivers/net/dnet.c                                            | 1 +
 drivers/net/dnet.h                                            | 1 +
 drivers/net/dwc_eth_qos.c                                     | 3 +++
 drivers/net/dwmac_socfpga.c                                   | 1 +
 drivers/net/e1000.c                                           | 2 ++
 drivers/net/e1000.h                                           | 1 +
 drivers/net/e1000_spi.c                                       | 2 ++
 drivers/net/eepro100.c                                        | 2 ++
 drivers/net/ep93xx_eth.h                                      | 1 +
 drivers/net/ethoc.c                                           | 2 ++
 drivers/net/fec_mxc.c                                         | 2 ++
 drivers/net/fec_mxc.h                                         | 1 +
 drivers/net/fm/b4860.c                                        | 1 +
 drivers/net/fm/eth.c                                          | 2 ++
 drivers/net/fm/fdt.c                                          | 1 +
 drivers/net/fm/fm.c                                           | 1 +
 drivers/net/fm/fm.h                                           | 1 +
 drivers/net/fm/init.c                                         | 1 +
 drivers/net/fm/ls1043.c                                       | 1 +
 drivers/net/fm/ls1046.c                                       | 1 +
 drivers/net/fm/memac_phy.c                                    | 1 +
 drivers/net/fm/p1023.c                                        | 1 +
 drivers/net/fm/p4080.c                                        | 1 +
 drivers/net/fm/p5020.c                                        | 1 +
 drivers/net/fm/p5040.c                                        | 1 +
 drivers/net/fm/t1024.c                                        | 2 ++
 drivers/net/fm/t1040.c                                        | 1 +
 drivers/net/fm/t2080.c                                        | 2 ++
 drivers/net/fm/t4240.c                                        | 2 ++
 drivers/net/fm/tgec_phy.c                                     | 1 +
 drivers/net/fsl-mc/dpbp.c                                     | 1 +
 drivers/net/fsl-mc/dpio/dpio.c                                | 1 +
 drivers/net/fsl-mc/dpio/qbman_portal.c                        | 1 +
 drivers/net/fsl-mc/dpio/qbman_sys.h                           | 2 ++
 drivers/net/fsl-mc/dpmac.c                                    | 1 +
 drivers/net/fsl-mc/dpmng.c                                    | 1 +
 drivers/net/fsl-mc/dpni.c                                     | 1 +
 drivers/net/fsl-mc/dprc.c                                     | 1 +
 drivers/net/fsl-mc/dpsparser.c                                | 1 +
 drivers/net/fsl-mc/fsl_dpmng_cmd.h                            | 1 +
 drivers/net/fsl-mc/mc.c                                       | 3 +++
 drivers/net/fsl-mc/mc_sys.c                                   | 1 +
 drivers/net/fsl_enetc.c                                       | 2 ++
 drivers/net/fsl_enetc.h                                       | 1 +
 drivers/net/fsl_enetc_mdio.c                                  | 1 +
 drivers/net/fsl_ls_mdio.c                                     | 1 +
 drivers/net/fsl_mcdmafec.c                                    | 1 +
 drivers/net/fsl_mdio.c                                        | 2 ++
 drivers/net/ftgmac100.c                                       | 1 +
 drivers/net/ftmac100.c                                        | 1 +
 drivers/net/ftmac110.c                                        | 2 ++
 drivers/net/ftmac110.h                                        | 1 +
 drivers/net/gmac_rockchip.c                                   | 1 +
 drivers/net/higmacv300.c                                      | 2 ++
 drivers/net/ks8851_mll.c                                      | 1 +
 drivers/net/lan91c96.c                                        | 1 +
 drivers/net/ldpaa_eth/ldpaa_eth.c                             | 1 +
 drivers/net/ldpaa_eth/ldpaa_eth.h                             | 2 ++
 drivers/net/ldpaa_eth/ldpaa_wriop.c                           | 1 +
 drivers/net/ldpaa_eth/ls1088a.c                               | 2 ++
 drivers/net/ldpaa_eth/ls2080a.c                               | 2 ++
 drivers/net/ldpaa_eth/lx2160a.c                               | 2 ++
 drivers/net/lpc32xx_eth.c                                     | 1 +
 drivers/net/macb.c                                            | 3 +++
 drivers/net/mcffec.c                                          | 1 +
 drivers/net/mcfmii.c                                          | 1 +
 drivers/net/mdio_mux_i2creg.c                                 | 1 +
 drivers/net/mdio_mux_sandbox.c                                | 1 +
 drivers/net/mdio_sandbox.c                                    | 1 +
 drivers/net/mpc8xx_fec.c                                      | 2 ++
 drivers/net/mscc_eswitch/jr2_switch.c                         | 2 ++
 drivers/net/mscc_eswitch/luton_switch.c                       | 2 ++
 drivers/net/mscc_eswitch/mscc_mac_table.c                     | 2 ++
 drivers/net/mscc_eswitch/mscc_mac_table.h                     | 1 +
 drivers/net/mscc_eswitch/mscc_miim.c                          | 1 +
 drivers/net/mscc_eswitch/mscc_miim.h                          | 2 ++
 drivers/net/mscc_eswitch/mscc_xfer.c                          | 2 ++
 drivers/net/mscc_eswitch/mscc_xfer.h                          | 2 ++
 drivers/net/mscc_eswitch/ocelot_switch.c                      | 2 ++
 drivers/net/mscc_eswitch/serval_switch.c                      | 2 ++
 drivers/net/mscc_eswitch/servalt_switch.c                     | 2 ++
 drivers/net/mt7628-eth.c                                      | 3 +++
 drivers/net/mtk_eth.c                                         | 2 ++
 drivers/net/mvgbe.c                                           | 2 ++
 drivers/net/mvgbe.h                                           | 1 +
 drivers/net/mvmdio.c                                          | 1 +
 drivers/net/mvneta.c                                          | 2 ++
 drivers/net/mvpp2.c                                           | 3 +++
 drivers/net/natsemi.c                                         | 1 +
 drivers/net/ne2000.c                                          | 1 +
 drivers/net/ne2000.h                                          | 1 +
 drivers/net/ne2000_base.c                                     | 1 +
 drivers/net/ne2000_base.h                                     | 1 +
 drivers/net/netconsole.c                                      | 1 +
 drivers/net/ns8382x.c                                         | 1 +
 drivers/net/pch_gbe.c                                         | 1 +
 drivers/net/pch_gbe.h                                         | 1 +
 drivers/net/pcnet.c                                           | 2 ++
 drivers/net/pfe_eth/pfe_cmd.c                                 | 1 +
 drivers/net/pfe_eth/pfe_driver.c                              | 1 +
 drivers/net/pfe_eth/pfe_eth.c                                 | 1 +
 drivers/net/pfe_eth/pfe_firmware.c                            | 1 +
 drivers/net/pfe_eth/pfe_hw.c                                  | 1 +
 drivers/net/pfe_eth/pfe_mdio.c                                | 1 +
 drivers/net/phy/aquantia.c                                    | 2 ++
 drivers/net/phy/atheros.c                                     | 1 +
 drivers/net/phy/b53.c                                         | 1 +
 drivers/net/phy/broadcom.c                                    | 1 +
 drivers/net/phy/cortina.c                                     | 1 +
 drivers/net/phy/dp83867.c                                     | 1 +
 drivers/net/phy/fixed.c                                       | 1 +
 drivers/net/phy/generic_10g.c                                 | 1 +
 drivers/net/phy/marvell.c                                     | 1 +
 drivers/net/phy/micrel_ksz90x1.c                              | 1 +
 drivers/net/phy/miiphybb.c                                    | 1 +
 drivers/net/phy/mscc.c                                        | 2 ++
 drivers/net/phy/mv88e61xx.c                                   | 2 ++
 drivers/net/phy/mv88e6352.c                                   | 1 +
 drivers/net/phy/ncsi.c                                        | 2 ++
 drivers/net/phy/phy.c                                         | 3 +++
 drivers/net/phy/realtek.c                                     | 1 +
 drivers/net/phy/teranetics.c                                  | 1 +
 drivers/net/phy/vitesse.c                                     | 1 +
 drivers/net/phy/xilinx_gmii2rgmii.c                           | 1 +
 drivers/net/phy/xilinx_phy.c                                  | 1 +
 drivers/net/pic32_eth.c                                       | 2 ++
 drivers/net/pic32_eth.h                                       | 1 +
 drivers/net/pic32_mdio.c                                      | 1 +
 drivers/net/ravb.c                                            | 2 ++
 drivers/net/rtl8169.c                                         | 1 +
 drivers/net/sandbox-raw-bus.c                                 | 1 +
 drivers/net/sandbox-raw.c                                     | 1 +
 drivers/net/sandbox.c                                         | 1 +
 drivers/net/sh_eth.c                                          | 2 ++
 drivers/net/sh_eth.h                                          | 2 ++
 drivers/net/smc91111.c                                        | 1 +
 drivers/net/smc911x.c                                         | 1 +
 drivers/net/sni_ave.c                                         | 2 ++
 drivers/net/sun8i_emac.c                                      | 2 ++
 drivers/net/sunxi_emac.c                                      | 1 +
 drivers/net/ti/am65-cpsw-nuss.c                               | 2 ++
 drivers/net/ti/cpsw-common.c                                  | 1 +
 drivers/net/ti/cpsw.c                                         | 2 ++
 drivers/net/ti/cpsw_mdio.c                                    | 1 +
 drivers/net/ti/cpsw_mdio.h                                    | 1 +
 drivers/net/ti/davinci_emac.c                                 | 1 +
 drivers/net/ti/davinci_emac.h                                 | 1 +
 drivers/net/ti/keystone_net.c                                 | 1 +
 drivers/net/tsec.c                                            | 2 ++
 drivers/net/uli526x.c                                         | 1 +
 drivers/net/vsc7385.c                                         | 1 +
 drivers/net/vsc9953.c                                         | 1 +
 drivers/net/xilinx_axi_emac.c                                 | 1 +
 drivers/net/xilinx_emaclite.c                                 | 2 ++
 drivers/net/zynq_gem.c                                        | 3 +++
 drivers/nvme/nvme.c                                           | 3 +++
 drivers/nvme/nvme.h                                           | 2 ++
 drivers/nvme/nvme_show.c                                      | 1 +
 drivers/pch/pch-uclass.c                                      | 1 +
 drivers/pch/pch7.c                                            | 1 +
 drivers/pch/pch9.c                                            | 1 +
 drivers/pch/sandbox_pch.c                                     | 1 +
 drivers/pci/fsl_pci_init.c                                    | 1 +
 drivers/pci/pci-aardvark.c                                    | 1 +
 drivers/pci/pci-emul-uclass.c                                 | 1 +
 drivers/pci/pci-rcar-gen2.c                                   | 1 +
 drivers/pci/pci-rcar-gen3.c                                   | 1 +
 drivers/pci/pci-uclass.c                                      | 2 ++
 drivers/pci/pci.c                                             | 2 ++
 drivers/pci/pci_auto.c                                        | 1 +
 drivers/pci/pci_auto_common.c                                 | 1 +
 drivers/pci/pci_auto_old.c                                    | 1 +
 drivers/pci/pci_common.c                                      | 2 ++
 drivers/pci/pci_compat.c                                      | 1 +
 drivers/pci/pci_gt64120.c                                     | 1 +
 drivers/pci/pci_indirect.c                                    | 1 +
 drivers/pci/pci_mpc85xx.c                                     | 2 ++
 drivers/pci/pci_msc01.c                                       | 1 +
 drivers/pci/pci_mvebu.c                                       | 3 +++
 drivers/pci/pci_rom.c                                         | 3 +++
 drivers/pci/pci_sandbox.c                                     | 1 +
 drivers/pci/pci_sh7751.c                                      | 1 +
 drivers/pci/pci_sh7780.c                                      | 1 +
 drivers/pci/pci_tegra.c                                       | 2 ++
 drivers/pci/pci_x86.c                                         | 1 +
 drivers/pci/pcie_brcmstb.c                                    | 3 +++
 drivers/pci/pcie_dw_mvebu.c                                   | 1 +
 drivers/pci/pcie_dw_ti.c                                      | 3 +++
 drivers/pci/pcie_ecam_generic.c                               | 2 ++
 drivers/pci/pcie_fsl.c                                        | 2 ++
 drivers/pci/pcie_fsl.h                                        | 2 ++
 drivers/pci/pcie_imx.c                                        | 3 +++
 drivers/pci/pcie_intel_fpga.c                                 | 2 ++
 drivers/pci/pcie_layerscape.c                                 | 1 +
 drivers/pci/pcie_layerscape.h                                 | 2 ++
 drivers/pci/pcie_layerscape_ep.c                              | 2 ++
 drivers/pci/pcie_layerscape_fixup.c                           | 1 +
 drivers/pci/pcie_layerscape_fixup_common.c                    | 1 +
 drivers/pci/pcie_layerscape_gen4.c                            | 2 ++
 drivers/pci/pcie_layerscape_gen4.h                            | 2 ++
 drivers/pci/pcie_layerscape_gen4_fixup.c                      | 1 +
 drivers/pci/pcie_layerscape_rc.c                              | 1 +
 drivers/pci/pcie_mediatek.c                                   | 2 ++
 drivers/pci/pcie_phytium.c                                    | 1 +
 drivers/pci/pcie_rockchip.c                                   | 1 +
 drivers/pci/pcie_xilinx.c                                     | 1 +
 drivers/pci_endpoint/pci_ep-uclass.c                          | 1 +
 drivers/pci_endpoint/pcie-cadence-ep.c                        | 2 ++
 drivers/pci_endpoint/pcie-cadence.h                           | 2 ++
 drivers/pci_endpoint/sandbox-pci_ep.c                         | 1 +
 drivers/phy/allwinner/phy-sun4i-usb.c                         | 3 +++
 drivers/phy/bcm6318-usbh-phy.c                                | 1 +
 drivers/phy/bcm6348-usbh-phy.c                                | 1 +
 drivers/phy/bcm6358-usbh-phy.c                                | 1 +
 drivers/phy/bcm6368-usbh-phy.c                                | 2 ++
 drivers/phy/keystone-usb-phy.c                                | 2 ++
 drivers/phy/marvell/comphy_a3700.c                            | 1 +
 drivers/phy/marvell/comphy_core.c                             | 2 ++
 drivers/phy/marvell/comphy_core.h                             | 2 ++
 drivers/phy/marvell/comphy_cp110.c                            | 2 ++
 drivers/phy/marvell/comphy_mux.c                              | 2 ++
 drivers/phy/meson-g12a-usb3-pcie.c                            | 1 +
 drivers/phy/meson-gxbb-usb2.c                                 | 1 +
 drivers/phy/meson-gxl-usb2.c                                  | 1 +
 drivers/phy/meson-gxl-usb3.c                                  | 1 +
 drivers/phy/msm8916-usbh-phy.c                                | 2 ++
 drivers/phy/mt76x8-usb-phy.c                                  | 2 ++
 drivers/phy/omap-usb2-phy.c                                   | 2 ++
 drivers/phy/phy-mtk-tphy.c                                    | 2 ++
 drivers/phy/phy-rcar-gen2.c                                   | 1 +
 drivers/phy/phy-stm32-usbphyc.c                               | 1 +
 drivers/phy/phy-ti-am654.c                                    | 1 +
 drivers/phy/rockchip/phy-rockchip-inno-usb2.c                 | 1 +
 drivers/phy/rockchip/phy-rockchip-pcie.c                      | 1 +
 drivers/phy/rockchip/phy-rockchip-typec.c                     | 3 +++
 drivers/phy/sti_usb_phy.c                                     | 2 ++
 drivers/phy/ti-pipe3-phy.c                                    | 2 ++
 drivers/pinctrl/aspeed/pinctrl_ast2500.c                      | 1 +
 drivers/pinctrl/ath79/pinctrl_ar933x.c                        | 2 ++
 drivers/pinctrl/ath79/pinctrl_qca953x.c                       | 2 ++
 drivers/pinctrl/broadcom/pinctrl-bcm283x.c                    | 1 +
 drivers/pinctrl/broadcom/pinctrl-bcm6838.c                    | 1 +
 drivers/pinctrl/exynos/pinctrl-exynos.c                       | 1 +
 drivers/pinctrl/exynos/pinctrl-exynos7420.c                   | 1 +
 drivers/pinctrl/intel/pinctrl.c                               | 1 +
 drivers/pinctrl/mediatek/pinctrl-mtk-common.c                 | 1 +
 drivers/pinctrl/mediatek/pinctrl-mtk-common.h                 | 2 ++
 drivers/pinctrl/meson/pinctrl-meson-axg.c                     | 1 +
 drivers/pinctrl/meson/pinctrl-meson-g12a.c                    | 1 +
 drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c                  | 2 ++
 drivers/pinctrl/meson/pinctrl-meson-gxbb.c                    | 1 +
 drivers/pinctrl/meson/pinctrl-meson-gxl.c                     | 1 +
 drivers/pinctrl/meson/pinctrl-meson.c                         | 1 +
 drivers/pinctrl/meson/pinctrl-meson.h                         | 1 +
 drivers/pinctrl/mscc/mscc-common.c                            | 1 +
 drivers/pinctrl/mscc/mscc-common.h                            | 1 +
 drivers/pinctrl/mtmips/pinctrl-mt7628.c                       | 2 ++
 drivers/pinctrl/mtmips/pinctrl-mtmips-common.c                | 1 +
 drivers/pinctrl/mtmips/pinctrl-mtmips-common.h                | 2 ++
 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c                   | 2 ++
 drivers/pinctrl/mvebu/pinctrl-mvebu.c                         | 1 +
 drivers/pinctrl/mvebu/pinctrl-mvebu.h                         | 1 +
 drivers/pinctrl/nexell/pinctrl-nexell.c                       | 1 +
 drivers/pinctrl/nexell/pinctrl-nexell.h                       | 1 +
 drivers/pinctrl/nexell/pinctrl-s5pxx18.c                      | 2 ++
 drivers/pinctrl/nxp/pinctrl-imx.c                             | 1 +
 drivers/pinctrl/nxp/pinctrl-imx.h                             | 2 ++
 drivers/pinctrl/nxp/pinctrl-imx5.c                            | 1 +
 drivers/pinctrl/nxp/pinctrl-imx6.c                            | 1 +
 drivers/pinctrl/nxp/pinctrl-imx7.c                            | 1 +
 drivers/pinctrl/nxp/pinctrl-imx7ulp.c                         | 1 +
 drivers/pinctrl/nxp/pinctrl-imx8.c                            | 1 +
 drivers/pinctrl/nxp/pinctrl-imx8m.c                           | 1 +
 drivers/pinctrl/nxp/pinctrl-imxrt.c                           | 1 +
 drivers/pinctrl/nxp/pinctrl-mxs.c                             | 2 ++
 drivers/pinctrl/nxp/pinctrl-mxs.h                             | 2 ++
 drivers/pinctrl/nxp/pinctrl-scu.c                             | 1 +
 drivers/pinctrl/nxp/pinctrl-vf610.c                           | 1 +
 drivers/pinctrl/pinctrl-at91-pio4.c                           | 1 +
 drivers/pinctrl/pinctrl-at91.c                                | 2 ++
 drivers/pinctrl/pinctrl-generic.c                             | 1 +
 drivers/pinctrl/pinctrl-single.c                              | 1 +
 drivers/pinctrl/pinctrl-sti.c                                 | 1 +
 drivers/pinctrl/pinctrl-stmfx.c                               | 1 +
 drivers/pinctrl/pinctrl-uclass.c                              | 2 ++
 drivers/pinctrl/pinctrl_pic32.c                               | 2 ++
 drivers/pinctrl/pinctrl_stm32.c                               | 1 +
 drivers/pinctrl/renesas/pfc-r7s72100.c                        | 2 ++
 drivers/pinctrl/renesas/pfc-r8a7790.c                         | 1 +
 drivers/pinctrl/renesas/pfc-r8a7791.c                         | 1 +
 drivers/pinctrl/renesas/pfc-r8a7792.c                         | 1 +
 drivers/pinctrl/renesas/pfc-r8a7794.c                         | 1 +
 drivers/pinctrl/renesas/pfc-r8a7795.c                         | 1 +
 drivers/pinctrl/renesas/pfc-r8a7796.c                         | 1 +
 drivers/pinctrl/renesas/pfc-r8a77965.c                        | 1 +
 drivers/pinctrl/renesas/pfc-r8a77970.c                        | 1 +
 drivers/pinctrl/renesas/pfc-r8a77980.c                        | 1 +
 drivers/pinctrl/renesas/pfc-r8a77990.c                        | 1 +
 drivers/pinctrl/renesas/pfc-r8a77995.c                        | 1 +
 drivers/pinctrl/renesas/pfc.c                                 | 3 +++
 drivers/pinctrl/renesas/sh_pfc.h                              | 2 ++
 drivers/pinctrl/rockchip/pinctrl-px30.c                       | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3036.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3128.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3188.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk322x.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3288.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3308.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3328.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3368.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rk3399.c                     | 1 +
 drivers/pinctrl/rockchip/pinctrl-rockchip-core.c              | 2 ++
 drivers/pinctrl/rockchip/pinctrl-rv1108.c                     | 1 +
 drivers/pinctrl/uniphier/pinctrl-uniphier-core.c              | 2 ++
 drivers/pinctrl/uniphier/pinctrl-uniphier.h                   | 1 +
 drivers/power/acpi_pmc/acpi-pmc-uclass.c                      | 1 +
 drivers/power/acpi_pmc/pmc_emul.c                             | 1 +
 drivers/power/acpi_pmc/sandbox.c                              | 1 +
 drivers/power/axp152.c                                        | 1 +
 drivers/power/axp209.c                                        | 1 +
 drivers/power/axp221.c                                        | 1 +
 drivers/power/axp809.c                                        | 1 +
 drivers/power/axp818.c                                        | 1 +
 drivers/power/domain/bcm6328-power-domain.c                   | 1 +
 drivers/power/domain/imx8-power-domain.c                      | 1 +
 drivers/power/domain/meson-ee-pwrc.c                          | 2 ++
 drivers/power/domain/meson-gx-pwrc-vpu.c                      | 1 +
 drivers/power/domain/mtk-power-domain.c                       | 2 ++
 drivers/power/domain/ti-sci-power-domain.c                    | 1 +
 drivers/power/exynos-tmu.c                                    | 1 +
 drivers/power/fuel_gauge/fg_max17042.c                        | 1 +
 drivers/power/mfd/fg_max77693.c                               | 1 +
 drivers/power/mt6323.c                                        | 1 +
 drivers/power/palmas.c                                        | 1 +
 drivers/power/pmic/act8846.c                                  | 1 +
 drivers/power/pmic/as3722.c                                   | 1 +
 drivers/power/pmic/as3722_gpio.c                              | 1 +
 drivers/power/pmic/bd71837.c                                  | 1 +
 drivers/power/pmic/da9063.c                                   | 2 ++
 drivers/power/pmic/fan53555.c                                 | 1 +
 drivers/power/pmic/i2c_pmic_emul.c                            | 1 +
 drivers/power/pmic/lp873x.c                                   | 1 +
 drivers/power/pmic/lp87565.c                                  | 1 +
 drivers/power/pmic/max77686.c                                 | 1 +
 drivers/power/pmic/max8997.c                                  | 1 +
 drivers/power/pmic/max8998.c                                  | 1 +
 drivers/power/pmic/mc34708.c                                  | 1 +
 drivers/power/pmic/palmas.c                                   | 1 +
 drivers/power/pmic/pca9450.c                                  | 1 +
 drivers/power/pmic/pfuze100.c                                 | 1 +
 drivers/power/pmic/pm8916.c                                   | 1 +
 drivers/power/pmic/pmic-uclass.c                              | 1 +
 drivers/power/pmic/pmic_hi6553.c                              | 1 +
 drivers/power/pmic/pmic_max8997.c                             | 1 +
 drivers/power/pmic/pmic_tps65217.c                            | 1 +
 drivers/power/pmic/pmic_tps65218.c                            | 1 +
 drivers/power/pmic/pmic_tps65910.c                            | 1 +
 drivers/power/pmic/pmic_tps65910_dm.c                         | 1 +
 drivers/power/pmic/rk8xx.c                                    | 1 +
 drivers/power/pmic/rn5t567.c                                  | 1 +
 drivers/power/pmic/s2mps11.c                                  | 1 +
 drivers/power/pmic/s5m8767.c                                  | 1 +
 drivers/power/pmic/sandbox.c                                  | 1 +
 drivers/power/pmic/stpmic1.c                                  | 1 +
 drivers/power/pmic/tps65090.c                                 | 1 +
 drivers/power/pmic/tps65941.c                                 | 1 +
 drivers/power/power_fsl.c                                     | 1 +
 drivers/power/regulator/act8846.c                             | 1 +
 drivers/power/regulator/as3722_regulator.c                    | 1 +
 drivers/power/regulator/bd71837.c                             | 2 ++
 drivers/power/regulator/da9063.c                              | 2 ++
 drivers/power/regulator/fan53555.c                            | 2 ++
 drivers/power/regulator/gpio-regulator.c                      | 1 +
 drivers/power/regulator/max77686.c                            | 1 +
 drivers/power/regulator/palmas_regulator.c                    | 1 +
 drivers/power/regulator/pbias_regulator.c                     | 2 ++
 drivers/power/regulator/pfuze100.c                            | 1 +
 drivers/power/regulator/regulator-uclass.c                    | 1 +
 drivers/power/regulator/rk8xx.c                               | 2 ++
 drivers/power/regulator/s2mps11_regulator.c                   | 2 ++
 drivers/power/regulator/sandbox.c                             | 2 ++
 drivers/power/regulator/stm32-vrefbuf.c                       | 3 +++
 drivers/power/regulator/stpmic1.c                             | 2 ++
 drivers/power/regulator/tps62360_regulator.c                  | 1 +
 drivers/power/regulator/tps65090_regulator.c                  | 1 +
 drivers/power/regulator/tps65910_regulator.c                  | 2 ++
 drivers/power/sy8106a.c                                       | 1 +
 drivers/power/tps6586x.c                                      | 1 +
 drivers/power/twl4030.c                                       | 1 +
 drivers/power/twl6030.c                                       | 1 +
 drivers/pwm/exynos_pwm.c                                      | 1 +
 drivers/pwm/pwm-imx.c                                         | 1 +
 drivers/pwm/pwm-mtk.c                                         | 3 +++
 drivers/pwm/pwm-sifive.c                                      | 3 +++
 drivers/pwm/pwm-uclass.c                                      | 1 +
 drivers/pwm/rk_pwm.c                                          | 1 +
 drivers/pwm/sandbox_pwm.c                                     | 1 +
 drivers/pwm/sunxi_pwm.c                                       | 1 +
 drivers/pwm/tegra_pwm.c                                       | 1 +
 drivers/qe/qe.c                                               | 2 ++
 drivers/qe/uccf.c                                             | 1 +
 drivers/qe/uec.c                                              | 1 +
 drivers/qe/uec_phy.c                                          | 1 +
 drivers/qe/uec_phy.h                                          | 1 +
 drivers/ram/bmips_ram.c                                       | 2 ++
 drivers/ram/imxrt_sdram.c                                     | 1 +
 drivers/ram/k3-am654-ddrss.c                                  | 2 ++
 drivers/ram/k3-am654-ddrss.h                                  | 1 +
 drivers/ram/k3-j721e/cps_drv_lpddr4.h                         | 1 +
 drivers/ram/k3-j721e/k3-j721e-ddrss.c                         | 2 ++
 drivers/ram/k3-j721e/lpddr4_private.h                         | 1 +
 drivers/ram/mediatek/ddr3-mt7629.c                            | 1 +
 drivers/ram/mpc83xx_sdram.c                                   | 1 +
 drivers/ram/rockchip/dmc-rk3368.c                             | 2 ++
 drivers/ram/rockchip/sdram_common.c                           | 2 ++
 drivers/ram/rockchip/sdram_pctl_px30.c                        | 2 ++
 drivers/ram/rockchip/sdram_phy_px30.c                         | 2 ++
 drivers/ram/rockchip/sdram_px30.c                             | 2 ++
 drivers/ram/rockchip/sdram_rk3128.c                           | 1 +
 drivers/ram/rockchip/sdram_rk3188.c                           | 2 ++
 drivers/ram/rockchip/sdram_rk3288.c                           | 2 ++
 drivers/ram/rockchip/sdram_rk3308.c                           | 1 +
 drivers/ram/rockchip/sdram_rk3328.c                           | 2 ++
 drivers/ram/rockchip/sdram_rk3399.c                           | 3 +++
 drivers/ram/sifive/fu540_ddr.c                                | 1 +
 drivers/ram/stm32_sdram.c                                     | 1 +
 drivers/ram/stm32mp1/stm32mp1_ddr.c                           | 3 +++
 drivers/ram/stm32mp1/stm32mp1_ddr.h                           | 1 +
 drivers/ram/stm32mp1/stm32mp1_ddr_regs.h                      | 1 +
 drivers/ram/stm32mp1/stm32mp1_interactive.c                   | 2 ++
 drivers/ram/stm32mp1/stm32mp1_ram.c                           | 3 +++
 drivers/ram/stm32mp1/stm32mp1_tests.c                         | 2 ++
 drivers/ram/stm32mp1/stm32mp1_tuning.c                        | 2 ++
 drivers/remoteproc/k3_system_controller.c                     | 2 ++
 drivers/remoteproc/rproc-elf-loader.c                         | 2 ++
 drivers/remoteproc/rproc-uclass.c                             | 1 +
 drivers/remoteproc/sandbox_testproc.c                         | 1 +
 drivers/remoteproc/stm32_copro.c                              | 2 ++
 drivers/remoteproc/ti_k3_arm64_rproc.c                        | 1 +
 drivers/remoteproc/ti_k3_dsp_rproc.c                          | 3 +++
 drivers/remoteproc/ti_k3_r5f_rproc.c                          | 3 +++
 drivers/remoteproc/ti_power_proc.c                            | 1 +
 drivers/remoteproc/ti_sci_proc.h                              | 1 +
 drivers/reset/ast2500-reset.c                                 | 1 +
 drivers/reset/reset-bcm6345.c                                 | 1 +
 drivers/reset/reset-hisilicon.c                               | 2 ++
 drivers/reset/reset-hsdk.c                                    | 2 ++
 drivers/reset/reset-imx7.c                                    | 2 ++
 drivers/reset/reset-mediatek.c                                | 1 +
 drivers/reset/reset-meson.c                                   | 1 +
 drivers/reset/reset-mtmips.c                                  | 1 +
 drivers/reset/reset-rockchip.c                                | 2 ++
 drivers/reset/reset-socfpga.c                                 | 2 ++
 drivers/reset/reset-sunxi.c                                   | 2 ++
 drivers/reset/reset-syscon.c                                  | 2 ++
 drivers/reset/reset-ti-sci.c                                  | 2 ++
 drivers/reset/reset-uniphier.c                                | 2 ++
 drivers/reset/sti-reset.c                                     | 3 +++
 drivers/rng/meson-rng.c                                       | 1 +
 drivers/rng/rng-uclass.c                                      | 1 +
 drivers/rng/rockchip_rng.c                                    | 1 +
 drivers/rng/sandbox_rng.c                                     | 1 +
 drivers/rng/stm32mp1_rng.c                                    | 1 +
 drivers/rtc/at91sam9_rtt.c                                    | 1 +
 drivers/rtc/ds1306.c                                          | 1 +
 drivers/rtc/ds1307.c                                          | 1 +
 drivers/rtc/ds1337.c                                          | 1 +
 drivers/rtc/ds1374.c                                          | 1 +
 drivers/rtc/ds1556.c                                          | 1 +
 drivers/rtc/ds164x.c                                          | 1 +
 drivers/rtc/ds174x.c                                          | 1 +
 drivers/rtc/ds3231.c                                          | 1 +
 drivers/rtc/ds3232.c                                          | 1 +
 drivers/rtc/i2c_rtc_emul.c                                    | 1 +
 drivers/rtc/imxdi.c                                           | 2 ++
 drivers/rtc/isl1208.c                                         | 1 +
 drivers/rtc/m41t11.c                                          | 1 +
 drivers/rtc/m41t60.c                                          | 1 +
 drivers/rtc/m41t62.c                                          | 1 +
 drivers/rtc/m41t94.c                                          | 1 +
 drivers/rtc/m48t35ax.c                                        | 1 +
 drivers/rtc/max6900.c                                         | 1 +
 drivers/rtc/mc13xxx-rtc.c                                     | 1 +
 drivers/rtc/mc146818.c                                        | 1 +
 drivers/rtc/mk48t59.c                                         | 1 +
 drivers/rtc/mvrtc.c                                           | 1 +
 drivers/rtc/mvrtc.h                                           | 1 +
 drivers/rtc/mx27rtc.c                                         | 1 +
 drivers/rtc/mxsrtc.c                                          | 1 +
 drivers/rtc/pcf2127.c                                         | 1 +
 drivers/rtc/pcf8563.c                                         | 1 +
 drivers/rtc/pt7c4338.c                                        | 1 +
 drivers/rtc/rtc-uclass.c                                      | 1 +
 drivers/rtc/rv3029.c                                          | 1 +
 drivers/rtc/rv8803.c                                          | 1 +
 drivers/rtc/rx8010sj.c                                        | 1 +
 drivers/rtc/rx8025.c                                          | 1 +
 drivers/rtc/s35392a.c                                         | 1 +
 drivers/rtc/s3c24x0_rtc.c                                     | 1 +
 drivers/rtc/sandbox_rtc.c                                     | 1 +
 drivers/rtc/stm32_rtc.c                                       | 1 +
 drivers/rtc/x1205.c                                           | 1 +
 drivers/scsi/scsi.c                                           | 2 ++
 drivers/serial/altera_jtag_uart.c                             | 1 +
 drivers/serial/altera_uart.c                                  | 1 +
 drivers/serial/atmel_usart.c                                  | 2 ++
 drivers/serial/atmel_usart.h                                  | 1 +
 drivers/serial/lpc32xx_hsuart.c                               | 1 +
 drivers/serial/ns16550.c                                      | 1 +
 drivers/serial/sandbox.c                                      | 2 ++
 drivers/serial/serial-uclass.c                                | 1 +
 drivers/serial/serial.c                                       | 1 +
 drivers/serial/serial_ar933x.c                                | 2 ++
 drivers/serial/serial_arc.c                                   | 1 +
 drivers/serial/serial_bcm283x_mu.c                            | 1 +
 drivers/serial/serial_bcm6345.c                               | 2 ++
 drivers/serial/serial_cortina.c                               | 2 ++
 drivers/serial/serial_efi.c                                   | 1 +
 drivers/serial/serial_linflexuart.c                           | 1 +
 drivers/serial/serial_lpuart.c                                | 2 ++
 drivers/serial/serial_mcf.c                                   | 1 +
 drivers/serial/serial_meson.c                                 | 1 +
 drivers/serial/serial_mpc8xx.c                                | 2 ++
 drivers/serial/serial_msm.c                                   | 1 +
 drivers/serial/serial_mtk.c                                   | 2 ++
 drivers/serial/serial_mvebu_a3700.c                           | 1 +
 drivers/serial/serial_mxc.c                                   | 2 ++
 drivers/serial/serial_ns16550.c                               | 1 +
 drivers/serial/serial_omap.c                                  | 1 +
 drivers/serial/serial_pic32.c                                 | 3 +++
 drivers/serial/serial_pl01x.c                                 | 1 +
 drivers/serial/serial_pl01x_internal.h                        | 1 +
 drivers/serial/serial_pxa.c                                   | 2 ++
 drivers/serial/serial_s5p.c                                   | 1 +
 drivers/serial/serial_sh.c                                    | 1 +
 drivers/serial/serial_sifive.c                                | 2 ++
 drivers/serial/serial_sti_asc.c                               | 1 +
 drivers/serial/serial_stm32.c                                 | 2 ++
 drivers/serial/serial_stm32.h                                 | 1 +
 drivers/serial/serial_uniphier.c                              | 3 +++
 drivers/serial/serial_zynq.c                                  | 2 ++
 drivers/serial/usbtty.c                                       | 1 +
 drivers/smem/msm_smem.c                                       | 2 ++
 drivers/smem/sandbox_smem.c                                   | 1 +
 drivers/smem/smem-uclass.c                                    | 1 +
 drivers/soc/soc_ti_k3.c                                       | 1 +
 drivers/soc/ti/k3-navss-ringacc.c                             | 3 +++
 drivers/soc/ti/keystone_serdes.c                              | 1 +
 drivers/sound/broadwell_i2s.c                                 | 1 +
 drivers/sound/broadwell_i2s.h                                 | 1 +
 drivers/sound/broadwell_sound.c                               | 1 +
 drivers/sound/codec-uclass.c                                  | 1 +
 drivers/sound/da7219.c                                        | 1 +
 drivers/sound/hda_codec.c                                     | 1 +
 drivers/sound/i2s-uclass.c                                    | 1 +
 drivers/sound/ivybridge_sound.c                               | 1 +
 drivers/sound/max98088.c                                      | 1 +
 drivers/sound/max98090.c                                      | 1 +
 drivers/sound/max98095.c                                      | 1 +
 drivers/sound/max98357a.c                                     | 1 +
 drivers/sound/rockchip_i2s.c                                  | 1 +
 drivers/sound/rockchip_sound.c                                | 1 +
 drivers/sound/rt5677.c                                        | 1 +
 drivers/sound/samsung-i2s.c                                   | 1 +
 drivers/sound/samsung_sound.c                                 | 1 +
 drivers/sound/sandbox.c                                       | 1 +
 drivers/sound/sound-uclass.c                                  | 1 +
 drivers/sound/sound.c                                         | 1 +
 drivers/sound/tegra_ahub.c                                    | 1 +
 drivers/sound/tegra_i2s.c                                     | 1 +
 drivers/sound/tegra_i2s_priv.h                                | 1 +
 drivers/sound/tegra_sound.c                                   | 1 +
 drivers/sound/wm8994.c                                        | 1 +
 drivers/spi/altera_spi.c                                      | 1 +
 drivers/spi/atcspi200_spi.c                                   | 1 +
 drivers/spi/ath79_spi.c                                       | 1 +
 drivers/spi/atmel-quadspi.c                                   | 3 +++
 drivers/spi/atmel_spi.c                                       | 1 +
 drivers/spi/bcm63xx_hsspi.c                                   | 2 ++
 drivers/spi/bcm63xx_spi.c                                     | 2 ++
 drivers/spi/bcmstb_spi.c                                      | 1 +
 drivers/spi/cadence_qspi.c                                    | 1 +
 drivers/spi/cadence_qspi.h                                    | 1 +
 drivers/spi/cadence_qspi_apb.c                                | 1 +
 drivers/spi/cf_spi.c                                          | 1 +
 drivers/spi/davinci_spi.c                                     | 1 +
 drivers/spi/designware_spi.c                                  | 3 +++
 drivers/spi/exynos_spi.c                                      | 1 +
 drivers/spi/fsl_dspi.c                                        | 2 ++
 drivers/spi/fsl_espi.c                                        | 1 +
 drivers/spi/fsl_qspi.c                                        | 3 +++
 drivers/spi/ich.c                                             | 2 ++
 drivers/spi/ich.h                                             | 2 ++
 drivers/spi/kirkwood_spi.c                                    | 1 +
 drivers/spi/meson_spifc.c                                     | 2 ++
 drivers/spi/mpc8xx_spi.c                                      | 2 ++
 drivers/spi/mpc8xxx_spi.c                                     | 2 ++
 drivers/spi/mscc_bb_spi.c                                     | 2 ++
 drivers/spi/mt7621_spi.c                                      | 2 ++
 drivers/spi/mtk_snfi_spi.c                                    | 2 ++
 drivers/spi/mvebu_a3700_spi.c                                 | 1 +
 drivers/spi/mxc_spi.c                                         | 2 ++
 drivers/spi/mxs_spi.c                                         | 1 +
 drivers/spi/nxp_fspi.c                                        | 3 +++
 drivers/spi/omap3_spi.c                                       | 1 +
 drivers/spi/pic32_spi.c                                       | 1 +
 drivers/spi/pl022_spi.c                                       | 2 ++
 drivers/spi/renesas_rpc_spi.c                                 | 2 ++
 drivers/spi/rk_spi.c                                          | 2 ++
 drivers/spi/rk_spi.h                                          | 1 +
 drivers/spi/sandbox_spi.c                                     | 2 ++
 drivers/spi/sh_qspi.c                                         | 1 +
 drivers/spi/soft_spi.c                                        | 1 +
 drivers/spi/spi-mem-nodm.c                                    | 1 +
 drivers/spi/spi-mem.c                                         | 2 ++
 drivers/spi/spi-sifive.c                                      | 1 +
 drivers/spi/spi-sunxi.c                                       | 2 ++
 drivers/spi/spi-uclass.c                                      | 2 ++
 drivers/spi/spi.c                                             | 1 +
 drivers/spi/stm32_qspi.c                                      | 3 +++
 drivers/spi/stm32_spi.c                                       | 3 +++
 drivers/spi/tegra114_spi.c                                    | 1 +
 drivers/spi/tegra20_sflash.c                                  | 1 +
 drivers/spi/tegra20_slink.c                                   | 1 +
 drivers/spi/tegra210_qspi.c                                   | 1 +
 drivers/spi/tegra_spi.h                                       | 1 +
 drivers/spi/ti_qspi.c                                         | 2 ++
 drivers/spi/uniphier_spi.c                                    | 2 ++
 drivers/spi/xilinx_spi.c                                      | 1 +
 drivers/spi/zynq_qspi.c                                       | 1 +
 drivers/spi/zynq_spi.c                                        | 1 +
 drivers/spi/zynqmp_gqspi.c                                    | 1 +
 drivers/spmi/spmi-msm.c                                       | 1 +
 drivers/spmi/spmi-sandbox.c                                   | 1 +
 drivers/spmi/spmi-uclass.c                                    | 1 +
 drivers/sysreset/sysreset-uclass.c                            | 1 +
 drivers/sysreset/sysreset_ast.c                               | 1 +
 drivers/sysreset/sysreset_mpc83xx.c                           | 2 ++
 drivers/sysreset/sysreset_octeon.c                            | 1 +
 drivers/sysreset/sysreset_socfpga.c                           | 1 +
 drivers/sysreset/sysreset_sti.c                               | 2 ++
 drivers/sysreset/sysreset_syscon.c                            | 1 +
 drivers/sysreset/sysreset_x86.c                               | 1 +
 drivers/tee/broadcom/chimp_optee.c                            | 1 +
 drivers/tee/optee/core.c                                      | 2 ++
 drivers/tee/optee/optee_private.h                             | 1 +
 drivers/tee/optee/optee_smc.h                                 | 1 +
 drivers/tee/optee/rpmb.c                                      | 1 +
 drivers/tee/sandbox.c                                         | 1 +
 drivers/tee/tee-uclass.c                                      | 1 +
 drivers/thermal/imx_scu_thermal.c                             | 1 +
 drivers/thermal/imx_thermal.c                                 | 1 +
 drivers/thermal/imx_tmu.c                                     | 2 ++
 drivers/thermal/ti-bandgap.c                                  | 1 +
 drivers/timer/ag101p_timer.c                                  | 1 +
 drivers/timer/altera_timer.c                                  | 1 +
 drivers/timer/arc_timer.c                                     | 1 +
 drivers/timer/atcpit100_timer.c                               | 1 +
 drivers/timer/atmel_pit_timer.c                               | 1 +
 drivers/timer/cadence-ttc.c                                   | 1 +
 drivers/timer/mpc83xx_timer.c                                 | 1 +
 drivers/timer/mtk_timer.c                                     | 2 ++
 drivers/timer/nomadik-mtu-timer.c                             | 1 +
 drivers/timer/rockchip_timer.c                                | 1 +
 drivers/timer/sti-timer.c                                     | 1 +
 drivers/timer/stm32_timer.c                                   | 1 +
 drivers/timer/timer-uclass.c                                  | 1 +
 drivers/timer/tsc_timer.c                                     | 2 ++
 drivers/tpm/cr50_i2c.c                                        | 2 ++
 drivers/tpm/tpm-uclass.c                                      | 1 +
 drivers/tpm/tpm2_ftpm_tee.c                                   | 1 +
 drivers/tpm/tpm2_ftpm_tee.h                                   | 1 +
 drivers/tpm/tpm2_tis_sandbox.c                                | 1 +
 drivers/tpm/tpm2_tis_spi.c                                    | 1 +
 drivers/tpm/tpm_atmel_twi.c                                   | 1 +
 drivers/tpm/tpm_internal.h                                    | 1 +
 drivers/tpm/tpm_tis.h                                         | 1 +
 drivers/tpm/tpm_tis_lpc.c                                     | 1 +
 drivers/tpm/tpm_tis_sandbox.c                                 | 2 ++
 drivers/ufs/cdns-platform.c                                   | 1 +
 drivers/ufs/ti-j721e-ufs.c                                    | 2 ++
 drivers/ufs/ufs.c                                             | 2 ++
 drivers/ufs/ufs.h                                             | 3 +++
 drivers/usb/cdns3/cdns3-ti.c                                  | 2 ++
 drivers/usb/cdns3/core.h                                      | 1 +
 drivers/usb/cdns3/drd.c                                       | 2 ++
 drivers/usb/cdns3/ep0.c                                       | 3 +++
 drivers/usb/cdns3/gadget.c                                    | 3 +++
 drivers/usb/cdns3/gadget.h                                    | 2 ++
 drivers/usb/common/fsl-dt-fixup.c                             | 1 +
 drivers/usb/common/fsl-errata.c                               | 1 +
 drivers/usb/dwc3/core.c                                       | 1 +
 drivers/usb/dwc3/core.h                                       | 2 ++
 drivers/usb/dwc3/dwc3-generic.c                               | 1 +
 drivers/usb/dwc3/dwc3-omap.c                                  | 2 ++
 drivers/usb/dwc3/dwc3-uniphier.c                              | 2 ++
 drivers/usb/dwc3/ep0.c                                        | 2 ++
 drivers/usb/dwc3/gadget.c                                     | 2 ++
 drivers/usb/dwc3/gadget.h                                     | 1 +
 drivers/usb/dwc3/io.h                                         | 2 ++
 drivers/usb/dwc3/linux-compat.h                               | 1 +
 drivers/usb/dwc3/samsung_usb_phy.c                            | 1 +
 drivers/usb/dwc3/ti_usb_phy.c                                 | 2 ++
 drivers/usb/emul/sandbox_flash.c                              | 2 ++
 drivers/usb/emul/sandbox_keyb.c                               | 1 +
 drivers/usb/emul/usb-emul-uclass.c                            | 2 ++
 drivers/usb/eth/asix.c                                        | 1 +
 drivers/usb/eth/asix88179.c                                   | 1 +
 drivers/usb/eth/lan75xx.c                                     | 1 +
 drivers/usb/eth/lan78xx.c                                     | 1 +
 drivers/usb/eth/lan7x.c                                       | 1 +
 drivers/usb/eth/lan7x.h                                       | 1 +
 drivers/usb/eth/mcs7830.c                                     | 2 ++
 drivers/usb/eth/r8152.c                                       | 2 ++
 drivers/usb/eth/r8152.h                                       | 2 ++
 drivers/usb/eth/r8152_fw.c                                    | 1 +
 drivers/usb/eth/smsc95xx.c                                    | 1 +
 drivers/usb/eth/usb_ether.c                                   | 1 +
 drivers/usb/gadget/at91_udc.c                                 | 2 ++
 drivers/usb/gadget/at91_udc.h                                 | 2 ++
 drivers/usb/gadget/atmel_usba_udc.c                           | 1 +
 drivers/usb/gadget/atmel_usba_udc.h                           | 1 +
 drivers/usb/gadget/bcm_udc_otg.h                              | 1 +
 drivers/usb/gadget/ci_udc.c                                   | 2 ++
 drivers/usb/gadget/ci_udc.h                                   | 1 +
 drivers/usb/gadget/composite.c                                | 2 ++
 drivers/usb/gadget/config.c                                   | 1 +
 drivers/usb/gadget/core.c                                     | 1 +
 drivers/usb/gadget/designware_udc.c                           | 1 +
 drivers/usb/gadget/dwc2_udc_otg.c                             | 3 +++
 drivers/usb/gadget/dwc2_udc_otg_priv.h                        | 1 +
 drivers/usb/gadget/dwc2_udc_otg_regs.h                        | 1 +
 drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c                    | 1 +
 drivers/usb/gadget/epautoconf.c                               | 1 +
 drivers/usb/gadget/ether.c                                    | 1 +
 drivers/usb/gadget/f_dfu.c                                    | 1 +
 drivers/usb/gadget/f_dfu.h                                    | 2 ++
 drivers/usb/gadget/f_mass_storage.c                           | 1 +
 drivers/usb/gadget/f_rockusb.c                                | 2 ++
 drivers/usb/gadget/f_sdp.c                                    | 3 +++
 drivers/usb/gadget/f_thor.c                                   | 1 +
 drivers/usb/gadget/f_thor.h                                   | 1 +
 drivers/usb/gadget/fotg210.c                                  | 1 +
 drivers/usb/gadget/g_dnl.c                                    | 1 +
 drivers/usb/gadget/ndis.h                                     | 1 +
 drivers/usb/gadget/pxa25x_udc.c                               | 1 +
 drivers/usb/gadget/pxa27x_udc.c                               | 1 +
 drivers/usb/gadget/storage_common.c                           | 1 +
 drivers/usb/gadget/usbstring.c                                | 1 +
 drivers/usb/host/dwc2.c                                       | 2 ++
 drivers/usb/host/dwc2.h                                       | 1 +
 drivers/usb/host/dwc3-sti-glue.c                              | 1 +
 drivers/usb/host/ehci-armada100.c                             | 1 +
 drivers/usb/host/ehci-atmel.c                                 | 1 +
 drivers/usb/host/ehci-exynos.c                                | 1 +
 drivers/usb/host/ehci-faraday.c                               | 2 ++
 drivers/usb/host/ehci-fsl.c                                   | 1 +
 drivers/usb/host/ehci-generic.c                               | 1 +
 drivers/usb/host/ehci-hcd.c                                   | 2 ++
 drivers/usb/host/ehci-marvell.c                               | 1 +
 drivers/usb/host/ehci-msm.c                                   | 1 +
 drivers/usb/host/ehci-mx5.c                                   | 2 ++
 drivers/usb/host/ehci-mx6.c                                   | 2 ++
 drivers/usb/host/ehci-mxc.c                                   | 1 +
 drivers/usb/host/ehci-mxs.c                                   | 2 ++
 drivers/usb/host/ehci-omap.c                                  | 1 +
 drivers/usb/host/ehci-pci.c                                   | 1 +
 drivers/usb/host/ehci-rmobile.c                               | 1 +
 drivers/usb/host/ehci-spear.c                                 | 1 +
 drivers/usb/host/ehci-tegra.c                                 | 1 +
 drivers/usb/host/ehci-vct.c                                   | 1 +
 drivers/usb/host/ehci-vf.c                                    | 2 ++
 drivers/usb/host/ehci-zynq.c                                  | 1 +
 drivers/usb/host/ehci.h                                       | 1 +
 drivers/usb/host/ohci-hcd.c                                   | 2 ++
 drivers/usb/host/ohci-lpc32xx.c                               | 1 +
 drivers/usb/host/ohci.h                                       | 1 +
 drivers/usb/host/r8a66597-hcd.c                               | 1 +
 drivers/usb/host/r8a66597.h                                   | 1 +
 drivers/usb/host/sl811-hcd.c                                  | 2 ++
 drivers/usb/host/usb-sandbox.c                                | 1 +
 drivers/usb/host/usb-uclass.c                                 | 1 +
 drivers/usb/host/xhci-brcm.c                                  | 1 +
 drivers/usb/host/xhci-dwc3.c                                  | 1 +
 drivers/usb/host/xhci-exynos5.c                               | 1 +
 drivers/usb/host/xhci-fsl.c                                   | 2 ++
 drivers/usb/host/xhci-mem.c                                   | 2 ++
 drivers/usb/host/xhci-mtk.c                                   | 2 ++
 drivers/usb/host/xhci-mvebu.c                                 | 2 ++
 drivers/usb/host/xhci-omap.c                                  | 1 +
 drivers/usb/host/xhci-pci.c                                   | 1 +
 drivers/usb/host/xhci-rcar-r8a779x_usb3_v3.h                  | 1 +
 drivers/usb/host/xhci-rcar.c                                  | 2 ++
 drivers/usb/host/xhci-ring.c                                  | 2 ++
 drivers/usb/host/xhci.c                                       | 2 ++
 drivers/usb/musb-new/am35x.c                                  | 2 ++
 drivers/usb/musb-new/da8xx.c                                  | 2 ++
 drivers/usb/musb-new/mt85xx.c                                 | 2 ++
 drivers/usb/musb-new/musb_core.c                              | 3 +++
 drivers/usb/musb-new/musb_core.h                              | 3 +++
 drivers/usb/musb-new/musb_dma.h                               | 2 ++
 drivers/usb/musb-new/musb_dsps.c                              | 2 ++
 drivers/usb/musb-new/musb_gadget.c                            | 2 ++
 drivers/usb/musb-new/musb_gadget.h                            | 1 +
 drivers/usb/musb-new/musb_gadget_ep0.c                        | 2 ++
 drivers/usb/musb-new/musb_host.c                              | 3 +++
 drivers/usb/musb-new/musb_io.h                                | 2 ++
 drivers/usb/musb-new/musb_regs.h                              | 2 ++
 drivers/usb/musb-new/musb_uboot.c                             | 2 ++
 drivers/usb/musb-new/omap2430.c                               | 1 +
 drivers/usb/musb-new/pic32.c                                  | 2 ++
 drivers/usb/musb-new/sunxi.c                                  | 3 +++
 drivers/usb/musb-new/ti-musb.c                                | 1 +
 drivers/usb/musb-new/usb-compat.h                             | 1 +
 drivers/usb/musb/am35x.c                                      | 1 +
 drivers/usb/musb/am35x.h                                      | 1 +
 drivers/usb/musb/musb_core.c                                  | 1 +
 drivers/usb/musb/musb_core.h                                  | 1 +
 drivers/usb/musb/musb_hcd.c                                   | 2 ++
 drivers/usb/musb/musb_udc.c                                   | 1 +
 drivers/usb/musb/omap3.c                                      | 1 +
 drivers/usb/musb/omap3.h                                      | 1 +
 drivers/usb/phy/omap_usb_phy.c                                | 1 +
 drivers/usb/phy/rockchip_usb2_phy.c                           | 1 +
 drivers/usb/phy/twl4030.c                                     | 1 +
 drivers/usb/ulpi/omap-ulpi-viewport.c                         | 1 +
 drivers/usb/ulpi/ulpi-viewport.c                              | 1 +
 drivers/usb/ulpi/ulpi.c                                       | 1 +
 drivers/video/am335x-fb.c                                     | 2 ++
 drivers/video/anx9804.c                                       | 1 +
 drivers/video/anx9804.h                                       | 1 +
 drivers/video/ati_radeon_fb.c                                 | 1 +
 drivers/video/ati_radeon_fb.h                                 | 1 +
 drivers/video/atmel_hlcdfb.c                                  | 1 +
 drivers/video/atmel_lcdfb.c                                   | 1 +
 drivers/video/bcm2835.c                                       | 1 +
 drivers/video/bridge/anx6345.c                                | 1 +
 drivers/video/bridge/ps862x.c                                 | 1 +
 drivers/video/bridge/video-bridge-uclass.c                    | 1 +
 drivers/video/broadwell_igd.c                                 | 2 ++
 drivers/video/bus_vcxk.c                                      | 1 +
 drivers/video/cfb_console.c                                   | 2 ++
 drivers/video/console_normal.c                                | 1 +
 drivers/video/console_rotate.c                                | 1 +
 drivers/video/console_truetype.c                              | 1 +
 drivers/video/da8xx-fb.c                                      | 1 +
 drivers/video/display-uclass.c                                | 1 +
 drivers/video/dw_hdmi.c                                       | 2 ++
 drivers/video/dw_mipi_dsi.c                                   | 3 +++
 drivers/video/efi.c                                           | 1 +
 drivers/video/exynos/exynos_dp.c                              | 1 +
 drivers/video/exynos/exynos_dp_lowlevel.c                     | 1 +
 drivers/video/exynos/exynos_dp_lowlevel.h                     | 1 +
 drivers/video/exynos/exynos_fb.c                              | 1 +
 drivers/video/exynos/exynos_mipi_dsi_common.c                 | 1 +
 drivers/video/exynos/exynos_mipi_dsi_lowlevel.c               | 1 +
 drivers/video/formike.c                                       | 1 +
 drivers/video/fsl_dcu_fb.c                                    | 1 +
 drivers/video/fsl_diu_fb.c                                    | 1 +
 drivers/video/hitachi_tx18d42vm_lcd.c                         | 1 +
 drivers/video/ihs_video_out.c                                 | 1 +
 drivers/video/imx/ipu_common.c                                | 1 +
 drivers/video/imx/ipu_regs.h                                  | 1 +
 drivers/video/imx/mxc_ipuv3_fb.c                              | 1 +
 drivers/video/ivybridge_igd.c                                 | 1 +
 drivers/video/lg4573.c                                        | 1 +
 drivers/video/logicore_dp_tx.c                                | 1 +
 drivers/video/logicore_dp_tx.h                                | 1 +
 drivers/video/logicore_dp_tx_regif.h                          | 1 +
 drivers/video/mali_dp.c                                       | 1 +
 drivers/video/mb862xx.c                                       | 1 +
 drivers/video/meson/meson_canvas.c                            | 1 +
 drivers/video/meson/meson_dw_hdmi.c                           | 3 +++
 drivers/video/meson/meson_plane.c                             | 1 +
 drivers/video/meson/meson_registers.h                         | 1 +
 drivers/video/meson/meson_vclk.c                              | 2 ++
 drivers/video/meson/meson_venc.c                              | 1 +
 drivers/video/meson/meson_vpu.c                               | 1 +
 drivers/video/meson/meson_vpu.h                               | 2 ++
 drivers/video/meson/meson_vpu_init.c                          | 1 +
 drivers/video/mipi_dsi.c                                      | 1 +
 drivers/video/mvebu_lcd.c                                     | 1 +
 drivers/video/mx3fb.c                                         | 1 +
 drivers/video/mxsfb.c                                         | 2 ++
 drivers/video/nexell/s5pxx18_dp.c                             | 1 +
 drivers/video/nexell/s5pxx18_dp_hdmi.c                        | 1 +
 drivers/video/nexell/s5pxx18_dp_lvds.c                        | 1 +
 drivers/video/nexell/s5pxx18_dp_mipi.c                        | 2 ++
 drivers/video/nexell/soc/s5pxx18_soc_lvds.h                   | 1 +
 drivers/video/nexell/soc/s5pxx18_soc_mipi.h                   | 1 +
 drivers/video/nexell_display.c                                | 2 ++
 drivers/video/omap3_dss.c                                     | 1 +
 drivers/video/orisetech_otm8009a.c                            | 1 +
 drivers/video/pwm_backlight.c                                 | 1 +
 drivers/video/pxa_lcd.c                                       | 1 +
 drivers/video/raydium-rm68200.c                               | 1 +
 drivers/video/rockchip/rk3288_vop.c                           | 1 +
 drivers/video/rockchip/rk3399_vop.c                           | 1 +
 drivers/video/rockchip/rk_edp.c                               | 2 ++
 drivers/video/rockchip/rk_hdmi.c                              | 1 +
 drivers/video/rockchip/rk_hdmi.h                              | 1 +
 drivers/video/rockchip/rk_lvds.c                              | 2 ++
 drivers/video/rockchip/rk_mipi.c                              | 1 +
 drivers/video/rockchip/rk_mipi.h                              | 1 +
 drivers/video/rockchip/rk_vop.c                               | 1 +
 drivers/video/rockchip/rk_vop.h                               | 1 +
 drivers/video/sandbox_osd.c                                   | 1 +
 drivers/video/scf0403_lcd.c                                   | 1 +
 drivers/video/ssd2828.c                                       | 1 +
 drivers/video/stb_truetype.h                                  | 1 +
 drivers/video/stm32/stm32_dsi.c                               | 2 ++
 drivers/video/stm32/stm32_ltdc.c                              | 2 ++
 drivers/video/sunxi/lcdc.c                                    | 1 +
 drivers/video/sunxi/sunxi_de2.c                               | 1 +
 drivers/video/sunxi/sunxi_display.c                           | 2 ++
 drivers/video/sunxi/sunxi_dw_hdmi.c                           | 1 +
 drivers/video/sunxi/sunxi_lcd.c                               | 1 +
 drivers/video/tda19988.c                                      | 1 +
 drivers/video/tegra.c                                         | 1 +
 drivers/video/tegra124/display.c                              | 1 +
 drivers/video/tegra124/displayport.h                          | 1 +
 drivers/video/tegra124/dp.c                                   | 2 ++
 drivers/video/tegra124/sor.c                                  | 2 ++
 drivers/video/tegra124/sor.h                                  | 1 +
 drivers/video/vesa.c                                          | 1 +
 drivers/video/vidconsole-uclass.c                             | 1 +
 drivers/video/video-uclass.c                                  | 2 ++
 drivers/video/video_bmp.c                                     | 3 +++
 drivers/video/video_osd-uclass.c                              | 1 +
 drivers/virtio/virtio-uclass.c                                | 1 +
 drivers/virtio/virtio_blk.c                                   | 1 +
 drivers/virtio/virtio_blk.h                                   | 1 +
 drivers/virtio/virtio_mmio.c                                  | 2 ++
 drivers/virtio/virtio_mmio.h                                  | 2 ++
 drivers/virtio/virtio_net.c                                   | 2 ++
 drivers/virtio/virtio_net.h                                   | 1 +
 drivers/virtio/virtio_pci.h                                   | 1 +
 drivers/virtio/virtio_pci_legacy.c                            | 2 ++
 drivers/virtio/virtio_pci_modern.c                            | 2 ++
 drivers/virtio/virtio_ring.c                                  | 1 +
 drivers/virtio/virtio_rng.c                                   | 1 +
 drivers/virtio/virtio_sandbox.c                               | 1 +
 drivers/w1-eeprom/ds24xxx.c                                   | 1 +
 drivers/w1-eeprom/ds2502.c                                    | 1 +
 drivers/w1-eeprom/eep_sandbox.c                               | 1 +
 drivers/w1-eeprom/w1-eeprom-uclass.c                          | 1 +
 drivers/w1/mxc_w1.c                                           | 1 +
 drivers/w1/w1-gpio.c                                          | 1 +
 drivers/w1/w1-uclass.c                                        | 1 +
 drivers/watchdog/armada-37xx-wdt.c                            | 2 ++
 drivers/watchdog/ast_wdt.c                                    | 1 +
 drivers/watchdog/at91sam9_wdt.c                               | 1 +
 drivers/watchdog/bcm6345_wdt.c                                | 2 ++
 drivers/watchdog/cdns_wdt.c                                   | 2 ++
 drivers/watchdog/cortina_wdt.c                                | 2 ++
 drivers/watchdog/designware_wdt.c                             | 2 ++
 drivers/watchdog/imx_watchdog.c                               | 3 +++
 drivers/watchdog/mpc8xx_wdt.c                                 | 2 ++
 drivers/watchdog/mt7621_wdt.c                                 | 2 ++
 drivers/watchdog/mtk_wdt.c                                    | 2 ++
 drivers/watchdog/omap_wdt.c                                   | 1 +
 drivers/watchdog/orion_wdt.c                                  | 3 +++
 drivers/watchdog/sandbox_wdt.c                                | 1 +
 drivers/watchdog/sbsa_gwdt.c                                  | 2 ++
 drivers/watchdog/sp805_wdt.c                                  | 2 ++
 drivers/watchdog/stm32mp_wdt.c                                | 1 +
 drivers/watchdog/tangier_wdt.c                                | 1 +
 drivers/watchdog/ulp_wdog.c                                   | 1 +
 drivers/watchdog/wdt-uclass.c                                 | 1 +
 drivers/watchdog/xilinx_tb_wdt.c                              | 2 ++
 drivers/watchdog/xilinx_wwdt.c                                | 1 +
 env/common.c                                                  | 1 +
 env/eeprom.c                                                  | 1 +
 env/env.c                                                     | 3 +++
 env/ext4.c                                                    | 2 ++
 env/fat.c                                                     | 2 ++
 env/flags.c                                                   | 1 +
 env/flash.c                                                   | 1 +
 env/mmc.c                                                     | 2 ++
 env/nand.c                                                    | 1 +
 env/nowhere.c                                                 | 1 +
 env/nvram.c                                                   | 1 +
 env/onenand.c                                                 | 1 +
 env/remote.c                                                  | 1 +
 env/sata.c                                                    | 2 ++
 env/sf.c                                                      | 2 ++
 examples/api/glue.c                                           | 1 +
 examples/api/glue.h                                           | 1 +
 examples/standalone/atmel_df_pow2.c                           | 1 +
 examples/standalone/sched.c                                   | 1 +
 fs/btrfs/btrfs.c                                              | 1 +
 fs/btrfs/btrfs.h                                              | 1 +
 fs/btrfs/btrfs_tree.h                                         | 1 +
 fs/btrfs/ctree.h                                              | 1 +
 fs/btrfs/subvolume.c                                          | 1 +
 fs/btrfs/super.c                                              | 1 +
 fs/cbfs/cbfs.c                                                | 1 +
 fs/cramfs/cramfs.c                                            | 1 +
 fs/ext4/dev.c                                                 | 1 +
 fs/ext4/ext4_common.c                                         | 1 +
 fs/ext4/ext4_common.h                                         | 1 +
 fs/ext4/ext4_journal.c                                        | 1 +
 fs/ext4/ext4_journal.h                                        | 1 +
 fs/ext4/ext4_write.c                                          | 2 ++
 fs/ext4/ext4fs.c                                              | 1 +
 fs/fat/fat.c                                                  | 1 +
 fs/fat/fat_write.c                                            | 1 +
 fs/fs.c                                                       | 2 ++
 fs/fs_internal.c                                              | 1 +
 fs/jffs2/compr_lzo.c                                          | 1 +
 fs/jffs2/compr_rtime.c                                        | 1 +
 fs/jffs2/compr_rubin.c                                        | 1 +
 fs/jffs2/jffs2_1pass.c                                        | 1 +
 fs/jffs2/jffs2_private.h                                      | 1 +
 fs/jffs2/summary.h                                            | 1 +
 fs/reiserfs/mode_string.c                                     | 1 +
 fs/reiserfs/reiserfs.c                                        | 1 +
 fs/reiserfs/reiserfs_private.h                                | 1 +
 fs/sandbox/sandboxfs.c                                        | 1 +
 fs/squashfs/sqfs_filesystem.h                                 | 1 +
 fs/ubifs/debug.c                                              | 1 +
 fs/ubifs/debug.h                                              | 1 +
 fs/ubifs/io.c                                                 | 1 +
 fs/ubifs/key.h                                                | 1 +
 fs/ubifs/lprops.c                                             | 1 +
 fs/ubifs/lpt_commit.c                                         | 1 +
 fs/ubifs/misc.h                                               | 1 +
 fs/ubifs/orphan.c                                             | 1 +
 fs/ubifs/recovery.c                                           | 1 +
 fs/ubifs/replay.c                                             | 1 +
 fs/ubifs/scan.c                                               | 1 +
 fs/ubifs/super.c                                              | 1 +
 fs/ubifs/tnc.c                                                | 1 +
 fs/ubifs/tnc_misc.c                                           | 1 +
 fs/ubifs/ubifs-media.h                                        | 2 ++
 fs/ubifs/ubifs.c                                              | 1 +
 fs/ubifs/ubifs.h                                              | 1 +
 fs/yaffs2/yaffs_uboot_glue.c                                  | 1 +
 fs/yaffs2/yaffsfs.c                                           | 1 +
 fs/yaffs2/ydirectenv.h                                        | 1 +
 fs/zfs/zfs.c                                                  | 1 +
 fs/zfs/zfs_fletcher.c                                         | 1 +
 fs/zfs/zfs_lzjb.c                                             | 1 +
 fs/zfs/zfs_sha256.c                                           | 1 +
 include/ACEX1K.h                                              | 1 +
 include/MCD_dma.h                                             | 3 +++
 include/acpi/acpi_device.h                                    | 1 +
 include/acpi/acpi_s3.h                                        | 1 +
 include/acpi/acpi_table.h                                     | 2 ++
 include/ahci.h                                                | 1 +
 include/ali512x.h                                             | 1 +
 include/altera.h                                              | 1 +
 include/android_bootloader_message.h                          | 1 +
 include/api_public.h                                          | 1 +
 include/asm-generic/global_data.h                             | 1 +
 include/asm-generic/gpio.h                                    | 1 +
 include/asm-generic/int-ll64.h                                | 1 +
 include/asm-generic/io.h                                      | 1 +
 include/ata.h                                                 | 1 +
 include/atf_common.h                                          | 1 +
 include/atmel_hlcdc.h                                         | 1 +
 include/atmel_lcd.h                                           | 3 +++
 include/atmel_mci.h                                           | 1 +
 include/atsha204a-i2c.h                                       | 1 +
 include/audio_codec.h                                         | 1 +
 include/autoboot.h                                            | 2 ++
 include/avb_verify.h                                          | 1 +
 include/axi.h                                                 | 1 +
 include/binman.h                                              | 1 +
 include/blk.h                                                 | 1 +
 include/bloblist.h                                            | 1 +
 include/board.h                                               | 1 +
 include/bootcount.h                                           | 1 +
 include/bootm.h                                               | 1 +
 include/bootstage.h                                           | 1 +
 include/broadcom/chimp.h                                      | 1 +
 include/btrfs.h                                               | 1 +
 include/bus_vcxk.h                                            | 1 +
 include/cache.h                                               | 2 ++
 include/capitalization.h                                      | 1 +
 include/cavium/atf.h                                          | 1 +
 include/cbfs.h                                                | 1 +
 include/cli.h                                                 | 1 +
 include/clk-uclass.h                                          | 1 +
 include/command.h                                             | 1 +
 include/common.h                                              | 1 -
 include/cpsw.h                                                | 1 +
 include/cpu.h                                                 | 1 +
 include/cramfs/cramfs_fs.h                                    | 1 +
 include/cros_ec.h                                             | 1 +
 include/crypto/pkcs7.h                                        | 1 +
 include/crypto/pkcs7_parser.h                                 | 1 +
 include/crypto/x509_parser.h                                  | 1 +
 include/ddr_spd.h                                             | 1 +
 include/dfu.h                                                 | 1 +
 include/display.h                                             | 1 +
 include/display_options.h                                     | 1 +
 include/dm/device-internal.h                                  | 1 +
 include/dm/device.h                                           | 1 +
 include/dm/devres.h                                           | 1 +
 include/dm/of.h                                               | 1 +
 include/dm/of_access.h                                        | 1 +
 include/dm/of_addr.h                                          | 1 +
 include/dm/of_extra.h                                         | 1 +
 include/dm/ofnode.h                                           | 1 +
 include/dm/pci.h                                              | 1 +
 include/dm/pinctrl.h                                          | 1 +
 include/dm/platdata.h                                         | 1 +
 include/dm/platform_data/fsl_espi.h                           | 1 +
 include/dm/platform_data/net_ethoc.h                          | 1 +
 include/dm/platform_data/spi_coldfire.h                       | 1 +
 include/dm/platform_data/spi_davinci.h                        | 1 +
 include/dm/read.h                                             | 1 +
 include/dm/root.h                                             | 1 +
 include/dm/test.h                                             | 1 +
 include/dm/uclass.h                                           | 1 +
 include/dm9000.h                                              | 1 +
 include/dma-uclass.h                                          | 1 +
 include/dw_hdmi.h                                             | 1 +
 include/dwc3-uboot.h                                          | 1 +
 include/dwmmc.h                                               | 1 +
 include/ec_commands.h                                         | 2 ++
 include/edid.h                                                | 1 +
 include/eeprom.h                                              | 4 +++-
 include/eeprom_layout.h                                       | 1 +
 include/efi_api.h                                             | 2 ++
 include/efi_loader.h                                          | 2 ++
 include/efi_selftest.h                                        | 1 +
 include/efi_variable.h                                        | 1 +
 include/env_default.h                                         | 1 +
 include/env_internal.h                                        | 1 +
 include/ethsw.h                                               | 1 +
 include/exports.h                                             | 1 +
 include/ext4fs.h                                              | 1 +
 include/ext_common.h                                          | 1 +
 include/exynos_lcd.h                                          | 1 +
 include/fastboot-internal.h                                   | 1 +
 include/fastboot.h                                            | 1 +
 include/fat.h                                                 | 1 +
 include/fb_mmc.h                                              | 1 +
 include/fb_nand.h                                             | 1 +
 include/fdt_support.h                                         | 1 +
 include/fdtdec.h                                              | 1 +
 include/fis.h                                                 | 1 +
 include/flash.h                                               | 1 +
 include/fs.h                                                  | 1 +
 include/fs_loader.h                                           | 2 ++
 include/fsl-mc/fsl_dpaa_fd.h                                  | 1 +
 include/fsl-mc/fsl_dpbp.h                                     | 1 +
 include/fsl-mc/fsl_dpio.h                                     | 1 +
 include/fsl-mc/fsl_dpmac.h                                    | 1 +
 include/fsl-mc/fsl_dpmng.h                                    | 1 +
 include/fsl-mc/fsl_dpni.h                                     | 1 +
 include/fsl-mc/fsl_dprc.h                                     | 1 +
 include/fsl-mc/fsl_dpsparser.h                                | 1 +
 include/fsl-mc/fsl_mc.h                                       | 2 ++
 include/fsl-mc/fsl_mc_cmd.h                                   | 2 ++
 include/fsl-mc/fsl_mc_sys.h                                   | 1 +
 include/fsl-mc/fsl_qbman_base.h                               | 1 +
 include/fsl-mc/fsl_qbman_portal.h                             | 1 +
 include/fsl-mc/ldpaa_wriop.h                                  | 1 +
 include/fsl_csu.h                                             | 1 +
 include/fsl_ddr.h                                             | 1 +
 include/fsl_ddr_sdram.h                                       | 1 +
 include/fsl_devdis.h                                          | 1 +
 include/fsl_diu_fb.h                                          | 1 +
 include/fsl_dspi.h                                            | 1 +
 include/fsl_errata.h                                          | 1 +
 include/fsl_esdhc.h                                           | 1 +
 include/fsl_esdhc_imx.h                                       | 1 +
 include/fsl_ifc.h                                             | 1 +
 include/fsl_immap.h                                           | 1 +
 include/fsl_lpuart.h                                          | 1 +
 include/fsl_mdio.h                                            | 2 ++
 include/fsl_memac.h                                           | 1 +
 include/fsl_mmdc.h                                            | 1 +
 include/fsl_qbman.h                                           | 2 ++
 include/fsl_sec.h                                             | 1 +
 include/fsl_sec_mon.h                                         | 1 +
 include/fsl_sfp.h                                             | 1 +
 include/fsl_tgec.h                                            | 1 +
 include/fsl_usb.h                                             | 1 +
 include/fsl_wdog.h                                            | 1 +
 include/fuse.h                                                | 1 +
 include/gdsys_fpga.h                                          | 1 +
 include/gzip.h                                                | 1 +
 include/hash.h                                                | 1 +
 include/hda_codec.h                                           | 1 +
 include/hw_sha.h                                              | 1 +
 include/i2c.h                                                 | 1 +
 include/i2c_eeprom.h                                          | 1 +
 include/i2s.h                                                 | 1 +
 include/ide.h                                                 | 1 +
 include/imx8image.h                                           | 2 ++
 include/imx_lpi2c.h                                           | 1 +
 include/imximage.h                                            | 1 +
 include/input.h                                               | 1 +
 include/ioports.h                                             | 1 +
 include/ipu_pixfmt.h                                          | 1 +
 include/irq.h                                                 | 1 +
 include/jffs2/jffs2_1pass.h                                   | 1 +
 include/jffs2/load_kernel.h                                   | 1 +
 include/k3-avs.h                                              | 2 ++
 include/kendryte/bypass.h                                     | 1 +
 include/kendryte/clk.h                                        | 1 +
 include/kendryte/pll.h                                        | 2 ++
 include/key_matrix.h                                          | 1 +
 include/keys/asymmetric-type.h                                | 1 +
 include/lattice.h                                             | 1 +
 include/lcd.h                                                 | 1 +
 include/lcd_console.h                                         | 1 +
 include/lcdvideo.h                                            | 1 +
 include/libata.h                                              | 1 +
 include/linux/mtd/omap_gpmc.h                                 | 2 ++
 include/linux/soc/ti/cppi5.h                                  | 3 +++
 include/linux/soc/ti/k3-navss-ringacc.h                       | 1 +
 include/linux/soc/ti/k3-sec-proxy.h                           | 1 +
 include/linux/soc/ti/ti-udma.h                                | 1 +
 include/linux/soc/ti/ti_sci_protocol.h                        | 2 ++
 include/lmb.h                                                 | 1 +
 include/lynxkdi.h                                             | 1 +
 include/lz4.h                                                 | 1 +
 include/mailbox.h                                             | 1 +
 include/malloc.h                                              | 1 +
 include/mapmem.h                                              | 1 +
 include/mc9sdz60.h                                            | 1 +
 include/memalign.h                                            | 1 +
 include/miiphy.h                                              | 1 +
 include/mipi_dsi.h                                            | 1 +
 include/mm_communication.h                                    | 1 +
 include/mmc.h                                                 | 1 +
 include/mpc86xx.h                                             | 1 +
 include/mtd/cfi_flash.h                                       | 1 +
 include/mtd/ubi-user.h                                        | 1 +
 include/mv88e6352.h                                           | 1 +
 include/mvebu/comphy.h                                        | 1 +
 include/mvebu_mmc.h                                           | 1 +
 include/mvmfp.h                                               | 1 +
 include/mxs_nand.h                                            | 1 +
 include/nand.h                                                | 1 +
 include/net/ncsi-pkt.h                                        | 1 +
 include/net/pcap.h                                            | 1 +
 include/net/pfe_eth/pfe/cbus/bmu.h                            | 1 +
 include/net/pfe_eth/pfe/cbus/class_csr.h                      | 1 +
 include/net/pfe_eth/pfe/cbus/gpi.h                            | 1 +
 include/net/pfe_eth/pfe/cbus/tmu_csr.h                        | 1 +
 include/net/pfe_eth/pfe/pfe_hw.h                              | 1 +
 include/net/pfe_eth/pfe_driver.h                              | 2 ++
 include/net/tftp.h                                            | 1 +
 include/netdev.h                                              | 1 +
 include/nvme.h                                                | 1 +
 include/opensbi.h                                             | 1 +
 include/p2sb.h                                                | 1 +
 include/palmas.h                                              | 1 +
 include/part.h                                                | 1 +
 include/part_efi.h                                            | 2 ++
 include/pca953x.h                                             | 1 +
 include/pca9698.h                                             | 1 +
 include/pch.h                                                 | 1 +
 include/pci.h                                                 | 1 +
 include/pci_ep.h                                              | 1 +
 include/pci_rom.h                                             | 1 +
 include/pe.h                                                  | 1 +
 include/phy.h                                                 | 1 +
 include/physmem.h                                             | 1 +
 include/post.h                                                | 1 +
 include/power/acpi_pmc.h                                      | 1 +
 include/power/as3722.h                                        | 1 +
 include/power/battery.h                                       | 1 +
 include/power/fg_battery_cell_params.h                        | 1 +
 include/power/hi6553_pmic.h                                   | 1 +
 include/power/max77686_pmic.h                                 | 1 +
 include/power/mc34vr500_pmic.h                                | 1 +
 include/power/pmic.h                                          | 1 +
 include/power/regulator.h                                     | 1 +
 include/power/rk8xx_pmic.h                                    | 1 +
 include/power/s5m8767.h                                       | 1 +
 include/power/tps65217.h                                      | 1 +
 include/power/tps65218.h                                      | 1 +
 include/power/tps65910_pmic.h                                 | 1 +
 include/pwm.h                                                 | 1 +
 include/pxa_lcd.h                                             | 1 +
 include/qfw.h                                                 | 2 ++
 include/ram.h                                                 | 1 +
 include/regmap.h                                              | 1 +
 include/remoteproc.h                                          | 1 +
 include/rng.h                                                 | 2 ++
 include/rtc.h                                                 | 1 +
 include/s_record.h                                            | 1 +
 include/samsung/misc.h                                        | 1 +
 include/sandbox-clk.h                                         | 2 ++
 include/sandboxfs.h                                           | 1 +
 include/sandboxtee.h                                          | 1 +
 include/sata.h                                                | 1 +
 include/sdhci.h                                               | 1 +
 include/search.h                                              | 1 +
 include/serial.h                                              | 1 +
 include/sja1000.h                                             | 1 +
 include/smbios.h                                              | 2 ++
 include/smem.h                                                | 1 +
 include/smsc_lpc47m.h                                         | 1 +
 include/sort.h                                                | 1 +
 include/sound.h                                               | 1 +
 include/spi-mem.h                                             | 1 +
 include/spi.h                                                 | 1 +
 include/spl.h                                                 | 1 +
 include/spl_gpio.h                                            | 1 +
 include/splash.h                                              | 1 +
 include/spmi/spmi.h                                           | 1 +
 include/stm32_rcc.h                                           | 1 +
 include/stratixII.h                                           | 1 +
 include/syscon.h                                              | 1 +
 include/sysreset.h                                            | 1 +
 include/tables_csum.h                                         | 1 +
 include/tca642x.h                                             | 1 +
 include/tee.h                                                 | 1 +
 include/tee/optee.h                                           | 1 +
 include/tegra-kbc.h                                           | 1 +
 include/test/ut.h                                             | 1 +
 include/timer.h                                               | 1 +
 include/tlv_eeprom.h                                          | 1 +
 include/tpm-common.h                                          | 1 +
 include/tpm-v1.h                                              | 2 ++
 include/tpm-v2.h                                              | 1 +
 include/trace.h                                               | 1 +
 include/tsec.h                                                | 2 ++
 include/twl4030.h                                             | 1 +
 include/twl6030.h                                             | 1 +
 include/u-boot/aes.h                                          | 1 +
 include/u-boot/crc.h                                          | 1 +
 include/u-boot/rsa-checksum.h                                 | 1 +
 include/u-boot/rsa-mod-exp.h                                  | 1 +
 include/u-boot/rsa.h                                          | 1 +
 include/u-boot/sha1.h                                         | 1 +
 include/u-boot/sha256.h                                       | 1 +
 include/u-boot/sha512.h                                       | 1 +
 include/u-boot/zlib.h                                         | 1 +
 include/ubifs_uboot.h                                         | 1 +
 include/ubispl.h                                              | 1 +
 include/uboot_aes.h                                           | 1 +
 include/usb.h                                                 | 1 +
 include/usb/designware_udc.h                                  | 1 +
 include/usb/dwc2_udc.h                                        | 1 +
 include/usb/ehci-ci.h                                         | 1 +
 include/usb/fotg210.h                                         | 1 +
 include/usb/fusbh200.h                                        | 1 +
 include/usb/ulpi.h                                            | 1 +
 include/usb/xhci.h                                            | 1 +
 include/usb_ether.h                                           | 1 +
 include/usb_mass_storage.h                                    | 1 +
 include/usbdevice.h                                           | 1 +
 include/uuid.h                                                | 1 +
 include/vbe.h                                                 | 2 ++
 include/video.h                                               | 1 +
 include/video_bridge.h                                        | 1 +
 include/video_console.h                                       | 1 +
 include/video_osd.h                                           | 1 +
 include/virtio.h                                              | 1 +
 include/virtio_ring.h                                         | 1 +
 include/vxworks.h                                             | 1 +
 include/w1-eeprom.h                                           | 1 +
 include/w1.h                                                  | 1 +
 include/wait_bit.h                                            | 1 +
 include/wdt.h                                                 | 2 ++
 include/winbond_w83627.h                                      | 1 +
 include/xilinx.h                                              | 1 +
 include/zfs/dmu_objset.h                                      | 1 +
 include/zfs/dnode.h                                           | 1 +
 include/zfs/dsl_dataset.h                                     | 1 +
 include/zfs/dsl_dir.h                                         | 1 +
 include/zfs/sa_impl.h                                         | 1 +
 include/zfs/spa.h                                             | 1 +
 include/zfs/uberblock_impl.h                                  | 1 +
 include/zfs/vdev_impl.h                                       | 1 +
 include/zfs/zap_impl.h                                        | 1 +
 include/zfs/zap_leaf.h                                        | 1 +
 include/zfs/zfs.h                                             | 1 +
 include/zfs/zfs_acl.h                                         | 1 +
 include/zfs/zfs_znode.h                                       | 1 +
 include/zfs/zil.h                                             | 1 +
 include/zfs/zio.h                                             | 1 +
 include/zfs/zio_checksum.h                                    | 1 +
 include/zfs_common.h                                          | 1 +
 include/zynq_bootimg.h                                        | 1 +
 include/zynqmp_firmware.h                                     | 1 +
 include/zynqmp_tap_delay.h                                    | 1 +
 include/zynqpl.h                                              | 1 +
 lib/acpi/acpi_device.c                                        | 2 ++
 lib/acpi/acpi_dp.c                                            | 1 +
 lib/acpi/acpi_table.c                                         | 1 +
 lib/acpi/acpigen.c                                            | 1 +
 lib/addr_map.c                                                | 1 +
 lib/aes.c                                                     | 1 +
 lib/aes/aes-decrypt.c                                         | 1 +
 lib/asn1_decoder.c                                            | 1 +
 lib/at91/at91.c                                               | 1 +
 lib/charset.c                                                 | 1 +
 lib/crc16.c                                                   | 1 +
 lib/crc32.c                                                   | 1 +
 lib/crc32c.c                                                  | 1 +
 lib/crypto/asymmetric_type.c                                  | 2 ++
 lib/crypto/pkcs7_parser.c                                     | 2 ++
 lib/crypto/pkcs7_verify.c                                     | 1 +
 lib/crypto/public_key.c                                       | 1 +
 lib/crypto/rsa_helper.c                                       | 1 +
 lib/crypto/x509_cert_parser.c                                 | 1 +
 lib/crypto/x509_public_key.c                                  | 2 ++
 lib/dhry/cmd_dhry.c                                           | 1 +
 lib/display_options.c                                         | 2 ++
 lib/div64.c                                                   | 1 +
 lib/efi/efi_info.c                                            | 1 +
 lib/efi/efi_stub.c                                            | 2 ++
 lib/efi_driver/efi_block_device.c                             | 1 +
 lib/efi_driver/efi_uclass.c                                   | 1 +
 lib/efi_loader/efi_acpi.c                                     | 1 +
 lib/efi_loader/efi_bootmgr.c                                  | 1 +
 lib/efi_loader/efi_boottime.c                                 | 2 ++
 lib/efi_loader/efi_console.c                                  | 1 +
 lib/efi_loader/efi_device_path.c                              | 2 ++
 lib/efi_loader/efi_device_path_to_text.c                      | 1 +
 lib/efi_loader/efi_device_path_utilities.c                    | 1 +
 lib/efi_loader/efi_disk.c                                     | 2 ++
 lib/efi_loader/efi_file.c                                     | 1 +
 lib/efi_loader/efi_freestanding.c                             | 1 +
 lib/efi_loader/efi_gop.c                                      | 1 +
 lib/efi_loader/efi_hii.c                                      | 1 +
 lib/efi_loader/efi_hii_config.c                               | 1 +
 lib/efi_loader/efi_image_loader.c                             | 3 +++
 lib/efi_loader/efi_load_initrd.c                              | 1 +
 lib/efi_loader/efi_memory.c                                   | 3 +++
 lib/efi_loader/efi_net.c                                      | 2 ++
 lib/efi_loader/efi_rng.c                                      | 2 ++
 lib/efi_loader/efi_root_node.c                                | 1 +
 lib/efi_loader/efi_runtime.c                                  | 3 +++
 lib/efi_loader/efi_setup.c                                    | 1 +
 lib/efi_loader/efi_signature.c                                | 1 +
 lib/efi_loader/efi_smbios.c                                   | 1 +
 lib/efi_loader/efi_unicode_collation.c                        | 1 +
 lib/efi_loader/efi_var_common.c                               | 2 ++
 lib/efi_loader/efi_var_file.c                                 | 1 +
 lib/efi_loader/efi_var_mem.c                                  | 2 ++
 lib/efi_loader/efi_variable.c                                 | 1 +
 lib/efi_loader/efi_variable_tee.c                             | 1 +
 lib/efi_loader/helloworld.c                                   | 1 +
 lib/efi_selftest/efi_selftest.c                               | 1 +
 lib/efi_selftest/efi_selftest_bitblt.c                        | 1 +
 lib/efi_selftest/efi_selftest_block_device.c                  | 1 +
 lib/efi_selftest/efi_selftest_config_table.c                  | 1 +
 lib/efi_selftest/efi_selftest_console.c                       | 1 +
 lib/efi_selftest/efi_selftest_controllers.c                   | 1 +
 lib/efi_selftest/efi_selftest_crc32.c                         | 1 +
 lib/efi_selftest/efi_selftest_devicepath.c                    | 2 ++
 lib/efi_selftest/efi_selftest_event_groups.c                  | 1 +
 lib/efi_selftest/efi_selftest_exception.c                     | 1 +
 lib/efi_selftest/efi_selftest_fdt.c                           | 1 +
 lib/efi_selftest/efi_selftest_gop.c                           | 1 +
 lib/efi_selftest/efi_selftest_hii.c                           | 1 +
 lib/efi_selftest/efi_selftest_hii_data.c                      | 1 +
 lib/efi_selftest/efi_selftest_load_initrd.c                   | 1 +
 lib/efi_selftest/efi_selftest_loadimage.c                     | 2 ++
 lib/efi_selftest/efi_selftest_manageprotocols.c               | 1 +
 lib/efi_selftest/efi_selftest_mem.c                           | 1 +
 lib/efi_selftest/efi_selftest_memory.c                        | 1 +
 lib/efi_selftest/efi_selftest_miniapp_exit.c                  | 1 +
 lib/efi_selftest/efi_selftest_rng.c                           | 1 +
 lib/efi_selftest/efi_selftest_set_virtual_address_map.c       | 1 +
 lib/efi_selftest/efi_selftest_snp.c                           | 2 ++
 lib/efi_selftest/efi_selftest_startimage_exit.c               | 1 +
 lib/efi_selftest/efi_selftest_startimage_return.c             | 1 +
 lib/efi_selftest/efi_selftest_textinputex.c                   | 1 +
 lib/efi_selftest/efi_selftest_textoutput.c                    | 1 +
 lib/efi_selftest/efi_selftest_unaligned.c                     | 1 +
 lib/efi_selftest/efi_selftest_unicode_collation.c             | 1 +
 lib/efi_selftest/efi_selftest_util.c                          | 1 +
 lib/efi_selftest/efi_selftest_variables.c                     | 1 +
 lib/efi_selftest/efi_selftest_variables_runtime.c             | 1 +
 lib/efi_selftest/efi_selftest_watchdog.c                      | 1 +
 lib/elf.c                                                     | 1 +
 lib/fdtdec.c                                                  | 3 +++
 lib/fdtdec_test.c                                             | 1 +
 lib/gunzip.c                                                  | 2 ++
 lib/hexdump.c                                                 | 2 ++
 lib/image-sparse.c                                            | 1 +
 lib/libavb/avb_sysdeps.h                                      | 1 +
 lib/libavb/avb_sysdeps_posix.c                                | 1 +
 lib/linux_compat.c                                            | 1 +
 lib/linux_string.c                                            | 1 +
 lib/lmb.c                                                     | 2 ++
 lib/lz4.c                                                     | 1 +
 lib/lzma/LzmaDec.c                                            | 1 +
 lib/lzma/LzmaTools.c                                          | 1 +
 lib/lzma/Types.h                                              | 1 +
 lib/lzo/lzo1x_decompress.c                                    | 1 +
 lib/lzo/lzodefs.h                                             | 1 +
 lib/membuff.c                                                 | 2 ++
 lib/net_utils.c                                               | 1 +
 lib/of_live.c                                                 | 2 ++
 lib/oid_registry.c                                            | 1 +
 lib/optee/optee.c                                             | 1 +
 lib/physmem.c                                                 | 2 ++
 lib/rsa/rsa-checksum.c                                        | 1 +
 lib/rsa/rsa-keyprop.c                                         | 1 +
 lib/rsa/rsa-mod-exp.c                                         | 1 +
 lib/rsa/rsa-verify.c                                          | 1 +
 lib/sha1.c                                                    | 1 +
 lib/sha256.c                                                  | 1 +
 lib/sha512.c                                                  | 1 +
 lib/smbios.c                                                  | 1 +
 lib/strto.c                                                   | 1 +
 lib/tables_csum.c                                             | 1 +
 lib/time.c                                                    | 1 +
 lib/tiny-printf.c                                             | 1 +
 lib/tizen/tizen.c                                             | 1 +
 lib/tpm-common.c                                              | 1 +
 lib/tpm-utils.h                                               | 1 +
 lib/tpm-v1.c                                                  | 1 +
 lib/tpm-v2.c                                                  | 1 +
 lib/trace.c                                                   | 1 +
 lib/uuid.c                                                    | 1 +
 lib/vsprintf.c                                                | 1 +
 lib/xxhash.c                                                  | 1 +
 lib/zstd/zstd_opt.h                                           | 1 +
 net/arp.c                                                     | 1 +
 net/arp.h                                                     | 1 +
 net/bootp.c                                                   | 2 ++
 net/bootp.h                                                   | 1 +
 net/cdp.c                                                     | 1 +
 net/cdp.h                                                     | 1 +
 net/dns.c                                                     | 1 +
 net/dns.h                                                     | 1 +
 net/eth-uclass.c                                              | 1 +
 net/eth_common.c                                              | 1 +
 net/eth_internal.h                                            | 1 +
 net/eth_legacy.c                                              | 1 +
 net/fastboot.c                                                | 3 +++
 net/mdio-mux-uclass.c                                         | 1 +
 net/mdio-uclass.c                                             | 1 +
 net/net.c                                                     | 1 +
 net/nfs.c                                                     | 1 +
 net/nfs.h                                                     | 1 +
 net/pcap.c                                                    | 1 +
 net/rarp.c                                                    | 1 +
 net/sntp.c                                                    | 1 +
 net/sntp.h                                                    | 1 +
 net/tftp.c                                                    | 2 ++
 net/wol.c                                                     | 1 +
 net/wol.h                                                     | 1 +
 post/cpu/mpc83xx/ecc.c                                        | 1 +
 post/drivers/flash.c                                          | 1 +
 post/drivers/memory.c                                         | 1 +
 post/drivers/rtc.c                                            | 1 +
 post/lib_powerpc/andi.c                                       | 1 +
 post/lib_powerpc/b.c                                          | 1 +
 post/lib_powerpc/cmp.c                                        | 1 +
 post/lib_powerpc/cmpi.c                                       | 1 +
 post/lib_powerpc/cpu.c                                        | 1 +
 post/lib_powerpc/cr.c                                         | 1 +
 post/lib_powerpc/load.c                                       | 1 +
 post/lib_powerpc/multi.c                                      | 1 +
 post/lib_powerpc/rlwimi.c                                     | 1 +
 post/lib_powerpc/rlwinm.c                                     | 1 +
 post/lib_powerpc/rlwnm.c                                      | 1 +
 post/lib_powerpc/srawi.c                                      | 1 +
 post/lib_powerpc/store.c                                      | 1 +
 post/lib_powerpc/string.c                                     | 1 +
 post/lib_powerpc/three.c                                      | 1 +
 post/lib_powerpc/threei.c                                     | 1 +
 post/lib_powerpc/threex.c                                     | 1 +
 post/lib_powerpc/two.c                                        | 1 +
 post/lib_powerpc/twox.c                                       | 1 +
 post/post.c                                                   | 2 ++
 test/bloblist.c                                               | 1 +
 test/cmd/mem_search.c                                         | 1 +
 test/compression.c                                            | 1 +
 test/dm/acpi.c                                                | 2 ++
 test/dm/acpi.h                                                | 1 +
 test/dm/acpi_dp.c                                             | 1 +
 test/dm/acpigen.c                                             | 1 +
 test/dm/audio.c                                               | 1 +
 test/dm/axi.c                                                 | 1 +
 test/dm/bootcount.c                                           | 1 +
 test/dm/clk.c                                                 | 1 +
 test/dm/core.c                                                | 1 +
 test/dm/devres.c                                              | 1 +
 test/dm/dma.c                                                 | 1 +
 test/dm/dsi_host.c                                            | 1 +
 test/dm/fdtdec.c                                              | 1 +
 test/dm/gpio.c                                                | 1 +
 test/dm/i2c.c                                                 | 1 +
 test/dm/i2s.c                                                 | 1 +
 test/dm/k210_pll.c                                            | 1 +
 test/dm/mailbox.c                                             | 1 +
 test/dm/mdio.c                                                | 1 +
 test/dm/mdio_mux.c                                            | 1 +
 test/dm/misc.c                                                | 1 +
 test/dm/ofnode.c                                              | 1 +
 test/dm/osd.c                                                 | 1 +
 test/dm/panel.c                                               | 1 +
 test/dm/pch.c                                                 | 1 +
 test/dm/pci.c                                                 | 1 +
 test/dm/pmic.c                                                | 1 +
 test/dm/power-domain.c                                        | 1 +
 test/dm/regmap.c                                              | 1 +
 test/dm/regulator.c                                           | 1 +
 test/dm/remoteproc.c                                          | 1 +
 test/dm/reset.c                                               | 1 +
 test/dm/rtc.c                                                 | 1 +
 test/dm/serial.c                                              | 1 +
 test/dm/sf.c                                                  | 1 +
 test/dm/smem.c                                                | 1 +
 test/dm/syscon-reset.c                                        | 1 +
 test/dm/tee.c                                                 | 1 +
 test/dm/test-fdt.c                                            | 1 +
 test/dm/video.c                                               | 1 +
 test/dm/virtio.c                                              | 1 +
 test/dm/wdt.c                                                 | 1 +
 test/env/hashtable.c                                          | 1 +
 test/lib/hexdump.c                                            | 1 +
 test/lib/lmb.c                                                | 1 +
 test/lib/string.c                                             | 1 +
 test/lib/test_aes.c                                           | 1 +
 test/optee/cmd_ut_optee.c                                     | 1 +
 test/overlay/cmd_ut_overlay.c                                 | 1 +
 test/print_ut.c                                               | 1 +
 test/stdint/int-types.c                                       | 1 +
 test/str_ut.c                                                 | 2 ++
 test/time_ut.c                                                | 1 +
 test/unicode_ut.c                                             | 1 +
 test/ut.c                                                     | 1 +
 4660 files changed, 5738 insertions(+), 6 deletions(-)

diff --git a/api/api_display.c b/api/api_display.c
index 4f2cdd7330e2..499a75d9e04d 100644
--- a/api/api_display.c
+++ b/api/api_display.c
@@ -8,6 +8,7 @@
 #include <lcd.h>
 #include <log.h>
 #include <video_font.h> /* Get font width and height */
+#include <linux/types.h>
 
 /* lcd.h needs BMP_LOGO_HEIGHT to calculate CONSOLE_ROWS */
 #if defined(CONFIG_LCD_LOGO) && !defined(CONFIG_LCD_INFO_BELOW_LOGO)
diff --git a/api/api_private.h b/api/api_private.h
index 07fd50ad3a36..11499e45d338 100644
--- a/api/api_private.h
+++ b/api/api_private.h
@@ -8,6 +8,7 @@
 #ifndef _API_PRIVATE_H_
 #define _API_PRIVATE_H_
 
+#include <linux/types.h>
 void	api_init(void);
 void	platform_set_mr(struct sys_info *, unsigned long, unsigned long, int);
 int	platform_sys_info(struct sys_info *);
diff --git a/api/api_storage.c b/api/api_storage.c
index d4474d7d55cf..49a1637d4d31 100644
--- a/api/api_storage.c
+++ b/api/api_storage.c
@@ -10,6 +10,7 @@
 #include <api_public.h>
 #include <part.h>
 #include <stdio.h>
+#include <linux/types.h>
 
 #if defined(CONFIG_CMD_USB) && defined(CONFIG_USB_STORAGE)
 #include <usb.h>
diff --git a/arch/arc/include/asm/sections.h b/arch/arc/include/asm/sections.h
index 1c9c9db13868..62cbe9b79045 100644
--- a/arch/arc/include/asm/sections.h
+++ b/arch/arc/include/asm/sections.h
@@ -7,6 +7,7 @@
 #define __ASM_ARC_SECTIONS_H
 
 #include <asm-generic/sections.h>
+#include <linux/types.h>
 
 extern ulong __ivt_start;
 extern ulong __ivt_end;
diff --git a/arch/arc/include/asm/u-boot-arc.h b/arch/arc/include/asm/u-boot-arc.h
index dd2c0949c681..17e558769965 100644
--- a/arch/arc/include/asm/u-boot-arc.h
+++ b/arch/arc/include/asm/u-boot-arc.h
@@ -6,6 +6,7 @@
 #ifndef __ASM_ARC_U_BOOT_ARC_H__
 #define __ASM_ARC_U_BOOT_ARC_H__
 
+#include <linux/types.h>
 int arch_early_init_r(void);
 
 void	board_init_f_r_trampoline(ulong) __attribute__ ((noreturn));
diff --git a/arch/arc/lib/bootm.c b/arch/arc/lib/bootm.c
index 28550041984f..0953f1e2169b 100644
--- a/arch/arc/lib/bootm.c
+++ b/arch/arc/lib/bootm.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <bootstage.h>
+#include <compiler.h>
 #include <env.h>
 #include <image.h>
 #include <irq_func.h>
@@ -13,6 +14,7 @@
 #include <stdio.h>
 #include <asm/cache.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index 1bdffd052e46..fa58e5216abe 100644
--- a/arch/arc/lib/cache.c
+++ b/arch/arc/lib/cache.c
@@ -6,6 +6,7 @@
 #include <config.h>
 #include <common.h>
 #include <cpu_func.h>
+#include <stdbool.h>
 #include <vsprintf.h>
 #include <asm/global_data.h>
 #include <linux/bitops.h>
diff --git a/arch/arc/lib/cpu.c b/arch/arc/lib/cpu.c
index 11b2e828088a..21bfb764e976 100644
--- a/arch/arc/lib/cpu.c
+++ b/arch/arc/lib/cpu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
 #include <malloc.h>
 #include <stdbool.h>
diff --git a/arch/arc/lib/relocate.c b/arch/arc/lib/relocate.c
index a1663c1eb393..f55ff930a873 100644
--- a/arch/arc/lib/relocate.c
+++ b/arch/arc/lib/relocate.c
@@ -9,6 +9,7 @@
 #include <asm-generic/sections.h>
 #include <asm/global_data.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 extern ulong __image_copy_start;
 extern ulong __ivt_start;
diff --git a/arch/arc/lib/reset.c b/arch/arc/lib/reset.c
index 4869fa936bfb..13fa8849ac8f 100644
--- a/arch/arc/lib/reset.c
+++ b/arch/arc/lib/reset.c
@@ -5,8 +5,10 @@
 
 #include <command.h>
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <stdio.h>
+#include <linux/types.h>
 
 __weak void reset_cpu(ulong addr)
 {
diff --git a/arch/arm/cpu/arm1136/mx31/generic.c b/arch/arm/cpu/arm1136/mx31/generic.c
index c6814a82d769..095f2dad226a 100644
--- a/arch/arm/cpu/arm1136/mx31/generic.c
+++ b/arch/arm/cpu/arm1136/mx31/generic.c
@@ -12,6 +12,7 @@
 #include <asm/arch/clock.h>
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 static u32 mx31_decode_pll(u32 reg, u32 infreq)
diff --git a/arch/arm/cpu/arm1136/mx35/generic.c b/arch/arm/cpu/arm1136/mx35/generic.c
index a001dee838d6..160787d8af39 100644
--- a/arch/arm/cpu/arm1136/mx35/generic.c
+++ b/arch/arm/cpu/arm1136/mx35/generic.c
@@ -15,6 +15,7 @@
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/errno.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/cpu/arm720t/interrupts.c b/arch/arm/cpu/arm720t/interrupts.c
index f0fc58deadba..ed5313ce469e 100644
--- a/arch/arm/cpu/arm720t/interrupts.c
+++ b/arch/arm/cpu/arm720t/interrupts.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <linux/types.h>
 
 #if defined(CONFIG_ARCH_TEGRA)
 static ulong timestamp;
diff --git a/arch/arm/cpu/arm920t/ep93xx/cpu.c b/arch/arm/cpu/arm920t/ep93xx/cpu.c
index c9ea4e46a870..a53d4c6d1f3e 100644
--- a/arch/arm/cpu/arm920t/ep93xx/cpu.c
+++ b/arch/arm/cpu/arm920t/ep93xx/cpu.c
@@ -12,6 +12,7 @@
 #include <cpu_func.h>
 #include <asm/arch/ep93xx.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 /* We reset the CPU by generating a 1-->0 transition on DeviceCfg bit 31. */
 extern void reset_cpu(ulong addr)
diff --git a/arch/arm/cpu/arm920t/ep93xx/led.c b/arch/arm/cpu/arm920t/ep93xx/led.c
index 862663acbab5..6eadb157e6ea 100644
--- a/arch/arm/cpu/arm920t/ep93xx/led.c
+++ b/arch/arm/cpu/arm920t/ep93xx/led.c
@@ -7,6 +7,7 @@
 #include <asm/arch/ep93xx.h>
 #include <config.h>
 #include <status_led.h>
+#include <linux/types.h>
 
 static uint8_t saved_state[2] = {CONFIG_LED_STATUS_OFF, CONFIG_LED_STATUS_OFF};
 static uint32_t gpio_pin[2] = {1 << CONFIG_LED_STATUS_GREEN,
diff --git a/arch/arm/cpu/arm920t/ep93xx/speed.c b/arch/arm/cpu/arm920t/ep93xx/speed.c
index 51e9dda0550d..69832d7138ab 100644
--- a/arch/arm/cpu/arm920t/ep93xx/speed.c
+++ b/arch/arm/cpu/arm920t/ep93xx/speed.c
@@ -9,6 +9,7 @@
 #include <asm/arch/ep93xx.h>
 #include <asm/io.h>
 #include <div64.h>
+#include <linux/types.h>
 
 /*
  * CONFIG_SYS_CLK_FREQ should be defined as the input frequency of the PLL.
diff --git a/arch/arm/cpu/arm926ejs/armada100/cpu.c b/arch/arm/cpu/arm926ejs/armada100/cpu.c
index 734e4d92a8fc..9e6a08ec9567 100644
--- a/arch/arm/cpu/arm926ejs/armada100/cpu.c
+++ b/arch/arm/cpu/arm926ejs/armada100/cpu.c
@@ -12,6 +12,7 @@
 #include <stdio.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/armada100.h>
+#include <asm/types.h>
 
 #define UARTCLK14745KHZ	(APBC_APBCLK | APBC_FNCLK | APBC_FNCLKSEL(1))
 #define SET_MRVL_ID	(1<<8)
diff --git a/arch/arm/cpu/arm926ejs/armada100/dram.c b/arch/arm/cpu/arm926ejs/armada100/dram.c
index 4b50d448ab11..eece5664ec78 100644
--- a/arch/arm/cpu/arm926ejs/armada100/dram.c
+++ b/arch/arm/cpu/arm926ejs/armada100/dram.c
@@ -12,6 +12,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/arch/armada100.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/arm926ejs/armada100/timer.c b/arch/arm/cpu/arm926ejs/armada100/timer.c
index ec73393d0fc7..54289331a7e1 100644
--- a/arch/arm/cpu/arm926ejs/armada100/timer.c
+++ b/arch/arm/cpu/arm926ejs/armada100/timer.c
@@ -14,6 +14,7 @@
 #include <asm/arch/armada100.h>
 #include <asm/global_data.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /*
  * Timer registers
diff --git a/arch/arm/cpu/arm926ejs/cache.c b/arch/arm/cpu/arm926ejs/cache.c
index acab9bccc01a..67d80774ae40 100644
--- a/arch/arm/cpu/arm926ejs/cache.c
+++ b/arch/arm/cpu/arm926ejs/cache.c
@@ -3,6 +3,7 @@
  * (C) Copyright 2011
  * Ilya Yanok, EmCraft Systems
  */
+#include <compiler.h>
 #include <cpu_func.h>
 #include <asm/cache.h>
 #include <linux/types.h>
diff --git a/arch/arm/cpu/arm926ejs/mx25/generic.c b/arch/arm/cpu/arm926ejs/mx25/generic.c
index 71e143b8a929..f22b37df3ca9 100644
--- a/arch/arm/cpu/arm926ejs/mx25/generic.c
+++ b/arch/arm/cpu/arm926ejs/mx25/generic.c
@@ -24,6 +24,7 @@
 #include <asm/arch/clock.h>
 #include <asm/u-boot.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_FSL_ESDHC_IMX
 #include <fsl_esdhc_imx.h>
diff --git a/arch/arm/cpu/arm926ejs/mx25/reset.c b/arch/arm/cpu/arm926ejs/mx25/reset.c
index 38df1c940227..6148adbaa4e8 100644
--- a/arch/arm/cpu/arm926ejs/mx25/reset.c
+++ b/arch/arm/cpu/arm926ejs/mx25/reset.c
@@ -19,6 +19,7 @@
 #include <cpu_func.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
+#include <linux/types.h>
 
 /*
  * Reset the cpu by setting up the watchdog timer and let it time out
diff --git a/arch/arm/cpu/arm926ejs/mx27/generic.c b/arch/arm/cpu/arm926ejs/mx27/generic.c
index 376ab2eaeac1..7d080b9bddeb 100644
--- a/arch/arm/cpu/arm926ejs/mx27/generic.c
+++ b/arch/arm/cpu/arm926ejs/mx27/generic.c
@@ -20,6 +20,7 @@
 #endif
 #include <asm/u-boot.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 /*
  *  get the system pll clock in Hz
diff --git a/arch/arm/cpu/arm926ejs/mx27/reset.c b/arch/arm/cpu/arm926ejs/mx27/reset.c
index 320b0a65e70b..bcfb8834210d 100644
--- a/arch/arm/cpu/arm926ejs/mx27/reset.c
+++ b/arch/arm/cpu/arm926ejs/mx27/reset.c
@@ -19,6 +19,7 @@
 #include <cpu_func.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
+#include <linux/types.h>
 
 /*
  * Reset the cpu by setting up the watchdog timer and let it time out
diff --git a/arch/arm/cpu/arm926ejs/mx27/timer.c b/arch/arm/cpu/arm926ejs/mx27/timer.c
index 4fd6a8059685..d486585f8a4a 100644
--- a/arch/arm/cpu/arm926ejs/mx27/timer.c
+++ b/arch/arm/cpu/arm926ejs/mx27/timer.c
@@ -24,6 +24,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/ptrace.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /* General purpose timers bitfields */
 #define GPTCR_SWR		(1 << 15)	/* Software reset	*/
diff --git a/arch/arm/cpu/arm926ejs/mxs/clock.c b/arch/arm/cpu/arm926ejs/mxs/clock.c
index 4e1cf3a1e32b..52208774ce0c 100644
--- a/arch/arm/cpu/arm926ejs/mxs/clock.c
+++ b/arch/arm/cpu/arm926ejs/mxs/clock.c
@@ -15,6 +15,7 @@
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
+#include <linux/types.h>
 
 /*
  * The PLL frequency is 480MHz and XTAL frequency is 24MHz
diff --git a/arch/arm/cpu/arm926ejs/mxs/iomux.c b/arch/arm/cpu/arm926ejs/mxs/iomux.c
index 381264b8a18d..4c80dd5d36ae 100644
--- a/arch/arm/cpu/arm926ejs/mxs/iomux.c
+++ b/arch/arm/cpu/arm926ejs/mxs/iomux.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
diff --git a/arch/arm/cpu/arm926ejs/mxs/mxs.c b/arch/arm/cpu/arm926ejs/mxs/mxs.c
index 84d672286312..1094477aeb3d 100644
--- a/arch/arm/cpu/arm926ejs/mxs/mxs.c
+++ b/arch/arm/cpu/arm926ejs/mxs/mxs.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <hang.h>
 #include <init.h>
@@ -29,6 +30,7 @@
 #include <asm/arch/sys_proto.h>
 #include <linux/compiler.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/arm926ejs/mxs/mxs_init.h b/arch/arm/cpu/arm926ejs/mxs/mxs_init.h
index 062deb7793f6..31836d7d8d1d 100644
--- a/arch/arm/cpu/arm926ejs/mxs/mxs_init.h
+++ b/arch/arm/cpu/arm926ejs/mxs/mxs_init.h
@@ -9,6 +9,7 @@
 #ifndef	__M28_INIT_H__
 #define	__M28_INIT_H__
 
+#include <linux/types.h>
 void early_delay(int delay);
 
 void mxs_power_init(void);
diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
index 88386dbb20f7..3fe7d79b905b 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
@@ -20,6 +20,7 @@
 #include <linux/compiler.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include "mxs_init.h"
 
diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c b/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
index 4d2d988c287e..ff46c86b620d 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <config.h>
 #include <init.h>
 #include <log.h>
@@ -15,6 +16,7 @@
 #include <asm/arch/sys_proto.h>
 #include <linux/compiler.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include "mxs_init.h"
 
diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c b/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
index f57e1bb96c85..dcab4c120935 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
@@ -7,12 +7,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <config.h>
 #include <hang.h>
 #include <log.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include "mxs_init.h"
 
diff --git a/arch/arm/cpu/arm926ejs/mxs/timer.c b/arch/arm/cpu/arm926ejs/mxs/timer.c
index 3dff3d768d1c..58b1d0415851 100644
--- a/arch/arm/cpu/arm926ejs/mxs/timer.c
+++ b/arch/arm/cpu/arm926ejs/mxs/timer.c
@@ -17,6 +17,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /* Maximum fixed count */
 #if defined(CONFIG_MX23)
diff --git a/arch/arm/cpu/arm926ejs/spear/cpu.c b/arch/arm/cpu/arm926ejs/spear/cpu.c
index 3b1e80252512..4bb03db88f81 100644
--- a/arch/arm/cpu/arm926ejs/spear/cpu.c
+++ b/arch/arm/cpu/arm926ejs/spear/cpu.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/spr_misc.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 int arch_cpu_init(void)
diff --git a/arch/arm/cpu/arm926ejs/spear/reset.c b/arch/arm/cpu/arm926ejs/spear/reset.c
index 7c3ba8b2dbd5..38dfa0234978 100644
--- a/arch/arm/cpu/arm926ejs/spear/reset.c
+++ b/arch/arm/cpu/arm926ejs/spear/reset.c
@@ -11,6 +11,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/spr_syscntl.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 void reset_cpu(ulong ignored)
 {
diff --git a/arch/arm/cpu/arm926ejs/spear/spear600.c b/arch/arm/cpu/arm926ejs/spear/spear600.c
index 2b036215d1c1..ca5c770f42a2 100644
--- a/arch/arm/cpu/arm926ejs/spear/spear600.c
+++ b/arch/arm/cpu/arm926ejs/spear/spear600.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/spr_misc.h>
 #include <asm/arch/spr_defs.h>
+#include <asm/types.h>
 
 void spear_late_init(void)
 {
diff --git a/arch/arm/cpu/arm926ejs/spear/spl.c b/arch/arm/cpu/arm926ejs/spear/spl.c
index 54c540b7bf25..5abcb71dd992 100644
--- a/arch/arm/cpu/arm926ejs/spear/spl.c
+++ b/arch/arm/cpu/arm926ejs/spear/spl.c
@@ -18,6 +18,7 @@
 #include <asm/arch/spr_misc.h>
 #include <asm/arch/spr_syscntl.h>
 #include <linux/mtd/st_smi.h>
+#include <linux/types.h>
 
 /* Reserve some space to store the BootROM's stack pointer during SPL operation.
  * The BSS cannot be used for this purpose because it will be zeroed after
diff --git a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h128m8_3_266_cl5_async.c b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h128m8_3_266_cl5_async.c
index 79ab2a70dc54..9b761c8d1f60 100644
--- a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h128m8_3_266_cl5_async.c
+++ b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h128m8_3_266_cl5_async.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 
 #if (CONFIG_DDR_PLL2)
 
diff --git a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_333_cl5_psync.c b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_333_cl5_psync.c
index 121b63607783..2e6bb0c8a69b 100644
--- a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_333_cl5_psync.c
+++ b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_333_cl5_psync.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 
 #if (CONFIG_DDR_PLL2 || CONFIG_DDR_2HCLK)
 
diff --git a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_37e_166_cl4_sync.c b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_37e_166_cl4_sync.c
index 64c8bab9bfa1..d0473d0d6807 100644
--- a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_37e_166_cl4_sync.c
+++ b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h32m16_37e_166_cl4_sync.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 
 #if (CONFIG_DDR_HCLK)
 
diff --git a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h64m16_3_333_cl5_psync.c b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h64m16_3_333_cl5_psync.c
index 87654663fcf8..0bcedb197580 100644
--- a/arch/arm/cpu/arm926ejs/spear/spr600_mt47h64m16_3_333_cl5_psync.c
+++ b/arch/arm/cpu/arm926ejs/spear/spr600_mt47h64m16_3_333_cl5_psync.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 
 #if (CONFIG_DDR_PLL2 || CONFIG_DDR_2HCLK)
 
diff --git a/arch/arm/cpu/arm926ejs/spear/spr_misc.c b/arch/arm/cpu/arm926ejs/spear/spr_misc.c
index 6a7d63d09848..e1bcafc43ebc 100644
--- a/arch/arm/cpu/arm926ejs/spear/spr_misc.c
+++ b/arch/arm/cpu/arm926ejs/spear/spr_misc.c
@@ -20,6 +20,7 @@
 #include <asm/arch/spr_emi.h>
 #include <asm/arch/spr_defs.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define CPU		0
 #define DDR		1
diff --git a/arch/arm/cpu/arm926ejs/spear/timer.c b/arch/arm/cpu/arm926ejs/spear/timer.c
index b42baa71506f..b5b7814d130c 100644
--- a/arch/arm/cpu/arm926ejs/spear/timer.c
+++ b/arch/arm/cpu/arm926ejs/spear/timer.c
@@ -14,6 +14,7 @@
 #include <asm/arch/spr_misc.h>
 #include <asm/ptrace.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #define GPT_RESOLUTION	(CONFIG_SPEAR_HZ_CLOCK / CONFIG_SPEAR_HZ)
 #define READ_TIMER()	(readl(&gpt_regs_p->count) & GPT_FREE_RUNNING)
diff --git a/arch/arm/cpu/arm946es/cpu.c b/arch/arm/cpu/arm946es/cpu.c
index fb0ea5e817ff..cb8adf58ecea 100644
--- a/arch/arm/cpu/arm946es/cpu.c
+++ b/arch/arm/cpu/arm946es/cpu.c
@@ -18,6 +18,7 @@
 #include <irq_func.h>
 #include <asm/system.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 static void cache_flush(void);
 
diff --git a/arch/arm/cpu/armv7/arch_timer.c b/arch/arm/cpu/armv7/arch_timer.c
index d96406f7626f..774c5ad52c3a 100644
--- a/arch/arm/cpu/armv7/arch_timer.c
+++ b/arch/arm/cpu/armv7/arch_timer.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <div64.h>
 #include <bootstage.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c b/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c
index c8a8e358f744..40eda46d954e 100644
--- a/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c
+++ b/arch/arm/cpu/armv7/bcm235xx/clk-bsc.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/sysmap.h>
 #include <asm/kona-common/clk.h>
diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-core.c b/arch/arm/cpu/armv7/bcm235xx/clk-core.c
index 098c5afb7313..059a2464c1be 100644
--- a/arch/arm/cpu/armv7/bcm235xx/clk-core.c
+++ b/arch/arm/cpu/armv7/bcm235xx/clk-core.c
@@ -11,8 +11,10 @@
 
 #include <common.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <bitfield.h>
diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-core.h b/arch/arm/cpu/armv7/bcm235xx/clk-core.h
index 6dfc4afb0067..e654d4a7aecc 100644
--- a/arch/arm/cpu/armv7/bcm235xx/clk-core.h
+++ b/arch/arm/cpu/armv7/bcm235xx/clk-core.h
@@ -4,6 +4,7 @@
  */
 
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/stddef.h>
 #include <linux/stringify.h>
diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c b/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c
index c21a23c2abeb..301e24f359c8 100644
--- a/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c
+++ b/arch/arm/cpu/armv7/bcm235xx/clk-sdio.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/sysmap.h>
 #include <asm/kona-common/clk.h>
diff --git a/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c b/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c
index f065560d2d0b..99a45c6f8708 100644
--- a/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c
+++ b/arch/arm/cpu/armv7/bcm235xx/clk-usb-otg.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/sysmap.h>
 #include "clk-core.h"
diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c b/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c
index c8a8e358f744..40eda46d954e 100644
--- a/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c
+++ b/arch/arm/cpu/armv7/bcm281xx/clk-bsc.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/sysmap.h>
 #include <asm/kona-common/clk.h>
diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-core.c b/arch/arm/cpu/armv7/bcm281xx/clk-core.c
index 2fb195bf8f9c..17530c8b7395 100644
--- a/arch/arm/cpu/armv7/bcm281xx/clk-core.c
+++ b/arch/arm/cpu/armv7/bcm281xx/clk-core.c
@@ -11,8 +11,10 @@
 
 #include <common.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <bitfield.h>
diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-core.h b/arch/arm/cpu/armv7/bcm281xx/clk-core.h
index 74780012e24a..1ce30b3e0920 100644
--- a/arch/arm/cpu/armv7/bcm281xx/clk-core.h
+++ b/arch/arm/cpu/armv7/bcm281xx/clk-core.h
@@ -4,6 +4,7 @@
  */
 
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/stddef.h>
 #include <linux/stringify.h>
diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c b/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c
index c21a23c2abeb..301e24f359c8 100644
--- a/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c
+++ b/arch/arm/cpu/armv7/bcm281xx/clk-sdio.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/sysmap.h>
 #include <asm/kona-common/clk.h>
diff --git a/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c b/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c
index f065560d2d0b..99a45c6f8708 100644
--- a/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c
+++ b/arch/arm/cpu/armv7/bcm281xx/clk-usb-otg.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/sysmap.h>
 #include "clk-core.h"
diff --git a/arch/arm/cpu/armv7/bcm281xx/reset.c b/arch/arm/cpu/armv7/bcm281xx/reset.c
index fda5a9527ec3..281d2e46eee4 100644
--- a/arch/arm/cpu/armv7/bcm281xx/reset.c
+++ b/arch/arm/cpu/armv7/bcm281xx/reset.c
@@ -7,6 +7,7 @@
 #include <cpu_func.h>
 #include <asm/io.h>
 #include <asm/arch/sysmap.h>
+#include <linux/types.h>
 
 #define EN_MASK		0x08000000	/* Enable timer */
 #define SRSTEN_MASK	0x04000000	/* Enable soft reset */
diff --git a/arch/arm/cpu/armv7/bcmcygnus/reset.c b/arch/arm/cpu/armv7/bcmcygnus/reset.c
index 3bfed34533bd..023cbd64299a 100644
--- a/arch/arm/cpu/armv7/bcmcygnus/reset.c
+++ b/arch/arm/cpu/armv7/bcmcygnus/reset.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <cpu_func.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 #define CRMU_MAIL_BOX1		0x03024028
 #define CRMU_SOFT_RESET_CMD	0xFFFFFFFF
diff --git a/arch/arm/cpu/armv7/bcmnsp/reset.c b/arch/arm/cpu/armv7/bcmnsp/reset.c
index 675f99fe998f..547defa92b45 100644
--- a/arch/arm/cpu/armv7/bcmnsp/reset.c
+++ b/arch/arm/cpu/armv7/bcmnsp/reset.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <cpu_func.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 #define CRU_RESET_OFFSET	0x1803F184
 
diff --git a/arch/arm/cpu/armv7/cache_v7.c b/arch/arm/cpu/armv7/cache_v7.c
index 146cf526089f..a19aea275db3 100644
--- a/arch/arm/cpu/armv7/cache_v7.c
+++ b/arch/arm/cpu/armv7/cache_v7.c
@@ -4,6 +4,7 @@
  * Texas Instruments, <www.ti.com>
  * Aneesh V <aneesh at ti.com>
  */
+#include <compiler.h>
 #include <cpu_func.h>
 #include <asm/cache.h>
 #include <linux/types.h>
diff --git a/arch/arm/cpu/armv7/cp15.c b/arch/arm/cpu/armv7/cp15.c
index 0ac4e7ba8c80..482d1969a969 100644
--- a/arch/arm/cpu/armv7/cp15.c
+++ b/arch/arm/cpu/armv7/cp15.c
@@ -9,9 +9,11 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <asm/system.h>
 #include <asm/cache.h>
 #include <asm/armv7.h>
+#include <asm/types.h>
 #include <linux/compiler.h>
 
 void __weak v7_arch_cp15_set_l2aux_ctrl(u32 l2actlr, u32 cpu_midr,
diff --git a/arch/arm/cpu/armv7/cpu.c b/arch/arm/cpu/armv7/cpu.c
index 68807d209978..ce278c0503ca 100644
--- a/arch/arm/cpu/armv7/cpu.c
+++ b/arch/arm/cpu/armv7/cpu.c
@@ -16,6 +16,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <irq_func.h>
 #include <asm/system.h>
diff --git a/arch/arm/cpu/armv7/exception_level.c b/arch/arm/cpu/armv7/exception_level.c
index 5845cca9a335..08e558817f6e 100644
--- a/arch/arm/cpu/armv7/exception_level.c
+++ b/arch/arm/cpu/armv7/exception_level.c
@@ -16,6 +16,7 @@
 #include <asm/armv7.h>
 #include <asm/secure.h>
 #include <asm/setjmp.h>
+#include <linux/types.h>
 
 /**
  * entry_non_secure() - entry point when switching to non-secure mode
diff --git a/arch/arm/cpu/armv7/iproc-common/armpll.c b/arch/arm/cpu/armv7/iproc-common/armpll.c
index 2ac598cee7bb..89a5e37d39bb 100644
--- a/arch/arm/cpu/armv7/iproc-common/armpll.c
+++ b/arch/arm/cpu/armv7/iproc-common/armpll.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/iproc-common/armpll.h>
 #include <asm/iproc-common/sysmap.h>
+#include <linux/types.h>
 
 #define NELEMS(x)	(sizeof(x) / sizeof(x[0]))
 
diff --git a/arch/arm/cpu/armv7/iproc-common/timer.c b/arch/arm/cpu/armv7/iproc-common/timer.c
index a4255a44c001..057071b56817 100644
--- a/arch/arm/cpu/armv7/iproc-common/timer.c
+++ b/arch/arm/cpu/armv7/iproc-common/timer.c
@@ -11,6 +11,7 @@
 #include <asm/iproc-common/timer.h>
 #include <asm/iproc-common/sysmap.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 static inline uint64_t timer_global_read(void)
 {
diff --git a/arch/arm/cpu/armv7/kona-common/clk-stubs.c b/arch/arm/cpu/armv7/kona-common/clk-stubs.c
index 19aa6c07358f..634937d5b217 100644
--- a/arch/arm/cpu/armv7/kona-common/clk-stubs.c
+++ b/arch/arm/cpu/armv7/kona-common/clk-stubs.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <compiler.h>
+#include <asm/types.h>
 
 /*
  * These weak functions are available to kona architectures that don't
diff --git a/arch/arm/cpu/armv7/ls102xa/clock.c b/arch/arm/cpu/armv7/ls102xa/clock.c
index d0f349618d4b..bb0d876e0bba 100644
--- a/arch/arm/cpu/armv7/ls102xa/clock.c
+++ b/arch/arm/cpu/armv7/ls102xa/clock.c
@@ -5,12 +5,14 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/arch/immap_ls102xa.h>
 #include <asm/arch/clock.h>
 #include <fsl_ifc.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv7/ls102xa/cpu.c b/arch/arm/cpu/armv7/ls102xa/cpu.c
index 5e922953c960..4548feca08cd 100644
--- a/arch/arm/cpu/armv7/ls102xa/cpu.c
+++ b/arch/arm/cpu/armv7/ls102xa/cpu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <init.h>
 #include <net.h>
@@ -23,6 +24,7 @@
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include "fsl_epu.h"
 
diff --git a/arch/arm/cpu/armv7/ls102xa/fdt.c b/arch/arm/cpu/armv7/ls102xa/fdt.c
index aef54ebf3c86..a70bbc1be1ae 100644
--- a/arch/arm/cpu/armv7/ls102xa/fdt.c
+++ b/arch/arm/cpu/armv7/ls102xa/fdt.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <net.h>
 #include <stdio.h>
 #include <vsprintf.h>
@@ -25,6 +26,7 @@
 #include <fsl_sec.h>
 #include <dm.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv7/ls102xa/fsl_epu.c b/arch/arm/cpu/armv7/ls102xa/fsl_epu.c
index e31a4fb6c31b..c6c6fb4e4117 100644
--- a/arch/arm/cpu/armv7/ls102xa/fsl_epu.c
+++ b/arch/arm/cpu/armv7/ls102xa/fsl_epu.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #include "fsl_epu.h"
 
diff --git a/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c b/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c
index 2683b59a2a0a..bf789cd62089 100644
--- a/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c
+++ b/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.c
@@ -4,9 +4,11 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/immap_ls102xa.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/io.h>
 #include "fsl_ls1_serdes.h"
diff --git a/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.h b/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.h
index 7382aef8ee38..6500f183c459 100644
--- a/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.h
+++ b/arch/arm/cpu/armv7/ls102xa/fsl_ls1_serdes.h
@@ -6,6 +6,7 @@
 #ifndef __FSL_LS1_SERDES_H
 #define __FSL_LS1_SERDES_H
 
+#include <asm/types.h>
 int is_serdes_prtcl_valid(int serdes, u32 prtcl);
 int serdes_lane_enabled(int lane);
 #endif /* __FSL_LS1_SERDES_H */
diff --git a/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c b/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c
index 4a4b3c6f2328..e1c417926bb6 100644
--- a/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c
+++ b/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c
@@ -5,12 +5,14 @@
  * This file implements LS102X platform PSCI SYSTEM-SUSPEND function
  */
 
+#include <compiler.h>
 #include <config.h>
 #include <cpu_func.h>
 #include <asm/io.h>
 #include <asm/psci.h>
 #include <asm/arch/immap_ls102xa.h>
 #include <fsl_immap.h>
+#include <asm/types.h>
 #include "fsl_epu.h"
 
 #define __secure __attribute__((section("._secure.text")))
diff --git a/arch/arm/cpu/armv7/ls102xa/ls102xa_serdes.c b/arch/arm/cpu/armv7/ls102xa/ls102xa_serdes.c
index 3d313b1ad762..c29f7563b337 100644
--- a/arch/arm/cpu/armv7/ls102xa/ls102xa_serdes.c
+++ b/arch/arm/cpu/armv7/ls102xa/ls102xa_serdes.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/immap_ls102xa.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 static u8 serdes_cfg_tbl[][SRDS_MAX_LANES] = {
diff --git a/arch/arm/cpu/armv7/ls102xa/soc.c b/arch/arm/cpu/armv7/ls102xa/soc.c
index bcee1c545d0a..f8d09680281c 100644
--- a/arch/arm/cpu/armv7/ls102xa/soc.c
+++ b/arch/arm/cpu/armv7/ls102xa/soc.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <log.h>
 #include <asm/arch/clock.h>
 #include <asm/io.h>
@@ -13,6 +14,7 @@
 #include <asm/arch/ls102xa_stream_id.h>
 #include <fsl_csu.h>
 #include <fsl_ddr_sdram.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct liodn_id_table sec_liodn_tbl[] = {
diff --git a/arch/arm/cpu/armv7/ls102xa/spl.c b/arch/arm/cpu/armv7/ls102xa/spl.c
index 308536c3362f..03a879a44c67 100644
--- a/arch/arm/cpu/armv7/ls102xa/spl.c
+++ b/arch/arm/cpu/armv7/ls102xa/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <spl.h>
+#include <asm/types.h>
 
 u32 spl_boot_device(void)
 {
diff --git a/arch/arm/cpu/armv7/ls102xa/timer.c b/arch/arm/cpu/armv7/ls102xa/timer.c
index d79bf105f13a..02f96ac2ea5c 100644
--- a/arch/arm/cpu/armv7/ls102xa/timer.c
+++ b/arch/arm/cpu/armv7/ls102xa/timer.c
@@ -12,6 +12,7 @@
 #include <asm/arch/immap_ls102xa.h>
 #include <asm/arch/clock.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv7/mpu_v7r.c b/arch/arm/cpu/armv7/mpu_v7r.c
index 57ab640e2633..eba9d3f86ddc 100644
--- a/arch/arm/cpu/armv7/mpu_v7r.c
+++ b/arch/arm/cpu/armv7/mpu_v7r.c
@@ -12,6 +12,7 @@
 #include <asm/armv7.h>
 #include <asm/system.h>
 #include <asm/barriers.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/compiler.h>
 
diff --git a/arch/arm/cpu/armv7/psci-common.c b/arch/arm/cpu/armv7/psci-common.c
index a328b2bc0e83..ce7d339eb209 100644
--- a/arch/arm/cpu/armv7/psci-common.c
+++ b/arch/arm/cpu/armv7/psci-common.c
@@ -22,6 +22,7 @@
 #include <asm/macro.h>
 #include <asm/psci.h>
 #include <asm/secure.h>
+#include <asm/types.h>
 #include <linux/linkage.h>
 
 static u32 psci_target_pc[CONFIG_ARMV7_PSCI_NR_CPUS] __secure_data = { 0 };
diff --git a/arch/arm/cpu/armv7/s5p-common/cpu_info.c b/arch/arm/cpu/armv7/s5p-common/cpu_info.c
index 722810276dec..4da6621c2196 100644
--- a/arch/arm/cpu/armv7/s5p-common/cpu_info.c
+++ b/arch/arm/cpu/armv7/s5p-common/cpu_info.c
@@ -11,6 +11,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/arch/clk.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv7/s5p-common/pwm.c b/arch/arm/cpu/armv7/s5p-common/pwm.c
index 67c9208084db..8a48dc11eb1f 100644
--- a/arch/arm/cpu/armv7/s5p-common/pwm.c
+++ b/arch/arm/cpu/armv7/s5p-common/pwm.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/pwm.h>
 #include <asm/arch/clk.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 int pwm_enable(int pwm_id)
diff --git a/arch/arm/cpu/armv7/s5p-common/sromc.c b/arch/arm/cpu/armv7/s5p-common/sromc.c
index 0fc170936ae4..0aed9e947e69 100644
--- a/arch/arm/cpu/armv7/s5p-common/sromc.c
+++ b/arch/arm/cpu/armv7/s5p-common/sromc.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <asm/io.h>
 #include <asm/arch/sromc.h>
+#include <asm/types.h>
 
 /*
  * s5p_config_sromc() - select the proper SROMC Bank and configure the
diff --git a/arch/arm/cpu/armv7/s5p-common/timer.c b/arch/arm/cpu/armv7/s5p-common/timer.c
index 8141f40d5c09..1f88b145f1a5 100644
--- a/arch/arm/cpu/armv7/s5p-common/timer.c
+++ b/arch/arm/cpu/armv7/s5p-common/timer.c
@@ -15,6 +15,7 @@
 #include <asm/arch/pwm.h>
 #include <asm/arch/clk.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /* Use the old PWM interface for now */
 #undef CONFIG_DM_PWM
diff --git a/arch/arm/cpu/armv7/s5p4418/cpu.c b/arch/arm/cpu/armv7/s5p4418/cpu.c
index 3c71a37a74bf..699918d06257 100644
--- a/arch/arm/cpu/armv7/s5p4418/cpu.c
+++ b/arch/arm/cpu/armv7/s5p4418/cpu.c
@@ -17,6 +17,7 @@
 #include <asm/arch/tieoff.h>
 #include <cpu_func.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv7/stv0991/reset.c b/arch/arm/cpu/armv7/stv0991/reset.c
index 1be1dc486d44..58098d296e5b 100644
--- a/arch/arm/cpu/armv7/stv0991/reset.c
+++ b/arch/arm/cpu/armv7/stv0991/reset.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/arch/stv0991_wdru.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 void reset_cpu(ulong ignored)
 {
 	puts("System is going to reboot ...\n");
diff --git a/arch/arm/cpu/armv7/stv0991/timer.c b/arch/arm/cpu/armv7/stv0991/timer.c
index 07033acb5c18..aad61d72add8 100644
--- a/arch/arm/cpu/armv7/stv0991/timer.c
+++ b/arch/arm/cpu/armv7/stv0991/timer.c
@@ -13,6 +13,7 @@
 #include <asm/arch-stv0991/stv0991_cgu.h>
 #include <asm/arch-stv0991/stv0991_gpt.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 static struct stv0991_cgu_regs *const stv0991_cgu_regs = \
 				(struct stv0991_cgu_regs *) (CGU_BASE_ADDR);
diff --git a/arch/arm/cpu/armv7/sunxi/psci.c b/arch/arm/cpu/armv7/sunxi/psci.c
index 5f21529bf2e0..8f6532e344d1 100644
--- a/arch/arm/cpu/armv7/sunxi/psci.c
+++ b/arch/arm/cpu/armv7/sunxi/psci.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <stdbool.h>
 #include <asm/cache.h>
+#include <asm/types.h>
 
 #include <asm/arch/cpu.h>
 #include <asm/arch/cpucfg.h>
diff --git a/arch/arm/cpu/armv7/sunxi/timer.c b/arch/arm/cpu/armv7/sunxi/timer.c
index b7585996369f..29193cf3ed61 100644
--- a/arch/arm/cpu/armv7/sunxi/timer.c
+++ b/arch/arm/cpu/armv7/sunxi/timer.c
@@ -12,6 +12,7 @@
 #include <asm/io.h>
 #include <asm/arch/timer.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv7/syslib.c b/arch/arm/cpu/armv7/syslib.c
index 7e29636972d9..7e0b7b0da98e 100644
--- a/arch/arm/cpu/armv7/syslib.c
+++ b/arch/arm/cpu/armv7/syslib.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 /************************************************************
  * sdelay() - simple spin loop.  Will be constant time as
diff --git a/arch/arm/cpu/armv7/vf610/generic.c b/arch/arm/cpu/armv7/vf610/generic.c
index 93418ce9a8c5..80e22fcd6242 100644
--- a/arch/arm/cpu/armv7/vf610/generic.c
+++ b/arch/arm/cpu/armv7/vf610/generic.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <clock_legacy.h>
 #include <command.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <init.h>
 #include <net.h>
@@ -22,6 +23,7 @@
 #ifdef CONFIG_FSL_ESDHC_IMX
 #include <fsl_esdhc_imx.h>
 #endif
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/errno.h>
 #include <linux/string.h>
diff --git a/arch/arm/cpu/armv7/vf610/timer.c b/arch/arm/cpu/armv7/vf610/timer.c
index a9c1a8fcebc1..1afa86b558c6 100644
--- a/arch/arm/cpu/armv7/vf610/timer.c
+++ b/arch/arm/cpu/armv7/vf610/timer.c
@@ -12,6 +12,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/clock.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 static struct pit_reg *cur_pit = (struct pit_reg *)PIT_BASE_ADDR;
 
diff --git a/arch/arm/cpu/armv7/virt-v7.c b/arch/arm/cpu/armv7/virt-v7.c
index cf0954cb9b3b..7aadb18cf1b4 100644
--- a/arch/arm/cpu/armv7/virt-v7.c
+++ b/arch/arm/cpu/armv7/virt-v7.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <stdio.h>
 #include <asm/armv7.h>
@@ -18,6 +19,7 @@
 #include <asm/secure.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 static unsigned int read_id_pfr1(void)
 {
diff --git a/arch/arm/cpu/armv7m/cache.c b/arch/arm/cpu/armv7m/cache.c
index abed2e36df44..d81c0b12154c 100644
--- a/arch/arm/cpu/armv7m/cache.c
+++ b/arch/arm/cpu/armv7m/cache.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <linux/bitops.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 /* Cache maintenance operation registers */
 
diff --git a/arch/arm/cpu/armv7m/cpu.c b/arch/arm/cpu/armv7m/cpu.c
index 7f827da033bf..eabc5789e875 100644
--- a/arch/arm/cpu/armv7m/cpu.c
+++ b/arch/arm/cpu/armv7m/cpu.c
@@ -12,6 +12,7 @@
 #include <irq_func.h>
 #include <asm/io.h>
 #include <asm/armv7m.h>
+#include <linux/types.h>
 
 /*
  * This is called right before passing control to
diff --git a/arch/arm/cpu/armv7m/mpu.c b/arch/arm/cpu/armv7m/mpu.c
index 81e7492f1c86..cdd4b7d25185 100644
--- a/arch/arm/cpu/armv7m/mpu.c
+++ b/arch/arm/cpu/armv7m/mpu.c
@@ -8,6 +8,7 @@
 #include <asm/armv7m.h>
 #include <asm/armv7_mpu.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 #define V7M_MPU_CTRL_ENABLE		BIT(0)
 #define V7M_MPU_CTRL_DISABLE		(0 << 0)
diff --git a/arch/arm/cpu/armv7m/systick-timer.c b/arch/arm/cpu/armv7m/systick-timer.c
index 556eaf8c74ad..cc1e13d74d25 100644
--- a/arch/arm/cpu/armv7m/systick-timer.c
+++ b/arch/arm/cpu/armv7m/systick-timer.c
@@ -27,6 +27,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv8/cache_v8.c b/arch/arm/cpu/armv8/cache_v8.c
index 8add6ac333b2..b128367e82fe 100644
--- a/arch/arm/cpu/armv8/cache_v8.c
+++ b/arch/arm/cpu/armv8/cache_v8.c
@@ -8,9 +8,11 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <hang.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/cache.h>
@@ -19,6 +21,7 @@
 #include <asm/armv8/mmu.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv8/cpu.c b/arch/arm/cpu/armv8/cpu.c
index 21c10cf6c7ca..9cd76d4a7ffb 100644
--- a/arch/arm/cpu/armv8/cpu.c
+++ b/arch/arm/cpu/armv8/cpu.c
@@ -12,6 +12,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <irq_func.h>
 #include <asm/cache.h>
@@ -19,6 +20,7 @@
 #include <asm/secure.h>
 #include <linux/compiler.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /*
  * sdelay() - simple spin loop.
diff --git a/arch/arm/cpu/armv8/exception_level.c b/arch/arm/cpu/armv8/exception_level.c
index b11936548fb3..edb7ef89a6c1 100644
--- a/arch/arm/cpu/armv8/exception_level.c
+++ b/arch/arm/cpu/armv8/exception_level.c
@@ -14,6 +14,7 @@
 #include <log.h>
 #include <asm/cache.h>
 #include <asm/setjmp.h>
+#include <linux/types.h>
 
 /**
  * entry_non_secure() - entry point when switching to non-secure mode
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
index 38ff2ce207d1..56c076b70a91 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <env.h>
 #include <fsl_ddr_sdram.h>
@@ -44,6 +45,7 @@
 #include <fsl_qbman.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_TFABOOT
 #include <env_internal.h>
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.h b/arch/arm/cpu/armv8/fsl-layerscape/cpu.h
index dca5fd0f7dcd..99f48597e2e6 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.h
+++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.h
@@ -3,6 +3,7 @@
  * Copyright 2014-2015, Freescale Semiconductor
  */
 
+#include <asm/types.h>
 int fsl_qoriq_core_to_cluster(unsigned int core);
 u32 initiator_type(u32 cluster, int init_id);
 u32 cpu_mask(void);
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
index 09750dc2e884..9ef6ca33b47b 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <efi_loader.h>
 #include <log.h>
 #include <stdio.h>
@@ -34,6 +35,7 @@
 #include <asm/arch/speed.h>
 #include <fsl_qbman.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 int fdt_fixup_phy_connection(void *blob, int offset, phy_interface_t phyc)
 {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c
index 86b2d335ab08..88f80433ab44 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_serdes.c
@@ -4,9 +4,11 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <log.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <asm/arch/fsl_serdes.h>
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c
index c32e7f20962e..f61fef4bb878 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <stdio.h>
 #include <asm/global_data.h>
@@ -15,6 +16,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/soc.h>
 #include <fsl_ifc.h>
+#include <linux/types.h>
 #include "cpu.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c
index f79328394c90..806ac73b1a69 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_serdes.c
@@ -5,12 +5,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <env.h>
 #include <log.h>
 #include <stdbool.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c
index 3240f8ef97f8..cff3c8989739 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <stdio.h>
 #include <asm/global_data.h>
@@ -18,6 +19,7 @@
 #include <asm/arch-fsl-layerscape/immap_lsch3.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/soc.h>
+#include <linux/types.h>
 #include "cpu.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/icid.c b/arch/arm/cpu/armv8/fsl-layerscape/icid.c
index 5c378da0636c..f4801173466f 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/icid.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/icid.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ls1012a_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/ls1012a_serdes.c
index 33d9a64e6800..3db03fc450e7 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ls1012a_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ls1012a_serdes.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/immap_lsch2.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct serdes_config {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ls1028_ids.c b/arch/arm/cpu/armv8/fsl-layerscape/ls1028_ids.c
index 4d12ffae1bd0..57c3652e3769 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ls1028_ids.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ls1028_ids.c
@@ -11,6 +11,7 @@
 #include <asm/arch-fsl-layerscape/fsl_portals.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 struct icid_id_table icid_tbl[] = {
 	SET_USB_ICID(1, "snps,dwc3", FSL_USB1_STREAM_ID),
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ls1028a_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/ls1028a_serdes.c
index 1079dd8b95fb..0785c3999a21 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ls1028a_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ls1028a_serdes.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <asm/arch/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct serdes_config {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ls1043a_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/ls1043a_serdes.c
index 8a9ef8fef937..f3c5341d1aa7 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ls1043a_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ls1043a_serdes.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/immap_lsch2.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct serdes_config {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ls1046a_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/ls1046a_serdes.c
index 0c1c40d04b39..0a5bd79ed109 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ls1046a_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ls1046a_serdes.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/immap_lsch2.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct serdes_config {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ls1088a_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/ls1088a_serdes.c
index fb7680fdc5f4..4fdbb7960697 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ls1088a_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ls1088a_serdes.c
@@ -4,9 +4,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
+#include <stdbool.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/soc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct serdes_config {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ls2080a_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/ls2080a_serdes.c
index b21da530dcfc..fea83f0cce13 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ls2080a_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ls2080a_serdes.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <asm/arch/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct serdes_config {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/lx2160a_serdes.c b/arch/arm/cpu/armv8/fsl-layerscape/lx2160a_serdes.c
index 67c8f6651466..6b2b0b4d79a5 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/lx2160a_serdes.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/lx2160a_serdes.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <asm/arch/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 struct serdes_config {
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/mp.c b/arch/arm/cpu/armv8/fsl-layerscape/mp.c
index f032f49279a1..7e75bc1380ff 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/mp.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/mp.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <image.h>
 #include <log.h>
@@ -18,6 +19,7 @@
 #include <linux/delay.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "cpu.h"
 #include <asm/arch-fsl-layerscape/soc.h>
 #include <efi_loader.h>
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/ppa.c b/arch/arm/cpu/armv8/fsl-layerscape/ppa.c
index 4aaeda367bf2..3b5298b708b2 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/ppa.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/ppa.c
@@ -3,6 +3,7 @@
  * Copyright 2016 NXP Semiconductor, Inc.
  */
 #include <common.h>
+#include <compiler.h>
 #include <log.h>
 #include <malloc.h>
 #include <config.h>
@@ -26,6 +27,7 @@
 #endif
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SYS_LS_PPA_FW_IN_NAND
 #include <nand.h>
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
index 85ae0c49df54..d1ebce74ac9e 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <env.h>
 #include <fsl_immap.h>
@@ -43,6 +44,7 @@
 #if defined(CONFIG_TFABOOT) || defined(CONFIG_GIC_V3_ITS)
 DECLARE_GLOBAL_DATA_PTR;
 #endif
+#include <linux/types.h>
 
 #ifdef CONFIG_GIC_V3_ITS
 int ls_gic_rd_tables_init(void *blob)
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/spl.c b/arch/arm/cpu/armv8/fsl-layerscape/spl.c
index 7c44dc7a95a8..29e28e4b03bd 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/spl.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/spl.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <env.h>
 #include <image.h>
@@ -21,6 +22,7 @@
 #include <asm/arch/ppa.h>
 #include <asm/arch/soc.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv8/fwcall.c b/arch/arm/cpu/armv8/fwcall.c
index 8085a0351f3a..d57680892c9b 100644
--- a/arch/arm/cpu/armv8/fwcall.c
+++ b/arch/arm/cpu/armv8/fwcall.c
@@ -14,6 +14,7 @@
 #include <asm/psci.h>
 #include <asm/ptrace.h>
 #include <asm/system.h>
+#include <asm/types.h>
 
 /*
  * Issue the hypervisor call
diff --git a/arch/arm/cpu/armv8/generic_timer.c b/arch/arm/cpu/armv8/generic_timer.c
index f27a74b9d09b..2f7fbc20e496 100644
--- a/arch/arm/cpu/armv8/generic_timer.c
+++ b/arch/arm/cpu/armv8/generic_timer.c
@@ -11,6 +11,7 @@
 #include <asm/global_data.h>
 #include <asm/system.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/cpu/armv8/hisilicon/pinmux.c b/arch/arm/cpu/armv8/hisilicon/pinmux.c
index 5183e00a44cb..4d90ea1130ff 100644
--- a/arch/arm/cpu/armv8/hisilicon/pinmux.c
+++ b/arch/arm/cpu/armv8/hisilicon/pinmux.c
@@ -10,6 +10,7 @@
 #include <asm/gpio.h>
 #include <asm/io.h>
 #include <asm/arch/pinmux.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 struct hi6220_pinmux0_regs *pmx0 =
diff --git a/arch/arm/cpu/armv8/s32v234/cpu.c b/arch/arm/cpu/armv8/s32v234/cpu.c
index 8912eb725e20..6f0168823a89 100644
--- a/arch/arm/cpu/armv8/s32v234/cpu.c
+++ b/arch/arm/cpu/armv8/s32v234/cpu.c
@@ -13,6 +13,7 @@
 #include <asm/armv8/mmu.h>
 #include <asm/io.h>
 #include <asm/arch/mc_me_regs.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include "cpu.h"
 
diff --git a/arch/arm/cpu/armv8/s32v234/cpu.h b/arch/arm/cpu/armv8/s32v234/cpu.h
index 11c3a6b435e9..a066661d90a9 100644
--- a/arch/arm/cpu/armv8/s32v234/cpu.h
+++ b/arch/arm/cpu/armv8/s32v234/cpu.h
@@ -3,5 +3,6 @@
  * (C) Copyright 2014-2016, Freescale Semiconductor, Inc.
  */
 
+#include <asm/types.h>
 u32 cpu_mask(void);
 int cpu_numcores(void);
diff --git a/arch/arm/cpu/armv8/s32v234/generic.c b/arch/arm/cpu/armv8/s32v234/generic.c
index 575dbb1f6098..0f43135b2064 100644
--- a/arch/arm/cpu/armv8/s32v234/generic.c
+++ b/arch/arm/cpu/armv8/s32v234/generic.c
@@ -21,6 +21,7 @@
 #include <errno.h>
 #include <asm/u-boot.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 u32 get_cpu_rev(void)
 {
diff --git a/arch/arm/cpu/armv8/sec_firmware.c b/arch/arm/cpu/armv8/sec_firmware.c
index 1b273db4f988..a2a7e52a9755 100644
--- a/arch/arm/cpu/armv8/sec_firmware.c
+++ b/arch/arm/cpu/armv8/sec_firmware.c
@@ -4,11 +4,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <errno.h>
 #include <fdt_support.h>
 #include <image.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/cache.h>
 #include <asm/global_data.h>
@@ -21,6 +23,7 @@
 #include <asm/macro.h>
 #include <asm/armv8/sec_firmware.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 extern void c_runtime_cpu_setup(void);
diff --git a/arch/arm/cpu/armv8/spl_data.c b/arch/arm/cpu/armv8/spl_data.c
index f8f9fe2e0260..864b2ebe7a7c 100644
--- a/arch/arm/cpu/armv8/spl_data.c
+++ b/arch/arm/cpu/armv8/spl_data.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <spl.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 char __data_save_start[0] __section(.__data_save_start);
diff --git a/arch/arm/cpu/pxa/cache.c b/arch/arm/cpu/pxa/cache.c
index a2ec5e28c7dc..97b6b3a0fd65 100644
--- a/arch/arm/cpu/pxa/cache.c
+++ b/arch/arm/cpu/pxa/cache.c
@@ -3,6 +3,7 @@
  * (C) Copyright 2016 Vasily Khoruzhick <anarsoul at gmail.com>
  */
 
+#include <compiler.h>
 #include <cpu_func.h>
 #include <asm/cache.h>
 #include <linux/types.h>
diff --git a/arch/arm/cpu/pxa/cpuinfo.c b/arch/arm/cpu/pxa/cpuinfo.c
index ff56c3a82be1..e54d06210d55 100644
--- a/arch/arm/cpu/pxa/cpuinfo.c
+++ b/arch/arm/cpu/pxa/cpuinfo.c
@@ -12,6 +12,7 @@
 #include <errno.h>
 #include <linux/compiler.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_CPU_PXA25X
 #if ((CONFIG_SYS_INIT_SP_ADDR) != 0xfffff800)
diff --git a/arch/arm/cpu/pxa/pxa2xx.c b/arch/arm/cpu/pxa/pxa2xx.c
index ea91d8aaec2b..f75f32148238 100644
--- a/arch/arm/cpu/pxa/pxa2xx.c
+++ b/arch/arm/cpu/pxa/pxa2xx.c
@@ -18,6 +18,7 @@
 #include <asm/io.h>
 #include <asm/system.h>
 #include <command.h>
+#include <linux/types.h>
 
 /* Flush I/D-cache */
 static void cache_flush(void)
diff --git a/arch/arm/cpu/sa1100/cpu.c b/arch/arm/cpu/sa1100/cpu.c
index 91e100af1b67..f264d1b5601f 100644
--- a/arch/arm/cpu/sa1100/cpu.c
+++ b/arch/arm/cpu/sa1100/cpu.c
@@ -19,6 +19,7 @@
 #include <irq_func.h>
 #include <asm/system.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 static void cache_flush(void);
 
diff --git a/arch/arm/cpu/sa1100/timer.c b/arch/arm/cpu/sa1100/timer.c
index 5d597dd1ab4c..e3227d7c25c6 100644
--- a/arch/arm/cpu/sa1100/timer.c
+++ b/arch/arm/cpu/sa1100/timer.c
@@ -13,6 +13,7 @@
 #include <SA-1100.h>
 #include <time.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 static ulong get_timer_masked (void)
 {
diff --git a/arch/arm/include/asm/arch-am33xx/clk_synthesizer.h b/arch/arm/include/asm/arch-am33xx/clk_synthesizer.h
index 7bcafba6f0b5..6d09b53fb93d 100644
--- a/arch/arm/include/asm/arch-am33xx/clk_synthesizer.h
+++ b/arch/arm/include/asm/arch-am33xx/clk_synthesizer.h
@@ -10,6 +10,7 @@
 #ifndef __CLK_SYNTHESIZER_H
 #define __CLK_SYNTHESIZER_H
 
+#include <asm/types.h>
 #define CLK_SYNTHESIZER_ID_REG		0x0
 #define CLK_SYNTHESIZER_XCSEL		0x05
 #define CLK_SYNTHESIZER_MUX_REG		0x14
diff --git a/arch/arm/include/asm/arch-am33xx/clock.h b/arch/arm/include/asm/arch-am33xx/clock.h
index dc7a9b188d34..a5b14ca45632 100644
--- a/arch/arm/include/asm/arch-am33xx/clock.h
+++ b/arch/arm/include/asm/arch-am33xx/clock.h
@@ -12,6 +12,7 @@
 
 #include <asm/arch/clocks_am33xx.h>
 #include <asm/arch/hardware.h>
+#include <linux/types.h>
 
 #if defined(CONFIG_TI816X) || defined(CONFIG_TI814X)
 #include <asm/arch/clock_ti81xx.h>
diff --git a/arch/arm/include/asm/arch-am33xx/ddr_defs.h b/arch/arm/include/asm/arch-am33xx/ddr_defs.h
index 15a5b641ffa2..4fd111ef7008 100644
--- a/arch/arm/include/asm/arch-am33xx/ddr_defs.h
+++ b/arch/arm/include/asm/arch-am33xx/ddr_defs.h
@@ -12,6 +12,7 @@
 
 #include <asm/arch/hardware.h>
 #include <asm/emif.h>
+#include <asm/types.h>
 
 /* AM335X EMIF Register values */
 #define VTP_CTRL_READY		(0x1 << 5)
diff --git a/arch/arm/include/asm/arch-am33xx/sys_proto.h b/arch/arm/include/asm/arch-am33xx/sys_proto.h
index be17aad29ee6..46fef0da51fe 100644
--- a/arch/arm/include/asm/arch-am33xx/sys_proto.h
+++ b/arch/arm/include/asm/arch-am33xx/sys_proto.h
@@ -11,6 +11,7 @@
 #define _SYS_PROTO_H_
 #include <linux/mtd/omap_gpmc.h>
 #include <asm/arch/cpu.h>
+#include <linux/types.h>
 
 u32 get_cpu_rev(void);
 u32 get_sysboot_value(void);
diff --git a/arch/arm/include/asm/arch-armada100/cpu.h b/arch/arm/include/asm/arch-armada100/cpu.h
index cd5e5051d51d..1565e1018324 100644
--- a/arch/arm/include/asm/arch-armada100/cpu.h
+++ b/arch/arm/include/asm/arch-armada100/cpu.h
@@ -10,6 +10,7 @@
 
 #include <asm/io.h>
 #include <asm/system.h>
+#include <asm/types.h>
 
 /*
  * Main Power Management (MPMU) Registers
diff --git a/arch/arm/include/asm/arch-armada100/spi.h b/arch/arm/include/asm/arch-armada100/spi.h
index 873ba6e91c9d..4a4dcd95f948 100644
--- a/arch/arm/include/asm/arch-armada100/spi.h
+++ b/arch/arm/include/asm/arch-armada100/spi.h
@@ -12,6 +12,7 @@
 #define __ARMADA100_SPI_H_
 
 #include <asm/arch/armada100.h>
+#include <asm/types.h>
 
 #define CAT_BASE_ADDR(x)	ARMD1_SSP ## x ## _BASE
 #define SSP_REG_BASE(x)		CAT_BASE_ADDR(x)
diff --git a/arch/arm/include/asm/arch-armada100/utmi-armada100.h b/arch/arm/include/asm/arch-armada100/utmi-armada100.h
index 28147f42acf7..8511b875ea6e 100644
--- a/arch/arm/include/asm/arch-armada100/utmi-armada100.h
+++ b/arch/arm/include/asm/arch-armada100/utmi-armada100.h
@@ -11,6 +11,7 @@
 #ifndef __UTMI_ARMADA100__
 #define __UTMI_ARMADA100__
 
+#include <asm/types.h>
 #define UTMI_PHY_BASE		0xD4206000
 
 /* utmi_ctrl - bits */
diff --git a/arch/arm/include/asm/arch-armv7/globaltimer.h b/arch/arm/include/asm/arch-armv7/globaltimer.h
index 2d9cf77980cc..a4e8eaa4f967 100644
--- a/arch/arm/include/asm/arch-armv7/globaltimer.h
+++ b/arch/arm/include/asm/arch-armv7/globaltimer.h
@@ -6,6 +6,7 @@
 #ifndef _GLOBALTIMER_H_
 #define _GLOBALTIMER_H_
 
+#include <asm/types.h>
 struct globaltimer {
 	u32 cnt_l; /* 0x00 */
 	u32 cnt_h;
diff --git a/arch/arm/include/asm/arch-armv7/sysctrl.h b/arch/arm/include/asm/arch-armv7/sysctrl.h
index fc72fac8d87f..e7e660362cfc 100644
--- a/arch/arm/include/asm/arch-armv7/sysctrl.h
+++ b/arch/arm/include/asm/arch-armv7/sysctrl.h
@@ -7,6 +7,7 @@
 #define _SYSCTRL_H_
 
 /* System controller (SP810) register definitions */
+#include <asm/types.h>
 #define SP810_TIMER0_ENSEL	(1 << 15)
 #define SP810_TIMER1_ENSEL	(1 << 17)
 #define SP810_TIMER2_ENSEL	(1 << 19)
diff --git a/arch/arm/include/asm/arch-armv7/systimer.h b/arch/arm/include/asm/arch-armv7/systimer.h
index 04c413045816..4b9a29b0b4c2 100644
--- a/arch/arm/include/asm/arch-armv7/systimer.h
+++ b/arch/arm/include/asm/arch-armv7/systimer.h
@@ -7,6 +7,7 @@
 #define _SYSTIMER_H_
 
 /* AMBA timer register base address */
+#include <asm/types.h>
 #define SYSTIMER_BASE		0x10011000
 
 #define SYSHZ_CLOCK		1000000		/* Timers -> 1Mhz */
diff --git a/arch/arm/include/asm/arch-armv7/wdt.h b/arch/arm/include/asm/arch-armv7/wdt.h
index e3fa16ffab58..593ec779490d 100644
--- a/arch/arm/include/asm/arch-armv7/wdt.h
+++ b/arch/arm/include/asm/arch-armv7/wdt.h
@@ -7,6 +7,7 @@
 #define _WDT_H_
 
 /* Watchdog timer (SP805) register base address */
+#include <asm/types.h>
 #define WDT_BASE	0x100E5000
 
 #define WDT_EN		0x2
diff --git a/arch/arm/include/asm/arch-aspeed/scu_ast2500.h b/arch/arm/include/asm/arch-aspeed/scu_ast2500.h
index 8db4901cc9b5..c2a1e122f9b0 100644
--- a/arch/arm/include/asm/arch-aspeed/scu_ast2500.h
+++ b/arch/arm/include/asm/arch-aspeed/scu_ast2500.h
@@ -141,6 +141,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 struct ast2500_clk_priv {
 	struct ast2500_scu *scu;
 };
diff --git a/arch/arm/include/asm/arch-aspeed/sdram_ast2500.h b/arch/arm/include/asm/arch-aspeed/sdram_ast2500.h
index 0bc551fbecf8..e66dff74e6be 100644
--- a/arch/arm/include/asm/arch-aspeed/sdram_ast2500.h
+++ b/arch/arm/include/asm/arch-aspeed/sdram_ast2500.h
@@ -97,6 +97,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 struct ast2500_sdrammc_regs {
 	u32 protection_key;
 	u32 config;
diff --git a/arch/arm/include/asm/arch-aspeed/timer.h b/arch/arm/include/asm/arch-aspeed/timer.h
index ff24e2f86e37..332c0f850b22 100644
--- a/arch/arm/include/asm/arch-aspeed/timer.h
+++ b/arch/arm/include/asm/arch-aspeed/timer.h
@@ -28,6 +28,7 @@
  * it this just one device.
  */
 
+#include <asm/types.h>
 struct ast_timer_counter {
 	u32 status;
 	u32 reload_val;
diff --git a/arch/arm/include/asm/arch-aspeed/wdt.h b/arch/arm/include/asm/arch-aspeed/wdt.h
index fb04d41d3cbf..f71fcaad9696 100644
--- a/arch/arm/include/asm/arch-aspeed/wdt.h
+++ b/arch/arm/include/asm/arch-aspeed/wdt.h
@@ -67,6 +67,7 @@
 	 WDT_RESET_ADC | WDT_RESET_GPIO | WDT_RESET_MISC)
 
 #ifndef __ASSEMBLY__
+#include <linux/types.h>
 struct ast_wdt {
 	u32 counter_status;
 	u32 counter_reload_val;
diff --git a/arch/arm/include/asm/arch-ep93xx/ep93xx.h b/arch/arm/include/asm/arch-ep93xx/ep93xx.h
index 272b64480d1f..4f7561a74fe5 100644
--- a/arch/arm/include/asm/arch-ep93xx/ep93xx.h
+++ b/arch/arm/include/asm/arch-ep93xx/ep93xx.h
@@ -31,6 +31,7 @@
 #define DMA_BASE			(EP93XX_AHB_BASE | DMA_OFFSET)
 
 #ifndef __ASSEMBLY__
+#include <linux/types.h>
 struct dma_channel {
 	uint32_t control;
 	uint32_t interrupt;
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/clock.h b/arch/arm/include/asm/arch-fsl-layerscape/clock.h
index d5616914374a..c72a8dbd61d2 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/clock.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/clock.h
@@ -8,6 +8,7 @@
 #ifndef __ASM_ARCH_FSL_LAYERSCAPE_CLOCK_H_
 #define __ASM_ARCH_FSL_LAYERSCAPE_CLOCK_H_
 
+#include <linux/types.h>
 enum mxc_clock {
 	MXC_ARM_CLK = 0,
 	MXC_BUS_CLK,
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/cpu.h b/arch/arm/include/asm/arch-fsl-layerscape/cpu.h
index 7759acdb8f6b..6ef62fb8eeac 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/cpu.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/cpu.h
@@ -17,6 +17,7 @@
 #define CONFIG_SYS_FSL_IFC_SIZE1	0x10000000
 #define CONFIG_SYS_FSL_IFC_SIZE1_1	0x400000
 #endif
+#include <asm/types.h>
 #define CONFIG_SYS_FSL_DRAM_BASE1	0x80000000
 #define CONFIG_SYS_FSL_DRAM_SIZE1	0x80000000
 #define CONFIG_SYS_FSL_QSPI_BASE2	0x400000000
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/fsl_portals.h b/arch/arm/include/asm/arch-fsl-layerscape/fsl_portals.h
index 1577e935a606..7713a515023c 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/fsl_portals.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/fsl_portals.h
@@ -6,6 +6,7 @@
 #ifndef _FSL_PORTALS_H_
 #define _FSL_PORTALS_H_
 
+#include <asm/types.h>
 struct qportal_info {
 	u16	dicid;	/* DQRR ICID */
 	u16	ficid;	/* frame data ICID */
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/fsl_serdes.h b/arch/arm/include/asm/arch-fsl-layerscape/fsl_serdes.h
index 8f4365175697..86ef17b6283d 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/fsl_serdes.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/fsl_serdes.h
@@ -8,6 +8,7 @@
 #define __FSL_SERDES_H__
 
 #include <config.h>
+#include <asm/types.h>
 
 #ifdef CONFIG_FSL_LSCH3
 enum srds_prtcl {
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/gpio.h b/arch/arm/include/asm/arch-fsl-layerscape/gpio.h
index 7ae5eee8b669..0b959b00fd13 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/gpio.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/gpio.h
@@ -13,6 +13,7 @@
 #ifndef __ASM_ARCH_MX85XX_GPIO_H
 #define __ASM_ARCH_MX85XX_GPIO_H
 
+#include <linux/types.h>
 struct mpc8xxx_gpio_plat {
 	ulong addr;
 	ulong size;
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch2.h b/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch2.h
index c9be0768e34f..7e2e5917d68e 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch2.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch2.h
@@ -9,6 +9,7 @@
 #include <fsl_immap.h>
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 
 #define CONFIG_SYS_IMMR				0x01000000
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h b/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h
index baa9fa8529cd..73d50e08926a 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h
@@ -292,6 +292,7 @@
 #define TP_INIT_PER_CLUSTER     4
 /* This is chassis generation 3 */
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 struct sys_info {
 	unsigned long freq_processor[CONFIG_MAX_CPUS];
 	/* frequency of platform PLL */
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/mp.h b/arch/arm/include/asm/arch-fsl-layerscape/mp.h
index faac8f11286f..ad70074d18d5 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/mp.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/mp.h
@@ -32,6 +32,7 @@
 
 #define id_to_core(x)	((x & 3) | (x >> 6))
 #ifndef __ASSEMBLY__
+#include <linux/types.h>
 extern u64 __real_cntfrq;
 extern void *secondary_boot_addr;
 extern void *secondary_boot_code_start;
diff --git a/arch/arm/include/asm/arch-hi6220/dwmmc.h b/arch/arm/include/asm/arch-hi6220/dwmmc.h
index cf51c178c3f0..ae61e7109f64 100644
--- a/arch/arm/include/asm/arch-hi6220/dwmmc.h
+++ b/arch/arm/include/asm/arch-hi6220/dwmmc.h
@@ -4,4 +4,5 @@
  * Peter Griffin <peter.griffin at linaro.org>
  */
 
+#include <asm/types.h>
 int hi6220_dwmci_add_port(int index, u32 regbase, int bus_width);
diff --git a/arch/arm/include/asm/arch-hi6220/gpio.h b/arch/arm/include/asm/arch-hi6220/gpio.h
index c5ee359a3a17..c02a1fcb9926 100644
--- a/arch/arm/include/asm/arch-hi6220/gpio.h
+++ b/arch/arm/include/asm/arch-hi6220/gpio.h
@@ -7,6 +7,7 @@
 #ifndef _HI6220_GPIO_H_
 #define _HI6220_GPIO_H_
 
+#include <linux/types.h>
 #define HI6220_GPIO_BASE(bank)	(((bank < 4) ? 0xf8011000 : \
 				0xf7020000 - 0x4000) + (0x1000 * bank))
 
diff --git a/arch/arm/include/asm/arch-hi6220/hi6220_regs_alwayson.h b/arch/arm/include/asm/arch-hi6220/hi6220_regs_alwayson.h
index 4b9a0d44acb1..d719169c77f1 100644
--- a/arch/arm/include/asm/arch-hi6220/hi6220_regs_alwayson.h
+++ b/arch/arm/include/asm/arch-hi6220/hi6220_regs_alwayson.h
@@ -7,6 +7,7 @@
 #ifndef __HI6220_ALWAYSON_H__
 #define __HI6220_ALWAYSON_H__
 
+#include <asm/types.h>
 #define ALWAYSON_CTRL_BASE			0xF7800000
 
 struct alwayson_sc_regs {
diff --git a/arch/arm/include/asm/arch-hi6220/pinmux.h b/arch/arm/include/asm/arch-hi6220/pinmux.h
index b4a9957e8073..2673c1acc99d 100644
--- a/arch/arm/include/asm/arch-hi6220/pinmux.h
+++ b/arch/arm/include/asm/arch-hi6220/pinmux.h
@@ -57,6 +57,7 @@
 /* maybe more registers, but highest used is 123 */
 #define REG_NUM 123
 
+#include <linux/types.h>
 struct hi6220_pinmux0_regs {
 	uint32_t	iomg[REG_NUM];
 };
diff --git a/arch/arm/include/asm/arch-imx/cpu.h b/arch/arm/include/asm/arch-imx/cpu.h
index 75ff991248c7..4e95c8a7a12d 100644
--- a/arch/arm/include/asm/arch-imx/cpu.h
+++ b/arch/arm/include/asm/arch-imx/cpu.h
@@ -3,6 +3,7 @@
  * (C) Copyright 2014 Freescale Semiconductor, Inc.
  */
 
+#include <linux/types.h>
 #define MXC_CPU_MX23		0x23
 #define MXC_CPU_MX25		0x25
 #define MXC_CPU_MX27		0x27
diff --git a/arch/arm/include/asm/arch-imx8/clock.h b/arch/arm/include/asm/arch-imx8/clock.h
index bea157171fbc..ce2d65a69d6a 100644
--- a/arch/arm/include/asm/arch-imx8/clock.h
+++ b/arch/arm/include/asm/arch-imx8/clock.h
@@ -7,6 +7,7 @@
 #define __ASM_ARCH_IMX8_CLOCK_H__
 
 /* Mainly for compatible to imx common code. */
+#include <asm/types.h>
 enum mxc_clock {
 	MXC_ARM_CLK = 0,
 	MXC_AHB_CLK,
diff --git a/arch/arm/include/asm/arch-imx8/gpio.h b/arch/arm/include/asm/arch-imx8/gpio.h
index 24cfde3c2972..3ba211b0a610 100644
--- a/arch/arm/include/asm/arch-imx8/gpio.h
+++ b/arch/arm/include/asm/arch-imx8/gpio.h
@@ -18,4 +18,5 @@ struct gpio_regs {
 /* IMX8 the GPIO index is from 0 not 1 */
 #define IMX_GPIO_NR(port, index)		(((port) * 32) + ((index) & 31))
 
+#include <asm/types.h>
 #endif /* __ASM_ARCH_IMX8_GPIO_H */
diff --git a/arch/arm/include/asm/arch-imx8/image.h b/arch/arm/include/asm/arch-imx8/image.h
index c1e5700859dc..1c6e05b49eb1 100644
--- a/arch/arm/include/asm/arch-imx8/image.h
+++ b/arch/arm/include/asm/arch-imx8/image.h
@@ -6,6 +6,7 @@
 #ifndef __CONTAINER_HEADER_H_
 #define __CONTAINER_HEADER_H_
 
+#include <compiler.h>
 #include <linux/sizes.h>
 #include <linux/types.h>
 
diff --git a/arch/arm/include/asm/arch-imx8/iomux.h b/arch/arm/include/asm/arch-imx8/iomux.h
index 3acef1ea6bad..c7cab5770d3c 100644
--- a/arch/arm/include/asm/arch-imx8/iomux.h
+++ b/arch/arm/include/asm/arch-imx8/iomux.h
@@ -7,6 +7,7 @@
 #define __ASM_ARCH_IMX8_IOMUX_H__
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-imx8/sci/rpc.h b/arch/arm/include/asm/arch-imx8/sci/rpc.h
index 9f55904f4422..04dd413aa049 100644
--- a/arch/arm/include/asm/arch-imx8/sci/rpc.h
+++ b/arch/arm/include/asm/arch-imx8/sci/rpc.h
@@ -10,6 +10,7 @@
 /* Note: Check SCFW API Released DOC before you want to modify something */
 /* Defines */
 
+#include <asm/types.h>
 #define SCFW_API_VERSION_MAJOR  1U
 #define SCFW_API_VERSION_MINOR  15U
 
diff --git a/arch/arm/include/asm/arch-imx8/sci/sci.h b/arch/arm/include/asm/arch-imx8/sci/sci.h
index 1c29209b3990..ff7be2184f36 100644
--- a/arch/arm/include/asm/arch-imx8/sci/sci.h
+++ b/arch/arm/include/asm/arch-imx8/sci/sci.h
@@ -16,6 +16,7 @@
 #include <asm/arch/sci/rpc.h>
 #include <dt-bindings/soc/imx_rsrc.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 static inline int sc_err_to_linux(sc_err_t err)
 {
diff --git a/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h b/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h
index 3629eb68d7ab..4fb7c01f9c49 100644
--- a/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h
+++ b/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h
@@ -7,6 +7,7 @@
 #define SC_MISC_API_H
 
 /* Defines for sc_misc_boot_status_t */
+#include <asm/types.h>
 #define SC_MISC_BOOT_STATUS_SUCCESS	0U	/* Success */
 #define SC_MISC_BOOT_STATUS_SECURITY	1U	/* Security violation */
 
diff --git a/arch/arm/include/asm/arch-imx8/sci/svc/pm/api.h b/arch/arm/include/asm/arch-imx8/sci/svc/pm/api.h
index 9008b85c6f67..ca80fd3927f5 100644
--- a/arch/arm/include/asm/arch-imx8/sci/svc/pm/api.h
+++ b/arch/arm/include/asm/arch-imx8/sci/svc/pm/api.h
@@ -7,6 +7,7 @@
 #define SC_PM_API_H
 
 /* Defines for sc_pm_power_mode_t */
+#include <asm/types.h>
 #define SC_PM_PW_MODE_OFF	0U /* Power off */
 #define SC_PM_PW_MODE_STBY	1U /* Power in standby */
 #define SC_PM_PW_MODE_LP	2U /* Power in low-power */
diff --git a/arch/arm/include/asm/arch-imx8/sci/svc/rm/api.h b/arch/arm/include/asm/arch-imx8/sci/svc/rm/api.h
index ed303881e736..4783682e4de2 100644
--- a/arch/arm/include/asm/arch-imx8/sci/svc/rm/api.h
+++ b/arch/arm/include/asm/arch-imx8/sci/svc/rm/api.h
@@ -7,6 +7,7 @@
 #define SC_RM_API_H
 
 #include <asm/arch/sci/types.h>
+#include <asm/types.h>
 
 /* Defines for type widths */
 #define SC_RM_PARTITION_W   5U      /* Width of sc_rm_pt_t */
diff --git a/arch/arm/include/asm/arch-imx8/sci/svc/seco/api.h b/arch/arm/include/asm/arch-imx8/sci/svc/seco/api.h
index 3ed05842d992..524f857bfb77 100644
--- a/arch/arm/include/asm/arch-imx8/sci/svc/seco/api.h
+++ b/arch/arm/include/asm/arch-imx8/sci/svc/seco/api.h
@@ -9,6 +9,7 @@
 /* Includes */
 
 #include <asm/arch/sci/types.h>
+#include <asm/types.h>
 
 /* Defines */
 #define SC_SECO_AUTH_CONTAINER          0U   /* Authenticate container */
diff --git a/arch/arm/include/asm/arch-imx8m/clock.h b/arch/arm/include/asm/arch-imx8m/clock.h
index 848a93ec3f20..2bb81f2bddf6 100644
--- a/arch/arm/include/asm/arch-imx8m/clock.h
+++ b/arch/arm/include/asm/arch-imx8m/clock.h
@@ -7,6 +7,7 @@
 
 #include <stdbool.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_IMX8MQ
 #include <asm/arch/clock_imx8mq.h>
diff --git a/arch/arm/include/asm/arch-imx8m/clock_imx8mm.h b/arch/arm/include/asm/arch-imx8m/clock_imx8mm.h
index 63b14b9ca58f..c2f530bf090f 100644
--- a/arch/arm/include/asm/arch-imx8m/clock_imx8mm.h
+++ b/arch/arm/include/asm/arch-imx8m/clock_imx8mm.h
@@ -9,6 +9,7 @@
 #define _ASM_ARCH_IMX8MM_CLOCK_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-imx8m/ddr.h b/arch/arm/include/asm/arch-imx8m/ddr.h
index 0f1e832c038a..790e9d9dfb21 100644
--- a/arch/arm/include/asm/arch-imx8m/ddr.h
+++ b/arch/arm/include/asm/arch-imx8m/ddr.h
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/types.h>
 #include <asm/arch/ddr.h>
+#include <linux/types.h>
 
 #define DDRC_DDR_SS_GPR0		0x3d000000
 #define DDRC_IPS_BASE_ADDR_0		0x3f400000
diff --git a/arch/arm/include/asm/arch-imxrt/gpio.h b/arch/arm/include/asm/arch-imxrt/gpio.h
index da31a7438aa1..1752bd23fe85 100644
--- a/arch/arm/include/asm/arch-imxrt/gpio.h
+++ b/arch/arm/include/asm/arch-imxrt/gpio.h
@@ -16,4 +16,5 @@ struct gpio_regs {
 };
 #endif
 
+#include <asm/types.h>
 #endif /* __ASM_ARCH_GPIO_H__ */
diff --git a/arch/arm/include/asm/arch-lpc32xx/dma.h b/arch/arm/include/asm/arch-lpc32xx/dma.h
index d69e3c4664de..f480f7c7cd8c 100644
--- a/arch/arm/include/asm/arch-lpc32xx/dma.h
+++ b/arch/arm/include/asm/arch-lpc32xx/dma.h
@@ -12,6 +12,7 @@
 #define _LPC32XX_DMA_H
 
 /*
+#include <asm/types.h>
  * DMA linked list structure used with a channel's LLI register;
  * refer to UM10326, "LPC32x0 and LPC32x0/01 User manual" - Rev. 3
  * tables 84, 85, 86 & 87 for details.
diff --git a/arch/arm/include/asm/arch-lpc32xx/gpio.h b/arch/arm/include/asm/arch-lpc32xx/gpio.h
index 93e7a8875215..332ae6f88506 100644
--- a/arch/arm/include/asm/arch-lpc32xx/gpio.h
+++ b/arch/arm/include/asm/arch-lpc32xx/gpio.h
@@ -10,6 +10,7 @@
  * GPIO Register map for LPC32xx
  */
 
+#include <asm/types.h>
 struct gpio_regs {
 	u32 p3_inp_state;
 	u32 p3_outp_set;
diff --git a/arch/arm/include/asm/arch-lpc32xx/i2c.h b/arch/arm/include/asm/arch-lpc32xx/i2c.h
index f39b14001b67..3f9ef1096d33 100644
--- a/arch/arm/include/asm/arch-lpc32xx/i2c.h
+++ b/arch/arm/include/asm/arch-lpc32xx/i2c.h
@@ -2,6 +2,7 @@
 #define _LPC32XX_I2C_H
 
 #include <asm/types.h>
+#include <linux/types.h>
 
 /* i2c register set */
 struct lpc32xx_i2c_base {
diff --git a/arch/arm/include/asm/arch-lpc32xx/mux.h b/arch/arm/include/asm/arch-lpc32xx/mux.h
index d661e8236f32..aff08caae196 100644
--- a/arch/arm/include/asm/arch-lpc32xx/mux.h
+++ b/arch/arm/include/asm/arch-lpc32xx/mux.h
@@ -10,6 +10,7 @@
  * MUX register map for LPC32xx
  */
 
+#include <asm/types.h>
 struct mux_regs {
 	u32 reserved1[10];
 	u32 p2_mux_set;
diff --git a/arch/arm/include/asm/arch-ls102xa/clock.h b/arch/arm/include/asm/arch-ls102xa/clock.h
index 01978c08f5e3..ee19feb02712 100644
--- a/arch/arm/include/asm/arch-ls102xa/clock.h
+++ b/arch/arm/include/asm/arch-ls102xa/clock.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_LS102XA_CLOCK_H_
 #define __ASM_ARCH_LS102XA_CLOCK_H_
 
+#include <linux/types.h>
 enum mxc_clock {
 	MXC_ARM_CLK = 0,
 	MXC_UART_CLK,
diff --git a/arch/arm/include/asm/arch-ls102xa/fsl_serdes.h b/arch/arm/include/asm/arch-ls102xa/fsl_serdes.h
index d99a6f318f8b..b418a906f9cf 100644
--- a/arch/arm/include/asm/arch-ls102xa/fsl_serdes.h
+++ b/arch/arm/include/asm/arch-ls102xa/fsl_serdes.h
@@ -7,6 +7,7 @@
 #define __FSL_SERDES_H
 
 #include <config.h>
+#include <asm/types.h>
 
 enum srds_prtcl {
 	/*
diff --git a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
index f2ba182346ef..fcdf8380b329 100644
--- a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
+++ b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
@@ -6,6 +6,7 @@
 #ifndef __ASM_ARCH_LS102XA_IMMAP_H_
 #define __ASM_ARCH_LS102XA_IMMAP_H_
 #include <fsl_immap.h>
+#include <linux/types.h>
 
 #define SVR_MAJ(svr)		(((svr) >>  4) & 0xf)
 #define SVR_MIN(svr)		(((svr) >>  0) & 0xf)
diff --git a/arch/arm/include/asm/arch-ls102xa/ls102xa_stream_id.h b/arch/arm/include/asm/arch-ls102xa/ls102xa_stream_id.h
index 93b0a26091e7..06df4c590434 100644
--- a/arch/arm/include/asm/arch-ls102xa/ls102xa_stream_id.h
+++ b/arch/arm/include/asm/arch-ls102xa/ls102xa_stream_id.h
@@ -7,6 +7,7 @@
 #define __FSL_LS102XA_STREAM_ID_H_
 
 #include <fsl_sec.h>
+#include <linux/types.h>
 
 #define SET_LIODN_ENTRY_1(name, idA, off, compatoff) \
 	{ .compat = name, \
diff --git a/arch/arm/include/asm/arch-mediatek/reset.h b/arch/arm/include/asm/arch-mediatek/reset.h
index 4ba0bad94ee6..bcf69b476a0c 100644
--- a/arch/arm/include/asm/arch-mediatek/reset.h
+++ b/arch/arm/include/asm/arch-mediatek/reset.h
@@ -8,6 +8,8 @@
 
 struct udevice;
 
+#include <asm/types.h>
+
 int mediatek_reset_bind(struct udevice *pdev, u32 regofs, u32 num_regs);
 
 #endif	/* __MEDIATEK_RESET_H */
diff --git a/arch/arm/include/asm/arch-meson/clock-gx.h b/arch/arm/include/asm/arch-meson/clock-gx.h
index 13a2e7688fc5..2a9bd52102a9 100644
--- a/arch/arm/include/asm/arch-meson/clock-gx.h
+++ b/arch/arm/include/asm/arch-meson/clock-gx.h
@@ -13,6 +13,7 @@
  * Those offsets must be multiplied by 4 before adding them to the base address
  * to get the right value
  */
+#include <linux/types.h>
 #define SCR				0x2C /* 0x0b offset in data sheet */
 #define TIMEOUT_VALUE			0x3c /* 0x0f offset in data sheet */
 
diff --git a/arch/arm/include/asm/arch-meson/sm.h b/arch/arm/include/asm/arch-meson/sm.h
index f3ae46a6d6b5..53a93347c187 100644
--- a/arch/arm/include/asm/arch-meson/sm.h
+++ b/arch/arm/include/asm/arch-meson/sm.h
@@ -6,6 +6,7 @@
 #ifndef __MESON_SM_H__
 #define __MESON_SM_H__
 
+#include <linux/types.h>
 ssize_t meson_sm_read_efuse(uintptr_t offset, void *buffer, size_t size);
 
 #define SM_SERIAL_SIZE	12
diff --git a/arch/arm/include/asm/arch-mvebu/spi.h b/arch/arm/include/asm/arch-mvebu/spi.h
index 58b6c32c4d81..7c0d55bfe6cf 100644
--- a/arch/arm/include/asm/arch-mvebu/spi.h
+++ b/arch/arm/include/asm/arch-mvebu/spi.h
@@ -11,6 +11,7 @@
 #define __KW_SPI_H__
 
 /* SPI Registers on kirkwood SOC */
+#include <asm/types.h>
 struct kwspi_registers {
 	u32 ctrl;	/* 0x10600 */
 	u32 cfg;	/* 0x10604 */
diff --git a/arch/arm/include/asm/arch-mx27/gpio.h b/arch/arm/include/asm/arch-mx27/gpio.h
index 9f342eb7f71a..fcc57071ce92 100644
--- a/arch/arm/include/asm/arch-mx27/gpio.h
+++ b/arch/arm/include/asm/arch-mx27/gpio.h
@@ -9,6 +9,7 @@
 #define __ASM_ARCH_MX27_GPIO_H
 
 /* GPIO registers */
+#include <asm/types.h>
 struct gpio_regs {
 	u32 gpio_dir; /* DDIR */
 	u32 ocr1;
diff --git a/arch/arm/include/asm/arch-mx27/imx-regs.h b/arch/arm/include/asm/arch-mx27/imx-regs.h
index d39f6b03508f..dd2773a88782 100644
--- a/arch/arm/include/asm/arch-mx27/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx27/imx-regs.h
@@ -11,6 +11,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 extern void imx_gpio_mode (int gpio_mode);
 
 #ifdef CONFIG_MXC_UART
diff --git a/arch/arm/include/asm/arch-mx27/regs-rtc.h b/arch/arm/include/asm/arch-mx27/regs-rtc.h
index 8434f4c1cb1a..ee7a8c29008b 100644
--- a/arch/arm/include/asm/arch-mx27/regs-rtc.h
+++ b/arch/arm/include/asm/arch-mx27/regs-rtc.h
@@ -9,6 +9,7 @@
 #define __MX27_REGS_RTC_H__
 
 #ifndef	__ASSEMBLY__
+#include <asm/types.h>
 struct rtc_regs {
 	u32 hourmin;
 	u32 seconds;
diff --git a/arch/arm/include/asm/arch-mx31/clock.h b/arch/arm/include/asm/arch-mx31/clock.h
index e99e115f79e7..5b084dc359be 100644
--- a/arch/arm/include/asm/arch-mx31/clock.h
+++ b/arch/arm/include/asm/arch-mx31/clock.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_CLOCK_H
 #define __ASM_ARCH_CLOCK_H
 
+#include <asm/types.h>
 #define MXC_HCLK	CONFIG_MX31_HCLK_FREQ
 
 #define MXC_CLK32	CONFIG_MX31_CLK32
diff --git a/arch/arm/include/asm/arch-mx31/sys_proto.h b/arch/arm/include/asm/arch-mx31/sys_proto.h
index a530afcbc91a..72ce987ab202 100644
--- a/arch/arm/include/asm/arch-mx31/sys_proto.h
+++ b/arch/arm/include/asm/arch-mx31/sys_proto.h
@@ -8,6 +8,7 @@
 #define _MX31_SYS_PROTO_H_
 
 #include <asm/mach-imx/sys_proto.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 
 struct mxc_weimcs {
diff --git a/arch/arm/include/asm/arch-mx35/clock.h b/arch/arm/include/asm/arch-mx35/clock.h
index cb0b53a69f4d..e2b0f661cc7e 100644
--- a/arch/arm/include/asm/arch-mx35/clock.h
+++ b/arch/arm/include/asm/arch-mx35/clock.h
@@ -19,6 +19,7 @@
 #define MXC_CLK32	32768
 #endif
 
+#include <asm/types.h>
 enum mxc_clock {
 	MXC_ARM_CLK,
 	MXC_AHB_CLK,
diff --git a/arch/arm/include/asm/arch-mx35/sys_proto.h b/arch/arm/include/asm/arch-mx35/sys_proto.h
index 6e8b84128bc4..20b18d058cb3 100644
--- a/arch/arm/include/asm/arch-mx35/sys_proto.h
+++ b/arch/arm/include/asm/arch-mx35/sys_proto.h
@@ -8,6 +8,7 @@
 #define _MX35_SYS_PROTO_H_
 
 #include <asm/mach-imx/sys_proto.h>
+#include <asm/types.h>
 
 void mx3_setup_sdram_bank(u32 start_address, u32 ddr2_config, u32 row,
 			  u32 col, u32 dsize, u32 refresh);
diff --git a/arch/arm/include/asm/arch-mx5/clock.h b/arch/arm/include/asm/arch-mx5/clock.h
index 86aeb5d56103..ad6b56c9baba 100644
--- a/arch/arm/include/asm/arch-mx5/clock.h
+++ b/arch/arm/include/asm/arch-mx5/clock.h
@@ -20,6 +20,7 @@
 #endif
 
 #include <stdbool.h>
+#include <asm/types.h>
 enum mxc_clock {
 	MXC_ARM_CLK = 0,
 	MXC_AHB_CLK,
diff --git a/arch/arm/include/asm/arch-mx5/crm_regs.h b/arch/arm/include/asm/arch-mx5/crm_regs.h
index 9d54ab7fb07a..913318e314f8 100644
--- a/arch/arm/include/asm/arch-mx5/crm_regs.h
+++ b/arch/arm/include/asm/arch-mx5/crm_regs.h
@@ -6,6 +6,7 @@
 #ifndef __ARCH_ARM_MACH_MX51_CRM_REGS_H__
 #define __ARCH_ARM_MACH_MX51_CRM_REGS_H__
 
+#include <asm/types.h>
 #define MXC_CCM_BASE	CCM_BASE_ADDR
 
 /* DPLL register mapping structure */
diff --git a/arch/arm/include/asm/arch-mx6/crm_regs.h b/arch/arm/include/asm/arch-mx6/crm_regs.h
index 4174f244afa1..3bbd049dd916 100644
--- a/arch/arm/include/asm/arch-mx6/crm_regs.h
+++ b/arch/arm/include/asm/arch-mx6/crm_regs.h
@@ -18,6 +18,7 @@
 #define PMU_MISC2		0x020C8170
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 struct mxc_ccm_reg {
 	u32 ccr;	/* 0x0000 */
 	u32 ccdr;
diff --git a/arch/arm/include/asm/arch-mx6/mx6-ddr.h b/arch/arm/include/asm/arch-mx6/mx6-ddr.h
index dbc97b25df80..069dd7ce8fcd 100644
--- a/arch/arm/include/asm/arch-mx6/mx6-ddr.h
+++ b/arch/arm/include/asm/arch-mx6/mx6-ddr.h
@@ -23,6 +23,7 @@
 #else
 #error "Please select cpu"
 #endif	/* CONFIG_MX6SL */
+#include <asm/types.h>
 #endif	/* CONFIG_MX6UL */
 #endif	/* CONFIG_MX6SX */
 #endif	/* CONFIG_MX6DL or CONFIG_MX6S */
diff --git a/arch/arm/include/asm/arch-mx6/mxc_hdmi.h b/arch/arm/include/asm/arch-mx6/mxc_hdmi.h
index 71ad0e307c48..5009609022ef 100644
--- a/arch/arm/include/asm/arch-mx6/mxc_hdmi.h
+++ b/arch/arm/include/asm/arch-mx6/mxc_hdmi.h
@@ -14,6 +14,7 @@ void imx_setup_hdmi(void);
 /*
  * Hdmi controller registers
  */
+#include <asm/types.h>
 struct hdmi_regs {
 	/*Identification Registers */
 	u8 design_id;			/* 0x000 */
diff --git a/arch/arm/include/asm/arch-mx6/sys_proto.h b/arch/arm/include/asm/arch-mx6/sys_proto.h
index 1e5fa1a75ebc..eddce1aeba9f 100644
--- a/arch/arm/include/asm/arch-mx6/sys_proto.h
+++ b/arch/arm/include/asm/arch-mx6/sys_proto.h
@@ -9,6 +9,7 @@
 
 #include <asm/mach-imx/sys_proto.h>
 #include <asm/arch/iomux.h>
+#include <asm/types.h>
 
 #define USBPHY_PWD		0x00000000
 
diff --git a/arch/arm/include/asm/arch-mx7/clock.h b/arch/arm/include/asm/arch-mx7/clock.h
index 48c7c3367a53..cf0b0ce9654a 100644
--- a/arch/arm/include/asm/arch-mx7/clock.h
+++ b/arch/arm/include/asm/arch-mx7/clock.h
@@ -10,6 +10,7 @@
 #define _ASM_ARCH_CLOCK_H
 
 #include <asm/arch/crm_regs.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SYS_MX7_HCLK
 #define MXC_HCLK	CONFIG_SYS_MX7_HCLK
diff --git a/arch/arm/include/asm/arch-mx7/clock_slice.h b/arch/arm/include/asm/arch-mx7/clock_slice.h
index 1eac3bec5cb1..d7910a8d96cb 100644
--- a/arch/arm/include/asm/arch-mx7/clock_slice.h
+++ b/arch/arm/include/asm/arch-mx7/clock_slice.h
@@ -10,6 +10,7 @@
 #define _ASM_ARCH_CLOCK_SLICE_H
 
 #include <stdbool.h>
+#include <asm/types.h>
 enum root_pre_div {
 	CLK_ROOT_PRE_DIV1 = 0,
 	CLK_ROOT_PRE_DIV2,
diff --git a/arch/arm/include/asm/arch-mx7/crm_regs.h b/arch/arm/include/asm/arch-mx7/crm_regs.h
index f3515fab0310..7c72f294e63d 100644
--- a/arch/arm/include/asm/arch-mx7/crm_regs.h
+++ b/arch/arm/include/asm/arch-mx7/crm_regs.h
@@ -20,6 +20,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <linux/types.h>
 struct mxc_ccm_ccgr {
 	uint32_t ccgr;
 	uint32_t ccgr_set;
diff --git a/arch/arm/include/asm/arch-mx7/imx-regs.h b/arch/arm/include/asm/arch-mx7/imx-regs.h
index f37419c07f18..f3b0a3f9be5b 100644
--- a/arch/arm/include/asm/arch-mx7/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx7/imx-regs.h
@@ -226,6 +226,7 @@
 #include <asm/mach-imx/regs-lcdif.h>
 #include <asm/types.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 extern void imx_get_mac_from_fuse(int dev_id, unsigned char *mac);
 
diff --git a/arch/arm/include/asm/arch-mx7/mx7-ddr.h b/arch/arm/include/asm/arch-mx7/mx7-ddr.h
index bea5dd8ec5ef..8a4d21ed8196 100644
--- a/arch/arm/include/asm/arch-mx7/mx7-ddr.h
+++ b/arch/arm/include/asm/arch-mx7/mx7-ddr.h
@@ -11,6 +11,7 @@
 #define __ASM_ARCH_MX7_DDR_H__
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-mx7ulp/clock.h b/arch/arm/include/asm/arch-mx7ulp/clock.h
index 92d4463dff5f..5025fa39cfdf 100644
--- a/arch/arm/include/asm/arch-mx7ulp/clock.h
+++ b/arch/arm/include/asm/arch-mx7ulp/clock.h
@@ -8,6 +8,7 @@
 
 #include <asm/arch/pcc.h>
 #include <asm/arch/scg.h>
+#include <asm/types.h>
 
 /* Mainly for compatible to imx common code. */
 enum mxc_clock {
diff --git a/arch/arm/include/asm/arch-mx7ulp/gpio.h b/arch/arm/include/asm/arch-mx7ulp/gpio.h
index 7c625609bacf..b20b8ba26b99 100644
--- a/arch/arm/include/asm/arch-mx7ulp/gpio.h
+++ b/arch/arm/include/asm/arch-mx7ulp/gpio.h
@@ -6,6 +6,7 @@
 #ifndef __ASM_ARCH_MX7ULP_GPIO_H
 #define __ASM_ARCH_MX7ULP_GPIO_H
 
+#include <asm/types.h>
 struct gpio_regs {
 	u32 gpio_pdor;
 	u32 gpio_psor;
diff --git a/arch/arm/include/asm/arch-mx7ulp/pcc.h b/arch/arm/include/asm/arch-mx7ulp/pcc.h
index 25d10fb7d1a9..c1e12009a2e0 100644
--- a/arch/arm/include/asm/arch-mx7ulp/pcc.h
+++ b/arch/arm/include/asm/arch-mx7ulp/pcc.h
@@ -8,6 +8,7 @@
 
 #include <stdbool.h>
 #include <asm/arch/scg.h>
+#include <asm/types.h>
 
 /* PCC2 */
 
diff --git a/arch/arm/include/asm/arch-mx7ulp/scg.h b/arch/arm/include/asm/arch-mx7ulp/scg.h
index b4d92d1ed44f..0be3ae1dc273 100644
--- a/arch/arm/include/asm/arch-mx7ulp/scg.h
+++ b/arch/arm/include/asm/arch-mx7ulp/scg.h
@@ -8,6 +8,7 @@
 
 #include <stdbool.h>
 #include <stdio.h>
+#include <asm/types.h>
 
 #ifdef CONFIG_CLK_DEBUG
 #define clk_debug(fmt, args...)	printf(fmt, ##args)
diff --git a/arch/arm/include/asm/arch-mxs/clock.h b/arch/arm/include/asm/arch-mxs/clock.h
index ee56d10fec2b..bfaa72ce3f2e 100644
--- a/arch/arm/include/asm/arch-mxs/clock.h
+++ b/arch/arm/include/asm/arch-mxs/clock.h
@@ -9,6 +9,7 @@
 #ifndef __CLOCK_H__
 #define __CLOCK_H__
 
+#include <linux/types.h>
 enum mxc_clock {
 	MXC_ARM_CLK = 0,
 	MXC_AHB_CLK,
diff --git a/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx23.h b/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx23.h
index 50fdc9cd0326..96976ed0a4af 100644
--- a/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx23.h
+++ b/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx23.h
@@ -15,6 +15,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_clkctrl_regs {
 	mxs_reg_32(hw_clkctrl_pll0ctrl0)	/* 0x00 */
 	uint32_t	hw_clkctrl_pll0ctrl1;	/* 0x10 */
diff --git a/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx28.h b/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx28.h
index caef9e4b1fc7..494757fe622c 100644
--- a/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx28.h
+++ b/arch/arm/include/asm/arch-mxs/regs-clkctrl-mx28.h
@@ -15,6 +15,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_clkctrl_regs {
 	mxs_reg_32(hw_clkctrl_pll0ctrl0)	/* 0x00 */
 	uint32_t	hw_clkctrl_pll0ctrl1;	/* 0x10 */
diff --git a/arch/arm/include/asm/arch-mxs/regs-digctl.h b/arch/arm/include/asm/arch-mxs/regs-digctl.h
index 219f58ba75fd..63735af5ec35 100644
--- a/arch/arm/include/asm/arch-mxs/regs-digctl.h
+++ b/arch/arm/include/asm/arch-mxs/regs-digctl.h
@@ -11,6 +11,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_digctl_regs {
 	mxs_reg_32(hw_digctl_ctrl)				/* 0x000 */
 	mxs_reg_32(hw_digctl_status)				/* 0x010 */
diff --git a/arch/arm/include/asm/arch-mxs/regs-pinctrl.h b/arch/arm/include/asm/arch-mxs/regs-pinctrl.h
index 134d436ee920..d06b3b839145 100644
--- a/arch/arm/include/asm/arch-mxs/regs-pinctrl.h
+++ b/arch/arm/include/asm/arch-mxs/regs-pinctrl.h
@@ -15,6 +15,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_pinctrl_regs {
 	mxs_reg_32(hw_pinctrl_ctrl)		/* 0x0 */
 
diff --git a/arch/arm/include/asm/arch-mxs/regs-power-mx23.h b/arch/arm/include/asm/arch-mxs/regs-power-mx23.h
index a0dc78102301..9cfb7223b99b 100644
--- a/arch/arm/include/asm/arch-mxs/regs-power-mx23.h
+++ b/arch/arm/include/asm/arch-mxs/regs-power-mx23.h
@@ -11,6 +11,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_power_regs {
 	mxs_reg_32(hw_power_ctrl)
 	mxs_reg_32(hw_power_5vctrl)
diff --git a/arch/arm/include/asm/arch-mxs/regs-power-mx28.h b/arch/arm/include/asm/arch-mxs/regs-power-mx28.h
index 39250c506d02..7ceb576e6f54 100644
--- a/arch/arm/include/asm/arch-mxs/regs-power-mx28.h
+++ b/arch/arm/include/asm/arch-mxs/regs-power-mx28.h
@@ -11,6 +11,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_power_regs {
 	mxs_reg_32(hw_power_ctrl)
 	mxs_reg_32(hw_power_5vctrl)
diff --git a/arch/arm/include/asm/arch-mxs/regs-ssp.h b/arch/arm/include/asm/arch-mxs/regs-ssp.h
index eeb7e7f44c06..947a3624c2ff 100644
--- a/arch/arm/include/asm/arch-mxs/regs-ssp.h
+++ b/arch/arm/include/asm/arch-mxs/regs-ssp.h
@@ -86,6 +86,7 @@ static inline int mxs_ssp_clock_by_bus(unsigned int clock)
 #endif
 }
 
+#include <linux/types.h>
 static inline struct mxs_ssp_regs *mxs_ssp_regs_by_bus(unsigned int port)
 {
 	switch (port) {
diff --git a/arch/arm/include/asm/arch-mxs/regs-usb.h b/arch/arm/include/asm/arch-mxs/regs-usb.h
index 8d5168dd8ea9..d21c26428b07 100644
--- a/arch/arm/include/asm/arch-mxs/regs-usb.h
+++ b/arch/arm/include/asm/arch-mxs/regs-usb.h
@@ -9,6 +9,7 @@
 #ifndef __REGS_USB_H__
 #define __REGS_USB_H__
 
+#include <linux/types.h>
 struct mxs_usb_regs {
 	uint32_t		hw_usbctrl_id;			/* 0x000 */
 	uint32_t		hw_usbctrl_hwgeneral;		/* 0x004 */
diff --git a/arch/arm/include/asm/arch-mxs/sys_proto.h b/arch/arm/include/asm/arch-mxs/sys_proto.h
index 85374e2b87c6..5ade99aa5dcc 100644
--- a/arch/arm/include/asm/arch-mxs/sys_proto.h
+++ b/arch/arm/include/asm/arch-mxs/sys_proto.h
@@ -11,6 +11,7 @@
 
 #include <asm/mach-imx/sys_proto.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 int mxsmmc_initialize(struct bd_info *bis, int id, int (*wp)(int),
 		      int (*cd)(int));
diff --git a/arch/arm/include/asm/arch-omap3/dma.h b/arch/arm/include/asm/arch-omap3/dma.h
index d26e490d2db2..2df9d0758700 100644
--- a/arch/arm/include/asm/arch-omap3/dma.h
+++ b/arch/arm/include/asm/arch-omap3/dma.h
@@ -7,6 +7,7 @@
  */
 
 /* Functions */
+#include <linux/types.h>
 void omap3_dma_init(void);
 int omap3_dma_conf_transfer(uint32_t chan, uint32_t *src, uint32_t *dst,
 		uint32_t sze);
diff --git a/arch/arm/include/asm/arch-omap3/dss.h b/arch/arm/include/asm/arch-omap3/dss.h
index 8bf6b4895fcb..c16156b749ea 100644
--- a/arch/arm/include/asm/arch-omap3/dss.h
+++ b/arch/arm/include/asm/arch-omap3/dss.h
@@ -29,6 +29,7 @@
 #define DSS_H
 
 /* DSS Base Registers */
+#include <asm/types.h>
 #define OMAP3_DSS_BASE		0x48050000
 #define OMAP3_DISPC_BASE	0x48050400
 #define OMAP3_VENC_BASE		0x48050C00
diff --git a/arch/arm/include/asm/arch-omap3/mem.h b/arch/arm/include/asm/arch-omap3/mem.h
index 7adc134a7524..a09b5a2ca799 100644
--- a/arch/arm/include/asm/arch-omap3/mem.h
+++ b/arch/arm/include/asm/arch-omap3/mem.h
@@ -12,6 +12,7 @@
 #define CS1		0x1 /* mirror CS1 regs appear offset 0x30 from CS0 */
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 enum {
 	STACKED = 0,
 	IP_DDR = 1,
diff --git a/arch/arm/include/asm/arch-omap3/musb.h b/arch/arm/include/asm/arch-omap3/musb.h
index cb3f5d89daa7..58a5616ee08b 100644
--- a/arch/arm/include/asm/arch-omap3/musb.h
+++ b/arch/arm/include/asm/arch-omap3/musb.h
@@ -6,6 +6,7 @@
 
 #ifndef __ASM_ARCH_OMAP3_MUSB_H
 #define __ASM_ARCH_OMAP3_MUSB_H
+#include <asm/types.h>
 void am35x_musb_reset(struct udevice *dev);
 void am35x_musb_phy_power(struct udevice *dev, u8 on);
 void am35x_musb_clear_irq(struct udevice *dev);
diff --git a/arch/arm/include/asm/arch-omap3/sys_proto.h b/arch/arm/include/asm/arch-omap3/sys_proto.h
index 32ac0335158d..7fc9b09337a0 100644
--- a/arch/arm/include/asm/arch-omap3/sys_proto.h
+++ b/arch/arm/include/asm/arch-omap3/sys_proto.h
@@ -8,6 +8,7 @@
 #define _SYS_PROTO_H_
 #include <linux/mtd/omap_gpmc.h>
 #include <asm/omap_common.h>
+#include <linux/types.h>
 
 typedef struct {
 	u32 mtype;
diff --git a/arch/arm/include/asm/arch-omap4/clock.h b/arch/arm/include/asm/arch-omap4/clock.h
index 0a626fe647a2..d2e14ff89628 100644
--- a/arch/arm/include/asm/arch-omap4/clock.h
+++ b/arch/arm/include/asm/arch-omap4/clock.h
@@ -8,6 +8,7 @@
 #ifndef _CLOCKS_OMAP4_H_
 #define _CLOCKS_OMAP4_H_
 #include <asm/omap_common.h>
+#include <asm/types.h>
 
 /*
  * Assuming a maximum of 1.5 GHz ARM speed and a minimum of 2 cycles per
diff --git a/arch/arm/include/asm/arch-omap4/sys_proto.h b/arch/arm/include/asm/arch-omap4/sys_proto.h
index b2a688765850..51bc1b829489 100644
--- a/arch/arm/include/asm/arch-omap4/sys_proto.h
+++ b/arch/arm/include/asm/arch-omap4/sys_proto.h
@@ -11,6 +11,7 @@
 #include <asm/arch/clock.h>
 #include <asm/io.h>
 #include <asm/omap_common.h>
+#include <asm/types.h>
 #include <linux/mtd/omap_gpmc.h>
 #include <asm/arch/mux_omap4.h>
 #include <asm/ti-common/sys_proto.h>
diff --git a/arch/arm/include/asm/arch-omap5/dra7xx_iodelay.h b/arch/arm/include/asm/arch-omap5/dra7xx_iodelay.h
index ea2f113f98de..bdfc026dc050 100644
--- a/arch/arm/include/asm/arch-omap5/dra7xx_iodelay.h
+++ b/arch/arm/include/asm/arch-omap5/dra7xx_iodelay.h
@@ -10,6 +10,7 @@
 #define _DRA7_IODELAY_H_
 
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 
 /* CONFIG_REG_0 */
 #define CFG_REG_0_OFFSET		0xC
diff --git a/arch/arm/include/asm/arch-omap5/sys_proto.h b/arch/arm/include/asm/arch-omap5/sys_proto.h
index 80b0c93b5eb3..069515e253da 100644
--- a/arch/arm/include/asm/arch-omap5/sys_proto.h
+++ b/arch/arm/include/asm/arch-omap5/sys_proto.h
@@ -14,6 +14,7 @@
 #include <linux/mtd/omap_gpmc.h>
 #include <asm/arch/clock.h>
 #include <asm/ti-common/sys_proto.h>
+#include <linux/types.h>
 
 /*
  * Structure for Iodelay configuration registers.
diff --git a/arch/arm/include/asm/arch-pxa/pxa.h b/arch/arm/include/asm/arch-pxa/pxa.h
index 428a848e1573..7fd0ebad5c0c 100644
--- a/arch/arm/include/asm/arch-pxa/pxa.h
+++ b/arch/arm/include/asm/arch-pxa/pxa.h
@@ -8,6 +8,7 @@
 #ifndef	__PXA_H__
 #define	__PXA_H__
 
+#include <linux/types.h>
 #define PXA255_A0	0x00000106
 #define PXA250_C0	0x00000105
 #define PXA250_B2	0x00000104
diff --git a/arch/arm/include/asm/arch-pxa/regs-mmc.h b/arch/arm/include/asm/arch-pxa/regs-mmc.h
index 6d9a736d9c06..7ed111cf99a7 100644
--- a/arch/arm/include/asm/arch-pxa/regs-mmc.h
+++ b/arch/arm/include/asm/arch-pxa/regs-mmc.h
@@ -6,6 +6,7 @@
 #ifndef __REGS_MMC_H__
 #define __REGS_MMC_H__
 
+#include <linux/types.h>
 #define MMC0_BASE	0x41100000
 #define MMC1_BASE	0x42000000
 
diff --git a/arch/arm/include/asm/arch-pxa/regs-uart.h b/arch/arm/include/asm/arch-pxa/regs-uart.h
index bdd0a4757b53..fc7690ee4f3c 100644
--- a/arch/arm/include/asm/arch-pxa/regs-uart.h
+++ b/arch/arm/include/asm/arch-pxa/regs-uart.h
@@ -6,6 +6,7 @@
 #ifndef	__REGS_UART_H__
 #define	__REGS_UART_H__
 
+#include <linux/types.h>
 #define	FFUART_BASE		0x40100000
 #define	BTUART_BASE		0x40200000
 #define	STUART_BASE		0x40700000
diff --git a/arch/arm/include/asm/arch-pxa/regs-usb.h b/arch/arm/include/asm/arch-pxa/regs-usb.h
index e46887c9ed45..60e564580871 100644
--- a/arch/arm/include/asm/arch-pxa/regs-usb.h
+++ b/arch/arm/include/asm/arch-pxa/regs-usb.h
@@ -8,6 +8,7 @@
 #ifndef __REGS_USB_H__
 #define __REGS_USB_H__
 
+#include <linux/types.h>
 struct pxa25x_udc_regs {
 	/* UDC Control Register */
 	uint32_t	udccr; /* 0x000 */
diff --git a/arch/arm/include/asm/arch-rk3308/cru_rk3308.h b/arch/arm/include/asm/arch-rk3308/cru_rk3308.h
index 08af4f547dd3..d8feb8bff4e6 100644
--- a/arch/arm/include/asm/arch-rk3308/cru_rk3308.h
+++ b/arch/arm/include/asm/arch-rk3308/cru_rk3308.h
@@ -6,6 +6,7 @@
 #define _ASM_ARCH_CRU_RK3308_H
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 #define MHz		1000000
 #define OSC_HZ		(24 * MHz)
 
diff --git a/arch/arm/include/asm/arch-rockchip/bootrom.h b/arch/arm/include/asm/arch-rockchip/bootrom.h
index 0da78f30b619..a1937c251f1f 100644
--- a/arch/arm/include/asm/arch-rockchip/bootrom.h
+++ b/arch/arm/include/asm/arch-rockchip/bootrom.h
@@ -11,6 +11,7 @@
  * Saved Stack pointer address.
  * Access might be needed in some special cases.
  */
+#include <asm/types.h>
 extern u32 SAVE_SP_ADDR;
 
 /**
diff --git a/arch/arm/include/asm/arch-rockchip/clock.h b/arch/arm/include/asm/arch-rockchip/clock.h
index 2b47b7a9d266..f05d88bc0a6d 100644
--- a/arch/arm/include/asm/arch-rockchip/clock.h
+++ b/arch/arm/include/asm/arch-rockchip/clock.h
@@ -6,7 +6,9 @@
 #ifndef _ASM_ARCH_CLOCK_H
 #define _ASM_ARCH_CLOCK_H
 
+#include <compiler.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 struct udevice;
 
diff --git a/arch/arm/include/asm/arch-rockchip/cpu_rk3288.h b/arch/arm/include/asm/arch-rockchip/cpu_rk3288.h
index 3536f4449468..0180290cad40 100644
--- a/arch/arm/include/asm/arch-rockchip/cpu_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/cpu_rk3288.h
@@ -8,6 +8,7 @@
 
 #include <stdbool.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #define ROCKCHIP_CPU_MASK       0xffff0000
 #define ROCKCHIP_CPU_RK3288     0x32880000
diff --git a/arch/arm/include/asm/arch-rockchip/cru_px30.h b/arch/arm/include/asm/arch-rockchip/cru_px30.h
index c76d5751ef53..3c58db1d2630 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_px30.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_px30.h
@@ -6,6 +6,7 @@
 #define _ASM_ARCH_CRU_PX30_H
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 #define MHz		1000000
 #define KHz		1000
 #define OSC_HZ		(24 * MHz)
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rk3036.h b/arch/arm/include/asm/arch-rockchip/cru_rk3036.h
index c580bf12034e..ac62de5b9f14 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rk3036.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rk3036.h
@@ -6,6 +6,7 @@
 #define _ASM_ARCH_CRU_RK3036_H
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 #define OSC_HZ		(24 * 1000 * 1000)
 
 #define APLL_HZ		(600 * 1000000)
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rk3128.h b/arch/arm/include/asm/arch-rockchip/cru_rk3128.h
index e7dec3c7c9e4..63c697b98397 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rk3128.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rk3128.h
@@ -7,6 +7,7 @@
 #define _ASM_ARCH_CRU_RK3128_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #endif
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rk3188.h b/arch/arm/include/asm/arch-rockchip/cru_rk3188.h
index 97268b8777ef..62120dc25897 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rk3188.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rk3188.h
@@ -7,6 +7,7 @@
 
 #include <stdbool.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #define OSC_HZ		(24 * 1000 * 1000)
 
 #define APLL_HZ		(1608 * 1000000)
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rk322x.h b/arch/arm/include/asm/arch-rockchip/cru_rk322x.h
index ca4d727a6a70..706fca369b0e 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rk322x.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rk322x.h
@@ -6,6 +6,7 @@
 #define _ASM_ARCH_CRU_RK322X_H
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 #define MHz		1000000
 #define OSC_HZ		(24 * MHz)
 
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rk3288.h b/arch/arm/include/asm/arch-rockchip/cru_rk3288.h
index 7affb2f06448..82ba61abcbe4 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rk3288.h
@@ -9,6 +9,7 @@
 #define _ASM_ARCH_CRU_RK3288_H
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 #define OSC_HZ		(24 * 1000 * 1000)
 
 #define APLL_HZ		(1800 * 1000000)
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rk3328.h b/arch/arm/include/asm/arch-rockchip/cru_rk3328.h
index 2cd984ad0098..5a95a0173c58 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rk3328.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rk3328.h
@@ -7,6 +7,7 @@
 #define __ASM_ARCH_CRU_RK3328_H_
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 struct rk3328_clk_priv {
 	struct rk3328_cru *cru;
 	ulong rate;
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rk3399.h b/arch/arm/include/asm/arch-rockchip/cru_rk3399.h
index fdeb3735770a..97e44815621e 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rk3399.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rk3399.h
@@ -7,6 +7,7 @@
 #define __ASM_ARCH_CRU_RK3399_H_
 
 /* Private data for the clock driver - used by rockchip_get_cru() */
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3399_clk_priv {
 	struct rockchip_cru *cru;
diff --git a/arch/arm/include/asm/arch-rockchip/cru_rv1108.h b/arch/arm/include/asm/arch-rockchip/cru_rv1108.h
index 4499b453b684..3a69195ce519 100644
--- a/arch/arm/include/asm/arch-rockchip/cru_rv1108.h
+++ b/arch/arm/include/asm/arch-rockchip/cru_rv1108.h
@@ -9,6 +9,7 @@
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #endif
 
 #define OSC_HZ		(24 * 1000 * 1000)
diff --git a/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h b/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h
index c60655fcae01..be3d9d4d36bf 100644
--- a/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h
+++ b/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h
@@ -7,6 +7,7 @@
 #define _ASM_ARCH_DDR_RK3188_H
 
 #include <asm/arch-rockchip/ddr_rk3288.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 /*
diff --git a/arch/arm/include/asm/arch-rockchip/ddr_rk3288.h b/arch/arm/include/asm/arch-rockchip/ddr_rk3288.h
index ea3b6f48d907..312bdbc6de58 100644
--- a/arch/arm/include/asm/arch-rockchip/ddr_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/ddr_rk3288.h
@@ -6,6 +6,7 @@
 #ifndef _ASM_ARCH_DDR_RK3288_H
 #define _ASM_ARCH_DDR_RK3288_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3288_ddr_pctl {
 	u32 scfg;
diff --git a/arch/arm/include/asm/arch-rockchip/ddr_rk3368.h b/arch/arm/include/asm/arch-rockchip/ddr_rk3368.h
index a03d3318e020..7ee787c526bf 100644
--- a/arch/arm/include/asm/arch-rockchip/ddr_rk3368.h
+++ b/arch/arm/include/asm/arch-rockchip/ddr_rk3368.h
@@ -7,6 +7,7 @@
 #define __ASM_ARCH_DDR_RK3368_H__
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #endif
diff --git a/arch/arm/include/asm/arch-rockchip/edp_rk3288.h b/arch/arm/include/asm/arch-rockchip/edp_rk3288.h
index 97383fce1904..d51094f1bfc4 100644
--- a/arch/arm/include/asm/arch-rockchip/edp_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/edp_rk3288.h
@@ -7,6 +7,7 @@
 #ifndef _ASM_ARCH_EDP_H
 #define _ASM_ARCH_EDP_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3288_edp {
 	u8	res0[0x10];
diff --git a/arch/arm/include/asm/arch-rockchip/f_rockusb.h b/arch/arm/include/asm/arch-rockchip/f_rockusb.h
index 9772321023b3..46bcbf7fce44 100644
--- a/arch/arm/include/asm/arch-rockchip/f_rockusb.h
+++ b/arch/arm/include/asm/arch-rockchip/f_rockusb.h
@@ -8,6 +8,7 @@
 #ifndef _F_ROCKUSB_H_
 #define _F_ROCKUSB_H_
 #include <blk.h>
+#include <linux/types.h>
 
 #define ROCKUSB_VERSION		"0.1"
 
diff --git a/arch/arm/include/asm/arch-rockchip/gpio.h b/arch/arm/include/asm/arch-rockchip/gpio.h
index 0ec09d40b4ea..810b292329c4 100644
--- a/arch/arm/include/asm/arch-rockchip/gpio.h
+++ b/arch/arm/include/asm/arch-rockchip/gpio.h
@@ -6,6 +6,7 @@
 #ifndef _ASM_ARCH_GPIO_H
 #define _ASM_ARCH_GPIO_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rockchip_gpio_regs {
 	u32 swport_dr;
diff --git a/arch/arm/include/asm/arch-rockchip/grf_rk3188.h b/arch/arm/include/asm/arch-rockchip/grf_rk3188.h
index 8e80749a76e8..6899f652408d 100644
--- a/arch/arm/include/asm/arch-rockchip/grf_rk3188.h
+++ b/arch/arm/include/asm/arch-rockchip/grf_rk3188.h
@@ -6,6 +6,7 @@
 #ifndef _ASM_ARCH_GRF_RK3188_H
 #define _ASM_ARCH_GRF_RK3188_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3188_grf_gpio_lh {
 	u32 l;
diff --git a/arch/arm/include/asm/arch-rockchip/grf_rk3288.h b/arch/arm/include/asm/arch-rockchip/grf_rk3288.h
index 894d3a40b091..f30e3c05dc08 100644
--- a/arch/arm/include/asm/arch-rockchip/grf_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/grf_rk3288.h
@@ -7,6 +7,7 @@
 #ifndef _ASM_ARCH_GRF_RK3288_H
 #define _ASM_ARCH_GRF_RK3288_H
 
+#include <asm/types.h>
 struct rk3288_grf_gpio_lh {
 	u32 l;
 	u32 h;
diff --git a/arch/arm/include/asm/arch-rockchip/grf_rk3328.h b/arch/arm/include/asm/arch-rockchip/grf_rk3328.h
index 663a3fa52e31..312f6f4193c3 100644
--- a/arch/arm/include/asm/arch-rockchip/grf_rk3328.h
+++ b/arch/arm/include/asm/arch-rockchip/grf_rk3328.h
@@ -6,6 +6,7 @@
 #ifndef __SOC_ROCKCHIP_RK3328_GRF_H__
 #define __SOC_ROCKCHIP_RK3328_GRF_H__
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3328_grf_regs {
 	u32 gpio0a_iomux;
diff --git a/arch/arm/include/asm/arch-rockchip/grf_rk3368.h b/arch/arm/include/asm/arch-rockchip/grf_rk3368.h
index 8e4b3ec481ca..62fd8792cfab 100644
--- a/arch/arm/include/asm/arch-rockchip/grf_rk3368.h
+++ b/arch/arm/include/asm/arch-rockchip/grf_rk3368.h
@@ -7,6 +7,7 @@
 #define _ASM_ARCH_GRF_RK3368_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #endif
diff --git a/arch/arm/include/asm/arch-rockchip/grf_rk3399.h b/arch/arm/include/asm/arch-rockchip/grf_rk3399.h
index 0a7249560f26..7d7708576edc 100644
--- a/arch/arm/include/asm/arch-rockchip/grf_rk3399.h
+++ b/arch/arm/include/asm/arch-rockchip/grf_rk3399.h
@@ -6,6 +6,7 @@
 #ifndef __SOC_ROCKCHIP_RK3399_GRF_H__
 #define __SOC_ROCKCHIP_RK3399_GRF_H__
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3399_grf_regs {
 	u32 reserved[0x800];
diff --git a/arch/arm/include/asm/arch-rockchip/grf_rv1108.h b/arch/arm/include/asm/arch-rockchip/grf_rv1108.h
index aefbe9b56e19..470e91c2970d 100644
--- a/arch/arm/include/asm/arch-rockchip/grf_rv1108.h
+++ b/arch/arm/include/asm/arch-rockchip/grf_rv1108.h
@@ -5,6 +5,7 @@
 #ifndef _ASM_ARCH_GRF_RV1108_H
 #define _ASM_ARCH_GRF_RV1108_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rv1108_grf {
 	u32 reserved[4];
diff --git a/arch/arm/include/asm/arch-rockchip/i2c.h b/arch/arm/include/asm/arch-rockchip/i2c.h
index b0e1936f608b..4da432372148 100644
--- a/arch/arm/include/asm/arch-rockchip/i2c.h
+++ b/arch/arm/include/asm/arch-rockchip/i2c.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_I2C_H
 #define __ASM_ARCH_I2C_H
 
+#include <asm/types.h>
 struct i2c_regs {
 	u32 con;
 	u32 clkdiv;
diff --git a/arch/arm/include/asm/arch-rockchip/misc.h b/arch/arm/include/asm/arch-rockchip/misc.h
index b6b03c934ed9..8689e3dadacd 100644
--- a/arch/arm/include/asm/arch-rockchip/misc.h
+++ b/arch/arm/include/asm/arch-rockchip/misc.h
@@ -6,6 +6,7 @@
  *      Rohan Garg <rohan.garg at collabora.com>
  */
 
+#include <asm/types.h>
 int rockchip_cpuid_from_efuse(const u32 cpuid_offset,
 			      const u32 cpuid_length,
 			      u8 *cpuid);
diff --git a/arch/arm/include/asm/arch-rockchip/pmu_rk3188.h b/arch/arm/include/asm/arch-rockchip/pmu_rk3188.h
index 6227dc0ed5ab..24de34758fbd 100644
--- a/arch/arm/include/asm/arch-rockchip/pmu_rk3188.h
+++ b/arch/arm/include/asm/arch-rockchip/pmu_rk3188.h
@@ -6,6 +6,7 @@
 #ifndef _ASM_ARCH_PMU_RK3188_H
 #define _ASM_ARCH_PMU_RK3188_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3188_pmu {
 	u32 wakeup_cfg[2];
diff --git a/arch/arm/include/asm/arch-rockchip/pmu_rk3288.h b/arch/arm/include/asm/arch-rockchip/pmu_rk3288.h
index 1b50cd5326e2..7574eb975c31 100644
--- a/arch/arm/include/asm/arch-rockchip/pmu_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/pmu_rk3288.h
@@ -8,6 +8,7 @@
 #ifndef _ASM_ARCH_PMU_RK3288_H
 #define _ASM_ARCH_PMU_RK3288_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3288_pmu {
 	u32 wakeup_cfg[2];
diff --git a/arch/arm/include/asm/arch-rockchip/pmu_rk3399.h b/arch/arm/include/asm/arch-rockchip/pmu_rk3399.h
index 350559d5054c..0408683765ce 100644
--- a/arch/arm/include/asm/arch-rockchip/pmu_rk3399.h
+++ b/arch/arm/include/asm/arch-rockchip/pmu_rk3399.h
@@ -7,6 +7,7 @@
 #ifndef __SOC_ROCKCHIP_RK3399_PMU_H__
 #define __SOC_ROCKCHIP_RK3399_PMU_H__
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3399_pmu_regs {
 	u32 pmu_wakeup_cfg[5];
diff --git a/arch/arm/include/asm/arch-rockchip/sdram.h b/arch/arm/include/asm/arch-rockchip/sdram.h
index cf2a7b7d105f..e02fea9f4fa1 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram.h
@@ -6,6 +6,7 @@
 #ifndef _ASM_ARCH_SDRAM_H
 #define _ASM_ARCH_SDRAM_H
 
+#include <linux/types.h>
 enum {
 	DDR4 = 0,
 	DDR3 = 0x3,
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_common.h b/arch/arm/include/asm/arch-rockchip/sdram_common.h
index 5efa6e9445d5..6d8c93092f3a 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_common.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_common.h
@@ -10,6 +10,7 @@
 #define MHZ		(1000 * 1000)
 #endif
 
+#include <asm/types.h>
 #define PATTERN		(0x5aa5f00f)
 
 #define MIN(a, b)	(((a) > (b)) ? (b) : (a))
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_msch.h b/arch/arm/include/asm/arch-rockchip/sdram_msch.h
index cfb3d9cc8698..9ae4d2715922 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_msch.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_msch.h
@@ -6,6 +6,7 @@
 #ifndef _ASM_ARCH_SDRAM_MSCH_H
 #define _ASM_ARCH_SDRAM_MSCH_H
 
+#include <asm/types.h>
 union noc_ddrtiminga0 {
 	u32 d32;
 	struct {
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_pctl_px30.h b/arch/arm/include/asm/arch-rockchip/sdram_pctl_px30.h
index 3a3657789f6b..e48a6b87f737 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_pctl_px30.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_pctl_px30.h
@@ -8,6 +8,8 @@
 #include <asm/arch-rockchip/sdram_common.h>
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_phy_px30.h b/arch/arm/include/asm/arch-rockchip/sdram_phy_px30.h
index a033a1853882..548f076ef76d 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_phy_px30.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_phy_px30.h
@@ -9,6 +9,8 @@
 #include <asm/arch-rockchip/sdram_phy_ron_rtt_px30.h>
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_px30.h b/arch/arm/include/asm/arch-rockchip/sdram_px30.h
index 2ab8e97ae1df..2a4353976f1a 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_px30.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_px30.h
@@ -10,6 +10,7 @@
 #include <asm/arch-rockchip/sdram_pctl_px30.h>
 #include <asm/arch-rockchip/sdram_phy_px30.h>
 #include <asm/arch-rockchip/sdram_phy_ron_rtt_px30.h>
+#include <asm/types.h>
 
 #define SR_IDLE				93
 #define PD_IDLE				13
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_rk3036.h b/arch/arm/include/asm/arch-rockchip/sdram_rk3036.h
index 7f89d7f92116..85a9f54e6d61 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_rk3036.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_rk3036.h
@@ -6,6 +6,7 @@
 #define _ASM_ARCH_SDRAM_RK3036_H
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 struct rk3036_ddr_pctl {
 	u32 scfg;
 	u32 sctl;
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_rk322x.h b/arch/arm/include/asm/arch-rockchip/sdram_rk322x.h
index 2aaf66c1ab0c..60c68f751a5b 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_rk322x.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_rk322x.h
@@ -6,6 +6,7 @@
 #define _ASM_ARCH_SDRAM_RK322X_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #endif
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_rk3288.h b/arch/arm/include/asm/arch-rockchip/sdram_rk3288.h
index 9dede8068439..75a465c3c0da 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_rk3288.h
@@ -8,6 +8,7 @@
 #ifndef _ASM_ARCH_RK3288_SDRAM_H__
 #define _ASM_ARCH_RK3288_SDRAM_H__
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3288_sdram_channel {
 	/*
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_rk3328.h b/arch/arm/include/asm/arch-rockchip/sdram_rk3328.h
index 10923505d6e1..cfb07c646af1 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_rk3328.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_rk3328.h
@@ -10,6 +10,7 @@
 #include <asm/arch-rockchip/sdram_pctl_px30.h>
 #include <asm/arch-rockchip/sdram_phy_px30.h>
 #include <asm/arch-rockchip/sdram_phy_ron_rtt_px30.h>
+#include <asm/types.h>
 
 #define SR_IDLE		93
 #define PD_IDLE		13
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_rk3399.h b/arch/arm/include/asm/arch-rockchip/sdram_rk3399.h
index c76372ee826a..6123cd2b9a56 100644
--- a/arch/arm/include/asm/arch-rockchip/sdram_rk3399.h
+++ b/arch/arm/include/asm/arch-rockchip/sdram_rk3399.h
@@ -8,6 +8,7 @@
 #include <asm/arch-rockchip/sdram_common.h>
 #include <asm/arch-rockchip/sdram_msch.h>
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-rockchip/timer.h b/arch/arm/include/asm/arch-rockchip/timer.h
index 77b542204476..befe0b66b403 100644
--- a/arch/arm/include/asm/arch-rockchip/timer.h
+++ b/arch/arm/include/asm/arch-rockchip/timer.h
@@ -6,6 +6,7 @@
 #ifndef __ASM_ARCH_TIMER_H
 #define __ASM_ARCH_TIMER_H
 
+#include <asm/types.h>
 struct rk_timer {
 	u32 timer_load_count0;
 	u32 timer_load_count1;
diff --git a/arch/arm/include/asm/arch-rockchip/vop_rk3288.h b/arch/arm/include/asm/arch-rockchip/vop_rk3288.h
index c1aab4219e4c..5e6fa4f32d7f 100644
--- a/arch/arm/include/asm/arch-rockchip/vop_rk3288.h
+++ b/arch/arm/include/asm/arch-rockchip/vop_rk3288.h
@@ -7,6 +7,7 @@
 #ifndef _ASM_ARCH_VOP_RK3288_H
 #define _ASM_ARCH_VOP_RK3288_H
 
+#include <asm/types.h>
 #include <linux/kernel.h>
 struct rk3288_vop {
 	u32 reg_cfg_done;
diff --git a/arch/arm/include/asm/arch-s32v234/lpddr2.h b/arch/arm/include/asm/arch-s32v234/lpddr2.h
index c5efee5b75d0..6b215738ec23 100644
--- a/arch/arm/include/asm/arch-s32v234/lpddr2.h
+++ b/arch/arm/include/asm/arch-s32v234/lpddr2.h
@@ -7,6 +7,7 @@
 #define __ARCH_ARM_MACH_S32V234_LPDDR2_H__
 
 /* definitions for LPDDR2 PAD values */
+#include <linux/types.h>
 #define LPDDR2_CLK0_PAD	\
 	(SIUL2_MSCR_DDR_SEL_LPDDR2 | SIUL2_MSCR_DDR_INPUT_DIFF_DDR | SIUL2_MSCR_DDR_ODT_120ohm |\
 	 SIUL2_MSCR_DSE_48ohm | SIUL2_MSCR_PUS_100K_UP | SIUL2_MSCR_CRPOINT_TRIM_1 |			\
diff --git a/arch/arm/include/asm/arch-spear/gpio.h b/arch/arm/include/asm/arch-spear/gpio.h
index 4c8c40b1c997..69a1fd0d9e21 100644
--- a/arch/arm/include/asm/arch-spear/gpio.h
+++ b/arch/arm/include/asm/arch-spear/gpio.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_SPEAR_GPIO_H
 #define __ASM_ARCH_SPEAR_GPIO_H
 
+#include <asm/types.h>
 enum gpio_direction {
 	GPIO_DIRECTION_IN,
 	GPIO_DIRECTION_OUT,
diff --git a/arch/arm/include/asm/arch-spear/spr_defs.h b/arch/arm/include/asm/arch-spear/spr_defs.h
index d09e7eb63a47..1a37dd72efa6 100644
--- a/arch/arm/include/asm/arch-spear/spr_defs.h
+++ b/arch/arm/include/asm/arch-spear/spr_defs.h
@@ -7,6 +7,7 @@
 #ifndef __SPR_DEFS_H__
 #define __SPR_DEFS_H__
 
+#include <linux/types.h>
 extern int spear_board_init(ulong);
 extern void setfreq(unsigned int, unsigned int);
 extern unsigned int setfreq_sz;
diff --git a/arch/arm/include/asm/arch-spear/spr_emi.h b/arch/arm/include/asm/arch-spear/spr_emi.h
index 7b1cf35d3ab8..1667929de29a 100644
--- a/arch/arm/include/asm/arch-spear/spr_emi.h
+++ b/arch/arm/include/asm/arch-spear/spr_emi.h
@@ -34,4 +34,5 @@ struct emi_regs {
 
 #endif
 
+#include <asm/types.h>
 #endif
diff --git a/arch/arm/include/asm/arch-spear/spr_gpt.h b/arch/arm/include/asm/arch-spear/spr_gpt.h
index dced0a17a62b..cb63e314b57c 100644
--- a/arch/arm/include/asm/arch-spear/spr_gpt.h
+++ b/arch/arm/include/asm/arch-spear/spr_gpt.h
@@ -7,6 +7,7 @@
 #ifndef _SPR_GPT_H
 #define _SPR_GPT_H
 
+#include <asm/types.h>
 struct gpt_regs {
 	u8 reserved[0x80];
 	u32 control;
diff --git a/arch/arm/include/asm/arch-spear/spr_misc.h b/arch/arm/include/asm/arch-spear/spr_misc.h
index 017111935193..a177d69c7fb7 100644
--- a/arch/arm/include/asm/arch-spear/spr_misc.h
+++ b/arch/arm/include/asm/arch-spear/spr_misc.h
@@ -7,6 +7,7 @@
 #ifndef _SPR_MISC_H
 #define _SPR_MISC_H
 
+#include <linux/types.h>
 struct misc_regs {
 	u32 auto_cfg_reg;	/* 0x0 */
 	u32 armdbg_ctr_reg;	/* 0x4 */
diff --git a/arch/arm/include/asm/arch-spear/spr_ssp.h b/arch/arm/include/asm/arch-spear/spr_ssp.h
index 088d34b405ea..48344f6b9f26 100644
--- a/arch/arm/include/asm/arch-spear/spr_ssp.h
+++ b/arch/arm/include/asm/arch-spear/spr_ssp.h
@@ -6,6 +6,7 @@
 #ifndef _SPR_SSP_H
 #define _SPR_SSP_H
 
+#include <asm/types.h>
 struct ssp_regs {
 	u32 sspcr0;
 	u32 sspcr1;
diff --git a/arch/arm/include/asm/arch-spear/spr_syscntl.h b/arch/arm/include/asm/arch-spear/spr_syscntl.h
index 6a83d87d1340..d4b259e3fae9 100644
--- a/arch/arm/include/asm/arch-spear/spr_syscntl.h
+++ b/arch/arm/include/asm/arch-spear/spr_syscntl.h
@@ -7,6 +7,7 @@
 #ifndef __SYSCTRL_H
 #define __SYSCTRL_H
 
+#include <asm/types.h>
 struct syscntl_regs {
 	u32 scctrl;
 	u32 scsysstat;
diff --git a/arch/arm/include/asm/arch-stm32/gpio.h b/arch/arm/include/asm/arch-stm32/gpio.h
index 570e80a6ba80..1b4f560ba701 100644
--- a/arch/arm/include/asm/arch-stm32/gpio.h
+++ b/arch/arm/include/asm/arch-stm32/gpio.h
@@ -7,6 +7,7 @@
 #ifndef _GPIO_H_
 #define _GPIO_H_
 
+#include <asm/types.h>
 #define STM32_GPIOS_PER_BANK		16
 
 enum stm32_gpio_port {
diff --git a/arch/arm/include/asm/arch-stm32f4/stm32.h b/arch/arm/include/asm/arch-stm32f4/stm32.h
index 2094bd732123..74ee7130fb8c 100644
--- a/arch/arm/include/asm/arch-stm32f4/stm32.h
+++ b/arch/arm/include/asm/arch-stm32f4/stm32.h
@@ -11,6 +11,7 @@
 #define _MACH_STM32_H_
 
 #include <asm/arch-stm32/stm32f.h>
+#include <asm/types.h>
 
 /*
  * Peripheral memory map
diff --git a/arch/arm/include/asm/arch-stm32f4/stm32_pwr.h b/arch/arm/include/asm/arch-stm32f4/stm32_pwr.h
index 8af6de220d8b..a199b4ec53e7 100644
--- a/arch/arm/include/asm/arch-stm32f4/stm32_pwr.h
+++ b/arch/arm/include/asm/arch-stm32f4/stm32_pwr.h
@@ -8,6 +8,7 @@
 #define __STM32_PWR_H_
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-stm32f7/stm32.h b/arch/arm/include/asm/arch-stm32f7/stm32.h
index 3451e74a3d0e..83893393f407 100644
--- a/arch/arm/include/asm/arch-stm32f7/stm32.h
+++ b/arch/arm/include/asm/arch-stm32f7/stm32.h
@@ -8,6 +8,7 @@
 #define _ASM_ARCH_HARDWARE_H
 
 #include <asm/arch-stm32/stm32f.h>
+#include <asm/types.h>
 
 static const u32 sect_sz_kb[CONFIG_SYS_MAX_FLASH_SECT] = {
 	[0 ... 3] =	32 * 1024,
diff --git a/arch/arm/include/asm/arch-stm32f7/stm32_pwr.h b/arch/arm/include/asm/arch-stm32f7/stm32_pwr.h
index 02faaeb663cd..fe244e7ed5c6 100644
--- a/arch/arm/include/asm/arch-stm32f7/stm32_pwr.h
+++ b/arch/arm/include/asm/arch-stm32f7/stm32_pwr.h
@@ -8,6 +8,7 @@
 #define __STM32_PWR_H_
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-stm32f7/syscfg.h b/arch/arm/include/asm/arch-stm32f7/syscfg.h
index 985ae2544deb..c1f7ebeb7b9b 100644
--- a/arch/arm/include/asm/arch-stm32f7/syscfg.h
+++ b/arch/arm/include/asm/arch-stm32f7/syscfg.h
@@ -8,6 +8,7 @@
 #define _STM32_SYSCFG_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-stv0991/gpio.h b/arch/arm/include/asm/arch-stv0991/gpio.h
index b27f4078582c..0dd9f8f0fdf8 100644
--- a/arch/arm/include/asm/arch-stv0991/gpio.h
+++ b/arch/arm/include/asm/arch-stv0991/gpio.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_STV0991_GPIO_H
 #define __ASM_ARCH_STV0991_GPIO_H
 
+#include <asm/types.h>
 enum gpio_direction {
 	GPIO_DIRECTION_IN,
 	GPIO_DIRECTION_OUT,
diff --git a/arch/arm/include/asm/arch-stv0991/stv0991_cgu.h b/arch/arm/include/asm/arch-stv0991/stv0991_cgu.h
index df9dd54e5a85..81c80dc2afb3 100644
--- a/arch/arm/include/asm/arch-stv0991/stv0991_cgu.h
+++ b/arch/arm/include/asm/arch-stv0991/stv0991_cgu.h
@@ -7,6 +7,7 @@
 #ifndef _STV0991_CGU_H
 #define _STV0991_CGU_H
 
+#include <asm/types.h>
 struct stv0991_cgu_regs {
 	u32 cpu_freq;		/* offset 0x0 */
 	u32 icn2_freq;		/* offset 0x4 */
diff --git a/arch/arm/include/asm/arch-stv0991/stv0991_creg.h b/arch/arm/include/asm/arch-stv0991/stv0991_creg.h
index 4d444a6df16c..ed6ebbfbff9a 100644
--- a/arch/arm/include/asm/arch-stv0991/stv0991_creg.h
+++ b/arch/arm/include/asm/arch-stv0991/stv0991_creg.h
@@ -7,6 +7,7 @@
 #ifndef _STV0991_CREG_H
 #define _STV0991_CREG_H
 
+#include <asm/types.h>
 struct stv0991_creg {
 	u32 version;		/* offset 0x0 */
 	u32 hdpctl;		/* offset 0x4 */
diff --git a/arch/arm/include/asm/arch-stv0991/stv0991_gpt.h b/arch/arm/include/asm/arch-stv0991/stv0991_gpt.h
index cd27472ad7e1..0dbc88db1d8e 100644
--- a/arch/arm/include/asm/arch-stv0991/stv0991_gpt.h
+++ b/arch/arm/include/asm/arch-stv0991/stv0991_gpt.h
@@ -8,6 +8,7 @@
 #define _STV0991_GPT_H
 
 #include <asm/arch-stv0991/hardware.h>
+#include <asm/types.h>
 
 struct gpt_regs {
 	u32 cr1;
diff --git a/arch/arm/include/asm/arch-stv0991/stv0991_wdru.h b/arch/arm/include/asm/arch-stv0991/stv0991_wdru.h
index 8cb8a8a61375..b90fa1cd5a25 100644
--- a/arch/arm/include/asm/arch-stv0991/stv0991_wdru.h
+++ b/arch/arm/include/asm/arch-stv0991/stv0991_wdru.h
@@ -7,6 +7,7 @@
 #ifndef _STV0991_WD_RST_H
 #define _STV0991_WD_RST_H
 #include <asm/arch-stv0991/hardware.h>
+#include <asm/types.h>
 
 struct stv0991_wd_ru {
 	u32 wdru_config;
diff --git a/arch/arm/include/asm/arch-sunxi/ccu.h b/arch/arm/include/asm/arch-sunxi/ccu.h
index cac5c5faf056..161fbd0eabe2 100644
--- a/arch/arm/include/asm/arch-sunxi/ccu.h
+++ b/arch/arm/include/asm/arch-sunxi/ccu.h
@@ -9,6 +9,7 @@
 
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 
 /**
diff --git a/arch/arm/include/asm/arch-sunxi/clock_sun4i.h b/arch/arm/include/asm/arch-sunxi/clock_sun4i.h
index 2cec91cb20e5..67d84f60bb68 100644
--- a/arch/arm/include/asm/arch-sunxi/clock_sun4i.h
+++ b/arch/arm/include/asm/arch-sunxi/clock_sun4i.h
@@ -352,6 +352,7 @@ struct sunxi_ccm_reg {
 #define CCM_DE_CTRL_GATE		(1 << 31)
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 void clock_set_pll1(unsigned int hz);
 void clock_set_pll3(unsigned int hz);
 unsigned int clock_get_pll3(void);
diff --git a/arch/arm/include/asm/arch-sunxi/clock_sun50i_h6.h b/arch/arm/include/asm/arch-sunxi/clock_sun50i_h6.h
index 426069fc69a4..1c4a8bc589fe 100644
--- a/arch/arm/include/asm/arch-sunxi/clock_sun50i_h6.h
+++ b/arch/arm/include/asm/arch-sunxi/clock_sun50i_h6.h
@@ -10,6 +10,7 @@
 #define _SUNXI_CLOCK_SUN50I_H6_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-sunxi/clock_sun6i.h b/arch/arm/include/asm/arch-sunxi/clock_sun6i.h
index 3c3ebfd3a201..cf2f5bfcee9a 100644
--- a/arch/arm/include/asm/arch-sunxi/clock_sun6i.h
+++ b/arch/arm/include/asm/arch-sunxi/clock_sun6i.h
@@ -519,6 +519,7 @@ struct sunxi_ccm_reg {
 #define CCM_SEC_SWITCH_PLL_NONSEC	(1 << 0)
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 void clock_set_pll1(unsigned int hz);
 void clock_set_pll3(unsigned int hz);
 void clock_set_pll3_factors(int m, int n);
diff --git a/arch/arm/include/asm/arch-sunxi/clock_sun8i_a83t.h b/arch/arm/include/asm/arch-sunxi/clock_sun8i_a83t.h
index 14df3cc8f46b..7c6f14f49cdc 100644
--- a/arch/arm/include/asm/arch-sunxi/clock_sun8i_a83t.h
+++ b/arch/arm/include/asm/arch-sunxi/clock_sun8i_a83t.h
@@ -297,6 +297,7 @@ struct sunxi_ccm_reg {
 
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 void clock_set_pll1(unsigned int hz);
 void clock_set_pll5(unsigned int clk);
 unsigned int clock_get_pll6(void);
diff --git a/arch/arm/include/asm/arch-sunxi/clock_sun9i.h b/arch/arm/include/asm/arch-sunxi/clock_sun9i.h
index fe6b8ba27328..6b990940d6a9 100644
--- a/arch/arm/include/asm/arch-sunxi/clock_sun9i.h
+++ b/arch/arm/include/asm/arch-sunxi/clock_sun9i.h
@@ -9,6 +9,7 @@
 #define _SUNXI_CLOCK_SUN9I_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-sunxi/cpucfg.h b/arch/arm/include/asm/arch-sunxi/cpucfg.h
index 4aaebe0a9761..a5911e77a7a6 100644
--- a/arch/arm/include/asm/arch-sunxi/cpucfg.h
+++ b/arch/arm/include/asm/arch-sunxi/cpucfg.h
@@ -13,6 +13,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <compiler.h>
 struct __packed sunxi_cpucfg_cpu {
 	u32 rst;		/* base + 0x0 */
 	u32 ctrl;		/* base + 0x4 */
diff --git a/arch/arm/include/asm/arch-sunxi/display.h b/arch/arm/include/asm/arch-sunxi/display.h
index 525f9cb839d2..87a9237cc7f7 100644
--- a/arch/arm/include/asm/arch-sunxi/display.h
+++ b/arch/arm/include/asm/arch-sunxi/display.h
@@ -8,6 +8,7 @@
 #ifndef _SUNXI_DISPLAY_H
 #define _SUNXI_DISPLAY_H
 
+#include <asm/types.h>
 struct sunxi_de_fe_reg {
 	u32 enable;			/* 0x000 */
 	u32 frame_ctrl;			/* 0x004 */
diff --git a/arch/arm/include/asm/arch-sunxi/display2.h b/arch/arm/include/asm/arch-sunxi/display2.h
index 7202d2756cf5..d7912aa8c7f6 100644
--- a/arch/arm/include/asm/arch-sunxi/display2.h
+++ b/arch/arm/include/asm/arch-sunxi/display2.h
@@ -13,6 +13,7 @@
 #define _SUNXI_DISPLAY2_H
 
 /* internal clock settings */
+#include <asm/types.h>
 struct de_clk {
 	u32 gate_cfg;
 	u32 bus_cfg;
diff --git a/arch/arm/include/asm/arch-sunxi/dma_sun4i.h b/arch/arm/include/asm/arch-sunxi/dma_sun4i.h
index 309dc4f7cfd6..bcf4ecf3c510 100644
--- a/arch/arm/include/asm/arch-sunxi/dma_sun4i.h
+++ b/arch/arm/include/asm/arch-sunxi/dma_sun4i.h
@@ -6,6 +6,7 @@
 #ifndef _SUNXI_DMA_SUN4I_H
 #define _SUNXI_DMA_SUN4I_H
 
+#include <asm/types.h>
 struct sunxi_dma_cfg
 {
 	u32 ctl;		/* 0x00 Control */
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sun4i.h b/arch/arm/include/asm/arch-sunxi/dram_sun4i.h
index 69c6600e9817..8881a9721f1b 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sun4i.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sun4i.h
@@ -11,6 +11,7 @@
 #ifndef _SUNXI_DRAM_SUN4I_H
 #define _SUNXI_DRAM_SUN4I_H
 
+#include <asm/types.h>
 struct sunxi_dram_reg {
 	u32 ccr;		/* 0x00 controller configuration register */
 	u32 dcr;		/* 0x04 dram configuration register */
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sun50i_h6.h b/arch/arm/include/asm/arch-sunxi/dram_sun50i_h6.h
index ddaa238c279f..a524ac72d27b 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sun50i_h6.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sun50i_h6.h
@@ -11,6 +11,7 @@
 
 #include <stdbool.h>
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #endif
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sun6i.h b/arch/arm/include/asm/arch-sunxi/dram_sun6i.h
index b66d58cd73b6..b5392faa6898 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sun6i.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sun6i.h
@@ -14,6 +14,7 @@
 #define _SUNXI_DRAM_SUN6I_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sun8i_a23.h b/arch/arm/include/asm/arch-sunxi/dram_sun8i_a23.h
index ca98597f1f87..611f881467e8 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sun8i_a23.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sun8i_a23.h
@@ -13,6 +13,7 @@
 #ifndef _SUNXI_DRAM_SUN8I_H
 #define _SUNXI_DRAM_SUN8I_H
 
+#include <asm/types.h>
 struct dram_para {
 	u32 clock;
 	u32 type;
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sun8i_a33.h b/arch/arm/include/asm/arch-sunxi/dram_sun8i_a33.h
index 3f65306cc68a..d66d933db3be 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sun8i_a33.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sun8i_a33.h
@@ -12,6 +12,7 @@
 #define _SUNXI_DRAM_SUN8I_A33_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sun8i_a83t.h b/arch/arm/include/asm/arch-sunxi/dram_sun8i_a83t.h
index 2a8799635473..afc128ce80fd 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sun8i_a83t.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sun8i_a83t.h
@@ -12,6 +12,7 @@
 #define _SUNXI_DRAM_SUN8I_A83T_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sun9i.h b/arch/arm/include/asm/arch-sunxi/dram_sun9i.h
index 41df5fe5b6f9..21f8f6613710 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sun9i.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sun9i.h
@@ -12,6 +12,7 @@
 #define _SUNXI_DRAM_SUN9I_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-sunxi/dram_sunxi_dw.h b/arch/arm/include/asm/arch-sunxi/dram_sunxi_dw.h
index 3420f939f243..8fc2c12c6e4b 100644
--- a/arch/arm/include/asm/arch-sunxi/dram_sunxi_dw.h
+++ b/arch/arm/include/asm/arch-sunxi/dram_sunxi_dw.h
@@ -14,6 +14,7 @@
 
 #include <linux/bitops.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 struct sunxi_mctl_com_reg {
 	u32 cr;			/* 0x00 control register */
diff --git a/arch/arm/include/asm/arch-sunxi/lcdc.h b/arch/arm/include/asm/arch-sunxi/lcdc.h
index 7fca301df964..a971de332050 100644
--- a/arch/arm/include/asm/arch-sunxi/lcdc.h
+++ b/arch/arm/include/asm/arch-sunxi/lcdc.h
@@ -11,6 +11,7 @@
 
 #include <fdtdec.h>
 #include <stdbool.h>
+#include <asm/types.h>
 
 struct sunxi_lcdc_reg {
 	u32 ctrl;			/* 0x00 */
diff --git a/arch/arm/include/asm/arch-sunxi/prcm.h b/arch/arm/include/asm/arch-sunxi/prcm.h
index 767d1ff98d74..43a7a532ea96 100644
--- a/arch/arm/include/asm/arch-sunxi/prcm.h
+++ b/arch/arm/include/asm/arch-sunxi/prcm.h
@@ -200,6 +200,7 @@
 #define PRCM_SEC_SWITCH_PWR_GATE_NONSEC (0x1 << 2)
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/compiler.h>
 
 struct sunxi_prcm_reg {
diff --git a/arch/arm/include/asm/arch-sunxi/pwm.h b/arch/arm/include/asm/arch-sunxi/pwm.h
index b89bddd2e898..15e8381b5aca 100644
--- a/arch/arm/include/asm/arch-sunxi/pwm.h
+++ b/arch/arm/include/asm/arch-sunxi/pwm.h
@@ -7,6 +7,7 @@
 #define _SUNXI_PWM_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-sunxi/rsb.h b/arch/arm/include/asm/arch-sunxi/rsb.h
index 8c64a995f255..1fab543dce49 100644
--- a/arch/arm/include/asm/arch-sunxi/rsb.h
+++ b/arch/arm/include/asm/arch-sunxi/rsb.h
@@ -12,6 +12,7 @@
 #define __SUNXI_RSB_H
 
 #include <asm/io.h>
+#include <asm/types.h>
 
 struct sunxi_rsb_reg {
 	u32 ctrl;	/* 0x00 */
diff --git a/arch/arm/include/asm/arch-sunxi/spl.h b/arch/arm/include/asm/arch-sunxi/spl.h
index 8c916e8c7529..de1a9c21d3fa 100644
--- a/arch/arm/include/asm/arch-sunxi/spl.h
+++ b/arch/arm/include/asm/arch-sunxi/spl.h
@@ -7,6 +7,7 @@
 #ifndef	_ASM_ARCH_SPL_H_
 #define	_ASM_ARCH_SPL_H_
 
+#include <linux/types.h>
 #define BOOT0_MAGIC		"eGON.BT0"
 #define SPL_SIGNATURE		"SPL" /* marks "sunxi" SPL header */
 #define SPL_MAJOR_BITS		3
diff --git a/arch/arm/include/asm/arch-sunxi/tve.h b/arch/arm/include/asm/arch-sunxi/tve.h
index 46cd87e79e8d..109e46bf455e 100644
--- a/arch/arm/include/asm/arch-sunxi/tve.h
+++ b/arch/arm/include/asm/arch-sunxi/tve.h
@@ -9,6 +9,7 @@
 #ifndef _TVE_H
 #define _TVE_H
 
+#include <asm/types.h>
 enum tve_mode {
 	tve_mode_vga,
 	tve_mode_composite_pal,
diff --git a/arch/arm/include/asm/arch-sunxi/tzpc.h b/arch/arm/include/asm/arch-sunxi/tzpc.h
index 7a6fcaebdb51..6a94083ae037 100644
--- a/arch/arm/include/asm/arch-sunxi/tzpc.h
+++ b/arch/arm/include/asm/arch-sunxi/tzpc.h
@@ -7,6 +7,7 @@
 #define _SUNXI_TZPC_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 struct sunxi_tzpc {
 	u32 r0size;		/* 0x00 Size of secure RAM region */
 	u32 decport0_status;	/* 0x04 Status of decode protection port 0 */
diff --git a/arch/arm/include/asm/arch-sunxi/watchdog.h b/arch/arm/include/asm/arch-sunxi/watchdog.h
index 38e2ef2aca3d..c30bb276ae95 100644
--- a/arch/arm/include/asm/arch-sunxi/watchdog.h
+++ b/arch/arm/include/asm/arch-sunxi/watchdog.h
@@ -9,6 +9,7 @@
 #ifndef _SUNXI_WATCHDOG_H_
 #define _SUNXI_WATCHDOG_H_
 
+#include <asm/types.h>
 #define WDT_CTRL_RESTART	(0x1 << 0)
 #define WDT_CTRL_KEY		(0x0a57 << 1)
 
diff --git a/arch/arm/include/asm/arch-tegra/apb_misc.h b/arch/arm/include/asm/arch-tegra/apb_misc.h
index d438966afbe5..af98f984c9f9 100644
--- a/arch/arm/include/asm/arch-tegra/apb_misc.h
+++ b/arch/arm/include/asm/arch-tegra/apb_misc.h
@@ -7,6 +7,7 @@
 #define _GP_PADCTRL_H_
 
 /* APB_MISC_PP registers */
+#include <asm/types.h>
 struct apb_misc_pp_ctlr {
 	u32	reserved0[2];
 	u32	strapping_opt_a;/* 0x08: APB_MISC_PP_STRAPPING_OPT_A */
diff --git a/arch/arm/include/asm/arch-tegra/bpmp_abi.h b/arch/arm/include/asm/arch-tegra/bpmp_abi.h
index 373da526ed6d..599982a5f022 100644
--- a/arch/arm/include/asm/arch-tegra/bpmp_abi.h
+++ b/arch/arm/include/asm/arch-tegra/bpmp_abi.h
@@ -73,6 +73,7 @@
  *
  * @todo document the flags
  */
+#include <linux/types.h>
 struct mrq_request {
 	/** @brief MRQ number of the request */
 	uint32_t mrq;
diff --git a/arch/arm/include/asm/arch-tegra/cboot.h b/arch/arm/include/asm/arch-tegra/cboot.h
index d89e784f2d26..03ba29859bde 100644
--- a/arch/arm/include/asm/arch-tegra/cboot.h
+++ b/arch/arm/include/asm/arch-tegra/cboot.h
@@ -8,6 +8,7 @@
 
 #include <net.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_ARM64
 
diff --git a/arch/arm/include/asm/arch-tegra/clk_rst.h b/arch/arm/include/asm/arch-tegra/clk_rst.h
index 2359e142fb7f..7771dc5cbee6 100644
--- a/arch/arm/include/asm/arch-tegra/clk_rst.h
+++ b/arch/arm/include/asm/arch-tegra/clk_rst.h
@@ -8,6 +8,7 @@
 #define _TEGRA_CLK_RST_H_
 
 /* PLL registers - there are several PLLs in the clock controller */
+#include <linux/types.h>
 struct clk_pll {
 	uint pll_base;		/* the control register */
 	/* pll_out[0] is output A control, pll_out[1] is output B control */
diff --git a/arch/arm/include/asm/arch-tegra/clock.h b/arch/arm/include/asm/arch-tegra/clock.h
index 630287c1b780..cd35095cb109 100644
--- a/arch/arm/include/asm/arch-tegra/clock.h
+++ b/arch/arm/include/asm/arch-tegra/clock.h
@@ -8,6 +8,7 @@
 #ifndef _TEGRA_CLOCK_H_
 #define _TEGRA_CLOCK_H_
 
+#include <linux/types.h>
 struct udevice;
 
 /* Set of oscillator frequencies supported in the internal API. */
diff --git a/arch/arm/include/asm/arch-tegra/dc.h b/arch/arm/include/asm/arch-tegra/dc.h
index 6444af2993a0..d8a079e3221f 100644
--- a/arch/arm/include/asm/arch-tegra/dc.h
+++ b/arch/arm/include/asm/arch-tegra/dc.h
@@ -9,6 +9,7 @@
 
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 
 /* Register definitions for the Tegra display controller */
diff --git a/arch/arm/include/asm/arch-tegra/fuse.h b/arch/arm/include/asm/arch-tegra/fuse.h
index 5b8e0bd8d16c..e2412d0676fc 100644
--- a/arch/arm/include/asm/arch-tegra/fuse.h
+++ b/arch/arm/include/asm/arch-tegra/fuse.h
@@ -8,6 +8,7 @@
 #define _FUSE_H_
 
 /* FUSE registers */
+#include <asm/types.h>
 struct fuse_regs {
 	u32 reserved0[64];		/* 0x00 - 0xFC: */
 	u32 production_mode;		/* 0x100: FUSE_PRODUCTION_MODE */
diff --git a/arch/arm/include/asm/arch-tegra/gpio.h b/arch/arm/include/asm/arch-tegra/gpio.h
index fe7b3a50e0d9..15384670c950 100644
--- a/arch/arm/include/asm/arch-tegra/gpio.h
+++ b/arch/arm/include/asm/arch-tegra/gpio.h
@@ -6,6 +6,7 @@
 #ifndef _TEGRA_GPIO_H_
 #define _TEGRA_GPIO_H_
 
+#include <asm/types.h>
 #include <dt-bindings/gpio/tegra-gpio.h>
 
 #define TEGRA_GPIOS_PER_PORT	8
diff --git a/arch/arm/include/asm/arch-tegra/ivc.h b/arch/arm/include/asm/arch-tegra/ivc.h
index 52c10b8fab3e..4f0e6a1300ab 100644
--- a/arch/arm/include/asm/arch-tegra/ivc.h
+++ b/arch/arm/include/asm/arch-tegra/ivc.h
@@ -28,6 +28,7 @@
  */
 
 /**
+#include <linux/types.h>
  * struct tegra_ivc - In-memory shared memory layout.
  *
  * This is described in detail in ivc.c.
diff --git a/arch/arm/include/asm/arch-tegra/pmc.h b/arch/arm/include/asm/arch-tegra/pmc.h
index e1f5a7381357..e4ab21552a87 100644
--- a/arch/arm/include/asm/arch-tegra/pmc.h
+++ b/arch/arm/include/asm/arch-tegra/pmc.h
@@ -9,6 +9,7 @@
 
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 
 /* Power Management Controller (APBDEV_PMC_) registers */
diff --git a/arch/arm/include/asm/arch-tegra/pwm.h b/arch/arm/include/asm/arch-tegra/pwm.h
index eebd104de9d6..77de14782939 100644
--- a/arch/arm/include/asm/arch-tegra/pwm.h
+++ b/arch/arm/include/asm/arch-tegra/pwm.h
@@ -9,6 +9,7 @@
 #define __ASM_ARCH_TEGRA_PWM_H
 
 /* This is a single PWM channel */
+#include <linux/types.h>
 struct pwm_ctlr {
 	uint control;		/* Control register */
 	uint reserved[3];	/* Space space */
diff --git a/arch/arm/include/asm/arch-tegra/scu.h b/arch/arm/include/asm/arch-tegra/scu.h
index afe076419cf3..942f644cc3ba 100644
--- a/arch/arm/include/asm/arch-tegra/scu.h
+++ b/arch/arm/include/asm/arch-tegra/scu.h
@@ -8,6 +8,7 @@
 #define _SCU_H_
 
 /* ARM Snoop Control Unit (SCU) registers */
+#include <linux/types.h>
 struct scu_ctlr {
 	uint scu_ctrl;		/* SCU Control Register, offset 00 */
 	uint scu_cfg;		/* SCU Config Register, offset 04 */
diff --git a/arch/arm/include/asm/arch-tegra/tegra_ahub.h b/arch/arm/include/asm/arch-tegra/tegra_ahub.h
index 96d542a91cab..36de87033e79 100644
--- a/arch/arm/include/asm/arch-tegra/tegra_ahub.h
+++ b/arch/arm/include/asm/arch-tegra/tegra_ahub.h
@@ -14,6 +14,7 @@
  * Each TX CIF transmits data into the XBAR. Each RX CIF can receive audio
  * transmitted by a particular TX CIF.
  */
+#include <asm/types.h>
 struct xbar_regs {
 	u32 apbif_rx0;		/* AUDIO_APBIF_RX0, offset 0x00 */
 	u32 apbif_rx1;		/* AUDIO_APBIF_RX1, offset 0x04 */
diff --git a/arch/arm/include/asm/arch-tegra/tegra_i2s.h b/arch/arm/include/asm/arch-tegra/tegra_i2s.h
index 9319383f7c1e..55bd31acc7ef 100644
--- a/arch/arm/include/asm/arch-tegra/tegra_i2s.h
+++ b/arch/arm/include/asm/arch-tegra/tegra_i2s.h
@@ -1,6 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
 /*
  * tegra_i2s.h - Definitions for Tegra124 I2S driver.
+#include <asm/types.h>
  * Note, some structures (ex, CIF) are different in Tegra114.
  *
  * NVIDIA Tegra I2S controller
diff --git a/arch/arm/include/asm/arch-tegra/uart.h b/arch/arm/include/asm/arch-tegra/uart.h
index 24f0bdd51b8d..01404dd12fdb 100644
--- a/arch/arm/include/asm/arch-tegra/uart.h
+++ b/arch/arm/include/asm/arch-tegra/uart.h
@@ -8,6 +8,7 @@
 #define _UART_H_
 
 /* UART registers */
+#include <linux/types.h>
 struct uart_ctlr {
 	uint uart_thr_dlab_0;		/* UART_THR_DLAB_0_0, offset 00 */
 	uint uart_ier_dlab_0;		/* UART_IER_DLAB_0_0, offset 04 */
diff --git a/arch/arm/include/asm/arch-tegra/usb.h b/arch/arm/include/asm/arch-tegra/usb.h
index 6e6ea1443cb0..9fc96dc251ba 100644
--- a/arch/arm/include/asm/arch-tegra/usb.h
+++ b/arch/arm/include/asm/arch-tegra/usb.h
@@ -8,6 +8,7 @@
 #define _TEGRA_USB_H_
 
 /* USB Controller (USBx_CONTROLLER_) regs */
+#include <linux/types.h>
 struct usb_ctlr {
 	/* 0x000 */
 	uint id;
diff --git a/arch/arm/include/asm/arch-tegra/warmboot.h b/arch/arm/include/asm/arch-tegra/warmboot.h
index 3f02073ee494..0c2f0a56c258 100644
--- a/arch/arm/include/asm/arch-tegra/warmboot.h
+++ b/arch/arm/include/asm/arch-tegra/warmboot.h
@@ -7,6 +7,7 @@
 #ifndef _WARM_BOOT_H_
 #define _WARM_BOOT_H_
 
+#include <asm/types.h>
 #define STRAP_OPT_A_RAM_CODE_SHIFT	4
 #define STRAP_OPT_A_RAM_CODE_MASK	(0xf << STRAP_OPT_A_RAM_CODE_SHIFT)
 
diff --git a/arch/arm/include/asm/arch-tegra114/flow.h b/arch/arm/include/asm/arch-tegra114/flow.h
index 4f0fc3b7fb3d..4c5fcfbb4d33 100644
--- a/arch/arm/include/asm/arch-tegra114/flow.h
+++ b/arch/arm/include/asm/arch-tegra114/flow.h
@@ -6,6 +6,7 @@
 #ifndef _TEGRA114_FLOW_H_
 #define _TEGRA114_FLOW_H_
 
+#include <asm/types.h>
 struct flow_ctlr {
 	u32 halt_cpu_events;
 	u32 halt_cop_events;
diff --git a/arch/arm/include/asm/arch-tegra114/gp_padctrl.h b/arch/arm/include/asm/arch-tegra114/gp_padctrl.h
index 69b35a1411ec..9a09456dc58b 100644
--- a/arch/arm/include/asm/arch-tegra114/gp_padctrl.h
+++ b/arch/arm/include/asm/arch-tegra114/gp_padctrl.h
@@ -7,6 +7,7 @@
 #define _TEGRA114_GP_PADCTRL_H_
 
 #include <asm/arch-tegra/gp_padctrl.h>
+#include <asm/types.h>
 
 /* APB_MISC_GP and padctrl registers */
 struct apb_misc_gp_ctlr {
diff --git a/arch/arm/include/asm/arch-tegra114/mc.h b/arch/arm/include/asm/arch-tegra114/mc.h
index 3930bab571ff..7d60efe43834 100644
--- a/arch/arm/include/asm/arch-tegra114/mc.h
+++ b/arch/arm/include/asm/arch-tegra114/mc.h
@@ -10,6 +10,7 @@
 /**
  * Defines the memory controller registers we need/care about
  */
+#include <asm/types.h>
 struct mc_ctlr {
 	u32 reserved0[4];			/* offset 0x00 - 0x0C */
 	u32 mc_smmu_config;			/* offset 0x10 */
diff --git a/arch/arm/include/asm/arch-tegra114/sysctr.h b/arch/arm/include/asm/arch-tegra114/sysctr.h
index 228f423bed0b..67731bbc05f7 100644
--- a/arch/arm/include/asm/arch-tegra114/sysctr.h
+++ b/arch/arm/include/asm/arch-tegra114/sysctr.h
@@ -6,6 +6,7 @@
 #ifndef _TEGRA114_SYSCTR_H_
 #define _TEGRA114_SYSCTR_H_
 
+#include <asm/types.h>
 struct sysctr_ctlr {
 	u32 cntcr;		/* 0x00: SYSCTR0_CNTCR Counter Control */
 	u32 cntsr;		/* 0x04: SYSCTR0_CNTSR Counter Status */
diff --git a/arch/arm/include/asm/arch-tegra124/ahb.h b/arch/arm/include/asm/arch-tegra124/ahb.h
index d88cdfecea43..5180925d6fdd 100644
--- a/arch/arm/include/asm/arch-tegra124/ahb.h
+++ b/arch/arm/include/asm/arch-tegra124/ahb.h
@@ -7,6 +7,7 @@
 #ifndef _TEGRA124_AHB_H_
 #define _TEGRA124_AHB_H_
 
+#include <asm/types.h>
 struct ahb_ctlr {
 	u32 reserved0;			/* 00h */
 	u32 arbitration_disable;	/* _ARBITRATION_DISABLE_0,	04h */
diff --git a/arch/arm/include/asm/arch-tegra124/clock.h b/arch/arm/include/asm/arch-tegra124/clock.h
index 3f54d3627778..7c24026cce49 100644
--- a/arch/arm/include/asm/arch-tegra124/clock.h
+++ b/arch/arm/include/asm/arch-tegra124/clock.h
@@ -10,6 +10,7 @@
 #define _TEGRA124_CLOCK_H_
 
 #include <asm/arch-tegra/clock.h>
+#include <asm/types.h>
 
 /* CLK_RST_CONTROLLER_OSC_CTRL_0 */
 #define OSC_FREQ_SHIFT          28
diff --git a/arch/arm/include/asm/arch-tegra124/flow.h b/arch/arm/include/asm/arch-tegra124/flow.h
index ebcb22f1cb90..8b060acd756c 100644
--- a/arch/arm/include/asm/arch-tegra124/flow.h
+++ b/arch/arm/include/asm/arch-tegra124/flow.h
@@ -8,6 +8,7 @@
 #define _TEGRA124_FLOW_H_
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/include/asm/arch-tegra124/gp_padctrl.h b/arch/arm/include/asm/arch-tegra124/gp_padctrl.h
index 750a2dc649ae..85628af19f77 100644
--- a/arch/arm/include/asm/arch-tegra124/gp_padctrl.h
+++ b/arch/arm/include/asm/arch-tegra124/gp_padctrl.h
@@ -8,6 +8,7 @@
 #define _TEGRA124_GP_PADCTRL_H_
 
 #include <asm/arch-tegra/gp_padctrl.h>
+#include <asm/types.h>
 
 /* APB_MISC_GP and padctrl registers */
 struct apb_misc_gp_ctlr {
diff --git a/arch/arm/include/asm/arch-tegra124/gpio.h b/arch/arm/include/asm/arch-tegra124/gpio.h
index e5ea2815afa4..2ec69bb57eb0 100644
--- a/arch/arm/include/asm/arch-tegra124/gpio.h
+++ b/arch/arm/include/asm/arch-tegra124/gpio.h
@@ -15,6 +15,7 @@
 #define TEGRA_GPIO_BANKS	8	/* number of banks */
 
 #include <asm/arch-tegra/gpio.h>
+#include <linux/types.h>
 
 /* GPIO Controller registers for a single bank */
 struct gpio_ctlr_bank {
diff --git a/arch/arm/include/asm/arch-tegra124/mc.h b/arch/arm/include/asm/arch-tegra124/mc.h
index 617e55af20e2..26b44574f66b 100644
--- a/arch/arm/include/asm/arch-tegra124/mc.h
+++ b/arch/arm/include/asm/arch-tegra124/mc.h
@@ -9,6 +9,7 @@
 /**
  * Defines the memory controller registers we need/care about
  */
+#include <asm/types.h>
 struct mc_ctlr {
 	u32 reserved0[4];			/* offset 0x00 - 0x0C */
 	u32 mc_smmu_config;			/* offset 0x10 */
diff --git a/arch/arm/include/asm/arch-tegra124/sysctr.h b/arch/arm/include/asm/arch-tegra124/sysctr.h
index 6567104d0832..f5b3ab565ff5 100644
--- a/arch/arm/include/asm/arch-tegra124/sysctr.h
+++ b/arch/arm/include/asm/arch-tegra124/sysctr.h
@@ -7,6 +7,7 @@
 #ifndef _TEGRA124_SYSCTR_H_
 #define _TEGRA124_SYSCTR_H_
 
+#include <asm/types.h>
 struct sysctr_ctlr {
 	u32 cntcr;		/* 0x00: SYSCTR0_CNTCR Counter Control */
 	u32 cntsr;		/* 0x04: SYSCTR0_CNTSR Counter Status */
diff --git a/arch/arm/include/asm/arch-tegra20/display.h b/arch/arm/include/asm/arch-tegra20/display.h
index e7b3cffd4664..26b0fa9d7666 100644
--- a/arch/arm/include/asm/arch-tegra20/display.h
+++ b/arch/arm/include/asm/arch-tegra20/display.h
@@ -8,6 +8,7 @@
 #define __ASM_ARCH_TEGRA_DISPLAY_H
 
 #include <asm/arch-tegra/dc.h>
+#include <asm/types.h>
 
 /* This holds information about a window which can be displayed */
 struct disp_ctl_win {
diff --git a/arch/arm/include/asm/arch-tegra20/flow.h b/arch/arm/include/asm/arch-tegra20/flow.h
index 33be841ddbd6..3bf0d0d1aa2f 100644
--- a/arch/arm/include/asm/arch-tegra20/flow.h
+++ b/arch/arm/include/asm/arch-tegra20/flow.h
@@ -7,6 +7,7 @@
 #ifndef _FLOW_H_
 #define _FLOW_H_
 
+#include <asm/types.h>
 struct flow_ctlr {
 	u32	halt_cpu_events;
 	u32	halt_cop_events;
diff --git a/arch/arm/include/asm/arch-tegra20/gp_padctrl.h b/arch/arm/include/asm/arch-tegra20/gp_padctrl.h
index dd2ee126550b..ab06bfb4cba7 100644
--- a/arch/arm/include/asm/arch-tegra20/gp_padctrl.h
+++ b/arch/arm/include/asm/arch-tegra20/gp_padctrl.h
@@ -8,6 +8,7 @@
 #define _TEGRA20_GP_PADCTRL_H_
 
 #include <asm/arch-tegra/gp_padctrl.h>
+#include <asm/types.h>
 
 /* APB_MISC_GP and padctrl registers */
 struct apb_misc_gp_ctlr {
diff --git a/arch/arm/include/asm/arch-tegra20/gpio.h b/arch/arm/include/asm/arch-tegra20/gpio.h
index 6818c28723bf..fb203d21468c 100644
--- a/arch/arm/include/asm/arch-tegra20/gpio.h
+++ b/arch/arm/include/asm/arch-tegra20/gpio.h
@@ -15,6 +15,7 @@
 #define TEGRA_GPIO_BANKS	7	/* number of banks */
 
 #include <asm/arch-tegra/gpio.h>
+#include <linux/types.h>
 
 /* GPIO Controller registers for a single bank */
 struct gpio_ctlr_bank {
diff --git a/arch/arm/include/asm/arch-tegra20/mc.h b/arch/arm/include/asm/arch-tegra20/mc.h
index 71283e4e21e0..67c5742e0826 100644
--- a/arch/arm/include/asm/arch-tegra20/mc.h
+++ b/arch/arm/include/asm/arch-tegra20/mc.h
@@ -10,6 +10,7 @@
 /**
  * Defines the memory controller registers we need/care about
  */
+#include <asm/types.h>
 struct mc_ctlr {
 	u32 reserved0[3];			/* offset 0x00 - 0x08 */
 	u32 mc_emem_cfg;			/* offset 0x0C */
diff --git a/arch/arm/include/asm/arch-tegra20/sdram_param.h b/arch/arm/include/asm/arch-tegra20/sdram_param.h
index 3d1405fa3bae..75c1182a869d 100644
--- a/arch/arm/include/asm/arch-tegra20/sdram_param.h
+++ b/arch/arm/include/asm/arch-tegra20/sdram_param.h
@@ -11,6 +11,7 @@
  * Defines the number of 32-bit words provided in each set of SDRAM parameters
  * for arbitration configuration data.
  */
+#include <asm/types.h>
 #define BCT_SDRAM_ARB_CONFIG_WORDS 27
 
 enum memory_type {
diff --git a/arch/arm/include/asm/arch-tegra210/ahb.h b/arch/arm/include/asm/arch-tegra210/ahb.h
index 8ecd6d9bae22..7b4a8994d8bf 100644
--- a/arch/arm/include/asm/arch-tegra210/ahb.h
+++ b/arch/arm/include/asm/arch-tegra210/ahb.h
@@ -7,6 +7,7 @@
 #ifndef _TEGRA210_AHB_H_
 #define _TEGRA210_AHB_H_
 
+#include <asm/types.h>
 struct ahb_ctlr {
 	u32 reserved0;			/* 00h */
 	u32 arbitration_disable;	/* _ARBITRATION_DISABLE_0,	04h */
diff --git a/arch/arm/include/asm/arch-tegra210/flow.h b/arch/arm/include/asm/arch-tegra210/flow.h
index ef0be19e5876..73ee94ef7386 100644
--- a/arch/arm/include/asm/arch-tegra210/flow.h
+++ b/arch/arm/include/asm/arch-tegra210/flow.h
@@ -7,6 +7,7 @@
 #ifndef _TEGRA210_FLOW_H_
 #define _TEGRA210_FLOW_H_
 
+#include <asm/types.h>
 struct flow_ctlr {
 	u32 halt_cpu_events;	/* offset 0x00 */
 	u32 halt_cop_events;	/* offset 0x04 */
diff --git a/arch/arm/include/asm/arch-tegra210/gp_padctrl.h b/arch/arm/include/asm/arch-tegra210/gp_padctrl.h
index e9ff9037526b..92a315f34fd0 100644
--- a/arch/arm/include/asm/arch-tegra210/gp_padctrl.h
+++ b/arch/arm/include/asm/arch-tegra210/gp_padctrl.h
@@ -8,6 +8,7 @@
 #define _TEGRA210_GP_PADCTRL_H_
 
 #include <asm/arch-tegra/gp_padctrl.h>
+#include <asm/types.h>
 
 /* APB_MISC_GP and padctrl registers */
 struct apb_misc_gp_ctlr {
diff --git a/arch/arm/include/asm/arch-tegra210/gpio.h b/arch/arm/include/asm/arch-tegra210/gpio.h
index cb91b10bed8f..9a3b5be72eed 100644
--- a/arch/arm/include/asm/arch-tegra210/gpio.h
+++ b/arch/arm/include/asm/arch-tegra210/gpio.h
@@ -15,6 +15,7 @@
 #define TEGRA_GPIO_BANKS	8	/* number of banks */
 
 #include <asm/arch-tegra/gpio.h>
+#include <linux/types.h>
 
 /* GPIO Controller registers for a single bank */
 struct gpio_ctlr_bank {
diff --git a/arch/arm/include/asm/arch-tegra210/mc.h b/arch/arm/include/asm/arch-tegra210/mc.h
index 5a2a5681d7a9..a80e36c011f4 100644
--- a/arch/arm/include/asm/arch-tegra210/mc.h
+++ b/arch/arm/include/asm/arch-tegra210/mc.h
@@ -9,6 +9,7 @@
 /**
  * Defines the memory controller registers we need/care about
  */
+#include <asm/types.h>
 struct mc_ctlr {
 	u32 reserved0[4];			/* offset 0x00 - 0x0C */
 	u32 mc_smmu_config;			/* offset 0x10 */
diff --git a/arch/arm/include/asm/arch-tegra210/sysctr.h b/arch/arm/include/asm/arch-tegra210/sysctr.h
index cb1c4997fac0..8ada6e5c60cf 100644
--- a/arch/arm/include/asm/arch-tegra210/sysctr.h
+++ b/arch/arm/include/asm/arch-tegra210/sysctr.h
@@ -7,6 +7,7 @@
 #ifndef _TEGRA210_SYSCTR_H_
 #define _TEGRA210_SYSCTR_H_
 
+#include <asm/types.h>
 struct sysctr_ctlr {
 	u32 cntcr;		/* 0x00: SYSCTR0_CNTCR Counter Control */
 	u32 cntsr;		/* 0x04: SYSCTR0_CNTSR Counter Status */
diff --git a/arch/arm/include/asm/arch-tegra30/flow.h b/arch/arm/include/asm/arch-tegra30/flow.h
index f3e947e9eee5..3924b418040d 100644
--- a/arch/arm/include/asm/arch-tegra30/flow.h
+++ b/arch/arm/include/asm/arch-tegra30/flow.h
@@ -6,6 +6,7 @@
 #ifndef _TEGRA30_FLOW_H_
 #define _TEGRA30_FLOW_H_
 
+#include <asm/types.h>
 struct flow_ctlr {
 	u32 halt_cpu_events;
 	u32 halt_cop_events;
diff --git a/arch/arm/include/asm/arch-tegra30/gp_padctrl.h b/arch/arm/include/asm/arch-tegra30/gp_padctrl.h
index 4ff785de8eaa..65e811ababa7 100644
--- a/arch/arm/include/asm/arch-tegra30/gp_padctrl.h
+++ b/arch/arm/include/asm/arch-tegra30/gp_padctrl.h
@@ -7,6 +7,7 @@
 #define _TEGRA30_GP_PADCTRL_H_
 
 #include <asm/arch-tegra/gp_padctrl.h>
+#include <asm/types.h>
 
 /* APB_MISC_GP and padctrl registers */
 struct apb_misc_gp_ctlr {
diff --git a/arch/arm/include/asm/arch-tegra30/gpio.h b/arch/arm/include/asm/arch-tegra30/gpio.h
index 1dd2e426ba68..5289e33fd920 100644
--- a/arch/arm/include/asm/arch-tegra30/gpio.h
+++ b/arch/arm/include/asm/arch-tegra30/gpio.h
@@ -14,6 +14,7 @@
 #define TEGRA_GPIO_BANKS	8	/* number of banks */
 
 #include <asm/arch-tegra/gpio.h>
+#include <linux/types.h>
 
 /* GPIO Controller registers for a single bank */
 struct gpio_ctlr_bank {
diff --git a/arch/arm/include/asm/arch-tegra30/mc.h b/arch/arm/include/asm/arch-tegra30/mc.h
index bbb0fe77bc43..9643ed81f903 100644
--- a/arch/arm/include/asm/arch-tegra30/mc.h
+++ b/arch/arm/include/asm/arch-tegra30/mc.h
@@ -10,6 +10,7 @@
 /**
  * Defines the memory controller registers we need/care about
  */
+#include <asm/types.h>
 struct mc_ctlr {
 	u32 reserved0[4];			/* offset 0x00 - 0x0C */
 	u32 mc_smmu_config;			/* offset 0x10 */
diff --git a/arch/arm/include/asm/arch-vf610/clock.h b/arch/arm/include/asm/arch-vf610/clock.h
index ec9786ce4fef..6cdad57e78f2 100644
--- a/arch/arm/include/asm/arch-vf610/clock.h
+++ b/arch/arm/include/asm/arch-vf610/clock.h
@@ -6,6 +6,7 @@
 #ifndef __ASM_ARCH_CLOCK_H
 #define __ASM_ARCH_CLOCK_H
 
+#include <asm/types.h>
 enum mxc_clock {
 	MXC_ARM_CLK = 0,
 	MXC_BUS_CLK,
diff --git a/arch/arm/include/asm/arch-vf610/ddrmc-vf610.h b/arch/arm/include/asm/arch-vf610/ddrmc-vf610.h
index 03e3cecb95a0..8adfbefd0c81 100644
--- a/arch/arm/include/asm/arch-vf610/ddrmc-vf610.h
+++ b/arch/arm/include/asm/arch-vf610/ddrmc-vf610.h
@@ -11,6 +11,7 @@
 #define __ASM_ARCH_VF610_DDRMC_H
 
 #include <asm/arch/iomux-vf610.h>
+#include <asm/types.h>
 
 struct ddr3_jedec_timings {
 	u8 tinit;
diff --git a/arch/arm/include/asm/arch-vf610/gpio.h b/arch/arm/include/asm/arch-vf610/gpio.h
index 9bfdf1687308..07ae0e4f64fb 100644
--- a/arch/arm/include/asm/arch-vf610/gpio.h
+++ b/arch/arm/include/asm/arch-vf610/gpio.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_VF610_GPIO_H
 #define __ASM_ARCH_VF610_GPIO_H
 
+#include <asm/types.h>
 #define VYBRID_GPIO_COUNT		32
 #define VF610_GPIO_DIRECTION_IN	0x0
 #define VF610_GPIO_DIRECTION_OUT	0x1
diff --git a/arch/arm/include/asm/armv7_mpu.h b/arch/arm/include/asm/armv7_mpu.h
index 16b9d0d1aeb3..bbad00406cd2 100644
--- a/arch/arm/include/asm/armv7_mpu.h
+++ b/arch/arm/include/asm/armv7_mpu.h
@@ -9,6 +9,7 @@
 
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 
 #ifdef CONFIG_CPU_V7M
diff --git a/arch/arm/include/asm/armv7m.h b/arch/arm/include/asm/armv7m.h
index ad67b4fa34e0..c8411475eb26 100644
--- a/arch/arm/include/asm/armv7m.h
+++ b/arch/arm/include/asm/armv7m.h
@@ -23,6 +23,7 @@
 #define V7M_SCB_VTOR		0x08
 
 #if !defined(__ASSEMBLY__)
+#include <linux/types.h>
 struct v7m_scb {
 	uint32_t cpuid;		/* CPUID Base Register */
 	uint32_t icsr;		/* Interrupt Control and State Register */
diff --git a/arch/arm/include/asm/armv8/mmu.h b/arch/arm/include/asm/armv8/mmu.h
index fc97c5511468..5af66bea1448 100644
--- a/arch/arm/include/asm/armv8/mmu.h
+++ b/arch/arm/include/asm/armv8/mmu.h
@@ -104,6 +104,8 @@
 #define TCR_EL3_RSVD		(1 << 31 | 1 << 23)
 
 #ifndef __ASSEMBLY__
+#include <linux/types.h>
+
 static inline void set_ttbr_tcr_mair(int el, u64 table, u64 tcr, u64 attr)
 {
 	asm volatile("dsb sy");
diff --git a/arch/arm/include/asm/armv8/sec_firmware.h b/arch/arm/include/asm/armv8/sec_firmware.h
index 9c010953f5f2..b83f93f44153 100644
--- a/arch/arm/include/asm/armv8/sec_firmware.h
+++ b/arch/arm/include/asm/armv8/sec_firmware.h
@@ -7,6 +7,7 @@
 #define __SEC_FIRMWARE_H_
 
 #include <stdbool.h>
+#include <linux/types.h>
 
 #define PSCI_INVALID_VER		0xffffffff
 #define SEC_JR3_OFFSET			0x40000
diff --git a/arch/arm/include/asm/bootm.h b/arch/arm/include/asm/bootm.h
index a2131ca07c52..5a41f0e52ccc 100644
--- a/arch/arm/include/asm/bootm.h
+++ b/arch/arm/include/asm/bootm.h
@@ -8,6 +8,7 @@
 #ifndef ARM_BOOTM_H
 #define ARM_BOOTM_H
 
+#include <asm/types.h>
 extern void udc_disconnect(void);
 
 #if defined(CONFIG_SETUP_MEMORY_TAGS) || \
diff --git a/arch/arm/include/asm/ehci-omap.h b/arch/arm/include/asm/ehci-omap.h
index f970bba93758..fc8b619ecdb5 100644
--- a/arch/arm/include/asm/ehci-omap.h
+++ b/arch/arm/include/asm/ehci-omap.h
@@ -11,6 +11,7 @@
 #ifndef _OMAP_COMMON_EHCI_H_
 #define _OMAP_COMMON_EHCI_H_
 
+#include <asm/types.h>
 enum usbhs_omap_port_mode {
 	OMAP_USBHS_PORT_MODE_UNUSED,
 	OMAP_EHCI_PORT_MODE_PHY,
diff --git a/arch/arm/include/asm/handoff.h b/arch/arm/include/asm/handoff.h
index 0790d2ab1e25..e1e1708b241a 100644
--- a/arch/arm/include/asm/handoff.h
+++ b/arch/arm/include/asm/handoff.h
@@ -10,6 +10,7 @@
 #define __asm_handoff_h
 
 /**
+#include <linux/types.h>
  * struct arch_spl_handoff - architecture-specific handoff info
  *
  * @usable_ram_top: Value returned by board_get_usable_ram_top() in SPL
diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h
index 994b47579924..e74aad6ad9d7 100644
--- a/arch/arm/include/asm/io.h
+++ b/arch/arm/include/asm/io.h
@@ -30,6 +30,7 @@
 #if 0	/* XXX###XXX */
 #include <asm/arch/hardware.h>
 #endif	/* XXX###XXX */
+#include <compiler.h>
 #include <linux/string.h>
 
 static inline void sync(void)
diff --git a/arch/arm/include/asm/iproc-common/iproc_sdhci.h b/arch/arm/include/asm/iproc-common/iproc_sdhci.h
index 4e299217fcf1..7c4f35d23bc4 100644
--- a/arch/arm/include/asm/iproc-common/iproc_sdhci.h
+++ b/arch/arm/include/asm/iproc-common/iproc_sdhci.h
@@ -7,6 +7,7 @@
 #ifndef __IPROC_SDHCI_H
 #define __IPROC_SDHCI_H
 
+#include <asm/types.h>
 int iproc_sdhci_init(int dev_index, u32 quirks);
 
 #endif
diff --git a/arch/arm/include/asm/kona-common/kona_sdhci.h b/arch/arm/include/asm/kona-common/kona_sdhci.h
index 22db651a4eb2..f8887ceb4c9a 100644
--- a/arch/arm/include/asm/kona-common/kona_sdhci.h
+++ b/arch/arm/include/asm/kona-common/kona_sdhci.h
@@ -6,6 +6,7 @@
 #ifndef __KONA_SDHCI_H
 #define __KONA_SDHCI_H
 
+#include <asm/types.h>
 int kona_sdhci_init(int dev_index, u32 min_clk, u32 quirks);
 
 #endif
diff --git a/arch/arm/include/asm/mach-imx/dma.h b/arch/arm/include/asm/mach-imx/dma.h
index 55eb84cb8e7e..c4f76e93291c 100644
--- a/arch/arm/include/asm/mach-imx/dma.h
+++ b/arch/arm/include/asm/mach-imx/dma.h
@@ -14,6 +14,7 @@
 #define __DMA_H__
 
 #include <asm/cache.h>
+#include <asm/types.h>
 #include <linux/list.h>
 #include <linux/compiler.h>
 
diff --git a/arch/arm/include/asm/mach-imx/gpio.h b/arch/arm/include/asm/mach-imx/gpio.h
index 1b7c9cd52499..fa6d2e0e7f47 100644
--- a/arch/arm/include/asm/mach-imx/gpio.h
+++ b/arch/arm/include/asm/mach-imx/gpio.h
@@ -9,6 +9,7 @@
 #define __ASM_ARCH_IMX_GPIO_H
 
 #if !(defined(__KERNEL_STRICT_NAMES) || defined(__ASSEMBLY__))
+#include <asm/types.h>
 /* GPIO registers */
 struct gpio_regs {
 	u32 gpio_dr;	/* data */
diff --git a/arch/arm/include/asm/mach-imx/hab.h b/arch/arm/include/asm/mach-imx/hab.h
index f89f750169b7..41e209290198 100644
--- a/arch/arm/include/asm/mach-imx/hab.h
+++ b/arch/arm/include/asm/mach-imx/hab.h
@@ -7,6 +7,7 @@
 #ifndef __SECURE_MX6Q_H__
 #define __SECURE_MX6Q_H__
 
+#include <compiler.h>
 #include <stdbool.h>
 #include <linux/types.h>
 #include <linux/compiler.h>
diff --git a/arch/arm/include/asm/mach-imx/imx-nandbcb.h b/arch/arm/include/asm/mach-imx/imx-nandbcb.h
index 74c9031d4e7c..4b3f4a53578e 100644
--- a/arch/arm/include/asm/mach-imx/imx-nandbcb.h
+++ b/arch/arm/include/asm/mach-imx/imx-nandbcb.h
@@ -7,6 +7,7 @@
 #ifndef _IMX_NAND_BCB_H_
 #define _IMX_NAND_BCB_H_
 
+#include <asm/types.h>
 #define FCB_FINGERPRINT		0x20424346      /* 'FCB' */
 #define FCB_VERSION_1		0x01000000
 #define FCB_FINGERPRINT_OFF	0x4		/* FCB fingerprint offset*/
diff --git a/arch/arm/include/asm/mach-imx/module_fuse.h b/arch/arm/include/asm/mach-imx/module_fuse.h
index a46fc3f1f8e0..781e62d6147e 100644
--- a/arch/arm/include/asm/mach-imx/module_fuse.h
+++ b/arch/arm/include/asm/mach-imx/module_fuse.h
@@ -6,6 +6,7 @@
 #ifndef __MODULE_FUSE_H__
 #define __MODULE_FUSE_H__
 
+#include <linux/types.h>
 enum fuse_module_type {
 	MODULE_TSC,
 	MODULE_ADC1,
diff --git a/arch/arm/include/asm/mach-imx/mxc_i2c.h b/arch/arm/include/asm/mach-imx/mxc_i2c.h
index 81fd9814447c..9a934c517b57 100644
--- a/arch/arm/include/asm/mach-imx/mxc_i2c.h
+++ b/arch/arm/include/asm/mach-imx/mxc_i2c.h
@@ -9,6 +9,7 @@
 #if CONFIG_IS_ENABLED(CLK)
 #include <clk.h>
 #endif
+#include <linux/types.h>
 
 struct i2c_pin_ctrl {
 	iomux_v3_cfg_t i2c_mode;
diff --git a/arch/arm/include/asm/mach-imx/rdc-sema.h b/arch/arm/include/asm/mach-imx/rdc-sema.h
index 70d6a76a9d7e..7b4d1fdf9525 100644
--- a/arch/arm/include/asm/mach-imx/rdc-sema.h
+++ b/arch/arm/include/asm/mach-imx/rdc-sema.h
@@ -13,6 +13,7 @@
  *      d3      d2      d1       d0    | master id  |  peri id
  *   d[x] means domain[x], x can be [3 - 0].
  */
+#include <asm/types.h>
 typedef u32 rdc_peri_cfg_t;
 typedef u32 rdc_ma_cfg_t;
 
diff --git a/arch/arm/include/asm/mach-imx/regs-apbh.h b/arch/arm/include/asm/mach-imx/regs-apbh.h
index 94c330c7f928..917e72e35ad5 100644
--- a/arch/arm/include/asm/mach-imx/regs-apbh.h
+++ b/arch/arm/include/asm/mach-imx/regs-apbh.h
@@ -237,6 +237,7 @@ struct mxs_apbh_regs {
 };
 #endif
 
+#include <linux/types.h>
 #endif
 
 #define	APBH_CTRL0_SFTRST				(1 << 31)
diff --git a/arch/arm/include/asm/mach-imx/regs-bch.h b/arch/arm/include/asm/mach-imx/regs-bch.h
index 5a149002e2a7..37b2e97f8e0d 100644
--- a/arch/arm/include/asm/mach-imx/regs-bch.h
+++ b/arch/arm/include/asm/mach-imx/regs-bch.h
@@ -17,6 +17,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_bch_regs {
 	mxs_reg_32(hw_bch_ctrl)
 	mxs_reg_32(hw_bch_status0)
diff --git a/arch/arm/include/asm/mach-imx/regs-gpmi.h b/arch/arm/include/asm/mach-imx/regs-gpmi.h
index 33daa53c45df..6723caef6a10 100644
--- a/arch/arm/include/asm/mach-imx/regs-gpmi.h
+++ b/arch/arm/include/asm/mach-imx/regs-gpmi.h
@@ -15,6 +15,7 @@
 #include <asm/mach-imx/regs-common.h>
 
 #ifndef	__ASSEMBLY__
+#include <linux/types.h>
 struct mxs_gpmi_regs {
 	mxs_reg_32(hw_gpmi_ctrl0)
 	mxs_reg_32(hw_gpmi_compare)
diff --git a/arch/arm/include/asm/mach-imx/regs-lcdif.h b/arch/arm/include/asm/mach-imx/regs-lcdif.h
index 587463879661..67b961931a69 100644
--- a/arch/arm/include/asm/mach-imx/regs-lcdif.h
+++ b/arch/arm/include/asm/mach-imx/regs-lcdif.h
@@ -14,6 +14,7 @@
 
 #ifndef	__ASSEMBLY__
 #include <asm/mach-imx/regs-common.h>
+#include <linux/types.h>
 
 struct mxs_lcdif_regs {
 	mxs_reg_32(hw_lcdif_ctrl)		/* 0x00 */
diff --git a/arch/arm/include/asm/mach-imx/sys_proto.h b/arch/arm/include/asm/mach-imx/sys_proto.h
index ae33d6a9a495..5c87a0fcf1a8 100644
--- a/arch/arm/include/asm/mach-imx/sys_proto.h
+++ b/arch/arm/include/asm/mach-imx/sys_proto.h
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/mach-imx/regs-common.h>
 #include <asm/mach-imx/module_fuse.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/bitops.h>
 #include "../arch-imx/cpu.h"
diff --git a/arch/arm/include/asm/mach-imx/syscounter.h b/arch/arm/include/asm/mach-imx/syscounter.h
index a2cae1edb81b..a291b8ebec36 100644
--- a/arch/arm/include/asm/mach-imx/syscounter.h
+++ b/arch/arm/include/asm/mach-imx/syscounter.h
@@ -7,6 +7,7 @@
 #define _ASM_ARCH_SYSTEM_COUNTER_H
 
 /* System Counter */
+#include <asm/types.h>
 struct sctr_regs {
 	u32 cntcr;
 	u32 cntsr;
diff --git a/arch/arm/include/asm/mach-imx/video.h b/arch/arm/include/asm/mach-imx/video.h
index 1fdc2de662a3..e31c68d12b9d 100644
--- a/arch/arm/include/asm/mach-imx/video.h
+++ b/arch/arm/include/asm/mach-imx/video.h
@@ -5,6 +5,7 @@
 
 #include <linux/fb.h>
 #include <ipu_pixfmt.h>
+#include <linux/types.h>
 
 struct display_info_t {
 	int	bus;
diff --git a/arch/arm/include/asm/omap_gpio.h b/arch/arm/include/asm/omap_gpio.h
index 151afa8f44ca..c25032453a83 100644
--- a/arch/arm/include/asm/omap_gpio.h
+++ b/arch/arm/include/asm/omap_gpio.h
@@ -21,6 +21,7 @@
 #define _GPIO_H
 
 #include <asm/arch/cpu.h>
+#include <linux/types.h>
 
 #if CONFIG_IS_ENABLED(DM_GPIO)
 
diff --git a/arch/arm/include/asm/omap_i2c.h b/arch/arm/include/asm/omap_i2c.h
index a6975401dabd..582d9c438672 100644
--- a/arch/arm/include/asm/omap_i2c.h
+++ b/arch/arm/include/asm/omap_i2c.h
@@ -14,6 +14,7 @@ struct omap_i2c_platdata {
 
 #endif
 
+#include <linux/types.h>
 enum {
 	OMAP_I2C_REV_V1 = 0,
 	OMAP_I2C_REV_V2 = 1,
diff --git a/arch/arm/include/asm/omap_mmc.h b/arch/arm/include/asm/omap_mmc.h
index 7933ad5a867a..fbc83164a2bd 100644
--- a/arch/arm/include/asm/omap_mmc.h
+++ b/arch/arm/include/asm/omap_mmc.h
@@ -28,6 +28,7 @@
 #include <mmc.h>
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 
 struct hsmmc {
diff --git a/arch/arm/include/asm/omap_musb.h b/arch/arm/include/asm/omap_musb.h
index b40ea005bec2..feedd2725afe 100644
--- a/arch/arm/include/asm/omap_musb.h
+++ b/arch/arm/include/asm/omap_musb.h
@@ -1,5 +1,6 @@
 /* SPDX-License-Identifier: GPL-2.0+ */
 /*
+#include <asm/types.h>
  * Board data structure for musb gadget on OMAPs
  *
  * Copyright (C) 2012, Ilya Yanok <ilya.yanok at gmail.com>
diff --git a/arch/arm/include/asm/omap_sec_common.h b/arch/arm/include/asm/omap_sec_common.h
index 30f0a9f5cbc8..3331dcb55c64 100644
--- a/arch/arm/include/asm/omap_sec_common.h
+++ b/arch/arm/include/asm/omap_sec_common.h
@@ -13,6 +13,7 @@
  * the variable argument list into the format expected by the ROM code before
  * triggering the actual low-level smc entry.
  */
+#include <linux/types.h>
 u32 secure_rom_call(u32 service, u32 proc_id, u32 flag, ...);
 
 /*
diff --git a/arch/arm/include/asm/secure.h b/arch/arm/include/asm/secure.h
index 64e5582c1f2a..ce332e6558f9 100644
--- a/arch/arm/include/asm/secure.h
+++ b/arch/arm/include/asm/secure.h
@@ -9,6 +9,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct secure_svc_tbl {
 	u32	id;
 #ifdef CONFIG_ARMV8_PSCI
diff --git a/arch/arm/include/asm/setjmp.h b/arch/arm/include/asm/setjmp.h
index 662bec863219..1e86def1de66 100644
--- a/arch/arm/include/asm/setjmp.h
+++ b/arch/arm/include/asm/setjmp.h
@@ -9,6 +9,7 @@
 
 /*
  * This really should be opaque, but the EFI implementation wrongly
+#include <asm/types.h>
  * assumes that a 'struct jmp_buf_data' is defined.
  */
 struct jmp_buf_data {
diff --git a/arch/arm/include/asm/setup.h b/arch/arm/include/asm/setup.h
index 3a4e902af146..a4e3c69c6b9a 100644
--- a/arch/arm/include/asm/setup.h
+++ b/arch/arm/include/asm/setup.h
@@ -13,6 +13,7 @@
  *
  * NOTE:
  *  This file contains two ways to pass information from the boot
+#include <asm/types.h>
  *  loader to the kernel. The old struct param_struct is deprecated,
  *  but it will be kept in the kernel for 5 years from now
  *  (2001). This will allow boot loaders to convert to the new struct
diff --git a/arch/arm/include/asm/system.h b/arch/arm/include/asm/system.h
index ce552944b701..2d5084b6d169 100644
--- a/arch/arm/include/asm/system.h
+++ b/arch/arm/include/asm/system.h
@@ -109,6 +109,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <linux/types.h>
 struct pt_regs;
 
 u64 get_page_table_size(void);
diff --git a/arch/arm/include/asm/ti-common/davinci_nand.h b/arch/arm/include/asm/ti-common/davinci_nand.h
index 28842c3b1552..dffcd9250baa 100644
--- a/arch/arm/include/asm/ti-common/davinci_nand.h
+++ b/arch/arm/include/asm/ti-common/davinci_nand.h
@@ -11,6 +11,7 @@
 
 #include <linux/mtd/rawnand.h>
 #include <asm/arch/hardware.h>
+#include <linux/types.h>
 
 #define NAND_READ_START  	0x00
 #define NAND_READ_END    	0x30
diff --git a/arch/arm/include/asm/ti-common/keystone_nav.h b/arch/arm/include/asm/ti-common/keystone_nav.h
index e577514428ad..b61b8a64183b 100644
--- a/arch/arm/include/asm/ti-common/keystone_nav.h
+++ b/arch/arm/include/asm/ti-common/keystone_nav.h
@@ -11,6 +11,7 @@
 
 #include <asm/arch/hardware.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #define QM_OK                    0
 #define QM_ERR                  -1
diff --git a/arch/arm/include/asm/ti-common/keystone_net.h b/arch/arm/include/asm/ti-common/keystone_net.h
index 0852ce80a641..90884643c391 100644
--- a/arch/arm/include/asm/ti-common/keystone_net.h
+++ b/arch/arm/include/asm/ti-common/keystone_net.h
@@ -13,6 +13,7 @@
 #include <phy.h>
 #ifndef __ASSEMBLY__
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 
 /* EMAC */
diff --git a/arch/arm/include/asm/ti-common/keystone_serdes.h b/arch/arm/include/asm/ti-common/keystone_serdes.h
index 623438856d59..a3ca1eff2c3c 100644
--- a/arch/arm/include/asm/ti-common/keystone_serdes.h
+++ b/arch/arm/include/asm/ti-common/keystone_serdes.h
@@ -10,6 +10,7 @@
 #define __TI_KEYSTONE_SERDES_H__
 
 /* SERDES Reference clock */
+#include <asm/types.h>
 enum ks2_serdes_clock {
 	SERDES_CLOCK_100M,		/* 100 MHz */
 	SERDES_CLOCK_122P88M,		/* 122.88 MHz */
diff --git a/arch/arm/include/asm/ti-common/sys_proto.h b/arch/arm/include/asm/ti-common/sys_proto.h
index a96a8382fb6e..f3db16e54d62 100644
--- a/arch/arm/include/asm/ti-common/sys_proto.h
+++ b/arch/arm/include/asm/ti-common/sys_proto.h
@@ -7,6 +7,7 @@
 #define _TI_COMMON_SYS_PROTO_H_
 
 #include <asm/global_data.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/include/asm/ti-common/ti-edma3.h b/arch/arm/include/asm/ti-common/ti-edma3.h
index 9abdbc88e40b..d5b98815a682 100644
--- a/arch/arm/include/asm/ti-common/ti-edma3.h
+++ b/arch/arm/include/asm/ti-common/ti-edma3.h
@@ -10,7 +10,9 @@
 #define _EDMA3_H_
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 #endif
 #include <linux/stddef.h>
 
diff --git a/arch/arm/include/asm/u-boot-arm.h b/arch/arm/include/asm/u-boot-arm.h
index 0b93cc48c50d..afb55b488187 100644
--- a/arch/arm/include/asm/u-boot-arm.h
+++ b/arch/arm/include/asm/u-boot-arm.h
@@ -15,6 +15,7 @@
 #ifndef __ASSEMBLY__
 
 /* for the following variables, see start.S */
+#include <linux/types.h>
 extern ulong IRQ_STACK_START;	/* top of IRQ stack */
 extern ulong FIQ_STACK_START;	/* top of FIQ stack */
 extern ulong _datarel_start_ofs;
diff --git a/arch/arm/include/asm/utils.h b/arch/arm/include/asm/utils.h
index eee60c50e993..481cbd64ff86 100644
--- a/arch/arm/include/asm/utils.h
+++ b/arch/arm/include/asm/utils.h
@@ -7,6 +7,7 @@
 #ifndef _UTILS_H_
 #define _UTILS_H_
 
+#include <asm/types.h>
 static inline s32 log_2_n_round_up(u32 n)
 {
 	s32 log2n = -1;
diff --git a/arch/arm/lib/bootm-fdt.c b/arch/arm/lib/bootm-fdt.c
index 72a86f7defe5..e21cf6c1a500 100644
--- a/arch/arm/lib/bootm-fdt.c
+++ b/arch/arm/lib/bootm-fdt.c
@@ -15,6 +15,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <fdt_support.h>
 #ifdef CONFIG_ARMV7_NONSEC
 #include <asm/armv7.h>
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
index a11fe7ed31eb..40ce3c7a04b7 100644
--- a/arch/arm/lib/bootm.c
+++ b/arch/arm/lib/bootm.c
@@ -14,6 +14,7 @@
 #include <common.h>
 #include <bootstage.h>
 #include <command.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <dm.h>
 #include <hang.h>
@@ -28,6 +29,7 @@
 #include <env.h>
 #include <image.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 #include <asm/byteorder.h>
 #include <linux/libfdt.h>
diff --git a/arch/arm/lib/cache-cp15.c b/arch/arm/lib/cache-cp15.c
index 39d51859ed76..b7f9baa74ac4 100644
--- a/arch/arm/lib/cache-cp15.c
+++ b/arch/arm/lib/cache-cp15.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <log.h>
 #include <stdio.h>
@@ -15,6 +16,7 @@
 #include <linux/compiler.h>
 #include <asm/armv7_mpu.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #if !(CONFIG_IS_ENABLED(SYS_ICACHE_OFF) && CONFIG_IS_ENABLED(SYS_DCACHE_OFF))
 
diff --git a/arch/arm/lib/cache.c b/arch/arm/lib/cache.c
index 6509052ddcf3..870d4c7d659f 100644
--- a/arch/arm/lib/cache.c
+++ b/arch/arm/lib/cache.c
@@ -7,6 +7,7 @@
 /* for now: just dummy functions to satisfy the linker */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <log.h>
 #include <malloc.h>
@@ -14,6 +15,7 @@
 #include <asm/cache.h>
 #include <asm/global_data.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/lib/cmd_boot.c b/arch/arm/lib/cmd_boot.c
index c905ecc4bd94..00d58816dca8 100644
--- a/arch/arm/lib/cmd_boot.c
+++ b/arch/arm/lib/cmd_boot.c
@@ -19,6 +19,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <linux/types.h>
 
 /*
  * ARMv7M does not support ARM instruction mode. However, the
diff --git a/arch/arm/lib/eabi_compat.c b/arch/arm/lib/eabi_compat.c
index 9e2912ffe393..3e13dbb6ab64 100644
--- a/arch/arm/lib/eabi_compat.c
+++ b/arch/arm/lib/eabi_compat.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 int raise (int signum)
 {
diff --git a/arch/arm/lib/gic-v3-its.c b/arch/arm/lib/gic-v3-its.c
index 4fc9f9b78334..6b884ac375ac 100644
--- a/arch/arm/lib/gic-v3-its.c
+++ b/arch/arm/lib/gic-v3-its.c
@@ -14,6 +14,7 @@
 #include <linux/kernel.h>
 #include <linux/printk.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 
 static u32 lpi_id_bits;
 
diff --git a/arch/arm/lib/image.c b/arch/arm/lib/image.c
index 6a8591488439..9e8a7d671fba 100644
--- a/arch/arm/lib/image.c
+++ b/arch/arm/lib/image.c
@@ -7,11 +7,13 @@
 #include <common.h>
 #include <image.h>
 #include <mapmem.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/lib/interrupts.c b/arch/arm/lib/interrupts.c
index af65144f7a78..fafe4b04d9b9 100644
--- a/arch/arm/lib/interrupts.c
+++ b/arch/arm/lib/interrupts.c
@@ -27,6 +27,7 @@
 #include <asm/proc-armv/ptrace.h>
 #include <asm/ptrace.h>
 #include <asm/u-boot-arm.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c
index 00e052d9a862..4f342c9da3eb 100644
--- a/arch/arm/lib/interrupts_64.c
+++ b/arch/arm/lib/interrupts_64.c
@@ -5,11 +5,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/global_data.h>
 #include <asm/ptrace.h>
 #include <irq_func.h>
+#include <asm/types.h>
 #include <linux/compiler.h>
 #include <efi_loader.h>
 
diff --git a/arch/arm/lib/reloc_aarch64_efi.c b/arch/arm/lib/reloc_aarch64_efi.c
index 1aa57dbc80de..5aab6acec5aa 100644
--- a/arch/arm/lib/reloc_aarch64_efi.c
+++ b/arch/arm/lib/reloc_aarch64_efi.c
@@ -35,6 +35,7 @@
 */
 
 #include <efi.h>
+#include <linux/types.h>
 
 #include <elf.h>
 
diff --git a/arch/arm/lib/reloc_arm_efi.c b/arch/arm/lib/reloc_arm_efi.c
index 9103c035c541..bf07a63c4873 100644
--- a/arch/arm/lib/reloc_arm_efi.c
+++ b/arch/arm/lib/reloc_arm_efi.c
@@ -13,6 +13,7 @@
 
 #include <efi.h>
 #include <elf.h>
+#include <linux/types.h>
 
 efi_status_t EFIAPI _relocate(long ldbase, Elf32_Dyn *dyn)
 {
diff --git a/arch/arm/lib/reset.c b/arch/arm/lib/reset.c
index 4f1a768bfe13..f427c60deca5 100644
--- a/arch/arm/lib/reset.c
+++ b/arch/arm/lib/reset.c
@@ -22,6 +22,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <irq_func.h>
 #include <linux/delay.h>
diff --git a/arch/arm/lib/semihosting.c b/arch/arm/lib/semihosting.c
index 8b09d87cb169..685351c59f99 100644
--- a/arch/arm/lib/semihosting.c
+++ b/arch/arm/lib/semihosting.c
@@ -18,6 +18,7 @@
 #include <stdio.h>
 #include <vsprintf.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define SYSOPEN		0x01
 #define SYSCLOSE	0x02
diff --git a/arch/arm/lib/spl.c b/arch/arm/lib/spl.c
index b2b54f28fc4b..d0c370270d5a 100644
--- a/arch/arm/lib/spl.c
+++ b/arch/arm/lib/spl.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <config.h>
 #include <init.h>
 #include <log.h>
@@ -17,6 +18,7 @@
 #include <asm/global_data.h>
 #include <linux/compiler.h>
 #include <asm/mach-types.h>
+#include <linux/types.h>
 
 #ifndef CONFIG_SPL_DM
 /* Pointer to as well as the global data structure for SPL */
diff --git a/arch/arm/lib/zimage.c b/arch/arm/lib/zimage.c
index b5155c2a9143..08f55927db51 100644
--- a/arch/arm/lib/zimage.c
+++ b/arch/arm/lib/zimage.c
@@ -7,8 +7,10 @@
  * Copyright (C) 2012 Marek Vasut <marek.vasut at gmail.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <image.h>
 #include <stdio.h>
+#include <linux/types.h>
 
 #define	LINUX_ARM_ZIMAGE_MAGIC	0x016f2818
 #define	BAREBOX_IMAGE_MAGIC	0x00786f62
diff --git a/arch/arm/mach-aspeed/ast2500/sdram_ast2500.c b/arch/arm/mach-aspeed/ast2500/sdram_ast2500.c
index 9eefeef5fb33..e6618d4c76eb 100644
--- a/arch/arm/mach-aspeed/ast2500/sdram_ast2500.c
+++ b/arch/arm/mach-aspeed/ast2500/sdram_ast2500.c
@@ -22,6 +22,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <dt-bindings/clock/ast2500-scu.h>
+#include <linux/types.h>
 
 /* These configuration parameters are taken from Aspeed SDK */
 #define DDR4_MR46_MODE		0x08000000
diff --git a/arch/arm/mach-aspeed/ast_wdt.c b/arch/arm/mach-aspeed/ast_wdt.c
index 5bc442ef33ce..461d20303e36 100644
--- a/arch/arm/mach-aspeed/ast_wdt.c
+++ b/arch/arm/mach-aspeed/ast_wdt.c
@@ -7,6 +7,7 @@
 #include <asm/io.h>
 #include <asm/arch/wdt.h>
 #include <linux/err.h>
+#include <linux/types.h>
 
 u32 ast_reset_mode_from_flags(ulong flags)
 {
diff --git a/arch/arm/mach-at91/arm920t/clock.c b/arch/arm/mach-at91/arm920t/clock.c
index 57cb159d1f60..b73864c69775 100644
--- a/arch/arm/mach-at91/arm920t/clock.c
+++ b/arch/arm/mach-at91/arm920t/clock.c
@@ -15,6 +15,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_pmc.h>
 #include <asm/arch/clk.h>
+#include <linux/types.h>
 
 #if !defined(CONFIG_AT91FAMILY)
 # error You need to define CONFIG_AT91FAMILY in your board config!
diff --git a/arch/arm/mach-at91/arm920t/reset.c b/arch/arm/mach-at91/arm920t/reset.c
index d92bc57d6690..a264b2b1c54c 100644
--- a/arch/arm/mach-at91/arm920t/reset.c
+++ b/arch/arm/mach-at91/arm920t/reset.c
@@ -18,6 +18,7 @@
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_st.h>
+#include <linux/types.h>
 
 void  __attribute__((weak)) board_reset(void)
 {
diff --git a/arch/arm/mach-at91/arm920t/timer.c b/arch/arm/mach-at91/arm920t/timer.c
index c400e8781356..fa0e582f062b 100644
--- a/arch/arm/mach-at91/arm920t/timer.c
+++ b/arch/arm/mach-at91/arm920t/timer.c
@@ -18,6 +18,7 @@
 #include <time.h>
 #include <asm/global_data.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
diff --git a/arch/arm/mach-at91/arm926ejs/clock.c b/arch/arm/mach-at91/arm926ejs/clock.c
index 97e45fffd1d1..6a742766d4ec 100644
--- a/arch/arm/mach-at91/arm926ejs/clock.c
+++ b/arch/arm/mach-at91/arm926ejs/clock.c
@@ -15,6 +15,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_pmc.h>
 #include <asm/arch/clk.h>
+#include <linux/types.h>
 
 #if !defined(CONFIG_AT91FAMILY)
 # error You need to define CONFIG_AT91FAMILY in your board config!
diff --git a/arch/arm/mach-at91/arm926ejs/cpu.c b/arch/arm/mach-at91/arm926ejs/cpu.c
index 4dbb806979de..0b9cdfac7f6e 100644
--- a/arch/arm/mach-at91/arm926ejs/cpu.c
+++ b/arch/arm/mach-at91/arm926ejs/cpu.c
@@ -15,6 +15,7 @@
 #include <asm/arch/at91_pit.h>
 #include <asm/arch/at91_gpbr.h>
 #include <asm/arch/clk.h>
+#include <linux/types.h>
 
 #ifndef CONFIG_SYS_AT91_MAIN_CLOCK
 #define CONFIG_SYS_AT91_MAIN_CLOCK 0
diff --git a/arch/arm/mach-at91/arm926ejs/eflash.c b/arch/arm/mach-at91/arm926ejs/eflash.c
index ca52791d5bc4..9a727b5c1635 100644
--- a/arch/arm/mach-at91/arm926ejs/eflash.c
+++ b/arch/arm/mach-at91/arm926ejs/eflash.c
@@ -52,6 +52,7 @@
 #include <asm/arch/at91_common.h>
 #include <asm/arch/at91_eefc.h>
 #include <asm/arch/at91_dbu.h>
+#include <linux/types.h>
 
 /* checks to detect configuration errors */
 #if CONFIG_SYS_MAX_FLASH_BANKS!=1
diff --git a/arch/arm/mach-at91/arm926ejs/reset.c b/arch/arm/mach-at91/arm926ejs/reset.c
index 56fbbd991e5d..6a604d2432c1 100644
--- a/arch/arm/mach-at91/arm926ejs/reset.c
+++ b/arch/arm/mach-at91/arm926ejs/reset.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_rstc.h>
+#include <linux/types.h>
 
 /* Reset the cpu by telling the reset controller to do so */
 void reset_cpu(ulong ignored)
diff --git a/arch/arm/mach-at91/arm926ejs/timer.c b/arch/arm/mach-at91/arm926ejs/timer.c
index a8cf0e4bd799..b479feeca4d3 100644
--- a/arch/arm/mach-at91/arm926ejs/timer.c
+++ b/arch/arm/mach-at91/arm926ejs/timer.c
@@ -14,6 +14,7 @@
 #include <asm/arch/at91_pit.h>
 #include <asm/arch/clk.h>
 #include <div64.h>
+#include <linux/types.h>
 
 #if !defined(CONFIG_AT91FAMILY)
 # error You need to define CONFIG_AT91FAMILY in your board config!
diff --git a/arch/arm/mach-at91/armv7/clock.c b/arch/arm/mach-at91/armv7/clock.c
index 7fab52d1e7e3..984b9033e414 100644
--- a/arch/arm/mach-at91/armv7/clock.c
+++ b/arch/arm/mach-at91/armv7/clock.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-at91/armv7/cpu.c b/arch/arm/mach-at91/armv7/cpu.c
index 22a03c82a2a0..a1fa2ab9e597 100644
--- a/arch/arm/mach-at91/armv7/cpu.c
+++ b/arch/arm/mach-at91/armv7/cpu.c
@@ -18,6 +18,7 @@
 #include <asm/arch/at91_pit.h>
 #include <asm/arch/at91_gpbr.h>
 #include <asm/arch/clk.h>
+#include <linux/types.h>
 
 #ifndef CONFIG_SYS_AT91_MAIN_CLOCK
 #define CONFIG_SYS_AT91_MAIN_CLOCK 0
diff --git a/arch/arm/mach-at91/armv7/reset.c b/arch/arm/mach-at91/armv7/reset.c
index 8f4c81d1afd5..08e0e69359de 100644
--- a/arch/arm/mach-at91/armv7/reset.c
+++ b/arch/arm/mach-at91/armv7/reset.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_rstc.h>
+#include <linux/types.h>
 
 /* Reset the cpu by telling the reset controller to do so */
 void reset_cpu(ulong ignored)
diff --git a/arch/arm/mach-at91/armv7/timer.c b/arch/arm/mach-at91/armv7/timer.c
index 1f54c5dcad98..edb9eefe71e5 100644
--- a/arch/arm/mach-at91/armv7/timer.c
+++ b/arch/arm/mach-at91/armv7/timer.c
@@ -17,6 +17,7 @@
 #include <asm/arch/at91_pit.h>
 #include <asm/arch/clk.h>
 #include <div64.h>
+#include <linux/types.h>
 
 #if !defined(CONFIG_AT91FAMILY)
 # error You need to define CONFIG_AT91FAMILY in your board config!
diff --git a/arch/arm/mach-at91/atmel_sfr.c b/arch/arm/mach-at91/atmel_sfr.c
index c2677c51c0ce..a80afaa90a12 100644
--- a/arch/arm/mach-at91/atmel_sfr.c
+++ b/arch/arm/mach-at91/atmel_sfr.c
@@ -9,6 +9,7 @@
 #include <asm/hardware.h>
 #include <asm/io.h>
 #include <asm/arch/at91_sfr.h>
+#include <asm/types.h>
 
 #if defined(CONFIG_SAMA5D2) || defined(CONFIG_SAMA5D4)
 void redirect_int_from_saic_to_aic(void)
diff --git a/arch/arm/mach-at91/clock.c b/arch/arm/mach-at91/clock.c
index f9723bd145e4..714ff6b0d31c 100644
--- a/arch/arm/mach-at91/clock.c
+++ b/arch/arm/mach-at91/clock.c
@@ -13,6 +13,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_pmc.h>
 #include <asm/arch/at91_wdt.h>
+#include <linux/types.h>
 
 #define EN_UPLL_TIMEOUT		500
 
diff --git a/arch/arm/mach-at91/include/mach/at91_common.h b/arch/arm/mach-at91/include/mach/at91_common.h
index f3551832f3aa..a226f7eea729 100644
--- a/arch/arm/mach-at91/include/mach/at91_common.h
+++ b/arch/arm/mach-at91/include/mach/at91_common.h
@@ -9,6 +9,7 @@
 #define AT91_COMMON_H
 
 #include <stdbool.h>
+#include <asm/types.h>
 void at91_can_hw_init(void);
 void at91_gmac_hw_init(void);
 void at91_macb_hw_init(void);
diff --git a/arch/arm/mach-at91/include/mach/at91_dbu.h b/arch/arm/mach-at91/include/mach/at91_dbu.h
index 91bb686bc10a..5592cb903ce3 100644
--- a/arch/arm/mach-at91/include/mach/at91_dbu.h
+++ b/arch/arm/mach-at91/include/mach/at91_dbu.h
@@ -12,6 +12,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct at91_dbu {
 	u32	cr;	/* Control Register WO */
 	u32	mr;	/* Mode Register  RW */
diff --git a/arch/arm/mach-at91/include/mach/at91_eefc.h b/arch/arm/mach-at91/include/mach/at91_eefc.h
index e7bb2bfecbad..6c38f51e980d 100644
--- a/arch/arm/mach-at91/include/mach/at91_eefc.h
+++ b/arch/arm/mach-at91/include/mach/at91_eefc.h
@@ -12,6 +12,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct at91_eefc {
 	u32	fmr;	/* Flash Mode Register RW */
 	u32	fcr;	/* Flash Command Register WO */
diff --git a/arch/arm/mach-at91/include/mach/at91_emac.h b/arch/arm/mach-at91/include/mach/at91_emac.h
index 44b943be3dc3..397ed032d446 100644
--- a/arch/arm/mach-at91/include/mach/at91_emac.h
+++ b/arch/arm/mach-at91/include/mach/at91_emac.h
@@ -8,6 +8,7 @@
 #ifndef AT91_H
 #define AT91_H
 
+#include <asm/types.h>
 typedef struct at91_emac {
 	u32	 ctl;
 	u32	 cfg;
diff --git a/arch/arm/mach-at91/include/mach/at91_gpbr.h b/arch/arm/mach-at91/include/mach/at91_gpbr.h
index ac1bb1cf01a9..576685a29209 100644
--- a/arch/arm/mach-at91/include/mach/at91_gpbr.h
+++ b/arch/arm/mach-at91/include/mach/at91_gpbr.h
@@ -32,6 +32,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct at91_gpbr {
 	u32 reg[4];
 } at91_gpbr_t;
diff --git a/arch/arm/mach-at91/include/mach/at91_matrix.h b/arch/arm/mach-at91/include/mach/at91_matrix.h
index d98fcf51051d..a7c9281356fc 100644
--- a/arch/arm/mach-at91/include/mach/at91_matrix.h
+++ b/arch/arm/mach-at91/include/mach/at91_matrix.h
@@ -23,6 +23,7 @@
 #define AT91_ASM_MATRIX_MCFG	ATMEL_BASE_MATRIX
 
 #else
+#include <asm/types.h>
 #if defined(CONFIG_AT91SAM9260) || defined(CONFIG_AT91SAM9G20)
 #define AT91_MATRIX_MASTERS	6
 #define AT91_MATRIX_SLAVES	5
diff --git a/arch/arm/mach-at91/include/mach/at91_mc.h b/arch/arm/mach-at91/include/mach/at91_mc.h
index 18b0e163c099..4d7dd361b149 100644
--- a/arch/arm/mach-at91/include/mach/at91_mc.h
+++ b/arch/arm/mach-at91/include/mach/at91_mc.h
@@ -15,6 +15,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct at91_ebi {
 	u32 	csa;		/* 0x00 Chip Select Assignment Register */
 	u32	cfgr;		/* 0x04 Configuration Register */
diff --git a/arch/arm/mach-at91/include/mach/at91_pdc.h b/arch/arm/mach-at91/include/mach/at91_pdc.h
index a855a7177ac8..16115b2e81b9 100644
--- a/arch/arm/mach-at91/include/mach/at91_pdc.h
+++ b/arch/arm/mach-at91/include/mach/at91_pdc.h
@@ -6,6 +6,7 @@
 #ifndef AT91_PDC_H
 #define AT91_PDC_H
 
+#include <asm/types.h>
 typedef struct at91_pdc {
 	u32	rpr;		/* 0x100 Receive Pointer Register */
 	u32	rcr;		/* 0x104 Receive Counter Register */
diff --git a/arch/arm/mach-at91/include/mach/at91_pio.h b/arch/arm/mach-at91/include/mach/at91_pio.h
index f51e47e55d53..60e36e753e8c 100644
--- a/arch/arm/mach-at91/include/mach/at91_pio.h
+++ b/arch/arm/mach-at91/include/mach/at91_pio.h
@@ -35,6 +35,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct at91_port {
 	u32	per;		/* 0x00 PIO Enable Register */
 	u32	pdr;		/* 0x04 PIO Disable Register */
diff --git a/arch/arm/mach-at91/include/mach/at91_pit.h b/arch/arm/mach-at91/include/mach/at91_pit.h
index dfaf2e02608e..bed0304a47f0 100644
--- a/arch/arm/mach-at91/include/mach/at91_pit.h
+++ b/arch/arm/mach-at91/include/mach/at91_pit.h
@@ -12,6 +12,7 @@
 #ifndef AT91_PIT_H
 #define AT91_PIT_H
 
+#include <asm/types.h>
 typedef struct at91_pit {
 	u32	mr;	/* 0x00 Mode Register */
 	u32	sr;	/* 0x04 Status Register */
diff --git a/arch/arm/mach-at91/include/mach/at91_rstc.h b/arch/arm/mach-at91/include/mach/at91_rstc.h
index 11ffe4454a6e..c1846de3ae15 100644
--- a/arch/arm/mach-at91/include/mach/at91_rstc.h
+++ b/arch/arm/mach-at91/include/mach/at91_rstc.h
@@ -18,6 +18,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct at91_rstc {
 	u32	cr;	/* Reset Controller Control Register */
 	u32	sr;	/* Reset Controller Status Register */
diff --git a/arch/arm/mach-at91/include/mach/at91_rtt.h b/arch/arm/mach-at91/include/mach/at91_rtt.h
index ba88c441e330..3d39328873f4 100644
--- a/arch/arm/mach-at91/include/mach/at91_rtt.h
+++ b/arch/arm/mach-at91/include/mach/at91_rtt.h
@@ -12,6 +12,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 typedef struct at91_rtt {
 	u32	mr;	/* Mode Register   RW 0x00008000 */
 	u32	ar;	/* Alarm Register  RW 0xFFFFFFFF */
diff --git a/arch/arm/mach-at91/include/mach/at91_sfr.h b/arch/arm/mach-at91/include/mach/at91_sfr.h
index 4517df41bce0..1044f6b77a9d 100644
--- a/arch/arm/mach-at91/include/mach/at91_sfr.h
+++ b/arch/arm/mach-at91/include/mach/at91_sfr.h
@@ -9,6 +9,7 @@
 #ifndef __AT91_SFR_H
 #define __AT91_SFR_H
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 struct atmel_sfr {
 	u32 reserved1;	/* 0x00 */
diff --git a/arch/arm/mach-at91/include/mach/at91_spi.h b/arch/arm/mach-at91/include/mach/at91_spi.h
index ce7bbf276d04..4f1f5fca3ba2 100644
--- a/arch/arm/mach-at91/include/mach/at91_spi.h
+++ b/arch/arm/mach-at91/include/mach/at91_spi.h
@@ -13,6 +13,7 @@
 #define AT91_SPI_H
 
 #include <asm/arch/at91_pdc.h>
+#include <asm/types.h>
 
 typedef struct at91_spi {
 	u32		cr;		/* 0x00 Control Register */
diff --git a/arch/arm/mach-at91/include/mach/at91_st.h b/arch/arm/mach-at91/include/mach/at91_st.h
index ec4658a39177..24f5bad60174 100644
--- a/arch/arm/mach-at91/include/mach/at91_st.h
+++ b/arch/arm/mach-at91/include/mach/at91_st.h
@@ -6,6 +6,7 @@
 #ifndef AT91_ST_H
 #define AT91_ST_H
 
+#include <asm/types.h>
 typedef struct at91_st {
 
 	u32	cr;
diff --git a/arch/arm/mach-at91/include/mach/at91_tc.h b/arch/arm/mach-at91/include/mach/at91_tc.h
index eb6950ab28c1..0ddc01034293 100644
--- a/arch/arm/mach-at91/include/mach/at91_tc.h
+++ b/arch/arm/mach-at91/include/mach/at91_tc.h
@@ -6,6 +6,7 @@
 #ifndef AT91_TC_H
 #define AT91_TC_H
 
+#include <asm/types.h>
 typedef struct at91_tcc {
 	u32		ccr;	/* 0x00 Channel Control Register */
 	u32		cmr;	/* 0x04 Channel Mode Register */
diff --git a/arch/arm/mach-at91/include/mach/at91_wdt.h b/arch/arm/mach-at91/include/mach/at91_wdt.h
index 8ef8e007d776..1f1d81ef1ca5 100644
--- a/arch/arm/mach-at91/include/mach/at91_wdt.h
+++ b/arch/arm/mach-at91/include/mach/at91_wdt.h
@@ -19,6 +19,8 @@
 
 #else
 
+#include <compiler.h>
+#include <asm/types.h>
 typedef struct at91_wdt {
 	u32	cr;
 	u32	mr;
diff --git a/arch/arm/mach-at91/include/mach/at91sam9260_matrix.h b/arch/arm/mach-at91/include/mach/at91sam9260_matrix.h
index 7271129f6be9..bb39119d55f4 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9260_matrix.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9260_matrix.h
@@ -14,6 +14,7 @@
 #ifndef __ASSEMBLY__
 
 /*
+#include <asm/types.h>
  * This struct defines access to the matrix' maximum of
  * 16 masters and 16 slaves.
  * However, on the AT91SAM9260/9G20/9XE there exist only
diff --git a/arch/arm/mach-at91/include/mach/at91sam9261_matrix.h b/arch/arm/mach-at91/include/mach/at91sam9261_matrix.h
index b856759b1db4..d2f3345b4bde 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9261_matrix.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9261_matrix.h
@@ -13,6 +13,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 struct at91_matrix {
 	u32	mcfg;	/* Master Configuration Registers */
 	u32	scfg[5];	/* Slave Configuration Registers */
diff --git a/arch/arm/mach-at91/include/mach/at91sam9263_matrix.h b/arch/arm/mach-at91/include/mach/at91sam9263_matrix.h
index f08d2eb1fac9..fd2aaad5a176 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9263_matrix.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9263_matrix.h
@@ -14,6 +14,7 @@
 #ifndef __ASSEMBLY__
 
 /*
+#include <asm/types.h>
  * This struct defines access to the matrix' maximum of
  * 16 masters and 16 slaves.
  * Note: not all masters/slaves are available
diff --git a/arch/arm/mach-at91/include/mach/at91sam9_sdramc.h b/arch/arm/mach-at91/include/mach/at91sam9_sdramc.h
index 64abf70c5b4d..9feabe9252f8 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9_sdramc.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9_sdramc.h
@@ -25,6 +25,7 @@
 #define AT91_ASM_SDRAMC_MDR	(ATMEL_BASE_SDRAMC + 0x24)
 
 #else
+#include <asm/types.h>
 struct sdramc_reg {
 	u32	mr;
 	u32	tr;
diff --git a/arch/arm/mach-at91/include/mach/at91sam9_smc.h b/arch/arm/mach-at91/include/mach/at91sam9_smc.h
index 404ffaad4426..f4045b1173e8 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9_smc.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9_smc.h
@@ -24,6 +24,7 @@
 #define AT91_ASM_SMC_MODE0	(ATMEL_BASE_SMC + 0x0C)
 
 #else
+#include <asm/types.h>
 
 typedef struct	at91_cs {
 	u32	setup;		/* 0x00 SMC Setup Register */
diff --git a/arch/arm/mach-at91/include/mach/at91sam9g45_matrix.h b/arch/arm/mach-at91/include/mach/at91sam9g45_matrix.h
index 62d4901bc1c9..fde18a212e88 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9g45_matrix.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9g45_matrix.h
@@ -13,6 +13,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 struct at91_matrix {
 	u32	mcfg[16];
 	u32	scfg[16];
diff --git a/arch/arm/mach-at91/include/mach/at91sam9rl_matrix.h b/arch/arm/mach-at91/include/mach/at91sam9rl_matrix.h
index 295f768b5526..b798c181b465 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9rl_matrix.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9rl_matrix.h
@@ -16,6 +16,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 struct at91_matrix {
 	u32	mcfg[16];	/* Master Configuration Registers */
 	u32	scfg[16];	/* Slave Configuration Registers */
diff --git a/arch/arm/mach-at91/include/mach/at91sam9x5_matrix.h b/arch/arm/mach-at91/include/mach/at91sam9x5_matrix.h
index 8288090d5a15..ddb6b1aec89e 100644
--- a/arch/arm/mach-at91/include/mach/at91sam9x5_matrix.h
+++ b/arch/arm/mach-at91/include/mach/at91sam9x5_matrix.h
@@ -14,6 +14,7 @@
 #ifndef __ASSEMBLY__
 
 /* AT91SAM9N12 Matrix definition is a subset of AT91SAM9X5. */
+#include <asm/types.h>
 struct at91_matrix {
 	u32	mcfg[16];
 	u32	scfg[16];
diff --git a/arch/arm/mach-at91/include/mach/atmel_mpddrc.h b/arch/arm/mach-at91/include/mach/atmel_mpddrc.h
index 40ec87e2ff94..d68c93cdd3cf 100644
--- a/arch/arm/mach-at91/include/mach/atmel_mpddrc.h
+++ b/arch/arm/mach-at91/include/mach/atmel_mpddrc.h
@@ -10,6 +10,7 @@
 #ifndef __ATMEL_MPDDRC_H__
 #define __ATMEL_MPDDRC_H__
 
+#include <asm/types.h>
 struct atmel_mpddrc_config {
 	u32 mr;
 	u32 rtr;
diff --git a/arch/arm/mach-at91/include/mach/atmel_pio4.h b/arch/arm/mach-at91/include/mach/atmel_pio4.h
index f348b05bc852..c87ca43d9f92 100644
--- a/arch/arm/mach-at91/include/mach/atmel_pio4.h
+++ b/arch/arm/mach-at91/include/mach/atmel_pio4.h
@@ -9,6 +9,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 struct atmel_pio4_port {
 	u32 mskr;		/* 0x00 PIO Mask Register */
diff --git a/arch/arm/mach-at91/include/mach/atmel_sdhci.h b/arch/arm/mach-at91/include/mach/atmel_sdhci.h
index 48b6bd22368e..5c237a0a6876 100644
--- a/arch/arm/mach-at91/include/mach/atmel_sdhci.h
+++ b/arch/arm/mach-at91/include/mach/atmel_sdhci.h
@@ -7,6 +7,7 @@
 #ifndef __ATMEL_SDHCI_H
 #define __ATMEL_SDHCI_H
 
+#include <asm/types.h>
 int atmel_sdhci_init(void *regbase, u32 id);
 
 #endif
diff --git a/arch/arm/mach-at91/include/mach/atmel_serial.h b/arch/arm/mach-at91/include/mach/atmel_serial.h
index c53a509ff8bb..6f348225645d 100644
--- a/arch/arm/mach-at91/include/mach/atmel_serial.h
+++ b/arch/arm/mach-at91/include/mach/atmel_serial.h
@@ -7,6 +7,7 @@
 #define _ATMEL_SERIAL_H
 
 /* Information about a serial port */
+#include <linux/types.h>
 struct atmel_serial_platdata {
 	uint32_t base_addr;
 };
diff --git a/arch/arm/mach-at91/include/mach/clk.h b/arch/arm/mach-at91/include/mach/clk.h
index c1d92739e472..f6ceea2b2b28 100644
--- a/arch/arm/mach-at91/include/mach/clk.h
+++ b/arch/arm/mach-at91/include/mach/clk.h
@@ -11,6 +11,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_pmc.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 
 #define GCK_CSS_SLOW_CLK	0
 #define GCK_CSS_MAIN_CLK	1
diff --git a/arch/arm/mach-at91/include/mach/gpio.h b/arch/arm/mach-at91/include/mach/gpio.h
index 575c6436ad3d..1cbe1fcba168 100644
--- a/arch/arm/mach-at91/include/mach/gpio.h
+++ b/arch/arm/mach-at91/include/mach/gpio.h
@@ -12,6 +12,7 @@
 #include <linux/errno.h>
 #include <asm/arch/at91_pio.h>
 #include <asm/arch/hardware.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_ATMEL_LEGACY
 
diff --git a/arch/arm/mach-at91/include/mach/sama5_matrix.h b/arch/arm/mach-at91/include/mach/sama5_matrix.h
index 2a92d7016103..8f315efdb10b 100644
--- a/arch/arm/mach-at91/include/mach/sama5_matrix.h
+++ b/arch/arm/mach-at91/include/mach/sama5_matrix.h
@@ -9,6 +9,7 @@
 #ifndef __SAMA5_MATRIX_H
 #define __SAMA5_MATRIX_H
 
+#include <asm/types.h>
 struct atmel_matrix {
 	u32 mcfg[16];	/* 0x00 ~ 0x3c: Master Configuration Register */
 	u32 scfg[16];	/* 0x40 ~ 0x7c: Slave Configuration Register */
diff --git a/arch/arm/mach-at91/include/mach/sama5d2_smc.h b/arch/arm/mach-at91/include/mach/sama5d2_smc.h
index 928a078f5f49..03f04af93026 100644
--- a/arch/arm/mach-at91/include/mach/sama5d2_smc.h
+++ b/arch/arm/mach-at91/include/mach/sama5d2_smc.h
@@ -16,6 +16,7 @@
 #define AT91_ASM_SMC_TIMINGS0	(ATMEL_BASE_SMC + 0x70c)
 #define AT91_ASM_SMC_MODE0	(ATMEL_BASE_SMC + 0x710)
 #else
+#include <asm/types.h>
 struct at91_cs {
 	u32	setup;		/* 0x600 SMC Setup Register */
 	u32	pulse;		/* 0x604 SMC Pulse Register */
diff --git a/arch/arm/mach-at91/include/mach/sama5d3_smc.h b/arch/arm/mach-at91/include/mach/sama5d3_smc.h
index 547e7b72f4a0..9c2b8461b704 100644
--- a/arch/arm/mach-at91/include/mach/sama5d3_smc.h
+++ b/arch/arm/mach-at91/include/mach/sama5d3_smc.h
@@ -16,6 +16,7 @@
 #define AT91_ASM_SMC_TIMINGS0	(ATMEL_BASE_SMC + 0x60c)
 #define AT91_ASM_SMC_MODE0	(ATMEL_BASE_SMC + 0x610)
 #else
+#include <asm/types.h>
 struct at91_cs {
 	u32	setup;		/* 0x600 SMC Setup Register */
 	u32	pulse;		/* 0x604 SMC Pulse Register */
diff --git a/arch/arm/mach-at91/mpddrc.c b/arch/arm/mach-at91/mpddrc.c
index 5422c05456e0..a2bcf4924c81 100644
--- a/arch/arm/mach-at91/mpddrc.c
+++ b/arch/arm/mach-at91/mpddrc.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/atmel_mpddrc.h>
 #include <asm/arch/at91_common.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #define SAMA5D3_MPDDRC_VERSION		0x140
diff --git a/arch/arm/mach-at91/spl.c b/arch/arm/mach-at91/spl.c
index 217fcfa66895..32e154922bea 100644
--- a/arch/arm/mach-at91/spl.c
+++ b/arch/arm/mach-at91/spl.c
@@ -12,6 +12,7 @@
 #include <asm/arch/at91_wdt.h>
 #include <asm/arch/clk.h>
 #include <spl.h>
+#include <asm/types.h>
 
 #if !defined(CONFIG_WDT_AT91)
 void at91_disable_wdt(void)
diff --git a/arch/arm/mach-at91/spl_at91.c b/arch/arm/mach-at91/spl_at91.c
index d0c732539248..e3b85d3c541a 100644
--- a/arch/arm/mach-at91/spl_at91.c
+++ b/arch/arm/mach-at91/spl_at91.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <hang.h>
 #include <init.h>
 #include <log.h>
@@ -21,6 +22,7 @@
 #include <asm/arch/at91_wdt.h>
 #include <asm/arch/clk.h>
 #include <spl.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-at91/spl_atmel.c b/arch/arm/mach-at91/spl_atmel.c
index 23588e79f949..9442de6ee5f7 100644
--- a/arch/arm/mach-at91/spl_atmel.c
+++ b/arch/arm/mach-at91/spl_atmel.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <hang.h>
 #include <init.h>
 #include <log.h>
@@ -16,6 +17,7 @@
 #include <asm/arch/at91_wdt.h>
 #include <asm/arch/clk.h>
 #include <spl.h>
+#include <linux/types.h>
 
 static void switch_to_main_crystal_osc(void)
 {
diff --git a/arch/arm/mach-bcm283x/include/mach/gpio.h b/arch/arm/mach-bcm283x/include/mach/gpio.h
index 3263de9a352b..840388815a1b 100644
--- a/arch/arm/mach-bcm283x/include/mach/gpio.h
+++ b/arch/arm/mach-bcm283x/include/mach/gpio.h
@@ -8,6 +8,7 @@
 #ifndef _BCM2835_GPIO_H_
 #define _BCM2835_GPIO_H_
 
+#include <asm/types.h>
 #define BCM2835_GPIO_COUNT		54
 
 #define BCM2835_GPIO_FSEL_MASK		0x7
diff --git a/arch/arm/mach-bcm283x/include/mach/mbox.h b/arch/arm/mach-bcm283x/include/mach/mbox.h
index 70029eefdedf..61586eb85914 100644
--- a/arch/arm/mach-bcm283x/include/mach/mbox.h
+++ b/arch/arm/mach-bcm283x/include/mach/mbox.h
@@ -6,7 +6,9 @@
 #ifndef _BCM2835_MBOX_H
 #define _BCM2835_MBOX_H
 
+#include <compiler.h>
 #include <asm/arch/base.h>
+#include <asm/types.h>
 #include <linux/compiler.h>
 #include <linux/string.h>
 
diff --git a/arch/arm/mach-bcm283x/include/mach/msg.h b/arch/arm/mach-bcm283x/include/mach/msg.h
index e45c1bf010f1..483fb5b0e148 100644
--- a/arch/arm/mach-bcm283x/include/mach/msg.h
+++ b/arch/arm/mach-bcm283x/include/mach/msg.h
@@ -12,6 +12,7 @@
  * @module: ID of module to power on (BCM2835_MBOX_POWER_DEVID_...)
  * @return 0 if OK, -EIO on error
  */
+#include <linux/types.h>
 int bcm2835_power_on_module(u32 module);
 
 /**
diff --git a/arch/arm/mach-bcm283x/include/mach/sdhci.h b/arch/arm/mach-bcm283x/include/mach/sdhci.h
index 732369068705..481dc091439f 100644
--- a/arch/arm/mach-bcm283x/include/mach/sdhci.h
+++ b/arch/arm/mach-bcm283x/include/mach/sdhci.h
@@ -7,6 +7,7 @@
 #define _BCM2835_SDHCI_H_
 
 #include <asm/arch/base.h>
+#include <asm/types.h>
 
 #define BCM2835_SDHCI_PHYSADDR ({ BUG_ON(!rpi_bcm283x_base); \
 				  rpi_bcm283x_base + 0x00300000; })
diff --git a/arch/arm/mach-bcm283x/include/mach/wdog.h b/arch/arm/mach-bcm283x/include/mach/wdog.h
index 994266672057..2d8d7e0b0a37 100644
--- a/arch/arm/mach-bcm283x/include/mach/wdog.h
+++ b/arch/arm/mach-bcm283x/include/mach/wdog.h
@@ -7,6 +7,7 @@
 #define _BCM2835_WDOG_H
 
 #include <asm/arch/base.h>
+#include <asm/types.h>
 
 #define BCM2835_WDOG_PHYSADDR ({ BUG_ON(!rpi_bcm283x_base); \
 				 rpi_bcm283x_base + 0x00100000; })
diff --git a/arch/arm/mach-bcm283x/init.c b/arch/arm/mach-bcm283x/init.c
index b2708e4876ed..8ca9e3b8ff16 100644
--- a/arch/arm/mach-bcm283x/init.c
+++ b/arch/arm/mach-bcm283x/init.c
@@ -12,6 +12,7 @@
 #include <asm/global_data.h>
 #include <dm/device.h>
 #include <fdt_support.h>
+#include <linux/types.h>
 
 #define BCM2711_RPI4_PCIE_XHCI_MMIO_PHYS	0x600000000UL
 #define BCM2711_RPI4_PCIE_XHCI_MMIO_SIZE	0x800000UL
diff --git a/arch/arm/mach-bcm283x/mbox.c b/arch/arm/mach-bcm283x/mbox.c
index 0c8cf78c1888..8d036a187551 100644
--- a/arch/arm/mach-bcm283x/mbox.c
+++ b/arch/arm/mach-bcm283x/mbox.c
@@ -14,6 +14,7 @@
 #include <asm/arch/mbox.h>
 #include <phys2bus.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define TIMEOUT 1000 /* ms */
 
diff --git a/arch/arm/mach-bcm283x/msg.c b/arch/arm/mach-bcm283x/msg.c
index 3c3eac9025b0..57411b9d6009 100644
--- a/arch/arm/mach-bcm283x/msg.c
+++ b/arch/arm/mach-bcm283x/msg.c
@@ -10,6 +10,7 @@
 #include <asm/arch/mbox.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 struct msg_set_power_state {
 	struct bcm2835_mbox_hdr hdr;
diff --git a/arch/arm/mach-bcm283x/reset.c b/arch/arm/mach-bcm283x/reset.c
index 2b4ccd47279f..0d39bbdcf46d 100644
--- a/arch/arm/mach-bcm283x/reset.c
+++ b/arch/arm/mach-bcm283x/reset.c
@@ -12,6 +12,7 @@
 #include <asm/arch/base.h>
 #include <asm/arch/wdog.h>
 #include <efi_loader.h>
+#include <linux/types.h>
 
 #define RESET_TIMEOUT 10
 
diff --git a/arch/arm/mach-bcmstb/include/mach/timer.h b/arch/arm/mach-bcmstb/include/mach/timer.h
index 039dd664c2c0..8767a4602f60 100644
--- a/arch/arm/mach-bcmstb/include/mach/timer.h
+++ b/arch/arm/mach-bcmstb/include/mach/timer.h
@@ -8,6 +8,7 @@
 #ifndef _BCMSTB_TIMER_H
 #define _BCMSTB_TIMER_H
 
+#include <linux/types.h>
 uint64_t get_ticks(void);
 
 #endif /* _BCMSTB_TIMER_H */
diff --git a/arch/arm/mach-davinci/include/mach/davinci_misc.h b/arch/arm/mach-davinci/include/mach/davinci_misc.h
index 41b2c6648ecc..711fb4b3d142 100644
--- a/arch/arm/mach-davinci/include/mach/davinci_misc.h
+++ b/arch/arm/mach-davinci/include/mach/davinci_misc.h
@@ -8,6 +8,7 @@
 
 #include <asm/arch/hardware.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 /* pin muxer definitions */
 #define PIN_MUX_NUM_FIELDS	8	/* Per register */
diff --git a/arch/arm/mach-davinci/include/mach/dm365_lowlevel.h b/arch/arm/mach-davinci/include/mach/dm365_lowlevel.h
index eb1488e74425..000e32f05747 100644
--- a/arch/arm/mach-davinci/include/mach/dm365_lowlevel.h
+++ b/arch/arm/mach-davinci/include/mach/dm365_lowlevel.h
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <asm/arch/hardware.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 void dm365_waitloop(unsigned long loopcnt);
 int dm365_pll1_init(unsigned long pllmult, unsigned long prediv);
diff --git a/arch/arm/mach-davinci/include/mach/sdmmc_defs.h b/arch/arm/mach-davinci/include/mach/sdmmc_defs.h
index e1851c5ae4e4..6c28974f68d2 100644
--- a/arch/arm/mach-davinci/include/mach/sdmmc_defs.h
+++ b/arch/arm/mach-davinci/include/mach/sdmmc_defs.h
@@ -10,6 +10,7 @@
 
 #include <asm/arch/hardware.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 /* MMC Control Reg fields */
 #define MMCCTL_DATRST		(1 << 0)
diff --git a/arch/arm/mach-davinci/include/mach/timer_defs.h b/arch/arm/mach-davinci/include/mach/timer_defs.h
index 110e67e454ce..f880b7ef9274 100644
--- a/arch/arm/mach-davinci/include/mach/timer_defs.h
+++ b/arch/arm/mach-davinci/include/mach/timer_defs.h
@@ -6,6 +6,7 @@
 #ifndef _TIMER_DEFS_H_
 #define _TIMER_DEFS_H_
 
+#include <linux/types.h>
 struct davinci_timer {
 	u_int32_t	pid12;
 	u_int32_t	emumgt;
diff --git a/arch/arm/mach-davinci/misc.c b/arch/arm/mach-davinci/misc.c
index d8a424fd028f..f59c2c220fda 100644
--- a/arch/arm/mach-davinci/misc.c
+++ b/arch/arm/mach-davinci/misc.c
@@ -19,6 +19,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/arch/davinci_misc.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-davinci/spl.c b/arch/arm/mach-davinci/spl.c
index 9e14284ab02f..a9732fc5264d 100644
--- a/arch/arm/mach-davinci/spl.c
+++ b/arch/arm/mach-davinci/spl.c
@@ -17,6 +17,7 @@
 #include <malloc.h>
 #include <spi_flash.h>
 #include <mmc.h>
+#include <linux/types.h>
 
 #ifndef CONFIG_SPL_LIBCOMMON_SUPPORT
 void puts(const char *str)
diff --git a/arch/arm/mach-davinci/timer.c b/arch/arm/mach-davinci/timer.c
index 43e0574901ee..562363af34f0 100644
--- a/arch/arm/mach-davinci/timer.c
+++ b/arch/arm/mach-davinci/timer.c
@@ -28,6 +28,7 @@
 #include <asm/arch/timer_defs.h>
 #include <div64.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-exynos/clock.c b/arch/arm/mach-exynos/clock.c
index 33995ff4ec6a..bd570b9e3418 100644
--- a/arch/arm/mach-exynos/clock.c
+++ b/arch/arm/mach-exynos/clock.c
@@ -13,6 +13,7 @@
 #include <asm/arch/clk.h>
 #include <asm/arch/periph.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define PLL_DIV_1024	1024
 #define PLL_DIV_65535	65535
diff --git a/arch/arm/mach-exynos/clock_init.h b/arch/arm/mach-exynos/clock_init.h
index a4d3fdae8518..6d0fe3a5bcc7 100644
--- a/arch/arm/mach-exynos/clock_init.h
+++ b/arch/arm/mach-exynos/clock_init.h
@@ -8,6 +8,7 @@
 #ifndef __EXYNOS_CLOCK_INIT_H
 #define __EXYNOS_CLOCK_INIT_H
 
+#include <linux/types.h>
 enum {
 #ifdef CONFIG_EXYNOS5420
 	MEM_TIMINGS_MSR_COUNT	= 5,
diff --git a/arch/arm/mach-exynos/clock_init_exynos5.c b/arch/arm/mach-exynos/clock_init_exynos5.c
index cf83ef9391a5..c5e2380e5160 100644
--- a/arch/arm/mach-exynos/clock_init_exynos5.c
+++ b/arch/arm/mach-exynos/clock_init_exynos5.c
@@ -12,6 +12,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/spl.h>
 #include <asm/arch/dwmmc.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #include "clock_init.h"
diff --git a/arch/arm/mach-exynos/common_setup.h b/arch/arm/mach-exynos/common_setup.h
index 4e3702b92859..afae76531a95 100644
--- a/arch/arm/mach-exynos/common_setup.h
+++ b/arch/arm/mach-exynos/common_setup.h
@@ -24,6 +24,7 @@
  */
 
 #include <asm/arch/system.h>
+#include <linux/types.h>
 
 #define DMC_OFFSET	0x10000
 
diff --git a/arch/arm/mach-exynos/dmc_common.c b/arch/arm/mach-exynos/dmc_common.c
index 44923dd5520f..880e9fc2b66c 100644
--- a/arch/arm/mach-exynos/dmc_common.c
+++ b/arch/arm/mach-exynos/dmc_common.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <asm/arch/spl.h>
+#include <linux/types.h>
 
 #include "clock_init.h"
 #include "common_setup.h"
diff --git a/arch/arm/mach-exynos/dmc_init_ddr3.c b/arch/arm/mach-exynos/dmc_init_ddr3.c
index 2cf3c2fa06a4..0c0b68391b66 100644
--- a/arch/arm/mach-exynos/dmc_init_ddr3.c
+++ b/arch/arm/mach-exynos/dmc_init_ddr3.c
@@ -14,6 +14,7 @@
 #include <asm/arch/dmc.h>
 #include <asm/arch/power.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "common_setup.h"
 #include "exynos5_setup.h"
 #include "clock_init.h"
diff --git a/arch/arm/mach-exynos/exynos5_setup.h b/arch/arm/mach-exynos/exynos5_setup.h
index bf4cca9e1939..7bb31e917dca 100644
--- a/arch/arm/mach-exynos/exynos5_setup.h
+++ b/arch/arm/mach-exynos/exynos5_setup.h
@@ -10,6 +10,7 @@
 
 #include <config.h>
 #include <asm/arch/dmc.h>
+#include <linux/types.h>
 
 #define NOT_AVAILABLE		0
 #define DATA_MASK		0xFFFFF
diff --git a/arch/arm/mach-exynos/include/mach/mmc.h b/arch/arm/mach-exynos/include/mach/mmc.h
index eece44ea1aa0..88e23b1138e8 100644
--- a/arch/arm/mach-exynos/include/mach/mmc.h
+++ b/arch/arm/mach-exynos/include/mach/mmc.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_MMC_H_
 #define __ASM_ARCH_MMC_H_
 
+#include <asm/types.h>
 #define S5P_MMC_DEV_OFFSET	0x10000
 
 #define SDHCI_CONTROL2		0x80
diff --git a/arch/arm/mach-exynos/include/mach/power.h b/arch/arm/mach-exynos/include/mach/power.h
index a3d8974dcb5b..27960c619b55 100644
--- a/arch/arm/mach-exynos/include/mach/power.h
+++ b/arch/arm/mach-exynos/include/mach/power.h
@@ -8,6 +8,7 @@
 #define __ASM_ARM_ARCH_POWER_H_
 
 #ifndef __ASSEMBLY__
+#include <linux/types.h>
 struct exynos4_power {
 	unsigned int	om_stat;
 	unsigned char	res1[0x8];
diff --git a/arch/arm/mach-exynos/include/mach/spl.h b/arch/arm/mach-exynos/include/mach/spl.h
index 9d642461bd62..7675d4dc724a 100644
--- a/arch/arm/mach-exynos/include/mach/spl.h
+++ b/arch/arm/mach-exynos/include/mach/spl.h
@@ -11,6 +11,8 @@
 
 #ifndef __ASSEMBLY__
 /* Parameters of early board initialization in SPL */
+#include <compiler.h>
+#include <asm/types.h>
 struct spl_machine_param {
 	/* Add fields as and when required */
 	u32		signature;
diff --git a/arch/arm/mach-exynos/include/mach/sromc.h b/arch/arm/mach-exynos/include/mach/sromc.h
index 15c9ccc723d8..81776988961e 100644
--- a/arch/arm/mach-exynos/include/mach/sromc.h
+++ b/arch/arm/mach-exynos/include/mach/sromc.h
@@ -24,6 +24,7 @@
 #define SROMC_BC_PMC(x)  (x << 0)  /* normal(1data)page mode configuration */
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 struct s5p_sromc {
 	unsigned int	bw;
 	unsigned int	bc[4];
diff --git a/arch/arm/mach-exynos/include/mach/sys_proto.h b/arch/arm/mach-exynos/include/mach/sys_proto.h
index 53d53bc6b6d7..23c8b643e2c7 100644
--- a/arch/arm/mach-exynos/include/mach/sys_proto.h
+++ b/arch/arm/mach-exynos/include/mach/sys_proto.h
@@ -7,6 +7,7 @@
 #ifndef _SYS_PROTO_H_
 #define _SYS_PROTO_H_
 
+#include <asm/types.h>
 u32 get_device_type(void);
 void invalidate_dcache(u32);
 void l2_cache_disable(void);
diff --git a/arch/arm/mach-exynos/include/mach/tmu.h b/arch/arm/mach-exynos/include/mach/tmu.h
index cad35694f644..b301f17b8742 100644
--- a/arch/arm/mach-exynos/include/mach/tmu.h
+++ b/arch/arm/mach-exynos/include/mach/tmu.h
@@ -20,6 +20,7 @@
 #ifndef __ASM_ARCH_TMU_H
 #define __ASM_ARCH_TMU_H
 
+#include <asm/types.h>
 struct exynos5_tmu_reg {
 	u32 triminfo;
 	u32 rsvd1[4];
diff --git a/arch/arm/mach-exynos/lowlevel_init.c b/arch/arm/mach-exynos/lowlevel_init.c
index 97d6ca8fc2a0..ecd23bf7a976 100644
--- a/arch/arm/mach-exynos/lowlevel_init.c
+++ b/arch/arm/mach-exynos/lowlevel_init.c
@@ -36,6 +36,7 @@
 #include <asm/arch/pinmux.h>
 #include <asm/arch/system.h>
 #include <asm/armv7.h>
+#include <linux/types.h>
 #include "common_setup.h"
 #include "exynos5_setup.h"
 
diff --git a/arch/arm/mach-exynos/pinmux.c b/arch/arm/mach-exynos/pinmux.c
index 5d7738ae5ba6..5a818ac2b1e8 100644
--- a/arch/arm/mach-exynos/pinmux.c
+++ b/arch/arm/mach-exynos/pinmux.c
@@ -10,6 +10,7 @@
 #include <asm/gpio.h>
 #include <asm/arch/pinmux.h>
 #include <asm/arch/sromc.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 static void exynos5_uart_config(int peripheral)
diff --git a/arch/arm/mach-exynos/power.c b/arch/arm/mach-exynos/power.c
index f2a6c00dd629..b36c395bebc6 100644
--- a/arch/arm/mach-exynos/power.c
+++ b/arch/arm/mach-exynos/power.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <asm/io.h>
 #include <asm/arch/power.h>
+#include <linux/types.h>
 
 static void exynos4_mipi_phy_control(unsigned int dev_index,
 					unsigned int enable)
diff --git a/arch/arm/mach-exynos/soc.c b/arch/arm/mach-exynos/soc.c
index 810fa348eeaf..388d50ff64d5 100644
--- a/arch/arm/mach-exynos/soc.c
+++ b/arch/arm/mach-exynos/soc.c
@@ -9,6 +9,7 @@
 #include <asm/cache.h>
 #include <asm/io.h>
 #include <asm/system.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_TARGET_ESPRESSO7420
 /*
diff --git a/arch/arm/mach-exynos/spl_boot.c b/arch/arm/mach-exynos/spl_boot.c
index 3ed5d10f1ae5..4c19cce1a473 100644
--- a/arch/arm/mach-exynos/spl_boot.c
+++ b/arch/arm/mach-exynos/spl_boot.c
@@ -9,6 +9,7 @@
 #include <log.h>
 #include <asm/global_data.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include <asm/cache.h>
 #include <asm/arch/clock.h>
diff --git a/arch/arm/mach-imx/cache.c b/arch/arm/mach-imx/cache.c
index ce49253d0b40..c35720502bc3 100644
--- a/arch/arm/mach-imx/cache.c
+++ b/arch/arm/mach-imx/cache.c
@@ -11,6 +11,7 @@
 #include <asm/pl310.h>
 #include <asm/io.h>
 #include <asm/mach-imx/sys_proto.h>
+#include <asm/types.h>
 
 static void enable_ca7_smp(void)
 {
diff --git a/arch/arm/mach-imx/cmd_dek.c b/arch/arm/mach-imx/cmd_dek.c
index a8199497a916..62a9afe8b107 100644
--- a/arch/arm/mach-imx/cmd_dek.c
+++ b/arch/arm/mach-imx/cmd_dek.c
@@ -15,6 +15,7 @@
 #include <fsl_sec.h>
 #include <asm/arch/clock.h>
 #include <mapmem.h>
+#include <linux/types.h>
 
 /**
 * blob_dek() - Encapsulate the DEK as a blob using CAM's Key
diff --git a/arch/arm/mach-imx/cmd_nandbcb.c b/arch/arm/mach-imx/cmd_nandbcb.c
index 9165140e494f..882e71aee4ce 100644
--- a/arch/arm/mach-imx/cmd_nandbcb.c
+++ b/arch/arm/mach-imx/cmd_nandbcb.c
@@ -16,6 +16,7 @@
 #include <log.h>
 #include <malloc.h>
 #include <nand.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <dm/devres.h>
@@ -23,6 +24,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <jffs2/jffs2.h>
diff --git a/arch/arm/mach-imx/cpu.c b/arch/arm/mach-imx/cpu.c
index c2f0f510e83a..a100054d24af 100644
--- a/arch/arm/mach-imx/cpu.c
+++ b/arch/arm/mach-imx/cpu.c
@@ -26,6 +26,7 @@
 #include <ipu_pixfmt.h>
 #include <thermal.h>
 #include <sata.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_FSL_ESDHC_IMX
 #include <fsl_esdhc_imx.h>
diff --git a/arch/arm/mach-imx/ddrmc-vf610-calibration.c b/arch/arm/mach-imx/ddrmc-vf610-calibration.c
index cd7e95e61d00..fbe3bfd07f2c 100644
--- a/arch/arm/mach-imx/ddrmc-vf610-calibration.c
+++ b/arch/arm/mach-imx/ddrmc-vf610-calibration.c
@@ -11,6 +11,7 @@
 #include <log.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
+#include <asm/types.h>
 #include <linux/bitmap.h>
 
 #include "ddrmc-vf610-calibration.h"
diff --git a/arch/arm/mach-imx/hab.c b/arch/arm/mach-imx/hab.c
index b576b032ec6e..73ae2b12a02c 100644
--- a/arch/arm/mach-imx/hab.c
+++ b/arch/arm/mach-imx/hab.c
@@ -18,6 +18,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/mach-imx/hab.h>
+#include <linux/types.h>
 
 #define ALIGN_SIZE		0x1000
 #define MX6DQ_PU_IROM_MMU_EN_VAR	0x009024a8
diff --git a/arch/arm/mach-imx/i2c-mxv7.c b/arch/arm/mach-imx/i2c-mxv7.c
index 1e1b14c1272c..963946769b8e 100644
--- a/arch/arm/mach-imx/i2c-mxv7.c
+++ b/arch/arm/mach-imx/i2c-mxv7.c
@@ -15,6 +15,7 @@
 #include <asm/mach-imx/mxc_i2c.h>
 #include <watchdog.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 int force_idle_bus(void *priv)
 {
diff --git a/arch/arm/mach-imx/imx8/ahab.c b/arch/arm/mach-imx/imx8/ahab.c
index f3c370914c6f..d779b476ecec 100644
--- a/arch/arm/mach-imx/imx8/ahab.c
+++ b/arch/arm/mach-imx/imx8/ahab.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <errno.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/global_data.h>
@@ -21,6 +22,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/imx8/clock.c b/arch/arm/mach-imx/imx8/clock.c
index 9288282dfb03..96a7d8bdcf37 100644
--- a/arch/arm/mach-imx/imx8/clock.c
+++ b/arch/arm/mach-imx/imx8/clock.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/clock.h>
 
diff --git a/arch/arm/mach-imx/imx8/cpu.c b/arch/arm/mach-imx/imx8/cpu.c
index cdfc135904de..f7be1603f43a 100644
--- a/arch/arm/mach-imx/imx8/cpu.c
+++ b/arch/arm/mach-imx/imx8/cpu.c
@@ -5,14 +5,17 @@
 
 #include <common.h>
 #include <clk.h>
+#include <compiler.h>
 #include <cpu.h>
 #include <cpu_func.h>
 #include <dm.h>
 #include <init.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/cache.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <dm/device-internal.h>
 #include <dm/lists.h>
 #include <dm/uclass.h>
diff --git a/arch/arm/mach-imx/imx8/fdt.c b/arch/arm/mach-imx/imx8/fdt.c
index eee6e529cdca..4ffdc5e57276 100644
--- a/arch/arm/mach-imx/imx8/fdt.c
+++ b/arch/arm/mach-imx/imx8/fdt.c
@@ -10,6 +10,7 @@
 #include <asm/arch/sci/sci.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <dm/ofnode.h>
 #include <fdt_support.h>
diff --git a/arch/arm/mach-imx/imx8/image.c b/arch/arm/mach-imx/imx8/image.c
index 4258abecd080..d685c9f5e7d1 100644
--- a/arch/arm/mach-imx/imx8/image.c
+++ b/arch/arm/mach-imx/imx8/image.c
@@ -18,6 +18,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define MMC_DEV		0
 #define QSPI_DEV	1
diff --git a/arch/arm/mach-imx/imx8/iomux.c b/arch/arm/mach-imx/imx8/iomux.c
index 0f4f0cac1077..4c00622c3818 100644
--- a/arch/arm/mach-imx/imx8/iomux.c
+++ b/arch/arm/mach-imx/imx8/iomux.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/sci/sci.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/imx8/misc.c b/arch/arm/mach-imx/imx8/misc.c
index e83c0517fca7..29566ad7c786 100644
--- a/arch/arm/mach-imx/imx8/misc.c
+++ b/arch/arm/mach-imx/imx8/misc.c
@@ -6,6 +6,7 @@
 #include <asm/mach-imx/sys_proto.h>
 #include <imx_sip.h>
 #include <linux/arm-smccc.h>
+#include <linux/types.h>
 
 int sc_pm_setup_uart(sc_rsrc_t uart_rsrc, sc_pm_clock_rate_t clk_rate)
 {
diff --git a/arch/arm/mach-imx/imx8/parse-container.c b/arch/arm/mach-imx/imx8/parse-container.c
index a5332358ca55..ba254516c2d1 100644
--- a/arch/arm/mach-imx/imx8/parse-container.c
+++ b/arch/arm/mach-imx/imx8/parse-container.c
@@ -13,6 +13,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define SEC_SECURE_RAM_BASE		0x31800000UL
 #define SEC_SECURE_RAM_END_BASE		(SEC_SECURE_RAM_BASE + 0xFFFFUL)
diff --git a/arch/arm/mach-imx/imx8/snvs_security_sc.c b/arch/arm/mach-imx/imx8/snvs_security_sc.c
index 086e89b0e5c5..cb8153953149 100644
--- a/arch/arm/mach-imx/imx8/snvs_security_sc.c
+++ b/arch/arm/mach-imx/imx8/snvs_security_sc.c
@@ -21,6 +21,7 @@
 #include <asm/arch-imx8/imx8-pins.h>
 #include <asm/arch-imx8/snvs_security_sc.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-imx/imx8m/clock_imx8mm.c b/arch/arm/mach-imx/imx8m/clock_imx8mm.c
index ac4d0766dab6..20f450c440b1 100644
--- a/arch/arm/mach-imx/imx8m/clock_imx8mm.c
+++ b/arch/arm/mach-imx/imx8m/clock_imx8mm.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
@@ -18,6 +19,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/imx8m/clock_imx8mq.c b/arch/arm/mach-imx/imx8m/clock_imx8mq.c
index 95a1dbb71800..9b1956cf3780 100644
--- a/arch/arm/mach-imx/imx8m/clock_imx8mq.c
+++ b/arch/arm/mach-imx/imx8m/clock_imx8mq.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
@@ -17,6 +18,7 @@
 #include <linux/errno.h>
 #include <linux/iopoll.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 static struct anamix_pll *ana_pll = (struct anamix_pll *)ANATOP_BASE_ADDR;
 
diff --git a/arch/arm/mach-imx/imx8m/clock_slice.c b/arch/arm/mach-imx/imx8m/clock_slice.c
index 4074e1e4c52f..ff8bd35cf9a0 100644
--- a/arch/arm/mach-imx/imx8m/clock_slice.c
+++ b/arch/arm/mach-imx/imx8m/clock_slice.c
@@ -6,10 +6,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
+#include <stdbool.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/io.h>
 #include <errno.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-imx/imx8m/soc.c b/arch/arm/mach-imx/imx8m/soc.c
index 99e268fa3fb0..64781e0c687e 100644
--- a/arch/arm/mach-imx/imx8m/soc.c
+++ b/arch/arm/mach-imx/imx8m/soc.c
@@ -6,9 +6,11 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <init.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/arch/imx-regs.h>
@@ -35,6 +37,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/imx_bootaux.c b/arch/arm/mach-imx/imx_bootaux.c
index 02fa1d7b62b2..e24f430e3c4d 100644
--- a/arch/arm/mach-imx/imx_bootaux.c
+++ b/arch/arm/mach-imx/imx_bootaux.c
@@ -16,6 +16,7 @@
 #include <linux/compiler.h>
 #include <cpu_func.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 int arch_auxiliary_core_up(u32 core_id, ulong addr)
 {
diff --git a/arch/arm/mach-imx/init.c b/arch/arm/mach-imx/init.c
index 693b72442994..be9aac6e2214 100644
--- a/arch/arm/mach-imx/init.c
+++ b/arch/arm/mach-imx/init.c
@@ -9,6 +9,7 @@
 #include <asm/arch/sys_proto.h>
 #include <asm/mach-imx/boot_mode.h>
 #include <asm/arch/crm_regs.h>
+#include <asm/types.h>
 
 void init_aips(void)
 {
diff --git a/arch/arm/mach-imx/iomux-v3.c b/arch/arm/mach-imx/iomux-v3.c
index 18131a20f438..219dd98a549b 100644
--- a/arch/arm/mach-imx/iomux-v3.c
+++ b/arch/arm/mach-imx/iomux-v3.c
@@ -12,6 +12,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/mach-imx/iomux-v3.h>
 #include <asm/mach-imx/sys_proto.h>
+#include <asm/types.h>
 
 static void *base = (void *)IOMUXC_BASE_ADDR;
 
diff --git a/arch/arm/mach-imx/mac.c b/arch/arm/mach-imx/mac.c
index b23315cf90e8..d054f2e37f09 100644
--- a/arch/arm/mach-imx/mac.c
+++ b/arch/arm/mach-imx/mac.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
 #include <errno.h>
+#include <linux/types.h>
 
 struct imx_mac_fuse {
 	u32 mac_addr0;
diff --git a/arch/arm/mach-imx/misc.c b/arch/arm/mach-imx/misc.c
index d82efa7f8f0a..e142855fdba5 100644
--- a/arch/arm/mach-imx/misc.c
+++ b/arch/arm/mach-imx/misc.c
@@ -12,6 +12,7 @@
 #include <linux/errno.h>
 #include <asm/io.h>
 #include <asm/mach-imx/regs-common.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/mmc_env.c b/arch/arm/mach-imx/mmc_env.c
index 9c822f721c60..9ad2cf4dc8f0 100644
--- a/arch/arm/mach-imx/mmc_env.c
+++ b/arch/arm/mach-imx/mmc_env.c
@@ -4,10 +4,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
 #include <asm/mach-imx/boot_mode.h>
+#include <linux/types.h>
 
 __weak int board_mmc_get_env_dev(int devno)
 {
diff --git a/arch/arm/mach-imx/mmdc_size.c b/arch/arm/mach-imx/mmdc_size.c
index 1a094726aad5..05d71b236bcf 100644
--- a/arch/arm/mach-imx/mmdc_size.c
+++ b/arch/arm/mach-imx/mmdc_size.c
@@ -2,6 +2,7 @@
 
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #if defined(CONFIG_MX53)
 #define MEMCTL_BASE	ESDCTL_BASE_ADDR
diff --git a/arch/arm/mach-imx/mx5/clock.c b/arch/arm/mach-imx/mx5/clock.c
index adc7dbee7d36..0b4fa84db791 100644
--- a/arch/arm/mach-imx/mx5/clock.c
+++ b/arch/arm/mach-imx/mx5/clock.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <command.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/io.h>
 #include <linux/errno.h>
@@ -19,6 +20,7 @@
 #include <asm/arch/sys_proto.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 enum pll_clocks {
 	PLL1_CLOCK = 0,
diff --git a/arch/arm/mach-imx/mx5/soc.c b/arch/arm/mach-imx/mx5/soc.c
index c61fcce3eb42..d4431a44fc6f 100644
--- a/arch/arm/mach-imx/mx5/soc.c
+++ b/arch/arm/mach-imx/mx5/soc.c
@@ -7,11 +7,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/cache.h>
+#include <asm/types.h>
 
 #include <linux/errno.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-imx/mx6/clock.c b/arch/arm/mach-imx/mx6/clock.c
index 7e066d39b2d5..4fdcb7b3f5a5 100644
--- a/arch/arm/mach-imx/mx6/clock.c
+++ b/arch/arm/mach-imx/mx6/clock.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <div64.h>
 #include <log.h>
 #include <stdbool.h>
@@ -16,6 +17,7 @@
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
+#include <linux/types.h>
 
 enum pll_clocks {
 	PLL_SYS,	/* System PLL */
diff --git a/arch/arm/mach-imx/mx6/ddr.c b/arch/arm/mach-imx/mx6/ddr.c
index d5230d516a12..c02bcabc7440 100644
--- a/arch/arm/mach-imx/mx6/ddr.c
+++ b/arch/arm/mach-imx/mx6/ddr.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <hang.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
diff --git a/arch/arm/mach-imx/mx6/module_fuse.c b/arch/arm/mach-imx/mx6/module_fuse.c
index c1731a828562..c162b9c528aa 100644
--- a/arch/arm/mach-imx/mx6/module_fuse.c
+++ b/arch/arm/mach-imx/mx6/module_fuse.c
@@ -14,6 +14,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 static struct fuse_entry_desc mx6_fuse_descs[] = {
 #if defined(CONFIG_MX6ULL)
diff --git a/arch/arm/mach-imx/mx6/mp.c b/arch/arm/mach-imx/mx6/mp.c
index d28d55d4be5c..1791bd294663 100644
--- a/arch/arm/mach-imx/mx6/mp.c
+++ b/arch/arm/mach-imx/mx6/mp.c
@@ -14,6 +14,7 @@
 #include <linux/errno.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/imx-regs.h>
+#include <linux/types.h>
 
 #define MAX_CPUS 4
 static struct src *src = (struct src *)SRC_BASE_ADDR;
diff --git a/arch/arm/mach-imx/mx6/opos6ul.c b/arch/arm/mach-imx/mx6/opos6ul.c
index e9d78740a157..a99e7326b9cc 100644
--- a/arch/arm/mach-imx/mx6/opos6ul.c
+++ b/arch/arm/mach-imx/mx6/opos6ul.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2018 Armadeus Systems
  */
 
+#include <compiler.h>
 #include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
@@ -12,6 +13,7 @@
 #include <asm/io.h>
 #include <common.h>
 #include <env.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
index 2cdf576f25c5..4de384b0bd1d 100644
--- a/arch/arm/mach-imx/mx6/soc.c
+++ b/arch/arm/mach-imx/mx6/soc.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
@@ -26,6 +27,7 @@
 #include <imx_thermal.h>
 #include <mmc.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 struct scu_regs {
 	u32	ctrl;
diff --git a/arch/arm/mach-imx/mx7/clock.c b/arch/arm/mach-imx/mx7/clock.c
index b2d566737a40..6f6dbc9fabaa 100644
--- a/arch/arm/mach-imx/mx7/clock.c
+++ b/arch/arm/mach-imx/mx7/clock.c
@@ -20,6 +20,7 @@
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
+#include <linux/types.h>
 
 struct mxc_ccm_anatop_reg *ccm_anatop = (struct mxc_ccm_anatop_reg *)
 					 ANATOP_BASE_ADDR;
diff --git a/arch/arm/mach-imx/mx7/clock_slice.c b/arch/arm/mach-imx/mx7/clock_slice.c
index c5aea2bffd65..b7ad9e4a4060 100644
--- a/arch/arm/mach-imx/mx7/clock_slice.c
+++ b/arch/arm/mach-imx/mx7/clock_slice.c
@@ -8,8 +8,10 @@
 
 #include <common.h>
 #include <div64.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/crm_regs.h>
diff --git a/arch/arm/mach-imx/mx7/psci-mx7.c b/arch/arm/mach-imx/mx7/psci-mx7.c
index 214e4043f449..0b93af399779 100644
--- a/arch/arm/mach-imx/mx7/psci-mx7.c
+++ b/arch/arm/mach-imx/mx7/psci-mx7.c
@@ -13,6 +13,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/armv7.h>
 #include <asm/gic.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <common.h>
 #include <fsl_wdog.h>
diff --git a/arch/arm/mach-imx/mx7/snvs.c b/arch/arm/mach-imx/mx7/snvs.c
index 359bbbb41c7a..acc3356c3be9 100644
--- a/arch/arm/mach-imx/mx7/snvs.c
+++ b/arch/arm/mach-imx/mx7/snvs.c
@@ -5,6 +5,7 @@
 
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 #define SNVS_HPCOMR		0x04
diff --git a/arch/arm/mach-imx/mx7/soc.c b/arch/arm/mach-imx/mx7/soc.c
index bc267d101fb0..681f1d8c950d 100644
--- a/arch/arm/mach-imx/mx7/soc.c
+++ b/arch/arm/mach-imx/mx7/soc.c
@@ -4,7 +4,9 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
+#include <stdbool.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/clock.h>
@@ -19,6 +21,7 @@
 #include <imx_thermal.h>
 #include <fsl_sec.h>
 #include <asm/setup.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-imx/mx7ulp/clock.c b/arch/arm/mach-imx/mx7ulp/clock.c
index c7dfa798b454..0b39cf14dba4 100644
--- a/arch/arm/mach-imx/mx7ulp/clock.c
+++ b/arch/arm/mach-imx/mx7ulp/clock.c
@@ -14,6 +14,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/mx7ulp/iomux.c b/arch/arm/mach-imx/mx7ulp/iomux.c
index 05ddeed2a64b..24a31d648c45 100644
--- a/arch/arm/mach-imx/mx7ulp/iomux.c
+++ b/arch/arm/mach-imx/mx7ulp/iomux.c
@@ -7,6 +7,7 @@
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
+#include <asm/types.h>
 
 static void *base = (void *)IOMUXC_BASE_ADDR;
 
diff --git a/arch/arm/mach-imx/mx7ulp/pcc.c b/arch/arm/mach-imx/mx7ulp/pcc.c
index 9d06260bdfa5..61dfd6b01e0d 100644
--- a/arch/arm/mach-imx/mx7ulp/pcc.c
+++ b/arch/arm/mach-imx/mx7ulp/pcc.c
@@ -6,12 +6,14 @@
 #include <common.h>
 #include <div64.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/io.h>
 #include <errno.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/pcc.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-imx/mx7ulp/scg.c b/arch/arm/mach-imx/mx7ulp/scg.c
index bc837aae33a3..c9be289706d3 100644
--- a/arch/arm/mach-imx/mx7ulp/scg.c
+++ b/arch/arm/mach-imx/mx7ulp/scg.c
@@ -13,6 +13,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/pcc.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 
diff --git a/arch/arm/mach-imx/mx7ulp/soc.c b/arch/arm/mach-imx/mx7ulp/soc.c
index e0717226f777..33f80b48171f 100644
--- a/arch/arm/mach-imx/mx7ulp/soc.c
+++ b/arch/arm/mach-imx/mx7ulp/soc.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <init.h>
 #include <log.h>
@@ -17,6 +18,7 @@
 #include <asm/mach-imx/boot_mode.h>
 #include <asm/mach-imx/hab.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 #define PMC0_BASE_ADDR		0x410a1000
 #define PMC0_CTRL		0x28
diff --git a/arch/arm/mach-imx/rdc-sema.c b/arch/arm/mach-imx/rdc-sema.c
index e683673753e1..d184406cd13d 100644
--- a/arch/arm/mach-imx/rdc-sema.c
+++ b/arch/arm/mach-imx/rdc-sema.c
@@ -7,6 +7,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/mach-imx/rdc-sema.h>
 #include <asm/arch/imx-rdc.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 /*
diff --git a/arch/arm/mach-imx/spl.c b/arch/arm/mach-imx/spl.c
index 4c7614e9b719..9f5022c3e3e2 100644
--- a/arch/arm/mach-imx/spl.c
+++ b/arch/arm/mach-imx/spl.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <hang.h>
 #include <init.h>
 #include <log.h>
@@ -21,6 +22,7 @@
 #include <asm/mach-imx/boot_mode.h>
 #include <g_dnl.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/spl_imx_romapi.c b/arch/arm/mach-imx/spl_imx_romapi.c
index 336b3da62644..07b76565392d 100644
--- a/arch/arm/mach-imx/spl_imx_romapi.c
+++ b/arch/arm/mach-imx/spl_imx_romapi.c
@@ -13,6 +13,7 @@
 #include <linux/libfdt.h>
 #include <spl.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/arch/sys_proto.h>
 
diff --git a/arch/arm/mach-imx/syscounter.c b/arch/arm/mach-imx/syscounter.c
index 6dfed365d295..33572b943a7b 100644
--- a/arch/arm/mach-imx/syscounter.c
+++ b/arch/arm/mach-imx/syscounter.c
@@ -15,6 +15,7 @@
 #include <asm/arch/sys_proto.h>
 #include <asm/mach-imx/syscounter.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-imx/timer.c b/arch/arm/mach-imx/timer.c
index fa1941aec42e..569c05fad253 100644
--- a/arch/arm/mach-imx/timer.c
+++ b/arch/arm/mach-imx/timer.c
@@ -14,6 +14,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
+#include <linux/types.h>
 
 /* General purpose timers registers */
 struct mxc_gpt {
diff --git a/arch/arm/mach-ipq40xx/clock-ipq4019.c b/arch/arm/mach-ipq40xx/clock-ipq4019.c
index dae070f0ed62..a15a6871ce4e 100644
--- a/arch/arm/mach-ipq40xx/clock-ipq4019.c
+++ b/arch/arm/mach-ipq40xx/clock-ipq4019.c
@@ -13,6 +13,7 @@
 #include <dm.h>
 #include <errno.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 struct msm_clk_priv {
 	phys_addr_t base;
diff --git a/arch/arm/mach-ipq40xx/pinctrl-snapdragon.c b/arch/arm/mach-ipq40xx/pinctrl-snapdragon.c
index 9f73a62d7a1d..c18b87d923a7 100644
--- a/arch/arm/mach-ipq40xx/pinctrl-snapdragon.c
+++ b/arch/arm/mach-ipq40xx/pinctrl-snapdragon.c
@@ -18,6 +18,7 @@
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "pinctrl-snapdragon.h"
 
 struct msm_pinctrl_priv {
diff --git a/arch/arm/mach-k3/am6_init.c b/arch/arm/mach-k3/am6_init.c
index 2ffa383aa26c..ccb718d40bba 100644
--- a/arch/arm/mach-k3/am6_init.c
+++ b/arch/arm/mach-k3/am6_init.c
@@ -17,6 +17,7 @@
 #include <asm/arch/sysfw-loader.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "common.h"
 #include <dm.h>
 #include <dm/uclass-internal.h>
diff --git a/arch/arm/mach-k3/common.c b/arch/arm/mach-k3/common.c
index f063518acaf3..088dace5f923 100644
--- a/arch/arm/mach-k3/common.c
+++ b/arch/arm/mach-k3/common.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <image.h>
 #include <init.h>
@@ -18,6 +19,7 @@
 #include <linux/kernel.h>
 #include <linux/printk.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "common.h"
 #include <dm.h>
 #include <remoteproc.h>
diff --git a/arch/arm/mach-k3/common.h b/arch/arm/mach-k3/common.h
index a6dbc7808b85..40ce5f8fc6de 100644
--- a/arch/arm/mach-k3/common.h
+++ b/arch/arm/mach-k3/common.h
@@ -8,6 +8,7 @@
 
 #include <asm/armv7_mpu.h>
 #include <asm/hardware.h>
+#include <linux/types.h>
 
 #define J721E  0xbb64
 #define J7200  0xbb6d
diff --git a/arch/arm/mach-k3/include/mach/sys_proto.h b/arch/arm/mach-k3/include/mach/sys_proto.h
index 60287b261c8e..ac7097421e71 100644
--- a/arch/arm/mach-k3/include/mach/sys_proto.h
+++ b/arch/arm/mach-k3/include/mach/sys_proto.h
@@ -7,6 +7,7 @@
 #ifndef _SYS_PROTO_H_
 #define _SYS_PROTO_H_
 
+#include <asm/types.h>
 void sdelay(unsigned long loops);
 u32 wait_on_value(u32 read_bit_mask, u32 match_value, void *read_addr,
 		  u32 bound);
diff --git a/arch/arm/mach-k3/j721e_init.c b/arch/arm/mach-k3/j721e_init.c
index d9941580acfb..33e253013af6 100644
--- a/arch/arm/mach-k3/j721e_init.c
+++ b/arch/arm/mach-k3/j721e_init.c
@@ -16,6 +16,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/sysfw-loader.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "common.h"
 #include <asm/arch/sys_proto.h>
 #include <linux/soc/ti/ti_sci_protocol.h>
diff --git a/arch/arm/mach-k3/r5_mpu.c b/arch/arm/mach-k3/r5_mpu.c
index 3d2ff6775a3f..b7a6aa61aec5 100644
--- a/arch/arm/mach-k3/r5_mpu.c
+++ b/arch/arm/mach-k3/r5_mpu.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <stdbool.h>
 #include <asm/io.h>
 #include <linux/kernel.h>
 #include "common.h"
diff --git a/arch/arm/mach-k3/security.c b/arch/arm/mach-k3/security.c
index f4aef0a025b0..7655c9a3205a 100644
--- a/arch/arm/mach-k3/security.c
+++ b/arch/arm/mach-k3/security.c
@@ -16,6 +16,7 @@
 #include <asm/cache.h>
 #include <linux/kernel.h>
 #include <linux/soc/ti/ti_sci_protocol.h>
+#include <linux/types.h>
 #include <mach/spl.h>
 #include <spl.h>
 #include <asm/arch/sys_proto.h>
diff --git a/arch/arm/mach-k3/sysfw-loader.c b/arch/arm/mach-k3/sysfw-loader.c
index 4f269db8e5ab..52d6fb119e70 100644
--- a/arch/arm/mach-k3/sysfw-loader.c
+++ b/arch/arm/mach-k3/sysfw-loader.c
@@ -24,6 +24,7 @@
 #include <dfu.h>
 #include <dm/uclass-internal.h>
 #include <spi_flash.h>
+#include <linux/types.h>
 
 #include <asm/arch/sys_proto.h>
 #include "common.h"
diff --git a/arch/arm/mach-keystone/clock.c b/arch/arm/mach-keystone/clock.c
index 0c59515d2eb7..69a7c010dc15 100644
--- a/arch/arm/mach-keystone/clock.c
+++ b/arch/arm/mach-keystone/clock.c
@@ -7,8 +7,10 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/clock_defs.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 /* DEV and ARM speed definitions as specified in DEVSPEED register */
diff --git a/arch/arm/mach-keystone/cmd_mon.c b/arch/arm/mach-keystone/cmd_mon.c
index 5887a89ff114..42935007dc04 100644
--- a/arch/arm/mach-keystone/cmd_mon.c
+++ b/arch/arm/mach-keystone/cmd_mon.c
@@ -11,6 +11,7 @@
 #include <image.h>
 #include <stdio.h>
 #include <vsprintf.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/string.h>
 #include <mach/mon.h>
diff --git a/arch/arm/mach-keystone/ddr3.c b/arch/arm/mach-keystone/ddr3.c
index 99c394cd91d6..a589935c222d 100644
--- a/arch/arm/mach-keystone/ddr3.c
+++ b/arch/arm/mach-keystone/ddr3.c
@@ -15,6 +15,7 @@
 #include <asm/arch/msmc.h>
 #include <asm/arch/ddr3.h>
 #include <asm/arch/psc_defs.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #include <asm/ti-common/ti-edma3.h>
diff --git a/arch/arm/mach-keystone/ddr3_spd.c b/arch/arm/mach-keystone/ddr3_spd.c
index a7aa7f365210..85dcac05d3ea 100644
--- a/arch/arm/mach-keystone/ddr3_spd.c
+++ b/arch/arm/mach-keystone/ddr3_spd.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <log.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 #include <i2c.h>
diff --git a/arch/arm/mach-keystone/include/mach/clock_defs.h b/arch/arm/mach-keystone/include/mach/clock_defs.h
index 336b103dc8c9..ced9265d0a9c 100644
--- a/arch/arm/mach-keystone/include/mach/clock_defs.h
+++ b/arch/arm/mach-keystone/include/mach/clock_defs.h
@@ -10,6 +10,7 @@
 
 #include <asm/arch/hardware.h>
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/mach-keystone/include/mach/ddr3.h b/arch/arm/mach-keystone/include/mach/ddr3.h
index cb28068db7db..4d68f5628144 100644
--- a/arch/arm/mach-keystone/include/mach/ddr3.h
+++ b/arch/arm/mach-keystone/include/mach/ddr3.h
@@ -10,6 +10,7 @@
 #define _DDR3_H_
 
 #include <asm/arch/hardware.h>
+#include <asm/types.h>
 
 struct ddr3_phy_config {
 	unsigned int pllcr;
diff --git a/arch/arm/mach-keystone/include/mach/hardware-k2g.h b/arch/arm/mach-keystone/include/mach/hardware-k2g.h
index 971c081bb3c3..8361d459df98 100644
--- a/arch/arm/mach-keystone/include/mach/hardware-k2g.h
+++ b/arch/arm/mach-keystone/include/mach/hardware-k2g.h
@@ -103,6 +103,7 @@
 #define MAX_SYSCLK	4
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 static inline u8 get_sysclk_index(void)
 {
 	u32 dev_stat = __raw_readl(KS2_DEVSTAT);
diff --git a/arch/arm/mach-keystone/include/mach/hardware.h b/arch/arm/mach-keystone/include/mach/hardware.h
index 0c5dc6a73951..4044ae65a0c1 100644
--- a/arch/arm/mach-keystone/include/mach/hardware.h
+++ b/arch/arm/mach-keystone/include/mach/hardware.h
@@ -11,6 +11,7 @@
 #include <config.h>
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 #include <linux/sizes.h>
diff --git a/arch/arm/mach-keystone/include/mach/mon.h b/arch/arm/mach-keystone/include/mach/mon.h
index e1bef216d996..d23d31d6b74c 100644
--- a/arch/arm/mach-keystone/include/mach/mon.h
+++ b/arch/arm/mach-keystone/include/mach/mon.h
@@ -9,6 +9,7 @@
 #ifndef _MACH_MON_H_
 #define _MACH_MON_H_
 
+#include <asm/types.h>
 int mon_install(u32 addr, u32 dpsc, u32 freq, u32 bm_addr);
 int mon_power_on(int core_id, void *ep);
 int mon_power_off(int core_id);
diff --git a/arch/arm/mach-keystone/include/mach/msmc.h b/arch/arm/mach-keystone/include/mach/msmc.h
index 3fe09ea59684..d4a9303bd382 100644
--- a/arch/arm/mach-keystone/include/mach/msmc.h
+++ b/arch/arm/mach-keystone/include/mach/msmc.h
@@ -10,6 +10,7 @@
 #define _MSMC_H_
 
 #include <asm/arch/hardware.h>
+#include <asm/types.h>
 
 enum mpax_seg_size {
 	MPAX_SEG_4K = 0x0b,
diff --git a/arch/arm/mach-keystone/include/mach/mux-k2g.h b/arch/arm/mach-keystone/include/mach/mux-k2g.h
index 67d47f817216..8030ccfabb05 100644
--- a/arch/arm/mach-keystone/include/mach/mux-k2g.h
+++ b/arch/arm/mach-keystone/include/mach/mux-k2g.h
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #define K2G_PADCFG_REG	(KS2_DEVICE_STATE_CTRL_BASE + 0x1000)
 
diff --git a/arch/arm/mach-keystone/include/mach/psc_defs.h b/arch/arm/mach-keystone/include/mach/psc_defs.h
index 0864b37a5318..1966adb0fe34 100644
--- a/arch/arm/mach-keystone/include/mach/psc_defs.h
+++ b/arch/arm/mach-keystone/include/mach/psc_defs.h
@@ -8,6 +8,7 @@
 
 #include <stdbool.h>
 #include <asm/arch/hardware.h>
+#include <asm/types.h>
 
 /*
  * FILE PURPOSE: Local Power Sleep Controller definitions
diff --git a/arch/arm/mach-keystone/init.c b/arch/arm/mach-keystone/init.c
index 1c67a1fdfe8c..03e24290a517 100644
--- a/arch/arm/mach-keystone/init.c
+++ b/arch/arm/mach-keystone/init.c
@@ -18,6 +18,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/psc_defs.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 #define MAX_PCI_PORTS		2
 enum pci_mode	{
diff --git a/arch/arm/mach-keystone/keystone.c b/arch/arm/mach-keystone/keystone.c
index a74c4d995b18..e8b805acb60d 100644
--- a/arch/arm/mach-keystone/keystone.c
+++ b/arch/arm/mach-keystone/keystone.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <asm/arch/psc_defs.h>
 #include <asm/arch/hardware.h>
+#include <asm/types.h>
 
 /**
  * cpu_to_bus - swap bytes of the 32-bit data if the device is BE
diff --git a/arch/arm/mach-keystone/mon.c b/arch/arm/mach-keystone/mon.c
index af038dec7ae6..f92078964a57 100644
--- a/arch/arm/mach-keystone/mon.c
+++ b/arch/arm/mach-keystone/mon.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <command.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <mach/mon.h>
 #include <spl.h>
 asm(".arch_extension sec\n\t");
diff --git a/arch/arm/mach-keystone/msmc.c b/arch/arm/mach-keystone/msmc.c
index f5cadfbf6692..ba9e16d0f0c9 100644
--- a/arch/arm/mach-keystone/msmc.c
+++ b/arch/arm/mach-keystone/msmc.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <asm/arch/msmc.h>
+#include <asm/types.h>
 
 struct mpax {
 	u32	mpaxl;
diff --git a/arch/arm/mach-keystone/psc.c b/arch/arm/mach-keystone/psc.c
index 6005cbaeca8f..f47b08e4bbe6 100644
--- a/arch/arm/mach-keystone/psc.c
+++ b/arch/arm/mach-keystone/psc.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <stdbool.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-kirkwood/cache.c b/arch/arm/mach-kirkwood/cache.c
index 009b7deeca64..13ee22afdc0f 100644
--- a/arch/arm/mach-kirkwood/cache.c
+++ b/arch/arm/mach-kirkwood/cache.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <asm/arch/cpu.h>
 #include <asm/cache.h>
+#include <asm/types.h>
 
 #define FEROCEON_EXTRA_FEATURE_L2C_EN (1<<22)
 
diff --git a/arch/arm/mach-kirkwood/cpu.c b/arch/arm/mach-kirkwood/cpu.c
index 48d4327be764..5bdc2d9b56d7 100644
--- a/arch/arm/mach-kirkwood/cpu.c
+++ b/arch/arm/mach-kirkwood/cpu.c
@@ -20,6 +20,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <mvebu_mmc.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-kirkwood/include/mach/cpu.h b/arch/arm/mach-kirkwood/include/mach/cpu.h
index ea42182cf9c6..ade2ccc82899 100644
--- a/arch/arm/mach-kirkwood/include/mach/cpu.h
+++ b/arch/arm/mach-kirkwood/include/mach/cpu.h
@@ -25,6 +25,7 @@
 #define SYSRST_CNT_1SEC_VAL		(25*1000000)
 #define KW_REG_MPP_OUT_DRV_REG		(KW_MPP_BASE + 0xE0)
 
+#include <asm/types.h>
 enum memory_bank {
 	BANK0,
 	BANK1,
diff --git a/arch/arm/mach-kirkwood/mpp.c b/arch/arm/mach-kirkwood/mpp.c
index 4fdad99cadef..9525de119cdf 100644
--- a/arch/arm/mach-kirkwood/mpp.c
+++ b/arch/arm/mach-kirkwood/mpp.c
@@ -15,6 +15,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
+#include <asm/types.h>
 
 static u32 kirkwood_variant(void)
 {
diff --git a/arch/arm/mach-lpc32xx/clk.c b/arch/arm/mach-lpc32xx/clk.c
index cb2344d79fec..d6060800f16a 100644
--- a/arch/arm/mach-lpc32xx/clk.c
+++ b/arch/arm/mach-lpc32xx/clk.c
@@ -9,6 +9,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/clk.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 static struct clk_pm_regs *clk = (struct clk_pm_regs *)CLK_PM_BASE;
 
diff --git a/arch/arm/mach-lpc32xx/cpu.c b/arch/arm/mach-lpc32xx/cpu.c
index cdc069639d5b..65cb6110430b 100644
--- a/arch/arm/mach-lpc32xx/cpu.c
+++ b/arch/arm/mach-lpc32xx/cpu.c
@@ -15,6 +15,7 @@
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 static struct clk_pm_regs *clk = (struct clk_pm_regs *)CLK_PM_BASE;
 static struct wdt_regs  *wdt = (struct wdt_regs *)WDT_BASE;
diff --git a/arch/arm/mach-lpc32xx/devices.c b/arch/arm/mach-lpc32xx/devices.c
index 7e7646a2e15a..545236b57b67 100644
--- a/arch/arm/mach-lpc32xx/devices.c
+++ b/arch/arm/mach-lpc32xx/devices.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <ns16550.h>
 #include <dm/platform_data/lpc32xx_hsuart.h>
+#include <linux/types.h>
 
 #include <asm/arch/clk.h>
 #include <asm/arch/uart.h>
diff --git a/arch/arm/mach-lpc32xx/dram.c b/arch/arm/mach-lpc32xx/dram.c
index 160223792353..495458af540a 100644
--- a/arch/arm/mach-lpc32xx/dram.c
+++ b/arch/arm/mach-lpc32xx/dram.c
@@ -18,6 +18,7 @@
 #include <asm/arch/emc.h>
 #include <asm/io.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 static struct clk_pm_regs *clk = (struct clk_pm_regs *)CLK_PM_BASE;
 static struct emc_regs *emc = (struct emc_regs *)EMC_BASE;
diff --git a/arch/arm/mach-lpc32xx/timer.c b/arch/arm/mach-lpc32xx/timer.c
index 90183e3014eb..cf5d3de1b580 100644
--- a/arch/arm/mach-lpc32xx/timer.c
+++ b/arch/arm/mach-lpc32xx/timer.c
@@ -11,6 +11,7 @@
 #include <asm/arch/timer.h>
 #include <asm/io.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 static struct timer_regs  *timer0 = (struct timer_regs *)TIMER0_BASE;
 static struct timer_regs  *timer1 = (struct timer_regs *)TIMER1_BASE;
diff --git a/arch/arm/mach-mediatek/mt7622/init.c b/arch/arm/mach-mediatek/mt7622/init.c
index ff07936be34c..2ae23c649245 100644
--- a/arch/arm/mach-mediatek/mt7622/init.c
+++ b/arch/arm/mach-mediatek/mt7622/init.c
@@ -10,6 +10,7 @@
 #include <stdio.h>
 #include <asm/armv8/mmu.h>
 #include <asm/cache.h>
+#include <linux/types.h>
 
 int print_cpuinfo(void)
 {
diff --git a/arch/arm/mach-mediatek/mt7623/init.c b/arch/arm/mach-mediatek/mt7623/init.c
index fa7a05291bc9..78813545eeed 100644
--- a/arch/arm/mach-mediatek/mt7623/init.c
+++ b/arch/arm/mach-mediatek/mt7623/init.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
 #include <stdio.h>
 #include <asm/global_data.h>
@@ -11,6 +12,7 @@
 #include <linux/kernel.h>
 #include <linux/sizes.h>
 #include <asm/arch/misc.h>
+#include <linux/types.h>
 
 #include "preloader.h"
 
diff --git a/arch/arm/mach-mediatek/mt7623/preloader.h b/arch/arm/mach-mediatek/mt7623/preloader.h
index 2d2c71ad4c49..a696bf12b883 100644
--- a/arch/arm/mach-mediatek/mt7623/preloader.h
+++ b/arch/arm/mach-mediatek/mt7623/preloader.h
@@ -6,6 +6,7 @@
 #ifndef __PRELOADER_H_
 #define __PRELOADER_H_
 
+#include <asm/types.h>
 enum forbidden_mode {
 	F_FACTORY_MODE = 0x0001
 };
diff --git a/arch/arm/mach-mediatek/mt7629/init.c b/arch/arm/mach-mediatek/mt7629/init.c
index a643810d2450..cddc82d26e4a 100644
--- a/arch/arm/mach-mediatek/mt7629/init.c
+++ b/arch/arm/mach-mediatek/mt7629/init.c
@@ -6,6 +6,7 @@
 
 #include <clk.h>
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <fdtdec.h>
 #include <init.h>
@@ -15,6 +16,7 @@
 #include <asm/arch/misc.h>
 #include <asm/global_data.h>
 #include <asm/sections.h>
+#include <asm/types.h>
 #include <dm/uclass.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
diff --git a/arch/arm/mach-mediatek/mt8512/init.c b/arch/arm/mach-mediatek/mt8512/init.c
index c14e7d22e6fc..94b2f95146a2 100644
--- a/arch/arm/mach-mediatek/mt8512/init.c
+++ b/arch/arm/mach-mediatek/mt8512/init.c
@@ -21,6 +21,7 @@
 #include <asm/sections.h>
 #include <dm/uclass.h>
 #include <dt-bindings/clock/mt8512-clk.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-mediatek/mt8516/init.c b/arch/arm/mach-mediatek/mt8516/init.c
index 64b8f5fbcb65..174ddf2578df 100644
--- a/arch/arm/mach-mediatek/mt8516/init.c
+++ b/arch/arm/mach-mediatek/mt8516/init.c
@@ -21,6 +21,7 @@
 #include <dm/uclass.h>
 #include <dt-bindings/clock/mt8516-clk.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-mediatek/mt8518/init.c b/arch/arm/mach-mediatek/mt8518/init.c
index 2e4ab1fa37ab..4d55a9effacb 100644
--- a/arch/arm/mach-mediatek/mt8518/init.c
+++ b/arch/arm/mach-mediatek/mt8518/init.c
@@ -21,6 +21,7 @@
 #include <asm/sections.h>
 #include <dm/uclass.h>
 #include <dt-bindings/clock/mt8518-clk.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-mediatek/spl.c b/arch/arm/mach-mediatek/spl.c
index 927175c5a319..6b9635976874 100644
--- a/arch/arm/mach-mediatek/spl.c
+++ b/arch/arm/mach-mediatek/spl.c
@@ -9,6 +9,7 @@
 #include <hang.h>
 #include <init.h>
 #include <spl.h>
+#include <linux/types.h>
 
 #include "init.h"
 
diff --git a/arch/arm/mach-meson/board-axg.c b/arch/arm/mach-meson/board-axg.c
index 7e07465d2540..3507cda0c44e 100644
--- a/arch/arm/mach-meson/board-axg.c
+++ b/arch/arm/mach-meson/board-axg.c
@@ -15,6 +15,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/armv8/mmu.h>
+#include <asm/types.h>
 #include <linux/sizes.h>
 #include <phy.h>
 
diff --git a/arch/arm/mach-meson/board-common.c b/arch/arm/mach-meson/board-common.c
index cdae5f987708..fb92a9c46d6f 100644
--- a/arch/arm/mach-meson/board-common.c
+++ b/arch/arm/mach-meson/board-common.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <init.h>
 #include <net.h>
@@ -22,6 +23,7 @@
 #include <asm/armv8/mmu.h>
 #include <asm/unaligned.h>
 #include <efi_loader.h>
+#include <linux/types.h>
 #include <u-boot/crc.h>
 
 #if CONFIG_IS_ENABLED(FASTBOOT)
diff --git a/arch/arm/mach-meson/board-g12a.c b/arch/arm/mach-meson/board-g12a.c
index 250a9617c0d5..b40b5641490b 100644
--- a/arch/arm/mach-meson/board-g12a.c
+++ b/arch/arm/mach-meson/board-g12a.c
@@ -17,6 +17,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/armv8/mmu.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/sizes.h>
diff --git a/arch/arm/mach-meson/board-gx.c b/arch/arm/mach-meson/board-gx.c
index b38811fb9510..47c1279a548d 100644
--- a/arch/arm/mach-meson/board-gx.c
+++ b/arch/arm/mach-meson/board-gx.c
@@ -16,6 +16,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/armv8/mmu.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
 #include <linux/sizes.h>
diff --git a/arch/arm/mach-meson/board-info.c b/arch/arm/mach-meson/board-info.c
index 94c523c17fda..226254038de0 100644
--- a/arch/arm/mach-meson/board-info.c
+++ b/arch/arm/mach-meson/board-info.c
@@ -10,6 +10,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <dm.h>
+#include <asm/types.h>
 #include <linux/bitfield.h>
 #include <regmap.h>
 #include <syscon.h>
diff --git a/arch/arm/mach-meson/sm.c b/arch/arm/mach-meson/sm.c
index 62feaccfce05..76c62ec6f1b2 100644
--- a/arch/arm/mach-meson/sm.c
+++ b/arch/arm/mach-meson/sm.c
@@ -24,6 +24,7 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define FN_GET_SHARE_MEM_INPUT_BASE	0x82000020
 #define FN_GET_SHARE_MEM_OUTPUT_BASE	0x82000021
diff --git a/arch/arm/mach-mvebu/arm64-common.c b/arch/arm/mach-mvebu/arm64-common.c
index aecdbb86a9d7..f4be7c76f7b8 100644
--- a/arch/arm/mach-mvebu/arm64-common.c
+++ b/arch/arm/mach-mvebu/arm64-common.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <fdtdec.h>
 #include <init.h>
@@ -19,6 +20,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/armv8/mmu.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-mvebu/armada3700/cpu.c b/arch/arm/mach-mvebu/armada3700/cpu.c
index b98f78fde3b7..e3772f0b5bd3 100644
--- a/arch/arm/mach-mvebu/armada3700/cpu.c
+++ b/arch/arm/mach-mvebu/armada3700/cpu.c
@@ -21,6 +21,7 @@
 #include <asm/armv8/mmu.h>
 #include <sort.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /* Armada 3700 */
 #define MVEBU_GPIO_NB_REG_BASE		(MVEBU_REGISTER(0x13800))
diff --git a/arch/arm/mach-mvebu/armada8k/cpu.c b/arch/arm/mach-mvebu/armada8k/cpu.c
index 529dac905951..81959bb51f0f 100644
--- a/arch/arm/mach-mvebu/armada8k/cpu.c
+++ b/arch/arm/mach-mvebu/armada8k/cpu.c
@@ -13,6 +13,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/armv8/mmu.h>
+#include <linux/types.h>
 
 /* Armada 7k/8k */
 #define MVEBU_RFU_BASE			(MVEBU_REGISTER(0x6f0000))
diff --git a/arch/arm/mach-mvebu/cpu.c b/arch/arm/mach-mvebu/cpu.c
index 53c44ede7db6..56ef4f3309d7 100644
--- a/arch/arm/mach-mvebu/cpu.c
+++ b/arch/arm/mach-mvebu/cpu.c
@@ -5,9 +5,11 @@
 
 #include <common.h>
 #include <ahci.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <init.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-mvebu/dram.c b/arch/arm/mach-mvebu/dram.c
index 8241926fad01..763aa83a3525 100644
--- a/arch/arm/mach-mvebu/dram.c
+++ b/arch/arm/mach-mvebu/dram.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 
 #if defined(CONFIG_ARCH_MVEBU)
 /* Use common XOR definitions for A3x and AXP */
diff --git a/arch/arm/mach-mvebu/efuse.c b/arch/arm/mach-mvebu/efuse.c
index 8ada3cf93e72..322e2e3db388 100644
--- a/arch/arm/mach-mvebu/efuse.c
+++ b/arch/arm/mach-mvebu/efuse.c
@@ -10,6 +10,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/efuse.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
diff --git a/arch/arm/mach-mvebu/gpio.c b/arch/arm/mach-mvebu/gpio.c
index 1d1e3df8ba90..97e5c11865ab 100644
--- a/arch/arm/mach-mvebu/gpio.c
+++ b/arch/arm/mach-mvebu/gpio.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 
 /*
  * mvebu_config_gpio - GPIO configuration
diff --git a/arch/arm/mach-mvebu/include/mach/cpu.h b/arch/arm/mach-mvebu/include/mach/cpu.h
index c3f8ad850651..a58a0d706de9 100644
--- a/arch/arm/mach-mvebu/include/mach/cpu.h
+++ b/arch/arm/mach-mvebu/include/mach/cpu.h
@@ -15,6 +15,7 @@
 #define MVEBU_REG_PCIE_DEVID		(MVEBU_REG_PCIE_BASE + 0x00)
 #define MVEBU_REG_PCIE_REVID		(MVEBU_REG_PCIE_BASE + 0x08)
 
+#include <asm/types.h>
 enum memory_bank {
 	BANK0,
 	BANK1,
diff --git a/arch/arm/mach-mvebu/include/mach/efuse.h b/arch/arm/mach-mvebu/include/mach/efuse.h
index bbc5844d849c..c965b62dcd7a 100644
--- a/arch/arm/mach-mvebu/include/mach/efuse.h
+++ b/arch/arm/mach-mvebu/include/mach/efuse.h
@@ -7,6 +7,7 @@
 #define _MVEBU_EFUSE_H
 
 #include <common.h>
+#include <asm/types.h>
 
 struct efuse_val {
 	union {
diff --git a/arch/arm/mach-mvebu/mbus.c b/arch/arm/mach-mvebu/mbus.c
index e754f122b1c4..cd51e38aed62 100644
--- a/arch/arm/mach-mvebu/mbus.c
+++ b/arch/arm/mach-mvebu/mbus.c
@@ -30,6 +30,8 @@
  * This driver:
  *
  * - Reads out the SDRAM address decoding windows at initialization
+#include <compiler.h>
+#include <linux/types.h>
  *   time, and fills the mbus_dram_info structure with these
  *   informations. The exported function mv_mbus_dram_info() allow
  *   device drivers to get those informations related to the SDRAM
diff --git a/arch/arm/mach-mvebu/serdes/a38x/ctrl_pex.c b/arch/arm/mach-mvebu/serdes/a38x/ctrl_pex.c
index adef3331a7c5..4768d0537d74 100644
--- a/arch/arm/mach-mvebu/serdes/a38x/ctrl_pex.c
+++ b/arch/arm/mach-mvebu/serdes/a38x/ctrl_pex.c
@@ -4,10 +4,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <spl.h>
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 
diff --git a/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec-38x.c b/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec-38x.c
index 98354da9b273..b774e62f856e 100644
--- a/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec-38x.c
+++ b/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec-38x.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 
 #include "high_speed_env_spec.h"
 #include "sys_env_lib.h"
diff --git a/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec.c b/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec.c
index e4bec786429b..5457868c18ee 100644
--- a/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec.c
+++ b/arch/arm/mach-mvebu/serdes/a38x/high_speed_env_spec.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #include "high_speed_env_spec.h"
diff --git a/arch/arm/mach-mvebu/serdes/a38x/seq_exec.c b/arch/arm/mach-mvebu/serdes/a38x/seq_exec.c
index a8f491b5b414..d4157b1ea722 100644
--- a/arch/arm/mach-mvebu/serdes/a38x/seq_exec.c
+++ b/arch/arm/mach-mvebu/serdes/a38x/seq_exec.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #include "seq_exec.h"
diff --git a/arch/arm/mach-mvebu/serdes/a38x/seq_exec.h b/arch/arm/mach-mvebu/serdes/a38x/seq_exec.h
index fe0cb8f75df2..71b3a75fb839 100644
--- a/arch/arm/mach-mvebu/serdes/a38x/seq_exec.h
+++ b/arch/arm/mach-mvebu/serdes/a38x/seq_exec.h
@@ -6,6 +6,7 @@
 #ifndef _SEQ_EXEC_H
 #define _SEQ_EXEC_H
 
+#include <asm/types.h>
 #define NA			0xff
 #define DEFAULT_PARAM		0
 #define MV_BOARD_TCLK_ERROR	0xffffffff
diff --git a/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c b/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c
index 1be86bc4ae1d..71a1e61f3824 100644
--- a/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c
+++ b/arch/arm/mach-mvebu/serdes/a38x/sys_env_lib.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 
 #include "seq_exec.h"
 #include "sys_env_lib.h"
diff --git a/arch/arm/mach-mvebu/serdes/axp/high_speed_env_lib.c b/arch/arm/mach-mvebu/serdes/axp/high_speed_env_lib.c
index 3ebda4ec6841..85f4b90706e5 100644
--- a/arch/arm/mach-mvebu/serdes/axp/high_speed_env_lib.c
+++ b/arch/arm/mach-mvebu/serdes/axp/high_speed_env_lib.c
@@ -4,11 +4,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <i2c.h>
 #include <spl.h>
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/string.h>
 
diff --git a/arch/arm/mach-mvebu/serdes/axp/high_speed_env_spec.c b/arch/arm/mach-mvebu/serdes/axp/high_speed_env_spec.c
index 539d237623a1..b4a69374b432 100644
--- a/arch/arm/mach-mvebu/serdes/axp/high_speed_env_spec.c
+++ b/arch/arm/mach-mvebu/serdes/axp/high_speed_env_spec.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 
 #include "high_speed_env_spec.h"
 
diff --git a/arch/arm/mach-mvebu/spl.c b/arch/arm/mach-mvebu/spl.c
index 16ebb7a59e55..b97401c26ac0 100644
--- a/arch/arm/mach-mvebu/spl.c
+++ b/arch/arm/mach-mvebu/spl.c
@@ -15,6 +15,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <linux/types.h>
 
 static u32 get_boot_device(void)
 {
diff --git a/arch/arm/mach-nexell/clock.c b/arch/arm/mach-nexell/clock.c
index cd66248cd65b..56e2540fdd86 100644
--- a/arch/arm/mach-nexell/clock.c
+++ b/arch/arm/mach-nexell/clock.c
@@ -6,7 +6,9 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <vsprintf.h>
+#include <asm/types.h>
 #include <linux/err.h>
 #include <asm/io.h>
 #include <asm/arch/nexell.h>
diff --git a/arch/arm/mach-nexell/cmd_boot_linux.c b/arch/arm/mach-nexell/cmd_boot_linux.c
index f2dedfe16257..03815a9c09c8 100644
--- a/arch/arm/mach-nexell/cmd_boot_linux.c
+++ b/arch/arm/mach-nexell/cmd_boot_linux.c
@@ -11,6 +11,7 @@
 #include <errno.h>
 #include <image.h>
 #include <fdt_support.h>
+#include <linux/types.h>
 
 #if !defined(CONFIG_SPL_BUILD) || defined(CONFIG_SPL_CLI_FRAMEWORK)
 
diff --git a/arch/arm/mach-nexell/include/mach/display.h b/arch/arm/mach-nexell/include/mach/display.h
index b167e63a5a4c..192341278b1b 100644
--- a/arch/arm/mach-nexell/include/mach/display.h
+++ b/arch/arm/mach-nexell/include/mach/display.h
@@ -60,6 +60,7 @@
 #define	DPC_PADCLKSEL_VCLK2		1	/* VCLK2 */
 
 /* display sync info for DPC */
+#include <linux/types.h>
 struct dp_sync_info {
 	int interlace;
 	int h_active_len;
diff --git a/arch/arm/mach-nexell/include/mach/display_dev.h b/arch/arm/mach-nexell/include/mach/display_dev.h
index 77eb614768c7..ed5b1a641ee0 100644
--- a/arch/arm/mach-nexell/include/mach/display_dev.h
+++ b/arch/arm/mach-nexell/include/mach/display_dev.h
@@ -14,6 +14,7 @@
 #include <lcd.h>
 #endif
 
+#include <linux/types.h>
 struct nx_display_dev {
 #if defined CONFIG_VIDEO || defined CONFIG_DM_VIDEO
 	GraphicDevice graphic_device;
diff --git a/arch/arm/mach-nexell/include/mach/mipi_display.h b/arch/arm/mach-nexell/include/mach/mipi_display.h
index f3fdec64647c..a1cfde273888 100644
--- a/arch/arm/mach-nexell/include/mach/mipi_display.h
+++ b/arch/arm/mach-nexell/include/mach/mipi_display.h
@@ -12,6 +12,7 @@
 #define MIPI_DISPLAY_H
 
 /* MIPI DSI Processor-to-Peripheral transaction types */
+#include <linux/types.h>
 enum {
 	MIPI_DSI_V_SYNC_START				= 0x01,
 	MIPI_DSI_V_SYNC_END				= 0x11,
diff --git a/arch/arm/mach-nexell/include/mach/reset.h b/arch/arm/mach-nexell/include/mach/reset.h
index e1301d4e53d3..a533e42fa037 100644
--- a/arch/arm/mach-nexell/include/mach/reset.h
+++ b/arch/arm/mach-nexell/include/mach/reset.h
@@ -7,6 +7,7 @@
 #ifndef __NEXELL_RESET__
 #define __NEXELL_RESET__
 
+#include <asm/types.h>
 #define NUMBER_OF_RESET_MODULE_PIN      69
 
 enum rstcon {
diff --git a/arch/arm/mach-nexell/include/mach/sec_reg.h b/arch/arm/mach-nexell/include/mach/sec_reg.h
index e3ae5ac1bb40..f8396c460fd4 100644
--- a/arch/arm/mach-nexell/include/mach/sec_reg.h
+++ b/arch/arm/mach-nexell/include/mach/sec_reg.h
@@ -4,6 +4,7 @@
  * Youngbok, Park <park at nexell.co.kr>
  */
 
+#include <compiler.h>
 #define NEXELL_L2C_SEC_ID	0
 #define NEXELL_MALI_SEC_ID	2
 #define NEXELL_MIPI_SEC_ID	4
diff --git a/arch/arm/mach-nexell/include/mach/tieoff.h b/arch/arm/mach-nexell/include/mach/tieoff.h
index 70e9652b6dca..598ffdd18011 100644
--- a/arch/arm/mach-nexell/include/mach/tieoff.h
+++ b/arch/arm/mach-nexell/include/mach/tieoff.h
@@ -7,6 +7,7 @@
 #ifndef _NEXELL_TIEOFF_H
 #define _NEXELL_TIEOFF_H
 
+#include <asm/types.h>
 void nx_tieoff_set(u32 tieoff_index, u32 tieoff_value);
 u32 nx_tieoff_get(u32 tieoff_index);
 
diff --git a/arch/arm/mach-nexell/nx_sec_reg.c b/arch/arm/mach-nexell/nx_sec_reg.c
index 3d3dd9fd8b6a..09d2eed48ae3 100644
--- a/arch/arm/mach-nexell/nx_sec_reg.c
+++ b/arch/arm/mach-nexell/nx_sec_reg.c
@@ -4,6 +4,7 @@
  * Youngbok, Park <park at nexell.co.kr>
  */
 
+#include <compiler.h>
 #include <linux/types.h>
 #include <asm/io.h>
 #include <asm/arch/nexell.h>
diff --git a/arch/arm/mach-nexell/reset.c b/arch/arm/mach-nexell/reset.c
index 1f732a3d3732..97155d8ffd0e 100644
--- a/arch/arm/mach-nexell/reset.c
+++ b/arch/arm/mach-nexell/reset.c
@@ -12,6 +12,7 @@
 #include <asm/io.h>
 #include <asm/arch/nexell.h>
 #include <asm/arch/reset.h>
+#include <asm/types.h>
 
 struct	nx_rstcon_registerset {
 	u32	regrst[(NUMBER_OF_RESET_MODULE_PIN + 31) >> 5];
diff --git a/arch/arm/mach-nexell/tieoff.c b/arch/arm/mach-nexell/tieoff.c
index 5a4744c296a2..2c2db9f6ce6c 100644
--- a/arch/arm/mach-nexell/tieoff.c
+++ b/arch/arm/mach-nexell/tieoff.c
@@ -5,12 +5,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/arch/nexell.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/reset.h>
 #include <asm/arch/nx_gpio.h>
 #include <asm/arch/tieoff.h>
 #include <asm/arch/sec_reg.h>
+#include <asm/types.h>
 
 #define	NX_PIN_FN_SIZE	4
 #define TIEOFF_REG_NUM 33
diff --git a/arch/arm/mach-nexell/timer.c b/arch/arm/mach-nexell/timer.c
index 2f98bd7fa4a1..1119ce746459 100644
--- a/arch/arm/mach-nexell/timer.c
+++ b/arch/arm/mach-nexell/timer.c
@@ -5,8 +5,10 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <log.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <asm/arch/nexell.h>
diff --git a/arch/arm/mach-omap2/abb.c b/arch/arm/mach-omap2/abb.c
index 24775bdc41ce..c3487f83b75a 100644
--- a/arch/arm/mach-omap2/abb.c
+++ b/arch/arm/mach-omap2/abb.c
@@ -9,11 +9,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/omap_common.h>
 #include <asm/arch/clock.h>
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-omap2/am33xx/board.c b/arch/arm/mach-omap2/am33xx/board.c
index 0b0372e22cad..ce399663191c 100644
--- a/arch/arm/mach-omap2/am33xx/board.c
+++ b/arch/arm/mach-omap2/am33xx/board.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <debug_uart.h>
 #include <errno.h>
@@ -38,6 +39,7 @@
 #include <linux/errno.h>
 #include <linux/compiler.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 #include <linux/usb/ch9.h>
 #include <linux/usb/gadget.h>
 #include <linux/usb/musb.h>
diff --git a/arch/arm/mach-omap2/am33xx/clk_synthesizer.c b/arch/arm/mach-omap2/am33xx/clk_synthesizer.c
index b2493d8179be..ac97bfa69c0b 100644
--- a/arch/arm/mach-omap2/am33xx/clk_synthesizer.c
+++ b/arch/arm/mach-omap2/am33xx/clk_synthesizer.c
@@ -12,6 +12,7 @@
 #include <stdio.h>
 #include <asm/arch/clk_synthesizer.h>
 #include <i2c.h>
+#include <asm/types.h>
 
 /**
  * clk_synthesizer_reg_read - Read register from synthesizer.
diff --git a/arch/arm/mach-omap2/am33xx/clock.c b/arch/arm/mach-omap2/am33xx/clock.c
index 4339817b556a..d665da8856f4 100644
--- a/arch/arm/mach-omap2/am33xx/clock.c
+++ b/arch/arm/mach-omap2/am33xx/clock.c
@@ -8,6 +8,7 @@
  * Copyright (C) 2013, Texas Instruments, Incorporated - http://www.ti.com/
  */
 #include <common.h>
+#include <compiler.h>
 #include <hang.h>
 #include <init.h>
 #include <log.h>
@@ -17,6 +18,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 static void setup_post_dividers(const struct dpll_regs *dpll_regs,
 			 const struct dpll_params *params)
diff --git a/arch/arm/mach-omap2/am33xx/clock_am33xx.c b/arch/arm/mach-omap2/am33xx/clock_am33xx.c
index b5136f8f46c9..5a483a9e3d03 100644
--- a/arch/arm/mach-omap2/am33xx/clock_am33xx.c
+++ b/arch/arm/mach-omap2/am33xx/clock_am33xx.c
@@ -8,12 +8,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/hardware.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #define OSC	(V_OSCK/1000000)
 
diff --git a/arch/arm/mach-omap2/am33xx/clock_am43xx.c b/arch/arm/mach-omap2/am33xx/clock_am43xx.c
index b98bb9989c0b..ef4b79f272de 100644
--- a/arch/arm/mach-omap2/am33xx/clock_am43xx.c
+++ b/arch/arm/mach-omap2/am33xx/clock_am43xx.c
@@ -14,6 +14,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 struct cm_perpll *const cmper = (struct cm_perpll *)CM_PER;
 struct cm_wkuppll *const cmwkup = (struct cm_wkuppll *)CM_WKUP;
diff --git a/arch/arm/mach-omap2/am33xx/clock_ti814x.c b/arch/arm/mach-omap2/am33xx/clock_ti814x.c
index 27abaff48fce..8e2c224bf7ed 100644
--- a/arch/arm/mach-omap2/am33xx/clock_ti814x.c
+++ b/arch/arm/mach-omap2/am33xx/clock_ti814x.c
@@ -12,6 +12,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/hardware.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 /* PRCM */
diff --git a/arch/arm/mach-omap2/am33xx/clock_ti816x.c b/arch/arm/mach-omap2/am33xx/clock_ti816x.c
index ec4cc753812d..c551a5d7cc61 100644
--- a/arch/arm/mach-omap2/am33xx/clock_ti816x.c
+++ b/arch/arm/mach-omap2/am33xx/clock_ti816x.c
@@ -27,6 +27,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/hardware.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 #include <asm/emif.h>
diff --git a/arch/arm/mach-omap2/am33xx/ddr.c b/arch/arm/mach-omap2/am33xx/ddr.c
index 4caa2d62ab25..cb30d65bca7e 100644
--- a/arch/arm/mach-omap2/am33xx/ddr.c
+++ b/arch/arm/mach-omap2/am33xx/ddr.c
@@ -13,6 +13,7 @@
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
 #include <asm/emif.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 /**
diff --git a/arch/arm/mach-omap2/am33xx/emif4.c b/arch/arm/mach-omap2/am33xx/emif4.c
index a5fdb0433dc7..1d5fb5340886 100644
--- a/arch/arm/mach-omap2/am33xx/emif4.c
+++ b/arch/arm/mach-omap2/am33xx/emif4.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/ddr_defs.h>
 #include <asm/arch/hardware.h>
diff --git a/arch/arm/mach-omap2/am33xx/mux.c b/arch/arm/mach-omap2/am33xx/mux.c
index aad3ec855697..06534cb1db4d 100644
--- a/arch/arm/mach-omap2/am33xx/mux.c
+++ b/arch/arm/mach-omap2/am33xx/mux.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/arch/mux.h>
 #include <asm/arch/hardware.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-omap2/am33xx/sys_info.c b/arch/arm/mach-omap2/am33xx/sys_info.c
index 86078f856edc..ba81baa914cf 100644
--- a/arch/arm/mach-omap2/am33xx/sys_info.c
+++ b/arch/arm/mach-omap2/am33xx/sys_info.c
@@ -19,6 +19,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/clock.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include <power/tps65910.h>
 #include <linux/compiler.h>
 
diff --git a/arch/arm/mach-omap2/boot-common.c b/arch/arm/mach-omap2/boot-common.c
index 05efe04dc359..be6e02ee4db7 100644
--- a/arch/arm/mach-omap2/boot-common.c
+++ b/arch/arm/mach-omap2/boot-common.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <ahci.h>
+#include <compiler.h>
 #include <log.h>
 #include <spl.h>
 #include <asm/global_data.h>
@@ -19,6 +20,7 @@
 #include <watchdog.h>
 #include <scsi.h>
 #include <i2c.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-omap2/clocks-common.c b/arch/arm/mach-omap2/clocks-common.c
index a151358f6e0f..bf31d893c571 100644
--- a/arch/arm/mach-omap2/clocks-common.c
+++ b/arch/arm/mach-omap2/clocks-common.c
@@ -13,6 +13,7 @@
  *	Rajendra Nayak <rnayak at ti.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <hang.h>
 #include <i2c.h>
 #include <init.h>
@@ -22,6 +23,7 @@
 #include <asm/gpio.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <asm/utils.h>
 #include <asm/omap_gpio.h>
 #include <asm/emif.h>
diff --git a/arch/arm/mach-omap2/emif-common.c b/arch/arm/mach-omap2/emif-common.c
index 15c13463f905..bfd2c158486a 100644
--- a/arch/arm/mach-omap2/emif-common.c
+++ b/arch/arm/mach-omap2/emif-common.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <hang.h>
 #include <init.h>
 #include <log.h>
@@ -20,6 +21,7 @@
 #include <asm/arch/sys_proto.h>
 #include <asm/omap_common.h>
 #include <asm/omap_sec_common.h>
+#include <asm/types.h>
 #include <asm/utils.h>
 #include <linux/compiler.h>
 #include <asm/ti-common/ti-edma3.h>
diff --git a/arch/arm/mach-omap2/fdt-common.c b/arch/arm/mach-omap2/fdt-common.c
index e1d3a72ec6d7..4efccd0d7fc0 100644
--- a/arch/arm/mach-omap2/fdt-common.c
+++ b/arch/arm/mach-omap2/fdt-common.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <log.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/arch/arm/mach-omap2/hwinit-common.c b/arch/arm/mach-omap2/hwinit-common.c
index b3ada7af6b86..ae7b98096849 100644
--- a/arch/arm/mach-omap2/hwinit-common.c
+++ b/arch/arm/mach-omap2/hwinit-common.c
@@ -11,6 +11,7 @@
  *	Steve Sakoman	<steve at sakoman.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <debug_uart.h>
 #include <fdtdec.h>
 #include <init.h>
@@ -24,6 +25,7 @@
 #include <linux/compiler.h>
 #include <asm/system.h>
 #include <dm/root.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-omap2/mem-common.c b/arch/arm/mach-omap2/mem-common.c
index 50d5f3e9ebaf..2a15692f681a 100644
--- a/arch/arm/mach-omap2/mem-common.c
+++ b/arch/arm/mach-omap2/mem-common.c
@@ -18,6 +18,7 @@
 #include <asm/arch/mem.h>
 #include <asm/arch/sys_proto.h>
 #include <command.h>
+#include <asm/types.h>
 #include <linux/mtd/omap_gpmc.h>
 #include <jffs2/load_kernel.h>
 
diff --git a/arch/arm/mach-omap2/omap-cache.c b/arch/arm/mach-omap2/omap-cache.c
index 5034404801aa..a07e138b110d 100644
--- a/arch/arm/mach-omap2/omap-cache.c
+++ b/arch/arm/mach-omap2/omap-cache.c
@@ -16,6 +16,7 @@
 #include <log.h>
 #include <asm/cache.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-omap2/omap3/am35x_musb.c b/arch/arm/mach-omap2/omap3/am35x_musb.c
index 23b55d8d7059..e655d6fb9451 100644
--- a/arch/arm/mach-omap2/omap3/am35x_musb.c
+++ b/arch/arm/mach-omap2/omap3/am35x_musb.c
@@ -9,12 +9,13 @@
  */
 
 #include <common.h>
-#include <dm.h>
 #include <log.h>
 #include <stdio.h>
 #include <time.h>
+#include <dm/device.h>
 #include <asm/io.h>
 #include <asm/arch/am35x_def.h>
+#include <asm/types.h>
 
 void am35x_musb_reset(struct udevice *dev)
 {
diff --git a/arch/arm/mach-omap2/omap3/board.c b/arch/arm/mach-omap2/omap3/board.c
index 30a3b02bb289..8c9f0b7a9e30 100644
--- a/arch/arm/mach-omap2/omap3/board.c
+++ b/arch/arm/mach-omap2/omap3/board.c
@@ -17,6 +17,7 @@
  */
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <dm.h>
 #include <init.h>
 #include <spl.h>
@@ -30,6 +31,7 @@
 #include <asm/omap_common.h>
 #include <linux/compiler.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /* Declarations */
 extern omap3_sysinfo sysinfo;
diff --git a/arch/arm/mach-omap2/omap3/boot.c b/arch/arm/mach-omap2/omap3/boot.c
index ea26115b7118..5544b87894a1 100644
--- a/arch/arm/mach-omap2/omap3/boot.c
+++ b/arch/arm/mach-omap2/omap3/boot.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
 #include <spl.h>
+#include <asm/types.h>
 
 static u32 boot_devices[] = {
 	BOOT_DEVICE_ONENAND,
diff --git a/arch/arm/mach-omap2/omap3/clock.c b/arch/arm/mach-omap2/omap3/clock.c
index 71f73492c6c4..2cb751269cce 100644
--- a/arch/arm/mach-omap2/omap3/clock.c
+++ b/arch/arm/mach-omap2/omap3/clock.c
@@ -18,6 +18,7 @@
 #include <asm/arch/mem.h>
 #include <asm/arch/sys_proto.h>
 #include <command.h>
+#include <asm/types.h>
 
 /******************************************************************************
  * get_sys_clk_speed() - determine reference oscillator speed
diff --git a/arch/arm/mach-omap2/omap3/emac.c b/arch/arm/mach-omap2/omap3/emac.c
index 4c102dadf42d..d96acfed2e54 100644
--- a/arch/arm/mach-omap2/omap3/emac.c
+++ b/arch/arm/mach-omap2/omap3/emac.c
@@ -10,6 +10,7 @@
 #include <net.h>
 #include <asm/io.h>
 #include <asm/arch/am35x_def.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 
 /*
diff --git a/arch/arm/mach-omap2/omap3/emif4.c b/arch/arm/mach-omap2/omap3/emif4.c
index df6e9ce1d6ce..40f2209d9f9c 100644
--- a/arch/arm/mach-omap2/omap3/emif4.c
+++ b/arch/arm/mach-omap2/omap3/emif4.c
@@ -16,6 +16,7 @@
 #include <asm/arch/mem.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/emif4.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 extern omap3_sysinfo sysinfo;
diff --git a/arch/arm/mach-omap2/omap3/sdrc.c b/arch/arm/mach-omap2/omap3/sdrc.c
index 4d85b1dee991..7a9b95c3e755 100644
--- a/arch/arm/mach-omap2/omap3/sdrc.c
+++ b/arch/arm/mach-omap2/omap3/sdrc.c
@@ -27,6 +27,7 @@
 #include <asm/io.h>
 #include <asm/arch/mem.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 extern omap3_sysinfo sysinfo;
diff --git a/arch/arm/mach-omap2/omap3/sys_info.c b/arch/arm/mach-omap2/omap3/sys_info.c
index 5ed2c6bdeeeb..526d3d60dba9 100644
--- a/arch/arm/mach-omap2/omap3/sys_info.c
+++ b/arch/arm/mach-omap2/omap3/sys_info.c
@@ -12,12 +12,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/io.h>
 #include <asm/arch/mem.h>	/* get mem tables */
 #include <asm/arch/sys_proto.h>
 #include <asm/bootm.h>
 #include <asm/omap_common.h>
+#include <asm/types.h>
 
 #include <i2c.h>
 #include <linux/compiler.h>
diff --git a/arch/arm/mach-omap2/omap4/boot.c b/arch/arm/mach-omap2/omap4/boot.c
index 90b5380ae398..95f57366b52e 100644
--- a/arch/arm/mach-omap2/omap4/boot.c
+++ b/arch/arm/mach-omap2/omap4/boot.c
@@ -10,6 +10,7 @@
 #include <asm/omap_common.h>
 #include <asm/arch/sys_proto.h>
 #include <spl.h>
+#include <asm/types.h>
 
 static u32 boot_devices[] = {
 	BOOT_DEVICE_MMC2,
diff --git a/arch/arm/mach-omap2/omap4/emif.c b/arch/arm/mach-omap2/omap4/emif.c
index 35a51645be7f..6fe3fa4e40a0 100644
--- a/arch/arm/mach-omap2/omap4/emif.c
+++ b/arch/arm/mach-omap2/omap4/emif.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <asm/emif.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <asm/utils.h>
 
 #ifndef CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS
diff --git a/arch/arm/mach-omap2/omap4/hw_data.c b/arch/arm/mach-omap2/omap4/hw_data.c
index 5f15e086c644..91608d9fed97 100644
--- a/arch/arm/mach-omap2/omap4/hw_data.c
+++ b/arch/arm/mach-omap2/omap4/hw_data.c
@@ -16,6 +16,7 @@
 #include <asm/arch/clock.h>
 #include <asm/omap_gpio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 struct prcm_regs const **prcm =
 			(struct prcm_regs const **) OMAP_SRAM_SCRATCH_PRCM_PTR;
diff --git a/arch/arm/mach-omap2/omap4/hwinit.c b/arch/arm/mach-omap2/omap4/hwinit.c
index 27dfa9142dcd..efb4d6a80480 100644
--- a/arch/arm/mach-omap2/omap4/hwinit.c
+++ b/arch/arm/mach-omap2/omap4/hwinit.c
@@ -19,6 +19,7 @@
 #include <asm/emif.h>
 #include <asm/arch/gpio.h>
 #include <asm/omap_common.h>
+#include <linux/types.h>
 
 u32 *const omap_si_rev = (u32 *)OMAP_SRAM_SCRATCH_OMAP_REV;
 
diff --git a/arch/arm/mach-omap2/omap4/sdram_elpida.c b/arch/arm/mach-omap2/omap4/sdram_elpida.c
index 2a18cf0215d9..a775494e4073 100644
--- a/arch/arm/mach-omap2/omap4/sdram_elpida.c
+++ b/arch/arm/mach-omap2/omap4/sdram_elpida.c
@@ -10,8 +10,10 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/emif.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 
 /*
  * This file provides details of the LPDDR2 SDRAM parts used on OMAP4430
diff --git a/arch/arm/mach-omap2/omap5/abb.c b/arch/arm/mach-omap2/omap5/abb.c
index 2f9f8e65d03e..730ab832db5b 100644
--- a/arch/arm/mach-omap2/omap5/abb.c
+++ b/arch/arm/mach-omap2/omap5/abb.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <asm/omap_common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 /*
diff --git a/arch/arm/mach-omap2/omap5/boot.c b/arch/arm/mach-omap2/omap5/boot.c
index 15d6836c6eae..bbc9a90fe69b 100644
--- a/arch/arm/mach-omap2/omap5/boot.c
+++ b/arch/arm/mach-omap2/omap5/boot.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/omap_common.h>
 #include <spl.h>
+#include <asm/types.h>
 
 static u32 boot_devices[] = {
 #if defined(CONFIG_DRA7XX)
diff --git a/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c b/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
index c5d51aabfc94..509f6617c593 100644
--- a/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
+++ b/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
@@ -10,6 +10,7 @@
 #include <hang.h>
 #include <log.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <asm/utils.h>
 #include <asm/arch/dra7xx_iodelay.h>
 #include <asm/arch/omap.h>
diff --git a/arch/arm/mach-omap2/omap5/emif.c b/arch/arm/mach-omap2/omap5/emif.c
index 2de36b6feca6..5348921c060d 100644
--- a/arch/arm/mach-omap2/omap5/emif.c
+++ b/arch/arm/mach-omap2/omap5/emif.c
@@ -12,6 +12,7 @@
 #include <log.h>
 #include <asm/emif.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <asm/utils.h>
 
 #ifndef CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS
diff --git a/arch/arm/mach-omap2/omap5/fdt.c b/arch/arm/mach-omap2/omap5/fdt.c
index af9717801e44..c1321f6dc1fc 100644
--- a/arch/arm/mach-omap2/omap5/fdt.c
+++ b/arch/arm/mach-omap2/omap5/fdt.c
@@ -12,6 +12,7 @@
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <malloc.h>
+#include <linux/types.h>
 
 #include <asm/omap_common.h>
 #include <asm/arch-omap5/sys_proto.h>
diff --git a/arch/arm/mach-omap2/omap5/hw_data.c b/arch/arm/mach-omap2/omap5/hw_data.c
index d9c447c0e8d2..171155ddef61 100644
--- a/arch/arm/mach-omap2/omap5/hw_data.c
+++ b/arch/arm/mach-omap2/omap5/hw_data.c
@@ -9,6 +9,7 @@
  * Sricharan R <r.sricharan at ti.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <palmas.h>
 #include <stdio.h>
 #include <asm/arch/omap.h>
@@ -18,6 +19,7 @@
 #include <asm/omap_gpio.h>
 #include <asm/io.h>
 #include <asm/emif.h>
+#include <asm/types.h>
 
 struct prcm_regs const **prcm =
 			(struct prcm_regs const **) OMAP_SRAM_SCRATCH_PRCM_PTR;
diff --git a/arch/arm/mach-omap2/omap5/hwinit.c b/arch/arm/mach-omap2/omap5/hwinit.c
index 47ac8656bfe1..9773bc29e7df 100644
--- a/arch/arm/mach-omap2/omap5/hwinit.c
+++ b/arch/arm/mach-omap2/omap5/hwinit.c
@@ -12,6 +12,7 @@
  *	Sricharan	<r.sricharan at ti.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <palmas.h>
 #include <asm/armv7.h>
@@ -24,6 +25,7 @@
 #include <asm/arch/gpio.h>
 #include <asm/emif.h>
 #include <asm/omap_common.h>
+#include <linux/types.h>
 
 u32 *const omap_si_rev = (u32 *)OMAP_SRAM_SCRATCH_OMAP_REV;
 
diff --git a/arch/arm/mach-omap2/omap5/prcm-regs.c b/arch/arm/mach-omap2/omap5/prcm-regs.c
index b5baebc06926..3e8086dddb15 100644
--- a/arch/arm/mach-omap2/omap5/prcm-regs.c
+++ b/arch/arm/mach-omap2/omap5/prcm-regs.c
@@ -11,6 +11,7 @@
 
 #include <asm/omap_common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 struct prcm_regs const omap5_es1_prcm = {
 	/* cm1.ckgen */
diff --git a/arch/arm/mach-omap2/omap5/sdram.c b/arch/arm/mach-omap2/omap5/sdram.c
index f6c8eb9f1bdd..4306ea3a63fd 100644
--- a/arch/arm/mach-omap2/omap5/sdram.c
+++ b/arch/arm/mach-omap2/omap5/sdram.c
@@ -11,9 +11,11 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/emif.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 /*
diff --git a/arch/arm/mach-omap2/pipe3-phy.c b/arch/arm/mach-omap2/pipe3-phy.c
index fb64961db4ba..f6e50f92e9fa 100644
--- a/arch/arm/mach-omap2/pipe3-phy.c
+++ b/arch/arm/mach-omap2/pipe3-phy.c
@@ -7,11 +7,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <sata.h>
 #include <stdio.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
diff --git a/arch/arm/mach-omap2/pipe3-phy.h b/arch/arm/mach-omap2/pipe3-phy.h
index 182bdcd4c81f..3999d7b60f57 100644
--- a/arch/arm/mach-omap2/pipe3-phy.h
+++ b/arch/arm/mach-omap2/pipe3-phy.h
@@ -9,6 +9,8 @@
 #ifndef __OMAP_PIPE3_PHY_H
 #define __OMAP_PIPE3_PHY_H
 
+#include <compiler.h>
+#include <asm/types.h>
 struct pipe3_dpll_params {
 	u16     m;
 	u8      n;
diff --git a/arch/arm/mach-omap2/reset.c b/arch/arm/mach-omap2/reset.c
index 2bbd5fcb9b8e..194e01163aaa 100644
--- a/arch/arm/mach-omap2/reset.c
+++ b/arch/arm/mach-omap2/reset.c
@@ -8,10 +8,12 @@
  *
  * Sricharan R <r.sricharan at ti.com>
  */
+#include <compiler.h>
 #include <config.h>
 #include <cpu_func.h>
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
+#include <asm/types.h>
 #include <linux/compiler.h>
 
 void __weak reset_cpu(unsigned long ignored)
diff --git a/arch/arm/mach-omap2/sata.c b/arch/arm/mach-omap2/sata.c
index 4672dc534c5e..636cfb42aced 100644
--- a/arch/arm/mach-omap2/sata.c
+++ b/arch/arm/mach-omap2/sata.c
@@ -8,11 +8,13 @@
 
 #include <common.h>
 #include <ahci.h>
+#include <compiler.h>
 #include <scsi.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sata.h>
 #include <sata.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include "pipe3-phy.h"
 
 static struct pipe3_dpll_map dpll_map_sata[] = {
diff --git a/arch/arm/mach-omap2/sec-common.c b/arch/arm/mach-omap2/sec-common.c
index 8dcaa1ac6c9e..d0cf68e30be3 100644
--- a/arch/arm/mach-omap2/sec-common.c
+++ b/arch/arm/mach-omap2/sec-common.c
@@ -24,6 +24,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/arch/sys_proto.h>
 #include <asm/cache.h>
diff --git a/arch/arm/mach-omap2/sysinfo-common.c b/arch/arm/mach-omap2/sysinfo-common.c
index 49bc3a634fb8..6bce3a1c7ce2 100644
--- a/arch/arm/mach-omap2/sysinfo-common.c
+++ b/arch/arm/mach-omap2/sysinfo-common.c
@@ -9,6 +9,7 @@
 #include <asm/arch/omap.h>
 #include <asm/io.h>
 #include <asm/omap_common.h>
+#include <asm/types.h>
 
 /**
  * Tell if device is GP/HS/EMU/TST.
diff --git a/arch/arm/mach-omap2/timer.c b/arch/arm/mach-omap2/timer.c
index 82b10f6b2487..c5565a741eb6 100644
--- a/arch/arm/mach-omap2/timer.c
+++ b/arch/arm/mach-omap2/timer.c
@@ -23,6 +23,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/clock.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-omap2/utils.c b/arch/arm/mach-omap2/utils.c
index 4ee409521ef7..be082cf2c977 100644
--- a/arch/arm/mach-omap2/utils.c
+++ b/arch/arm/mach-omap2/utils.c
@@ -4,6 +4,7 @@
  * Aneesh V <aneesh at ti.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <env.h>
 #include <part.h>
 #include <stdio.h>
@@ -11,6 +12,7 @@
 #include <asm/setup.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/omap_common.h>
+#include <asm/types.h>
 #include <linux/printk.h>
 
 static void do_cancel_out(u32 *num, u32 *den, u32 factor)
diff --git a/arch/arm/mach-omap2/vc.c b/arch/arm/mach-omap2/vc.c
index 5888bc86752c..b72c7823716f 100644
--- a/arch/arm/mach-omap2/vc.c
+++ b/arch/arm/mach-omap2/vc.c
@@ -19,6 +19,7 @@
 #include <asm/omap_common.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/clock.h>
+#include <asm/types.h>
 
 /* Register defines and masks for VC IP Block */
 /* PRM_VC_CFG_I2C_MODE */
diff --git a/arch/arm/mach-orion5x/cpu.c b/arch/arm/mach-orion5x/cpu.c
index 81f3bd37ea35..f050a30d983a 100644
--- a/arch/arm/mach-orion5x/cpu.c
+++ b/arch/arm/mach-orion5x/cpu.c
@@ -17,6 +17,7 @@
 #include <vsprintf.h>
 #include <asm/cache.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <u-boot/md5.h>
 #include <asm/arch/cpu.h>
diff --git a/arch/arm/mach-orion5x/dram.c b/arch/arm/mach-orion5x/dram.c
index c9a3750e48de..34bf24a96de1 100644
--- a/arch/arm/mach-orion5x/dram.c
+++ b/arch/arm/mach-orion5x/dram.c
@@ -13,6 +13,7 @@
 #include <init.h>
 #include <asm/arch/cpu.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-orion5x/include/mach/cpu.h b/arch/arm/mach-orion5x/include/mach/cpu.h
index c3ff89669e45..6118f42313ff 100644
--- a/arch/arm/mach-orion5x/include/mach/cpu.h
+++ b/arch/arm/mach-orion5x/include/mach/cpu.h
@@ -21,6 +21,7 @@
 #define ORION5XGBE_PORT_SERIAL_CONTROL1_REG(_x)	\
 		((_x ? ORION5X_EGIGA0_BASE : ORION5X_EGIGA1_BASE) + 0x44c)
 
+#include <asm/types.h>
 enum memory_bank {
 	BANK0,
 	BANK1,
diff --git a/arch/arm/mach-orion5x/timer.c b/arch/arm/mach-orion5x/timer.c
index 0adf3dcc6483..3f9f0f9b6255 100644
--- a/arch/arm/mach-orion5x/timer.c
+++ b/arch/arm/mach-orion5x/timer.c
@@ -13,6 +13,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #define UBOOT_CNTR	0	/* counter to use for uboot timer */
 
diff --git a/arch/arm/mach-owl/soc.c b/arch/arm/mach-owl/soc.c
index 8ac35b56d42b..4c081c67e256 100644
--- a/arch/arm/mach-owl/soc.c
+++ b/arch/arm/mach-owl/soc.c
@@ -16,6 +16,7 @@
 #include <asm/io.h>
 #include <asm/mach-types.h>
 #include <asm/psci.h>
+#include <linux/types.h>
 
 #define DMM_INTERLEAVE_PER_CH_CFG	0xe0290028
 
diff --git a/arch/arm/mach-rmobile/cpu_info-r8a7740.c b/arch/arm/mach-rmobile/cpu_info-r8a7740.c
index dcbe25f37ab9..16a5a8ae29a4 100644
--- a/arch/arm/mach-rmobile/cpu_info-r8a7740.c
+++ b/arch/arm/mach-rmobile/cpu_info-r8a7740.c
@@ -5,6 +5,7 @@
  */
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 u32 rmobile_get_cpu_type(void)
 {
diff --git a/arch/arm/mach-rmobile/cpu_info-rcar.c b/arch/arm/mach-rmobile/cpu_info-rcar.c
index ce9312f9d828..724d3c67d590 100644
--- a/arch/arm/mach-rmobile/cpu_info-rcar.c
+++ b/arch/arm/mach-rmobile/cpu_info-rcar.c
@@ -6,6 +6,7 @@
  */
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #define PRR_MASK		0x7fff
 #define R8A7796_REV_1_0		0x5200
diff --git a/arch/arm/mach-rmobile/cpu_info-sh73a0.c b/arch/arm/mach-rmobile/cpu_info-sh73a0.c
index 0c7ee8acf5a7..7f01201629bd 100644
--- a/arch/arm/mach-rmobile/cpu_info-sh73a0.c
+++ b/arch/arm/mach-rmobile/cpu_info-sh73a0.c
@@ -5,6 +5,7 @@
  */
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 u32 rmobile_get_cpu_type(void)
 {
diff --git a/arch/arm/mach-rmobile/cpu_info.c b/arch/arm/mach-rmobile/cpu_info.c
index 4d7fc0d9c71f..f491aaad0a8b 100644
--- a/arch/arm/mach-rmobile/cpu_info.c
+++ b/arch/arm/mach-rmobile/cpu_info.c
@@ -10,6 +10,7 @@
 #include <init.h>
 #include <asm/io.h>
 #include <env.h>
+#include <asm/types.h>
 #include <linux/ctype.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-rmobile/include/mach/ehci-rmobile.h b/arch/arm/mach-rmobile/include/mach/ehci-rmobile.h
index ca8c5f370637..641872cbbcd3 100644
--- a/arch/arm/mach-rmobile/include/mach/ehci-rmobile.h
+++ b/arch/arm/mach-rmobile/include/mach/ehci-rmobile.h
@@ -8,6 +8,7 @@
 #define __EHCI_RMOBILE_H__
 
 /* Register offset */
+#include <asm/types.h>
 #define OHCI_OFFSET	0x00
 #define OHCI_SIZE	0x1000
 #define EHCI_OFFSET	0x1000
diff --git a/arch/arm/mach-rmobile/include/mach/rcar-mstp.h b/arch/arm/mach-rmobile/include/mach/rcar-mstp.h
index f2f8ce95992c..f408b1e76e35 100644
--- a/arch/arm/mach-rmobile/include/mach/rcar-mstp.h
+++ b/arch/arm/mach-rmobile/include/mach/rcar-mstp.h
@@ -9,6 +9,7 @@
 #ifndef __ASM_ARCH_RCAR_MSTP_H
 #define __ASM_ARCH_RCAR_MSTP_H
 
+#include <asm/types.h>
 #define mstp_setbits(type, addr, saddr, set) \
 		out_##type((saddr), in_##type(addr) | (set))
 #define mstp_clrbits(type, addr, saddr, clear) \
diff --git a/arch/arm/mach-rmobile/include/mach/rmobile.h b/arch/arm/mach-rmobile/include/mach/rmobile.h
index a50249dc9638..e41004eb4371 100644
--- a/arch/arm/mach-rmobile/include/mach/rmobile.h
+++ b/arch/arm/mach-rmobile/include/mach/rmobile.h
@@ -41,6 +41,7 @@
 #define RMOBILE_CPU_TYPE_R8A77995	0x58
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 u32 rmobile_get_cpu_type(void);
 u32 rmobile_get_cpu_rev_integer(void);
 u32 rmobile_get_cpu_rev_fraction(void);
diff --git a/arch/arm/mach-rmobile/timer.c b/arch/arm/mach-rmobile/timer.c
index ba06535e4c2a..d911dbea51f5 100644
--- a/arch/arm/mach-rmobile/timer.c
+++ b/arch/arm/mach-rmobile/timer.c
@@ -12,6 +12,7 @@
 #include <asm/arch-armv7/globaltimer.h>
 #include <asm/arch/rmobile.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 static struct globaltimer *global_timer = \
 		(struct globaltimer *)GLOBAL_TIMER_BASE_ADDR;
diff --git a/arch/arm/mach-rockchip/board.c b/arch/arm/mach-rockchip/board.c
index 117aa030938c..de59ae383d7a 100644
--- a/arch/arm/mach-rockchip/board.c
+++ b/arch/arm/mach-rockchip/board.c
@@ -4,6 +4,7 @@
  */
 #include <common.h>
 #include <clk.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <dm.h>
 #include <init.h>
@@ -19,6 +20,7 @@
 #include <asm/arch-rockchip/clock.h>
 #include <asm/arch-rockchip/periph.h>
 #include <asm/arch-rockchip/misc.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/string.h>
 #include <power/regulator.h>
diff --git a/arch/arm/mach-rockchip/boot_mode.c b/arch/arm/mach-rockchip/boot_mode.c
index 69e64fb39c38..3c52b94e0d0c 100644
--- a/arch/arm/mach-rockchip/boot_mode.c
+++ b/arch/arm/mach-rockchip/boot_mode.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <adc.h>
 #include <command.h>
+#include <compiler.h>
 #include <env.h>
 #include <log.h>
 #include <stdbool.h>
diff --git a/arch/arm/mach-rockchip/bootrom.c b/arch/arm/mach-rockchip/bootrom.c
index 24ba39537cd2..3a557e0a1019 100644
--- a/arch/arm/mach-rockchip/bootrom.c
+++ b/arch/arm/mach-rockchip/bootrom.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/setjmp.h>
 #include <asm/system.h>
+#include <asm/types.h>
 
 /*
  * Force the jmp_buf to the data-section, as .bss will not be valid
diff --git a/arch/arm/mach-rockchip/misc.c b/arch/arm/mach-rockchip/misc.c
index 82a106e786e8..17a0579bddc6 100644
--- a/arch/arm/mach-rockchip/misc.c
+++ b/arch/arm/mach-rockchip/misc.c
@@ -16,6 +16,7 @@
 #include <log.h>
 #include <stdio.h>
 #include <vsprintf.h>
+#include <asm/types.h>
 #include <dm/uclass-internal.h>
 #include <misc.h>
 #include <linux/string.h>
diff --git a/arch/arm/mach-rockchip/px30-board-tpl.c b/arch/arm/mach-rockchip/px30-board-tpl.c
index 085e65062011..bb9aac92e5b1 100644
--- a/arch/arm/mach-rockchip/px30-board-tpl.c
+++ b/arch/arm/mach-rockchip/px30-board-tpl.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/arch-rockchip/bootrom.h>
 #include <asm/arch-rockchip/sdram_px30.h>
+#include <linux/types.h>
 
 #define TIMER_LOAD_COUNT0	0x00
 #define TIMER_LOAD_COUNT1	0x04
diff --git a/arch/arm/mach-rockchip/px30/px30.c b/arch/arm/mach-rockchip/px30/px30.c
index 6fcef63c1b09..fd72b9a51c5c 100644
--- a/arch/arm/mach-rockchip/px30/px30.c
+++ b/arch/arm/mach-rockchip/px30/px30.c
@@ -13,6 +13,7 @@
 #include <asm/arch-rockchip/uart.h>
 #include <asm/arch-rockchip/clock.h>
 #include <asm/arch-rockchip/cru_px30.h>
+#include <asm/types.h>
 #include <dt-bindings/clock/px30-cru.h>
 
 static struct mm_region px30_mem_map[] = {
diff --git a/arch/arm/mach-rockchip/px30/syscon_px30.c b/arch/arm/mach-rockchip/px30/syscon_px30.c
index 4672bdbf0092..ce387f007e88 100644
--- a/arch/arm/mach-rockchip/px30/syscon_px30.c
+++ b/arch/arm/mach-rockchip/px30/syscon_px30.c
@@ -8,6 +8,7 @@
 #include <log.h>
 #include <syscon.h>
 #include <asm/arch-rockchip/clock.h>
+#include <linux/types.h>
 
 static const struct udevice_id px30_syscon_ids[] = {
 	{ .compatible = "rockchip,px30-pmu", .data = ROCKCHIP_SYSCON_PMU },
diff --git a/arch/arm/mach-rockchip/rk3036-board-spl.c b/arch/arm/mach-rockchip/rk3036-board-spl.c
index 964e981b8637..1fbbab9a71ce 100644
--- a/arch/arm/mach-rockchip/rk3036-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3036-board-spl.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/arch-rockchip/bootrom.h>
 #include <asm/arch-rockchip/sdram_rk3036.h>
+#include <linux/types.h>
 
 #define TIMER_LOAD_COUNT_L	0x00
 #define TIMER_LOAD_COUNT_H	0x04
diff --git a/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c b/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c
index 6ae254e99af5..38f6f2cba374 100644
--- a/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c
+++ b/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c
@@ -12,6 +12,7 @@
 #include <asm/arch-rockchip/sdram_rk3036.h>
 #include <asm/arch-rockchip/uart.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /*
  * we can not fit the code to access the device tree in SPL
diff --git a/arch/arm/mach-rockchip/rk3188/rk3188.c b/arch/arm/mach-rockchip/rk3188/rk3188.c
index 1338979febb3..91bbafa29bfd 100644
--- a/arch/arm/mach-rockchip/rk3188/rk3188.c
+++ b/arch/arm/mach-rockchip/rk3188/rk3188.c
@@ -3,6 +3,7 @@
  * (C) Copyright 2019 Rockchip Electronics Co., Ltd
  */
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <hang.h>
 #include <init.h>
diff --git a/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c b/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c
index ea7d7b5b1acc..81677f9485a4 100644
--- a/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c
+++ b/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c
@@ -9,6 +9,7 @@
 #include <log.h>
 #include <syscon.h>
 #include <asm/arch-rockchip/clock.h>
+#include <linux/types.h>
 
 static const struct udevice_id rk3188_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3188-noc", .data = ROCKCHIP_SYSCON_NOC },
diff --git a/arch/arm/mach-rockchip/rk3288/rk3288.c b/arch/arm/mach-rockchip/rk3288/rk3288.c
index 1589ab1b2c70..37d9fa020372 100644
--- a/arch/arm/mach-rockchip/rk3288/rk3288.c
+++ b/arch/arm/mach-rockchip/rk3288/rk3288.c
@@ -4,6 +4,7 @@
  */
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <dm.h>
 #include <env.h>
 #include <clk.h>
@@ -25,6 +26,7 @@
 #include <asm/u-boot.h>
 #include <linux/err.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c b/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c
index e3da0a019476..c4142ef75ad4 100644
--- a/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c
+++ b/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c
@@ -9,6 +9,7 @@
 #include <log.h>
 #include <syscon.h>
 #include <asm/arch-rockchip/clock.h>
+#include <linux/types.h>
 
 static const struct udevice_id rk3288_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3288-noc", .data = ROCKCHIP_SYSCON_NOC },
diff --git a/arch/arm/mach-rockchip/rk3308/rk3308.c b/arch/arm/mach-rockchip/rk3308/rk3308.c
index 60566d092f62..eab9e851b5eb 100644
--- a/arch/arm/mach-rockchip/rk3308/rk3308.c
+++ b/arch/arm/mach-rockchip/rk3308/rk3308.c
@@ -3,6 +3,7 @@
  *Copyright (c) 2018 Rockchip Electronics Co., Ltd
  */
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
 #include <malloc.h>
 #include <stdio.h>
@@ -12,6 +13,7 @@
 #include <asm/arch-rockchip/hardware.h>
 #include <asm/gpio.h>
 #include <debug_uart.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-rockchip/rk3368/rk3368.c b/arch/arm/mach-rockchip/rk3368/rk3368.c
index 9b7132d471c3..28f0fc89115b 100644
--- a/arch/arm/mach-rockchip/rk3368/rk3368.c
+++ b/arch/arm/mach-rockchip/rk3368/rk3368.c
@@ -17,6 +17,7 @@
 #include <asm/arch-rockchip/hardware.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c b/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c
index cba0dda3e80a..2b02387cc4a8 100644
--- a/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c
+++ b/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c
@@ -10,6 +10,7 @@
 #include <log.h>
 #include <syscon.h>
 #include <asm/arch-rockchip/clock.h>
+#include <linux/types.h>
 
 static const struct udevice_id rk3368_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3368-grf",
diff --git a/arch/arm/mach-rockchip/rk3399/rk3399.c b/arch/arm/mach-rockchip/rk3399/rk3399.c
index 69eb741292a3..9ec470557410 100644
--- a/arch/arm/mach-rockchip/rk3399/rk3399.c
+++ b/arch/arm/mach-rockchip/rk3399/rk3399.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <fdt_support.h>
 #include <init.h>
 #include <log.h>
@@ -18,6 +19,7 @@
 #include <asm/arch-rockchip/gpio.h>
 #include <asm/arch-rockchip/grf_rk3399.h>
 #include <asm/arch-rockchip/hardware.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #include <linux/printk.h>
diff --git a/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c b/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c
index 690cbe7f2789..296998a11bca 100644
--- a/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c
+++ b/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c
@@ -8,6 +8,7 @@
 #include <log.h>
 #include <syscon.h>
 #include <asm/arch-rockchip/clock.h>
+#include <linux/types.h>
 
 static const struct udevice_id rk3399_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3399-grf", .data = ROCKCHIP_SYSCON_GRF },
diff --git a/arch/arm/mach-rockchip/sdram.c b/arch/arm/mach-rockchip/sdram.c
index 39c2ee2eedfa..d627a9921617 100644
--- a/arch/arm/mach-rockchip/sdram.c
+++ b/arch/arm/mach-rockchip/sdram.c
@@ -13,6 +13,7 @@
 #include <asm/arch-rockchip/sdram.h>
 #include <dm/uclass-internal.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-rockchip/spl-boot-order.c b/arch/arm/mach-rockchip/spl-boot-order.c
index 57ea84a9346e..f67fbe23a3bc 100644
--- a/arch/arm/mach-rockchip/spl-boot-order.c
+++ b/arch/arm/mach-rockchip/spl-boot-order.c
@@ -4,11 +4,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <log.h>
 #include <mmc.h>
 #include <spl.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/string.h>
 
diff --git a/arch/arm/mach-rockchip/spl.c b/arch/arm/mach-rockchip/spl.c
index e20b83a490db..6f7c9c9e6228 100644
--- a/arch/arm/mach-rockchip/spl.c
+++ b/arch/arm/mach-rockchip/spl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <debug_uart.h>
 #include <dm.h>
 #include <hang.h>
@@ -18,6 +19,7 @@
 #include <asm/io.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-rockchip/tpl.c b/arch/arm/mach-rockchip/tpl.c
index df052b82f2f4..37f7c493a233 100644
--- a/arch/arm/mach-rockchip/tpl.c
+++ b/arch/arm/mach-rockchip/tpl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <debug_uart.h>
 #include <dm.h>
 #include <hang.h>
@@ -16,6 +17,7 @@
 #include <asm/io.h>
 #include <asm/arch-rockchip/bootrom.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 #define TIMER_LOAD_COUNT_L	0x00
 #define TIMER_LOAD_COUNT_H	0x04
diff --git a/arch/arm/mach-s5pc1xx/clock.c b/arch/arm/mach-s5pc1xx/clock.c
index e8809aa8ce2b..28e8130ed6a6 100644
--- a/arch/arm/mach-s5pc1xx/clock.c
+++ b/arch/arm/mach-s5pc1xx/clock.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/clk.h>
+#include <linux/types.h>
 
 #define CLK_M	0
 #define CLK_D	1
diff --git a/arch/arm/mach-s5pc1xx/include/mach/gpio.h b/arch/arm/mach-s5pc1xx/include/mach/gpio.h
index c8dfbdd642a7..93e1f0c5320c 100644
--- a/arch/arm/mach-s5pc1xx/include/mach/gpio.h
+++ b/arch/arm/mach-s5pc1xx/include/mach/gpio.h
@@ -8,6 +8,7 @@
 #define __ASM_ARCH_GPIO_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 struct s5p_gpio_bank {
 	unsigned int	con;
 	unsigned int	dat;
diff --git a/arch/arm/mach-s5pc1xx/include/mach/mmc.h b/arch/arm/mach-s5pc1xx/include/mach/mmc.h
index 70787908600d..e32a3c9f9d83 100644
--- a/arch/arm/mach-s5pc1xx/include/mach/mmc.h
+++ b/arch/arm/mach-s5pc1xx/include/mach/mmc.h
@@ -7,6 +7,7 @@
 #ifndef __ASM_ARCH_MMC_H_
 #define __ASM_ARCH_MMC_H_
 
+#include <asm/types.h>
 #define S5P_MMC_DEV_OFFSET	0x100000
 
 #define SDHCI_CONTROL2		0x80
diff --git a/arch/arm/mach-s5pc1xx/include/mach/sromc.h b/arch/arm/mach-s5pc1xx/include/mach/sromc.h
index 45de4a799d30..cd484edb4cab 100644
--- a/arch/arm/mach-s5pc1xx/include/mach/sromc.h
+++ b/arch/arm/mach-s5pc1xx/include/mach/sromc.h
@@ -27,6 +27,7 @@
 #define SMC_BC_PMC(x)  (x << 0)  /* normal(1data)page mode configuration */
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 struct s5p_sromc {
 	unsigned int	bw;
 	unsigned int	bc[6];
diff --git a/arch/arm/mach-s5pc1xx/include/mach/sys_proto.h b/arch/arm/mach-s5pc1xx/include/mach/sys_proto.h
index 89de400043a9..d3f6735c8e7c 100644
--- a/arch/arm/mach-s5pc1xx/include/mach/sys_proto.h
+++ b/arch/arm/mach-s5pc1xx/include/mach/sys_proto.h
@@ -7,6 +7,7 @@
 #ifndef _SYS_PROTO_H_
 #define _SYS_PROTO_H_
 
+#include <asm/types.h>
 u32 get_device_type(void);
 
 #endif
diff --git a/arch/arm/mach-snapdragon/clock-apq8016.c b/arch/arm/mach-snapdragon/clock-apq8016.c
index 6e4a0ccb90a1..8a5e0d5f5577 100644
--- a/arch/arm/mach-snapdragon/clock-apq8016.c
+++ b/arch/arm/mach-snapdragon/clock-apq8016.c
@@ -13,6 +13,7 @@
 #include <errno.h>
 #include <asm/io.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 #include "clock-snapdragon.h"
 
 /* GPLL0 clock control registers */
diff --git a/arch/arm/mach-snapdragon/clock-apq8096.c b/arch/arm/mach-snapdragon/clock-apq8096.c
index e5011be8f2e2..c0116b434d5c 100644
--- a/arch/arm/mach-snapdragon/clock-apq8096.c
+++ b/arch/arm/mach-snapdragon/clock-apq8096.c
@@ -13,6 +13,7 @@
 #include <errno.h>
 #include <asm/io.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 #include "clock-snapdragon.h"
 
 /* GPLL0 clock control registers */
diff --git a/arch/arm/mach-snapdragon/clock-snapdragon.c b/arch/arm/mach-snapdragon/clock-snapdragon.c
index 78e30ea5bab6..efc3d9493fb8 100644
--- a/arch/arm/mach-snapdragon/clock-snapdragon.c
+++ b/arch/arm/mach-snapdragon/clock-snapdragon.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <linux/bitops.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 #include "clock-snapdragon.h"
 
 /* CBCR register fields */
diff --git a/arch/arm/mach-snapdragon/clock-snapdragon.h b/arch/arm/mach-snapdragon/clock-snapdragon.h
index 58fab40a2e45..32f247a1aaa9 100644
--- a/arch/arm/mach-snapdragon/clock-snapdragon.h
+++ b/arch/arm/mach-snapdragon/clock-snapdragon.h
@@ -7,6 +7,7 @@
 #ifndef _CLOCK_SNAPDRAGON_H
 #define _CLOCK_SNAPDRAGON_H
 
+#include <linux/types.h>
 #define CFG_CLK_SRC_CXO   (0 << 8)
 #define CFG_CLK_SRC_GPLL0 (1 << 8)
 #define CFG_CLK_SRC_MASK  (7 << 8)
diff --git a/arch/arm/mach-snapdragon/dram.c b/arch/arm/mach-snapdragon/dram.c
index df7148fee11e..c168dd23e2db 100644
--- a/arch/arm/mach-snapdragon/dram.c
+++ b/arch/arm/mach-snapdragon/dram.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <log.h>
 #include <part.h>
@@ -15,6 +16,7 @@
 #include <stdio.h>
 #include <asm/arch/dram.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #define SMEM_USABLE_RAM_PARTITION_TABLE 402
 #define RAM_PART_NAME_LENGTH            16
diff --git a/arch/arm/mach-snapdragon/include/mach/misc.h b/arch/arm/mach-snapdragon/include/mach/misc.h
index c60e3e472470..5f7d74ba123f 100644
--- a/arch/arm/mach-snapdragon/include/mach/misc.h
+++ b/arch/arm/mach-snapdragon/include/mach/misc.h
@@ -7,6 +7,7 @@
 #ifndef MISC_H
 #define MISC_H
 
+#include <asm/types.h>
 u32 msm_board_serial(void);
 void msm_generate_mac_addr(u8 *mac);
 
diff --git a/arch/arm/mach-snapdragon/misc.c b/arch/arm/mach-snapdragon/misc.c
index 03515f6d2bf2..1af4734bfb7e 100644
--- a/arch/arm/mach-snapdragon/misc.c
+++ b/arch/arm/mach-snapdragon/misc.c
@@ -10,6 +10,7 @@
 #include <mmc.h>
 #include <vsprintf.h>
 #include <asm/arch/misc.h>
+#include <asm/types.h>
 
 /* UNSTUFF_BITS macro taken from Linux Kernel: drivers/mmc/core/sd.c */
 #define UNSTUFF_BITS(resp, start, size) \
diff --git a/arch/arm/mach-snapdragon/pinctrl-snapdragon.c b/arch/arm/mach-snapdragon/pinctrl-snapdragon.c
index 1587d38cbfb6..92d46702fa33 100644
--- a/arch/arm/mach-snapdragon/pinctrl-snapdragon.c
+++ b/arch/arm/mach-snapdragon/pinctrl-snapdragon.c
@@ -14,6 +14,7 @@
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "pinctrl-snapdragon.h"
 
 struct msm_pinctrl_priv {
diff --git a/arch/arm/mach-socfpga/clock_manager.c b/arch/arm/mach-socfpga/clock_manager.c
index f0b15f770cc5..e4c979a4f462 100644
--- a/arch/arm/mach-socfpga/clock_manager.c
+++ b/arch/arm/mach-socfpga/clock_manager.c
@@ -10,6 +10,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/arch/clock_manager.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-socfpga/clock_manager_agilex.c b/arch/arm/mach-socfpga/clock_manager_agilex.c
index 9c229de4b92f..7b525ab30891 100644
--- a/arch/arm/mach-socfpga/clock_manager_agilex.c
+++ b/arch/arm/mach-socfpga/clock_manager_agilex.c
@@ -16,6 +16,7 @@
 #include <asm/io.h>
 #include <dt-bindings/clock/agilex-clock.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-socfpga/clock_manager_arria10.c b/arch/arm/mach-socfpga/clock_manager_arria10.c
index 9d84871d4639..b86eaeb8e3d8 100644
--- a/arch/arm/mach-socfpga/clock_manager_arria10.c
+++ b/arch/arm/mach-socfpga/clock_manager_arria10.c
@@ -16,6 +16,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SPL_BUILD
 
diff --git a/arch/arm/mach-socfpga/clock_manager_gen5.c b/arch/arm/mach-socfpga/clock_manager_gen5.c
index 85a3d1926c1d..9c3de1657dd7 100644
--- a/arch/arm/mach-socfpga/clock_manager_gen5.c
+++ b/arch/arm/mach-socfpga/clock_manager_gen5.c
@@ -10,6 +10,7 @@
 #include <dm.h>
 #include <asm/arch/clock_manager.h>
 #include <wait_bit.h>
+#include <linux/types.h>
 
 /*
  * function to write the bypass register which requires a poll of the
diff --git a/arch/arm/mach-socfpga/clock_manager_s10.c b/arch/arm/mach-socfpga/clock_manager_s10.c
index 6355a3128330..35ea1b382ef9 100644
--- a/arch/arm/mach-socfpga/clock_manager_s10.c
+++ b/arch/arm/mach-socfpga/clock_manager_s10.c
@@ -11,6 +11,7 @@
 #include <asm/arch/clock_manager.h>
 #include <asm/arch/handoff_s10.h>
 #include <asm/arch/system_manager.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-socfpga/firewall.c b/arch/arm/mach-socfpga/firewall.c
index ed411c62c9c2..b3e9e01a1376 100644
--- a/arch/arm/mach-socfpga/firewall.c
+++ b/arch/arm/mach-socfpga/firewall.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <asm/arch/firewall.h>
 #include <asm/arch/system_manager.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 static void firewall_l4_per_disable(void)
diff --git a/arch/arm/mach-socfpga/freeze_controller.c b/arch/arm/mach-socfpga/freeze_controller.c
index e994d38ba623..23930fbb7048 100644
--- a/arch/arm/mach-socfpga/freeze_controller.c
+++ b/arch/arm/mach-socfpga/freeze_controller.c
@@ -11,6 +11,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 static const struct socfpga_freeze_controller *freeze_controller_base =
 		(void *)(SOCFPGA_SYSMGR_ADDRESS + SYSMGR_FRZCTRL_ADDRESS);
diff --git a/arch/arm/mach-socfpga/include/mach/clock_manager.h b/arch/arm/mach-socfpga/include/mach/clock_manager.h
index 1f734bcd65ef..51e3d83c6dc3 100644
--- a/arch/arm/mach-socfpga/include/mach/clock_manager.h
+++ b/arch/arm/mach-socfpga/include/mach/clock_manager.h
@@ -6,9 +6,9 @@
 #ifndef _CLOCK_MANAGER_H_
 #define _CLOCK_MANAGER_H_
 
-phys_addr_t socfpga_get_clkmgr_addr(void);
-
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
+phys_addr_t socfpga_get_clkmgr_addr(void);
 void cm_wait_for_lock(u32 mask);
 int cm_wait_for_fsm(void);
 void cm_print_clock_quick_summary(void);
diff --git a/arch/arm/mach-socfpga/include/mach/clock_manager_gen5.h b/arch/arm/mach-socfpga/include/mach/clock_manager_gen5.h
index 5c9abe619b90..2f60680d952c 100644
--- a/arch/arm/mach-socfpga/include/mach/clock_manager_gen5.h
+++ b/arch/arm/mach-socfpga/include/mach/clock_manager_gen5.h
@@ -8,6 +8,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 struct cm_config {
diff --git a/arch/arm/mach-socfpga/include/mach/clock_manager_s10.h b/arch/arm/mach-socfpga/include/mach/clock_manager_s10.h
index cb7923baef8c..2d09fc194e2b 100644
--- a/arch/arm/mach-socfpga/include/mach/clock_manager_s10.h
+++ b/arch/arm/mach-socfpga/include/mach/clock_manager_s10.h
@@ -8,6 +8,7 @@
 #define	_CLOCK_MANAGER_S10_
 
 #include <asm/arch/clock_manager_soc64.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 /* Clock speed accessors */
diff --git a/arch/arm/mach-socfpga/include/mach/firewall.h b/arch/arm/mach-socfpga/include/mach/firewall.h
index adab65bc9681..f7ff82d3e8ae 100644
--- a/arch/arm/mach-socfpga/include/mach/firewall.h
+++ b/arch/arm/mach-socfpga/include/mach/firewall.h
@@ -7,6 +7,7 @@
 #ifndef	_FIREWALL_H_
 #define	_FIREWALL_H_
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 struct socfpga_firwall_l4_per {
diff --git a/arch/arm/mach-socfpga/include/mach/fpga_manager.h b/arch/arm/mach-socfpga/include/mach/fpga_manager.h
index 481b66bbd861..3f33e35cb287 100644
--- a/arch/arm/mach-socfpga/include/mach/fpga_manager.h
+++ b/arch/arm/mach-socfpga/include/mach/fpga_manager.h
@@ -24,6 +24,7 @@
 #ifndef __ASSEMBLY__
 
 /* Common prototypes */
+#include <linux/types.h>
 int fpgamgr_get_mode(void);
 int fpgamgr_poll_fpga_ready(void);
 void fpgamgr_program_write(const void *rbf_data, size_t rbf_size);
diff --git a/arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h b/arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h
index 048708202cc7..edb5d4644f79 100644
--- a/arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h
+++ b/arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h
@@ -62,6 +62,7 @@
 #define FPGA_SOCFPGA_A10_RBF_CORE		0x8001
 #ifndef __ASSEMBLY__
 
+#include <linux/types.h>
 struct socfpga_fpga_manager {
 	u32  _pad_0x0_0x7[2];
 	u32  dclkcnt;
diff --git a/arch/arm/mach-socfpga/include/mach/fpga_manager_gen5.h b/arch/arm/mach-socfpga/include/mach/fpga_manager_gen5.h
index e08c0056286f..9519544ec897 100644
--- a/arch/arm/mach-socfpga/include/mach/fpga_manager_gen5.h
+++ b/arch/arm/mach-socfpga/include/mach/fpga_manager_gen5.h
@@ -34,6 +34,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 struct socfpga_fpga_manager {
 	/* FPGA Manager Module */
 	u32	stat;			/* 0x00 */
diff --git a/arch/arm/mach-socfpga/include/mach/freeze_controller.h b/arch/arm/mach-socfpga/include/mach/freeze_controller.h
index 80846a67f193..65119929ee53 100644
--- a/arch/arm/mach-socfpga/include/mach/freeze_controller.h
+++ b/arch/arm/mach-socfpga/include/mach/freeze_controller.h
@@ -6,6 +6,7 @@
 #ifndef	_FREEZE_CONTROLLER_H_
 #define	_FREEZE_CONTROLLER_H_
 
+#include <asm/types.h>
 struct socfpga_freeze_controller {
 	u32	vioctrl;
 	u32	padding[3];
diff --git a/arch/arm/mach-socfpga/include/mach/mailbox_s10.h b/arch/arm/mach-socfpga/include/mach/mailbox_s10.h
index 55707ab9c587..e8fa9d1f0b99 100644
--- a/arch/arm/mach-socfpga/include/mach/mailbox_s10.h
+++ b/arch/arm/mach-socfpga/include/mach/mailbox_s10.h
@@ -8,6 +8,7 @@
 #define _MAILBOX_S10_H_
 
 /* user define Uboot ID */
+#include <asm/types.h>
 #include <linux/bitops.h>
 #define MBOX_CLIENT_ID_UBOOT	0xB
 #define MBOX_ID_UBOOT		0x1
diff --git a/arch/arm/mach-socfpga/include/mach/misc.h b/arch/arm/mach-socfpga/include/mach/misc.h
index 32bca6775e2c..ac023b89bbc0 100644
--- a/arch/arm/mach-socfpga/include/mach/misc.h
+++ b/arch/arm/mach-socfpga/include/mach/misc.h
@@ -8,6 +8,7 @@
 
 #include <stdbool.h>
 #include <asm/sections.h>
+#include <asm/types.h>
 
 void dwmac_deassert_reset(const unsigned int of_reset_id, const u32 phymode);
 
diff --git a/arch/arm/mach-socfpga/include/mach/nic301.h b/arch/arm/mach-socfpga/include/mach/nic301.h
index 20bebb8c81c3..0489e5fe1ada 100644
--- a/arch/arm/mach-socfpga/include/mach/nic301.h
+++ b/arch/arm/mach-socfpga/include/mach/nic301.h
@@ -6,6 +6,7 @@
 #ifndef	_NIC301_REGISTERS_H_
 #define	_NIC301_REGISTERS_H_
 
+#include <asm/types.h>
 struct nic301_registers {
 	u32	remap;				/* 0x0 */
 	/* Security Register Group */
diff --git a/arch/arm/mach-socfpga/include/mach/reset_manager.h b/arch/arm/mach-socfpga/include/mach/reset_manager.h
index 7844ad14cb66..3af2c1f9e029 100644
--- a/arch/arm/mach-socfpga/include/mach/reset_manager.h
+++ b/arch/arm/mach-socfpga/include/mach/reset_manager.h
@@ -6,6 +6,7 @@
 #ifndef _RESET_MANAGER_H_
 #define _RESET_MANAGER_H_
 
+#include <linux/types.h>
 phys_addr_t socfpga_get_rstmgr_addr(void);
 
 void reset_cpu(ulong addr);
diff --git a/arch/arm/mach-socfpga/include/mach/scan_manager.h b/arch/arm/mach-socfpga/include/mach/scan_manager.h
index 4d8d649be068..7d369aa1b5bd 100644
--- a/arch/arm/mach-socfpga/include/mach/scan_manager.h
+++ b/arch/arm/mach-socfpga/include/mach/scan_manager.h
@@ -6,6 +6,7 @@
 #ifndef	_SCAN_MANAGER_H_
 #define	_SCAN_MANAGER_H_
 
+#include <asm/types.h>
 struct socfpga_scan_manager {
 	u32	stat;
 	u32	en;
diff --git a/arch/arm/mach-socfpga/include/mach/scu.h b/arch/arm/mach-socfpga/include/mach/scu.h
index b684a5501928..7891318486aa 100644
--- a/arch/arm/mach-socfpga/include/mach/scu.h
+++ b/arch/arm/mach-socfpga/include/mach/scu.h
@@ -6,6 +6,7 @@
 #ifndef __SOCFPGA_SCU_H__
 #define __SOCFPGA_SCU_H__
 
+#include <asm/types.h>
 struct scu_registers {
 	u32	ctrl;			/* 0x00 */
 	u32	cfg;
diff --git a/arch/arm/mach-socfpga/include/mach/sdram_arria10.h b/arch/arm/mach-socfpga/include/mach/sdram_arria10.h
index ff05994ccc33..1af29b11cf7a 100644
--- a/arch/arm/mach-socfpga/include/mach/sdram_arria10.h
+++ b/arch/arm/mach-socfpga/include/mach/sdram_arria10.h
@@ -7,6 +7,7 @@
 #define _SOCFPGA_SDRAM_ARRIA10_H_
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 int ddr_calibration_sequence(void);
 
diff --git a/arch/arm/mach-socfpga/include/mach/sdram_gen5.h b/arch/arm/mach-socfpga/include/mach/sdram_gen5.h
index 8818a6b967fc..05627eeed5e9 100644
--- a/arch/arm/mach-socfpga/include/mach/sdram_gen5.h
+++ b/arch/arm/mach-socfpga/include/mach/sdram_gen5.h
@@ -7,6 +7,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 const struct socfpga_sdram_config *socfpga_get_sdram_config(void);
 
 void socfpga_get_seq_ac_init(const u32 **init, unsigned int *nelem);
diff --git a/arch/arm/mach-socfpga/include/mach/system_manager.h b/arch/arm/mach-socfpga/include/mach/system_manager.h
index f81695471727..45ea62a7067c 100644
--- a/arch/arm/mach-socfpga/include/mach/system_manager.h
+++ b/arch/arm/mach-socfpga/include/mach/system_manager.h
@@ -6,6 +6,7 @@
 #ifndef _SYSTEM_MANAGER_H_
 #define _SYSTEM_MANAGER_H_
 
+#include <asm/types.h>
 phys_addr_t socfpga_get_sysmgr_addr(void);
 
 #if defined(CONFIG_TARGET_SOCFPGA_STRATIX10) || \
diff --git a/arch/arm/mach-socfpga/include/mach/system_manager_gen5.h b/arch/arm/mach-socfpga/include/mach/system_manager_gen5.h
index 90cb465d1370..3dce656ccb43 100644
--- a/arch/arm/mach-socfpga/include/mach/system_manager_gen5.h
+++ b/arch/arm/mach-socfpga/include/mach/system_manager_gen5.h
@@ -8,6 +8,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <asm/types.h>
 void sysmgr_pinmux_init(void);
 void sysmgr_config_warmrstcfgio(int enable);
 
diff --git a/arch/arm/mach-socfpga/include/mach/system_manager_soc64.h b/arch/arm/mach-socfpga/include/mach/system_manager_soc64.h
index c90f63a754c0..b6ae059a8cf9 100644
--- a/arch/arm/mach-socfpga/include/mach/system_manager_soc64.h
+++ b/arch/arm/mach-socfpga/include/mach/system_manager_soc64.h
@@ -6,6 +6,7 @@
 #ifndef _SYSTEM_MANAGER_SOC64_H_
 #define _SYSTEM_MANAGER_SOC64_H_
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 void sysmgr_pinmux_init(void);
 void populate_sysmgr_fpgaintf_module(void);
diff --git a/arch/arm/mach-socfpga/include/mach/timer.h b/arch/arm/mach-socfpga/include/mach/timer.h
index 82596e412e36..b853f208d739 100644
--- a/arch/arm/mach-socfpga/include/mach/timer.h
+++ b/arch/arm/mach-socfpga/include/mach/timer.h
@@ -6,6 +6,7 @@
 #ifndef _SOCFPGA_TIMER_H_
 #define _SOCFPGA_TIMER_H_
 
+#include <asm/types.h>
 struct socfpga_timer {
 	u32	load_val;
 	u32	curr_val;
diff --git a/arch/arm/mach-socfpga/mailbox_s10.c b/arch/arm/mach-socfpga/mailbox_s10.c
index 85df32968d85..46f944237268 100644
--- a/arch/arm/mach-socfpga/mailbox_s10.c
+++ b/arch/arm/mach-socfpga/mailbox_s10.c
@@ -13,6 +13,7 @@
 #include <asm/arch/mailbox_s10.h>
 #include <asm/arch/system_manager.h>
 #include <asm/secure.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-socfpga/misc.c b/arch/arm/mach-socfpga/misc.c
index 8bb924b6b5dd..a23837c65f5f 100644
--- a/arch/arm/mach-socfpga/misc.c
+++ b/arch/arm/mach-socfpga/misc.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <errno.h>
 #include <fdtdec.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/libfdt.h>
 #include <altera.h>
diff --git a/arch/arm/mach-socfpga/misc_arria10.c b/arch/arm/mach-socfpga/misc_arria10.c
index dffe53a1a2e5..dcd343ba02f9 100644
--- a/arch/arm/mach-socfpga/misc_arria10.c
+++ b/arch/arm/mach-socfpga/misc_arria10.c
@@ -22,6 +22,7 @@
 #include <asm/arch/nic301.h>
 #include <asm/io.h>
 #include <asm/pl310.h>
+#include <asm/types.h>
 
 #define PINMUX_UART0_TX_SHARED_IO_OFFSET_Q1_3	0x08
 #define PINMUX_UART0_TX_SHARED_IO_OFFSET_Q2_11	0x58
diff --git a/arch/arm/mach-socfpga/misc_gen5.c b/arch/arm/mach-socfpga/misc_gen5.c
index c8c8c64476b4..e6a3e297966a 100644
--- a/arch/arm/mach-socfpga/misc_gen5.c
+++ b/arch/arm/mach-socfpga/misc_gen5.c
@@ -6,12 +6,14 @@
 #include <common.h>
 #include <cpu_func.h>
 #include <init.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <env.h>
 #include <errno.h>
 #include <fdtdec.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
diff --git a/arch/arm/mach-socfpga/misc_s10.c b/arch/arm/mach-socfpga/misc_s10.c
index 107a873c1208..7010eb60cf1a 100644
--- a/arch/arm/mach-socfpga/misc_s10.c
+++ b/arch/arm/mach-socfpga/misc_s10.c
@@ -21,6 +21,7 @@
 #include <asm/arch/system_manager.h>
 #include <asm/arch/misc.h>
 #include <asm/pl310.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/libfdt.h>
diff --git a/arch/arm/mach-socfpga/pinmux_arria10.c b/arch/arm/mach-socfpga/pinmux_arria10.c
index aee51c039c9c..bcb715c355bd 100644
--- a/arch/arm/mach-socfpga/pinmux_arria10.c
+++ b/arch/arm/mach-socfpga/pinmux_arria10.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <common.h>
 #include <fdtdec.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/string.h>
 
diff --git a/arch/arm/mach-socfpga/reset_manager_arria10.c b/arch/arm/mach-socfpga/reset_manager_arria10.c
index 461c45928002..150e71858dfb 100644
--- a/arch/arm/mach-socfpga/reset_manager_arria10.c
+++ b/arch/arm/mach-socfpga/reset_manager_arria10.c
@@ -13,6 +13,7 @@
 #include <errno.h>
 #include <fdtdec.h>
 #include <wait_bit.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-socfpga/reset_manager_gen5.c b/arch/arm/mach-socfpga/reset_manager_gen5.c
index e37325f2ac50..7ca52b829173 100644
--- a/arch/arm/mach-socfpga/reset_manager_gen5.c
+++ b/arch/arm/mach-socfpga/reset_manager_gen5.c
@@ -11,6 +11,7 @@
 #include <asm/arch/fpga_manager.h>
 #include <asm/arch/reset_manager.h>
 #include <asm/arch/system_manager.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 /* Assert or de-assert SoCFPGA reset manager reset. */
diff --git a/arch/arm/mach-socfpga/reset_manager_s10.c b/arch/arm/mach-socfpga/reset_manager_s10.c
index 81e4c67fba61..a9179940e57d 100644
--- a/arch/arm/mach-socfpga/reset_manager_s10.c
+++ b/arch/arm/mach-socfpga/reset_manager_s10.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/reset_manager.h>
 #include <asm/arch/system_manager.h>
+#include <asm/types.h>
 #include <dt-bindings/reset/altr,rst-mgr-s10.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-socfpga/scan_manager.c b/arch/arm/mach-socfpga/scan_manager.c
index d5601739ef68..85c113f50516 100644
--- a/arch/arm/mach-socfpga/scan_manager.c
+++ b/arch/arm/mach-socfpga/scan_manager.c
@@ -9,6 +9,7 @@
 #include <asm/arch/freeze_controller.h>
 #include <asm/arch/scan_manager.h>
 #include <asm/arch/system_manager.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 
diff --git a/arch/arm/mach-socfpga/spl_a10.c b/arch/arm/mach-socfpga/spl_a10.c
index daf75addde71..cda0ba5be50f 100644
--- a/arch/arm/mach-socfpga/spl_a10.c
+++ b/arch/arm/mach-socfpga/spl_a10.c
@@ -31,6 +31,7 @@
 #include <asm/arch/fpga_manager.h>
 #include <mmc.h>
 #include <memalign.h>
+#include <linux/types.h>
 
 #define FPGA_BUFSIZ	16 * 1024
 
diff --git a/arch/arm/mach-socfpga/spl_agilex.c b/arch/arm/mach-socfpga/spl_agilex.c
index 9871d1b6c8bc..0364f5a5d0fb 100644
--- a/arch/arm/mach-socfpga/spl_agilex.c
+++ b/arch/arm/mach-socfpga/spl_agilex.c
@@ -22,6 +22,7 @@
 #include <asm/arch/system_manager.h>
 #include <watchdog.h>
 #include <dm/uclass.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-socfpga/spl_gen5.c b/arch/arm/mach-socfpga/spl_gen5.c
index 2cffc2ef778a..54f2674b399d 100644
--- a/arch/arm/mach-socfpga/spl_gen5.c
+++ b/arch/arm/mach-socfpga/spl_gen5.c
@@ -27,6 +27,7 @@
 #include <watchdog.h>
 #include <dm/uclass.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-socfpga/spl_s10.c b/arch/arm/mach-socfpga/spl_s10.c
index cbffa6699368..93d203917732 100644
--- a/arch/arm/mach-socfpga/spl_s10.c
+++ b/arch/arm/mach-socfpga/spl_s10.c
@@ -23,6 +23,7 @@
 #include <asm/arch/system_manager.h>
 #include <watchdog.h>
 #include <dm/uclass.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-socfpga/system_manager_gen5.c b/arch/arm/mach-socfpga/system_manager_gen5.c
index 09caebb3c882..ce95062ea807 100644
--- a/arch/arm/mach-socfpga/system_manager_gen5.c
+++ b/arch/arm/mach-socfpga/system_manager_gen5.c
@@ -7,6 +7,7 @@
 #include <asm/io.h>
 #include <asm/arch/system_manager.h>
 #include <asm/arch/fpga_manager.h>
+#include <asm/types.h>
 
 /*
  * Populate the value for SYSMGR.FPGAINTF.MODULE based on pinmux setting.
diff --git a/arch/arm/mach-socfpga/system_manager_s10.c b/arch/arm/mach-socfpga/system_manager_s10.c
index c123cc96445d..dba1b95ba811 100644
--- a/arch/arm/mach-socfpga/system_manager_s10.c
+++ b/arch/arm/mach-socfpga/system_manager_s10.c
@@ -8,6 +8,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/arch/system_manager.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-socfpga/wrap_pinmux_config.c b/arch/arm/mach-socfpga/wrap_pinmux_config.c
index f5a425db5592..b4c1a5cd83aa 100644
--- a/arch/arm/mach-socfpga/wrap_pinmux_config.c
+++ b/arch/arm/mach-socfpga/wrap_pinmux_config.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <errno.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 /* Board-specific header. */
diff --git a/arch/arm/mach-socfpga/wrap_pinmux_config_s10.c b/arch/arm/mach-socfpga/wrap_pinmux_config_s10.c
index 8f3688dd19fa..877c7a21c7f7 100644
--- a/arch/arm/mach-socfpga/wrap_pinmux_config_s10.c
+++ b/arch/arm/mach-socfpga/wrap_pinmux_config_s10.c
@@ -8,6 +8,7 @@
 #include <errno.h>
 #include <asm/io.h>
 #include <asm/arch/handoff_s10.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 static void sysmgr_pinmux_handoff_read(void *handoff_address,
diff --git a/arch/arm/mach-socfpga/wrap_pll_config_s10.c b/arch/arm/mach-socfpga/wrap_pll_config_s10.c
index 3da85791a1ff..bd754ced8c52 100644
--- a/arch/arm/mach-socfpga/wrap_pll_config_s10.c
+++ b/arch/arm/mach-socfpga/wrap_pll_config_s10.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/handoff_s10.h>
 #include <asm/arch/system_manager.h>
+#include <asm/types.h>
 
 const struct cm_config * const cm_get_default_config(void)
 {
diff --git a/arch/arm/mach-socfpga/wrap_sdram_config.c b/arch/arm/mach-socfpga/wrap_sdram_config.c
index 50fec073b481..3fe77f55cfaa 100644
--- a/arch/arm/mach-socfpga/wrap_sdram_config.c
+++ b/arch/arm/mach-socfpga/wrap_sdram_config.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <errno.h>
 #include <asm/arch/sdram.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 /* Board-specific header. */
diff --git a/arch/arm/mach-stm32mp/bsec.c b/arch/arm/mach-stm32mp/bsec.c
index ed1a13b0a3a0..12575844ff6f 100644
--- a/arch/arm/mach-stm32mp/bsec.c
+++ b/arch/arm/mach-stm32mp/bsec.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/bsec.h>
 #include <asm/arch/stm32mp1_smc.h>
+#include <asm/types.h>
 #include <linux/arm-smccc.h>
 #include <linux/errno.h>
 #include <linux/iopoll.h>
diff --git a/arch/arm/mach-stm32mp/cmd_stm32key.c b/arch/arm/mach-stm32mp/cmd_stm32key.c
index a5c94d331e65..6260099af16f 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32key.c
+++ b/arch/arm/mach-stm32mp/cmd_stm32key.c
@@ -14,6 +14,7 @@
 #include <dm/uclass.h>
 #include <linux/printk.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define STM32_OTP_HASH_KEY_START 24
 #define STM32_OTP_HASH_KEY_SIZE 8
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c b/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c
index bc9767c8ccf4..8ef840668c8d 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c
@@ -13,6 +13,7 @@
 #include <asm/arch/stm32prog.h>
 #include <linux/printk.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "stm32prog.h"
 
 struct stm32prog_data *stm32prog_data;
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c
index f75050a0b4df..dd669ca7480d 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c
@@ -10,6 +10,7 @@
 #include <misc.h>
 #include <mmc.h>
 #include <part.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/arch/stm32mp1_smc.h>
@@ -24,6 +25,7 @@
 #include <linux/printk.h>
 #include <linux/sizes.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include "stm32prog.h"
 
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h
index 46f014cb77f8..29e524ef36f8 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.h
@@ -9,6 +9,7 @@
 #include <stdbool.h>
 #include <vsprintf.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 
 /* - phase defines ------------------------------------------------*/
 #define PHASE_FLASHLAYOUT	0x00
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c
index 1419d0f20e76..25fb6b2b4658 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_serial.c
@@ -14,6 +14,7 @@
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <dm/lists.h>
 #include <dm/device-internal.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_usb.c b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_usb.c
index a170fdfee94c..8afdaffc2409 100644
--- a/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_usb.c
+++ b/arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_usb.c
@@ -15,6 +15,7 @@
 #include <linux/errno.h>
 #include <linux/printk.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "stm32prog.h"
 
 static int stm32prog_set_phase(struct stm32prog_data *data, u8 phase,
diff --git a/arch/arm/mach-stm32mp/cpu.c b/arch/arm/mach-stm32mp/cpu.c
index e275df5905c8..092304896ce4 100644
--- a/arch/arm/mach-stm32mp/cpu.c
+++ b/arch/arm/mach-stm32mp/cpu.c
@@ -4,6 +4,7 @@
  */
 #include <common.h>
 #include <clk.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <debug_uart.h>
 #include <env.h>
@@ -24,6 +25,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 
 /* RCC register */
 #define RCC_TZCR		(STM32_RCC_BASE + 0x00)
diff --git a/arch/arm/mach-stm32mp/dram_init.c b/arch/arm/mach-stm32mp/dram_init.c
index 8685df3d06d1..4b1fa11f5895 100644
--- a/arch/arm/mach-stm32mp/dram_init.c
+++ b/arch/arm/mach-stm32mp/dram_init.c
@@ -12,6 +12,7 @@
 #include <ram.h>
 #include <asm/global_data.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-stm32mp/fdt.c b/arch/arm/mach-stm32mp/fdt.c
index e83885440b46..61d633d31b42 100644
--- a/arch/arm/mach-stm32mp/fdt.c
+++ b/arch/arm/mach-stm32mp/fdt.c
@@ -7,9 +7,11 @@
 #include <fdtdec.h>
 #include <fdt_support.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <tee.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <dt-bindings/pinctrl/stm32-pinfunc.h>
 #include <linux/io.h>
diff --git a/arch/arm/mach-stm32mp/include/mach/gpio.h b/arch/arm/mach-stm32mp/include/mach/gpio.h
index 5ca76d21ff1e..ba383e82c3a1 100644
--- a/arch/arm/mach-stm32mp/include/mach/gpio.h
+++ b/arch/arm/mach-stm32mp/include/mach/gpio.h
@@ -7,6 +7,7 @@
 #ifndef _STM32_GPIO_H_
 #define _STM32_GPIO_H_
 #include <asm/gpio.h>
+#include <asm/types.h>
 
 #define STM32_GPIOS_PER_BANK		16
 
diff --git a/arch/arm/mach-stm32mp/include/mach/stm32mp1_smc.h b/arch/arm/mach-stm32mp/include/mach/stm32mp1_smc.h
index fbc082703dc2..353ec1b75872 100644
--- a/arch/arm/mach-stm32mp/include/mach/stm32mp1_smc.h
+++ b/arch/arm/mach-stm32mp/include/mach/stm32mp1_smc.h
@@ -6,6 +6,7 @@
 #ifndef __STM32MP1_SMC_H__
 #define __STM32MP1_SMC_H__
 
+#include <asm/types.h>
 #include <linux/arm-smccc.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
diff --git a/arch/arm/mach-stm32mp/include/mach/sys_proto.h b/arch/arm/mach-stm32mp/include/mach/sys_proto.h
index 4149d3a13379..ffb2ea2019d5 100644
--- a/arch/arm/mach-stm32mp/include/mach/sys_proto.h
+++ b/arch/arm/mach-stm32mp/include/mach/sys_proto.h
@@ -4,6 +4,7 @@
  */
 
 /* ID = Device Version (bit31:16) + Device Part Number (RPN) (bit7:0) */
+#include <asm/types.h>
 #define CPU_STM32MP157Cxx	0x05000000
 #define CPU_STM32MP157Axx	0x05000001
 #define CPU_STM32MP153Cxx	0x05000024
diff --git a/arch/arm/mach-stm32mp/psci.c b/arch/arm/mach-stm32mp/psci.c
index 155aa79cd5ed..beca18d6fbcc 100644
--- a/arch/arm/mach-stm32mp/psci.c
+++ b/arch/arm/mach-stm32mp/psci.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/psci.h>
 #include <asm/secure.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 #define BOOT_API_A7_CORE0_MAGIC_NUMBER	0xCA7FACE0
diff --git a/arch/arm/mach-stm32mp/pwr_regulator.c b/arch/arm/mach-stm32mp/pwr_regulator.c
index 954603f67455..f478c3b8b008 100644
--- a/arch/arm/mach-stm32mp/pwr_regulator.c
+++ b/arch/arm/mach-stm32mp/pwr_regulator.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <errno.h>
+#include <stdbool.h>
 #include <syscon.h>
 #include <time.h>
 #include <asm/io.h>
@@ -13,6 +14,7 @@
 #include <linux/bitops.h>
 #include <linux/err.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/regulator.h>
 
diff --git a/arch/arm/mach-stm32mp/spl.c b/arch/arm/mach-stm32mp/spl.c
index fdaaeb27abaf..a6d3456b86ea 100644
--- a/arch/arm/mach-stm32mp/spl.c
+++ b/arch/arm/mach-stm32mp/spl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <dm.h>
 #include <hang.h>
@@ -17,6 +18,7 @@
 #include <asm/arch/sys_proto.h>
 #include <linux/errno.h>
 #include <linux/libfdt.h>
+#include <linux/types.h>
 
 u32 spl_boot_device(void)
 {
diff --git a/arch/arm/mach-sunxi/board.c b/arch/arm/mach-sunxi/board.c
index 1a720a0858d0..fcae107165e6 100644
--- a/arch/arm/mach-sunxi/board.c
+++ b/arch/arm/mach-sunxi/board.c
@@ -28,6 +28,7 @@
 #include <asm/arch/timer.h>
 #include <asm/arch/tzpc.h>
 #include <asm/arch/mmc.h>
+#include <linux/types.h>
 
 #include <linux/compiler.h>
 
diff --git a/arch/arm/mach-sunxi/clock.c b/arch/arm/mach-sunxi/clock.c
index f591affebf7b..e804cacf186a 100644
--- a/arch/arm/mach-sunxi/clock.c
+++ b/arch/arm/mach-sunxi/clock.c
@@ -8,12 +8,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/prcm.h>
 #include <asm/arch/gtbus.h>
 #include <asm/arch/sys_proto.h>
+#include <linux/types.h>
 
 __weak void clock_init_sec(void)
 {
diff --git a/arch/arm/mach-sunxi/clock_sun4i.c b/arch/arm/mach-sunxi/clock_sun4i.c
index 7799c5750d34..4646d4cff59a 100644
--- a/arch/arm/mach-sunxi/clock_sun4i.c
+++ b/arch/arm/mach-sunxi/clock_sun4i.c
@@ -16,6 +16,7 @@
 #include <asm/arch/gpio.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SPL_BUILD
 void clock_init_safe(void)
diff --git a/arch/arm/mach-sunxi/clock_sun50i_h6.c b/arch/arm/mach-sunxi/clock_sun50i_h6.c
index ba8a26eb0d36..10fe7748f030 100644
--- a/arch/arm/mach-sunxi/clock_sun50i_h6.c
+++ b/arch/arm/mach-sunxi/clock_sun50i_h6.c
@@ -2,6 +2,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/clock.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SPL_BUILD
 void clock_init_safe(void)
diff --git a/arch/arm/mach-sunxi/clock_sun6i.c b/arch/arm/mach-sunxi/clock_sun6i.c
index 529fdd7754e2..5e79a1a2e573 100644
--- a/arch/arm/mach-sunxi/clock_sun6i.c
+++ b/arch/arm/mach-sunxi/clock_sun6i.c
@@ -17,6 +17,7 @@
 #include <asm/arch/sys_proto.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SPL_BUILD
 void clock_init_safe(void)
diff --git a/arch/arm/mach-sunxi/clock_sun8i_a83t.c b/arch/arm/mach-sunxi/clock_sun8i_a83t.c
index 31e4281529ad..c29cf314023a 100644
--- a/arch/arm/mach-sunxi/clock_sun8i_a83t.c
+++ b/arch/arm/mach-sunxi/clock_sun8i_a83t.c
@@ -15,6 +15,7 @@
 #include <asm/arch/prcm.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SPL_BUILD
 void clock_init_safe(void)
diff --git a/arch/arm/mach-sunxi/clock_sun9i.c b/arch/arm/mach-sunxi/clock_sun9i.c
index 8ba4802f3b36..1765ac31eb78 100644
--- a/arch/arm/mach-sunxi/clock_sun9i.c
+++ b/arch/arm/mach-sunxi/clock_sun9i.c
@@ -14,6 +14,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/prcm.h>
 #include <asm/arch/sys_proto.h>
+#include <linux/types.h>
 
 
 #ifdef CONFIG_SPL_BUILD
diff --git a/arch/arm/mach-sunxi/cpu_info.c b/arch/arm/mach-sunxi/cpu_info.c
index 5a7d03dce898..1e10defc0758 100644
--- a/arch/arm/mach-sunxi/cpu_info.c
+++ b/arch/arm/mach-sunxi/cpu_info.c
@@ -14,6 +14,7 @@
 #include <axp_pmic.h>
 #include <errno.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_MACH_SUN6I
 int sunxi_get_ss_bonding_id(void)
diff --git a/arch/arm/mach-sunxi/dram_helpers.c b/arch/arm/mach-sunxi/dram_helpers.c
index ffadaa425703..cc61d5747aa0 100644
--- a/arch/arm/mach-sunxi/dram_helpers.c
+++ b/arch/arm/mach-sunxi/dram_helpers.c
@@ -12,6 +12,7 @@
 #include <asm/barriers.h>
 #include <asm/io.h>
 #include <asm/arch/dram.h>
+#include <linux/types.h>
 
 /*
  * Wait up to 1s for value to be set in given part of reg.
diff --git a/arch/arm/mach-sunxi/dram_sun4i.c b/arch/arm/mach-sunxi/dram_sun4i.c
index 6c406f111565..d51fd207001f 100644
--- a/arch/arm/mach-sunxi/dram_sun4i.c
+++ b/arch/arm/mach-sunxi/dram_sun4i.c
@@ -22,12 +22,14 @@
 
 #include <common.h>
 #include <init.h>
+#include <stdbool.h>
 #include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/timer.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-sunxi/dram_sun50i_h6.c b/arch/arm/mach-sunxi/dram_sun50i_h6.c
index ea47fa86478c..ec351079037e 100644
--- a/arch/arm/mach-sunxi/dram_sun50i_h6.c
+++ b/arch/arm/mach-sunxi/dram_sun50i_h6.c
@@ -14,6 +14,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/cpu.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/kconfig.h>
diff --git a/arch/arm/mach-sunxi/dram_sun6i.c b/arch/arm/mach-sunxi/dram_sun6i.c
index 53f8ac068ae6..ba310e1192f1 100644
--- a/arch/arm/mach-sunxi/dram_sun6i.c
+++ b/arch/arm/mach-sunxi/dram_sun6i.c
@@ -18,6 +18,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/prcm.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #define DRAM_CLK (CONFIG_DRAM_CLK * 1000000)
diff --git a/arch/arm/mach-sunxi/dram_sun8i_a23.c b/arch/arm/mach-sunxi/dram_sun8i_a23.c
index 3ed97b59a32c..25084956ebb1 100644
--- a/arch/arm/mach-sunxi/dram_sun8i_a23.c
+++ b/arch/arm/mach-sunxi/dram_sun8i_a23.c
@@ -26,6 +26,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/prcm.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 static const struct dram_para dram_para = {
diff --git a/arch/arm/mach-sunxi/dram_sun8i_a33.c b/arch/arm/mach-sunxi/dram_sun8i_a33.c
index 5b993afe3efe..c2ea86ffd62b 100644
--- a/arch/arm/mach-sunxi/dram_sun8i_a33.c
+++ b/arch/arm/mach-sunxi/dram_sun8i_a33.c
@@ -14,6 +14,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/prcm.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
diff --git a/arch/arm/mach-sunxi/dram_sun8i_a83t.c b/arch/arm/mach-sunxi/dram_sun8i_a83t.c
index bf6279214408..93c90ccbb0f1 100644
--- a/arch/arm/mach-sunxi/dram_sun8i_a83t.c
+++ b/arch/arm/mach-sunxi/dram_sun8i_a83t.c
@@ -14,6 +14,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/prcm.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
diff --git a/arch/arm/mach-sunxi/dram_sun9i.c b/arch/arm/mach-sunxi/dram_sun9i.c
index e2ab5d2fafb8..b499b8416492 100644
--- a/arch/arm/mach-sunxi/dram_sun9i.c
+++ b/arch/arm/mach-sunxi/dram_sun9i.c
@@ -21,6 +21,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 
 #define DRAM_CLK (CONFIG_DRAM_CLK * 1000000)
 
diff --git a/arch/arm/mach-sunxi/dram_sunxi_dw.c b/arch/arm/mach-sunxi/dram_sunxi_dw.c
index 3fa8509efb9b..6147d0f745f1 100644
--- a/arch/arm/mach-sunxi/dram_sunxi_dw.c
+++ b/arch/arm/mach-sunxi/dram_sunxi_dw.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <init.h>
 #include <log.h>
+#include <stdbool.h>
 #include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
@@ -19,6 +20,7 @@
 #include <linux/delay.h>
 #include <linux/kconfig.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 static void mctl_phy_init(u32 val)
 {
diff --git a/arch/arm/mach-sunxi/dram_timings/ddr2_v3s.c b/arch/arm/mach-sunxi/dram_timings/ddr2_v3s.c
index 14ee586e147a..eef6e0b66daf 100644
--- a/arch/arm/mach-sunxi/dram_timings/ddr2_v3s.c
+++ b/arch/arm/mach-sunxi/dram_timings/ddr2_v3s.c
@@ -2,6 +2,7 @@
 #include <asm/arch/dram.h>
 #include <asm/arch/cpu.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 void mctl_set_timing_params(uint16_t socid, struct dram_para *para)
 {
diff --git a/arch/arm/mach-sunxi/dram_timings/ddr3_1333.c b/arch/arm/mach-sunxi/dram_timings/ddr3_1333.c
index a297d469a90e..d2fb72038225 100644
--- a/arch/arm/mach-sunxi/dram_timings/ddr3_1333.c
+++ b/arch/arm/mach-sunxi/dram_timings/ddr3_1333.c
@@ -2,6 +2,7 @@
 #include <asm/arch/dram.h>
 #include <asm/arch/cpu.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 void mctl_set_timing_params(uint16_t socid, struct dram_para *para)
 {
diff --git a/arch/arm/mach-sunxi/dram_timings/h6_ddr3_1333.c b/arch/arm/mach-sunxi/dram_timings/h6_ddr3_1333.c
index 6160518efee3..bceae65edb0d 100644
--- a/arch/arm/mach-sunxi/dram_timings/h6_ddr3_1333.c
+++ b/arch/arm/mach-sunxi/dram_timings/h6_ddr3_1333.c
@@ -22,6 +22,7 @@
 #include <common.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/cpu.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 /*
diff --git a/arch/arm/mach-sunxi/dram_timings/h6_lpddr3.c b/arch/arm/mach-sunxi/dram_timings/h6_lpddr3.c
index 497c59d8ae2b..641abdbd9dba 100644
--- a/arch/arm/mach-sunxi/dram_timings/h6_lpddr3.c
+++ b/arch/arm/mach-sunxi/dram_timings/h6_lpddr3.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <asm/arch/dram.h>
 #include <asm/arch/cpu.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 static u32 mr_lpddr3[12] = {
diff --git a/arch/arm/mach-sunxi/dram_timings/lpddr3_stock.c b/arch/arm/mach-sunxi/dram_timings/lpddr3_stock.c
index 6378bbc22a31..071628657c04 100644
--- a/arch/arm/mach-sunxi/dram_timings/lpddr3_stock.c
+++ b/arch/arm/mach-sunxi/dram_timings/lpddr3_stock.c
@@ -2,6 +2,7 @@
 #include <asm/arch/dram.h>
 #include <asm/arch/cpu.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 void mctl_set_timing_params(uint16_t socid, struct dram_para *para)
 {
diff --git a/arch/arm/mach-sunxi/p2wi.c b/arch/arm/mach-sunxi/p2wi.c
index 550b37b36635..f8fc04c96ebf 100644
--- a/arch/arm/mach-sunxi/p2wi.c
+++ b/arch/arm/mach-sunxi/p2wi.c
@@ -23,6 +23,7 @@
 #include <asm/arch/prcm.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 void p2wi_init(void)
diff --git a/arch/arm/mach-sunxi/pinmux.c b/arch/arm/mach-sunxi/pinmux.c
index 642483f06c5e..ab8fc8126357 100644
--- a/arch/arm/mach-sunxi/pinmux.c
+++ b/arch/arm/mach-sunxi/pinmux.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <asm/io.h>
 #include <asm/arch/gpio.h>
+#include <asm/types.h>
 
 void sunxi_gpio_set_cfgbank(struct sunxi_gpio *pio, int bank_offset, u32 val)
 {
diff --git a/arch/arm/mach-sunxi/pmic_bus.c b/arch/arm/mach-sunxi/pmic_bus.c
index dea42de833f1..0e23f7fa2f04 100644
--- a/arch/arm/mach-sunxi/pmic_bus.c
+++ b/arch/arm/mach-sunxi/pmic_bus.c
@@ -13,6 +13,7 @@
 #include <asm/arch/rsb.h>
 #include <i2c.h>
 #include <asm/arch/pmic_bus.h>
+#include <asm/types.h>
 
 #define AXP152_I2C_ADDR			0x30
 
diff --git a/arch/arm/mach-sunxi/prcm.c b/arch/arm/mach-sunxi/prcm.c
index 71a2e44918eb..4970022fe5b0 100644
--- a/arch/arm/mach-sunxi/prcm.c
+++ b/arch/arm/mach-sunxi/prcm.c
@@ -19,6 +19,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/prcm.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 
 /* APB0 clock gate and reset bit offsets are the same. */
 void prcm_apb0_enable(u32 flags)
diff --git a/arch/arm/mach-sunxi/rsb.c b/arch/arm/mach-sunxi/rsb.c
index 2ec63f5a5689..781f22053ea3 100644
--- a/arch/arm/mach-sunxi/rsb.c
+++ b/arch/arm/mach-sunxi/rsb.c
@@ -15,6 +15,7 @@
 #include <asm/arch/gpio.h>
 #include <asm/arch/prcm.h>
 #include <asm/arch/rsb.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 static int rsb_set_device_mode(void);
diff --git a/arch/arm/mach-sunxi/spl_spi_sunxi.c b/arch/arm/mach-sunxi/spl_spi_sunxi.c
index f9e1f27363fc..aa8416d3e6af 100644
--- a/arch/arm/mach-sunxi/spl_spi_sunxi.c
+++ b/arch/arm/mach-sunxi/spl_spi_sunxi.c
@@ -13,6 +13,7 @@
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/libfdt.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SPL_OS_BOOT
 #error CONFIG_SPL_OS_BOOT is not supported yet
diff --git a/arch/arm/mach-tegra/ap.c b/arch/arm/mach-tegra/ap.c
index f3876927e3a1..a5835097cec5 100644
--- a/arch/arm/mach-tegra/ap.c
+++ b/arch/arm/mach-tegra/ap.c
@@ -20,6 +20,7 @@
 #include <asm/arch-tegra/scu.h>
 #include <asm/arch-tegra/tegra.h>
 #include <asm/arch-tegra/warmboot.h>
+#include <linux/types.h>
 
 int tegra_get_chip(void)
 {
diff --git a/arch/arm/mach-tegra/board.c b/arch/arm/mach-tegra/board.c
index cd0eb258bf93..8d5d5e25f807 100644
--- a/arch/arm/mach-tegra/board.c
+++ b/arch/arm/mach-tegra/board.c
@@ -11,6 +11,7 @@
 #include <log.h>
 #include <ns16550.h>
 #include <spl.h>
+#include <stdbool.h>
 #include <asm/cache.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
@@ -31,6 +32,7 @@
 #include <asm/arch-tegra/sys_proto.h>
 #include <asm/arch-tegra/warmboot.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 void save_boot_params_ret(void);
 
diff --git a/arch/arm/mach-tegra/board2.c b/arch/arm/mach-tegra/board2.c
index 1ae686dbd05c..3223cb7e36c2 100644
--- a/arch/arm/mach-tegra/board2.c
+++ b/arch/arm/mach-tegra/board2.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <env.h>
 #include <errno.h>
@@ -38,6 +39,7 @@
 #ifdef CONFIG_TEGRA_CLOCK_SCALING
 #include <asm/arch/emc.h>
 #endif
+#include <linux/types.h>
 #include "emc.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-tegra/cache.c b/arch/arm/mach-tegra/cache.c
index d7063490e222..bea1013f8911 100644
--- a/arch/arm/mach-tegra/cache.c
+++ b/arch/arm/mach-tegra/cache.c
@@ -11,6 +11,7 @@
 #if IS_ENABLED(CONFIG_TEGRA_GP_PADCTRL)
 #include <asm/arch/gp_padctrl.h>
 #endif
+#include <asm/types.h>
 
 #ifndef CONFIG_ARM64
 void config_cache(void)
diff --git a/arch/arm/mach-tegra/cboot.c b/arch/arm/mach-tegra/cboot.c
index 353fb49616ac..538d408f71b8 100644
--- a/arch/arm/mach-tegra/cboot.c
+++ b/arch/arm/mach-tegra/cboot.c
@@ -12,6 +12,7 @@
 #include <log.h>
 #include <malloc.h>
 #include <net.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -20,6 +21,7 @@
 #include <linux/kernel.h>
 #include <linux/printk.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <linux/ctype.h>
 #include <linux/sizes.h>
diff --git a/arch/arm/mach-tegra/clock.c b/arch/arm/mach-tegra/clock.c
index 567ba52ee88e..17b88423dddb 100644
--- a/arch/arm/mach-tegra/clock.c
+++ b/arch/arm/mach-tegra/clock.c
@@ -6,10 +6,12 @@
 /* Tegra SoC common clock control functions */
 
 #include <common.h>
+#include <compiler.h>
 #include <div64.h>
 #include <dm.h>
 #include <errno.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <time.h>
 #include <asm/io.h>
@@ -22,6 +24,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 /*
  * This is our record of the current clock rate of each clock. We don't
diff --git a/arch/arm/mach-tegra/cpu.c b/arch/arm/mach-tegra/cpu.c
index 216e307ccb2c..22a04e30aee3 100644
--- a/arch/arm/mach-tegra/cpu.c
+++ b/arch/arm/mach-tegra/cpu.c
@@ -15,6 +15,7 @@
 #include <asm/arch-tegra/pmc.h>
 #include <asm/arch-tegra/scu.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 #include "cpu.h"
 
 int get_num_cpus(void)
diff --git a/arch/arm/mach-tegra/ivc.c b/arch/arm/mach-tegra/ivc.c
index 216673e43673..2e75b8bd0597 100644
--- a/arch/arm/mach-tegra/ivc.c
+++ b/arch/arm/mach-tegra/ivc.c
@@ -10,6 +10,7 @@
 #include <linux/bug.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 
 #define TEGRA_IVC_ALIGN 64
 
diff --git a/arch/arm/mach-tegra/pinmux-common.c b/arch/arm/mach-tegra/pinmux-common.c
index 64c397fa4979..67645261907e 100644
--- a/arch/arm/mach-tegra/pinmux-common.c
+++ b/arch/arm/mach-tegra/pinmux-common.c
@@ -9,6 +9,7 @@
 #include <stdio.h>
 #include <asm/io.h>
 #include <asm/arch/pinmux.h>
+#include <asm/types.h>
 
 /* return 1 if a pingrp is in range */
 #define pmux_pingrp_isvalid(pin) (((pin) >= 0) && ((pin) < PMUX_PINGRP_COUNT))
diff --git a/arch/arm/mach-tegra/pmc.c b/arch/arm/mach-tegra/pmc.c
index f4747484f29f..225ff46d6608 100644
--- a/arch/arm/mach-tegra/pmc.c
+++ b/arch/arm/mach-tegra/pmc.c
@@ -9,6 +9,7 @@
 #include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 #include <linux/arm-smccc.h>
 
diff --git a/arch/arm/mach-tegra/spl.c b/arch/arm/mach-tegra/spl.c
index ed897efc5f07..15e8031efe1e 100644
--- a/arch/arm/mach-tegra/spl.c
+++ b/arch/arm/mach-tegra/spl.c
@@ -9,6 +9,7 @@
 #include <debug_uart.h>
 #include <log.h>
 #include <spl.h>
+#include <asm/types.h>
 
 #include <asm/io.h>
 #include <asm/arch/clock.h>
diff --git a/arch/arm/mach-tegra/tegra114/clock.c b/arch/arm/mach-tegra/tegra114/clock.c
index 53d958e82dd6..10265cc57370 100644
--- a/arch/arm/mach-tegra/tegra114/clock.c
+++ b/arch/arm/mach-tegra/tegra114/clock.c
@@ -19,6 +19,7 @@
 #include <div64.h>
 #include <fdtdec.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /*
  * Clock types that we can use as a source. The Tegra114 has muxes for the
diff --git a/arch/arm/mach-tegra/tegra114/cpu.c b/arch/arm/mach-tegra/tegra114/cpu.c
index 7e529130ad51..04c11747ea98 100644
--- a/arch/arm/mach-tegra/tegra114/cpu.c
+++ b/arch/arm/mach-tegra/tegra114/cpu.c
@@ -14,6 +14,7 @@
 #include <asm/arch/tegra.h>
 #include <asm/arch-tegra/clk_rst.h>
 #include <asm/arch-tegra/pmc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include "../cpu.h"
 
diff --git a/arch/arm/mach-tegra/tegra124/clock.c b/arch/arm/mach-tegra/tegra124/clock.c
index edca9c3fdc38..6ae992469658 100644
--- a/arch/arm/mach-tegra/tegra124/clock.c
+++ b/arch/arm/mach-tegra/tegra124/clock.c
@@ -20,6 +20,7 @@
 #include <div64.h>
 #include <fdtdec.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /*
  * Clock types that we can use as a source. The Tegra124 has muxes for the
diff --git a/arch/arm/mach-tegra/tegra124/cpu.c b/arch/arm/mach-tegra/tegra124/cpu.c
index 2fce060037a6..0adc4ccb2333 100644
--- a/arch/arm/mach-tegra/tegra124/cpu.c
+++ b/arch/arm/mach-tegra/tegra124/cpu.c
@@ -16,6 +16,7 @@
 #include <asm/arch-tegra/clk_rst.h>
 #include <asm/arch-tegra/pmc.h>
 #include <asm/arch-tegra/ap.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include "../cpu.h"
 
diff --git a/arch/arm/mach-tegra/tegra124/psci.c b/arch/arm/mach-tegra/tegra124/psci.c
index ab102a622611..98e556b3169a 100644
--- a/arch/arm/mach-tegra/tegra124/psci.c
+++ b/arch/arm/mach-tegra/tegra124/psci.c
@@ -11,6 +11,7 @@
 #include <asm/arch/powergate.h>
 #include <asm/arch-tegra/ap.h>
 #include <asm/arch-tegra/pmc.h>
+#include <asm/types.h>
 
 static void park_cpu(void)
 {
diff --git a/arch/arm/mach-tegra/tegra124/xusb-padctl.c b/arch/arm/mach-tegra/tegra124/xusb-padctl.c
index 52398eba3fab..a4b7b1e25ed9 100644
--- a/arch/arm/mach-tegra/tegra124/xusb-padctl.c
+++ b/arch/arm/mach-tegra/tegra124/xusb-padctl.c
@@ -10,6 +10,7 @@
 #include <log.h>
 #include <time.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <dm/of_access.h>
 #include <dm/ofnode.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-tegra/tegra20/clock.c b/arch/arm/mach-tegra/tegra20/clock.c
index c8db06cf66c7..2bc7f9338ee9 100644
--- a/arch/arm/mach-tegra/tegra20/clock.c
+++ b/arch/arm/mach-tegra/tegra20/clock.c
@@ -22,6 +22,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 
 /*
  * Clock types that we can use as a source. The Tegra20 has muxes for the
diff --git a/arch/arm/mach-tegra/tegra20/cpu.c b/arch/arm/mach-tegra/tegra20/cpu.c
index e5b60598f7f7..9d182acc45f3 100644
--- a/arch/arm/mach-tegra/tegra20/cpu.c
+++ b/arch/arm/mach-tegra/tegra20/cpu.c
@@ -7,6 +7,7 @@
 #include <asm/io.h>
 #include <asm/arch/tegra.h>
 #include <asm/arch-tegra/pmc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include "../cpu.h"
 
diff --git a/arch/arm/mach-tegra/tegra20/crypto.c b/arch/arm/mach-tegra/tegra20/crypto.c
index 1efaa5c3ecd7..e151daa2b271 100644
--- a/arch/arm/mach-tegra/tegra20/crypto.c
+++ b/arch/arm/mach-tegra/tegra20/crypto.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <log.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include "crypto.h"
 #include "uboot_aes.h"
diff --git a/arch/arm/mach-tegra/tegra20/crypto.h b/arch/arm/mach-tegra/tegra20/crypto.h
index a773d03fc742..ecd11272c58e 100644
--- a/arch/arm/mach-tegra/tegra20/crypto.h
+++ b/arch/arm/mach-tegra/tegra20/crypto.h
@@ -14,6 +14,7 @@
  * \param length	Size of source data
  * \param signature	Destination address for signature, AES_KEY_LENGTH bytes
  */
+#include <asm/types.h>
 int sign_data_block(u8 *source, unsigned length, u8 *signature);
 
 #endif /* #ifndef _CRYPTO_H_ */
diff --git a/arch/arm/mach-tegra/tegra20/emc.c b/arch/arm/mach-tegra/tegra20/emc.c
index 58abf790bd1b..116393fcc069 100644
--- a/arch/arm/mach-tegra/tegra20/emc.c
+++ b/arch/arm/mach-tegra/tegra20/emc.c
@@ -13,6 +13,7 @@
 #include <asm/arch/emc.h>
 #include <asm/arch/tegra.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /*
  * The EMC registers have shadow registers.  When the EMC clock is updated
diff --git a/arch/arm/mach-tegra/tegra20/warmboot.c b/arch/arm/mach-tegra/tegra20/warmboot.c
index f0050a4f8212..404b93dffd34 100644
--- a/arch/arm/mach-tegra/tegra20/warmboot.c
+++ b/arch/arm/mach-tegra/tegra20/warmboot.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/emc.h>
diff --git a/arch/arm/mach-tegra/tegra20/warmboot_avp.c b/arch/arm/mach-tegra/tegra20/warmboot_avp.c
index be801d108e37..10ed02bd32ff 100644
--- a/arch/arm/mach-tegra/tegra20/warmboot_avp.c
+++ b/arch/arm/mach-tegra/tegra20/warmboot_avp.c
@@ -15,6 +15,7 @@
 #include <asm/arch-tegra/clk_rst.h>
 #include <asm/arch-tegra/pmc.h>
 #include <asm/arch-tegra/warmboot.h>
+#include <asm/types.h>
 #include "warmboot_avp.h"
 
 #define DEBUG_RESET_CORESIGHT
diff --git a/arch/arm/mach-tegra/tegra210/clock.c b/arch/arm/mach-tegra/tegra210/clock.c
index 48f7e354108b..5597016b8d3d 100644
--- a/arch/arm/mach-tegra/tegra210/clock.c
+++ b/arch/arm/mach-tegra/tegra210/clock.c
@@ -24,6 +24,7 @@
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 /*
  * Clock types that we can use as a source. The Tegra210 has muxes for the
diff --git a/arch/arm/mach-tegra/tegra210/xusb-padctl.c b/arch/arm/mach-tegra/tegra210/xusb-padctl.c
index 78cea2b9193f..9b4bff7c97ea 100644
--- a/arch/arm/mach-tegra/tegra210/xusb-padctl.c
+++ b/arch/arm/mach-tegra/tegra210/xusb-padctl.c
@@ -10,6 +10,7 @@
 #include <log.h>
 #include <time.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <dm/of_access.h>
 #include <dm/ofnode.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-tegra/tegra30/clock.c b/arch/arm/mach-tegra/tegra30/clock.c
index b35f02eedd4c..a256a068625e 100644
--- a/arch/arm/mach-tegra/tegra30/clock.c
+++ b/arch/arm/mach-tegra/tegra30/clock.c
@@ -21,6 +21,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 
 /*
  * Clock types that we can use as a source. The Tegra30 has muxes for the
diff --git a/arch/arm/mach-tegra/tegra30/cpu.c b/arch/arm/mach-tegra/tegra30/cpu.c
index 651edd27ee87..bb2e711d63ee 100644
--- a/arch/arm/mach-tegra/tegra30/cpu.c
+++ b/arch/arm/mach-tegra/tegra30/cpu.c
@@ -13,6 +13,7 @@
 #include <asm/arch-tegra/pmc.h>
 #include <asm/arch-tegra/tegra_i2c.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 #include "../cpu.h"
 
 /* Tegra30-specific CPU init code */
diff --git a/arch/arm/mach-tegra/xusb-padctl-common.c b/arch/arm/mach-tegra/xusb-padctl-common.c
index 94a271311ce3..d22f1d48759c 100644
--- a/arch/arm/mach-tegra/xusb-padctl-common.c
+++ b/arch/arm/mach-tegra/xusb-padctl-common.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <errno.h>
 #include <log.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
 #include <linux/string.h>
diff --git a/arch/arm/mach-tegra/xusb-padctl-common.h b/arch/arm/mach-tegra/xusb-padctl-common.h
index e3fd613f2be1..1899f5aee5db 100644
--- a/arch/arm/mach-tegra/xusb-padctl-common.h
+++ b/arch/arm/mach-tegra/xusb-padctl-common.h
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <fdtdec.h>
+#include <asm/types.h>
 #include <dm/ofnode.h>
 
 #include <asm/io.h>
diff --git a/arch/arm/mach-u8500/cpuinfo.c b/arch/arm/mach-u8500/cpuinfo.c
index bc3fd036035d..9c386005aad6 100644
--- a/arch/arm/mach-u8500/cpuinfo.c
+++ b/arch/arm/mach-u8500/cpuinfo.c
@@ -7,6 +7,7 @@
 #include <init.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #define U8500_BOOTROM_BASE	0x90000000
 #define U8500_ASIC_ID_LOC_V2	(U8500_BOOTROM_BASE + 0x1DBF4)
diff --git a/arch/arm/mach-uniphier/arm32/cache-uniphier.c b/arch/arm/mach-uniphier/arm32/cache-uniphier.c
index cde2a8124fe2..78b1ad98adfe 100644
--- a/arch/arm/mach-uniphier/arm32/cache-uniphier.c
+++ b/arch/arm/mach-uniphier/arm32/cache-uniphier.c
@@ -5,7 +5,9 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <compiler.h>
 #include <cpu_func.h>
+#include <asm/types.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
 #include <asm/armv7.h>
diff --git a/arch/arm/mach-uniphier/arm32/psci.c b/arch/arm/mach-uniphier/arm32/psci.c
index a4d260aecedc..e099c91bb6a1 100644
--- a/arch/arm/mach-uniphier/arm32/psci.c
+++ b/arch/arm/mach-uniphier/arm32/psci.c
@@ -16,6 +16,7 @@
 #include <asm/psci.h>
 #include <asm/secure.h>
 #include <asm/system.h>
+#include <linux/types.h>
 
 #include "../debug.h"
 #include "../soc-info.h"
diff --git a/arch/arm/mach-uniphier/base-address.c b/arch/arm/mach-uniphier/base-address.c
index 1ba55eb7ebba..344209f63da8 100644
--- a/arch/arm/mach-uniphier/base-address.c
+++ b/arch/arm/mach-uniphier/base-address.c
@@ -3,6 +3,7 @@
 // Copyright (C) 2019 Socionext Inc.
 //   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
 
+#include <compiler.h>
 #include <dm/of.h>
 #include <fdt_support.h>
 #include <linux/errno.h>
diff --git a/arch/arm/mach-uniphier/board_init.c b/arch/arm/mach-uniphier/board_init.c
index 30e4e23a6438..da2f96593063 100644
--- a/arch/arm/mach-uniphier/board_init.c
+++ b/arch/arm/mach-uniphier/board_init.c
@@ -5,6 +5,7 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/io.h>
 #include <linux/printk.h>
diff --git a/arch/arm/mach-uniphier/boot-device/boot-device-ld11.c b/arch/arm/mach-uniphier/boot-device/boot-device-ld11.c
index 4689ed79fdc8..85539ea4aa67 100644
--- a/arch/arm/mach-uniphier/boot-device/boot-device-ld11.c
+++ b/arch/arm/mach-uniphier/boot-device/boot-device-ld11.c
@@ -5,6 +5,7 @@
  */
 
 #include <spl.h>
+#include <asm/types.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-uniphier/boot-device/boot-device-pxs2.c b/arch/arm/mach-uniphier/boot-device/boot-device-pxs2.c
index 677470cdc649..e0724021b91c 100644
--- a/arch/arm/mach-uniphier/boot-device/boot-device-pxs2.c
+++ b/arch/arm/mach-uniphier/boot-device/boot-device-pxs2.c
@@ -5,6 +5,7 @@
  */
 
 #include <spl.h>
+#include <asm/types.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
 
diff --git a/arch/arm/mach-uniphier/boot-device/boot-device-pxs3.c b/arch/arm/mach-uniphier/boot-device/boot-device-pxs3.c
index 688809931279..9076f55039ca 100644
--- a/arch/arm/mach-uniphier/boot-device/boot-device-pxs3.c
+++ b/arch/arm/mach-uniphier/boot-device/boot-device-pxs3.c
@@ -5,6 +5,7 @@
  */
 
 #include <spl.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
diff --git a/arch/arm/mach-uniphier/boot-device/boot-device.c b/arch/arm/mach-uniphier/boot-device/boot-device.c
index 1e6bc8433f7d..fc7404e1f3e4 100644
--- a/arch/arm/mach-uniphier/boot-device/boot-device.c
+++ b/arch/arm/mach-uniphier/boot-device/boot-device.c
@@ -6,7 +6,9 @@
 
 #include <command.h>
 #include <spl.h>
+#include <stdbool.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/bug.h>
 #include <linux/errno.h>
diff --git a/arch/arm/mach-uniphier/boot-device/boot-device.h b/arch/arm/mach-uniphier/boot-device/boot-device.h
index bbb634316b3a..43ec10947609 100644
--- a/arch/arm/mach-uniphier/boot-device/boot-device.h
+++ b/arch/arm/mach-uniphier/boot-device/boot-device.h
@@ -7,6 +7,7 @@
 #ifndef _UNIPHIER_BOOT_DEVICE_H_
 #define _UNIPHIER_BOOT_DEVICE_H_
 
+#include <asm/types.h>
 struct uniphier_boot_device {
 	unsigned int boot_device;
 	const char *desc;
diff --git a/arch/arm/mach-uniphier/clk/clk-dram-ld4.c b/arch/arm/mach-uniphier/clk/clk-dram-ld4.c
index 3b721eaf2340..004a32f29a8a 100644
--- a/arch/arm/mach-uniphier/clk/clk-dram-ld4.c
+++ b/arch/arm/mach-uniphier/clk/clk-dram-ld4.c
@@ -5,6 +5,7 @@
  */
 
 #include <spl.h>
+#include <asm/types.h>
 #include <linux/io.h>
 
 #include "../init.h"
diff --git a/arch/arm/mach-uniphier/clk/clk-dram-pro5.c b/arch/arm/mach-uniphier/clk/clk-dram-pro5.c
index 808d1ebfe190..43e215d3dedb 100644
--- a/arch/arm/mach-uniphier/clk/clk-dram-pro5.c
+++ b/arch/arm/mach-uniphier/clk/clk-dram-pro5.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2015-2017 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/io.h>
 
 #include "../init.h"
diff --git a/arch/arm/mach-uniphier/clk/clk-dram-pxs2.c b/arch/arm/mach-uniphier/clk/clk-dram-pxs2.c
index 75d3e70d6aad..27629be76560 100644
--- a/arch/arm/mach-uniphier/clk/clk-dram-pxs2.c
+++ b/arch/arm/mach-uniphier/clk/clk-dram-pxs2.c
@@ -4,6 +4,7 @@
  */
 
 #include <spl.h>
+#include <asm/types.h>
 #include <linux/io.h>
 
 #include "../init.h"
diff --git a/arch/arm/mach-uniphier/clk/clk-early-ld4.c b/arch/arm/mach-uniphier/clk/clk-early-ld4.c
index 25b72d8926c8..1ba584d09bea 100644
--- a/arch/arm/mach-uniphier/clk/clk-early-ld4.c
+++ b/arch/arm/mach-uniphier/clk/clk-early-ld4.c
@@ -5,6 +5,7 @@
  */
 
 #include <spl.h>
+#include <asm/types.h>
 #include <linux/io.h>
 
 #include "../init.h"
diff --git a/arch/arm/mach-uniphier/clk/clk-ld11.c b/arch/arm/mach-uniphier/clk/clk-ld11.c
index d241a65382f6..cf2205c9a1fe 100644
--- a/arch/arm/mach-uniphier/clk/clk-ld11.c
+++ b/arch/arm/mach-uniphier/clk/clk-ld11.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2016 Socionext Inc.
  */
 
+#include <compiler.h>
 #include <spl.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-uniphier/clk/clk-ld20.c b/arch/arm/mach-uniphier/clk/clk-ld20.c
index 397b2d7384fd..1d077dd0f1db 100644
--- a/arch/arm/mach-uniphier/clk/clk-ld20.c
+++ b/arch/arm/mach-uniphier/clk/clk-ld20.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2017 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/clk/clk-pro4.c b/arch/arm/mach-uniphier/clk/clk-pro4.c
index 798128b30247..34d6d90fe687 100644
--- a/arch/arm/mach-uniphier/clk/clk-pro4.c
+++ b/arch/arm/mach-uniphier/clk/clk-pro4.c
@@ -5,6 +5,7 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <asm/types.h>
 #include <linux/io.h>
 
 #include "../init.h"
diff --git a/arch/arm/mach-uniphier/clk/clk-pro5.c b/arch/arm/mach-uniphier/clk/clk-pro5.c
index 36006fd256ca..821689b12db8 100644
--- a/arch/arm/mach-uniphier/clk/clk-pro5.c
+++ b/arch/arm/mach-uniphier/clk/clk-pro5.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <asm/types.h>
 #include <linux/io.h>
 
 #include "../init.h"
diff --git a/arch/arm/mach-uniphier/clk/clk-pxs2.c b/arch/arm/mach-uniphier/clk/clk-pxs2.c
index c2a75ce00010..e1b867ac3b0d 100644
--- a/arch/arm/mach-uniphier/clk/clk-pxs2.c
+++ b/arch/arm/mach-uniphier/clk/clk-pxs2.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/clk/clk-pxs3.c b/arch/arm/mach-uniphier/clk/clk-pxs3.c
index 33b9c5b73d1b..0d6f6a5c6669 100644
--- a/arch/arm/mach-uniphier/clk/clk-pxs3.c
+++ b/arch/arm/mach-uniphier/clk/clk-pxs3.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2017 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/clk/dpll-ld4.c b/arch/arm/mach-uniphier/clk/dpll-ld4.c
index f24a0eb0b827..dec158401518 100644
--- a/arch/arm/mach-uniphier/clk/dpll-ld4.c
+++ b/arch/arm/mach-uniphier/clk/dpll-ld4.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2015-2016 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/io.h>
diff --git a/arch/arm/mach-uniphier/clk/dpll-pro4.c b/arch/arm/mach-uniphier/clk/dpll-pro4.c
index 204aee1a62c0..0a37297de846 100644
--- a/arch/arm/mach-uniphier/clk/dpll-pro4.c
+++ b/arch/arm/mach-uniphier/clk/dpll-pro4.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2015-2016 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/io.h>
diff --git a/arch/arm/mach-uniphier/clk/dpll-sld8.c b/arch/arm/mach-uniphier/clk/dpll-sld8.c
index 1ac52d11f34a..526b1c4cbbd3 100644
--- a/arch/arm/mach-uniphier/clk/dpll-sld8.c
+++ b/arch/arm/mach-uniphier/clk/dpll-sld8.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2015-2016 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/clk/dpll-tail.c b/arch/arm/mach-uniphier/clk/dpll-tail.c
index 6ba5a3672743..ac99313e8c0c 100644
--- a/arch/arm/mach-uniphier/clk/dpll-tail.c
+++ b/arch/arm/mach-uniphier/clk/dpll-tail.c
@@ -5,6 +5,7 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <asm/types.h>
 #include <linux/io.h>
 
 #include "../sc-regs.h"
diff --git a/arch/arm/mach-uniphier/clk/pll-base-ld20.c b/arch/arm/mach-uniphier/clk/pll-base-ld20.c
index ea96d739c53d..8b5b53da4392 100644
--- a/arch/arm/mach-uniphier/clk/pll-base-ld20.c
+++ b/arch/arm/mach-uniphier/clk/pll-base-ld20.c
@@ -4,6 +4,8 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <compiler.h>
+#include <asm/types.h>
 #include <linux/bitfield.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-uniphier/clk/pll-ld4.c b/arch/arm/mach-uniphier/clk/pll-ld4.c
index c66031bdd05a..91eab0d0565d 100644
--- a/arch/arm/mach-uniphier/clk/pll-ld4.c
+++ b/arch/arm/mach-uniphier/clk/pll-ld4.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2015-2016 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/clk/pll-pro4.c b/arch/arm/mach-uniphier/clk/pll-pro4.c
index b7dc3e261f81..4b27bead1cf4 100644
--- a/arch/arm/mach-uniphier/clk/pll-pro4.c
+++ b/arch/arm/mach-uniphier/clk/pll-pro4.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2015-2016 Socionext Inc.
  */
 
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/debug-uart/debug-uart-ld6b.c b/arch/arm/mach-uniphier/debug-uart/debug-uart-ld6b.c
index f64ff39c9e65..77b6143b8d38 100644
--- a/arch/arm/mach-uniphier/debug-uart/debug-uart-ld6b.c
+++ b/arch/arm/mach-uniphier/debug-uart/debug-uart-ld6b.c
@@ -4,6 +4,7 @@
  */
 
 #include <config.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/debug-uart/debug-uart-pro4.c b/arch/arm/mach-uniphier/debug-uart/debug-uart-pro4.c
index 79c6c101e229..66a0d3226e48 100644
--- a/arch/arm/mach-uniphier/debug-uart/debug-uart-pro4.c
+++ b/arch/arm/mach-uniphier/debug-uart/debug-uart-pro4.c
@@ -4,6 +4,7 @@
  */
 
 #include <config.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/debug-uart/debug-uart-pro5.c b/arch/arm/mach-uniphier/debug-uart/debug-uart-pro5.c
index ef3b383ee431..347e91871a24 100644
--- a/arch/arm/mach-uniphier/debug-uart/debug-uart-pro5.c
+++ b/arch/arm/mach-uniphier/debug-uart/debug-uart-pro5.c
@@ -4,6 +4,7 @@
  */
 
 #include <config.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/debug-uart/debug-uart-pxs2.c b/arch/arm/mach-uniphier/debug-uart/debug-uart-pxs2.c
index ee8caad1d458..5a6674e5cbbe 100644
--- a/arch/arm/mach-uniphier/debug-uart/debug-uart-pxs2.c
+++ b/arch/arm/mach-uniphier/debug-uart/debug-uart-pxs2.c
@@ -4,6 +4,7 @@
  */
 
 #include <config.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/io.h>
 
diff --git a/arch/arm/mach-uniphier/debug-uart/debug-uart.c b/arch/arm/mach-uniphier/debug-uart/debug-uart.c
index d116d46812d5..cbe61e614a4c 100644
--- a/arch/arm/mach-uniphier/debug-uart/debug-uart.c
+++ b/arch/arm/mach-uniphier/debug-uart/debug-uart.c
@@ -3,7 +3,9 @@
  * Copyright (C) 2016 Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <compiler.h>
 #include <debug_uart.h>
+#include <asm/types.h>
 #include <linux/io.h>
 #include <linux/serial_reg.h>
 
diff --git a/arch/arm/mach-uniphier/debug.h b/arch/arm/mach-uniphier/debug.h
index 466dc9b03bf7..7f699fdb6c76 100644
--- a/arch/arm/mach-uniphier/debug.h
+++ b/arch/arm/mach-uniphier/debug.h
@@ -7,6 +7,7 @@
 #ifndef __DEBUG_H__
 #define __DEBUG_H__
 
+#include <compiler.h>
 #include <linux/io.h>
 #include <linux/serial_reg.h>
 
diff --git a/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c b/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c
index be4ce3265bb8..d36bc4834b54 100644
--- a/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c
+++ b/arch/arm/mach-uniphier/dram/cmd_ddrmphy.c
@@ -5,11 +5,13 @@
  */
 
 #include <command.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <linux/io.h>
 #include <linux/printk.h>
 #include <linux/sizes.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include "../soc-info.h"
 #include "ddrmphy-regs.h"
diff --git a/arch/arm/mach-uniphier/dram/cmd_ddrphy.c b/arch/arm/mach-uniphier/dram/cmd_ddrphy.c
index 3ccafe206382..0d4f88327c80 100644
--- a/arch/arm/mach-uniphier/dram/cmd_ddrphy.c
+++ b/arch/arm/mach-uniphier/dram/cmd_ddrphy.c
@@ -6,11 +6,13 @@
  */
 
 #include <command.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <linux/io.h>
 #include <linux/printk.h>
 #include <linux/sizes.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include "../soc-info.h"
 #include "ddrphy-regs.h"
diff --git a/arch/arm/mach-uniphier/dram/ddrphy-ld4.c b/arch/arm/mach-uniphier/dram/ddrphy-ld4.c
index 747bc64403db..a5ee11da47de 100644
--- a/arch/arm/mach-uniphier/dram/ddrphy-ld4.c
+++ b/arch/arm/mach-uniphier/dram/ddrphy-ld4.c
@@ -4,7 +4,9 @@
  * Copyright (C) 2015-2016 Socionext Inc.
  */
 
+#include <compiler.h>
 #include <stdbool.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/io.h>
diff --git a/arch/arm/mach-uniphier/dram/ddrphy-training.c b/arch/arm/mach-uniphier/dram/ddrphy-training.c
index 1decdf1cbff5..afe70f00bb1c 100644
--- a/arch/arm/mach-uniphier/dram/ddrphy-training.c
+++ b/arch/arm/mach-uniphier/dram/ddrphy-training.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2015-2016 Socionext Inc.
  */
 
+#include <compiler.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
@@ -11,6 +12,7 @@
 #include <linux/kernel.h>
 #include <linux/printk.h>
 #include <time.h>
+#include <linux/types.h>
 
 #include "ddrphy-init.h"
 #include "ddrphy-regs.h"
diff --git a/arch/arm/mach-uniphier/dram/umc-ld4.c b/arch/arm/mach-uniphier/dram/umc-ld4.c
index 1109607abfda..517bec221acd 100644
--- a/arch/arm/mach-uniphier/dram/umc-ld4.c
+++ b/arch/arm/mach-uniphier/dram/umc-ld4.c
@@ -5,7 +5,9 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <compiler.h>
 #include <stdbool.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/io.h>
 #include <linux/printk.h>
diff --git a/arch/arm/mach-uniphier/dram/umc-pro4.c b/arch/arm/mach-uniphier/dram/umc-pro4.c
index b2666ef82492..dba313d836dd 100644
--- a/arch/arm/mach-uniphier/dram/umc-pro4.c
+++ b/arch/arm/mach-uniphier/dram/umc-pro4.c
@@ -5,7 +5,9 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <compiler.h>
 #include <stdbool.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/io.h>
 #include <linux/printk.h>
diff --git a/arch/arm/mach-uniphier/dram/umc-pxs2.c b/arch/arm/mach-uniphier/dram/umc-pxs2.c
index b39f3d79cdd5..5889c9ae9220 100644
--- a/arch/arm/mach-uniphier/dram/umc-pxs2.c
+++ b/arch/arm/mach-uniphier/dram/umc-pxs2.c
@@ -7,6 +7,8 @@
  * Copyright (C) 2015 Socionext Inc.
  */
 
+#include <compiler.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
diff --git a/arch/arm/mach-uniphier/dram/umc-sld8.c b/arch/arm/mach-uniphier/dram/umc-sld8.c
index d60f70e9e031..877b948fb749 100644
--- a/arch/arm/mach-uniphier/dram/umc-sld8.c
+++ b/arch/arm/mach-uniphier/dram/umc-sld8.c
@@ -5,7 +5,9 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <compiler.h>
 #include <stdbool.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/io.h>
 #include <linux/printk.h>
diff --git a/arch/arm/mach-uniphier/dram_init.c b/arch/arm/mach-uniphier/dram_init.c
index 7f2753190c23..b71ba75d33c4 100644
--- a/arch/arm/mach-uniphier/dram_init.c
+++ b/arch/arm/mach-uniphier/dram_init.c
@@ -6,6 +6,8 @@
  */
 
 #include <init.h>
+#include <stdbool.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
diff --git a/arch/arm/mach-uniphier/memconf.c b/arch/arm/mach-uniphier/memconf.c
index ab0d187a1faa..16f8436e87f4 100644
--- a/arch/arm/mach-uniphier/memconf.c
+++ b/arch/arm/mach-uniphier/memconf.c
@@ -5,6 +5,7 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/io.h>
 #include <linux/printk.h>
diff --git a/arch/arm/mach-uniphier/micro-support-card.c b/arch/arm/mach-uniphier/micro-support-card.c
index 07ce46bd9ddb..7d2e08fd6eb4 100644
--- a/arch/arm/mach-uniphier/micro-support-card.c
+++ b/arch/arm/mach-uniphier/micro-support-card.c
@@ -5,10 +5,12 @@
  *   Author: Masahiro Yamada <yamada.masahiro at socionext.com>
  */
 
+#include <compiler.h>
 #include <dm.h>
 #include <fdt_support.h>
 #include <stdbool.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/ctype.h>
 #include <linux/delay.h>
 #include <linux/io.h>
diff --git a/arch/arm/mach-uniphier/mmc-boot-mode.c b/arch/arm/mach-uniphier/mmc-boot-mode.c
index e47e5df6480a..264a3c2a00c0 100644
--- a/arch/arm/mach-uniphier/mmc-boot-mode.c
+++ b/arch/arm/mach-uniphier/mmc-boot-mode.c
@@ -6,6 +6,7 @@
 
 #include <mmc.h>
 #include <spl.h>
+#include <asm/types.h>
 
 u32 spl_mmc_boot_mode(const u32 boot_device)
 {
diff --git a/arch/arm/mach-uniphier/reset.c b/arch/arm/mach-uniphier/reset.c
index 5fffd23e9a5a..a065935af323 100644
--- a/arch/arm/mach-uniphier/reset.c
+++ b/arch/arm/mach-uniphier/reset.c
@@ -6,6 +6,7 @@
  */
 
 #include <cpu_func.h>
+#include <asm/types.h>
 #include <linux/io.h>
 #include <asm/secure.h>
 
diff --git a/arch/arm/mach-uniphier/sc-regs.h b/arch/arm/mach-uniphier/sc-regs.h
index e43116e064bd..c6ce432c597b 100644
--- a/arch/arm/mach-uniphier/sc-regs.h
+++ b/arch/arm/mach-uniphier/sc-regs.h
@@ -11,6 +11,7 @@
 #define ARCH_SC_REGS_H
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
 #include <linux/compiler.h>
 #define sc_base			((void __iomem *)SC_BASE)
 #endif
diff --git a/arch/arm/mach-uniphier/sc64-regs.h b/arch/arm/mach-uniphier/sc64-regs.h
index fdcca232b61c..ee34465aa48a 100644
--- a/arch/arm/mach-uniphier/sc64-regs.h
+++ b/arch/arm/mach-uniphier/sc64-regs.h
@@ -10,6 +10,7 @@
 #define SC64_REGS_H
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
 #include <linux/compiler.h>
 extern void __iomem *sc_base;
 #endif
diff --git a/arch/arm/mach-uniphier/sg-regs.h b/arch/arm/mach-uniphier/sg-regs.h
index a0fa51a8b7be..2b6bc50b775c 100644
--- a/arch/arm/mach-uniphier/sg-regs.h
+++ b/arch/arm/mach-uniphier/sg-regs.h
@@ -13,6 +13,7 @@
 #include <linux/bitops.h>
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
 #include <linux/compiler.h>
 #ifdef CONFIG_ARCH_UNIPHIER_V8_MULTI
 extern void __iomem *sg_base;
diff --git a/arch/arm/mach-versal/include/mach/hardware.h b/arch/arm/mach-versal/include/mach/hardware.h
index 9af5afd3f3f4..64b858e79db8 100644
--- a/arch/arm/mach-versal/include/mach/hardware.h
+++ b/arch/arm/mach-versal/include/mach/hardware.h
@@ -4,6 +4,7 @@
  */
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/mach-versal/include/mach/sys_proto.h b/arch/arm/mach-versal/include/mach/sys_proto.h
index 31af049a21c9..1f4dc80d8fd1 100644
--- a/arch/arm/mach-versal/include/mach/sys_proto.h
+++ b/arch/arm/mach-versal/include/mach/sys_proto.h
@@ -3,6 +3,7 @@
  * Copyright 2016 - 2018 Xilinx, Inc.
  */
 
+#include <asm/types.h>
 enum {
 	TCM_LOCK,
 	TCM_SPLIT,
diff --git a/arch/arm/mach-versal/mp.c b/arch/arm/mach-versal/mp.c
index 001c3e9518ab..0eada1838d4e 100644
--- a/arch/arm/mach-versal/mp.c
+++ b/arch/arm/mach-versal/mp.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-versatile/timer.c b/arch/arm/mach-versatile/timer.c
index a0babce7baad..108a86d8919a 100644
--- a/arch/arm/mach-versatile/timer.c
+++ b/arch/arm/mach-versatile/timer.c
@@ -19,6 +19,7 @@
  */
 
 #include <common.h>
+#include <linux/types.h>
 
 #define TIMER_ENABLE	(1 << 7)
 #define TIMER_MODE_MSK	(1 << 6)
diff --git a/arch/arm/mach-zynq/clk.c b/arch/arm/mach-zynq/clk.c
index 04d6607f591a..73880a4fd577 100644
--- a/arch/arm/mach-zynq/clk.c
+++ b/arch/arm/mach-zynq/clk.c
@@ -12,6 +12,7 @@
 #include <asm/arch/clk.h>
 #include <asm/global_data.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-zynq/cpu.c b/arch/arm/mach-zynq/cpu.c
index 0c214f71fae4..6cada4d20471 100644
--- a/arch/arm/mach-zynq/cpu.c
+++ b/arch/arm/mach-zynq/cpu.c
@@ -15,6 +15,7 @@
 #include <asm/arch/ps7_init_gpl.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #define ZYNQ_SILICON_VER_MASK	0xF0000000
 #define ZYNQ_SILICON_VER_SHIFT	28
diff --git a/arch/arm/mach-zynq/ddrc.c b/arch/arm/mach-zynq/ddrc.c
index f601c927f1ae..bca7d3d62df6 100644
--- a/arch/arm/mach-zynq/ddrc.c
+++ b/arch/arm/mach-zynq/ddrc.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/hardware.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 #ifndef CONFIG_ZYNQ_DDRC_INIT
diff --git a/arch/arm/mach-zynq/include/mach/hardware.h b/arch/arm/mach-zynq/include/mach/hardware.h
index 89eb565c9412..9b9c1e8f2dc9 100644
--- a/arch/arm/mach-zynq/include/mach/hardware.h
+++ b/arch/arm/mach-zynq/include/mach/hardware.h
@@ -6,6 +6,7 @@
 #ifndef _ASM_ARCH_HARDWARE_H
 #define _ASM_ARCH_HARDWARE_H
 
+#include <asm/types.h>
 #define ZYNQ_SYS_CTRL_BASEADDR		0xF8000000
 #define ZYNQ_DEV_CFG_APB_BASEADDR	0xF8007000
 #define ZYNQ_SCU_BASEADDR		0xF8F00000
diff --git a/arch/arm/mach-zynq/include/mach/sys_proto.h b/arch/arm/mach-zynq/include/mach/sys_proto.h
index 1dc16d479ea0..3451517793b7 100644
--- a/arch/arm/mach-zynq/include/mach/sys_proto.h
+++ b/arch/arm/mach-zynq/include/mach/sys_proto.h
@@ -6,6 +6,7 @@
 #ifndef _SYS_PROTO_H_
 #define _SYS_PROTO_H_
 
+#include <asm/types.h>
 extern void zynq_slcr_lock(void);
 extern void zynq_slcr_unlock(void);
 extern void zynq_slcr_cpu_reset(void);
diff --git a/arch/arm/mach-zynq/ps7_spl_init.c b/arch/arm/mach-zynq/ps7_spl_init.c
index 4c38724d4d7c..35314960cfa1 100644
--- a/arch/arm/mach-zynq/ps7_spl_init.c
+++ b/arch/arm/mach-zynq/ps7_spl_init.c
@@ -4,6 +4,7 @@
  * (c) Copyright 2016 Topic Embedded Products.
  */
 
+#include <compiler.h>
 #include <asm/io.h>
 #include <asm/spl.h>
 #include <asm/arch/sys_proto.h>
diff --git a/arch/arm/mach-zynq/slcr.c b/arch/arm/mach-zynq/slcr.c
index 67df265ba967..30d6aee8bd1e 100644
--- a/arch/arm/mach-zynq/slcr.c
+++ b/arch/arm/mach-zynq/slcr.c
@@ -8,6 +8,7 @@
 #include <malloc.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
 
diff --git a/arch/arm/mach-zynq/spl.c b/arch/arm/mach-zynq/spl.c
index dd5535a06508..207560832943 100644
--- a/arch/arm/mach-zynq/spl.c
+++ b/arch/arm/mach-zynq/spl.c
@@ -12,6 +12,7 @@
 #include <stdio.h>
 #include <generated/dt.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <asm/spl.h>
diff --git a/arch/arm/mach-zynq/timer.c b/arch/arm/mach-zynq/timer.c
index 08cb4406cc35..1854ee351083 100644
--- a/arch/arm/mach-zynq/timer.c
+++ b/arch/arm/mach-zynq/timer.c
@@ -38,6 +38,7 @@
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/clk.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-zynqmp-r5/cpu.c b/arch/arm/mach-zynqmp-r5/cpu.c
index b95749978595..d02c64528c4a 100644
--- a/arch/arm/mach-zynqmp-r5/cpu.c
+++ b/arch/arm/mach-zynqmp-r5/cpu.c
@@ -8,6 +8,7 @@
 #include <init.h>
 #include <asm/armv7_mpu.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-zynqmp/clk.c b/arch/arm/mach-zynqmp/clk.c
index 1e6e726e8792..c239b5219a3b 100644
--- a/arch/arm/mach-zynqmp/clk.c
+++ b/arch/arm/mach-zynqmp/clk.c
@@ -11,6 +11,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-zynqmp/cpu.c b/arch/arm/mach-zynqmp/cpu.c
index b17145155eaa..6b1ee7197cd6 100644
--- a/arch/arm/mach-zynqmp/cpu.c
+++ b/arch/arm/mach-zynqmp/cpu.c
@@ -18,6 +18,7 @@
 #include <asm/cache.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define ZYNQ_SILICON_VER_MASK	0xF000
 #define ZYNQ_SILICON_VER_SHIFT	12
diff --git a/arch/arm/mach-zynqmp/handoff.c b/arch/arm/mach-zynqmp/handoff.c
index 64e5320acc68..0318de61a799 100644
--- a/arch/arm/mach-zynqmp/handoff.c
+++ b/arch/arm/mach-zynqmp/handoff.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
+#include <linux/types.h>
 
 /*
  * atfhandoffparams
diff --git a/arch/arm/mach-zynqmp/include/mach/hardware.h b/arch/arm/mach-zynqmp/include/mach/hardware.h
index c5ba42124b04..682b4e326016 100644
--- a/arch/arm/mach-zynqmp/include/mach/hardware.h
+++ b/arch/arm/mach-zynqmp/include/mach/hardware.h
@@ -8,6 +8,7 @@
 #define _ASM_ARCH_HARDWARE_H
 
 #ifndef __ASSEMBLY__
+#include <asm/types.h>
 #include <linux/bitops.h>
 #endif
 
diff --git a/arch/arm/mach-zynqmp/include/mach/sys_proto.h b/arch/arm/mach-zynqmp/include/mach/sys_proto.h
index 05c81769d63d..f874db3f9232 100644
--- a/arch/arm/mach-zynqmp/include/mach/sys_proto.h
+++ b/arch/arm/mach-zynqmp/include/mach/sys_proto.h
@@ -8,6 +8,7 @@
 #define _ASM_ARCH_SYS_PROTO_H
 
 #include <stdbool.h>
+#include <linux/types.h>
 #define PAYLOAD_ARG_CNT		5
 
 #define ZYNQMP_CSU_SILICON_VER_MASK	0xF
diff --git a/arch/arm/mach-zynqmp/mp.c b/arch/arm/mach-zynqmp/mp.c
index b31da25933ed..258cf27323c0 100644
--- a/arch/arm/mach-zynqmp/mp.c
+++ b/arch/arm/mach-zynqmp/mp.c
@@ -13,6 +13,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/string.h>
 
diff --git a/arch/arm/mach-zynqmp/psu_spl_init.c b/arch/arm/mach-zynqmp/psu_spl_init.c
index 5c5c7d136e77..ddda997165ee 100644
--- a/arch/arm/mach-zynqmp/psu_spl_init.c
+++ b/arch/arm/mach-zynqmp/psu_spl_init.c
@@ -5,8 +5,10 @@
  * Michal Simek <michal.simek at xilinx.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <asm/io.h>
 #include <asm/arch/psu_init_gpl.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #define PSU_MASK_POLL_TIME 1100000
diff --git a/arch/arm/mach-zynqmp/spl.c b/arch/arm/mach-zynqmp/spl.c
index cddc8a3fc1e8..c1c039f77165 100644
--- a/arch/arm/mach-zynqmp/spl.c
+++ b/arch/arm/mach-zynqmp/spl.c
@@ -12,6 +12,7 @@
 #include <spl.h>
 #include <stdio.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <asm/spl.h>
diff --git a/arch/m68k/cpu/mcf5227x/cpu.c b/arch/m68k/cpu/mcf5227x/cpu.c
index e4c7041c4214..b9a6cd51cbf4 100644
--- a/arch/m68k/cpu/mcf5227x/cpu.c
+++ b/arch/m68k/cpu/mcf5227x/cpu.c
@@ -15,6 +15,7 @@
 #include <watchdog.h>
 #include <command.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #include <asm/immap.h>
diff --git a/arch/m68k/cpu/mcf5227x/speed.c b/arch/m68k/cpu/mcf5227x/speed.c
index fa9d5cb7887c..13f2fa553f8d 100644
--- a/arch/m68k/cpu/mcf5227x/speed.c
+++ b/arch/m68k/cpu/mcf5227x/speed.c
@@ -9,6 +9,7 @@
 #include <clock_legacy.h>
 #include <asm/global_data.h>
 #include <asm/processor.h>
+#include <asm/types.h>
 
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/arch/m68k/cpu/mcf523x/cpu.c b/arch/m68k/cpu/mcf523x/cpu.c
index bf3acb8f8930..499b6dbc35fb 100644
--- a/arch/m68k/cpu/mcf523x/cpu.c
+++ b/arch/m68k/cpu/mcf523x/cpu.c
@@ -17,6 +17,7 @@
 #include <command.h>
 #include <netdev.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 
 #include <asm/immap.h>
diff --git a/arch/m68k/cpu/mcf52x2/cpu.c b/arch/m68k/cpu/mcf52x2/cpu.c
index 82f5b3c2f801..823221c0ea9c 100644
--- a/arch/m68k/cpu/mcf52x2/cpu.c
+++ b/arch/m68k/cpu/mcf52x2/cpu.c
@@ -26,6 +26,7 @@
 #include <netdev.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 #include "cpu.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/m68k/cpu/mcf52x2/cpu.h b/arch/m68k/cpu/mcf52x2/cpu.h
index 9bba7810e05c..2d24333afef4 100644
--- a/arch/m68k/cpu/mcf52x2/cpu.h
+++ b/arch/m68k/cpu/mcf52x2/cpu.h
@@ -9,6 +9,7 @@
 #define _CPU_H_
 
 #include <command.h>
+#include <compiler.h>
 
 /* Use this to create board specific reset functions */
 void board_reset(void) __attribute__((__weak__));
diff --git a/arch/m68k/cpu/mcf52x2/cpu_init.c b/arch/m68k/cpu/mcf52x2/cpu_init.c
index 9d4a10f028d1..11e8e56f8f5e 100644
--- a/arch/m68k/cpu/mcf52x2/cpu_init.c
+++ b/arch/m68k/cpu/mcf52x2/cpu_init.c
@@ -23,6 +23,7 @@
 #include <watchdog.h>
 #include <asm/immap.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #if defined(CONFIG_CMD_NET)
 #include <config.h>
diff --git a/arch/m68k/cpu/mcf532x/cpu.c b/arch/m68k/cpu/mcf532x/cpu.c
index 776543f06a96..20ed945a4070 100644
--- a/arch/m68k/cpu/mcf532x/cpu.c
+++ b/arch/m68k/cpu/mcf532x/cpu.c
@@ -17,6 +17,7 @@
 #include <command.h>
 #include <netdev.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 
diff --git a/arch/m68k/cpu/mcf532x/cpu_init.c b/arch/m68k/cpu/mcf532x/cpu_init.c
index 1311f3967c9a..4b8318556f61 100644
--- a/arch/m68k/cpu/mcf532x/cpu_init.c
+++ b/arch/m68k/cpu/mcf532x/cpu_init.c
@@ -14,6 +14,7 @@
 #include <watchdog.h>
 #include <asm/immap.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #if defined(CONFIG_MCFFEC)
 #include <config.h>
diff --git a/arch/m68k/cpu/mcf532x/speed.c b/arch/m68k/cpu/mcf532x/speed.c
index e2985792d96f..065938701e3d 100644
--- a/arch/m68k/cpu/mcf532x/speed.c
+++ b/arch/m68k/cpu/mcf532x/speed.c
@@ -12,6 +12,7 @@
 #include <clock_legacy.h>
 #include <asm/global_data.h>
 #include <asm/processor.h>
+#include <asm/types.h>
 
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/arch/m68k/cpu/mcf5445x/cpu.c b/arch/m68k/cpu/mcf5445x/cpu.c
index aa9af8a5a2a8..70bf764abb29 100644
--- a/arch/m68k/cpu/mcf5445x/cpu.c
+++ b/arch/m68k/cpu/mcf5445x/cpu.c
@@ -17,6 +17,7 @@
 #include <command.h>
 #include <netdev.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 
diff --git a/arch/m68k/cpu/mcf5445x/cpu_init.c b/arch/m68k/cpu/mcf5445x/cpu_init.c
index 9deab51d07e8..64764d5bd71d 100644
--- a/arch/m68k/cpu/mcf5445x/cpu_init.c
+++ b/arch/m68k/cpu/mcf5445x/cpu_init.c
@@ -16,6 +16,7 @@
 #include <asm/processor.h>
 #include <asm/rtc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/compiler.h>
 
 #if defined(CONFIG_CMD_NET)
diff --git a/arch/m68k/cpu/mcf5445x/pci.c b/arch/m68k/cpu/mcf5445x/pci.c
index af02c4934c97..9868ece5cc26 100644
--- a/arch/m68k/cpu/mcf5445x/pci.c
+++ b/arch/m68k/cpu/mcf5445x/pci.c
@@ -11,6 +11,7 @@
 #include <pci.h>
 #include <asm/io.h>
 #include <asm/immap.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #if defined(CONFIG_PCI)
diff --git a/arch/m68k/cpu/mcf5445x/speed.c b/arch/m68k/cpu/mcf5445x/speed.c
index a0b9af8866b3..b2e373f9e1ae 100644
--- a/arch/m68k/cpu/mcf5445x/speed.c
+++ b/arch/m68k/cpu/mcf5445x/speed.c
@@ -9,6 +9,7 @@
 #include <clock_legacy.h>
 #include <asm/global_data.h>
 #include <asm/processor.h>
+#include <asm/types.h>
 
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/arch/m68k/cpu/mcf547x_8x/cpu.c b/arch/m68k/cpu/mcf547x_8x/cpu.c
index e1a7f360e777..b99e16a213ec 100644
--- a/arch/m68k/cpu/mcf547x_8x/cpu.c
+++ b/arch/m68k/cpu/mcf547x_8x/cpu.c
@@ -17,6 +17,7 @@
 #include <command.h>
 #include <netdev.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 
 #include <asm/immap.h>
diff --git a/arch/m68k/cpu/mcf547x_8x/cpu_init.c b/arch/m68k/cpu/mcf547x_8x/cpu_init.c
index 8e42b6314123..00676b5f4135 100644
--- a/arch/m68k/cpu/mcf547x_8x/cpu_init.c
+++ b/arch/m68k/cpu/mcf547x_8x/cpu_init.c
@@ -14,6 +14,7 @@
 #include <init.h>
 #include <asm/immap.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #if defined(CONFIG_CMD_NET)
 #include <config.h>
diff --git a/arch/m68k/cpu/mcf547x_8x/pci.c b/arch/m68k/cpu/mcf547x_8x/pci.c
index 74ba68124f1a..d83ad111ceff 100644
--- a/arch/m68k/cpu/mcf547x_8x/pci.c
+++ b/arch/m68k/cpu/mcf547x_8x/pci.c
@@ -11,6 +11,7 @@
 #include <pci.h>
 #include <asm/io.h>
 #include <asm/immap.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #if defined(CONFIG_PCI)
diff --git a/arch/m68k/cpu/mcf547x_8x/slicetimer.c b/arch/m68k/cpu/mcf547x_8x/slicetimer.c
index 49f246b62e1e..9439f51ebfe8 100644
--- a/arch/m68k/cpu/mcf547x_8x/slicetimer.c
+++ b/arch/m68k/cpu/mcf547x_8x/slicetimer.c
@@ -10,6 +10,7 @@
 #include <time.h>
 #include <asm/global_data.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include <asm/timer.h>
 #include <asm/immap.h>
diff --git a/arch/m68k/include/asm/coldfire/ata.h b/arch/m68k/include/asm/coldfire/ata.h
index d85c052c2ebd..6cc7b3733034 100644
--- a/arch/m68k/include/asm/coldfire/ata.h
+++ b/arch/m68k/include/asm/coldfire/ata.h
@@ -10,6 +10,7 @@
 #define __ATA_H__
 
 /* ATA */
+#include <asm/types.h>
 typedef struct atac {
 	/* PIO */
 	u8 toff;		/* 0x00 */
diff --git a/arch/m68k/include/asm/coldfire/crossbar.h b/arch/m68k/include/asm/coldfire/crossbar.h
index e26da133725d..eb1dd3ee0138 100644
--- a/arch/m68k/include/asm/coldfire/crossbar.h
+++ b/arch/m68k/include/asm/coldfire/crossbar.h
@@ -12,6 +12,7 @@
 /*********************************************************************
 * Cross-bar switch (XBS)
 *********************************************************************/
+#include <asm/types.h>
 typedef struct xbs {
 	u32 prs1;		/* 0x100 Priority Register Slave 1 */
 	u32 res1[3];		/* 0x104 - 0F */
diff --git a/arch/m68k/include/asm/coldfire/dspi.h b/arch/m68k/include/asm/coldfire/dspi.h
index ddd8f3380542..5c08bcb6f1c0 100644
--- a/arch/m68k/include/asm/coldfire/dspi.h
+++ b/arch/m68k/include/asm/coldfire/dspi.h
@@ -10,6 +10,7 @@
 #define __DSPI_H__
 
 /* DMA Serial Peripheral Interface (DSPI) */
+#include <asm/types.h>
 typedef struct dspi {
 	u32 mcr;	/* 0x00 */
 	u32 resv0;	/* 0x04 */
diff --git a/arch/m68k/include/asm/coldfire/edma.h b/arch/m68k/include/asm/coldfire/edma.h
index a89d02ab2102..8d86e30e5737 100644
--- a/arch/m68k/include/asm/coldfire/edma.h
+++ b/arch/m68k/include/asm/coldfire/edma.h
@@ -14,6 +14,7 @@
 *********************************************************************/
 
 /* eDMA module registers */
+#include <asm/types.h>
 typedef struct edma_ctrl {
 	u32 cr;			/* 0x00 Control Register */
 	u32 es;			/* 0x04 Error Status Register */
diff --git a/arch/m68k/include/asm/coldfire/eport.h b/arch/m68k/include/asm/coldfire/eport.h
index 0e64bef5ed62..c8f67c6bd664 100644
--- a/arch/m68k/include/asm/coldfire/eport.h
+++ b/arch/m68k/include/asm/coldfire/eport.h
@@ -10,6 +10,7 @@
 #define __EPORT_H__
 
 /* Edge Port Module (EPORT) */
+#include <asm/types.h>
 typedef struct eport {
 #ifdef CONFIG_MCF547x_8x
 	u16 par;	/* 0x00 */
diff --git a/arch/m68k/include/asm/coldfire/flexbus.h b/arch/m68k/include/asm/coldfire/flexbus.h
index c47787a87e73..0be751bec13e 100644
--- a/arch/m68k/include/asm/coldfire/flexbus.h
+++ b/arch/m68k/include/asm/coldfire/flexbus.h
@@ -91,6 +91,7 @@ typedef struct fbcs {
 } fbcs_t;
 #endif
 
+#include <asm/types.h>
 #define FBCS_CSAR_BA(x)			((x) & 0xFFFF0000)
 
 #define FBCS_CSMR_BAM(x)		(((x) & 0xFFFF) << 16)
diff --git a/arch/m68k/include/asm/coldfire/flexcan.h b/arch/m68k/include/asm/coldfire/flexcan.h
index 7d8e9e269b6e..6604e3502d35 100644
--- a/arch/m68k/include/asm/coldfire/flexcan.h
+++ b/arch/m68k/include/asm/coldfire/flexcan.h
@@ -10,6 +10,7 @@
 #define __FLEXCAN_H__
 
 /* FlexCan Message Buffer */
+#include <asm/types.h>
 typedef struct can_msgbuf_ctrl {
 #ifdef CONFIG_M5282
 	u8 tmstamp;		/* 0x00 Timestamp */
diff --git a/arch/m68k/include/asm/coldfire/intctrl.h b/arch/m68k/include/asm/coldfire/intctrl.h
index 7b42e65bc82f..1f80a593446e 100644
--- a/arch/m68k/include/asm/coldfire/intctrl.h
+++ b/arch/m68k/include/asm/coldfire/intctrl.h
@@ -15,6 +15,7 @@
 #	define	CONFIG_SYS_CF_INTC_REG1
 #endif
 
+#include <asm/types.h>
 typedef struct int0_ctrl {
 	/* Interrupt Controller 0 */
 	u32 iprh0;		/* 0x00 Pending High */
diff --git a/arch/m68k/include/asm/coldfire/lcd.h b/arch/m68k/include/asm/coldfire/lcd.h
index a347bed8382f..e3124fc8b4fc 100644
--- a/arch/m68k/include/asm/coldfire/lcd.h
+++ b/arch/m68k/include/asm/coldfire/lcd.h
@@ -10,6 +10,7 @@
 #define __LCDC_H__
 
 /* LCD module registers */
+#include <asm/types.h>
 typedef struct lcd_ctrl {
 	u32 ssar;		/* 0x00 Screen Start Address Register */
 	u32 sr;			/* 0x04 LCD Size Register */
diff --git a/arch/m68k/include/asm/coldfire/mdha.h b/arch/m68k/include/asm/coldfire/mdha.h
index be3dae972ab9..647a246b9eb0 100644
--- a/arch/m68k/include/asm/coldfire/mdha.h
+++ b/arch/m68k/include/asm/coldfire/mdha.h
@@ -10,6 +10,7 @@
 #define __MDHA_H__
 
 /* Message Digest Hardware Accelerator */
+#include <asm/types.h>
 typedef struct mdha_ctrl {
 	u32 mr;			/* 0x00 MDHA Mode */
 	u32 cr;			/* 0x04 Control */
diff --git a/arch/m68k/include/asm/coldfire/pwm.h b/arch/m68k/include/asm/coldfire/pwm.h
index 1b83acfe37bd..570d110b737c 100644
--- a/arch/m68k/include/asm/coldfire/pwm.h
+++ b/arch/m68k/include/asm/coldfire/pwm.h
@@ -10,6 +10,7 @@
 #define __ATA_H__
 
 /* Pulse Width Modulation (PWM) */
+#include <asm/types.h>
 typedef struct pwm_ctrl {
 #ifdef CONFIG_M5272
 	u8 cr0;
diff --git a/arch/m68k/include/asm/coldfire/qspi.h b/arch/m68k/include/asm/coldfire/qspi.h
index dd4565ae96e0..13d7b9d364bd 100644
--- a/arch/m68k/include/asm/coldfire/qspi.h
+++ b/arch/m68k/include/asm/coldfire/qspi.h
@@ -10,6 +10,7 @@
 #define __QSPI_H__
 
 /* QSPI module registers */
+#include <asm/types.h>
 typedef struct qspi_ctrl {
 	u16 mr;			/* 0x00 Mode */
 	u16 res1;
diff --git a/arch/m68k/include/asm/coldfire/rng.h b/arch/m68k/include/asm/coldfire/rng.h
index 88124e36e2ea..2b3b8d26dc2e 100644
--- a/arch/m68k/include/asm/coldfire/rng.h
+++ b/arch/m68k/include/asm/coldfire/rng.h
@@ -10,6 +10,7 @@
 #define __RNG_H__
 
 /* Random Number Generator */
+#include <asm/types.h>
 typedef struct rng_ctrl {
 	u32 cr;			/* 0x00 Control */
 	u32 sr;			/* 0x04 Status */
diff --git a/arch/m68k/include/asm/coldfire/skha.h b/arch/m68k/include/asm/coldfire/skha.h
index 3b48dc970c99..d6168e186da6 100644
--- a/arch/m68k/include/asm/coldfire/skha.h
+++ b/arch/m68k/include/asm/coldfire/skha.h
@@ -9,6 +9,7 @@
 #ifndef __SKHA_H__
 #define __SKHA_H__
 
+#include <asm/types.h>
 typedef struct skha_ctrl {
 	u32 mr;			/* 0x00 Mode */
 	u32 cr;			/* 0x04 Control */
diff --git a/arch/m68k/include/asm/coldfire/ssi.h b/arch/m68k/include/asm/coldfire/ssi.h
index 900d6bdcf657..01167cb5caa1 100644
--- a/arch/m68k/include/asm/coldfire/ssi.h
+++ b/arch/m68k/include/asm/coldfire/ssi.h
@@ -9,6 +9,7 @@
 #ifndef __SSI_H__
 #define __SSI_H__
 
+#include <asm/types.h>
 typedef struct ssi {
 	u32 tx0;
 	u32 tx1;
diff --git a/arch/m68k/include/asm/fec.h b/arch/m68k/include/asm/fec.h
index cdb8119d3ea9..7f1c34ebd157 100644
--- a/arch/m68k/include/asm/fec.h
+++ b/arch/m68k/include/asm/fec.h
@@ -15,6 +15,7 @@
 #define	fec_h
 
 #include <phy.h>
+#include <linux/types.h>
 
 /* Buffer descriptors used FEC.
 */
diff --git a/arch/m68k/include/asm/fsl_mcdmafec.h b/arch/m68k/include/asm/fsl_mcdmafec.h
index de6c548fafd7..fdc4fd7daf7d 100644
--- a/arch/m68k/include/asm/fsl_mcdmafec.h
+++ b/arch/m68k/include/asm/fsl_mcdmafec.h
@@ -11,6 +11,7 @@
 
 /* Re-use of the definitions */
 #include <asm/fec.h>
+#include <linux/types.h>
 
 typedef struct fecdma {
 	u32 rsvd0;		/* 0x000 */
diff --git a/arch/m68k/include/asm/immap_520x.h b/arch/m68k/include/asm/immap_520x.h
index bb1237453ff1..f4db2666d482 100644
--- a/arch/m68k/include/asm/immap_520x.h
+++ b/arch/m68k/include/asm/immap_520x.h
@@ -42,6 +42,7 @@
 #include <asm/coldfire/flexbus.h>
 #include <asm/coldfire/intctrl.h>
 #include <asm/coldfire/qspi.h>
+#include <asm/types.h>
 
 /* System Controller Module */
 typedef struct scm1 {
diff --git a/arch/m68k/include/asm/immap_5227x.h b/arch/m68k/include/asm/immap_5227x.h
index 710d6f5c0ddf..e75f4c2d2537 100644
--- a/arch/m68k/include/asm/immap_5227x.h
+++ b/arch/m68k/include/asm/immap_5227x.h
@@ -59,6 +59,7 @@
 #include <asm/coldfire/lcd.h>
 #include <asm/coldfire/pwm.h>
 #include <asm/coldfire/ssi.h>
+#include <asm/types.h>
 
 /* Reset Controller Module (RCM) */
 typedef struct rcm {
diff --git a/arch/m68k/include/asm/immap_5235.h b/arch/m68k/include/asm/immap_5235.h
index 27d905ef9419..3fbca550209b 100644
--- a/arch/m68k/include/asm/immap_5235.h
+++ b/arch/m68k/include/asm/immap_5235.h
@@ -54,6 +54,7 @@
 #include <asm/coldfire/qspi.h>
 #include <asm/coldfire/rng.h>
 #include <asm/coldfire/skha.h>
+#include <asm/types.h>
 
 /* System Control Module register */
 typedef struct scm_ctrl {
diff --git a/arch/m68k/include/asm/immap_5272.h b/arch/m68k/include/asm/immap_5272.h
index cd7b67256cfb..9b6d5cd04ad8 100644
--- a/arch/m68k/include/asm/immap_5272.h
+++ b/arch/m68k/include/asm/immap_5272.h
@@ -28,6 +28,7 @@
 #define MMAP_USB	(CONFIG_SYS_MBAR + 0x00001000)
 
 #include <asm/coldfire/pwm.h>
+#include <linux/types.h>
 
 /* System configuration registers */
 typedef struct sys_ctrl {
diff --git a/arch/m68k/include/asm/immap_5275.h b/arch/m68k/include/asm/immap_5275.h
index 8b1a08b4f24f..90a39a83b2fd 100644
--- a/arch/m68k/include/asm/immap_5275.h
+++ b/arch/m68k/include/asm/immap_5275.h
@@ -57,6 +57,7 @@
 #include <asm/coldfire/qspi.h>
 #include <asm/coldfire/rng.h>
 #include <asm/coldfire/skha.h>
+#include <asm/types.h>
 
 /* System configuration registers
 */
diff --git a/arch/m68k/include/asm/immap_5282.h b/arch/m68k/include/asm/immap_5282.h
index d7c68f5749a2..20c551de1317 100644
--- a/arch/m68k/include/asm/immap_5282.h
+++ b/arch/m68k/include/asm/immap_5282.h
@@ -50,6 +50,7 @@
 #include <asm/coldfire/flexcan.h>
 #include <asm/coldfire/intctrl.h>
 #include <asm/coldfire/qspi.h>
+#include <linux/types.h>
 
 /* System Control Module */
 typedef struct scm_ctrl {
diff --git a/arch/m68k/include/asm/immap_5301x.h b/arch/m68k/include/asm/immap_5301x.h
index 29e60863bfde..3500a09e0e1c 100644
--- a/arch/m68k/include/asm/immap_5301x.h
+++ b/arch/m68k/include/asm/immap_5301x.h
@@ -59,6 +59,7 @@
 #include <asm/coldfire/ssi.h>
 #include <asm/coldfire/rng.h>
 #include <asm/rtc.h>
+#include <asm/types.h>
 
 /* System Controller Module */
 typedef struct scm1 {
diff --git a/arch/m68k/include/asm/immap_5307.h b/arch/m68k/include/asm/immap_5307.h
index e041e7e0afbd..b01a1e6243d5 100644
--- a/arch/m68k/include/asm/immap_5307.h
+++ b/arch/m68k/include/asm/immap_5307.h
@@ -7,6 +7,7 @@
 #ifndef __IMMAP_5307__
 #define __IMMAP_5307__
 
+#include <asm/types.h>
 #define MMAP_SIM	(CONFIG_SYS_MBAR + 0x00000000)
 #define MMAP_INTC	(CONFIG_SYS_MBAR + 0x00000040)
 #define MMAP_CSM	(CONFIG_SYS_MBAR + 0x00000080)
diff --git a/arch/m68k/include/asm/immap_5329.h b/arch/m68k/include/asm/immap_5329.h
index dbf3a2260eed..460d2c2fdf04 100644
--- a/arch/m68k/include/asm/immap_5329.h
+++ b/arch/m68k/include/asm/immap_5329.h
@@ -63,6 +63,7 @@
 #include <asm/coldfire/pwm.h>
 #include <asm/coldfire/ssi.h>
 #include <asm/coldfire/skha.h>
+#include <asm/types.h>
 
 /* System control module registers */
 typedef struct scm1_ctrl {
diff --git a/arch/m68k/include/asm/immap_5441x.h b/arch/m68k/include/asm/immap_5441x.h
index 708d0db755a8..c4e61b751719 100644
--- a/arch/m68k/include/asm/immap_5441x.h
+++ b/arch/m68k/include/asm/immap_5441x.h
@@ -84,6 +84,7 @@
 #include <asm/coldfire/flexcan.h>
 #include <asm/coldfire/intctrl.h>
 #include <asm/coldfire/ssi.h>
+#include <asm/types.h>
 
 /* Serial Boot Facility (SBF) */
 typedef struct sbf {
diff --git a/arch/m68k/include/asm/immap_5445x.h b/arch/m68k/include/asm/immap_5445x.h
index 3111d00d3ee7..76e8d2dc0a93 100644
--- a/arch/m68k/include/asm/immap_5445x.h
+++ b/arch/m68k/include/asm/immap_5445x.h
@@ -60,6 +60,7 @@
 #include <asm/coldfire/flexbus.h>
 #include <asm/coldfire/intctrl.h>
 #include <asm/coldfire/ssi.h>
+#include <asm/types.h>
 
 /* Watchdog Timer Modules (WTM) */
 typedef struct wtm {
diff --git a/arch/m68k/include/asm/immap_547x_8x.h b/arch/m68k/include/asm/immap_547x_8x.h
index 5e1345684de0..8dee82e9e50a 100644
--- a/arch/m68k/include/asm/immap_547x_8x.h
+++ b/arch/m68k/include/asm/immap_547x_8x.h
@@ -45,6 +45,7 @@
 #include <asm/coldfire/flexbus.h>
 #include <asm/coldfire/flexcan.h>
 #include <asm/coldfire/intctrl.h>
+#include <asm/types.h>
 
 typedef struct siu {
 	u32 mbar;		/* 0x00 */
diff --git a/arch/m68k/include/asm/io.h b/arch/m68k/include/asm/io.h
index 35ad4a1c0444..95fcddb075e7 100644
--- a/arch/m68k/include/asm/io.h
+++ b/arch/m68k/include/asm/io.h
@@ -10,6 +10,7 @@
 #define __ASM_M68K_IO_H__
 
 #include <asm/byteorder.h>
+#include <asm/types.h>
 
 #ifndef _IO_BASE
 #define _IO_BASE 0
diff --git a/arch/m68k/include/asm/m5282.h b/arch/m68k/include/asm/m5282.h
index 0c91cf491e24..261f49fdf20c 100644
--- a/arch/m68k/include/asm/m5282.h
+++ b/arch/m68k/include/asm/m5282.h
@@ -11,6 +11,7 @@
 * PLL Clock Module
 *********************************************************************/
 /* Bit definitions and macros for PLL_SYNCR */
+#include <linux/types.h>
 #define PLL_SYNCR_LOLRE			(0x8000)
 #define PLL_SYNCR_MFD2			(0x4000)
 #define PLL_SYNCR_MFD1			(0x2000)
diff --git a/arch/m68k/include/asm/ptrace.h b/arch/m68k/include/asm/ptrace.h
index d419824806c3..a17708195ead 100644
--- a/arch/m68k/include/asm/ptrace.h
+++ b/arch/m68k/include/asm/ptrace.h
@@ -9,6 +9,7 @@
  */
 #ifndef __ASSEMBLY__
 
+#include <linux/types.h>
 struct pt_regs {
 	ulong d0;
 	ulong d1;
diff --git a/arch/m68k/include/asm/rtc.h b/arch/m68k/include/asm/rtc.h
index 1fb492c76e1b..544fa8215718 100644
--- a/arch/m68k/include/asm/rtc.h
+++ b/arch/m68k/include/asm/rtc.h
@@ -10,6 +10,7 @@
 #define __MCFRTC_H__
 
 /* Real time Clock */
+#include <asm/types.h>
 typedef struct rtc_ctrl {
 	u32 hourmin;		/* 0x00 Hours and Minutes Counter Register */
 	u32 seconds;		/* 0x04 Seconds Counter Register */
diff --git a/arch/m68k/include/asm/timer.h b/arch/m68k/include/asm/timer.h
index 982d71a542e8..47b75989633e 100644
--- a/arch/m68k/include/asm/timer.h
+++ b/arch/m68k/include/asm/timer.h
@@ -12,6 +12,7 @@
 /****************************************************************************/
 
 /****************************************************************************/
+#include <asm/types.h>
 /* Timer structure */
 /****************************************************************************/
 /* DMA Timer module registers */
diff --git a/arch/m68k/include/asm/uart.h b/arch/m68k/include/asm/uart.h
index e4a9650a03c5..2a41f7e507ed 100644
--- a/arch/m68k/include/asm/uart.h
+++ b/arch/m68k/include/asm/uart.h
@@ -12,6 +12,7 @@
 /****************************************************************************/
 
 /* UART module registers */
+#include <asm/types.h>
 /* Register read/write struct */
 typedef struct uart {
 	u8 umr;			/* 0x00 Mode Register */
diff --git a/arch/m68k/lib/bdinfo.c b/arch/m68k/lib/bdinfo.c
index 7b410e7743cd..48d4f35d4659 100644
--- a/arch/m68k/lib/bdinfo.c
+++ b/arch/m68k/lib/bdinfo.c
@@ -10,6 +10,7 @@
 #include <init.h>
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/m68k/lib/bootm.c b/arch/m68k/lib/bootm.c
index 20ff33f7532a..c70b24944e6d 100644
--- a/arch/m68k/lib/bootm.c
+++ b/arch/m68k/lib/bootm.c
@@ -14,6 +14,7 @@
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 #include <bzlib.h>
 #include <watchdog.h>
diff --git a/arch/m68k/lib/cache.c b/arch/m68k/lib/cache.c
index 22048d12d707..afd8e3531d75 100644
--- a/arch/m68k/lib/cache.c
+++ b/arch/m68k/lib/cache.c
@@ -5,10 +5,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <asm/immap.h>
 #include <asm/cache.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 volatile int *cf_icache_status = (int *)ICACHE_STATUS;
 volatile int *cf_dcache_status = (int *)DCACHE_STATUS;
diff --git a/arch/m68k/lib/fec.c b/arch/m68k/lib/fec.c
index 4f0132389288..053ced254528 100644
--- a/arch/m68k/lib/fec.c
+++ b/arch/m68k/lib/fec.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/arch/m68k/lib/time.c b/arch/m68k/lib/time.c
index cbe29e72a86e..36056d25ebb8 100644
--- a/arch/m68k/lib/time.c
+++ b/arch/m68k/lib/time.c
@@ -12,6 +12,7 @@
 #include <time.h>
 #include <asm/global_data.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include <asm/timer.h>
 #include <asm/immap.h>
diff --git a/arch/m68k/lib/traps.c b/arch/m68k/lib/traps.c
index f724be3a63c9..f933982acb3e 100644
--- a/arch/m68k/lib/traps.c
+++ b/arch/m68k/lib/traps.c
@@ -14,6 +14,7 @@
 #include <command.h>
 #include <asm/processor.h>
 #include <asm/ptrace.h>
+#include <linux/types.h>
 
 
 extern void _exc_handler(void);
diff --git a/arch/microblaze/cpu/cache.c b/arch/microblaze/cpu/cache.c
index aa832d6be6d4..20dea1abbee4 100644
--- a/arch/microblaze/cpu/cache.c
+++ b/arch/microblaze/cpu/cache.c
@@ -9,6 +9,7 @@
 #include <cpu_func.h>
 #include <asm/asm.h>
 #include <asm/cache.h>
+#include <linux/types.h>
 
 int dcache_status(void)
 {
diff --git a/arch/microblaze/cpu/interrupts.c b/arch/microblaze/cpu/interrupts.c
index e86f0cda9dfd..56ac0c50a87a 100644
--- a/arch/microblaze/cpu/interrupts.c
+++ b/arch/microblaze/cpu/interrupts.c
@@ -17,6 +17,7 @@
 #include <asm/global_data.h>
 #include <asm/microblaze_intc.h>
 #include <asm/asm.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/microblaze/cpu/spl.c b/arch/microblaze/cpu/spl.c
index 9f25c2f39529..87eea3725392 100644
--- a/arch/microblaze/cpu/spl.c
+++ b/arch/microblaze/cpu/spl.c
@@ -13,6 +13,7 @@
 #include <stdbool.h>
 #include <asm/io.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 bool boot_linux;
 
diff --git a/arch/microblaze/cpu/timer.c b/arch/microblaze/cpu/timer.c
index 3e6750ea7f44..5e7a397188ea 100644
--- a/arch/microblaze/cpu/timer.c
+++ b/arch/microblaze/cpu/timer.c
@@ -15,6 +15,7 @@
 #include <asm/microblaze_intc.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/microblaze/lib/bootm.c b/arch/microblaze/lib/bootm.c
index 1a30635c87f5..7bc4417cafe4 100644
--- a/arch/microblaze/lib/bootm.c
+++ b/arch/microblaze/lib/bootm.c
@@ -20,6 +20,7 @@
 #include <stdio.h>
 #include <asm/cache.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 #include <asm/byteorder.h>
 
diff --git a/arch/mips/cpu/cpu.c b/arch/mips/cpu/cpu.c
index 7d5c9fd83aee..bfce17fd36ca 100644
--- a/arch/mips/cpu/cpu.c
+++ b/arch/mips/cpu/cpu.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <init.h>
 #include <linux/compiler.h>
 #include <asm/cache.h>
diff --git a/arch/mips/cpu/time.c b/arch/mips/cpu/time.c
index aab92ec859bb..764b74ce9705 100644
--- a/arch/mips/cpu/time.c
+++ b/arch/mips/cpu/time.c
@@ -8,6 +8,7 @@
 #include <compiler.h>
 #include <time.h>
 #include <asm/mipsregs.h>
+#include <linux/types.h>
 
 unsigned long notrace timer_read_counter(void)
 {
diff --git a/arch/mips/include/asm/cacheops.h b/arch/mips/include/asm/cacheops.h
index 641e2ad58dec..abb3c5018ea0 100644
--- a/arch/mips/include/asm/cacheops.h
+++ b/arch/mips/include/asm/cacheops.h
@@ -12,6 +12,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <linux/types.h>
 static inline void mips_cache(int op, const volatile void *addr)
 {
 #ifdef __GCC_HAVE_BUILTIN_MIPS_CACHE
diff --git a/arch/mips/include/asm/io.h b/arch/mips/include/asm/io.h
index 836cd436872d..71f6d2da9907 100644
--- a/arch/mips/include/asm/io.h
+++ b/arch/mips/include/asm/io.h
@@ -9,6 +9,7 @@
 #ifndef _ASM_IO_H
 #define _ASM_IO_H
 
+#include <compiler.h>
 #include <linux/bug.h>
 #include <linux/compiler.h>
 #include <linux/string.h>
diff --git a/arch/mips/include/asm/mach-generic/ioremap.h b/arch/mips/include/asm/mach-generic/ioremap.h
index d6258f5bce57..a9cfee53c15b 100644
--- a/arch/mips/include/asm/mach-generic/ioremap.h
+++ b/arch/mips/include/asm/mach-generic/ioremap.h
@@ -2,6 +2,7 @@
 #ifndef __ASM_MACH_GENERIC_IOREMAP_H
 #define __ASM_MACH_GENERIC_IOREMAP_H
 
+#include <compiler.h>
 #include <linux/types.h>
 
 /*
diff --git a/arch/mips/include/asm/mipsregs.h b/arch/mips/include/asm/mipsregs.h
index e65485b4fff3..fecd7e7de409 100644
--- a/arch/mips/include/asm/mipsregs.h
+++ b/arch/mips/include/asm/mipsregs.h
@@ -32,6 +32,7 @@
 #else
 #define _ULCAST_ (unsigned long)
 #define _U64CAST_ (u64)
+#include <asm/types.h>
 #endif
 
 /*
diff --git a/arch/mips/include/asm/pgtable-bits.h b/arch/mips/include/asm/pgtable-bits.h
index 481d2ef6c2fa..1d20cde07ed4 100644
--- a/arch/mips/include/asm/pgtable-bits.h
+++ b/arch/mips/include/asm/pgtable-bits.h
@@ -146,6 +146,7 @@
 #define _PAGE_READ		(cpu_has_rixi ? 0 : (1 << _PAGE_READ_SHIFT))
 #define _PAGE_NO_READ_SHIFT	_PAGE_READ_SHIFT
 #define _PAGE_NO_READ		(cpu_has_rixi ? (1 << _PAGE_READ_SHIFT) : 0)
+#include <linux/types.h>
 #endif	/* defined(CONFIG_CPU_MIPSR2) || defined(CONFIG_CPU_MIPSR6) */
 
 #if defined(_PAGE_NO_READ_SHIFT)
diff --git a/arch/mips/include/asm/sections.h b/arch/mips/include/asm/sections.h
index 93c30e9724fd..1b1897510afa 100644
--- a/arch/mips/include/asm/sections.h
+++ b/arch/mips/include/asm/sections.h
@@ -7,6 +7,7 @@
 #define __ASM_MIPS_SECTIONS_H
 
 #include <asm-generic/sections.h>
+#include <linux/types.h>
 
 /**
  * __rel_start: Relocation data generated by the mips-relocs tool
diff --git a/arch/mips/lib/boot.c b/arch/mips/lib/boot.c
index d5a139ef5ec2..1d1d3809107f 100644
--- a/arch/mips/lib/boot.c
+++ b/arch/mips/lib/boot.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <cpu_func.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/mips/lib/bootm.c b/arch/mips/lib/bootm.c
index 7a9afcb0b18e..9ac8e7eca97c 100644
--- a/arch/mips/lib/bootm.c
+++ b/arch/mips/lib/bootm.c
@@ -16,6 +16,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/mips/lib/cache.c b/arch/mips/lib/cache.c
index 7be0b559561f..9cdac4f52456 100644
--- a/arch/mips/lib/cache.c
+++ b/arch/mips/lib/cache.c
@@ -5,7 +5,9 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/cache.h>
 #include <asm/cacheops.h>
@@ -16,6 +18,7 @@
 #include <asm/system.h>
 #include <linux/bug.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/mips/lib/reloc.c b/arch/mips/lib/reloc.c
index d6ea2f5730d0..edb6b6113773 100644
--- a/arch/mips/lib/reloc.c
+++ b/arch/mips/lib/reloc.c
@@ -35,6 +35,7 @@
 #include <asm/sections.h>
 #include <linux/bitops.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /**
  * read_uint() - Read an unsigned integer from the buffer
diff --git a/arch/mips/lib/traps.c b/arch/mips/lib/traps.c
index 76d50f99a14c..1890fb26113f 100644
--- a/arch/mips/lib/traps.c
+++ b/arch/mips/lib/traps.c
@@ -22,6 +22,7 @@
 #include <asm/addrspace.h>
 #include <asm/system.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/mips/mach-ath79/ar933x/clk.c b/arch/mips/mach-ath79/ar933x/clk.c
index 68d48939d7d2..d052d4e86753 100644
--- a/arch/mips/mach-ath79/ar933x/clk.c
+++ b/arch/mips/mach-ath79/ar933x/clk.c
@@ -5,10 +5,12 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
 #include <asm/types.h>
+#include <linux/types.h>
 #include <mach/ar71xx_regs.h>
 #include <mach/ath79.h>
 
diff --git a/arch/mips/mach-ath79/ar933x/ddr.c b/arch/mips/mach-ath79/ar933x/ddr.c
index 09166ecf8f07..3ab0199fe10e 100644
--- a/arch/mips/mach-ath79/ar933x/ddr.c
+++ b/arch/mips/mach-ath79/ar933x/ddr.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
 #include <asm/types.h>
diff --git a/arch/mips/mach-ath79/ar934x/clk.c b/arch/mips/mach-ath79/ar934x/clk.c
index c2c594a32273..7e82899f67aa 100644
--- a/arch/mips/mach-ath79/ar934x/clk.c
+++ b/arch/mips/mach-ath79/ar934x/clk.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <clock_legacy.h>
 #include <command.h>
+#include <compiler.h>
 #include <hang.h>
 #include <stdio.h>
 #include <asm/global_data.h>
@@ -15,6 +16,7 @@
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include <mach/ar71xx_regs.h>
 #include <mach/ath79.h>
 #include <wait_bit.h>
diff --git a/arch/mips/mach-ath79/ar934x/ddr.c b/arch/mips/mach-ath79/ar934x/ddr.c
index 9df48b97ef46..e626ffa72541 100644
--- a/arch/mips/mach-ath79/ar934x/ddr.c
+++ b/arch/mips/mach-ath79/ar934x/ddr.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
diff --git a/arch/mips/mach-ath79/cpu.c b/arch/mips/mach-ath79/cpu.c
index 55d051f8cb93..d18b239d1b0b 100644
--- a/arch/mips/mach-ath79/cpu.c
+++ b/arch/mips/mach-ath79/cpu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
 #include <stdio.h>
 #include <asm/global_data.h>
diff --git a/arch/mips/mach-ath79/qca953x/clk.c b/arch/mips/mach-ath79/qca953x/clk.c
index f5438ef1c8d9..386685bc5502 100644
--- a/arch/mips/mach-ath79/qca953x/clk.c
+++ b/arch/mips/mach-ath79/qca953x/clk.c
@@ -5,10 +5,12 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
 #include <asm/types.h>
+#include <linux/types.h>
 #include <mach/ar71xx_regs.h>
 #include <mach/ath79.h>
 
diff --git a/arch/mips/mach-ath79/qca953x/ddr.c b/arch/mips/mach-ath79/qca953x/ddr.c
index 78f2370e09ce..36a9eeb18bd4 100644
--- a/arch/mips/mach-ath79/qca953x/ddr.c
+++ b/arch/mips/mach-ath79/qca953x/ddr.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
 #include <asm/types.h>
diff --git a/arch/mips/mach-ath79/qca956x/clk.c b/arch/mips/mach-ath79/qca956x/clk.c
index 6a58dba91f3f..b30984f8a3f6 100644
--- a/arch/mips/mach-ath79/qca956x/clk.c
+++ b/arch/mips/mach-ath79/qca956x/clk.c
@@ -5,11 +5,13 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <log.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
 #include <asm/types.h>
+#include <linux/types.h>
 #include <mach/ar71xx_regs.h>
 #include <mach/ath79.h>
 #include <wait_bit.h>
diff --git a/arch/mips/mach-ath79/qca956x/ddr.c b/arch/mips/mach-ath79/qca956x/ddr.c
index f9cf8daa2242..8231c142de39 100644
--- a/arch/mips/mach-ath79/qca956x/ddr.c
+++ b/arch/mips/mach-ath79/qca956x/ddr.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
diff --git a/arch/mips/mach-ath79/reset.c b/arch/mips/mach-ath79/reset.c
index 6ecde8a39ff1..d4d6b02808ce 100644
--- a/arch/mips/mach-ath79/reset.c
+++ b/arch/mips/mach-ath79/reset.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
diff --git a/arch/mips/mach-bmips/include/ioremap.h b/arch/mips/mach-bmips/include/ioremap.h
index 99ea03e6a708..fea55d8287a8 100644
--- a/arch/mips/mach-bmips/include/ioremap.h
+++ b/arch/mips/mach-bmips/include/ioremap.h
@@ -2,6 +2,7 @@
 #ifndef __ASM_MACH_BMIPS_IOREMAP_H
 #define __ASM_MACH_BMIPS_IOREMAP_H
 
+#include <compiler.h>
 #include <linux/types.h>
 
 /*
diff --git a/arch/mips/mach-jz47xx/include/mach/jz4780.h b/arch/mips/mach-jz47xx/include/mach/jz4780.h
index 4422e503ed2a..6f75b38901f0 100644
--- a/arch/mips/mach-jz47xx/include/mach/jz4780.h
+++ b/arch/mips/mach-jz47xx/include/mach/jz4780.h
@@ -82,6 +82,8 @@
 
 #ifndef __ASSEMBLY__
 
+#include <compiler.h>
+#include <linux/types.h>
 u32 sdram_size(int bank);
 
 const u32 jz4780_clk_get_efuse_clk(void);
diff --git a/arch/mips/mach-jz47xx/include/mach/jz4780_dram.h b/arch/mips/mach-jz47xx/include/mach/jz4780_dram.h
index 61cc1489889a..4ac0d61f5d1d 100644
--- a/arch/mips/mach-jz47xx/include/mach/jz4780_dram.h
+++ b/arch/mips/mach-jz47xx/include/mach/jz4780_dram.h
@@ -12,6 +12,7 @@
 /*
  * DDR
  */
+#include <asm/types.h>
 #include <linux/bitops.h>
 #define DDRC_ST				0x0
 #define DDRC_CFG			0x4
diff --git a/arch/mips/mach-jz47xx/jz4780/gpio.c b/arch/mips/mach-jz47xx/jz4780/gpio.c
index d4884e7fa9f1..1787de5fe4c6 100644
--- a/arch/mips/mach-jz47xx/jz4780/gpio.c
+++ b/arch/mips/mach-jz47xx/jz4780/gpio.c
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0+
 
+#include <compiler.h>
 #include <config.h>
 #include <common.h>
 #include <asm/io.h>
diff --git a/arch/mips/mach-jz47xx/jz4780/jz4780.c b/arch/mips/mach-jz47xx/jz4780/jz4780.c
index 63a87635c25a..4cc2f02b0fd2 100644
--- a/arch/mips/mach-jz47xx/jz4780/jz4780.c
+++ b/arch/mips/mach-jz47xx/jz4780/jz4780.c
@@ -17,6 +17,7 @@
 #include <asm/io.h>
 #include <asm/sections.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <mach/jz4780.h>
 #include <mach/jz4780_dram.h>
 #include <mmc.h>
diff --git a/arch/mips/mach-jz47xx/jz4780/pll.c b/arch/mips/mach-jz47xx/jz4780/pll.c
index ac76a507355e..e839db78df8c 100644
--- a/arch/mips/mach-jz47xx/jz4780/pll.c
+++ b/arch/mips/mach-jz47xx/jz4780/pll.c
@@ -6,10 +6,12 @@
  * Author: Paul Burton <paul.burton at imgtec.com>
  */
 
+#include <compiler.h>
 #include <config.h>
 #include <common.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
diff --git a/arch/mips/mach-jz47xx/jz4780/reset.c b/arch/mips/mach-jz47xx/jz4780/reset.c
index bf6addccb5de..ef0f77b43c8e 100644
--- a/arch/mips/mach-jz47xx/jz4780/reset.c
+++ b/arch/mips/mach-jz47xx/jz4780/reset.c
@@ -6,6 +6,7 @@
  * Author: Paul Burton <paul.burton at imgtec.com>
  */
 
+#include <compiler.h>
 #include <config.h>
 #include <common.h>
 #include <asm/io.h>
diff --git a/arch/mips/mach-jz47xx/jz4780/sdram.c b/arch/mips/mach-jz47xx/jz4780/sdram.c
index 690f3c5601da..c0d69aa455eb 100644
--- a/arch/mips/mach-jz47xx/jz4780/sdram.c
+++ b/arch/mips/mach-jz47xx/jz4780/sdram.c
@@ -10,9 +10,11 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <hang.h>
 #include <init.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <mach/jz4780.h>
diff --git a/arch/mips/mach-jz47xx/jz4780/timer.c b/arch/mips/mach-jz47xx/jz4780/timer.c
index 82bb9e8c3bfa..aadbe040921c 100644
--- a/arch/mips/mach-jz47xx/jz4780/timer.c
+++ b/arch/mips/mach-jz47xx/jz4780/timer.c
@@ -6,6 +6,7 @@
  * Author: Paul Burton <paul.burton at imgtec.com>
  */
 
+#include <compiler.h>
 #include <config.h>
 #include <common.h>
 #include <div64.h>
@@ -16,6 +17,7 @@
 #include <asm/mipsregs.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 #include <mach/jz4780.h>
 
 #define TCU_TSR		0x1C	/* Timer Stop Register */
diff --git a/arch/mips/mach-mscc/gpio.c b/arch/mips/mach-mscc/gpio.c
index d6b4c5d7684b..cbc74dd66021 100644
--- a/arch/mips/mach-mscc/gpio.c
+++ b/arch/mips/mach-mscc/gpio.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 void mscc_gpio_set_alternate(int gpio, int mode)
diff --git a/arch/mips/mach-mscc/include/ioremap.h b/arch/mips/mach-mscc/include/ioremap.h
index 9024364a57f2..d5fc97ba8fa5 100644
--- a/arch/mips/mach-mscc/include/ioremap.h
+++ b/arch/mips/mach-mscc/include/ioremap.h
@@ -6,6 +6,7 @@
 #ifndef __ASM_MACH_MSCC_IOREMAP_H
 #define __ASM_MACH_MSCC_IOREMAP_H
 
+#include <compiler.h>
 #include <linux/types.h>
 #include <mach/common.h>
 
diff --git a/arch/mips/mach-mscc/include/mach/common.h b/arch/mips/mach-mscc/include/mach/common.h
index 8f9a9c280b4a..e701d325d1c9 100644
--- a/arch/mips/mach-mscc/include/mach/common.h
+++ b/arch/mips/mach-mscc/include/mach/common.h
@@ -45,6 +45,7 @@
 /* Common utility functions */
 
 /*
+#include <asm/types.h>
  * Perform a number of NOP instructions, blocks of 8 instructions.
  * The (inlined) function will not affect cache or processor state.
  */
diff --git a/arch/mips/mach-mscc/include/mach/ddr.h b/arch/mips/mach-mscc/include/mach/ddr.h
index 8c1f14773ecc..d4461d74e30d 100644
--- a/arch/mips/mach-mscc/include/mach/ddr.h
+++ b/arch/mips/mach-mscc/include/mach/ddr.h
@@ -6,10 +6,12 @@
 #ifndef __ASM_MACH_DDR_H
 #define __ASM_MACH_DDR_H
 
+#include <compiler.h>
 #include <stdbool.h>
 #include <asm/cacheops.h>
 #include <asm/io.h>
 #include <asm/reboot.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <mach/common.h>
 
diff --git a/arch/mips/mach-mscc/include/mach/jr2/jr2.h b/arch/mips/mach-mscc/include/mach/jr2/jr2.h
index 3a779e703549..1677916f10d6 100644
--- a/arch/mips/mach-mscc/include/mach/jr2/jr2.h
+++ b/arch/mips/mach-mscc/include/mach/jr2/jr2.h
@@ -8,6 +8,7 @@
 #ifndef _MSCC_JR2_H_
 #define _MSCC_JR2_H_
 
+#include <compiler.h>
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/luton/luton.h b/arch/mips/mach-mscc/include/mach/luton/luton.h
index dda665fc154f..5ea6a364eeec 100644
--- a/arch/mips/mach-mscc/include/mach/luton/luton.h
+++ b/arch/mips/mach-mscc/include/mach/luton/luton.h
@@ -8,6 +8,8 @@
 #ifndef _MSCC_OCELOT_H_
 #define _MSCC_OCELOT_H_
 
+#include <compiler.h>
+
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h b/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h
index 72b07c33cd0a..b73e37feef67 100644
--- a/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h
+++ b/arch/mips/mach-mscc/include/mach/ocelot/ocelot.h
@@ -8,6 +8,8 @@
 #ifndef _MSCC_OCELOT_H_
 #define _MSCC_OCELOT_H_
 
+#include <compiler.h>
+
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/serval/serval.h b/arch/mips/mach-mscc/include/mach/serval/serval.h
index a78c6e59bb05..62eb1f697409 100644
--- a/arch/mips/mach-mscc/include/mach/serval/serval.h
+++ b/arch/mips/mach-mscc/include/mach/serval/serval.h
@@ -8,6 +8,8 @@
 #ifndef _MSCC_SERVAL_H_
 #define _MSCC_SERVAL_H_
 
+#include <compiler.h>
+
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/servalt/servalt.h b/arch/mips/mach-mscc/include/mach/servalt/servalt.h
index 4d7d0886dd69..a8eab372a92f 100644
--- a/arch/mips/mach-mscc/include/mach/servalt/servalt.h
+++ b/arch/mips/mach-mscc/include/mach/servalt/servalt.h
@@ -8,6 +8,8 @@
 #ifndef _MSCC_SERVALT_H_
 #define _MSCC_SERVALT_H_
 
+#include <compiler.h>
+
 /*
  * Target offset base(s)
  */
diff --git a/arch/mips/mach-mscc/include/mach/tlb.h b/arch/mips/mach-mscc/include/mach/tlb.h
index ebd8ad0dc1a5..18266b14dc68 100644
--- a/arch/mips/mach-mscc/include/mach/tlb.h
+++ b/arch/mips/mach-mscc/include/mach/tlb.h
@@ -7,6 +7,7 @@
 #define __ASM_MACH_TLB_H
 
 #include <asm/mipsregs.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <mach/common.h>
 #include <linux/sizes.h>
diff --git a/arch/mips/mach-mscc/phy.c b/arch/mips/mach-mscc/phy.c
index 83d3e5bdd28f..acfe6bb131b6 100644
--- a/arch/mips/mach-mscc/phy.c
+++ b/arch/mips/mach-mscc/phy.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <log.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 int mscc_phy_rd_wr(u8 read,
 		   u32 miimdev,
diff --git a/arch/mips/mach-mscc/reset.c b/arch/mips/mach-mscc/reset.c
index a1214573b51a..6bd5da4ef67f 100644
--- a/arch/mips/mach-mscc/reset.c
+++ b/arch/mips/mach-mscc/reset.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 
 #include <asm/sections.h>
 #include <asm/io.h>
diff --git a/arch/mips/mach-mtmips/ddr_cal.c b/arch/mips/mach-mtmips/ddr_cal.c
index 1f2f12879b2c..1b0cd2fc6d87 100644
--- a/arch/mips/mach-mtmips/ddr_cal.c
+++ b/arch/mips/mach-mtmips/ddr_cal.c
@@ -6,9 +6,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
+#include <stdbool.h>
 #include <asm/addrspace.h>
 #include <asm/cacheops.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
diff --git a/arch/mips/mach-mtmips/ddr_init.c b/arch/mips/mach-mtmips/ddr_init.c
index 6c6d0933f2ea..290355f538e3 100644
--- a/arch/mips/mach-mtmips/ddr_init.c
+++ b/arch/mips/mach-mtmips/ddr_init.c
@@ -6,10 +6,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/io.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 #include <mach/ddr.h>
 #include <mach/mc.h>
 
diff --git a/arch/mips/mach-mtmips/include/mach/ddr.h b/arch/mips/mach-mtmips/include/mach/ddr.h
index f92198137b1a..e0ecb42726e5 100644
--- a/arch/mips/mach-mtmips/include/mach/ddr.h
+++ b/arch/mips/mach-mtmips/include/mach/ddr.h
@@ -8,6 +8,7 @@
 #ifndef _MTMIPS_DDR_H_
 #define _MTMIPS_DDR_H_
 
+#include <compiler.h>
 #include <linux/io.h>
 #include <linux/types.h>
 
diff --git a/arch/mips/mach-mtmips/mt7628/ddr.c b/arch/mips/mach-mtmips/mt7628/ddr.c
index b091f2ecffc7..c63f7bcb4e46 100644
--- a/arch/mips/mach-mtmips/mt7628/ddr.c
+++ b/arch/mips/mach-mtmips/mt7628/ddr.c
@@ -6,8 +6,10 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/addrspace.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/sizes.h>
diff --git a/arch/mips/mach-mtmips/mt7628/init.c b/arch/mips/mach-mtmips/mt7628/init.c
index 8bf918b3f259..4c2623a360f6 100644
--- a/arch/mips/mach-mtmips/mt7628/init.c
+++ b/arch/mips/mach-mtmips/mt7628/init.c
@@ -15,6 +15,7 @@
 #include <dm/uclass.h>
 #include <dt-bindings/clock/mt7628-clk.h>
 #include <linux/io.h>
+#include <linux/types.h>
 #include "mt7628.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/mips/mach-mtmips/mt7628/serial.c b/arch/mips/mach-mtmips/mt7628/serial.c
index a7d324792d73..17793927ed77 100644
--- a/arch/mips/mach-mtmips/mt7628/serial.c
+++ b/arch/mips/mach-mtmips/mt7628/serial.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/io.h>
 #include "mt7628.h"
 
diff --git a/arch/mips/mach-mtmips/spl.c b/arch/mips/mach-mtmips/spl.c
index 95201b8d7ab2..2cb2ecf0e59f 100644
--- a/arch/mips/mach-mtmips/spl.c
+++ b/arch/mips/mach-mtmips/spl.c
@@ -11,6 +11,7 @@
 #include <asm/sections.h>
 #include <linux/libfdt.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 #include <mach/serial.h>
 
 void __noreturn board_init_f(ulong dummy)
diff --git a/arch/mips/mach-octeon/cache.c b/arch/mips/mach-octeon/cache.c
index 9a88bb97c73a..8ccaa2a7f3f1 100644
--- a/arch/mips/mach-octeon/cache.c
+++ b/arch/mips/mach-octeon/cache.c
@@ -4,6 +4,7 @@
  */
 
 #include <cpu_func.h>
+#include <linux/types.h>
 
 /*
  * The Octeon platform is cache coherent and cache flushes and invalidates
diff --git a/arch/mips/mach-octeon/clock.c b/arch/mips/mach-octeon/clock.c
index 05a312b22985..eb341b1ac382 100644
--- a/arch/mips/mach-octeon/clock.c
+++ b/arch/mips/mach-octeon/clock.c
@@ -6,6 +6,7 @@
 #include <compiler.h>
 #include <time.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 #include <mach/clock.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/mips/mach-octeon/cpu.c b/arch/mips/mach-octeon/cpu.c
index 1831f1dfa8c2..5ac8b5047e26 100644
--- a/arch/mips/mach-octeon/cpu.c
+++ b/arch/mips/mach-octeon/cpu.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2020 Marvell International Ltd.
  */
 
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <linux/bitfield.h>
diff --git a/arch/mips/mach-octeon/dram.c b/arch/mips/mach-octeon/dram.c
index ff7a59f2ab8a..0d0c9f358d49 100644
--- a/arch/mips/mach-octeon/dram.c
+++ b/arch/mips/mach-octeon/dram.c
@@ -7,6 +7,7 @@
 #include <ram.h>
 #include <asm/global_data.h>
 #include <linux/compat.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/mips/mach-octeon/include/ioremap.h b/arch/mips/mach-octeon/include/ioremap.h
index 59b75008a259..43b241220849 100644
--- a/arch/mips/mach-octeon/include/ioremap.h
+++ b/arch/mips/mach-octeon/include/ioremap.h
@@ -2,6 +2,7 @@
 #ifndef __ASM_MACH_OCTEON_IOREMAP_H
 #define __ASM_MACH_OCTEON_IOREMAP_H
 
+#include <compiler.h>
 #include <linux/types.h>
 
 /*
diff --git a/arch/mips/mach-pic32/cpu.c b/arch/mips/mach-pic32/cpu.c
index bc76152ed3da..739ecec666cd 100644
--- a/arch/mips/mach-pic32/cpu.c
+++ b/arch/mips/mach-pic32/cpu.c
@@ -6,11 +6,13 @@
  */
 #include <common.h>
 #include <clk.h>
+#include <compiler.h>
 #include <dm.h>
 #include <init.h>
 #include <malloc.h>
 #include <stdio.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 #include <mach/pic32.h>
 #include <mach/ddr.h>
 #include <dt-bindings/clock/microchip,clock.h>
diff --git a/arch/mips/mach-pic32/include/mach/ddr.h b/arch/mips/mach-pic32/include/mach/ddr.h
index 1b2391e01600..fe15bb1504eb 100644
--- a/arch/mips/mach-pic32/include/mach/ddr.h
+++ b/arch/mips/mach-pic32/include/mach/ddr.h
@@ -8,6 +8,7 @@
 #define __MICROCHIP_PIC32_DDR_H
 
 /* called by dram_init() function */
+#include <asm/types.h>
 void ddr2_phy_init(void);
 void ddr2_ctrl_init(void);
 phys_size_t ddr2_calculate_size(void);
diff --git a/arch/mips/mach-pic32/include/mach/pic32.h b/arch/mips/mach-pic32/include/mach/pic32.h
index 69015334b946..1fdfec5aa544 100644
--- a/arch/mips/mach-pic32/include/mach/pic32.h
+++ b/arch/mips/mach-pic32/include/mach/pic32.h
@@ -7,7 +7,9 @@
 #ifndef __PIC32_REGS_H__
 #define __PIC32_REGS_H__
 
+#include <compiler.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 /* System Configuration */
 #define PIC32_CFG_BASE		0x1f800000
diff --git a/arch/mips/mach-pic32/reset.c b/arch/mips/mach-pic32/reset.c
index 8071b13f7b48..8c33ff7faf9d 100644
--- a/arch/mips/mach-pic32/reset.c
+++ b/arch/mips/mach-pic32/reset.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/io.h>
 #include <mach/pic32.h>
 
diff --git a/arch/nds32/cpu/n1213/ag101/timer.c b/arch/nds32/cpu/n1213/ag101/timer.c
index 394fc10ec3ad..5a153a5995ef 100644
--- a/arch/nds32/cpu/n1213/ag101/timer.c
+++ b/arch/nds32/cpu/n1213/ag101/timer.c
@@ -67,6 +67,7 @@ int timer_init(void)
 /*
  * reset time
  */
+#include <linux/types.h>
 void reset_timer_masked(void)
 {
 	struct fttmr010 *tmr = (struct fttmr010 *)CONFIG_FTTMR010_BASE;
diff --git a/arch/nds32/include/asm/bootm.h b/arch/nds32/include/asm/bootm.h
index 804f8581b6e7..aa8009fc8b7d 100644
--- a/arch/nds32/include/asm/bootm.h
+++ b/arch/nds32/include/asm/bootm.h
@@ -9,6 +9,7 @@
 #define NDS32_BOOTM_H
 
 #include <asm/setup.h>
+#include <asm/types.h>
 
 extern void udc_disconnect(void);
 
diff --git a/arch/nds32/include/asm/io.h b/arch/nds32/include/asm/io.h
index fdfc574afc05..6555d3605b72 100644
--- a/arch/nds32/include/asm/io.h
+++ b/arch/nds32/include/asm/io.h
@@ -71,6 +71,7 @@ static inline phys_addr_t map_to_sysmem(const void *ptr)
 #define __arch_putw(v, a)		(*(unsigned short *)(a) = (v))
 #define __arch_putl(v, a)		(*(unsigned int *)(a) = (v))
 
+#include <compiler.h>
 extern void __raw_writesb(unsigned int addr, const void *data, int bytelen);
 extern void __raw_writesw(unsigned int addr, const void *data, int wordlen);
 extern void __raw_writesl(unsigned int addr, const void *data, int longlen);
diff --git a/arch/nds32/include/asm/setup.h b/arch/nds32/include/asm/setup.h
index 8217bbf6fe0e..fcaa43a82474 100644
--- a/arch/nds32/include/asm/setup.h
+++ b/arch/nds32/include/asm/setup.h
@@ -13,6 +13,7 @@
 #ifndef __ASMNDS32_SETUP_H
 #define __ASMNDS32_SETUP_H
 
+#include <asm/types.h>
 #define COMMAND_LINE_SIZE 256
 
 /* The list ends with an ATAG_NONE node. */
diff --git a/arch/nds32/lib/boot.c b/arch/nds32/lib/boot.c
index da2fd36a16c4..5d6d267d7e58 100644
--- a/arch/nds32/lib/boot.c
+++ b/arch/nds32/lib/boot.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <linux/types.h>
 
 unsigned long do_go_exec(ulong (*entry)(int, char * const []),
 			 int argc, char *const argv[])
diff --git a/arch/nds32/lib/bootm.c b/arch/nds32/lib/bootm.c
index 5532d515b733..47e8f90c4179 100644
--- a/arch/nds32/lib/bootm.c
+++ b/arch/nds32/lib/bootm.c
@@ -17,6 +17,7 @@
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 #include <asm/byteorder.h>
 #include <asm/bootm.h>
diff --git a/arch/nios2/cpu/interrupts.c b/arch/nios2/cpu/interrupts.c
index 90cabb67571b..fe40eaaa02e6 100644
--- a/arch/nios2/cpu/interrupts.c
+++ b/arch/nios2/cpu/interrupts.c
@@ -14,6 +14,7 @@
 #include <asm/types.h>
 #include <asm/io.h>
 #include <asm/ptrace.h>
+#include <linux/types.h>
 
 /*************************************************************************/
 struct	irq_action {
diff --git a/arch/nios2/include/asm/dma-mapping.h b/arch/nios2/include/asm/dma-mapping.h
index 65f67bc1f442..1dd7aa96e409 100644
--- a/arch/nios2/include/asm/dma-mapping.h
+++ b/arch/nios2/include/asm/dma-mapping.h
@@ -3,6 +3,7 @@
 
 #include <memalign.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 /*
  * dma_alloc_coherent() return cache-line aligned allocation which is mapped
diff --git a/arch/nios2/include/asm/global_data.h b/arch/nios2/include/asm/global_data.h
index 1a0e7d25fa3b..4c9b6db070ae 100644
--- a/arch/nios2/include/asm/global_data.h
+++ b/arch/nios2/include/asm/global_data.h
@@ -7,6 +7,7 @@
 #define __ASM_NIOS2_GLOBALDATA_H_
 
 /* Architecture-specific global data */
+#include <asm/types.h>
 struct arch_global_data {
 	u32 dcache_line_size;
 	u32 icache_line_size;
diff --git a/arch/nios2/include/asm/io.h b/arch/nios2/include/asm/io.h
index b22134cf29c4..1e989c1e657e 100644
--- a/arch/nios2/include/asm/io.h
+++ b/arch/nios2/include/asm/io.h
@@ -8,6 +8,7 @@
 #define __ASM_NIOS2_IO_H_
 
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 static inline void sync(void)
diff --git a/arch/nios2/lib/bootm.c b/arch/nios2/lib/bootm.c
index 59099a4d5eae..d1be89a99174 100644
--- a/arch/nios2/lib/bootm.c
+++ b/arch/nios2/lib/bootm.c
@@ -11,6 +11,7 @@
 #include <irq_func.h>
 #include <log.h>
 #include <vsprintf.h>
+#include <linux/types.h>
 
 #define NIOS_MAGIC 0x534f494e /* enable command line and initrd passing */
 
diff --git a/arch/powerpc/cpu/mpc83xx/arbiter/arbiter.h b/arch/powerpc/cpu/mpc83xx/arbiter/arbiter.h
index 10a47e498768..b0740019e464 100644
--- a/arch/powerpc/cpu/mpc83xx/arbiter/arbiter.h
+++ b/arch/powerpc/cpu/mpc83xx/arbiter/arbiter.h
@@ -1,3 +1,4 @@
+#include <linux/types.h>
 	const __be32 acr_mask =
 #ifndef CONFIG_ACR_PIPE_DEP_UNSET
 		ACR_PIPE_DEP |
diff --git a/arch/powerpc/cpu/mpc83xx/cpu.c b/arch/powerpc/cpu/mpc83xx/cpu.c
index 0954553d65b7..866ff0b6d3dd 100644
--- a/arch/powerpc/cpu/mpc83xx/cpu.c
+++ b/arch/powerpc/cpu/mpc83xx/cpu.c
@@ -32,6 +32,7 @@
 #include <linux/immap_qe.h>
 #include <asm/io.h>
 #endif
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc83xx/cpu_init.c b/arch/powerpc/cpu/mpc83xx/cpu_init.c
index b9e5a90cfbd3..38e2785ebfff 100644
--- a/arch/powerpc/cpu/mpc83xx/cpu_init.c
+++ b/arch/powerpc/cpu/mpc83xx/cpu_init.c
@@ -16,6 +16,7 @@
 #endif
 #include <linux/delay.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include "lblaw/lblaw.h"
 #include "elbc/elbc.h"
diff --git a/arch/powerpc/cpu/mpc83xx/ecc.c b/arch/powerpc/cpu/mpc83xx/ecc.c
index b32370fa4d9c..54d6d6fdb460 100644
--- a/arch/powerpc/cpu/mpc83xx/ecc.c
+++ b/arch/powerpc/cpu/mpc83xx/ecc.c
@@ -7,12 +7,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <irq_func.h>
 #include <mpc83xx.h>
 #include <command.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/ppc.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 #if defined(CONFIG_DDR_ECC) && defined(CONFIG_DDR_ECC_CMD)
diff --git a/arch/powerpc/cpu/mpc83xx/fdt.c b/arch/powerpc/cpu/mpc83xx/fdt.c
index a2705b2b0e35..b9fe1185850f 100644
--- a/arch/powerpc/cpu/mpc83xx/fdt.c
+++ b/arch/powerpc/cpu/mpc83xx/fdt.c
@@ -13,6 +13,7 @@
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <asm/ppc.h>
+#include <linux/types.h>
 
 extern void ft_qe_setup(void *blob);
 
diff --git a/arch/powerpc/cpu/mpc83xx/initreg/initreg.h b/arch/powerpc/cpu/mpc83xx/initreg/initreg.h
index 63aa5c946696..1d4984bfc306 100644
--- a/arch/powerpc/cpu/mpc83xx/initreg/initreg.h
+++ b/arch/powerpc/cpu/mpc83xx/initreg/initreg.h
@@ -1,3 +1,4 @@
+#include <linux/types.h>
 #define SPCR_PCIHPE_MASK	0x10000000
 #define SPCR_PCIPR_MASK		0x03000000
 #define SPCR_OPT_MASK		0x00800000
diff --git a/arch/powerpc/cpu/mpc83xx/interrupts.c b/arch/powerpc/cpu/mpc83xx/interrupts.c
index 878d88321a1d..f5cbf4f09d6b 100644
--- a/arch/powerpc/cpu/mpc83xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc83xx/interrupts.c
@@ -14,6 +14,7 @@
 #include <asm/ppc.h>
 #include <asm/ptrace.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc83xx/pci.c b/arch/powerpc/cpu/mpc83xx/pci.c
index 4d3bbc1dfc91..f3ec20483b38 100644
--- a/arch/powerpc/cpu/mpc83xx/pci.c
+++ b/arch/powerpc/cpu/mpc83xx/pci.c
@@ -13,6 +13,7 @@
 #include <asm/bitops.h>
 #include <asm/global_data.h>
 #include <asm/ppc.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 
diff --git a/arch/powerpc/cpu/mpc83xx/pcie.c b/arch/powerpc/cpu/mpc83xx/pcie.c
index 38871cc0569f..a106c5789287 100644
--- a/arch/powerpc/cpu/mpc83xx/pcie.c
+++ b/arch/powerpc/cpu/mpc83xx/pcie.c
@@ -14,6 +14,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/ppc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
 
diff --git a/arch/powerpc/cpu/mpc83xx/qe_io.c b/arch/powerpc/cpu/mpc83xx/qe_io.c
index 88aa68955111..d111def6f1de 100644
--- a/arch/powerpc/cpu/mpc83xx/qe_io.c
+++ b/arch/powerpc/cpu/mpc83xx/qe_io.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/io.h>
 #include <asm/immap_83xx.h>
diff --git a/arch/powerpc/cpu/mpc83xx/spd_sdram.c b/arch/powerpc/cpu/mpc83xx/spd_sdram.c
index 7c8cfd7f2346..cadfc11d9ab4 100644
--- a/arch/powerpc/cpu/mpc83xx/spd_sdram.c
+++ b/arch/powerpc/cpu/mpc83xx/spd_sdram.c
@@ -169,6 +169,7 @@ long int spd_sdram()
 
 	/* Read SPD parameters with I2C */
 	CONFIG_SYS_READ_SPD(SPD_EEPROM_ADDRESS, SPD_EEPROM_OFFSET,
+#include <linux/types.h>
 		SPD_EEPROM_ADDR_LEN, (uchar *) &spd, sizeof(spd));
 #ifdef SPD_DEBUG
 	spd_debug(&spd);
diff --git a/arch/powerpc/cpu/mpc83xx/speed.c b/arch/powerpc/cpu/mpc83xx/speed.c
index d718a9a30730..0e883e9b22f3 100644
--- a/arch/powerpc/cpu/mpc83xx/speed.c
+++ b/arch/powerpc/cpu/mpc83xx/speed.c
@@ -505,6 +505,7 @@ int get_clocks(void)
  * get_bus_freq
  * return system bus freq in Hz
  *********************************************/
+#include <linux/types.h>
 ulong get_bus_freq(ulong dummy)
 {
 	return gd->arch.csb_clk;
diff --git a/arch/powerpc/cpu/mpc83xx/spl_minimal.c b/arch/powerpc/cpu/mpc83xx/spl_minimal.c
index d116b6c43297..5c1184c111ae 100644
--- a/arch/powerpc/cpu/mpc83xx/spl_minimal.c
+++ b/arch/powerpc/cpu/mpc83xx/spl_minimal.c
@@ -11,6 +11,7 @@
 #include <time.h>
 #include <asm/global_data.h>
 #include <asm/ppc.h>
+#include <linux/types.h>
 
 #include "lblaw/lblaw.h"
 #include "elbc/elbc.h"
diff --git a/arch/powerpc/cpu/mpc83xx/traps.c b/arch/powerpc/cpu/mpc83xx/traps.c
index 2ee72517ca2f..d06fc48d7132 100644
--- a/arch/powerpc/cpu/mpc83xx/traps.c
+++ b/arch/powerpc/cpu/mpc83xx/traps.c
@@ -20,6 +20,7 @@
 #include <kgdb.h>
 #include <asm/ppc.h>
 #include <asm/mpc8349_pci.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/b4860_serdes.c b/arch/powerpc/cpu/mpc85xx/b4860_serdes.c
index eb28b08239db..aec47036f135 100644
--- a/arch/powerpc/cpu/mpc85xx/b4860_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/b4860_serdes.c
@@ -7,6 +7,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include "fsl_corenet2_serdes.h"
 
diff --git a/arch/powerpc/cpu/mpc85xx/bsc9132_serdes.c b/arch/powerpc/cpu/mpc85xx/bsc9132_serdes.c
index f5c9d1d81755..9a446535ed8e 100644
--- a/arch/powerpc/cpu/mpc85xx/bsc9132_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/bsc9132_serdes.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc85xx/c29x_serdes.c b/arch/powerpc/cpu/mpc85xx/c29x_serdes.c
index 8c61fd471bc7..8bff23cbbf80 100644
--- a/arch/powerpc/cpu/mpc85xx/c29x_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/c29x_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc85xx/cmd_errata.c b/arch/powerpc/cpu/mpc85xx/cmd_errata.c
index 1a3df5bff48b..27dbdf50b656 100644
--- a/arch/powerpc/cpu/mpc85xx/cmd_errata.c
+++ b/arch/powerpc/cpu/mpc85xx/cmd_errata.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <init.h>
 #include <stdio.h>
 #include <linux/compiler.h>
@@ -13,6 +14,7 @@
 #include <asm/ppc.h>
 #include <fsl_usb.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "fsl_corenet_serdes.h"
 
 #ifdef CONFIG_SYS_FSL_ERRATUM_A004849
diff --git a/arch/powerpc/cpu/mpc85xx/commproc.c b/arch/powerpc/cpu/mpc85xx/commproc.c
index 79ad806dbdf0..9c6b8b759937 100644
--- a/arch/powerpc/cpu/mpc85xx/commproc.c
+++ b/arch/powerpc/cpu/mpc85xx/commproc.c
@@ -27,6 +27,7 @@
 #include <asm/cpm_85xx.h>
 #include <asm/global_data.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/cpu.c b/arch/powerpc/cpu/mpc85xx/cpu.c
index da578d6c9005..f61ad7c740b5 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu.c
@@ -8,6 +8,7 @@
  * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
  */
 
+#include <compiler.h>
 #include <config.h>
 #include <common.h>
 #include <cpu_func.h>
@@ -35,6 +36,7 @@
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c b/arch/powerpc/cpu/mpc85xx/cpu_init.c
index 7d52b2acc650..44d004dce5eb 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu_init.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <display_options.h>
 #include <env.h>
 #include <init.h>
@@ -39,6 +40,7 @@
 #include <linux/compiler.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "mp.h"
 #ifdef CONFIG_CHAIN_OF_TRUST
 #include <fsl_validate.h>
diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init_early.c b/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
index 4195ecc5c98f..867fe124292a 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
@@ -10,6 +10,7 @@
 #include <asm/mmu.h>
 #include <asm/fsl_law.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/ether_fcc.c b/arch/powerpc/cpu/mpc85xx/ether_fcc.c
index df1981cc7aeb..f2b108038ce6 100644
--- a/arch/powerpc/cpu/mpc85xx/ether_fcc.c
+++ b/arch/powerpc/cpu/mpc85xx/ether_fcc.c
@@ -15,6 +15,7 @@
  * Basic ET HW initialization and packet RX/TX routines
  *
  * This code will not perform the IO port configuration. This should be
+#include <linux/types.h>
  * done in the iop_conf_t structure specific for the board.
  *
  * TODO:
diff --git a/arch/powerpc/cpu/mpc85xx/fdt.c b/arch/powerpc/cpu/mpc85xx/fdt.c
index 4864a6809a49..184ff257d492 100644
--- a/arch/powerpc/cpu/mpc85xx/fdt.c
+++ b/arch/powerpc/cpu/mpc85xx/fdt.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <env.h>
 #include <log.h>
 #include <stdio.h>
@@ -31,6 +32,7 @@
 #include <fsl_fman.h>
 #endif
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c b/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c
index c6a7995e873d..e73f3d08b2e8 100644
--- a/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.c
@@ -4,12 +4,14 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <log.h>
 #include <stdio.h>
 #include <asm/fsl_serdes.h>
 #include <asm/io.h>
 #include <asm/ppc.h>
 #include <asm/fsl_law.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <fsl_errata.h>
diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.h b/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.h
index 4e2d44427464..76118b45cc17 100644
--- a/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.h
+++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet2_serdes.h
@@ -6,6 +6,7 @@
 #ifndef __FSL_CORENET2_SERDES_H
 #define __FSL_CORENET2_SERDES_H
 
+#include <asm/types.h>
 int is_serdes_prtcl_valid(int serdes, u32 prtcl);
 int serdes_lane_enabled(int lane);
 #endif /* __FSL_CORENET2_SERDES_H */
diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c
index 0173fab44498..ddfc5cf8e4e7 100644
--- a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c
@@ -19,6 +19,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "fsl_corenet_serdes.h"
 
 /*
diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.h b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.h
index e95dc485814f..705632eaa395 100644
--- a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.h
+++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.h
@@ -8,6 +8,7 @@
 #ifndef __FSL_CORENET_SERDES_H
 #define __FSL_CORENET_SERDES_H
 
+#include <linux/types.h>
 enum srds_bank {
 	FSL_SRDS_BANK_1  = 0,
 	FSL_SRDS_BANK_2  = 1,
diff --git a/arch/powerpc/cpu/mpc85xx/interrupts.c b/arch/powerpc/cpu/mpc85xx/interrupts.c
index 5a491399d998..c314c65ff463 100644
--- a/arch/powerpc/cpu/mpc85xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc85xx/interrupts.c
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <irq_func.h>
 #include <log.h>
 #include <time.h>
@@ -23,6 +24,7 @@
 #endif
 #include <asm/ptrace.h>
 #include <asm/ppc.h>
+#include <linux/types.h>
 
 void interrupt_init_cpu(unsigned *decrementer_count)
 {
diff --git a/arch/powerpc/cpu/mpc85xx/liodn.c b/arch/powerpc/cpu/mpc85xx/liodn.c
index 340d563d7d4d..8703748cc2bf 100644
--- a/arch/powerpc/cpu/mpc85xx/liodn.c
+++ b/arch/powerpc/cpu/mpc85xx/liodn.c
@@ -10,6 +10,7 @@
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/immap_85xx.h>
 #include <asm/io.h>
diff --git a/arch/powerpc/cpu/mpc85xx/mp.c b/arch/powerpc/cpu/mpc85xx/mp.c
index 4c7e2f8612a7..542914842480 100644
--- a/arch/powerpc/cpu/mpc85xx/mp.c
+++ b/arch/powerpc/cpu/mpc85xx/mp.c
@@ -20,6 +20,7 @@
 #include <fsl_ddr_sdram.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "mp.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/powerpc/cpu/mpc85xx/mp.h b/arch/powerpc/cpu/mpc85xx/mp.h
index ad9950bcf590..d8cd535b0667 100644
--- a/arch/powerpc/cpu/mpc85xx/mp.h
+++ b/arch/powerpc/cpu/mpc85xx/mp.h
@@ -2,6 +2,7 @@
 #define __MPC85XX_MP_H_
 
 #include <asm/mp.h>
+#include <asm/types.h>
 
 phys_addr_t get_spin_phys_addr(void);
 u32 get_my_id(void);
diff --git a/arch/powerpc/cpu/mpc85xx/mpc8536_serdes.c b/arch/powerpc/cpu/mpc85xx/mpc8536_serdes.c
index 763f452b069e..4029075c46d8 100644
--- a/arch/powerpc/cpu/mpc85xx/mpc8536_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/mpc8536_serdes.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 /* PORDEVSR register */
diff --git a/arch/powerpc/cpu/mpc85xx/mpc8544_serdes.c b/arch/powerpc/cpu/mpc85xx/mpc8544_serdes.c
index cbbd6f3522cb..7636aa036582 100644
--- a/arch/powerpc/cpu/mpc85xx/mpc8544_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/mpc8544_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		8
diff --git a/arch/powerpc/cpu/mpc85xx/mpc8548_serdes.c b/arch/powerpc/cpu/mpc85xx/mpc8548_serdes.c
index fad7afff88bb..c9714b77641e 100644
--- a/arch/powerpc/cpu/mpc85xx/mpc8548_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/mpc8548_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		8
diff --git a/arch/powerpc/cpu/mpc85xx/mpc8568_serdes.c b/arch/powerpc/cpu/mpc85xx/mpc8568_serdes.c
index 1f88d0e34682..c389c06833d2 100644
--- a/arch/powerpc/cpu/mpc85xx/mpc8568_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/mpc8568_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		8
diff --git a/arch/powerpc/cpu/mpc85xx/mpc8569_serdes.c b/arch/powerpc/cpu/mpc85xx/mpc8569_serdes.c
index 88b8300f58c0..dd8301798a4d 100644
--- a/arch/powerpc/cpu/mpc85xx/mpc8569_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/mpc8569_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc85xx/mpc8572_serdes.c b/arch/powerpc/cpu/mpc85xx/mpc8572_serdes.c
index d6bf5f314f6a..208ceca1f826 100644
--- a/arch/powerpc/cpu/mpc85xx/mpc8572_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/mpc8572_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		8
diff --git a/arch/powerpc/cpu/mpc85xx/p1010_serdes.c b/arch/powerpc/cpu/mpc85xx/p1010_serdes.c
index 7dc3512364de..b97ee95b57db 100644
--- a/arch/powerpc/cpu/mpc85xx/p1010_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p1010_serdes.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc85xx/p1021_serdes.c b/arch/powerpc/cpu/mpc85xx/p1021_serdes.c
index 5bb06705829f..3775fb48901d 100644
--- a/arch/powerpc/cpu/mpc85xx/p1021_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p1021_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
 
diff --git a/arch/powerpc/cpu/mpc85xx/p1022_serdes.c b/arch/powerpc/cpu/mpc85xx/p1022_serdes.c
index 368b5eaea4dc..4aa28ae99c1e 100644
--- a/arch/powerpc/cpu/mpc85xx/p1022_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p1022_serdes.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc85xx/p1023_serdes.c b/arch/powerpc/cpu/mpc85xx/p1023_serdes.c
index b976b40e3339..8fa7ed5c8840 100644
--- a/arch/powerpc/cpu/mpc85xx/p1023_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p1023_serdes.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc85xx/p2020_serdes.c b/arch/powerpc/cpu/mpc85xx/p2020_serdes.c
index 3ff5715245d1..d453aa9f4398 100644
--- a/arch/powerpc/cpu/mpc85xx/p2020_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p2020_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc85xx/p2041_serdes.c b/arch/powerpc/cpu/mpc85xx/p2041_serdes.c
index c491d3d014f7..999955832a1d 100644
--- a/arch/powerpc/cpu/mpc85xx/p2041_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p2041_serdes.c
@@ -6,6 +6,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include "fsl_corenet_serdes.h"
 
diff --git a/arch/powerpc/cpu/mpc85xx/p3041_serdes.c b/arch/powerpc/cpu/mpc85xx/p3041_serdes.c
index 53b6ee1927fb..a1828e590e16 100644
--- a/arch/powerpc/cpu/mpc85xx/p3041_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p3041_serdes.c
@@ -6,6 +6,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include "fsl_corenet_serdes.h"
 
diff --git a/arch/powerpc/cpu/mpc85xx/p4080_serdes.c b/arch/powerpc/cpu/mpc85xx/p4080_serdes.c
index 6432b1973845..eb6ce58a87eb 100644
--- a/arch/powerpc/cpu/mpc85xx/p4080_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p4080_serdes.c
@@ -8,6 +8,7 @@
 #include <asm/ppc.h>
 #include <asm/io.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "fsl_corenet_serdes.h"
 
 static u8 serdes_cfg_tbl[][SRDS_MAX_LANES] = {
diff --git a/arch/powerpc/cpu/mpc85xx/p5020_serdes.c b/arch/powerpc/cpu/mpc85xx/p5020_serdes.c
index 53b6ee1927fb..a1828e590e16 100644
--- a/arch/powerpc/cpu/mpc85xx/p5020_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p5020_serdes.c
@@ -6,6 +6,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include "fsl_corenet_serdes.h"
 
diff --git a/arch/powerpc/cpu/mpc85xx/p5040_serdes.c b/arch/powerpc/cpu/mpc85xx/p5040_serdes.c
index 5b02643ab5f8..8014352809df 100644
--- a/arch/powerpc/cpu/mpc85xx/p5040_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/p5040_serdes.c
@@ -6,6 +6,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include "fsl_corenet_serdes.h"
 
diff --git a/arch/powerpc/cpu/mpc85xx/pci.c b/arch/powerpc/cpu/mpc85xx/pci.c
index af340f2a63bb..8d28427d9d0b 100644
--- a/arch/powerpc/cpu/mpc85xx/pci.c
+++ b/arch/powerpc/cpu/mpc85xx/pci.c
@@ -12,6 +12,7 @@
 #include <stdio.h>
 #include <asm/bitops.h>
 #include <asm/cpm_85xx.h>
+#include <asm/types.h>
 #include <pci.h>
 
 #if !defined(CONFIG_FSL_PCI_INIT) && !defined(CONFIG_DM_PCI)
diff --git a/arch/powerpc/cpu/mpc85xx/portals.c b/arch/powerpc/cpu/mpc85xx/portals.c
index add179be3853..34994e31c629 100644
--- a/arch/powerpc/cpu/mpc85xx/portals.c
+++ b/arch/powerpc/cpu/mpc85xx/portals.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <stdio.h>
 #include <vsprintf.h>
+#include <asm/types.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <linux/string.h>
diff --git a/arch/powerpc/cpu/mpc85xx/qe_io.c b/arch/powerpc/cpu/mpc85xx/qe_io.c
index c5b1443058e2..985b25df708e 100644
--- a/arch/powerpc/cpu/mpc85xx/qe_io.c
+++ b/arch/powerpc/cpu/mpc85xx/qe_io.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <asm/io.h>
 #include <asm/immap_85xx.h>
diff --git a/arch/powerpc/cpu/mpc85xx/serial_scc.c b/arch/powerpc/cpu/mpc85xx/serial_scc.c
index a2505d1ffc1d..858f93d5dd8b 100644
--- a/arch/powerpc/cpu/mpc85xx/serial_scc.c
+++ b/arch/powerpc/cpu/mpc85xx/serial_scc.c
@@ -16,10 +16,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <asm/cpm_85xx.h>
 #include <serial.h>
 #include <asm/global_data.h>
 #include <linux/compiler.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/speed.c b/arch/powerpc/cpu/mpc85xx/speed.c
index f3c6da306c49..57f99632440f 100644
--- a/arch/powerpc/cpu/mpc85xx/speed.c
+++ b/arch/powerpc/cpu/mpc85xx/speed.c
@@ -17,6 +17,7 @@
 #include <linux/compiler.h>
 #include <asm/processor.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/spl_minimal.c b/arch/powerpc/cpu/mpc85xx/spl_minimal.c
index 21b35db08df1..e79ef4ba0381 100644
--- a/arch/powerpc/cpu/mpc85xx/spl_minimal.c
+++ b/arch/powerpc/cpu/mpc85xx/spl_minimal.c
@@ -9,6 +9,7 @@
 #include <fsl_ifc.h>
 #include <asm/io.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc85xx/t1024_serdes.c b/arch/powerpc/cpu/mpc85xx/t1024_serdes.c
index 6530302e70cb..94344aafd490 100644
--- a/arch/powerpc/cpu/mpc85xx/t1024_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/t1024_serdes.c
@@ -6,6 +6,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 static u8 serdes_cfg_tbl[][SRDS_MAX_LANES] = {
diff --git a/arch/powerpc/cpu/mpc85xx/t1040_serdes.c b/arch/powerpc/cpu/mpc85xx/t1040_serdes.c
index 299b01218913..07845ac0cbd4 100644
--- a/arch/powerpc/cpu/mpc85xx/t1040_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/t1040_serdes.c
@@ -6,6 +6,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 
diff --git a/arch/powerpc/cpu/mpc85xx/t4240_serdes.c b/arch/powerpc/cpu/mpc85xx/t4240_serdes.c
index 3eae06720070..dc76f1227aba 100644
--- a/arch/powerpc/cpu/mpc85xx/t4240_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/t4240_serdes.c
@@ -6,6 +6,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include "fsl_corenet2_serdes.h"
 
diff --git a/arch/powerpc/cpu/mpc85xx/tlb.c b/arch/powerpc/cpu/mpc85xx/tlb.c
index 54b55248c14f..fef6a3155b2e 100644
--- a/arch/powerpc/cpu/mpc85xx/tlb.c
+++ b/arch/powerpc/cpu/mpc85xx/tlb.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <display_options.h>
 #include <stdio.h>
 #include <asm/bitops.h>
@@ -17,6 +18,7 @@
 #include <addr_map.h>
 #endif
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include <linux/log2.h>
 
diff --git a/arch/powerpc/cpu/mpc85xx/traps.c b/arch/powerpc/cpu/mpc85xx/traps.c
index 91021e718662..129570f87faa 100644
--- a/arch/powerpc/cpu/mpc85xx/traps.c
+++ b/arch/powerpc/cpu/mpc85xx/traps.c
@@ -29,6 +29,7 @@
 #include <irq_func.h>
 #include <kgdb.h>
 #include <asm/processor.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc86xx/cpu.c b/arch/powerpc/cpu/mpc86xx/cpu.c
index 498469750f95..6ecae3ee3c53 100644
--- a/arch/powerpc/cpu/mpc86xx/cpu.c
+++ b/arch/powerpc/cpu/mpc86xx/cpu.c
@@ -21,6 +21,7 @@
 #include <asm/fsl_law.h>
 #include <asm/ppc.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc86xx/fdt.c b/arch/powerpc/cpu/mpc86xx/fdt.c
index be6292dd6a3e..5b1fbb4ea44f 100644
--- a/arch/powerpc/cpu/mpc86xx/fdt.c
+++ b/arch/powerpc/cpu/mpc86xx/fdt.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/arch/powerpc/cpu/mpc86xx/interrupts.c b/arch/powerpc/cpu/mpc86xx/interrupts.c
index 3288f3913cc1..9631c5f63fd9 100644
--- a/arch/powerpc/cpu/mpc86xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc86xx/interrupts.c
@@ -26,6 +26,7 @@
 #include <post.h>
 #endif
 #include <asm/ptrace.h>
+#include <linux/types.h>
 
 void interrupt_init_cpu(unsigned *decrementer_count)
 {
diff --git a/arch/powerpc/cpu/mpc86xx/mp.c b/arch/powerpc/cpu/mpc86xx/mp.c
index 9f41a32d29a9..815a79fbb2b3 100644
--- a/arch/powerpc/cpu/mpc86xx/mp.c
+++ b/arch/powerpc/cpu/mpc86xx/mp.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <asm/mp.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc86xx/mpc8610_serdes.c b/arch/powerpc/cpu/mpc86xx/mpc8610_serdes.c
index e91ebe4b1db0..ec34a717d8ba 100644
--- a/arch/powerpc/cpu/mpc86xx/mpc8610_serdes.c
+++ b/arch/powerpc/cpu/mpc86xx/mpc8610_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_86xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc86xx/mpc8641_serdes.c b/arch/powerpc/cpu/mpc86xx/mpc8641_serdes.c
index 232f85c2ad9a..4983d8cd8377 100644
--- a/arch/powerpc/cpu/mpc86xx/mpc8641_serdes.c
+++ b/arch/powerpc/cpu/mpc86xx/mpc8641_serdes.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/immap_86xx.h>
 #include <asm/fsl_serdes.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #define SRDS1_MAX_LANES		4
diff --git a/arch/powerpc/cpu/mpc86xx/speed.c b/arch/powerpc/cpu/mpc86xx/speed.c
index 87e6e5957826..e0e35c2ea6fd 100644
--- a/arch/powerpc/cpu/mpc86xx/speed.c
+++ b/arch/powerpc/cpu/mpc86xx/speed.c
@@ -14,6 +14,7 @@
 #include <asm/global_data.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc86xx/traps.c b/arch/powerpc/cpu/mpc86xx/traps.c
index d0b7fa75248c..d03112c3245b 100644
--- a/arch/powerpc/cpu/mpc86xx/traps.c
+++ b/arch/powerpc/cpu/mpc86xx/traps.c
@@ -22,6 +22,7 @@
 #include <init.h>
 #include <kgdb.h>
 #include <asm/processor.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc8xx/cpu.c b/arch/powerpc/cpu/mpc8xx/cpu.c
index dbebe7b30e12..41e6685e62d4 100644
--- a/arch/powerpc/cpu/mpc8xx/cpu.c
+++ b/arch/powerpc/cpu/mpc8xx/cpu.c
@@ -17,6 +17,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <display_options.h>
 #include <net.h>
@@ -34,6 +35,7 @@
 #include <asm/u-boot.h>
 #include <linux/compiler.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 #if defined(CONFIG_OF_LIBFDT)
 #include <linux/libfdt.h>
diff --git a/arch/powerpc/cpu/mpc8xx/cpu_init.c b/arch/powerpc/cpu/mpc8xx/cpu_init.c
index f5a3b02558f8..4e615c4ed7d8 100644
--- a/arch/powerpc/cpu/mpc8xx/cpu_init.c
+++ b/arch/powerpc/cpu/mpc8xx/cpu_init.c
@@ -5,8 +5,10 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
 #include <watchdog.h>
+#include <linux/types.h>
 
 #include <mpc8xx.h>
 #include <asm/cpm_8xx.h>
diff --git a/arch/powerpc/cpu/mpc8xx/immap.c b/arch/powerpc/cpu/mpc8xx/immap.c
index bc131f85b26b..954768426f7d 100644
--- a/arch/powerpc/cpu/mpc8xx/immap.c
+++ b/arch/powerpc/cpu/mpc8xx/immap.c
@@ -10,9 +10,11 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 #include <asm/immap_8xx.h>
 #include <asm/cpm_8xx.h>
diff --git a/arch/powerpc/cpu/mpc8xx/interrupts.c b/arch/powerpc/cpu/mpc8xx/interrupts.c
index c2627aa9791e..7309af41da04 100644
--- a/arch/powerpc/cpu/mpc8xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc8xx/interrupts.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <irq_func.h>
 #include <mpc8xx.h>
 #include <mpc8xx_irq.h>
@@ -14,6 +15,7 @@
 #include <asm/ppc.h>
 #include <asm/io.h>
 #include <asm/ptrace.h>
+#include <linux/types.h>
 
 /************************************************************************/
 
diff --git a/arch/powerpc/cpu/mpc8xx/speed.c b/arch/powerpc/cpu/mpc8xx/speed.c
index 49699c3e4a7b..a5360c444e2f 100644
--- a/arch/powerpc/cpu/mpc8xx/speed.c
+++ b/arch/powerpc/cpu/mpc8xx/speed.c
@@ -6,10 +6,12 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <mpc8xx.h>
 #include <asm/global_data.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc8xx/traps.c b/arch/powerpc/cpu/mpc8xx/traps.c
index fdc6b110412d..83a1f06c3905 100644
--- a/arch/powerpc/cpu/mpc8xx/traps.c
+++ b/arch/powerpc/cpu/mpc8xx/traps.c
@@ -21,6 +21,7 @@
 #include <asm/ptrace.h>
 #include <command.h>
 #include <asm/processor.h>
+#include <linux/types.h>
 
 /* Returns 0 if exception not found and fixup otherwise.  */
 extern unsigned long search_exception_table(unsigned long);
diff --git a/arch/powerpc/cpu/mpc8xxx/cpu.c b/arch/powerpc/cpu/mpc8xxx/cpu.c
index e9ff1d2aaf9f..8a4a42be4f40 100644
--- a/arch/powerpc/cpu/mpc8xxx/cpu.c
+++ b/arch/powerpc/cpu/mpc8xxx/cpu.c
@@ -7,6 +7,7 @@
  * cpu specific common code for 85xx/86xx processors.
  */
 
+#include <compiler.h>
 #include <config.h>
 #include <common.h>
 #include <command.h>
@@ -22,6 +23,7 @@
 #include <vsc9953.h>
 #include <asm/u-boot.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc8xxx/fdt.c b/arch/powerpc/cpu/mpc8xxx/fdt.c
index 5322c64808e5..6075467d4f6e 100644
--- a/arch/powerpc/cpu/mpc8xxx/fdt.c
+++ b/arch/powerpc/cpu/mpc8xxx/fdt.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <cpu_func.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <asm/mp.h>
diff --git a/arch/powerpc/cpu/mpc8xxx/fsl_lbc.c b/arch/powerpc/cpu/mpc8xxx/fsl_lbc.c
index 6f2b64948a52..95c3fcf6e25b 100644
--- a/arch/powerpc/cpu/mpc8xxx/fsl_lbc.c
+++ b/arch/powerpc/cpu/mpc8xxx/fsl_lbc.c
@@ -8,6 +8,7 @@
 #include <init.h>
 #include <stdio.h>
 #include <asm/fsl_lbc.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_MPC83xx
 #include "../mpc83xx/elbc/elbc.h"
diff --git a/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c b/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c
index a10969576b12..9559a029589a 100644
--- a/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c
+++ b/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c
@@ -14,6 +14,7 @@
 #include <asm/ppc.h>
 #include <asm/fsl_pamu.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 struct paace *ppaact;
 struct paace *sec;
diff --git a/arch/powerpc/cpu/mpc8xxx/law.c b/arch/powerpc/cpu/mpc8xxx/law.c
index 91b736456070..ee85cd2e3aaf 100644
--- a/arch/powerpc/cpu/mpc8xxx/law.c
+++ b/arch/powerpc/cpu/mpc8xxx/law.c
@@ -11,6 +11,7 @@
 #include <stdio.h>
 #include <asm/bitops.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/compiler.h>
 #include <asm/fsl_law.h>
 #include <asm/io.h>
diff --git a/arch/powerpc/cpu/mpc8xxx/pamu_table.c b/arch/powerpc/cpu/mpc8xxx/pamu_table.c
index bf559d0f833c..21b92a390b09 100644
--- a/arch/powerpc/cpu/mpc8xxx/pamu_table.c
+++ b/arch/powerpc/cpu/mpc8xxx/pamu_table.c
@@ -8,6 +8,7 @@
 #include <asm/fsl_pamu.h>
 #include <asm/global_data.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/cpu/mpc8xxx/srio.c b/arch/powerpc/cpu/mpc8xxx/srio.c
index 71178b47bc18..bcb69c3e05be 100644
--- a/arch/powerpc/cpu/mpc8xxx/srio.c
+++ b/arch/powerpc/cpu/mpc8xxx/srio.c
@@ -12,6 +12,7 @@
 #include <asm/fsl_serdes.h>
 #include <asm/fsl_srio.h>
 #include <asm/ppc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 
diff --git a/arch/powerpc/include/asm/arch-mpc83xx/gpio.h b/arch/powerpc/include/asm/arch-mpc83xx/gpio.h
index 8a6896e6229c..7450468304f0 100644
--- a/arch/powerpc/include/asm/arch-mpc83xx/gpio.h
+++ b/arch/powerpc/include/asm/arch-mpc83xx/gpio.h
@@ -16,6 +16,7 @@
 #define MPC83XX_GPIO_CTRLRS 0
 #endif
 
+#include <linux/types.h>
 #define MAX_NUM_GPIOS (32 * MPC83XX_GPIO_CTRLRS)
 
 struct mpc8xxx_gpio_plat {
diff --git a/arch/powerpc/include/asm/arch-mpc85xx/gpio.h b/arch/powerpc/include/asm/arch-mpc85xx/gpio.h
index c7086a8361e1..12da481f745e 100644
--- a/arch/powerpc/include/asm/arch-mpc85xx/gpio.h
+++ b/arch/powerpc/include/asm/arch-mpc85xx/gpio.h
@@ -17,6 +17,7 @@
 #include <asm/mpc85xx_gpio.h>
 #endif
 
+#include <linux/types.h>
 struct mpc8xxx_gpio_plat {
 	ulong addr;
 	unsigned long size;
diff --git a/arch/powerpc/include/asm/cache.h b/arch/powerpc/include/asm/cache.h
index 445a366807db..b7c223b35c69 100644
--- a/arch/powerpc/include/asm/cache.h
+++ b/arch/powerpc/include/asm/cache.h
@@ -55,6 +55,7 @@ extern void invalidate_icache(void);
 #ifdef CONFIG_SYS_INIT_RAM_LOCK
 extern void unlock_ram_in_cache(void);
 #endif /* CONFIG_SYS_INIT_RAM_LOCK */
+#include <linux/types.h>
 #endif /* __ASSEMBLY__ */
 
 #if defined(__KERNEL__) && !defined(__ASSEMBLY__)
diff --git a/arch/powerpc/include/asm/cpm_85xx.h b/arch/powerpc/include/asm/cpm_85xx.h
index b46e20e5ce89..d9dd28d2fced 100644
--- a/arch/powerpc/include/asm/cpm_85xx.h
+++ b/arch/powerpc/include/asm/cpm_85xx.h
@@ -6,6 +6,7 @@
  * MPC8260 Communication Processor Module.
  * Copyright (c) 1999 Dan Malek (dmalek at jlc.net)
  *
+#include <linux/types.h>
  * This file contains structures and information for the communication
  * processor channels found in the dual port RAM or parameter RAM.
  * All CPM control and status is available through the MPC8260 internal
diff --git a/arch/powerpc/include/asm/cpm_8xx.h b/arch/powerpc/include/asm/cpm_8xx.h
index 85903d210880..5d804b231338 100644
--- a/arch/powerpc/include/asm/cpm_8xx.h
+++ b/arch/powerpc/include/asm/cpm_8xx.h
@@ -5,6 +5,7 @@
  * (C) Copyright 2000-2006
  * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
  *
+#include <linux/types.h>
  * This file contains structures and information for the communication
  * processor channels.  Some CPM control and status is available
  * through the MPC8xx internal memory map.  See immap.h for details.
diff --git a/arch/powerpc/include/asm/fsl_dma.h b/arch/powerpc/include/asm/fsl_dma.h
index 727f4a7e92c2..9e0cdf8028b1 100644
--- a/arch/powerpc/include/asm/fsl_dma.h
+++ b/arch/powerpc/include/asm/fsl_dma.h
@@ -9,6 +9,7 @@
 #define _ASM_FSL_DMA_H_
 
 #include <asm/types.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_MPC83xx
 typedef struct fsl_dma {
diff --git a/arch/powerpc/include/asm/fsl_i2c.h b/arch/powerpc/include/asm/fsl_i2c.h
index 73105fa8e484..55226a3c059f 100644
--- a/arch/powerpc/include/asm/fsl_i2c.h
+++ b/arch/powerpc/include/asm/fsl_i2c.h
@@ -13,8 +13,10 @@
 #ifndef _ASM_FSL_I2C_H_
 #define _ASM_FSL_I2C_H_
 
+#include <compiler.h>
 #include <asm/types.h>
 #include <linux/compiler.h>
+#include <linux/types.h>
 
 typedef struct fsl_i2c_base {
 
diff --git a/arch/powerpc/include/asm/fsl_law.h b/arch/powerpc/include/asm/fsl_law.h
index 888640df6f81..7dde8dcf4126 100644
--- a/arch/powerpc/include/asm/fsl_law.h
+++ b/arch/powerpc/include/asm/fsl_law.h
@@ -7,6 +7,7 @@
 #define _FSL_LAW_H_
 
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/log2.h>
 
 #define LAW_EN	0x80000000
diff --git a/arch/powerpc/include/asm/fsl_lbc.h b/arch/powerpc/include/asm/fsl_lbc.h
index bf352d9a5617..c3a0ee5424cc 100644
--- a/arch/powerpc/include/asm/fsl_lbc.h
+++ b/arch/powerpc/include/asm/fsl_lbc.h
@@ -465,6 +465,7 @@ void lbc_sdram_init(void);
 
 #ifndef __ASSEMBLY__
 #include <asm/io.h>
+#include <linux/types.h>
 
 extern void print_lbc_regs(void);
 extern void init_early_memctl_regs(void);
diff --git a/arch/powerpc/include/asm/fsl_mpc83xx_serdes.h b/arch/powerpc/include/asm/fsl_mpc83xx_serdes.h
index a02b59926547..67f47076768f 100644
--- a/arch/powerpc/include/asm/fsl_mpc83xx_serdes.h
+++ b/arch/powerpc/include/asm/fsl_mpc83xx_serdes.h
@@ -23,4 +23,5 @@ extern void fsl_setup_serdes(u32 offset, char proto, u32 rfcks, char vdd);
 
 #endif /* !CONFIG_MPC83XX_SERDES */
 
+#include <asm/types.h>
 #endif /* __FSL_MPC83XX_SERDES_H */
diff --git a/arch/powerpc/include/asm/fsl_pamu.h b/arch/powerpc/include/asm/fsl_pamu.h
index 07e822b796ed..cd711fb86136 100644
--- a/arch/powerpc/include/asm/fsl_pamu.h
+++ b/arch/powerpc/include/asm/fsl_pamu.h
@@ -6,6 +6,7 @@
 #ifndef __PAMU_H
 #define __PAMU_H
 
+#include <linux/types.h>
 #define CONFIG_NUM_PAMU		16
 #define NUM_PPAACT_ENTRIES	512
 #define NUM_SPAACT_ENTRIES	256
diff --git a/arch/powerpc/include/asm/fsl_pci.h b/arch/powerpc/include/asm/fsl_pci.h
index 508834829b95..5ebad5c7e5e4 100644
--- a/arch/powerpc/include/asm/fsl_pci.h
+++ b/arch/powerpc/include/asm/fsl_pci.h
@@ -9,6 +9,7 @@
 #include <asm/fsl_law.h>
 #include <asm/fsl_serdes.h>
 #include <pci.h>
+#include <asm/types.h>
 
 #define PEX_IP_BLK_REV_2_2	0x02080202
 #define PEX_IP_BLK_REV_2_3	0x02080203
diff --git a/arch/powerpc/include/asm/fsl_portals.h b/arch/powerpc/include/asm/fsl_portals.h
index b1fd6bd5cef6..f277b20260e3 100644
--- a/arch/powerpc/include/asm/fsl_portals.h
+++ b/arch/powerpc/include/asm/fsl_portals.h
@@ -7,6 +7,7 @@
 #define _FSL_PORTALS_H_
 
 /* entries must be in order and contiguous */
+#include <asm/types.h>
 enum fsl_dpaa_dev {
 	FSL_HW_PORTAL_SEC,
 #ifdef CONFIG_SYS_DPAA_FMAN
diff --git a/arch/powerpc/include/asm/fsl_serdes.h b/arch/powerpc/include/asm/fsl_serdes.h
index ddde4f80c632..8588006b7af7 100644
--- a/arch/powerpc/include/asm/fsl_serdes.h
+++ b/arch/powerpc/include/asm/fsl_serdes.h
@@ -7,6 +7,7 @@
 #define __FSL_SERDES_H
 
 #include <config.h>
+#include <asm/types.h>
 
 enum srds_prtcl {
 	/*
diff --git a/arch/powerpc/include/asm/global_data.h b/arch/powerpc/include/asm/global_data.h
index 192a02d347e7..04e0c38b848b 100644
--- a/arch/powerpc/include/asm/global_data.h
+++ b/arch/powerpc/include/asm/global_data.h
@@ -9,7 +9,7 @@
 #define __ASM_GBL_DATA_H
 
 #include "config.h"
-#include "asm/types.h"
+#include "linux/types.h"
 
 /* Architecture-specific global data */
 struct arch_global_data {
diff --git a/arch/powerpc/include/asm/immap_86xx.h b/arch/powerpc/include/asm/immap_86xx.h
index 30c296d5b7c6..4088b6443a0c 100644
--- a/arch/powerpc/include/asm/immap_86xx.h
+++ b/arch/powerpc/include/asm/immap_86xx.h
@@ -16,6 +16,7 @@
 #include <asm/fsl_lbc.h>
 #include <asm/fsl_i2c.h>
 #include <asm/ppc.h>
+#include <linux/types.h>
 
 /* Local-Access Registers and MCM Registers(0x0000-0x2000) */
 typedef struct ccsr_local_mcm {
diff --git a/arch/powerpc/include/asm/immap_8xx.h b/arch/powerpc/include/asm/immap_8xx.h
index 3999a02b9c7d..6f9f9a250c70 100644
--- a/arch/powerpc/include/asm/immap_8xx.h
+++ b/arch/powerpc/include/asm/immap_8xx.h
@@ -14,6 +14,7 @@
 
 /* System configuration registers.
 */
+#include <linux/types.h>
 typedef	struct sys_conf {
 	uint	sc_siumcr;
 	uint	sc_sypcr;
diff --git a/arch/powerpc/include/asm/io.h b/arch/powerpc/include/asm/io.h
index ccc5e664cf47..e8d86574a5d2 100644
--- a/arch/powerpc/include/asm/io.h
+++ b/arch/powerpc/include/asm/io.h
@@ -7,7 +7,9 @@
 #ifndef _PPC_IO_H
 #define _PPC_IO_H
 
+#include <compiler.h>
 #include <asm/byteorder.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 #ifdef CONFIG_ADDR_MAP
diff --git a/arch/powerpc/include/asm/iopin_8xx.h b/arch/powerpc/include/asm/iopin_8xx.h
index a41b33233256..82d5a1802722 100644
--- a/arch/powerpc/include/asm/iopin_8xx.h
+++ b/arch/powerpc/include/asm/iopin_8xx.h
@@ -8,6 +8,7 @@
 #ifndef _ASM_IOPIN_8XX_H_
 #define _ASM_IOPIN_8XX_H_
 
+#include <compiler.h>
 #include <linux/types.h>
 #include <asm/immap_8xx.h>
 #include <asm/io.h>
diff --git a/arch/powerpc/include/asm/mmu.h b/arch/powerpc/include/asm/mmu.h
index 353dc4e8748d..901ed9329dfa 100644
--- a/arch/powerpc/include/asm/mmu.h
+++ b/arch/powerpc/include/asm/mmu.h
@@ -8,6 +8,7 @@
 #ifndef __ASSEMBLY__
 /* Hardware Page Table Entry */
 #include <linux/bitops.h>
+#include <linux/types.h>
 typedef struct _PTE {
 #ifdef CONFIG_PPC64BRIDGE
 	unsigned long long vsid:52;
diff --git a/arch/powerpc/include/asm/mp.h b/arch/powerpc/include/asm/mp.h
index 8dacd2781d44..619053cd01f2 100644
--- a/arch/powerpc/include/asm/mp.h
+++ b/arch/powerpc/include/asm/mp.h
@@ -7,6 +7,7 @@
 #define _ASM_MP_H_
 
 #include <lmb.h>
+#include <asm/types.h>
 
 void setup_mp(void);
 void cpu_mp_lmb_reserve(struct lmb *lmb);
diff --git a/arch/powerpc/include/asm/ppc.h b/arch/powerpc/include/asm/ppc.h
index 055364c58fd9..7f6c52cc3760 100644
--- a/arch/powerpc/include/asm/ppc.h
+++ b/arch/powerpc/include/asm/ppc.h
@@ -38,6 +38,7 @@
 #endif
 
 #include <asm/processor.h>
+#include <linux/types.h>
 
 static inline uint get_immr(void)
 {
diff --git a/arch/powerpc/lib/bdinfo.c b/arch/powerpc/lib/bdinfo.c
index 22acf76dedb0..71451e0d9a49 100644
--- a/arch/powerpc/lib/bdinfo.c
+++ b/arch/powerpc/lib/bdinfo.c
@@ -7,10 +7,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <init.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/lib/bootm.c b/arch/powerpc/lib/bootm.c
index f283c1a9a47d..6ff9eae75357 100644
--- a/arch/powerpc/lib/bootm.c
+++ b/arch/powerpc/lib/bootm.c
@@ -22,6 +22,7 @@
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 #include <bzlib.h>
 #include <asm/byteorder.h>
diff --git a/arch/powerpc/lib/cache.c b/arch/powerpc/lib/cache.c
index 3c3c470bbbda..86fff84f978f 100644
--- a/arch/powerpc/lib/cache.c
+++ b/arch/powerpc/lib/cache.c
@@ -8,6 +8,7 @@
 #include <cpu_func.h>
 #include <asm/cache.h>
 #include <watchdog.h>
+#include <linux/types.h>
 
 void flush_cache(ulong start_addr, ulong size)
 {
diff --git a/arch/powerpc/lib/interrupts.c b/arch/powerpc/lib/interrupts.c
index b85f7dc79172..be361549e710 100644
--- a/arch/powerpc/lib/interrupts.c
+++ b/arch/powerpc/lib/interrupts.c
@@ -17,6 +17,7 @@
 #endif
 #include <asm/ptrace.h>
 #include <asm/ppc.h>
+#include <linux/types.h>
 
 #ifndef CONFIG_MPC83XX_TIMER
 #ifndef CONFIG_SYS_WATCHDOG_FREQ
diff --git a/arch/powerpc/lib/spl.c b/arch/powerpc/lib/spl.c
index d4a6057527c2..d01b68436895 100644
--- a/arch/powerpc/lib/spl.c
+++ b/arch/powerpc/lib/spl.c
@@ -8,6 +8,7 @@
 #include <spl.h>
 #include <image.h>
 #include <linux/compiler.h>
+#include <linux/types.h>
 
 /*
  * This function jumps to an image with argument. Normally an FDT or ATAGS
diff --git a/arch/powerpc/lib/stack.c b/arch/powerpc/lib/stack.c
index f2a4652e081d..438b70c82b14 100644
--- a/arch/powerpc/lib/stack.c
+++ b/arch/powerpc/lib/stack.c
@@ -13,6 +13,7 @@
 #include <common.h>
 #include <init.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/powerpc/lib/time.c b/arch/powerpc/lib/time.c
index d27432c23af8..702766a788a5 100644
--- a/arch/powerpc/lib/time.c
+++ b/arch/powerpc/lib/time.c
@@ -9,6 +9,7 @@
 #include <time.h>
 #include <asm/io.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 /* ------------------------------------------------------------------------- */
 
diff --git a/arch/riscv/cpu/cpu.c b/arch/riscv/cpu/cpu.c
index 487329fa2f0f..4792ac4a9c19 100644
--- a/arch/riscv/cpu/cpu.c
+++ b/arch/riscv/cpu/cpu.c
@@ -10,6 +10,7 @@
 #include <log.h>
 #include <stdbool.h>
 #include <asm/encoding.h>
+#include <asm/types.h>
 #include <dm/uclass-internal.h>
 #include <linux/bitops.h>
 #include <linux/string.h>
diff --git a/arch/riscv/cpu/fu540/cache.c b/arch/riscv/cpu/fu540/cache.c
index 714b405e843e..1667ebea5b5b 100644
--- a/arch/riscv/cpu/fu540/cache.c
+++ b/arch/riscv/cpu/fu540/cache.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 
 /* Register offsets */
diff --git a/arch/riscv/cpu/fu540/dram.c b/arch/riscv/cpu/fu540/dram.c
index cec130ec8dc6..feb9d41131f6 100644
--- a/arch/riscv/cpu/fu540/dram.c
+++ b/arch/riscv/cpu/fu540/dram.c
@@ -8,6 +8,7 @@
 #include <init.h>
 #include <asm/global_data.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/riscv/cpu/generic/dram.c b/arch/riscv/cpu/generic/dram.c
index cec130ec8dc6..feb9d41131f6 100644
--- a/arch/riscv/cpu/generic/dram.c
+++ b/arch/riscv/cpu/generic/dram.c
@@ -8,6 +8,7 @@
 #include <init.h>
 #include <asm/global_data.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/riscv/include/asm/global_data.h b/arch/riscv/include/asm/global_data.h
index 2eb14815bcf0..73d76c362ddc 100644
--- a/arch/riscv/include/asm/global_data.h
+++ b/arch/riscv/include/asm/global_data.h
@@ -13,6 +13,7 @@
 #include <asm/smp.h>
 #include <asm/u-boot.h>
 #include <compiler.h>
+#include <linux/types.h>
 
 /* Architecture-specific global data */
 struct arch_global_data {
diff --git a/arch/riscv/include/asm/io.h b/arch/riscv/include/asm/io.h
index acf5a96449c1..f823f1fb18b8 100644
--- a/arch/riscv/include/asm/io.h
+++ b/arch/riscv/include/asm/io.h
@@ -68,6 +68,7 @@ static inline phys_addr_t map_to_sysmem(const void *ptr)
 #define __iormb()	rmb()
 #define __iowmb()	wmb()
 
+#include <compiler.h>
 static inline void writeb(u8 val, volatile void __iomem *addr)
 {
 	__iowmb();
diff --git a/arch/riscv/include/asm/ptrace.h b/arch/riscv/include/asm/ptrace.h
index 651078fcfda3..19984e34de86 100644
--- a/arch/riscv/include/asm/ptrace.h
+++ b/arch/riscv/include/asm/ptrace.h
@@ -9,6 +9,7 @@
 #ifndef __ASM_RISCV_PTRACE_H
 #define __ASM_RISCV_PTRACE_H
 
+#include <linux/types.h>
 struct pt_regs {
 	unsigned long sepc;
 	unsigned long ra;
diff --git a/arch/riscv/include/asm/smp.h b/arch/riscv/include/asm/smp.h
index 1b428856b26d..0cbe7bf24ee4 100644
--- a/arch/riscv/include/asm/smp.h
+++ b/arch/riscv/include/asm/smp.h
@@ -7,6 +7,7 @@
 #ifndef _ASM_RISCV_SMP_H
 #define _ASM_RISCV_SMP_H
 
+#include <linux/types.h>
 /**
  * struct ipi_data - Inter-processor interrupt (IPI) data structure
  *
diff --git a/arch/riscv/lib/andes_plic.c b/arch/riscv/lib/andes_plic.c
index 445a39798b91..cebf72c93c7e 100644
--- a/arch/riscv/lib/andes_plic.c
+++ b/arch/riscv/lib/andes_plic.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <asm/global_data.h>
 #include <dm/device-internal.h>
@@ -21,6 +22,7 @@
 #include <linux/err.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /* pending register */
 #define PENDING_REG(base, hart)	((ulong)(base) + 0x1000 + ((hart) / 4) * 4)
diff --git a/arch/riscv/lib/andes_plmt.c b/arch/riscv/lib/andes_plmt.c
index c453d9042c8f..a38d6cfe38cc 100644
--- a/arch/riscv/lib/andes_plmt.c
+++ b/arch/riscv/lib/andes_plmt.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <regmap.h>
 #include <syscon.h>
@@ -15,6 +16,7 @@
 #include <asm/io.h>
 #include <asm/syscon.h>
 #include <linux/err.h>
+#include <linux/types.h>
 
 /* mtime register */
 #define MTIME_REG(base)			((ulong)(base))
diff --git a/arch/riscv/lib/boot.c b/arch/riscv/lib/boot.c
index 80ac3e58fd80..158f2944ee97 100644
--- a/arch/riscv/lib/boot.c
+++ b/arch/riscv/lib/boot.c
@@ -6,6 +6,7 @@
 
 #include <command.h>
 #include <asm/u-boot-riscv.h>
+#include <linux/types.h>
 
 unsigned long do_go_exec(ulong (*entry)(int, char * const []),
 			 int argc, char *const argv[])
diff --git a/arch/riscv/lib/bootm.c b/arch/riscv/lib/bootm.c
index 14a09eee717f..c30a6ff0260b 100644
--- a/arch/riscv/lib/bootm.c
+++ b/arch/riscv/lib/bootm.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <bootstage.h>
 #include <command.h>
+#include <compiler.h>
 #include <dm.h>
 #include <fdt_support.h>
 #include <hang.h>
@@ -23,6 +24,7 @@
 #include <asm/u-boot-riscv.h>
 #include <dm/device.h>
 #include <dm/root.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/riscv/lib/fdt_fixup.c b/arch/riscv/lib/fdt_fixup.c
index 1ed86a38c728..6a6e2cbe269f 100644
--- a/arch/riscv/lib/fdt_fixup.c
+++ b/arch/riscv/lib/fdt_fixup.c
@@ -13,6 +13,7 @@
 #include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/riscv/lib/image.c b/arch/riscv/lib/image.c
index 2f78b25807a4..8cca200416f5 100644
--- a/arch/riscv/lib/image.c
+++ b/arch/riscv/lib/image.c
@@ -16,6 +16,7 @@
 #include <linux/errno.h>
 #include <linux/sizes.h>
 #include <linux/stddef.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/riscv/lib/interrupts.c b/arch/riscv/lib/interrupts.c
index b510e7aea8f8..5070565dc1d5 100644
--- a/arch/riscv/lib/interrupts.c
+++ b/arch/riscv/lib/interrupts.c
@@ -19,6 +19,7 @@
 #include <asm/system.h>
 #include <asm/encoding.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/riscv/lib/rdtime.c b/arch/riscv/lib/rdtime.c
index e128d7fce692..f05977019d6c 100644
--- a/arch/riscv/lib/rdtime.c
+++ b/arch/riscv/lib/rdtime.c
@@ -4,10 +4,12 @@
  * Copyright (C) 2018, Bin Meng <bmeng.cn at gmail.com>
  *
  * The riscv_get_time() API implementation that is using the
+#include <asm/types.h>
  * standard rdtime instruction.
  */
 
 #include <common.h>
+#include <linux/types.h>
 
 /* Implement the API required by RISC-V timer driver */
 int riscv_get_time(u64 *time)
diff --git a/arch/riscv/lib/reloc_riscv_efi.c b/arch/riscv/lib/reloc_riscv_efi.c
index c1039dd165d9..0520ddd6e384 100644
--- a/arch/riscv/lib/reloc_riscv_efi.c
+++ b/arch/riscv/lib/reloc_riscv_efi.c
@@ -37,6 +37,7 @@
 */
 
 #include <efi.h>
+#include <linux/types.h>
 
 #include <elf.h>
 
diff --git a/arch/riscv/lib/sbi.c b/arch/riscv/lib/sbi.c
index 984499960a1a..a3b56a1dbd35 100644
--- a/arch/riscv/lib/sbi.c
+++ b/arch/riscv/lib/sbi.c
@@ -11,6 +11,7 @@
 #include <asm/encoding.h>
 #include <asm/sbi.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 struct sbiret sbi_ecall(int ext, int fid, unsigned long arg0,
 			unsigned long arg1, unsigned long arg2,
diff --git a/arch/riscv/lib/sbi_ipi.c b/arch/riscv/lib/sbi_ipi.c
index d02e2b4c4882..fe5eeaad1d5c 100644
--- a/arch/riscv/lib/sbi_ipi.c
+++ b/arch/riscv/lib/sbi_ipi.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <asm/encoding.h>
 #include <asm/sbi.h>
+#include <linux/types.h>
 
 int riscv_init_ipi(void)
 {
diff --git a/arch/riscv/lib/sifive_clint.c b/arch/riscv/lib/sifive_clint.c
index 97b7169a02cf..a22229643bd3 100644
--- a/arch/riscv/lib/sifive_clint.c
+++ b/arch/riscv/lib/sifive_clint.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <regmap.h>
 #include <syscon.h>
@@ -15,6 +16,7 @@
 #include <asm/io.h>
 #include <asm/syscon.h>
 #include <linux/err.h>
+#include <linux/types.h>
 
 /* MSIP registers */
 #define MSIP_REG(base, hart)		((ulong)(base) + (hart) * 4)
diff --git a/arch/riscv/lib/smp.c b/arch/riscv/lib/smp.c
index 09dd439b59aa..a229a84fc9df 100644
--- a/arch/riscv/lib/smp.c
+++ b/arch/riscv/lib/smp.c
@@ -12,6 +12,7 @@
 #include <asm/smp.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/riscv/lib/spl.c b/arch/riscv/lib/spl.c
index b8771cb61c22..ddb81363fb3c 100644
--- a/arch/riscv/lib/spl.c
+++ b/arch/riscv/lib/spl.c
@@ -4,6 +4,7 @@
  * Lukas Auer <lukas.auer at aisec.fraunhofer.de>
  */
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <hang.h>
 #include <init.h>
@@ -12,6 +13,7 @@
 #include <vsprintf.h>
 #include <asm/global_data.h>
 #include <asm/smp.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/sandbox/cpu/cpu.c b/arch/sandbox/cpu/cpu.c
index f4cc363927d1..18345fcd1ffc 100644
--- a/arch/sandbox/cpu/cpu.c
+++ b/arch/sandbox/cpu/cpu.c
@@ -21,6 +21,7 @@
 #include <asm/setjmp.h>
 #include <asm/state.h>
 #include <dm/root.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/sandbox/cpu/sdl.c b/arch/sandbox/cpu/sdl.c
index c1c9bb68e0a9..e37bf3addbd1 100644
--- a/arch/sandbox/cpu/sdl.c
+++ b/arch/sandbox/cpu/sdl.c
@@ -12,6 +12,7 @@
 #include <SDL2/SDL.h>
 #include <asm/state.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /**
  * struct buf_info - a data buffer holding audio data
diff --git a/arch/sandbox/cpu/spl.c b/arch/sandbox/cpu/spl.c
index 52cabd7ff12b..e4fe62a1c438 100644
--- a/arch/sandbox/cpu/spl.c
+++ b/arch/sandbox/cpu/spl.c
@@ -16,6 +16,7 @@
 #include <asm/state.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/sandbox/cpu/start.c b/arch/sandbox/cpu/start.c
index c9e626100c60..2ef54a9753bb 100644
--- a/arch/sandbox/cpu/start.c
+++ b/arch/sandbox/cpu/start.c
@@ -22,6 +22,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/sandbox/cpu/state.c b/arch/sandbox/cpu/state.c
index 849dfbd1d669..d99a8d27c828 100644
--- a/arch/sandbox/cpu/state.c
+++ b/arch/sandbox/cpu/state.c
@@ -14,6 +14,7 @@
 #include <asm/state.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /* Main state record for the sandbox */
 static struct sandbox_state main_state;
diff --git a/arch/sandbox/include/asm/axi.h b/arch/sandbox/include/asm/axi.h
index d483f7b65a02..b533a46dc8f0 100644
--- a/arch/sandbox/include/asm/axi.h
+++ b/arch/sandbox/include/asm/axi.h
@@ -7,6 +7,7 @@
 #ifndef __asm_axi_h
 #define __asm_axi_h
 
+#include <linux/types.h>
 #define axi_emul_get_ops(dev)	((struct axi_emul_ops *)(dev)->driver->ops)
 
 /**
diff --git a/arch/sandbox/include/asm/clk.h b/arch/sandbox/include/asm/clk.h
index c184c4bffcf7..9e6b96700a23 100644
--- a/arch/sandbox/include/asm/clk.h
+++ b/arch/sandbox/include/asm/clk.h
@@ -7,6 +7,7 @@
 #define __SANDBOX_CLK_H
 
 #include <common.h>
+#include <linux/types.h>
 
 struct udevice;
 
diff --git a/arch/sandbox/include/asm/eth.h b/arch/sandbox/include/asm/eth.h
index 8c3c957b56fc..62bbd9afea0d 100644
--- a/arch/sandbox/include/asm/eth.h
+++ b/arch/sandbox/include/asm/eth.h
@@ -11,6 +11,7 @@
 
 #include <net.h>
 #include <stdbool.h>
+#include <linux/types.h>
 
 void sandbox_eth_disable_response(int index, bool disable);
 
diff --git a/arch/sandbox/include/asm/global_data.h b/arch/sandbox/include/asm/global_data.h
index f95ddb058a22..00a53e570b30 100644
--- a/arch/sandbox/include/asm/global_data.h
+++ b/arch/sandbox/include/asm/global_data.h
@@ -10,6 +10,7 @@
 #define __ASM_GBL_DATA_H
 
 /* Architecture-specific global data */
+#include <linux/types.h>
 struct arch_global_data {
 	uint8_t		*ram_buf;	/* emulated RAM buffer */
 	void		*text_base;	/* pointer to base of text region */
diff --git a/arch/sandbox/include/asm/gpio.h b/arch/sandbox/include/asm/gpio.h
index df4ba4fb5f3e..967fe9ad2139 100644
--- a/arch/sandbox/include/asm/gpio.h
+++ b/arch/sandbox/include/asm/gpio.h
@@ -22,6 +22,7 @@
  * NOTE: DO NOT use the functions in this file except in test code!
  */
 #include <asm-generic/gpio.h>
+#include <linux/types.h>
 
 /**
  * Return the simulated value of a GPIO (used only in sandbox test code)
diff --git a/arch/sandbox/include/asm/handoff.h b/arch/sandbox/include/asm/handoff.h
index be4e7b0fae2d..f8a72cd87a57 100644
--- a/arch/sandbox/include/asm/handoff.h
+++ b/arch/sandbox/include/asm/handoff.h
@@ -9,6 +9,7 @@
 #ifndef __handoff_h
 #define __handoff_h
 
+#include <linux/types.h>
 #define TEST_HANDOFF_MAGIC	0x14f93c7b
 
 struct arch_spl_handoff {
diff --git a/arch/sandbox/include/asm/io.h b/arch/sandbox/include/asm/io.h
index ad6c29a4e26c..e671262b5d60 100644
--- a/arch/sandbox/include/asm/io.h
+++ b/arch/sandbox/include/asm/io.h
@@ -6,6 +6,7 @@
 #ifndef __SANDBOX_ASM_IO_H
 #define __SANDBOX_ASM_IO_H
 
+#include <linux/types.h>
 enum sandboxio_size_t {
 	SB_SIZE_8,
 	SB_SIZE_16,
diff --git a/arch/sandbox/include/asm/mbox.h b/arch/sandbox/include/asm/mbox.h
index 70f36d7afef6..c3b8a9f14adf 100644
--- a/arch/sandbox/include/asm/mbox.h
+++ b/arch/sandbox/include/asm/mbox.h
@@ -7,6 +7,7 @@
 #define __SANDBOX_MBOX_H
 
 #include <common.h>
+#include <linux/types.h>
 
 #define SANDBOX_MBOX_PING_XOR 0x12345678
 
diff --git a/arch/sandbox/include/asm/sdl.h b/arch/sandbox/include/asm/sdl.h
index a14e0a8f8a21..75904d9fad25 100644
--- a/arch/sandbox/include/asm/sdl.h
+++ b/arch/sandbox/include/asm/sdl.h
@@ -9,6 +9,7 @@
 #include <errno.h>
 #include <stdbool.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SANDBOX_SDL
 
diff --git a/arch/sandbox/include/asm/sections.h b/arch/sandbox/include/asm/sections.h
index fbc1bd11a341..32667b7cf163 100644
--- a/arch/sandbox/include/asm/sections.h
+++ b/arch/sandbox/include/asm/sections.h
@@ -10,6 +10,7 @@
 #define __SANDBOX_SECTIONS_H
 
 #include <asm-generic/sections.h>
+#include <linux/types.h>
 
 struct sandbox_cmdline_option;
 
diff --git a/arch/sandbox/include/asm/setjmp.h b/arch/sandbox/include/asm/setjmp.h
index 001c7ea322d2..27168ca18505 100644
--- a/arch/sandbox/include/asm/setjmp.h
+++ b/arch/sandbox/include/asm/setjmp.h
@@ -7,6 +7,7 @@
 #ifndef _SETJMP_H_
 #define _SETJMP_H_
 
+#include <linux/types.h>
 struct jmp_buf_data {
 	/*
 	 * We're not sure how long this should be:
diff --git a/arch/sandbox/include/asm/state.h b/arch/sandbox/include/asm/state.h
index 1bfad305f1af..0a0322c39779 100644
--- a/arch/sandbox/include/asm/state.h
+++ b/arch/sandbox/include/asm/state.h
@@ -11,6 +11,7 @@
 #include <stdbool.h>
 #include <linux/list.h>
 #include <linux/stringify.h>
+#include <linux/types.h>
 
 /**
  * Selects the behavior of the serial terminal.
diff --git a/arch/sandbox/include/asm/test.h b/arch/sandbox/include/asm/test.h
index 6ac8c1a8288d..1be290ea7101 100644
--- a/arch/sandbox/include/asm/test.h
+++ b/arch/sandbox/include/asm/test.h
@@ -10,6 +10,7 @@
 
 /* The sandbox driver always permits an I2C device with this address */
 #include <stdbool.h>
+#include <linux/types.h>
 #define SANDBOX_I2C_TEST_ADDR		0x59
 
 #define SANDBOX_PCI_VENDOR_ID		0x1234
diff --git a/arch/sandbox/include/asm/u-boot-sandbox.h b/arch/sandbox/include/asm/u-boot-sandbox.h
index 798d0030773e..9433e5258e53 100644
--- a/arch/sandbox/include/asm/u-boot-sandbox.h
+++ b/arch/sandbox/include/asm/u-boot-sandbox.h
@@ -15,6 +15,7 @@
 #define _U_BOOT_SANDBOX_H_
 
 /* board/.../... */
+#include <asm/types.h>
 int board_init(void);
 
 /* start.c */
diff --git a/arch/sandbox/lib/bootm.c b/arch/sandbox/lib/bootm.c
index d9378f019c09..116ec10ae267 100644
--- a/arch/sandbox/lib/bootm.c
+++ b/arch/sandbox/lib/bootm.c
@@ -6,10 +6,12 @@
 
 #include <common.h>
 #include <bootstage.h>
+#include <compiler.h>
 #include <image.h>
 #include <stdio.h>
 #include <asm/io.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define	LINUX_ARM_ZIMAGE_MAGIC	0x016f2818
 
diff --git a/arch/sandbox/lib/pci_io.c b/arch/sandbox/lib/pci_io.c
index cfc5291ab7b6..f16f992420d2 100644
--- a/arch/sandbox/lib/pci_io.c
+++ b/arch/sandbox/lib/pci_io.c
@@ -14,6 +14,7 @@
 #include <log.h>
 #include <asm/io.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 int pci_map_physmem(phys_addr_t paddr, unsigned long *lenp,
 		    struct udevice **devp, void **ptrp)
diff --git a/arch/sh/cpu/sh4/cache.c b/arch/sh/cpu/sh4/cache.c
index 0f7dfdd3cf79..037d24f4ab3f 100644
--- a/arch/sh/cpu/sh4/cache.c
+++ b/arch/sh/cpu/sh4/cache.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/processor.h>
 #include <asm/system.h>
+#include <asm/types.h>
 
 #define CACHE_VALID       1
 #define CACHE_UPDATED     2
diff --git a/arch/sh/include/asm/pci.h b/arch/sh/include/asm/pci.h
index 5d79d0ec58ed..dfa6184e0b97 100644
--- a/arch/sh/include/asm/pci.h
+++ b/arch/sh/include/asm/pci.h
@@ -18,6 +18,7 @@ int pci_sh7780_init(struct pci_controller *hose);
 #else
 #error "Not support PCI."
 #endif
+#include <asm/types.h>
 
 int pci_sh4_init(struct pci_controller *hose);
 /* PCI dword read for sh4 */
diff --git a/arch/sh/include/asm/string.h b/arch/sh/include/asm/string.h
index 999febcb6b7d..cc1f28af19df 100644
--- a/arch/sh/include/asm/string.h
+++ b/arch/sh/include/asm/string.h
@@ -130,4 +130,5 @@ extern int strcasecmp(const char *, const char *);
 #define __HAVE_ARCH_STRTOK      1
 
 #endif /* KERNEL */
+#include <linux/types.h>
 #endif /* __ASM_SH_STRING_H */
diff --git a/arch/sh/lib/board.c b/arch/sh/lib/board.c
index f43213a50e99..105f204a70b8 100644
--- a/arch/sh/lib/board.c
+++ b/arch/sh/lib/board.c
@@ -7,6 +7,7 @@
 #include <init.h>
 #include <asm/global_data.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/sh/lib/time_sh2.c b/arch/sh/lib/time_sh2.c
index 5484c543c6c8..5788c552abd5 100644
--- a/arch/sh/lib/time_sh2.c
+++ b/arch/sh/lib/time_sh2.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/processor.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #define CMT_CMCSR_INIT	0x0001	/* PCLK/32 */
 #define CMT_CMCSR_CALIB 0x0000
diff --git a/arch/sh/lib/zimageboot.c b/arch/sh/lib/zimageboot.c
index 8567d390376a..20eab6bbbffe 100644
--- a/arch/sh/lib/zimageboot.c
+++ b/arch/sh/lib/zimageboot.c
@@ -17,6 +17,7 @@
 #include <asm/io.h>
 #include <asm/zimage.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 int do_sh_zimageboot(struct cmd_tbl *cmdtp, int flag, int argc,
 		     char *const argv[])
diff --git a/arch/x86/cpu/acpi_gpe.c b/arch/x86/cpu/acpi_gpe.c
index 5610d5437236..1b51b44e8c68 100644
--- a/arch/x86/cpu/acpi_gpe.c
+++ b/arch/x86/cpu/acpi_gpe.c
@@ -15,6 +15,7 @@
 #include <dt-bindings/interrupt-controller/x86-irq.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /**
  * struct acpi_gpe_priv - private driver information
diff --git a/arch/x86/cpu/apollolake/cpu_spl.c b/arch/x86/cpu/apollolake/cpu_spl.c
index 00cfcd2f4a2d..e13f8391fa8e 100644
--- a/arch/x86/cpu/apollolake/cpu_spl.c
+++ b/arch/x86/cpu/apollolake/cpu_spl.c
@@ -35,6 +35,7 @@
 #include <asm/arch/uart.h>
 #include <asm/fsp2/fsp_api.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 #include <power/acpi_pmc.h>
 
 /* Define this here to avoid referencing any drivers for the debug UART 1 */
diff --git a/arch/x86/cpu/apollolake/fsp_bindings.c b/arch/x86/cpu/apollolake/fsp_bindings.c
index db9290f5312d..abec50644b4e 100644
--- a/arch/x86/cpu/apollolake/fsp_bindings.c
+++ b/arch/x86/cpu/apollolake/fsp_bindings.c
@@ -10,6 +10,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /**
  * read_u8_prop() - Read an u8 property from devicetree (scalar or array)
diff --git a/arch/x86/cpu/apollolake/fsp_s.c b/arch/x86/cpu/apollolake/fsp_s.c
index 433dcf08c778..5876edaa007f 100644
--- a/arch/x86/cpu/apollolake/fsp_s.c
+++ b/arch/x86/cpu/apollolake/fsp_s.c
@@ -13,6 +13,7 @@
 #include <log.h>
 #include <malloc.h>
 #include <p2sb.h>
+#include <stdbool.h>
 #include <acpi/acpi_s3.h>
 #include <asm/global_data.h>
 #include <asm/intel_pinctrl.h>
@@ -30,6 +31,7 @@
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define PCH_P2SB_E0		0xe0
 #define HIDE_BIT		BIT(0)
diff --git a/arch/x86/cpu/apollolake/hostbridge.c b/arch/x86/cpu/apollolake/hostbridge.c
index 99f1b441312c..4477e580fbbd 100644
--- a/arch/x86/cpu/apollolake/hostbridge.c
+++ b/arch/x86/cpu/apollolake/hostbridge.c
@@ -13,6 +13,7 @@
 #include <asm/pci.h>
 #include <asm/arch/systemagent.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 /**
  * struct apl_hostbridge_platdata - platform data for hostbridge
diff --git a/arch/x86/cpu/apollolake/lpc.c b/arch/x86/cpu/apollolake/lpc.c
index 07a64502061a..4c12d80b38bc 100644
--- a/arch/x86/cpu/apollolake/lpc.c
+++ b/arch/x86/cpu/apollolake/lpc.c
@@ -16,6 +16,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/log2.h>
+#include <linux/types.h>
 
 void lpc_enable_fixed_io_ranges(uint io_enables)
 {
diff --git a/arch/x86/cpu/apollolake/pmc.c b/arch/x86/cpu/apollolake/pmc.c
index 8adc33bfd30e..96b3845a2977 100644
--- a/arch/x86/cpu/apollolake/pmc.c
+++ b/arch/x86/cpu/apollolake/pmc.c
@@ -13,12 +13,14 @@
 #include <dm.h>
 #include <log.h>
 #include <spl.h>
+#include <stdbool.h>
 #include <acpi/acpi_s3.h>
 #include <asm/io.h>
 #include <asm/pci.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <power/acpi_pmc.h>
 
 #define GPIO_GPE_CFG		0x1050
diff --git a/arch/x86/cpu/apollolake/punit.c b/arch/x86/cpu/apollolake/punit.c
index 632309f69015..ecc2fe1ca20f 100644
--- a/arch/x86/cpu/apollolake/punit.c
+++ b/arch/x86/cpu/apollolake/punit.c
@@ -16,6 +16,7 @@
 #include <asm/arch/systemagent.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 /*
  * Punit Initialisation code. This all isn't documented, but
diff --git a/arch/x86/cpu/apollolake/spl.c b/arch/x86/cpu/apollolake/spl.c
index 618b20add162..a8cd253deec9 100644
--- a/arch/x86/cpu/apollolake/spl.c
+++ b/arch/x86/cpu/apollolake/spl.c
@@ -22,6 +22,7 @@
 #include <dm/uclass-internal.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /* This reads the next phase from mapped SPI flash */
 static int rom_load_image(struct spl_image_info *spl_image,
diff --git a/arch/x86/cpu/apollolake/uart.c b/arch/x86/cpu/apollolake/uart.c
index 2a2010229455..8c031445b952 100644
--- a/arch/x86/cpu/apollolake/uart.c
+++ b/arch/x86/cpu/apollolake/uart.c
@@ -17,6 +17,7 @@
 #include <asm/pci.h>
 #include <asm/lpss.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 /* Low-power Subsystem (LPSS) clock register */
 enum {
diff --git a/arch/x86/cpu/baytrail/acpi.c b/arch/x86/cpu/baytrail/acpi.c
index e6c721a16ba9..fe7139e6509c 100644
--- a/arch/x86/cpu/baytrail/acpi.c
+++ b/arch/x86/cpu/baytrail/acpi.c
@@ -13,6 +13,7 @@
 #include <asm/tables.h>
 #include <asm/arch/global_nvs.h>
 #include <asm/arch/iomap.h>
+#include <asm/types.h>
 #include <dm/uclass-internal.h>
 #include <linux/string.h>
 
diff --git a/arch/x86/cpu/baytrail/cpu.c b/arch/x86/cpu/baytrail/cpu.c
index 309a50a11611..8cc19c02e2b6 100644
--- a/arch/x86/cpu/baytrail/cpu.c
+++ b/arch/x86/cpu/baytrail/cpu.c
@@ -17,6 +17,7 @@
 #include <asm/lapic.h>
 #include <asm/msr.h>
 #include <asm/turbo.h>
+#include <linux/types.h>
 
 #define BYT_PRV_CLK			0x800
 #define BYT_PRV_CLK_EN			(1 << 0)
diff --git a/arch/x86/cpu/baytrail/early_uart.c b/arch/x86/cpu/baytrail/early_uart.c
index 08dbd5538f7a..6a1bb87854c1 100644
--- a/arch/x86/cpu/baytrail/early_uart.c
+++ b/arch/x86/cpu/baytrail/early_uart.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <errno.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 #define PCI_DEV_CONFIG(segbus, dev, fn) ( \
 		(((segbus) & 0xfff) << 20) | \
diff --git a/arch/x86/cpu/baytrail/fsp_configs.c b/arch/x86/cpu/baytrail/fsp_configs.c
index fb3f946c45f9..da89f6db4c15 100644
--- a/arch/x86/cpu/baytrail/fsp_configs.c
+++ b/arch/x86/cpu/baytrail/fsp_configs.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <fdtdec.h>
 #include <log.h>
 #include <asm/fsp1/fsp_support.h>
diff --git a/arch/x86/cpu/braswell/early_uart.c b/arch/x86/cpu/braswell/early_uart.c
index d78c6b0feb6a..b8cd6a81e12a 100644
--- a/arch/x86/cpu/braswell/early_uart.c
+++ b/arch/x86/cpu/braswell/early_uart.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <asm/io.h>
+#include <linux/types.h>
 
 #define PCI_DEV_CONFIG(segbus, dev, fn) ( \
 		(((segbus) & 0xfff) << 20) | \
diff --git a/arch/x86/cpu/braswell/fsp_configs.c b/arch/x86/cpu/braswell/fsp_configs.c
index 243298fd5718..70a9fa004a78 100644
--- a/arch/x86/cpu/braswell/fsp_configs.c
+++ b/arch/x86/cpu/braswell/fsp_configs.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <fdtdec.h>
 #include <log.h>
 #include <asm/fsp1/fsp_support.h>
diff --git a/arch/x86/cpu/broadwell/adsp.c b/arch/x86/cpu/broadwell/adsp.c
index beab06dee95d..b7a615fc37e5 100644
--- a/arch/x86/cpu/broadwell/adsp.c
+++ b/arch/x86/cpu/broadwell/adsp.c
@@ -20,6 +20,7 @@
 #include <asm/arch/adsp.h>
 #include <asm/arch/pch.h>
 #include <asm/arch/rcb.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 enum pci_type_t {
diff --git a/arch/x86/cpu/broadwell/cpu_full.c b/arch/x86/cpu/broadwell/cpu_full.c
index daf17af3b151..2c676ad2ce2b 100644
--- a/arch/x86/cpu/broadwell/cpu_full.c
+++ b/arch/x86/cpu/broadwell/cpu_full.c
@@ -10,6 +10,7 @@
 #include <cpu.h>
 #include <init.h>
 #include <log.h>
+#include <stdbool.h>
 #include <asm/cpu.h>
 #include <asm/cpu_x86.h>
 #include <asm/cpu_common.h>
@@ -24,6 +25,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 struct cpu_broadwell_priv {
 	bool ht_disabled;
diff --git a/arch/x86/cpu/broadwell/iobp.c b/arch/x86/cpu/broadwell/iobp.c
index 68c57f4f18a4..68c41695eb52 100644
--- a/arch/x86/cpu/broadwell/iobp.c
+++ b/arch/x86/cpu/broadwell/iobp.c
@@ -12,6 +12,7 @@
 #include <asm/intel_regs.h>
 #include <asm/io.h>
 #include <asm/arch/pch.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 
diff --git a/arch/x86/cpu/broadwell/lpc.c b/arch/x86/cpu/broadwell/lpc.c
index d2638a4e7a6b..280eeb6c745b 100644
--- a/arch/x86/cpu/broadwell/lpc.c
+++ b/arch/x86/cpu/broadwell/lpc.c
@@ -15,6 +15,7 @@
 #include <asm/lpc_common.h>
 #include <asm/arch/pch.h>
 #include <asm/arch/spi.h>
+#include <asm/types.h>
 
 static void set_spi_speed(void)
 {
diff --git a/arch/x86/cpu/broadwell/me.c b/arch/x86/cpu/broadwell/me.c
index 89b7bd15082b..397cba6d343a 100644
--- a/arch/x86/cpu/broadwell/me.c
+++ b/arch/x86/cpu/broadwell/me.c
@@ -12,6 +12,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 static inline void me_read_dword_ptr(struct udevice *dev, void *ptr, int offset)
 {
diff --git a/arch/x86/cpu/broadwell/northbridge.c b/arch/x86/cpu/broadwell/northbridge.c
index 4b0dd46f7fe4..2d851ed4fe8c 100644
--- a/arch/x86/cpu/broadwell/northbridge.c
+++ b/arch/x86/cpu/broadwell/northbridge.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <stdio.h>
 #include <asm/global_data.h>
@@ -13,6 +14,7 @@
 #include <asm/arch/pch.h>
 #include <asm/arch/pei_data.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 __weak asmlinkage void sdram_console_tx_byte(unsigned char byte)
 {
diff --git a/arch/x86/cpu/broadwell/pch.c b/arch/x86/cpu/broadwell/pch.c
index f7f975983e6b..b834c8471b95 100644
--- a/arch/x86/cpu/broadwell/pch.c
+++ b/arch/x86/cpu/broadwell/pch.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <log.h>
 #include <pch.h>
+#include <stdbool.h>
 #include <asm/cpu.h>
 #include <asm/global_data.h>
 #include <asm/gpio.h>
@@ -28,6 +29,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define BIOS_CTRL	0xdc
 
diff --git a/arch/x86/cpu/broadwell/pinctrl_broadwell.c b/arch/x86/cpu/broadwell/pinctrl_broadwell.c
index 0bb28739fdc6..60453956e509 100644
--- a/arch/x86/cpu/broadwell/pinctrl_broadwell.c
+++ b/arch/x86/cpu/broadwell/pinctrl_broadwell.c
@@ -10,6 +10,7 @@
 #include <log.h>
 #include <pch.h>
 #include <pci.h>
+#include <stdbool.h>
 #include <asm/cpu.h>
 #include <asm/global_data.h>
 #include <asm/gpio.h>
@@ -22,6 +23,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/broadwell/refcode.c b/arch/x86/cpu/broadwell/refcode.c
index ba4a23ac58ff..626b124d942b 100644
--- a/arch/x86/cpu/broadwell/refcode.c
+++ b/arch/x86/cpu/broadwell/refcode.c
@@ -1,6 +1,8 @@
 // SPDX-License-Identifier: GPL-2.0
 /*
  * Read a coreboot rmodule and execute it.
+#include <compiler.h>
+#include <linux/types.h>
  * The rmodule_header struct is from coreboot.
  *
  * Copyright (c) 2016 Google, Inc
diff --git a/arch/x86/cpu/broadwell/sata.c b/arch/x86/cpu/broadwell/sata.c
index 27d6bf706e2f..2bdb1ffae228 100644
--- a/arch/x86/cpu/broadwell/sata.c
+++ b/arch/x86/cpu/broadwell/sata.c
@@ -17,6 +17,7 @@
 #include <asm/pch_common.h>
 #include <asm/arch/pch.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 struct sata_platdata {
 	int port_map;
diff --git a/arch/x86/cpu/broadwell/sdram.c b/arch/x86/cpu/broadwell/sdram.c
index 1d48741f473a..3f1827b7eec7 100644
--- a/arch/x86/cpu/broadwell/sdram.c
+++ b/arch/x86/cpu/broadwell/sdram.c
@@ -27,6 +27,7 @@
 #include <asm/arch/pm.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 ulong board_get_usable_ram_top(ulong total_size)
 {
diff --git a/arch/x86/cpu/coreboot/coreboot.c b/arch/x86/cpu/coreboot/coreboot.c
index cfd97a153199..7f974b766146 100644
--- a/arch/x86/cpu/coreboot/coreboot.c
+++ b/arch/x86/cpu/coreboot/coreboot.c
@@ -17,6 +17,7 @@
 #include <asm/mtrr.h>
 #include <asm/arch/sysinfo.h>
 #include <asm/arch/timestamp.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/coreboot/sdram.c b/arch/x86/cpu/coreboot/sdram.c
index b8b803f643d7..2c2e656dff00 100644
--- a/arch/x86/cpu/coreboot/sdram.c
+++ b/arch/x86/cpu/coreboot/sdram.c
@@ -13,6 +13,7 @@
 #include <asm/arch/sysinfo.h>
 #include <asm/global_data.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/coreboot/tables.c b/arch/x86/cpu/coreboot/tables.c
index f0c350605e19..68d2805a7bc9 100644
--- a/arch/x86/cpu/coreboot/tables.c
+++ b/arch/x86/cpu/coreboot/tables.c
@@ -7,10 +7,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <net.h>
 #include <asm/arch/sysinfo.h>
 #include <asm/global_data.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/coreboot/timestamp.c b/arch/x86/cpu/coreboot/timestamp.c
index c2072535658a..c7e54de0b2a7 100644
--- a/arch/x86/cpu/coreboot/timestamp.c
+++ b/arch/x86/cpu/coreboot/timestamp.c
@@ -7,10 +7,12 @@
 
 #include <common.h>
 #include <bootstage.h>
+#include <compiler.h>
 #include <asm/arch/timestamp.h>
 #include <asm/arch/sysinfo.h>
 #include <asm/u-boot-x86.h>
 #include <linux/compiler.h>
+#include <linux/types.h>
 
 struct timestamp_entry {
 	uint32_t	entry_id;
diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c
index ff4916431b4c..0c4aec8a5891 100644
--- a/arch/x86/cpu/cpu.c
+++ b/arch/x86/cpu/cpu.c
@@ -21,6 +21,7 @@
 #include <common.h>
 #include <bootstage.h>
 #include <command.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <dm.h>
 #include <errno.h>
@@ -51,6 +52,7 @@
 #include <linux/compiler.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/efi/payload.c b/arch/x86/cpu/efi/payload.c
index 9b87cf02418a..2fc09b095517 100644
--- a/arch/x86/cpu/efi/payload.c
+++ b/arch/x86/cpu/efi/payload.c
@@ -19,6 +19,7 @@
 #include <asm/post.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/efi/sdram.c b/arch/x86/cpu/efi/sdram.c
index af65982fd0c0..dadbb87e5ace 100644
--- a/arch/x86/cpu/efi/sdram.c
+++ b/arch/x86/cpu/efi/sdram.c
@@ -8,6 +8,7 @@
 #include <init.h>
 #include <asm/global_data.h>
 #include <asm/u-boot-x86.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/i386/cpu.c b/arch/x86/cpu/i386/cpu.c
index ddb656f0fda5..6b29644e326a 100644
--- a/arch/x86/cpu/i386/cpu.c
+++ b/arch/x86/cpu/i386/cpu.c
@@ -19,11 +19,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <init.h>
 #include <log.h>
 #include <malloc.h>
 #include <spl.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/control_regs.h>
 #include <asm/coreboot_tables.h>
@@ -36,6 +38,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/i386/interrupt.c b/arch/x86/cpu/i386/interrupt.c
index c7d3570a986b..916d5c606e21 100644
--- a/arch/x86/cpu/i386/interrupt.c
+++ b/arch/x86/cpu/i386/interrupt.c
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <efi_loader.h>
 #include <hang.h>
@@ -27,6 +28,7 @@
 #include <asm/processor-flags.h>
 #include <asm/ptrace.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/intel_common/cpu.c b/arch/x86/cpu/intel_common/cpu.c
index b5d907126af9..0f7129fb87ed 100644
--- a/arch/x86/cpu/intel_common/cpu.c
+++ b/arch/x86/cpu/intel_common/cpu.c
@@ -25,6 +25,7 @@
 #include <asm/post.h>
 #include <asm/microcode.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/intel_common/fast_spi.c b/arch/x86/cpu/intel_common/fast_spi.c
index 5d3944dee2c8..bb5946450194 100644
--- a/arch/x86/cpu/intel_common/fast_spi.c
+++ b/arch/x86/cpu/intel_common/fast_spi.c
@@ -8,6 +8,7 @@
 #include <asm/cpu_common.h>
 #include <asm/fast_spi.h>
 #include <asm/pci.h>
+#include <linux/types.h>
 
 /*
  * Returns bios_start and fills in size of the BIOS region.
diff --git a/arch/x86/cpu/intel_common/itss.c b/arch/x86/cpu/intel_common/itss.c
index 732a4b4c4f43..0c20b5598f5e 100644
--- a/arch/x86/cpu/intel_common/itss.c
+++ b/arch/x86/cpu/intel_common/itss.c
@@ -17,11 +17,13 @@
 #include <malloc.h>
 #include <p2sb.h>
 #include <spl.h>
+#include <stdbool.h>
 #include <asm/global_data.h>
 #include <asm/itss.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 struct itss_platdata {
 #if CONFIG_IS_ENABLED(OF_PLATDATA)
diff --git a/arch/x86/cpu/intel_common/lpc.c b/arch/x86/cpu/intel_common/lpc.c
index 7eaea5c77c82..d6885b683035 100644
--- a/arch/x86/cpu/intel_common/lpc.c
+++ b/arch/x86/cpu/intel_common/lpc.c
@@ -9,6 +9,7 @@
 #include <fdtdec.h>
 #include <pch.h>
 #include <pci.h>
+#include <stdbool.h>
 #include <asm/global_data.h>
 #include <asm/intel_regs.h>
 #include <asm/io.h>
@@ -16,6 +17,7 @@
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/intel_common/microcode.c b/arch/x86/cpu/intel_common/microcode.c
index 157350a89491..aeb23d2941e0 100644
--- a/arch/x86/cpu/intel_common/microcode.c
+++ b/arch/x86/cpu/intel_common/microcode.c
@@ -19,6 +19,7 @@
 #include <asm/msr.h>
 #include <asm/msr-index.h>
 #include <asm/processor.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/intel_common/mrc.c b/arch/x86/cpu/intel_common/mrc.c
index a6e099f6e14b..cf3ac1884e8b 100644
--- a/arch/x86/cpu/intel_common/mrc.c
+++ b/arch/x86/cpu/intel_common/mrc.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <init.h>
 #include <log.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <syscon.h>
 #include <time.h>
@@ -22,6 +23,7 @@
 #include <asm/report_platform.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 static const char *const ecc_decoder[] = {
 	"inactive",
diff --git a/arch/x86/cpu/intel_common/p2sb.c b/arch/x86/cpu/intel_common/p2sb.c
index 53e2f21df965..7a505b29fed7 100644
--- a/arch/x86/cpu/intel_common/p2sb.c
+++ b/arch/x86/cpu/intel_common/p2sb.c
@@ -13,10 +13,12 @@
 #include <log.h>
 #include <p2sb.h>
 #include <spl.h>
+#include <stdbool.h>
 #include <asm/pci.h>
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define PCH_P2SB_E0		0xe0
 #define HIDE_BIT		BIT(0)
diff --git a/arch/x86/cpu/intel_common/pch.c b/arch/x86/cpu/intel_common/pch.c
index af82b64a13c7..c30ba15855b4 100644
--- a/arch/x86/cpu/intel_common/pch.c
+++ b/arch/x86/cpu/intel_common/pch.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <asm/pch_common.h>
+#include <asm/types.h>
 
 u32 pch_common_sir_read(struct udevice *dev, int idx)
 {
diff --git a/arch/x86/cpu/intel_common/report_platform.c b/arch/x86/cpu/intel_common/report_platform.c
index 9502b145490d..28284ff2f7d4 100644
--- a/arch/x86/cpu/intel_common/report_platform.c
+++ b/arch/x86/cpu/intel_common/report_platform.c
@@ -13,6 +13,7 @@
 #include <asm/arch/pch.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 static void report_cpu_info(void)
 {
diff --git a/arch/x86/cpu/ioapic.c b/arch/x86/cpu/ioapic.c
index 4f99de6ece2b..749ab1a22c3b 100644
--- a/arch/x86/cpu/ioapic.c
+++ b/arch/x86/cpu/ioapic.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/ioapic.h>
 #include <asm/lapic.h>
+#include <asm/types.h>
 
 u32 io_apic_read(u32 reg)
 {
diff --git a/arch/x86/cpu/irq.c b/arch/x86/cpu/irq.c
index 920a799ec8e9..6755e8bb89b0 100644
--- a/arch/x86/cpu/irq.c
+++ b/arch/x86/cpu/irq.c
@@ -19,6 +19,7 @@
 #include <asm/pirq_routing.h>
 #include <asm/tables.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/ivybridge/bd82x6x.c b/arch/x86/cpu/ivybridge/bd82x6x.c
index 7df278ddbc43..0bc6f83665a4 100644
--- a/arch/x86/cpu/ivybridge/bd82x6x.c
+++ b/arch/x86/cpu/ivybridge/bd82x6x.c
@@ -24,6 +24,7 @@
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/ivybridge/cpu.c b/arch/x86/cpu/ivybridge/cpu.c
index 209be6877be5..f7f752977273 100644
--- a/arch/x86/cpu/ivybridge/cpu.c
+++ b/arch/x86/cpu/ivybridge/cpu.c
@@ -36,6 +36,7 @@
 #include <asm/arch/pch.h>
 #include <asm/arch/sandybridge.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/ivybridge/early_me.c b/arch/x86/cpu/ivybridge/early_me.c
index 9758c9a653dc..143a0cda4163 100644
--- a/arch/x86/cpu/ivybridge/early_me.c
+++ b/arch/x86/cpu/ivybridge/early_me.c
@@ -19,6 +19,7 @@
 #include <asm/io.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 static const char *const me_ack_values[] = {
 	[ME_HFS_ACK_NO_DID]	= "No DID Ack received",
diff --git a/arch/x86/cpu/ivybridge/lpc.c b/arch/x86/cpu/ivybridge/lpc.c
index 57c844359822..a901a21456fc 100644
--- a/arch/x86/cpu/ivybridge/lpc.c
+++ b/arch/x86/cpu/ivybridge/lpc.c
@@ -23,6 +23,7 @@
 #include <asm/arch/pch.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/ivybridge/model_206ax.c b/arch/x86/cpu/ivybridge/model_206ax.c
index 087754a1dd99..e4313a1811f6 100644
--- a/arch/x86/cpu/ivybridge/model_206ax.c
+++ b/arch/x86/cpu/ivybridge/model_206ax.c
@@ -12,6 +12,7 @@
 #include <fdtdec.h>
 #include <log.h>
 #include <malloc.h>
+#include <stdbool.h>
 #include <asm/cpu.h>
 #include <asm/cpu_common.h>
 #include <asm/cpu_x86.h>
@@ -25,6 +26,7 @@
 #include <asm/arch/model_206ax.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/ivybridge/northbridge.c b/arch/x86/cpu/ivybridge/northbridge.c
index 994f8a4ff6a5..a0c4b29b664e 100644
--- a/arch/x86/cpu/ivybridge/northbridge.c
+++ b/arch/x86/cpu/ivybridge/northbridge.c
@@ -19,6 +19,7 @@
 #include <asm/arch/pch.h>
 #include <asm/arch/model_206ax.h>
 #include <asm/arch/sandybridge.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/x86/cpu/ivybridge/sata.c b/arch/x86/cpu/ivybridge/sata.c
index 40cb04158681..b74f7a796d71 100644
--- a/arch/x86/cpu/ivybridge/sata.c
+++ b/arch/x86/cpu/ivybridge/sata.c
@@ -15,6 +15,7 @@
 #include <asm/pci.h>
 #include <asm/arch/pch.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/ivybridge/sdram.c b/arch/x86/cpu/ivybridge/sdram.c
index 4c1ec37c6005..4ed7db12b1ff 100644
--- a/arch/x86/cpu/ivybridge/sdram.c
+++ b/arch/x86/cpu/ivybridge/sdram.c
@@ -40,6 +40,7 @@
 #include <asm/arch/sandybridge.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/mp_init.c b/arch/x86/cpu/mp_init.c
index 7bf3935ba94a..7225c3392bb2 100644
--- a/arch/x86/cpu/mp_init.c
+++ b/arch/x86/cpu/mp_init.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu.h>
 #include <dm.h>
 #include <errno.h>
@@ -35,6 +36,7 @@
 #include <linux/kernel.h>
 #include <linux/linkage.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/mtrr.c b/arch/x86/cpu/mtrr.c
index da1f08eff819..cbc289888dca 100644
--- a/arch/x86/cpu/mtrr.c
+++ b/arch/x86/cpu/mtrr.c
@@ -27,6 +27,7 @@
 #include <asm/msr.h>
 #include <asm/mtrr.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/pci.c b/arch/x86/cpu/pci.c
index d4f9290ca73b..04877094ad12 100644
--- a/arch/x86/cpu/pci.c
+++ b/arch/x86/cpu/pci.c
@@ -16,6 +16,7 @@
 #include <pci.h>
 #include <asm/io.h>
 #include <asm/pci.h>
+#include <linux/types.h>
 
 int pci_x86_read_config(pci_dev_t bdf, uint offset, ulong *valuep,
 			enum pci_size_t size)
diff --git a/arch/x86/cpu/qemu/dram.c b/arch/x86/cpu/qemu/dram.c
index c1745501294c..3a29de6cc31d 100644
--- a/arch/x86/cpu/qemu/dram.c
+++ b/arch/x86/cpu/qemu/dram.c
@@ -8,6 +8,7 @@
 #include <asm/global_data.h>
 #include <asm/post.h>
 #include <asm/arch/qemu.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/qemu/qemu.c b/arch/x86/cpu/qemu/qemu.c
index 5e431f21976d..786906dee5b8 100644
--- a/arch/x86/cpu/qemu/qemu.c
+++ b/arch/x86/cpu/qemu/qemu.c
@@ -14,6 +14,7 @@
 #include <asm/processor.h>
 #include <asm/arch/device.h>
 #include <asm/arch/qemu.h>
+#include <linux/types.h>
 
 static bool i440fx;
 
diff --git a/arch/x86/cpu/quark/acpi.c b/arch/x86/cpu/quark/acpi.c
index 655f2a1ce6ac..013b1d943b1a 100644
--- a/arch/x86/cpu/quark/acpi.c
+++ b/arch/x86/cpu/quark/acpi.c
@@ -9,6 +9,7 @@
 #include <asm/tables.h>
 #include <asm/arch/global_nvs.h>
 #include <asm/arch/iomap.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 void acpi_create_fadt(struct acpi_fadt *fadt, struct acpi_facs *facs,
diff --git a/arch/x86/cpu/quark/dram.c b/arch/x86/cpu/quark/dram.c
index e2a36ceffd41..2feb0e894365 100644
--- a/arch/x86/cpu/quark/dram.c
+++ b/arch/x86/cpu/quark/dram.c
@@ -20,6 +20,7 @@
 #include <asm/arch/quark.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/quark/hte.c b/arch/x86/cpu/quark/hte.c
index df14779357d5..489208d0b9bb 100644
--- a/arch/x86/cpu/quark/hte.c
+++ b/arch/x86/cpu/quark/hte.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <asm/arch/mrc.h>
 #include <asm/arch/msg_port.h>
+#include <asm/types.h>
 #include "mrc_util.h"
 #include "hte.h"
 
diff --git a/arch/x86/cpu/quark/hte.h b/arch/x86/cpu/quark/hte.h
index b4ea488f30f3..322b556c22c1 100644
--- a/arch/x86/cpu/quark/hte.h
+++ b/arch/x86/cpu/quark/hte.h
@@ -10,6 +10,7 @@
 #ifndef _HTE_H_
 #define _HTE_H_
 
+#include <asm/types.h>
 enum {
 	MRC_MEM_INIT,
 	MRC_MEM_TEST
diff --git a/arch/x86/cpu/quark/mrc.c b/arch/x86/cpu/quark/mrc.c
index 7e8f31fb6b7c..7a7d69a6a114 100644
--- a/arch/x86/cpu/quark/mrc.c
+++ b/arch/x86/cpu/quark/mrc.c
@@ -12,6 +12,7 @@
  *
  * These functions are generic and should work for any Quark-based board.
  *
+#include <linux/types.h>
  * MRC requires two data structures to be passed in which are initialized by
  * mrc_adjust_params().
  *
diff --git a/arch/x86/cpu/quark/mrc_util.c b/arch/x86/cpu/quark/mrc_util.c
index 50fcd977bb41..bc19718ef72f 100644
--- a/arch/x86/cpu/quark/mrc_util.c
+++ b/arch/x86/cpu/quark/mrc_util.c
@@ -15,6 +15,7 @@
 #include <asm/arch/mrc.h>
 #include <asm/arch/msg_port.h>
 #include <asm/arch/quark.h>
+#include <linux/types.h>
 #include "mrc_util.h"
 #include "hte.h"
 #include "smc.h"
diff --git a/arch/x86/cpu/quark/mrc_util.h b/arch/x86/cpu/quark/mrc_util.h
index f4e3e87b6c37..89d2f6351fd2 100644
--- a/arch/x86/cpu/quark/mrc_util.h
+++ b/arch/x86/cpu/quark/mrc_util.h
@@ -12,6 +12,7 @@
 
 #include <log.h>
 #include <stdbool.h>
+#include <linux/types.h>
 
 /* Turn on this macro to enable MRC debugging output */
 #undef  MRC_DEBUG
diff --git a/arch/x86/cpu/quark/msg_port.c b/arch/x86/cpu/quark/msg_port.c
index d4f8c082ffc2..f270eb7bb83f 100644
--- a/arch/x86/cpu/quark/msg_port.c
+++ b/arch/x86/cpu/quark/msg_port.c
@@ -7,6 +7,7 @@
 #include <asm/arch/device.h>
 #include <asm/arch/msg_port.h>
 #include <asm/arch/quark.h>
+#include <asm/types.h>
 
 void msg_port_setup(int op, int port, int reg)
 {
diff --git a/arch/x86/cpu/quark/quark.c b/arch/x86/cpu/quark/quark.c
index 30b4711b9a59..2099cb1a17e5 100644
--- a/arch/x86/cpu/quark/quark.c
+++ b/arch/x86/cpu/quark/quark.c
@@ -18,6 +18,7 @@
 #include <asm/arch/device.h>
 #include <asm/arch/msg_port.h>
 #include <asm/arch/quark.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 static void quark_setup_mtrr(void)
diff --git a/arch/x86/cpu/quark/smc.c b/arch/x86/cpu/quark/smc.c
index c95c09a67bad..2e27463c3cb1 100644
--- a/arch/x86/cpu/quark/smc.c
+++ b/arch/x86/cpu/quark/smc.c
@@ -15,6 +15,7 @@
 #include <asm/arch/mrc.h>
 #include <asm/arch/msg_port.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "mrc_util.h"
 #include "hte.h"
 #include "smc.h"
diff --git a/arch/x86/cpu/quark/smc.h b/arch/x86/cpu/quark/smc.h
index eee27564c877..5c4917ee0b49 100644
--- a/arch/x86/cpu/quark/smc.h
+++ b/arch/x86/cpu/quark/smc.h
@@ -13,6 +13,7 @@
 /* System Memory Controller Register Defines */
 
 /* Memory Controller Message Bus Registers Offsets */
+#include <linux/types.h>
 #define DRP			0x00
 #define DTR0			0x01
 #define DTR1			0x02
diff --git a/arch/x86/cpu/queensbay/tnc.c b/arch/x86/cpu/queensbay/tnc.c
index 782ed863fe7c..a5a963f0b76f 100644
--- a/arch/x86/cpu/queensbay/tnc.c
+++ b/arch/x86/cpu/queensbay/tnc.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <init.h>
+#include <asm/types.h>
 #include <dm/device-internal.h>
 #include <pci.h>
 #include <asm/io.h>
diff --git a/arch/x86/cpu/slimbootloader/sdram.c b/arch/x86/cpu/slimbootloader/sdram.c
index 2c7be397adbb..ac73ef43b9b0 100644
--- a/arch/x86/cpu/slimbootloader/sdram.c
+++ b/arch/x86/cpu/slimbootloader/sdram.c
@@ -11,6 +11,7 @@
 #include <linux/sizes.h>
 #include <asm/e820.h>
 #include <asm/arch/slimbootloader.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/cpu/tangier/acpi.c b/arch/x86/cpu/tangier/acpi.c
index 8aa5efdcab9c..404c891de63c 100644
--- a/arch/x86/cpu/tangier/acpi.c
+++ b/arch/x86/cpu/tangier/acpi.c
@@ -15,6 +15,7 @@
 #include <asm/tables.h>
 #include <asm/arch/global_nvs.h>
 #include <asm/arch/iomap.h>
+#include <asm/types.h>
 #include <dm/uclass-internal.h>
 #include <linux/string.h>
 
diff --git a/arch/x86/cpu/tangier/pinmux.c b/arch/x86/cpu/tangier/pinmux.c
index 41ad198a0609..42c682788203 100644
--- a/arch/x86/cpu/tangier/pinmux.c
+++ b/arch/x86/cpu/tangier/pinmux.c
@@ -4,8 +4,10 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <log.h>
+#include <stdbool.h>
 #include <dm/pinctrl.h>
 #include <dm/read.h>
 #include <regmap.h>
@@ -16,6 +18,7 @@
 #include <linux/io.h>
 #include <linux/kernel.h>
 #include <linux/printk.h>
+#include <linux/types.h>
 
 #define BUFCFG_OFFSET				0x100
 
diff --git a/arch/x86/cpu/tangier/sdram.c b/arch/x86/cpu/tangier/sdram.c
index a8760263cf4b..0553c9033a0d 100644
--- a/arch/x86/cpu/tangier/sdram.c
+++ b/arch/x86/cpu/tangier/sdram.c
@@ -9,6 +9,7 @@
 #include <asm/e820.h>
 #include <asm/global_data.h>
 #include <asm/sfi.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/printk.h>
 #include <linux/string.h>
diff --git a/arch/x86/include/asm/acpi_nhlt.h b/arch/x86/include/asm/acpi_nhlt.h
index 47203213818f..cf28370aa16c 100644
--- a/arch/x86/include/asm/acpi_nhlt.h
+++ b/arch/x86/include/asm/acpi_nhlt.h
@@ -8,6 +8,7 @@
 #ifndef _NHLT_H_
 #define _NHLT_H_
 
+#include <linux/types.h>
 struct acpi_ctx;
 struct nhlt;
 struct nhlt_endpoint;
diff --git a/arch/x86/include/asm/acpi_table.h b/arch/x86/include/asm/acpi_table.h
index 733085c17851..199d7314060b 100644
--- a/arch/x86/include/asm/acpi_table.h
+++ b/arch/x86/include/asm/acpi_table.h
@@ -9,6 +9,7 @@
 #ifndef __ASM_ACPI_TABLE_H__
 #define __ASM_ACPI_TABLE_H__
 
+#include <linux/types.h>
 struct acpi_facs;
 struct acpi_fadt;
 struct acpi_global_nvs;
diff --git a/arch/x86/include/asm/arch-apollolake/fsp/fsp_m_upd.h b/arch/x86/include/asm/arch-apollolake/fsp/fsp_m_upd.h
index 78c338e9ffa9..c7d2b4aa6323 100644
--- a/arch/x86/include/asm/arch-apollolake/fsp/fsp_m_upd.h
+++ b/arch/x86/include/asm/arch-apollolake/fsp/fsp_m_upd.h
@@ -8,7 +8,9 @@
 #define	__ASM_ARCH_FSP_M_UDP_H
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
 #include <asm/fsp2/fsp_api.h>
+#include <asm/types.h>
 
 #define FSP_DRAM_CHANNELS	4
 
diff --git a/arch/x86/include/asm/arch-apollolake/fsp/fsp_s_upd.h b/arch/x86/include/asm/arch-apollolake/fsp/fsp_s_upd.h
index be80f5db09a9..aadfcb3687fa 100644
--- a/arch/x86/include/asm/arch-apollolake/fsp/fsp_s_upd.h
+++ b/arch/x86/include/asm/arch-apollolake/fsp/fsp_s_upd.h
@@ -7,7 +7,9 @@
 #define __ASM_ARCH_FSP_S_UDP_H
 
 #ifndef __ASSEMBLY__
+#include <compiler.h>
 #include <asm/fsp2/fsp_api.h>
+#include <asm/types.h>
 
 /**
  * struct fsp_s_config - FSP-S configuration
diff --git a/arch/x86/include/asm/arch-apollolake/fsp_bindings.h b/arch/x86/include/asm/arch-apollolake/fsp_bindings.h
index 7a3060d4b46d..9c298a58fd9c 100644
--- a/arch/x86/include/asm/arch-apollolake/fsp_bindings.h
+++ b/arch/x86/include/asm/arch-apollolake/fsp_bindings.h
@@ -10,6 +10,7 @@
 #include <asm/arch/fsp/fsp_m_upd.h>
 #include <asm/arch/fsp/fsp_s_upd.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define ARRAY_SIZE_OF_MEMBER(s, m) (ARRAY_SIZE((((s *)0)->m)))
 #define SIZE_OF_MEMBER(s, m) (sizeof((((s *)0)->m)))
diff --git a/arch/x86/include/asm/arch-apollolake/global_nvs.h b/arch/x86/include/asm/arch-apollolake/global_nvs.h
index fe62194b02ee..917d34621b9d 100644
--- a/arch/x86/include/asm/arch-apollolake/global_nvs.h
+++ b/arch/x86/include/asm/arch-apollolake/global_nvs.h
@@ -10,6 +10,8 @@
 #ifndef _GLOBAL_NVS_H_
 #define _GLOBAL_NVS_H_
 
+#include <compiler.h>
+#include <asm/types.h>
 struct __packed acpi_global_nvs {
 	/* Miscellaneous */
 	u8	pcnt; /* 0x00 - Processor Count */
diff --git a/arch/x86/include/asm/arch-apollolake/lpc.h b/arch/x86/include/asm/arch-apollolake/lpc.h
index 977b7eccd884..c22e6903b8ee 100644
--- a/arch/x86/include/asm/arch-apollolake/lpc.h
+++ b/arch/x86/include/asm/arch-apollolake/lpc.h
@@ -8,6 +8,7 @@
 #define _ASM_ARCH_LPC_H
 
 #include <linux/bitops.h>
+#include <linux/types.h>
 #define LPC_SERIRQ_CTL			0x64
 #define  LPC_SCNT_EN			BIT(7)
 #define  LPC_SCNT_MODE			BIT(6)
diff --git a/arch/x86/include/asm/arch-apollolake/uart.h b/arch/x86/include/asm/arch-apollolake/uart.h
index d4fffe6525c7..35e5d24b6f3c 100644
--- a/arch/x86/include/asm/arch-apollolake/uart.h
+++ b/arch/x86/include/asm/arch-apollolake/uart.h
@@ -15,6 +15,7 @@
  * The UART won't actually work unless the GPIO settings are correct and the
  * signals actually exit the SoC. See board_debug_uart_init() for that.
  */
+#include <linux/types.h>
 int apl_uart_init(pci_dev_t bdf, ulong base);
 
 #endif
diff --git a/arch/x86/include/asm/arch-baytrail/fsp/fsp_vpd.h b/arch/x86/include/asm/arch-baytrail/fsp/fsp_vpd.h
index c6544ea409ca..b561fb38e938 100644
--- a/arch/x86/include/asm/arch-baytrail/fsp/fsp_vpd.h
+++ b/arch/x86/include/asm/arch-baytrail/fsp/fsp_vpd.h
@@ -7,6 +7,8 @@
 #ifndef __FSP_VPD_H
 #define __FSP_VPD_H
 
+#include <compiler.h>
+#include <linux/types.h>
 struct memory_down_data {
 	uint8_t enable_memory_down;
 	uint8_t dram_speed;
diff --git a/arch/x86/include/asm/arch-baytrail/global_nvs.h b/arch/x86/include/asm/arch-baytrail/global_nvs.h
index 1072e3ddf40d..777591b72c2b 100644
--- a/arch/x86/include/asm/arch-baytrail/global_nvs.h
+++ b/arch/x86/include/asm/arch-baytrail/global_nvs.h
@@ -6,6 +6,8 @@
 #ifndef _GLOBAL_NVS_H_
 #define _GLOBAL_NVS_H_
 
+#include <compiler.h>
+#include <asm/types.h>
 struct __packed acpi_global_nvs {
 	u8	pcnt;		/* processor count */
 	u8	iuart_en;	/* internal UART enabled */
diff --git a/arch/x86/include/asm/arch-braswell/fsp/fsp_vpd.h b/arch/x86/include/asm/arch-braswell/fsp/fsp_vpd.h
index f2260ae90e88..eec075154d1b 100644
--- a/arch/x86/include/asm/arch-braswell/fsp/fsp_vpd.h
+++ b/arch/x86/include/asm/arch-braswell/fsp/fsp_vpd.h
@@ -7,7 +7,9 @@
 #ifndef __FSP_VPD_H__
 #define __FSP_VPD_H__
 
+#include <compiler.h>
 #include <stddef.h>
+#include <asm/types.h>
 
 struct __packed memory_upd {
 	u64 signature;				/* Offset 0x0020 */
diff --git a/arch/x86/include/asm/arch-broadwell/gpio.h b/arch/x86/include/asm/arch-broadwell/gpio.h
index b5dd5ab4e7f8..33cb942bcc81 100644
--- a/arch/x86/include/asm/arch-broadwell/gpio.h
+++ b/arch/x86/include/asm/arch-broadwell/gpio.h
@@ -9,6 +9,7 @@
 #define __ASM_ARCH_GPIO
 
 #include <linux/kernel.h>
+#include <linux/types.h>
 #define GPIO_PER_BANK	32
 #define GPIO_BANKS	3
 
diff --git a/arch/x86/include/asm/arch-broadwell/me.h b/arch/x86/include/asm/arch-broadwell/me.h
index 58f16ba54c57..ceaa0f2bd311 100644
--- a/arch/x86/include/asm/arch-broadwell/me.h
+++ b/arch/x86/include/asm/arch-broadwell/me.h
@@ -8,7 +8,9 @@
 #ifndef _asm_arch_me_h
 #define _asm_arch_me_h
 
+#include <compiler.h>
 #include <asm/me_common.h>
+#include <asm/types.h>
 
 #define  ME_INIT_STATUS_SUCCESS_OTHER 3 /* SEE ME9 BWG */
 
diff --git a/arch/x86/include/asm/arch-broadwell/pch.h b/arch/x86/include/asm/arch-broadwell/pch.h
index 6b6f10ec6c86..9e991c35cc68 100644
--- a/arch/x86/include/asm/arch-broadwell/pch.h
+++ b/arch/x86/include/asm/arch-broadwell/pch.h
@@ -7,6 +7,7 @@
 #define __ASM_ARCH_PCH_H
 
 #include <stdbool.h>
+#include <asm/types.h>
 
 #define PMBASE			0x40
 #define ACPI_CNTL		0x44
diff --git a/arch/x86/include/asm/arch-broadwell/pei_data.h b/arch/x86/include/asm/arch-broadwell/pei_data.h
index 4442beac5e44..5eee0502bbab 100644
--- a/arch/x86/include/asm/arch-broadwell/pei_data.h
+++ b/arch/x86/include/asm/arch-broadwell/pei_data.h
@@ -8,7 +8,9 @@
 #ifndef ASM_ARCH_PEI_DATA_H
 #define ASM_ARCH_PEI_DATA_H
 
+#include <compiler.h>
 #include <linux/linkage.h>
+#include <linux/types.h>
 
 #define PEI_VERSION 22
 
diff --git a/arch/x86/include/asm/arch-broadwell/pm.h b/arch/x86/include/asm/arch-broadwell/pm.h
index df350808379a..6a14ebecaae7 100644
--- a/arch/x86/include/asm/arch-broadwell/pm.h
+++ b/arch/x86/include/asm/arch-broadwell/pm.h
@@ -8,6 +8,7 @@
 #ifndef __ASM_ARCH_PM_H
 #define __ASM_ARCH_PM_H
 
+#include <linux/types.h>
 #define PM1_STS			0x00
 #define  WAK_STS		(1 << 15)
 #define  PCIEXPWAK_STS		(1 << 14)
diff --git a/arch/x86/include/asm/arch-coreboot/sysinfo.h b/arch/x86/include/asm/arch-coreboot/sysinfo.h
index 419ec5293350..f9096ba7c18d 100644
--- a/arch/x86/include/asm/arch-coreboot/sysinfo.h
+++ b/arch/x86/include/asm/arch-coreboot/sysinfo.h
@@ -9,6 +9,7 @@
 #define _COREBOOT_SYSINFO_H
 
 #include <asm/coreboot_tables.h>
+#include <asm/types.h>
 
 /* Maximum number of memory range definitions */
 #define SYSINFO_MAX_MEM_RANGES	32
diff --git a/arch/x86/include/asm/arch-coreboot/timestamp.h b/arch/x86/include/asm/arch-coreboot/timestamp.h
index 85d42c02c46a..d6db2ea0e5db 100644
--- a/arch/x86/include/asm/arch-coreboot/timestamp.h
+++ b/arch/x86/include/asm/arch-coreboot/timestamp.h
@@ -8,6 +8,7 @@
 #ifndef __COREBOOT_TIMESTAMP_H__
 #define __COREBOOT_TIMESTAMP_H__
 
+#include <linux/types.h>
 enum timestamp_id {
 	/* coreboot specific timestamp IDs */
 	TS_START_ROMSTAGE = 1,
diff --git a/arch/x86/include/asm/arch-ivybridge/fsp/fsp_configs.h b/arch/x86/include/asm/arch-ivybridge/fsp/fsp_configs.h
index ae9105b6ef16..2c290b5d293e 100644
--- a/arch/x86/include/asm/arch-ivybridge/fsp/fsp_configs.h
+++ b/arch/x86/include/asm/arch-ivybridge/fsp/fsp_configs.h
@@ -6,6 +6,7 @@
 #ifndef __FSP_CONFIGS_H__
 #define __FSP_CONFIGS_H__
 
+#include <asm/types.h>
 struct platform_config {
 	u8 enable_ht;
 	u8 enable_turbo;
diff --git a/arch/x86/include/asm/arch-ivybridge/me.h b/arch/x86/include/asm/arch-ivybridge/me.h
index 518c308d59b6..c832b0293046 100644
--- a/arch/x86/include/asm/arch-ivybridge/me.h
+++ b/arch/x86/include/asm/arch-ivybridge/me.h
@@ -8,7 +8,9 @@
 #ifndef _ASM_INTEL_ME_H
 #define _ASM_INTEL_ME_H
 
+#include <compiler.h>
 #include <asm/me_common.h>
+#include <asm/types.h>
 
 struct __packed mbp_fw_version_name {
 	u32 major_version:16;
diff --git a/arch/x86/include/asm/arch-ivybridge/model_206ax.h b/arch/x86/include/asm/arch-ivybridge/model_206ax.h
index d2d28746974f..3df4b37bb58d 100644
--- a/arch/x86/include/asm/arch-ivybridge/model_206ax.h
+++ b/arch/x86/include/asm/arch-ivybridge/model_206ax.h
@@ -9,6 +9,7 @@
 #define _ASM_ARCH_MODEL_206AX_H
 
 #include <stdbool.h>
+#include <asm/types.h>
 #define  CPUID_VMX			(1 << 5)
 #define  CPUID_SMX			(1 << 6)
 #define MSR_FEATURE_CONFIG		0x13c
diff --git a/arch/x86/include/asm/arch-ivybridge/pch.h b/arch/x86/include/asm/arch-ivybridge/pch.h
index 8018bc097d0c..8630ec581e1f 100644
--- a/arch/x86/include/asm/arch-ivybridge/pch.h
+++ b/arch/x86/include/asm/arch-ivybridge/pch.h
@@ -12,6 +12,7 @@
 #define _ASM_ARCH_PCH_H
 
 #include <pci.h>
+#include <asm/types.h>
 
 /* PCH types */
 #define PCH_TYPE_CPT	0x1c /* CougarPoint */
diff --git a/arch/x86/include/asm/arch-ivybridge/pei_data.h b/arch/x86/include/asm/arch-ivybridge/pei_data.h
index b8da21bed7bf..6b7fd6ce4607 100644
--- a/arch/x86/include/asm/arch-ivybridge/pei_data.h
+++ b/arch/x86/include/asm/arch-ivybridge/pei_data.h
@@ -6,7 +6,9 @@
 #ifndef ASM_ARCH_PEI_DATA_H
 #define ASM_ARCH_PEI_DATA_H
 
+#include <compiler.h>
 #include <linux/linkage.h>
+#include <linux/types.h>
 
 struct pch_usb3_controller_settings {
 	/* 0: Disable, 1: Enable, 2: Auto, 3: Smart Auto */
diff --git a/arch/x86/include/asm/arch-qemu/qemu.h b/arch/x86/include/asm/arch-qemu/qemu.h
index 061735b29858..8b0df2998b0b 100644
--- a/arch/x86/include/asm/arch-qemu/qemu.h
+++ b/arch/x86/include/asm/arch-qemu/qemu.h
@@ -7,6 +7,7 @@
 #define _ARCH_QEMU_H_
 
 /* Programmable Attribute Map (PAM) Registers */
+#include <asm/types.h>
 #define I440FX_PAM		0x59
 #define Q35_PAM			0x90
 #define PAM_NUM			7
diff --git a/arch/x86/include/asm/arch-quark/global_nvs.h b/arch/x86/include/asm/arch-quark/global_nvs.h
index 6e99e6737dd3..45c35dcaadea 100644
--- a/arch/x86/include/asm/arch-quark/global_nvs.h
+++ b/arch/x86/include/asm/arch-quark/global_nvs.h
@@ -6,6 +6,8 @@
 #ifndef _GLOBAL_NVS_H_
 #define _GLOBAL_NVS_H_
 
+#include <compiler.h>
+#include <asm/types.h>
 struct __packed acpi_global_nvs {
 	u8	pcnt;		/* processor count */
 
diff --git a/arch/x86/include/asm/arch-quark/mrc.h b/arch/x86/include/asm/arch-quark/mrc.h
index 2353426cd6d2..e817dba55c64 100644
--- a/arch/x86/include/asm/arch-quark/mrc.h
+++ b/arch/x86/include/asm/arch-quark/mrc.h
@@ -10,6 +10,7 @@
 #ifndef _MRC_H_
 #define _MRC_H_
 
+#include <linux/types.h>
 #define MRC_VERSION	0x0111
 
 /* architectural definitions */
diff --git a/arch/x86/include/asm/arch-quark/msg_port.h b/arch/x86/include/asm/arch-quark/msg_port.h
index 9527fdad3fd4..093e8c7a14aa 100644
--- a/arch/x86/include/asm/arch-quark/msg_port.h
+++ b/arch/x86/include/asm/arch-quark/msg_port.h
@@ -41,6 +41,7 @@
  * @port:   port number on the message bus
  * @reg:    register number within a port
  */
+#include <asm/types.h>
 void msg_port_setup(int op, int port, int reg);
 
 /**
diff --git a/arch/x86/include/asm/arch-quark/quark.h b/arch/x86/include/asm/arch-quark/quark.h
index feca1983ba89..7a42db59b1a7 100644
--- a/arch/x86/include/asm/arch-quark/quark.h
+++ b/arch/x86/include/asm/arch-quark/quark.h
@@ -72,6 +72,7 @@
 #ifndef __ASSEMBLY__
 
 /* variable range MTRR usage */
+#include <asm/types.h>
 enum {
 	MTRR_VAR_ROM,
 	MTRR_VAR_ESRAM,
diff --git a/arch/x86/include/asm/arch-queensbay/fsp/fsp_vpd.h b/arch/x86/include/asm/arch-queensbay/fsp/fsp_vpd.h
index 7572fc7e40fd..fe793efce940 100644
--- a/arch/x86/include/asm/arch-queensbay/fsp/fsp_vpd.h
+++ b/arch/x86/include/asm/arch-queensbay/fsp/fsp_vpd.h
@@ -9,6 +9,8 @@
 #ifndef __VPDHEADER_H__
 #define __VPDHEADER_H__
 
+#include <compiler.h>
+#include <asm/types.h>
 struct __packed upd_region {
 	u64	sign;			/* Offset 0x0000 */
 	u64	reserved;		/* Offset 0x0008 */
diff --git a/arch/x86/include/asm/arch-queensbay/tnc.h b/arch/x86/include/asm/arch-queensbay/tnc.h
index 8d151509ab97..70d810959a75 100644
--- a/arch/x86/include/asm/arch-queensbay/tnc.h
+++ b/arch/x86/include/asm/arch-queensbay/tnc.h
@@ -7,6 +7,7 @@
 #define _X86_ARCH_TNC_H_
 
 /* IGD Function Disable Register */
+#include <asm/types.h>
 #define IGD_FD		0xc4
 #define FUNC_DISABLE	0x00000001
 
diff --git a/arch/x86/include/asm/arch-slimbootloader/slimbootloader.h b/arch/x86/include/asm/arch-slimbootloader/slimbootloader.h
index 05dd1b2b4471..05c683445eca 100644
--- a/arch/x86/include/asm/arch-slimbootloader/slimbootloader.h
+++ b/arch/x86/include/asm/arch-slimbootloader/slimbootloader.h
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <asm/hob.h>
+#include <asm/types.h>
 
 /**
  * A GUID to get MemoryMap info hob which is provided by Slim Bootloader
diff --git a/arch/x86/include/asm/arch-tangier/global_nvs.h b/arch/x86/include/asm/arch-tangier/global_nvs.h
index a7811a331a1c..31794b9d3c1b 100644
--- a/arch/x86/include/asm/arch-tangier/global_nvs.h
+++ b/arch/x86/include/asm/arch-tangier/global_nvs.h
@@ -8,6 +8,8 @@
 #ifndef _GLOBAL_NVS_H_
 #define _GLOBAL_NVS_H_
 
+#include <compiler.h>
+#include <asm/types.h>
 struct __packed acpi_global_nvs {
 	u8	pcnt;		/* processor count */
 
diff --git a/arch/x86/include/asm/bootm.h b/arch/x86/include/asm/bootm.h
index 231d11340caf..61e66b51db6f 100644
--- a/arch/x86/include/asm/bootm.h
+++ b/arch/x86/include/asm/bootm.h
@@ -7,6 +7,7 @@
 #define ARM_BOOTM_H
 
 #include <stdbool.h>
+#include <linux/types.h>
 void bootm_announce_and_cleanup(void);
 
 /**
diff --git a/arch/x86/include/asm/coreboot_tables.h b/arch/x86/include/asm/coreboot_tables.h
index 7e1576768bee..5db5f8d00c5d 100644
--- a/arch/x86/include/asm/coreboot_tables.h
+++ b/arch/x86/include/asm/coreboot_tables.h
@@ -8,6 +8,8 @@
 #ifndef _COREBOOT_TABLES_H
 #define _COREBOOT_TABLES_H
 
+#include <compiler.h>
+#include <linux/types.h>
 struct memory_area;
 
 struct cbuint64 {
diff --git a/arch/x86/include/asm/cpu.h b/arch/x86/include/asm/cpu.h
index 21a05dab7de8..a0ecce304cfb 100644
--- a/arch/x86/include/asm/cpu.h
+++ b/arch/x86/include/asm/cpu.h
@@ -10,6 +10,7 @@
 #ifndef _ASM_CPU_H
 #define _ASM_CPU_H
 
+#include <linux/types.h>
 enum {
 	X86_VENDOR_INVALID = 0,
 	X86_VENDOR_INTEL,
diff --git a/arch/x86/include/asm/cpu_common.h b/arch/x86/include/asm/cpu_common.h
index 67d150b8d915..526d3fbcbab0 100644
--- a/arch/x86/include/asm/cpu_common.h
+++ b/arch/x86/include/asm/cpu_common.h
@@ -9,6 +9,7 @@
 #define __ASM_CPU_COMMON_H
 
 #include <stdbool.h>
+#include <linux/types.h>
 
 /* Standard Intel bus clock is fixed at 100MHz */
 enum {
diff --git a/arch/x86/include/asm/early_cmos.h b/arch/x86/include/asm/early_cmos.h
index 543a9e69f03a..42dca5a0787f 100644
--- a/arch/x86/include/asm/early_cmos.h
+++ b/arch/x86/include/asm/early_cmos.h
@@ -7,6 +7,7 @@
 #define __EARLY_CMOS_H
 
 /* CMOS actually resides in the RTC SRAM */
+#include <asm/types.h>
 #define CMOS_IO_PORT	0x70
 
 /**
diff --git a/arch/x86/include/asm/fast_spi.h b/arch/x86/include/asm/fast_spi.h
index ed436a891135..0a059bf0b1eb 100644
--- a/arch/x86/include/asm/fast_spi.h
+++ b/arch/x86/include/asm/fast_spi.h
@@ -9,6 +9,7 @@
 #include <pci.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 /* Register offsets from the MMIO region base (PCI_BASE_ADDRESS_0) */
 struct fast_spi_regs {
diff --git a/arch/x86/include/asm/fsp/fsp_api.h b/arch/x86/include/asm/fsp/fsp_api.h
index 4941e2d74f09..1a0d3f8ffa58 100644
--- a/arch/x86/include/asm/fsp/fsp_api.h
+++ b/arch/x86/include/asm/fsp/fsp_api.h
@@ -6,6 +6,7 @@
 #ifndef __ASM_FSP_API_H
 #define __ASM_FSP_API_H
 
+#include <asm/types.h>
 #include <linux/linkage.h>
 
 enum fsp_phase {
diff --git a/arch/x86/include/asm/fsp/fsp_azalia.h b/arch/x86/include/asm/fsp/fsp_azalia.h
index e59180bdae20..9b71c79f7b52 100644
--- a/arch/x86/include/asm/fsp/fsp_azalia.h
+++ b/arch/x86/include/asm/fsp/fsp_azalia.h
@@ -7,6 +7,8 @@
 #ifndef _FSP_AZALIA_H_
 #define _FSP_AZALIA_H_
 
+#include <compiler.h>
+#include <asm/types.h>
 struct __packed azalia_verb_table_header {
 	u32 vendor_device_id;
 	u16 sub_system_id;
diff --git a/arch/x86/include/asm/fsp/fsp_fv.h b/arch/x86/include/asm/fsp/fsp_fv.h
index 7492c87c34ab..862627f137f4 100644
--- a/arch/x86/include/asm/fsp/fsp_fv.h
+++ b/arch/x86/include/asm/fsp/fsp_fv.h
@@ -8,6 +8,7 @@
 #define __FSP_FV___
 
 #include <efi.h>
+#include <asm/types.h>
 
 /* Value of EFI_FV_FILE_ATTRIBUTES */
 #define EFI_FV_FILE_ATTR_ALIGNMENT	0x0000001F
diff --git a/arch/x86/include/asm/fsp/fsp_hob.h b/arch/x86/include/asm/fsp/fsp_hob.h
index d248520e9726..d2eeecf2e39b 100644
--- a/arch/x86/include/asm/fsp/fsp_hob.h
+++ b/arch/x86/include/asm/fsp/fsp_hob.h
@@ -7,7 +7,9 @@
 #ifndef __FSP_HOB_H__
 #define __FSP_HOB_H__
 
+#include <compiler.h>
 #include <asm/hob.h>
+#include <asm/types.h>
 
 enum pixel_format {
 	pixel_rgbx_8bpc,	/* RGB 8 bit per color */
diff --git a/arch/x86/include/asm/fsp/fsp_infoheader.h b/arch/x86/include/asm/fsp/fsp_infoheader.h
index e72c052ed1ec..691c135ae35a 100644
--- a/arch/x86/include/asm/fsp/fsp_infoheader.h
+++ b/arch/x86/include/asm/fsp/fsp_infoheader.h
@@ -7,6 +7,8 @@
 #ifndef _FSP_HEADER_H_
 #define _FSP_HEADER_H_
 
+#include <compiler.h>
+#include <asm/types.h>
 #define FSP_HEADER_OFF	0x94	/* Fixed FSP header offset in the FSP image */
 
 struct __packed fsp_header {
diff --git a/arch/x86/include/asm/fsp/fsp_support.h b/arch/x86/include/asm/fsp/fsp_support.h
index 29e511415cdc..8d1fc0ef296f 100644
--- a/arch/x86/include/asm/fsp/fsp_support.h
+++ b/arch/x86/include/asm/fsp/fsp_support.h
@@ -14,6 +14,7 @@
 #include <asm/fsp/fsp_types.h>
 #include <asm/fsp_arch.h>
 #include <asm/fsp/fsp_azalia.h>
+#include <asm/types.h>
 
 #define FSP_LOWMEM_BASE		0x100000UL
 #define FSP_HIGHMEM_BASE	0x100000000ULL
diff --git a/arch/x86/include/asm/fsp1/fsp_api.h b/arch/x86/include/asm/fsp1/fsp_api.h
index 524da5feb750..e4881d6a93db 100644
--- a/arch/x86/include/asm/fsp1/fsp_api.h
+++ b/arch/x86/include/asm/fsp1/fsp_api.h
@@ -7,6 +7,7 @@
 #ifndef __FSP1_API_H__
 #define __FSP1_API_H__
 
+#include <asm/types.h>
 #include <linux/linkage.h>
 #include <asm/fsp/fsp_api.h>
 /*
diff --git a/arch/x86/include/asm/fsp1/fsp_ffs.h b/arch/x86/include/asm/fsp1/fsp_ffs.h
index b7558e5a17fb..6447ab96a70b 100644
--- a/arch/x86/include/asm/fsp1/fsp_ffs.h
+++ b/arch/x86/include/asm/fsp1/fsp_ffs.h
@@ -8,6 +8,8 @@
 #define __FSP_FFS_H__
 
 /* Used to verify the integrity of the file */
+#include <compiler.h>
+#include <asm/types.h>
 union __packed ffs_integrity {
 	struct {
 		/*
diff --git a/arch/x86/include/asm/fsp1/fsp_support.h b/arch/x86/include/asm/fsp1/fsp_support.h
index a44a5504a4f8..cec7db49811a 100644
--- a/arch/x86/include/asm/fsp1/fsp_support.h
+++ b/arch/x86/include/asm/fsp1/fsp_support.h
@@ -8,6 +8,7 @@
 #define __FSP1_SUPPORT_H__
 
 #include <asm/fsp/fsp_support.h>
+#include <asm/types.h>
 #include "fsp_ffs.h"
 
 /**
diff --git a/arch/x86/include/asm/fsp2/fsp_api.h b/arch/x86/include/asm/fsp2/fsp_api.h
index 16ffb1922cda..28f4b97ae011 100644
--- a/arch/x86/include/asm/fsp2/fsp_api.h
+++ b/arch/x86/include/asm/fsp2/fsp_api.h
@@ -9,8 +9,10 @@
 #ifndef __ASM_FSP2_API_H
 #define __ASM_FSP2_API_H
 
+#include <compiler.h>
 #include <stdbool.h>
 #include <asm/fsp/fsp_api.h>
+#include <asm/types.h>
 
 struct fspm_upd;
 struct fsps_upd;
diff --git a/arch/x86/include/asm/fsp2/fsp_internal.h b/arch/x86/include/asm/fsp2/fsp_internal.h
index 720d677c05d5..6ab78bf053b5 100644
--- a/arch/x86/include/asm/fsp2/fsp_internal.h
+++ b/arch/x86/include/asm/fsp2/fsp_internal.h
@@ -9,6 +9,7 @@
 #define __ASM_FSP_INTERNAL_H
 
 #include <stdbool.h>
+#include <linux/types.h>
 struct binman_entry;
 struct fsp_header;
 struct fspm_upd;
diff --git a/arch/x86/include/asm/global_data.h b/arch/x86/include/asm/global_data.h
index 7fcd21ee2d53..8987df975c9e 100644
--- a/arch/x86/include/asm/global_data.h
+++ b/arch/x86/include/asm/global_data.h
@@ -9,9 +9,11 @@
 
 #ifndef __ASSEMBLY__
 
+#include <compiler.h>
 #include <stdbool.h>
 #include <asm/processor.h>
 #include <asm/mrccache.h>
+#include <linux/types.h>
 
 enum pei_boot_mode_t {
 	PEI_BOOT_NONE = 0,
diff --git a/arch/x86/include/asm/gpio.h b/arch/x86/include/asm/gpio.h
index 58e4d7b831ef..7810aee155fa 100644
--- a/arch/x86/include/asm/gpio.h
+++ b/arch/x86/include/asm/gpio.h
@@ -7,6 +7,7 @@
 #define _X86_GPIO_H_
 
 #include <asm-generic/gpio.h>
+#include <linux/types.h>
 
 struct ich6_bank_platdata {
 	uint16_t base_addr;
diff --git a/arch/x86/include/asm/handoff.h b/arch/x86/include/asm/handoff.h
index aec49b9b815c..5f6691939eb5 100644
--- a/arch/x86/include/asm/handoff.h
+++ b/arch/x86/include/asm/handoff.h
@@ -9,6 +9,8 @@
 #ifndef __x86_asm_handoff_h
 #define __x86_asm_handoff_h
 
+#include <linux/types.h>
+
 /**
  * struct arch_spl_handoff - architecture-specific handoff info
  *
diff --git a/arch/x86/include/asm/hob.h b/arch/x86/include/asm/hob.h
index a58f422de72d..4860179a33f7 100644
--- a/arch/x86/include/asm/hob.h
+++ b/arch/x86/include/asm/hob.h
@@ -10,6 +10,7 @@
 #include <efi.h>
 #include <efi_loader.h>
 #include <stdbool.h>
+#include <linux/types.h>
 
 /* Type of HOB Header */
 #define HOB_TYPE_MEM_ALLOC	0x0002
diff --git a/arch/x86/include/asm/intel_pinctrl.h b/arch/x86/include/asm/intel_pinctrl.h
index bae5d22b8838..060e5b5f9be3 100644
--- a/arch/x86/include/asm/intel_pinctrl.h
+++ b/arch/x86/include/asm/intel_pinctrl.h
@@ -12,6 +12,7 @@
 #include <stdbool.h>
 #include <dm/pinctrl.h>
 #include <linux/bitops.h>
+#include <linux/types.h>
 
 /**
  * struct pad_config - config for a pad
diff --git a/arch/x86/include/asm/io.h b/arch/x86/include/asm/io.h
index f0119c47b856..7d6d6ded9991 100644
--- a/arch/x86/include/asm/io.h
+++ b/arch/x86/include/asm/io.h
@@ -9,6 +9,7 @@
 
 #include <compiler.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /*
  * This file contains the definitions for the x86 IO instructions
diff --git a/arch/x86/include/asm/ioapic.h b/arch/x86/include/asm/ioapic.h
index 9e004e9b5b08..c4106c9b721b 100644
--- a/arch/x86/include/asm/ioapic.h
+++ b/arch/x86/include/asm/ioapic.h
@@ -8,6 +8,7 @@
 #ifndef __ASM_IOAPIC_H
 #define __ASM_IOAPIC_H
 
+#include <asm/types.h>
 #define IO_APIC_ADDR		0xfec00000
 
 /* Direct addressed register */
diff --git a/arch/x86/include/asm/irq.h b/arch/x86/include/asm/irq.h
index e7533925f29c..7bab07da15f5 100644
--- a/arch/x86/include/asm/irq.h
+++ b/arch/x86/include/asm/irq.h
@@ -7,6 +7,7 @@
 #define _ARCH_IRQ_H_
 
 #include <stdbool.h>
+#include <asm/types.h>
 #include <dt-bindings/interrupt-router/intel-irq.h>
 
 /**
diff --git a/arch/x86/include/asm/me_common.h b/arch/x86/include/asm/me_common.h
index 56e328846cfd..44f99b32b6ae 100644
--- a/arch/x86/include/asm/me_common.h
+++ b/arch/x86/include/asm/me_common.h
@@ -12,6 +12,7 @@
 #ifndef __ASM_ME_COMMON_H
 #define __ASM_ME_COMMON_H
 
+#include <compiler.h>
 #include <linux/compiler.h>
 #include <linux/string.h>
 #include <linux/types.h>
diff --git a/arch/x86/include/asm/microcode.h b/arch/x86/include/asm/microcode.h
index 4ab75049315d..5598cefb0bea 100644
--- a/arch/x86/include/asm/microcode.h
+++ b/arch/x86/include/asm/microcode.h
@@ -9,6 +9,7 @@
 #ifndef __ASSEMBLY__
 
 /* This is a declaration for ucode_base in start.S */
+#include <asm/types.h>
 extern u32 ucode_base;
 extern u32 ucode_size;
 
diff --git a/arch/x86/include/asm/mpspec.h b/arch/x86/include/asm/mpspec.h
index a25f8f03a12d..377f94b204e4 100644
--- a/arch/x86/include/asm/mpspec.h
+++ b/arch/x86/include/asm/mpspec.h
@@ -13,6 +13,7 @@
  * Intel MultiProcessor Specification 1.4
  */
 
+#include <linux/types.h>
 #define MPSPEC_V14	4
 
 #define MPF_SIGNATURE	"_MP_"
diff --git a/arch/x86/include/asm/mrc_common.h b/arch/x86/include/asm/mrc_common.h
index f060389f7890..ec5f7ab84f9d 100644
--- a/arch/x86/include/asm/mrc_common.h
+++ b/arch/x86/include/asm/mrc_common.h
@@ -8,6 +8,7 @@
 
 #include <stdbool.h>
 #include <linux/linkage.h>
+#include <linux/types.h>
 
 /**
  * mrc_common_init() - Set up SDRAM
diff --git a/arch/x86/include/asm/mrccache.h b/arch/x86/include/asm/mrccache.h
index 8b104a2f0b8e..2f41e003dbab 100644
--- a/arch/x86/include/asm/mrccache.h
+++ b/arch/x86/include/asm/mrccache.h
@@ -8,6 +8,7 @@
 #define _ASM_MRCCACHE_H
 
 #include <compiler.h>
+#include <asm/types.h>
 
 #define MRC_DATA_ALIGN		0x100
 #define MRC_DATA_SIGNATURE	(('M' << 0) | ('R' << 8) | \
diff --git a/arch/x86/include/asm/mtrr.h b/arch/x86/include/asm/mtrr.h
index 73edb4d86d32..cb5abbcc9081 100644
--- a/arch/x86/include/asm/mtrr.h
+++ b/arch/x86/include/asm/mtrr.h
@@ -60,6 +60,8 @@
 
 #if !defined(__ASSEMBLY__)
 
+#include <linux/types.h>
+
 /**
  * Information about the previous MTRR state, set up by mtrr_open()
  *
diff --git a/arch/x86/include/asm/pch_common.h b/arch/x86/include/asm/pch_common.h
index c4614d3f42c4..713630de1bd6 100644
--- a/arch/x86/include/asm/pch_common.h
+++ b/arch/x86/include/asm/pch_common.h
@@ -7,6 +7,7 @@
 #define __asm_pch_common_h
 
 /* Common Intel SATA registers */
+#include <asm/types.h>
 #define SATA_SIRI		0xa0 /* SATA Indexed Register Index */
 #define SATA_SIRD		0xa4 /* SATA Indexed Register Data */
 #define SATA_SP			0xd0 /* Scratchpad */
diff --git a/arch/x86/include/asm/pci.h b/arch/x86/include/asm/pci.h
index 2a7207357284..1a5319185dec 100644
--- a/arch/x86/include/asm/pci.h
+++ b/arch/x86/include/asm/pci.h
@@ -28,6 +28,7 @@
  * @size:	Access size
  * @return 0 if OK, -ve on error
  */
+#include <linux/types.h>
 int pci_x86_read_config(pci_dev_t bdf, uint offset, ulong *valuep,
 			enum pci_size_t size);
 
diff --git a/arch/x86/include/asm/pirq_routing.h b/arch/x86/include/asm/pirq_routing.h
index 895fa793ef4d..679ed750e2aa 100644
--- a/arch/x86/include/asm/pirq_routing.h
+++ b/arch/x86/include/asm/pirq_routing.h
@@ -18,7 +18,9 @@
  *
  * CAUTION: If you change this, PIRQ routing will not work correctly.
  */
+#include <compiler.h>
 #include <stdbool.h>
+#include <asm/types.h>
 #define MAX_INTX_ENTRIES	4
 
 #define PIRQ_SIGNATURE		\
diff --git a/arch/x86/include/asm/pnp_def.h b/arch/x86/include/asm/pnp_def.h
index 0345d195c69d..560f26098d67 100644
--- a/arch/x86/include/asm/pnp_def.h
+++ b/arch/x86/include/asm/pnp_def.h
@@ -10,6 +10,7 @@
 #define _ASM_PNP_DEF_H_
 
 #include <asm/io.h>
+#include <linux/types.h>
 
 #define PNP_IDX_EN   0x30
 #define PNP_IDX_IO0  0x60
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h
index d7b68367861d..3eb16fd11d69 100644
--- a/arch/x86/include/asm/processor.h
+++ b/arch/x86/include/asm/processor.h
@@ -41,6 +41,7 @@
 
 #ifndef __ASSEMBLY__
 
+#include <linux/types.h>
 static inline __attribute__((always_inline)) void cpu_hlt(void)
 {
 	asm("hlt");
diff --git a/arch/x86/include/asm/scu.h b/arch/x86/include/asm/scu.h
index f5ec5a19d9d0..75c2cbae6b7b 100644
--- a/arch/x86/include/asm/scu.h
+++ b/arch/x86/include/asm/scu.h
@@ -6,6 +6,7 @@
 #define _X86_ASM_SCU_IPC_H_
 
 /* IPC defines the following message types */
+#include <asm/types.h>
 #define IPCMSG_INDIRECT_READ	0x02
 #define IPCMSG_INDIRECT_WRITE	0x05
 #define IPCMSG_WARM_RESET	0xf0
diff --git a/arch/x86/include/asm/sfi.h b/arch/x86/include/asm/sfi.h
index 09d470081200..6725ea69b2ed 100644
--- a/arch/x86/include/asm/sfi.h
+++ b/arch/x86/include/asm/sfi.h
@@ -6,6 +6,7 @@
 #ifndef _LINUX_SFI_H
 #define _LINUX_SFI_H
 
+#include <compiler.h>
 #include <errno.h>
 #include <linux/types.h>
 
diff --git a/arch/x86/include/asm/sipi.h b/arch/x86/include/asm/sipi.h
index 24834225287e..9e11f20e0306 100644
--- a/arch/x86/include/asm/sipi.h
+++ b/arch/x86/include/asm/sipi.h
@@ -13,6 +13,8 @@
 #ifndef __ASSEMBLY__
 
 /**
+#include <compiler.h>
+#include <asm/types.h>
  * struct sipi_params_16bit - 16-bit SIPI entry-point parameters
  *
  * These are set up in the same space as the SIPI 16-bit code so that each AP
diff --git a/arch/x86/include/asm/speedstep.h b/arch/x86/include/asm/speedstep.h
index 43bfabffcc93..513e4107c82e 100644
--- a/arch/x86/include/asm/speedstep.h
+++ b/arch/x86/include/asm/speedstep.h
@@ -10,6 +10,7 @@
 #define _ASM_SPEEDSTEP_H
 
 /* Magic value used to locate speedstep configuration in the device tree */
+#include <linux/types.h>
 #define SPEEDSTEP_APIC_MAGIC 0xACAC
 
 /* MWAIT coordination I/O base address. This must match
diff --git a/arch/x86/include/asm/spl.h b/arch/x86/include/asm/spl.h
index cc6cac08f23b..8d844f664d9a 100644
--- a/arch/x86/include/asm/spl.h
+++ b/arch/x86/include/asm/spl.h
@@ -7,6 +7,7 @@
 #ifndef __asm_spl_h
 #define __asm_spl_h
 
+#include <linux/types.h>
 #define CONFIG_SPL_BOARD_LOAD_IMAGE
 
 enum {
diff --git a/arch/x86/include/asm/tables.h b/arch/x86/include/asm/tables.h
index f7c72ed3db03..92ccaf4c7f57 100644
--- a/arch/x86/include/asm/tables.h
+++ b/arch/x86/include/asm/tables.h
@@ -7,6 +7,7 @@
 #define _X86_TABLES_H_
 
 #include <tables_csum.h>
+#include <linux/types.h>
 
 #define ROM_TABLE_ADDR	CONFIG_ROM_TABLE_ADDR
 #define ROM_TABLE_END	(CONFIG_ROM_TABLE_ADDR + CONFIG_ROM_TABLE_SIZE - 1)
diff --git a/arch/x86/include/asm/u-boot-x86.h b/arch/x86/include/asm/u-boot-x86.h
index d732661f6d47..114a8cf5582a 100644
--- a/arch/x86/include/asm/u-boot-x86.h
+++ b/arch/x86/include/asm/u-boot-x86.h
@@ -7,6 +7,7 @@
 #ifndef _U_BOOT_I386_H_
 #define _U_BOOT_I386_H_	1
 
+#include <linux/types.h>
 struct global_data;
 
 extern char gdt_rom[];
diff --git a/arch/x86/include/asm/zimage.h b/arch/x86/include/asm/zimage.h
index 80e128ccf36f..df232e336f62 100644
--- a/arch/x86/include/asm/zimage.h
+++ b/arch/x86/include/asm/zimage.h
@@ -9,6 +9,7 @@
 
 #include <asm/bootparam.h>
 #include <asm/e820.h>
+#include <linux/types.h>
 
 /* linux i386 zImage/bzImage header. Offsets relative to
  * the start of the image */
diff --git a/arch/x86/lib/acpi.c b/arch/x86/lib/acpi.c
index ffdc9e8257e1..166a3f4256e2 100644
--- a/arch/x86/lib/acpi.c
+++ b/arch/x86/lib/acpi.c
@@ -9,6 +9,7 @@
 #include <asm/io.h>
 #include <asm/tables.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 static struct acpi_rsdp *acpi_valid_rsdp(struct acpi_rsdp *rsdp)
 {
diff --git a/arch/x86/lib/acpi_nhlt.c b/arch/x86/lib/acpi_nhlt.c
index f21d3e32b579..041248e7c8f1 100644
--- a/arch/x86/lib/acpi_nhlt.c
+++ b/arch/x86/lib/acpi_nhlt.c
@@ -20,6 +20,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define NHLT_RID		1
 #define NHLT_SSID		1
diff --git a/arch/x86/lib/acpi_table.c b/arch/x86/lib/acpi_table.c
index db1840068302..6fb12c03d24d 100644
--- a/arch/x86/lib/acpi_table.c
+++ b/arch/x86/lib/acpi_table.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu.h>
 #include <dm.h>
 #include <log.h>
@@ -29,6 +30,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /*
  * IASL compiles the dsdt entries and writes the hex values
diff --git a/arch/x86/lib/bios.c b/arch/x86/lib/bios.c
index a4499972c322..5a8daa1d3226 100644
--- a/arch/x86/lib/bios.c
+++ b/arch/x86/lib/bios.c
@@ -18,6 +18,7 @@
 #include <asm/io.h>
 #include <asm/post.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "bios.h"
 
 /* Interrupt handlers for each interrupt the ROM can call */
diff --git a/arch/x86/lib/bios.h b/arch/x86/lib/bios.h
index 2e51b9fbf677..4c44c0fc9053 100644
--- a/arch/x86/lib/bios.h
+++ b/arch/x86/lib/bios.h
@@ -19,6 +19,9 @@
 
 #else
 
+#include <compiler.h>
+#include <linux/types.h>
+
 /* Convert a symbol address to our real mode area */
 #define PTR_TO_REAL_MODE(sym)\
 	(void *)(REALMODE_BASE + ((char *)&(sym) - (char *)&asm_realmode_code))
diff --git a/arch/x86/lib/bios_interrupts.c b/arch/x86/lib/bios_interrupts.c
index 2582ac1b8408..dcdb0e9690b7 100644
--- a/arch/x86/lib/bios_interrupts.c
+++ b/arch/x86/lib/bios_interrupts.c
@@ -11,6 +11,7 @@
 #include <log.h>
 #include <stdio.h>
 #include <asm/pci.h>
+#include <asm/types.h>
 #include "bios_emul.h"
 
 /* errors go in AH. Just set these up so that word assigns will work */
diff --git a/arch/x86/lib/bootm.c b/arch/x86/lib/bootm.c
index 0b20cdc16aba..302d2c1b5c9c 100644
--- a/arch/x86/lib/bootm.c
+++ b/arch/x86/lib/bootm.c
@@ -22,6 +22,7 @@
 #include <fdt_support.h>
 #include <image.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 #include <asm/bootparam.h>
 #include <asm/cpu.h>
diff --git a/arch/x86/lib/cmd_boot.c b/arch/x86/lib/cmd_boot.c
index b128b43cebe5..fa26fe806529 100644
--- a/arch/x86/lib/cmd_boot.c
+++ b/arch/x86/lib/cmd_boot.c
@@ -20,6 +20,7 @@
 #include <asm/global_data.h>
 #include <asm/u-boot-x86.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/coreboot_table.c b/arch/x86/lib/coreboot_table.c
index f4736ecfc45a..b98b9d8b2dfa 100644
--- a/arch/x86/lib/coreboot_table.c
+++ b/arch/x86/lib/coreboot_table.c
@@ -13,6 +13,7 @@
 #include <asm/global_data.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/div64.c b/arch/x86/lib/div64.c
index 2bea205f60f9..a8a3d36f5113 100644
--- a/arch/x86/lib/div64.c
+++ b/arch/x86/lib/div64.c
@@ -7,6 +7,8 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
+#include <linux/stddef.h>
 
 union overlay64 {
 	u64 longw;
diff --git a/arch/x86/lib/e820.c b/arch/x86/lib/e820.c
index 066bf9b154ba..4cc55c1c2f30 100644
--- a/arch/x86/lib/e820.c
+++ b/arch/x86/lib/e820.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <efi_loader.h>
 #include <asm/e820.h>
 #include <asm/global_data.h>
diff --git a/arch/x86/lib/early_cmos.c b/arch/x86/lib/early_cmos.c
index f7b3bb2a8e19..821abe160a47 100644
--- a/arch/x86/lib/early_cmos.c
+++ b/arch/x86/lib/early_cmos.c
@@ -13,6 +13,7 @@
 #include <common.h>
 #include <asm/early_cmos.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 u8 cmos_read8(u8 addr)
 {
diff --git a/arch/x86/lib/fsp/fsp_common.c b/arch/x86/lib/fsp/fsp_common.c
index 0f81d54f52c0..5c06c725e540 100644
--- a/arch/x86/lib/fsp/fsp_common.c
+++ b/arch/x86/lib/fsp/fsp_common.c
@@ -19,6 +19,7 @@
 #include <asm/post.h>
 #include <asm/processor.h>
 #include <asm/fsp/fsp_support.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/x86/lib/fsp/fsp_dram.c b/arch/x86/lib/fsp/fsp_dram.c
index e73597567a48..33e374dcd243 100644
--- a/arch/x86/lib/fsp/fsp_dram.c
+++ b/arch/x86/lib/fsp/fsp_dram.c
@@ -14,6 +14,7 @@
 #include <asm/mtrr.h>
 #include <asm/post.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/fsp/fsp_graphics.c b/arch/x86/lib/fsp/fsp_graphics.c
index 6e4368d4184d..292af2abe903 100644
--- a/arch/x86/lib/fsp/fsp_graphics.c
+++ b/arch/x86/lib/fsp/fsp_graphics.c
@@ -13,6 +13,7 @@
 #include <asm/fsp/fsp_support.h>
 #include <asm/global_data.h>
 #include <asm/mtrr.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/x86/lib/fsp/fsp_support.c b/arch/x86/lib/fsp/fsp_support.c
index fd4d98ef6274..8afdb1b287b5 100644
--- a/arch/x86/lib/fsp/fsp_support.c
+++ b/arch/x86/lib/fsp/fsp_support.c
@@ -8,6 +8,7 @@
 #include <log.h>
 #include <asm/fsp/fsp_support.h>
 #include <asm/post.h>
+#include <asm/types.h>
 
 u32 fsp_get_usable_lowmem_top(const void *hob_list)
 {
diff --git a/arch/x86/lib/fsp1/fsp_dram.c b/arch/x86/lib/fsp1/fsp_dram.c
index cfd9b9f48c34..c27b7a674abd 100644
--- a/arch/x86/lib/fsp1/fsp_dram.c
+++ b/arch/x86/lib/fsp1/fsp_dram.c
@@ -7,6 +7,7 @@
 #include <init.h>
 #include <asm/fsp/fsp_support.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 int dram_init(void)
 {
diff --git a/arch/x86/lib/fsp1/fsp_support.c b/arch/x86/lib/fsp1/fsp_support.c
index 6850b9b73334..9b15ae396ac1 100644
--- a/arch/x86/lib/fsp1/fsp_support.c
+++ b/arch/x86/lib/fsp1/fsp_support.c
@@ -9,6 +9,7 @@
 #include <vsprintf.h>
 #include <asm/fsp1/fsp_support.h>
 #include <asm/post.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 struct fsp_header *__attribute__((optimize("O0"))) fsp_find_header(void)
diff --git a/arch/x86/lib/fsp2/fsp_dram.c b/arch/x86/lib/fsp2/fsp_dram.c
index aae75ea1573d..27d98e1105fc 100644
--- a/arch/x86/lib/fsp2/fsp_dram.c
+++ b/arch/x86/lib/fsp2/fsp_dram.c
@@ -18,6 +18,7 @@
 #include <asm/global_data.h>
 #include <linux/errno.h>
 #include <linux/sizes.h>
+#include <linux/types.h>
 
 int dram_init(void)
 {
diff --git a/arch/x86/lib/fsp2/fsp_init.c b/arch/x86/lib/fsp2/fsp_init.c
index eef321d62086..07bbf6cc06fb 100644
--- a/arch/x86/lib/fsp2/fsp_init.c
+++ b/arch/x86/lib/fsp2/fsp_init.c
@@ -19,6 +19,7 @@
 #include <dm/uclass-internal.h>
 #include <asm/fsp2/fsp_internal.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 int arch_cpu_init_dm(void)
 {
diff --git a/arch/x86/lib/fsp2/fsp_meminit.c b/arch/x86/lib/fsp2/fsp_meminit.c
index dd3569895ff3..4820661ca369 100644
--- a/arch/x86/lib/fsp2/fsp_meminit.c
+++ b/arch/x86/lib/fsp2/fsp_meminit.c
@@ -22,6 +22,7 @@
 #include <asm/arch/fsp/fsp_m_upd.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 static int prepare_mrc_cache_type(enum mrc_type_t type,
 				  struct mrc_data_container **cachep)
diff --git a/arch/x86/lib/fsp2/fsp_silicon_init.c b/arch/x86/lib/fsp2/fsp_silicon_init.c
index 4ab49c5fe6fe..326808dd6d6f 100644
--- a/arch/x86/lib/fsp2/fsp_silicon_init.c
+++ b/arch/x86/lib/fsp2/fsp_silicon_init.c
@@ -21,6 +21,7 @@
 #include <asm/global_data.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 int fsp_silicon_init(bool s3wake, bool use_spi_flash)
 {
diff --git a/arch/x86/lib/fsp2/fsp_support.c b/arch/x86/lib/fsp2/fsp_support.c
index f597f7522136..8c6445b2ebd9 100644
--- a/arch/x86/lib/fsp2/fsp_support.c
+++ b/arch/x86/lib/fsp2/fsp_support.c
@@ -8,12 +8,14 @@
 #include <dm.h>
 #include <log.h>
 #include <spi_flash.h>
+#include <stdbool.h>
 #include <asm/fsp/fsp_support.h>
 #include <asm/fsp2/fsp_internal.h>
 #include <asm/global_data.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /* The amount of the FSP header to probe to obtain what we need */
 #define PROBE_BUF_SIZE 0x180
diff --git a/arch/x86/lib/hob.c b/arch/x86/lib/hob.c
index f2c47240ee8e..5c10b655a6f0 100644
--- a/arch/x86/lib/hob.c
+++ b/arch/x86/lib/hob.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <asm/hob.h>
+#include <linux/types.h>
 
 /**
  * Returns the next instance of a HOB type from the starting HOB.
diff --git a/arch/x86/lib/i8254.c b/arch/x86/lib/i8254.c
index 7aa41ede74b7..0af133daf409 100644
--- a/arch/x86/lib/i8254.c
+++ b/arch/x86/lib/i8254.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/i8254.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #define TIMER1_VALUE		18	/* 15.6us */
 #define BEEP_FREQUENCY_HZ	440
diff --git a/arch/x86/lib/i8259.c b/arch/x86/lib/i8259.c
index c002d103aef3..cb396b8ac3e3 100644
--- a/arch/x86/lib/i8259.c
+++ b/arch/x86/lib/i8259.c
@@ -20,6 +20,7 @@
 #include <asm/i8259.h>
 #include <asm/ibmpc.h>
 #include <asm/interrupt.h>
+#include <asm/types.h>
 
 int i8259_init(void)
 {
diff --git a/arch/x86/lib/interrupts.c b/arch/x86/lib/interrupts.c
index 11c1a01f0715..90e387277ace 100644
--- a/arch/x86/lib/interrupts.c
+++ b/arch/x86/lib/interrupts.c
@@ -34,6 +34,7 @@
 #include <irq_func.h>
 #include <stdio.h>
 #include <asm/interrupt.h>
+#include <linux/types.h>
 
 #if !CONFIG_IS_ENABLED(X86_64)
 
diff --git a/arch/x86/lib/mpspec.c b/arch/x86/lib/mpspec.c
index 17568a03d5c8..2dc658cdb372 100644
--- a/arch/x86/lib/mpspec.c
+++ b/arch/x86/lib/mpspec.c
@@ -6,11 +6,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu.h>
 #include <dm.h>
 #include <errno.h>
 #include <fdtdec.h>
 #include <log.h>
+#include <stdbool.h>
 #include <asm/cpu.h>
 #include <asm/global_data.h>
 #include <asm/irq.h>
@@ -22,6 +24,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/mrccache.c b/arch/x86/lib/mrccache.c
index 63aace5d4fb8..e6742b65cfb2 100644
--- a/arch/x86/lib/mrccache.c
+++ b/arch/x86/lib/mrccache.c
@@ -23,6 +23,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/physmem.c b/arch/x86/lib/physmem.c
index 71039589dfdf..6409d5c1c11a 100644
--- a/arch/x86/lib/physmem.c
+++ b/arch/x86/lib/physmem.c
@@ -16,6 +16,7 @@
 #include <linux/compiler.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/pinctrl_ich6.c b/arch/x86/lib/pinctrl_ich6.c
index 53228cd2848b..2cace9c5b420 100644
--- a/arch/x86/lib/pinctrl_ich6.c
+++ b/arch/x86/lib/pinctrl_ich6.c
@@ -18,6 +18,7 @@
 #include <asm/pci.h>
 #include <dm/pinctrl.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/pirq_routing.c b/arch/x86/lib/pirq_routing.c
index 3b5ee3837f84..d6b435efd6d3 100644
--- a/arch/x86/lib/pirq_routing.c
+++ b/arch/x86/lib/pirq_routing.c
@@ -8,12 +8,14 @@
 #include <common.h>
 #include <log.h>
 #include <pci.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/pci.h>
 #include <asm/pirq_routing.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/pmu.c b/arch/x86/lib/pmu.c
index 314d9f0ecee5..ce054cc4cee3 100644
--- a/arch/x86/lib/pmu.c
+++ b/arch/x86/lib/pmu.c
@@ -10,6 +10,7 @@
 #include <syscon.h>
 #include <asm/cpu.h>
 #include <asm/pmu.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/io.h>
diff --git a/arch/x86/lib/ramtest.c b/arch/x86/lib/ramtest.c
index 17729eb8aa0b..ce6c7442d5bd 100644
--- a/arch/x86/lib/ramtest.c
+++ b/arch/x86/lib/ramtest.c
@@ -9,6 +9,7 @@
 #include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/post.h>
+#include <asm/types.h>
 
 static void write_phys(unsigned long addr, u32 value)
 {
diff --git a/arch/x86/lib/relocate.c b/arch/x86/lib/relocate.c
index e31565a589e0..6f5870345565 100644
--- a/arch/x86/lib/relocate.c
+++ b/arch/x86/lib/relocate.c
@@ -24,6 +24,7 @@
 #include <asm/sections.h>
 #include <elf.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/scu.c b/arch/x86/lib/scu.c
index 792b87c2f1b2..c476d12c1497 100644
--- a/arch/x86/lib/scu.c
+++ b/arch/x86/lib/scu.c
@@ -16,6 +16,7 @@
 #include <syscon.h>
 #include <asm/cpu.h>
 #include <asm/scu.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
diff --git a/arch/x86/lib/sfi.c b/arch/x86/lib/sfi.c
index b85a1b17e84b..cbba94c8bb24 100644
--- a/arch/x86/lib/sfi.c
+++ b/arch/x86/lib/sfi.c
@@ -23,6 +23,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 struct table_info {
 	u32 base;
diff --git a/arch/x86/lib/spl.c b/arch/x86/lib/spl.c
index 36c92b7b1489..1fc86dabd249 100644
--- a/arch/x86/lib/spl.c
+++ b/arch/x86/lib/spl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <debug_uart.h>
 #include <dm.h>
@@ -27,6 +28,7 @@
 #include <asm-generic/sections.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/tables.c b/arch/x86/lib/tables.c
index 6fd0ded397d0..7409eb3b8199 100644
--- a/arch/x86/lib/tables.c
+++ b/arch/x86/lib/tables.c
@@ -16,6 +16,7 @@
 #include <asm/coreboot_tables.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /**
  * Function prototype to write a specific configuration table
diff --git a/arch/x86/lib/tpl.c b/arch/x86/lib/tpl.c
index 140e36f037a8..1d42dda81aa7 100644
--- a/arch/x86/lib/tpl.c
+++ b/arch/x86/lib/tpl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <debug_uart.h>
 #include <dm.h>
 #include <hang.h>
@@ -19,6 +20,7 @@
 #include <asm/processor.h>
 #include <asm-generic/sections.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c
index 5e413200268f..f0c97b6cf895 100644
--- a/arch/x86/lib/zimage.c
+++ b/arch/x86/lib/zimage.c
@@ -34,6 +34,7 @@
 #include <linux/kernel.h>
 #include <linux/libfdt.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 /*
  * Memory lay-out:
diff --git a/arch/xtensa/cpu/cpu.c b/arch/xtensa/cpu/cpu.c
index 50e330686652..54f3d80f680e 100644
--- a/arch/xtensa/cpu/cpu.c
+++ b/arch/xtensa/cpu/cpu.c
@@ -18,6 +18,7 @@
 #include <asm/cache.h>
 #include <asm/string.h>
 #include <asm/misc.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/xtensa/include/asm/ldscript.h b/arch/xtensa/include/asm/ldscript.h
index 08f5d0135ed0..fdf38c225d02 100644
--- a/arch/xtensa/include/asm/ldscript.h
+++ b/arch/xtensa/include/asm/ldscript.h
@@ -8,6 +8,7 @@
 #define _XTENSA_LDSCRIPT_H
 
 /*
+#include <linux/kernel.h>
  * This linker script is pre-processed with CPP to avoid hard-coding
  * addresses that depend on the Xtensa core configuration, because
  * this FPGA board can be used with a huge variety of Xtensa cores.
diff --git a/arch/xtensa/lib/bootm.c b/arch/xtensa/lib/bootm.c
index 0299534728ca..00b5e0a46562 100644
--- a/arch/xtensa/lib/bootm.c
+++ b/arch/xtensa/lib/bootm.c
@@ -13,6 +13,7 @@
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <u-boot/zlib.h>
 #include <asm/byteorder.h>
 #include <asm/addrspace.h>
diff --git a/arch/xtensa/lib/cache.c b/arch/xtensa/lib/cache.c
index 4e0c0acc3bbe..f0f7ea2d330f 100644
--- a/arch/xtensa/lib/cache.c
+++ b/arch/xtensa/lib/cache.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <cpu_func.h>
 #include <asm/cache.h>
+#include <linux/types.h>
 
 /*
  * We currently run always with caches enabled when running from memory.
diff --git a/arch/xtensa/lib/relocate.c b/arch/xtensa/lib/relocate.c
index ffe39d4a03ca..7fc9cf76f6e2 100644
--- a/arch/xtensa/lib/relocate.c
+++ b/arch/xtensa/lib/relocate.c
@@ -7,6 +7,7 @@
 #include <asm/sections.h>
 #include <asm/string.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 int clear_bss(void)
 {
diff --git a/arch/xtensa/lib/time.c b/arch/xtensa/lib/time.c
index 3a02c384934c..af37eddd51de 100644
--- a/arch/xtensa/lib/time.c
+++ b/arch/xtensa/lib/time.c
@@ -8,6 +8,7 @@
 #include <asm/global_data.h>
 #include <linux/delay.h>
 #include <linux/stringify.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/AndesTech/adp-ae3xx/adp-ae3xx.c b/board/AndesTech/adp-ae3xx/adp-ae3xx.c
index 69611c788320..49ca9a835bda 100644
--- a/board/AndesTech/adp-ae3xx/adp-ae3xx.c
+++ b/board/AndesTech/adp-ae3xx/adp-ae3xx.c
@@ -18,6 +18,7 @@
 #include <asm/u-boot.h>
 #include <linux/io.h>
 #include <faraday/ftsmc020.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/AndesTech/adp-ag101p/adp-ag101p.c b/board/AndesTech/adp-ag101p/adp-ag101p.c
index 9ba4f732223e..2d88db3186fd 100644
--- a/board/AndesTech/adp-ag101p/adp-ag101p.c
+++ b/board/AndesTech/adp-ag101p/adp-ag101p.c
@@ -18,6 +18,7 @@
 #include <linux/io.h>
 #include <asm/io.h>
 #include <asm/mach-types.h>
+#include <linux/types.h>
 
 #include <faraday/ftsmc020.h>
 
diff --git a/board/AndesTech/ax25-ae350/ax25-ae350.c b/board/AndesTech/ax25-ae350/ax25-ae350.c
index b75e968ee1dc..4575e8929ef8 100644
--- a/board/AndesTech/ax25-ae350/ax25-ae350.c
+++ b/board/AndesTech/ax25-ae350/ax25-ae350.c
@@ -21,6 +21,7 @@
 #include <dm.h>
 #include <spl.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/Arcturus/ucp1020/cmd_arc.c b/board/Arcturus/ucp1020/cmd_arc.c
index 2cd51d0aa873..f0b0ac1494c8 100644
--- a/board/Arcturus/ucp1020/cmd_arc.c
+++ b/board/Arcturus/ucp1020/cmd_arc.c
@@ -22,6 +22,7 @@
 #include <asm/io.h>
 #include <linux/string.h>
 #include <linux/stringify.h>
+#include <linux/types.h>
 
 static ulong fwenv_addr[MAX_FWENV_ADDR];
 const char mystrerr[] = "ERROR: Failed to save factory info";
diff --git a/board/Arcturus/ucp1020/ddr.c b/board/Arcturus/ucp1020/ddr.c
index 7549d4341bbe..6806fa4453a2 100644
--- a/board/Arcturus/ucp1020/ddr.c
+++ b/board/Arcturus/ucp1020/ddr.c
@@ -18,6 +18,7 @@
 #include <asm/io.h>
 #include <asm/fsl_law.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SYS_DDR_RAW_TIMING
 #if defined(CONFIG_UCP1020) || defined(CONFIG_UCP1020T1)
diff --git a/board/Arcturus/ucp1020/spl.c b/board/Arcturus/ucp1020/spl.c
index 9a6b465bf96d..8cbe90062542 100644
--- a/board/Arcturus/ucp1020/spl.c
+++ b/board/Arcturus/ucp1020/spl.c
@@ -24,6 +24,7 @@
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/Arcturus/ucp1020/spl_minimal.c b/board/Arcturus/ucp1020/spl_minimal.c
index 718139688bf4..f938e345ac15 100644
--- a/board/Arcturus/ucp1020/spl_minimal.c
+++ b/board/Arcturus/ucp1020/spl_minimal.c
@@ -17,6 +17,7 @@
 #include <asm/fsl_law.h>
 #include <fsl_ddr_sdram.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/Arcturus/ucp1020/ucp1020.c b/board/Arcturus/ucp1020/ucp1020.c
index ccd5f8ae1e4e..ce10bdaab696 100644
--- a/board/Arcturus/ucp1020/ucp1020.c
+++ b/board/Arcturus/ucp1020/ucp1020.c
@@ -44,6 +44,7 @@
 #include <asm/fsl_lbc.h>
 #include <asm/mp.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "ucp1020.h"
 
 void spi_set_speed(struct spi_slave *slave, uint hz)
diff --git a/board/BuR/brppt1/board.c b/board/BuR/brppt1/board.c
index b5a1dccb19bd..bff7ba2191f7 100644
--- a/board/BuR/brppt1/board.c
+++ b/board/BuR/brppt1/board.c
@@ -29,6 +29,7 @@
 #include <asm/emif.h>
 #include <asm/gpio.h>
 #include <i2c.h>
+#include <linux/types.h>
 #include <power/tps65217.h>
 #include "../common/bur_common.h"
 #include <watchdog.h>
diff --git a/board/BuR/brppt2/board.c b/board/BuR/brppt2/board.c
index 01bdbc12abb0..e462e4c63ba5 100644
--- a/board/BuR/brppt2/board.c
+++ b/board/BuR/brppt2/board.c
@@ -25,6 +25,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
+#include <linux/types.h>
 
 #define USBHUB_RSTN	IMX_GPIO_NR(1, 16)
 #define BKLT_EN		IMX_GPIO_NR(1, 15)
diff --git a/board/BuR/brsmarc1/board.c b/board/BuR/brsmarc1/board.c
index b4b1c327f947..149e34ce0bec 100644
--- a/board/BuR/brsmarc1/board.c
+++ b/board/BuR/brsmarc1/board.c
@@ -24,6 +24,7 @@
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/emif.h>
+#include <asm/types.h>
 #include <power/tps65217.h>
 #include "../common/bur_common.h"
 #include "../common/br_resetc.h"
diff --git a/board/BuR/brxre1/board.c b/board/BuR/brxre1/board.c
index f6f35f6750df..9b2acfd06e59 100644
--- a/board/BuR/brxre1/board.c
+++ b/board/BuR/brxre1/board.c
@@ -28,6 +28,7 @@
 #include <asm/emif.h>
 #include <asm/gpio.h>
 #include <dm.h>
+#include <asm/types.h>
 #include <power/tps65217.h>
 #include "../common/bur_common.h"
 #include "../common/br_resetc.h"
diff --git a/board/BuR/common/br_resetc.c b/board/BuR/common/br_resetc.c
index 6bbea816a0e5..b6f7cf38fd44 100644
--- a/board/BuR/common/br_resetc.c
+++ b/board/BuR/common/br_resetc.c
@@ -6,10 +6,12 @@
  * B&R Industrial Automation GmbH - http://www.br-automation.com/ *
  */
 #include <common.h>
+#include <compiler.h>
 #include <env.h>
 #include <errno.h>
 #include <i2c.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <dm/uclass.h>
 #include <linux/delay.h>
 #include "br_resetc.h"
diff --git a/board/BuR/common/br_resetc.h b/board/BuR/common/br_resetc.h
index ba0689bf2050..66aa12798b25 100644
--- a/board/BuR/common/br_resetc.h
+++ b/board/BuR/common/br_resetc.h
@@ -8,6 +8,7 @@
 #ifndef __CONFIG_BRRESETC_H__
 #define __CONFIG_BRRESETC_H__
 #include <common.h>
+#include <asm/types.h>
 
 int br_resetc_regget(u8 reg, u8 *dst);
 int br_resetc_regset(u8 reg, u8 val);
diff --git a/board/BuR/common/bur_common.h b/board/BuR/common/bur_common.h
index 4db630668e29..a76f17d0ef75 100644
--- a/board/BuR/common/bur_common.h
+++ b/board/BuR/common/bur_common.h
@@ -17,6 +17,7 @@
 int load_lcdtiming(struct am335x_lcdpanel *panel);
 #endif
 
+#include <asm/types.h>
 void br_summaryscreen(void);
 void pmicsetup(u32 mpupll, unsigned int bus);
 void enable_uart0_pin_mux(void);
diff --git a/board/BuR/common/common.c b/board/BuR/common/common.c
index 9b96b0c30b97..2456501b7ab8 100644
--- a/board/BuR/common/common.c
+++ b/board/BuR/common/common.c
@@ -18,6 +18,7 @@
 #include <lcd.h>
 #include <vsprintf.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 #include <linux/string.h>
diff --git a/board/BuS/eb_cpu5282/eb_cpu5282.c b/board/BuS/eb_cpu5282/eb_cpu5282.c
index 863372e06e01..2d816927482b 100644
--- a/board/BuS/eb_cpu5282/eb_cpu5282.c
+++ b/board/BuS/eb_cpu5282/eb_cpu5282.c
@@ -13,6 +13,7 @@
 #include <vsprintf.h>
 #include <asm/global_data.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "asm/m5282.h"
 #include <bmp_layout.h>
 #include <env.h>
diff --git a/board/CZ.NIC/turris_mox/mox_sp.c b/board/CZ.NIC/turris_mox/mox_sp.c
index c15f8ee5b512..4521e703ed86 100644
--- a/board/CZ.NIC/turris_mox/mox_sp.c
+++ b/board/CZ.NIC/turris_mox/mox_sp.c
@@ -10,6 +10,7 @@
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #define RWTM_BASE		(MVEBU_REGISTER(0xb0000))
 #define RWTM_CMD_PARAM(i)	(size_t)(RWTM_BASE + (i) * 4)
diff --git a/board/CZ.NIC/turris_mox/mox_sp.h b/board/CZ.NIC/turris_mox/mox_sp.h
index 49a4ed80ea61..45e7f24a6072 100644
--- a/board/CZ.NIC/turris_mox/mox_sp.h
+++ b/board/CZ.NIC/turris_mox/mox_sp.h
@@ -7,6 +7,7 @@
 #define _BOARD_CZNIC_TURRIS_MOX_MOX_SP_H_
 
 #include <common.h>
+#include <asm/types.h>
 
 const char *mox_sp_get_ecdsa_public_key(void);
 int mbox_sp_get_board_info(u64 *sn, u8 *mac1, u8 *mac2, int *bv,
diff --git a/board/CZ.NIC/turris_mox/turris_mox.c b/board/CZ.NIC/turris_mox/turris_mox.c
index 0c7926b5624e..b34bde8a2941 100644
--- a/board/CZ.NIC/turris_mox/turris_mox.c
+++ b/board/CZ.NIC/turris_mox/turris_mox.c
@@ -25,6 +25,7 @@
 #include <linux/libfdt.h>
 #include <linux/string.h>
 #include <miiphy.h>
+#include <linux/types.h>
 #include <mvebu/comphy.h>
 #include <spi.h>
 
diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c
index 6e950f45f05b..7bf238a5c462 100644
--- a/board/CZ.NIC/turris_omnia/turris_omnia.c
+++ b/board/CZ.NIC/turris_omnia/turris_omnia.c
@@ -15,6 +15,7 @@
 #include <miiphy.h>
 #include <net.h>
 #include <netdev.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
@@ -27,6 +28,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <u-boot/crc.h>
 # include <atsha204a-i2c.h>
 
diff --git a/board/LaCie/common/common.c b/board/LaCie/common/common.c
index 325bc9b3bf7d..395c10758cb7 100644
--- a/board/LaCie/common/common.c
+++ b/board/LaCie/common/common.c
@@ -7,6 +7,7 @@
 #include <i2c.h>
 #include <miiphy.h>
 #include <stdio.h>
+#include <linux/types.h>
 
 #if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R)
 
diff --git a/board/LaCie/common/common.h b/board/LaCie/common/common.h
index bf75d0a09782..43cb59c8ff73 100644
--- a/board/LaCie/common/common.h
+++ b/board/LaCie/common/common.h
@@ -14,4 +14,5 @@ void mv_phy_88e1318_init(const char *name, u16 phyaddr);
 int lacie_read_mac_address(uchar *mac);
 #endif
 
+#include <linux/types.h>
 #endif /* _LACIE_COMMON_H */
diff --git a/board/LaCie/edminiv2/edminiv2.c b/board/LaCie/edminiv2/edminiv2.c
index 9c066a283c99..fc437b6c9942 100644
--- a/board/LaCie/edminiv2/edminiv2.c
+++ b/board/LaCie/edminiv2/edminiv2.c
@@ -12,6 +12,7 @@
 #include <net.h>
 #include <asm/arch/orion5x.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include "../common/common.h"
 #include <spl.h>
 #include <ns16550.h>
diff --git a/board/LaCie/net2big_v2/net2big_v2.c b/board/LaCie/net2big_v2/net2big_v2.c
index 93de669f89d0..d5e5844019f6 100644
--- a/board/LaCie/net2big_v2/net2big_v2.c
+++ b/board/LaCie/net2big_v2/net2big_v2.c
@@ -22,6 +22,7 @@
 #include <asm/arch/mpp.h>
 #include <asm/arch/gpio.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include "net2big_v2.h"
 #include "../common/common.h"
diff --git a/board/LaCie/netspace_v2/netspace_v2.c b/board/LaCie/netspace_v2/netspace_v2.c
index 730eab7e7031..6bea0fd06e5a 100644
--- a/board/LaCie/netspace_v2/netspace_v2.c
+++ b/board/LaCie/netspace_v2/netspace_v2.c
@@ -19,6 +19,7 @@
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
 #include <asm/arch/gpio.h>
+#include <linux/types.h>
 
 #include "netspace_v2.h"
 #include "../common/common.h"
diff --git a/board/Marvell/aspenite/aspenite.c b/board/Marvell/aspenite/aspenite.c
index 1f9389c0a7ab..05d95d072982 100644
--- a/board/Marvell/aspenite/aspenite.c
+++ b/board/Marvell/aspenite/aspenite.c
@@ -14,6 +14,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/mfp.h>
 #include <asm/arch/armada100.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/Marvell/db-88f6281-bp/db-88f6281-bp.c b/board/Marvell/db-88f6281-bp/db-88f6281-bp.c
index 08f79d4b5320..c41513c9e79e 100644
--- a/board/Marvell/db-88f6281-bp/db-88f6281-bp.c
+++ b/board/Marvell/db-88f6281-bp/db-88f6281-bp.c
@@ -4,6 +4,7 @@
 #include <init.h>
 #include <net.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
 #include <miiphy.h>
diff --git a/board/Marvell/db-88f6820-amc/db-88f6820-amc.c b/board/Marvell/db-88f6820-amc/db-88f6820-amc.c
index 0fa0820d7be7..b49121e426d8 100644
--- a/board/Marvell/db-88f6820-amc/db-88f6820-amc.c
+++ b/board/Marvell/db-88f6820-amc/db-88f6820-amc.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
diff --git a/board/Marvell/db-88f6820-gp/db-88f6820-gp.c b/board/Marvell/db-88f6820-gp/db-88f6820-gp.c
index b18ac9c2d0bc..ef9f3aa7ed22 100644
--- a/board/Marvell/db-88f6820-gp/db-88f6820-gp.c
+++ b/board/Marvell/db-88f6820-gp/db-88f6820-gp.c
@@ -14,6 +14,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
diff --git a/board/Marvell/db-mv784mp-gp/db-mv784mp-gp.c b/board/Marvell/db-mv784mp-gp/db-mv784mp-gp.c
index 39a1a52f704d..8a8167503dda 100644
--- a/board/Marvell/db-mv784mp-gp/db-mv784mp-gp.c
+++ b/board/Marvell/db-mv784mp-gp/db-mv784mp-gp.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/bitops.h>
 
diff --git a/board/Marvell/dreamplug/dreamplug.c b/board/Marvell/dreamplug/dreamplug.c
index ff02a72b3bb8..c7cbe7409548 100644
--- a/board/Marvell/dreamplug/dreamplug.c
+++ b/board/Marvell/dreamplug/dreamplug.c
@@ -17,6 +17,7 @@
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include "dreamplug.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/Marvell/gplugd/gplugd.c b/board/Marvell/gplugd/gplugd.c
index 8909fba88374..7de585f74c53 100644
--- a/board/Marvell/gplugd/gplugd.c
+++ b/board/Marvell/gplugd/gplugd.c
@@ -23,6 +23,7 @@
 #include <asm/gpio.h>
 #include <miiphy.h>
 #include <asm/mach-types.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 
diff --git a/board/Marvell/guruplug/guruplug.c b/board/Marvell/guruplug/guruplug.c
index ee4aa24150ca..29e5b2a66bf3 100644
--- a/board/Marvell/guruplug/guruplug.c
+++ b/board/Marvell/guruplug/guruplug.c
@@ -15,6 +15,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
+#include <asm/types.h>
 #include "guruplug.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/Marvell/mvebu_armada-37xx/board.c b/board/Marvell/mvebu_armada-37xx/board.c
index 1ae867e5816d..f164bd5e2b74 100644
--- a/board/Marvell/mvebu_armada-37xx/board.c
+++ b/board/Marvell/mvebu_armada-37xx/board.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 
diff --git a/board/Marvell/mvebu_armada-8k/board.c b/board/Marvell/mvebu_armada-8k/board.c
index 00c0d21782ae..370c756a49a1 100644
--- a/board/Marvell/mvebu_armada-8k/board.c
+++ b/board/Marvell/mvebu_armada-8k/board.c
@@ -12,6 +12,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 
diff --git a/board/Marvell/openrd/openrd.c b/board/Marvell/openrd/openrd.c
index 5d5447c394e3..18313affb2b8 100644
--- a/board/Marvell/openrd/openrd.c
+++ b/board/Marvell/openrd/openrd.c
@@ -20,6 +20,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
+#include <asm/types.h>
 #include "openrd.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/Marvell/sheevaplug/sheevaplug.c b/board/Marvell/sheevaplug/sheevaplug.c
index 4b126a5808d1..cc9a064d0f0e 100644
--- a/board/Marvell/sheevaplug/sheevaplug.c
+++ b/board/Marvell/sheevaplug/sheevaplug.c
@@ -15,6 +15,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
+#include <asm/types.h>
 #include "sheevaplug.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/Seagate/dockstar/dockstar.c b/board/Seagate/dockstar/dockstar.c
index 5797e3df7d5c..d98c4b2b0d8b 100644
--- a/board/Seagate/dockstar/dockstar.c
+++ b/board/Seagate/dockstar/dockstar.c
@@ -20,6 +20,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/mach-types.h>
+#include <asm/types.h>
 #include "dockstar.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/Seagate/goflexhome/goflexhome.c b/board/Seagate/goflexhome/goflexhome.c
index 1a00eb0cb1f4..d608b94c05f8 100644
--- a/board/Seagate/goflexhome/goflexhome.c
+++ b/board/Seagate/goflexhome/goflexhome.c
@@ -23,6 +23,7 @@
 #include <asm/arch/mpp.h>
 #include <asm/arch/cpu.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/Seagate/nas220/nas220.c b/board/Seagate/nas220/nas220.c
index 7f561b01dac0..51d0d6a99e57 100644
--- a/board/Seagate/nas220/nas220.c
+++ b/board/Seagate/nas220/nas220.c
@@ -19,6 +19,7 @@
 #include <asm/arch/mpp.h>
 #include <asm/arch/cpu.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/Synology/ds109/ds109.c b/board/Synology/ds109/ds109.c
index c15f8c38b9d2..1667a76f6e2d 100644
--- a/board/Synology/ds109/ds109.c
+++ b/board/Synology/ds109/ds109.c
@@ -15,6 +15,7 @@
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include <linux/string.h>
 #include "ds109.h"
diff --git a/board/Synology/ds109/ds109.h b/board/Synology/ds109/ds109.h
index cc6ef991f397..a91c90683fa0 100644
--- a/board/Synology/ds109/ds109.h
+++ b/board/Synology/ds109/ds109.h
@@ -8,6 +8,7 @@
 #ifndef __DS109_H
 #define __DS109_H
 
+#include <asm/types.h>
 #define DS109_OE_LOW			(0)
 #define DS109_OE_HIGH			(0)
 #define DS109_OE_VAL_LOW		((1 << 22)|(1 << 23))
diff --git a/board/Synology/ds414/cmd_syno.c b/board/Synology/ds414/cmd_syno.c
index f6a434d08c93..39e28291d75f 100644
--- a/board/Synology/ds414/cmd_syno.c
+++ b/board/Synology/ds414/cmd_syno.c
@@ -16,6 +16,7 @@
 #include <vsprintf.h>
 #include <linux/mtd/mtd.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include "../drivers/ddr/marvell/axp/ddr3_init.h"
diff --git a/board/Synology/ds414/ds414.c b/board/Synology/ds414/ds414.c
index 1ca2e300e085..083fba8e9488 100644
--- a/board/Synology/ds414/ds414.c
+++ b/board/Synology/ds414/ds414.c
@@ -12,6 +12,7 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/kernel.h>
 #include <linux/mbus.h>
diff --git a/board/abilis/tb100/tb100.c b/board/abilis/tb100/tb100.c
index 9ef7ed6e7f45..44fe5f6910ff 100644
--- a/board/abilis/tb100/tb100.c
+++ b/board/abilis/tb100/tb100.c
@@ -9,6 +9,7 @@
 #include <netdev.h>
 #include <asm/io.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 void reset_cpu(ulong addr)
 {
diff --git a/board/advantech/dms-ba16/dms-ba16.c b/board/advantech/dms-ba16/dms-ba16.c
index 42bfa740f1b9..80f86e669bc1 100644
--- a/board/advantech/dms-ba16/dms-ba16.c
+++ b/board/advantech/dms-ba16/dms-ba16.c
@@ -33,6 +33,7 @@
 #include <input.h>
 #include <pwm.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 DECLARE_GLOBAL_DATA_PTR;
 
 #define NC_PAD_CTRL (PAD_CTL_PUS_100K_UP |	\
diff --git a/board/advantech/imx8qm_rom7720_a1/imx8qm_rom7720_a1.c b/board/advantech/imx8qm_rom7720_a1/imx8qm_rom7720_a1.c
index 430c7d3745d2..ce47e9bbd7fb 100644
--- a/board/advantech/imx8qm_rom7720_a1/imx8qm_rom7720_a1.c
+++ b/board/advantech/imx8qm_rom7720_a1/imx8qm_rom7720_a1.c
@@ -21,6 +21,7 @@
 #include <asm/arch/imx8-pins.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/sys_proto.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/advantech/imx8qm_rom7720_a1/spl.c b/board/advantech/imx8qm_rom7720_a1/spl.c
index 8776a94ff079..4ef3609e4d4b 100644
--- a/board/advantech/imx8qm_rom7720_a1/spl.c
+++ b/board/advantech/imx8qm_rom7720_a1/spl.c
@@ -14,6 +14,7 @@
 #include <asm/u-boot.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <asm/gpio.h>
diff --git a/board/advantech/som-db5800-som-6867/som-db5800-som-6867.c b/board/advantech/som-db5800-som-6867/som-db5800-som-6867.c
index 8499fc541fa7..4ec8881e800a 100644
--- a/board/advantech/som-db5800-som-6867/som-db5800-som-6867.c
+++ b/board/advantech/som-db5800-som-6867/som-db5800-som-6867.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <init.h>
 #include <asm/fsp1/fsp_support.h>
+#include <asm/types.h>
 
 /* ALC262 Verb Table - 10EC0262 */
 static const u32 verb_table_data13[] = {
diff --git a/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c b/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c
index d8b9fdfe356f..4ca4ce390a54 100644
--- a/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c
+++ b/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c
@@ -8,6 +8,7 @@
 #include <init.h>
 #include <net.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/io.h>
diff --git a/board/alliedtelesis/SBx81LIFXCAT/sbx81lifxcat.c b/board/alliedtelesis/SBx81LIFXCAT/sbx81lifxcat.c
index 52b8eba92fc1..259c646fe0c7 100644
--- a/board/alliedtelesis/SBx81LIFXCAT/sbx81lifxcat.c
+++ b/board/alliedtelesis/SBx81LIFXCAT/sbx81lifxcat.c
@@ -11,6 +11,7 @@
 #include <netdev.h>
 #include <led.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/io.h>
 #include <asm/arch/cpu.h>
diff --git a/board/alliedtelesis/x530/x530.c b/board/alliedtelesis/x530/x530.c
index f4ff0b960d32..6ca84904fc5f 100644
--- a/board/alliedtelesis/x530/x530.c
+++ b/board/alliedtelesis/x530/x530.c
@@ -13,6 +13,7 @@
 #include <wdt.h>
 #include <asm/global_data.h>
 #include <asm/gpio.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
diff --git a/board/altera/arria5-socdk/qts/pinmux_config.h b/board/altera/arria5-socdk/qts/pinmux_config.h
index 78a032582490..a80d94290076 100644
--- a/board/altera/arria5-socdk/qts/pinmux_config.h
+++ b/board/altera/arria5-socdk/qts/pinmux_config.h
@@ -6,6 +6,7 @@
 #ifndef __SOCFPGA_PINMUX_CONFIG_H__
 #define __SOCFPGA_PINMUX_CONFIG_H__
 
+#include <asm/types.h>
 const u8 sys_mgr_init_table[] = {
 	0, /* EMACIO0 */
 	2, /* EMACIO1 */
diff --git a/board/altera/arria5-socdk/qts/sdram_config.h b/board/altera/arria5-socdk/qts/sdram_config.h
index 927a7a4f8e04..3519c3a204af 100644
--- a/board/altera/arria5-socdk/qts/sdram_config.h
+++ b/board/altera/arria5-socdk/qts/sdram_config.h
@@ -7,6 +7,7 @@
 #define __SOCFPGA_SDRAM_CONFIG_H__
 
 /* SDRAM configuration */
+#include <asm/types.h>
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR		0x5A56A
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP		0xB00088
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH		0x44555
diff --git a/board/altera/cyclone5-socdk/qts/pinmux_config.h b/board/altera/cyclone5-socdk/qts/pinmux_config.h
index ec64ae17a167..1426db42bea3 100644
--- a/board/altera/cyclone5-socdk/qts/pinmux_config.h
+++ b/board/altera/cyclone5-socdk/qts/pinmux_config.h
@@ -6,6 +6,7 @@
 #ifndef __SOCFPGA_PINMUX_CONFIG_H__
 #define __SOCFPGA_PINMUX_CONFIG_H__
 
+#include <asm/types.h>
 const u8 sys_mgr_init_table[] = {
 	0, /* EMACIO0 */
 	2, /* EMACIO1 */
diff --git a/board/altera/cyclone5-socdk/qts/sdram_config.h b/board/altera/cyclone5-socdk/qts/sdram_config.h
index 8adbfec11f95..3607260e25fc 100644
--- a/board/altera/cyclone5-socdk/qts/sdram_config.h
+++ b/board/altera/cyclone5-socdk/qts/sdram_config.h
@@ -7,6 +7,7 @@
 #define __SOCFPGA_SDRAM_CONFIG_H__
 
 /* SDRAM configuration */
+#include <asm/types.h>
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR		0x5A56A
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP		0xB00088
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH		0x44555
diff --git a/board/amazon/kc1/kc1.c b/board/amazon/kc1/kc1.c
index a1b179d1a3c4..783a0a18e12f 100644
--- a/board/amazon/kc1/kc1.c
+++ b/board/amazon/kc1/kc1.c
@@ -10,6 +10,7 @@
 #include <env.h>
 #include <init.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/ctype.h>
 #include <linux/usb/musb.h>
diff --git a/board/amlogic/odroid-n2/odroid-n2.c b/board/amlogic/odroid-n2/odroid-n2.c
index 005e4bebf13f..c7a174080ef1 100644
--- a/board/amlogic/odroid-n2/odroid-n2.c
+++ b/board/amlogic/odroid-n2/odroid-n2.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 #include <asm/arch/sm.h>
 #include <asm/arch/eth.h>
+#include <linux/types.h>
 
 #define EFUSE_MAC_OFFSET	20
 #define EFUSE_MAC_SIZE		12
diff --git a/board/amlogic/p200/p200.c b/board/amlogic/p200/p200.c
index 8f1bf8bfda47..dfa0d0f834aa 100644
--- a/board/amlogic/p200/p200.c
+++ b/board/amlogic/p200/p200.c
@@ -13,6 +13,7 @@
 #include <asm/arch/sm.h>
 #include <asm/arch/eth.h>
 #include <asm/arch/mem.h>
+#include <linux/types.h>
 
 #define EFUSE_SN_OFFSET		20
 #define EFUSE_SN_SIZE		16
diff --git a/board/amlogic/p201/p201.c b/board/amlogic/p201/p201.c
index 597bb71cbf7f..27e1caae0246 100644
--- a/board/amlogic/p201/p201.c
+++ b/board/amlogic/p201/p201.c
@@ -13,6 +13,7 @@
 #include <asm/arch/sm.h>
 #include <asm/arch/eth.h>
 #include <asm/arch/mem.h>
+#include <linux/types.h>
 
 #define EFUSE_SN_OFFSET		20
 #define EFUSE_SN_SIZE		16
diff --git a/board/amlogic/p212/p212.c b/board/amlogic/p212/p212.c
index fbc49e95651f..8ce9ff70aa94 100644
--- a/board/amlogic/p212/p212.c
+++ b/board/amlogic/p212/p212.c
@@ -14,6 +14,7 @@
 #include <asm/arch/sm.h>
 #include <asm/arch/eth.h>
 #include <asm/arch/mem.h>
+#include <linux/types.h>
 
 #define EFUSE_SN_OFFSET		20
 #define EFUSE_SN_SIZE		16
diff --git a/board/amlogic/q200/q200.c b/board/amlogic/q200/q200.c
index 62e6fa3d1992..8cd367cb384e 100644
--- a/board/amlogic/q200/q200.c
+++ b/board/amlogic/q200/q200.c
@@ -14,6 +14,7 @@
 #include <asm/arch/mem.h>
 #include <asm/arch/sm.h>
 #include <asm/arch/eth.h>
+#include <linux/types.h>
 
 #define EFUSE_SN_OFFSET		20
 #define EFUSE_SN_SIZE		16
diff --git a/board/aries/mcvevk/qts/pinmux_config.h b/board/aries/mcvevk/qts/pinmux_config.h
index 85f892ae473c..c4b8c501b237 100644
--- a/board/aries/mcvevk/qts/pinmux_config.h
+++ b/board/aries/mcvevk/qts/pinmux_config.h
@@ -6,6 +6,7 @@
 #ifndef __SOCFPGA_PINMUX_CONFIG_H__
 #define __SOCFPGA_PINMUX_CONFIG_H__
 
+#include <asm/types.h>
 const u8 sys_mgr_init_table[] = {
 	3, /* EMACIO0 */
 	3, /* EMACIO1 */
diff --git a/board/aries/mcvevk/qts/sdram_config.h b/board/aries/mcvevk/qts/sdram_config.h
index fd72926a89e3..9275164f148d 100644
--- a/board/aries/mcvevk/qts/sdram_config.h
+++ b/board/aries/mcvevk/qts/sdram_config.h
@@ -7,6 +7,7 @@
 #define __SOCFPGA_SDRAM_CONFIG_H__
 
 /* SDRAM configuration */
+#include <asm/types.h>
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR		0x5A56A
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP		0xB00088
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH		0x44555
diff --git a/board/aristainetos/aristainetos.c b/board/aristainetos/aristainetos.c
index 4451bed8a7dc..2e5200faae90 100644
--- a/board/aristainetos/aristainetos.c
+++ b/board/aristainetos/aristainetos.c
@@ -38,6 +38,7 @@
 #include <led.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/regulator.h>
 #include <power/da9063_pmic.h>
diff --git a/board/armadeus/apf27/apf27.c b/board/armadeus/apf27/apf27.c
index c78512ee5465..a66de0f7fdcf 100644
--- a/board/armadeus/apf27/apf27.c
+++ b/board/armadeus/apf27/apf27.c
@@ -20,6 +20,7 @@
 #include <asm/gpio.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include <u-boot/crc.h>
 #include "apf27.h"
 #include "fpga.h"
diff --git a/board/armltd/integrator/integrator.c b/board/armltd/integrator/integrator.c
index a85ac69962ba..7c1e02645ce5 100644
--- a/board/armltd/integrator/integrator.c
+++ b/board/armltd/integrator/integrator.c
@@ -27,6 +27,7 @@
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <dm/platform_data/serial_pl01x.h>
 #include "arm-ebi.h"
diff --git a/board/armltd/integrator/pci.c b/board/armltd/integrator/pci.c
index 28efc33f1f42..5f03a81e3489 100644
--- a/board/armltd/integrator/pci.c
+++ b/board/armltd/integrator/pci.c
@@ -24,6 +24,7 @@
 #include <log.h>
 #include <pci.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bug.h>
 #include <linux/delay.h>
 #include "integrator-sc.h"
diff --git a/board/armltd/integrator/timer.c b/board/armltd/integrator/timer.c
index 53d1c0ec3038..102c413b511b 100644
--- a/board/armltd/integrator/timer.c
+++ b/board/armltd/integrator/timer.c
@@ -20,6 +20,7 @@
 #include <div64.h>
 #include <time.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_ARCH_CINTEGRATOR
 #define DIV_CLOCK_INIT	1
diff --git a/board/armltd/vexpress/vexpress_common.c b/board/armltd/vexpress/vexpress_common.c
index ee9f61f2b7ac..013a70a3cb94 100644
--- a/board/armltd/vexpress/vexpress_common.c
+++ b/board/armltd/vexpress/vexpress_common.c
@@ -33,6 +33,7 @@
 #include <asm/u-boot.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "../drivers/mmc/arm_pl180_mmci.h"
 
 static struct systimer *systimer_base = (struct systimer *)V2M_TIMER01;
diff --git a/board/armltd/vexpress/vexpress_tc2.c b/board/armltd/vexpress/vexpress_tc2.c
index 75f9d8203495..cbb0a4e51fe6 100644
--- a/board/armltd/vexpress/vexpress_tc2.c
+++ b/board/armltd/vexpress/vexpress_tc2.c
@@ -10,6 +10,7 @@
 #include <stdio.h>
 #include <asm/armv7.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <common.h>
 #include <linux/libfdt.h>
diff --git a/board/armltd/vexpress64/pcie.c b/board/armltd/vexpress64/pcie.c
index 1ad320df3a9e..ad10f5ce5ed7 100644
--- a/board/armltd/vexpress64/pcie.c
+++ b/board/armltd/vexpress64/pcie.c
@@ -10,6 +10,7 @@
 #include <log.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/bitops.h>
 #include <pci_ids.h>
 #include <linux/delay.h>
diff --git a/board/armltd/vexpress64/vexpress64.c b/board/armltd/vexpress64/vexpress64.c
index 2a44828d6e6d..300cb44f8e9f 100644
--- a/board/armltd/vexpress64/vexpress64.c
+++ b/board/armltd/vexpress64/vexpress64.c
@@ -5,6 +5,7 @@
  * Sharma Bhupesh <bhupesh.sharma at freescale.com>
  */
 #include <common.h>
+#include <compiler.h>
 #include <cpu_func.h>
 #include <dm.h>
 #include <init.h>
@@ -19,6 +20,7 @@
 #include <linux/compiler.h>
 #include <dm/platform_data/serial_pl01x.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "pcie.h"
 #include <asm/armv8/mmu.h>
 
diff --git a/board/astro/mcf5373l/fpga.c b/board/astro/mcf5373l/fpga.c
index 871700ebfe8a..91ae8c528d6a 100644
--- a/board/astro/mcf5373l/fpga.c
+++ b/board/astro/mcf5373l/fpga.c
@@ -23,6 +23,7 @@
 #include <command.h>
 #include <asm/immap_5329.h>
 #include <asm/io.h>
+#include <linux/types.h>
 #include "fpga.h"
 
 int altera_pre_fn(int cookie)
diff --git a/board/astro/mcf5373l/mcf5373l.c b/board/astro/mcf5373l/mcf5373l.c
index 3eabf924c4a5..38616036bb72 100644
--- a/board/astro/mcf5373l/mcf5373l.c
+++ b/board/astro/mcf5373l/mcf5373l.c
@@ -16,6 +16,7 @@
 #include <asm/m5329.h>
 #include <asm/immap_5329.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 /* needed for astro bus: */
diff --git a/board/atmark-techno/armadillo-800eva/armadillo-800eva.c b/board/atmark-techno/armadillo-800eva/armadillo-800eva.c
index 1bae2832522f..97e18270a82a 100644
--- a/board/atmark-techno/armadillo-800eva/armadillo-800eva.c
+++ b/board/atmark-techno/armadillo-800eva/armadillo-800eva.c
@@ -31,6 +31,7 @@
 #include <asm/arch/sys_proto.h>
 #include <asm/gpio.h>
 #include <asm/arch/rmobile.h>
+#include <linux/types.h>
 
 #define s_init_wait(cnt) \
 		({	\
diff --git a/board/atmel/at91rm9200ek/at91rm9200ek.c b/board/atmel/at91rm9200ek/at91rm9200ek.c
index 5838e36c7a47..a085c1b448ed 100644
--- a/board/atmel/at91rm9200ek/at91rm9200ek.c
+++ b/board/atmel/at91rm9200ek/at91rm9200ek.c
@@ -19,6 +19,7 @@
 #include <asm/arch/at91_pio.h>
 #include <asm/arch/at91_common.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/atmel/at91sam9261ek/at91sam9261ek.c b/board/atmel/at91sam9261ek/at91sam9261ek.c
index 3a36a23a4d35..728909cc7a1e 100644
--- a/board/atmel/at91sam9261ek/at91sam9261ek.c
+++ b/board/atmel/at91sam9261ek/at91sam9261ek.c
@@ -26,6 +26,7 @@
 #endif
 #include <asm/mach-types.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/atmel/at91sam9263ek/at91sam9263ek.c b/board/atmel/at91sam9263ek/at91sam9263ek.c
index 3218e14e860a..b09b423b9127 100644
--- a/board/atmel/at91sam9263ek/at91sam9263ek.c
+++ b/board/atmel/at91sam9263ek/at91sam9263ek.c
@@ -25,6 +25,7 @@
 #include <lcd.h>
 #include <atmel_lcdc.h>
 #include <asm/mach-types.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c b/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c
index 8cb2808e058a..9ee9ad773769 100644
--- a/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c
+++ b/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c
@@ -22,6 +22,7 @@
 #include <linux/mtd/rawnand.h>
 #include <atmel_lcdc.h>
 #include <asm/mach-types.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/atmel/at91sam9n12ek/at91sam9n12ek.c b/board/atmel/at91sam9n12ek/at91sam9n12ek.c
index 75d5ffa88ae1..5e87553df02a 100644
--- a/board/atmel/at91sam9n12ek/at91sam9n12ek.c
+++ b/board/atmel/at91sam9n12ek/at91sam9n12ek.c
@@ -21,6 +21,7 @@
 #include <atmel_hlcdc.h>
 #include <netdev.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_LCD_INFO
 #include <nand.h>
diff --git a/board/atmel/at91sam9rlek/at91sam9rlek.c b/board/atmel/at91sam9rlek/at91sam9rlek.c
index f427ee658bff..2431c32cba62 100644
--- a/board/atmel/at91sam9rlek/at91sam9rlek.c
+++ b/board/atmel/at91sam9rlek/at91sam9rlek.c
@@ -19,6 +19,7 @@
 #include <asm/arch/at91_rstc.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
+#include <linux/types.h>
 
 #include <lcd.h>
 #include <atmel_lcdc.h>
diff --git a/board/atmel/common/board.c b/board/atmel/common/board.c
index 46cb5e407bb0..a7752629ec15 100644
--- a/board/atmel/common/board.c
+++ b/board/atmel/common/board.c
@@ -11,6 +11,7 @@
 #include <vsprintf.h>
 #include <w1.h>
 #include <w1-eeprom.h>
+#include <asm/types.h>
 #include <dm/device-internal.h>
 
 #define AT91_PDA_EEPROM_ID_OFFSET		15
diff --git a/board/atmel/common/mac-spi-nor.c b/board/atmel/common/mac-spi-nor.c
index 67bfd3785b70..e631b98a6d47 100644
--- a/board/atmel/common/mac-spi-nor.c
+++ b/board/atmel/common/mac-spi-nor.c
@@ -13,6 +13,7 @@
 #include <linux/mtd/spi-nor.h>
 #include <netdev.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define ETH_ADDR_SIZE			6
 
diff --git a/board/atmel/common/video_display.c b/board/atmel/common/video_display.c
index 33725a01f505..35f764005584 100644
--- a/board/atmel/common/video_display.c
+++ b/board/atmel/common/video_display.c
@@ -17,6 +17,7 @@
 #include <asm/io.h>
 #include <asm/arch/clk.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c b/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c
index 1b7d946b50c3..6ce59620b42b 100644
--- a/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c
+++ b/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c
@@ -16,6 +16,7 @@
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/sama5d2.h>
+#include <asm/types.h>
 
 extern void at91_pda_detect(void);
 
diff --git a/board/atmel/sama5d27_wlsom1_ek/sama5d27_wlsom1_ek.c b/board/atmel/sama5d27_wlsom1_ek/sama5d27_wlsom1_ek.c
index 32d51bba7d96..6a662a12b458 100644
--- a/board/atmel/sama5d27_wlsom1_ek/sama5d27_wlsom1_ek.c
+++ b/board/atmel/sama5d27_wlsom1_ek/sama5d27_wlsom1_ek.c
@@ -17,6 +17,7 @@
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/sama5d2.h>
+#include <asm/types.h>
 
 extern void at91_pda_detect(void);
 
diff --git a/board/atmel/sama5d2_icp/sama5d2_icp.c b/board/atmel/sama5d2_icp/sama5d2_icp.c
index 3f33fcfc4665..79bdd63f3af6 100644
--- a/board/atmel/sama5d2_icp/sama5d2_icp.c
+++ b/board/atmel/sama5d2_icp/sama5d2_icp.c
@@ -16,6 +16,7 @@
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/sama5d2.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/atmel/sama5d2_xplained/sama5d2_xplained.c b/board/atmel/sama5d2_xplained/sama5d2_xplained.c
index 5110ec89697f..9111b05578d5 100644
--- a/board/atmel/sama5d2_xplained/sama5d2_xplained.c
+++ b/board/atmel/sama5d2_xplained/sama5d2_xplained.c
@@ -16,6 +16,7 @@
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/sama5d2.h>
+#include <asm/types.h>
 
 extern void at91_pda_detect(void);
 
diff --git a/board/atmel/sama5d3_xplained/sama5d3_xplained.c b/board/atmel/sama5d3_xplained/sama5d3_xplained.c
index db9603f58477..2e42841023cb 100644
--- a/board/atmel/sama5d3_xplained/sama5d3_xplained.c
+++ b/board/atmel/sama5d3_xplained/sama5d3_xplained.c
@@ -17,6 +17,7 @@
 #include <spl.h>
 #include <asm/arch/atmel_mpddrc.h>
 #include <asm/arch/at91_wdt.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/atmel/sama5d3xek/sama5d3xek.c b/board/atmel/sama5d3xek/sama5d3xek.c
index 4fe979bc8a56..d5c593d95cb9 100644
--- a/board/atmel/sama5d3xek/sama5d3xek.c
+++ b/board/atmel/sama5d3xek/sama5d3xek.c
@@ -15,6 +15,7 @@
 #include <asm/arch/clk.h>
 #include <debug_uart.h>
 #include <env.h>
+#include <asm/types.h>
 #include <linux/ctype.h>
 #include <spl.h>
 #include <asm/arch/atmel_mpddrc.h>
diff --git a/board/atmel/sama5d4_xplained/sama5d4_xplained.c b/board/atmel/sama5d4_xplained/sama5d4_xplained.c
index 2088b48b7ee2..25d88538855a 100644
--- a/board/atmel/sama5d4_xplained/sama5d4_xplained.c
+++ b/board/atmel/sama5d4_xplained/sama5d4_xplained.c
@@ -16,6 +16,7 @@
 #include <asm/arch/sama5d3_smc.h>
 #include <asm/arch/sama5d4.h>
 #include <debug_uart.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/atmel/sama5d4ek/sama5d4ek.c b/board/atmel/sama5d4ek/sama5d4ek.c
index 46ec1eb32467..6215cd6634b1 100644
--- a/board/atmel/sama5d4ek/sama5d4ek.c
+++ b/board/atmel/sama5d4ek/sama5d4ek.c
@@ -16,6 +16,7 @@
 #include <asm/arch/sama5d3_smc.h>
 #include <asm/arch/sama5d4.h>
 #include <debug_uart.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/avionic-design/common/tamonten-ng.c b/board/avionic-design/common/tamonten-ng.c
index 1b509835d76a..af6c2bd93ccf 100644
--- a/board/avionic-design/common/tamonten-ng.c
+++ b/board/avionic-design/common/tamonten-ng.c
@@ -12,6 +12,7 @@
 #include <asm/arch/gpio.h>
 #include <asm/gpio.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "pinmux-config-tamonten-ng.h"
 #include <i2c.h>
 
diff --git a/board/bachmann/ot1200/ot1200.c b/board/bachmann/ot1200/ot1200.c
index 47b592117d5b..acf108a89dbb 100644
--- a/board/bachmann/ot1200/ot1200.c
+++ b/board/bachmann/ot1200/ot1200.c
@@ -32,6 +32,7 @@
 #include <asm/u-boot.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/bachmann/ot1200/ot1200_spl.c b/board/bachmann/ot1200/ot1200_spl.c
index 7fbd6f2c5d3e..dbb4121df979 100644
--- a/board/bachmann/ot1200/ot1200_spl.c
+++ b/board/bachmann/ot1200/ot1200_spl.c
@@ -7,6 +7,7 @@
 #include <init.h>
 #include <spl.h>
 #include <asm/arch/mx6-ddr.h>
+#include <linux/types.h>
 
 /* Configure MX6Q/DUAL mmdc DDR io registers */
 static struct mx6dq_iomux_ddr_regs ot1200_ddr_ioregs = {
diff --git a/board/barco/platinum/spl_picon.c b/board/barco/platinum/spl_picon.c
index aa33d1feb32c..79ee212f4ca0 100644
--- a/board/barco/platinum/spl_picon.c
+++ b/board/barco/platinum/spl_picon.c
@@ -19,6 +19,7 @@
 #include <asm/mach-imx/mxc_i2c.h>
 #include <spl.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include "platinum.h"
 
diff --git a/board/barco/platinum/spl_titanium.c b/board/barco/platinum/spl_titanium.c
index ef1e2c419b46..ddb14e72b799 100644
--- a/board/barco/platinum/spl_titanium.c
+++ b/board/barco/platinum/spl_titanium.c
@@ -19,6 +19,7 @@
 #include <asm/mach-imx/mxc_i2c.h>
 #include <spl.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include "platinum.h"
 
diff --git a/board/beacon/beacon-rzg2m/beacon-rzg2m.c b/board/beacon/beacon-rzg2m/beacon-rzg2m.c
index 4b31d8ff57cd..5e2ff717a5f4 100644
--- a/board/beacon/beacon-rzg2m/beacon-rzg2m.c
+++ b/board/beacon/beacon-rzg2m/beacon-rzg2m.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/arch/rcar-mstp.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/beacon/imx8mm/spl.c b/board/beacon/imx8mm/spl.c
index 2895ca24a3a6..516111684760 100644
--- a/board/beacon/imx8mm/spl.c
+++ b/board/beacon/imx8mm/spl.c
@@ -18,6 +18,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <dm/uclass.h>
 #include <dm/device.h>
diff --git a/board/beckhoff/mx53cx9020/mx53cx9020.c b/board/beckhoff/mx53cx9020/mx53cx9020.c
index cbaa4a68f9ed..e961f0570fa3 100644
--- a/board/beckhoff/mx53cx9020/mx53cx9020.c
+++ b/board/beckhoff/mx53cx9020/mx53cx9020.c
@@ -20,6 +20,7 @@
 #include <asm/gpio.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 enum LED_GPIOS {
 	GPIO_SD1_CD = IMX_GPIO_NR(1, 1),
diff --git a/board/beckhoff/mx53cx9020/mx53cx9020_video.c b/board/beckhoff/mx53cx9020/mx53cx9020_video.c
index 3be2cd5f0ff4..d4a9fa12fdc4 100644
--- a/board/beckhoff/mx53cx9020/mx53cx9020_video.c
+++ b/board/beckhoff/mx53cx9020/mx53cx9020_video.c
@@ -12,6 +12,7 @@
 #include <asm/gpio.h>
 #include <asm/mach-imx/video.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define CX9020_DVI_PWD	IMX_GPIO_NR(6, 1)
 
diff --git a/board/bluegiga/apx4devkit/apx4devkit.c b/board/bluegiga/apx4devkit/apx4devkit.c
index 2d4437fbfe0f..d1694954759d 100644
--- a/board/bluegiga/apx4devkit/apx4devkit.c
+++ b/board/bluegiga/apx4devkit/apx4devkit.c
@@ -27,6 +27,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
 #include <env.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/errno.h>
 #include <linux/mii.h>
diff --git a/board/bluegiga/apx4devkit/spl_boot.c b/board/bluegiga/apx4devkit/spl_boot.c
index d8ee1d0a63ec..ececbcc89112 100644
--- a/board/bluegiga/apx4devkit/spl_boot.c
+++ b/board/bluegiga/apx4devkit/spl_boot.c
@@ -21,6 +21,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #define	MUX_CONFIG_SSP0	(MXS_PAD_3V3 | MXS_PAD_8MA | MXS_PAD_PULLUP)
 #define	MUX_CONFIG_GPMI	(MXS_PAD_3V3 | MXS_PAD_4MA | MXS_PAD_NOPULL)
diff --git a/board/bluewater/gurnard/gurnard.c b/board/bluewater/gurnard/gurnard.c
index da597bbfb0a3..ff4d61fe23dc 100644
--- a/board/bluewater/gurnard/gurnard.c
+++ b/board/bluewater/gurnard/gurnard.c
@@ -39,6 +39,7 @@
 #include <dm/uclass-internal.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_GURNARD_SPLASH
 #include "splash_logo.h"
diff --git a/board/bosch/shc/board.c b/board/bosch/shc/board.c
index ac8665fc77b8..9213cefa2b6b 100644
--- a/board/bosch/shc/board.c
+++ b/board/bosch/shc/board.c
@@ -40,6 +40,7 @@
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 #include <power/tps65217.h>
 #include <env_internal.h>
 #include <watchdog.h>
diff --git a/board/bosch/shc/board.h b/board/bosch/shc/board.h
index 997595bf42b5..bdbd6d1260a3 100644
--- a/board/bosch/shc/board.h
+++ b/board/bosch/shc/board.h
@@ -15,6 +15,7 @@
 #define _BOARD_H_
 
 /* Definition to control the GPIOs (for LEDs and Reset) */
+#include <linux/types.h>
 #define GPIO_TO_PIN(bank, gpio) (32 * (bank) + (gpio))
 
 static inline int board_is_b_sample(void)
diff --git a/board/boundary/nitrogen6x/nitrogen6x.c b/board/boundary/nitrogen6x/nitrogen6x.c
index c5a522aea256..761a64812d4a 100644
--- a/board/boundary/nitrogen6x/nitrogen6x.c
+++ b/board/boundary/nitrogen6x/nitrogen6x.c
@@ -40,6 +40,7 @@
 #include <netdev.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <usb/ehci-ci.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/broadcom/bcm_ep/board.c b/board/broadcom/bcm_ep/board.c
index 3776d00b8d88..9efa3158ab7d 100644
--- a/board/broadcom/bcm_ep/board.c
+++ b/board/broadcom/bcm_ep/board.c
@@ -16,6 +16,7 @@
 #include <asm/system.h>
 #include <asm/iproc-common/armpll.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/broadcom/bcmns2/northstar2.c b/board/broadcom/bcmns2/northstar2.c
index 494e457ff65b..98b4da2b9dc5 100644
--- a/board/broadcom/bcmns2/northstar2.c
+++ b/board/broadcom/bcmns2/northstar2.c
@@ -9,6 +9,7 @@
 #include <asm/global_data.h>
 #include <asm/system.h>
 #include <asm/armv8/mmu.h>
+#include <linux/types.h>
 
 static struct mm_region ns2_mem_map[] = {
 	{
diff --git a/board/broadcom/bcmns3/ns3.c b/board/broadcom/bcmns3/ns3.c
index ac9ca20f8adc..711fee16f7a8 100644
--- a/board/broadcom/bcmns3/ns3.c
+++ b/board/broadcom/bcmns3/ns3.c
@@ -14,6 +14,7 @@
 #include <asm/arch-bcmns3/bl33_info.h>
 #include <dt-bindings/memory/bcm-ns3-mc.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 /* Default reset-level = 3 and strap-val = 0 */
 #define L3_RESET	30
diff --git a/board/bticino/mamoj/spl.c b/board/bticino/mamoj/spl.c
index 883b7f4133b9..9e3f2b28224f 100644
--- a/board/bticino/mamoj/spl.c
+++ b/board/bticino/mamoj/spl.c
@@ -11,6 +11,7 @@
 #include <spl.h>
 #include <asm/global_data.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <linux/sizes.h>
diff --git a/board/buffalo/lsxl/lsxl.c b/board/buffalo/lsxl/lsxl.c
index 97656dd2a7d1..c1d881a2c8c5 100644
--- a/board/buffalo/lsxl/lsxl.c
+++ b/board/buffalo/lsxl/lsxl.c
@@ -27,6 +27,7 @@
 #include <asm/arch/gpio.h>
 #include <asm/global_data.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include "lsxl.h"
 
diff --git a/board/cadence/xtfpga/xtfpga.c b/board/cadence/xtfpga/xtfpga.c
index f61e6bb93012..4101ee0c3240 100644
--- a/board/cadence/xtfpga/xtfpga.c
+++ b/board/cadence/xtfpga/xtfpga.c
@@ -10,6 +10,7 @@
 #include <init.h>
 #include <stdio.h>
 #include <vsprintf.h>
+#include <asm/types.h>
 #include <dm/platform_data/net_ethoc.h>
 #include <env.h>
 #include <linux/ctype.h>
diff --git a/board/cavium/thunderx/atf.c b/board/cavium/thunderx/atf.c
index 1c91cfe5f061..eabb753e97f7 100644
--- a/board/cavium/thunderx/atf.c
+++ b/board/cavium/thunderx/atf.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/ptrace.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/system.h>
 #include <cavium/thunderx_svc.h>
diff --git a/board/cavium/thunderx/thunderx.c b/board/cavium/thunderx/thunderx.c
index 71444324f317..2aa5b716c41a 100644
--- a/board/cavium/thunderx/thunderx.c
+++ b/board/cavium/thunderx/thunderx.c
@@ -14,6 +14,7 @@
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
 #include <linux/compiler.h>
+#include <linux/types.h>
 
 #include <cavium/atf.h>
 #include <asm/armv8/mmu.h>
diff --git a/board/ccv/xpress/spl.c b/board/ccv/xpress/spl.c
index 38bda8d1847c..a1dc38db5e75 100644
--- a/board/ccv/xpress/spl.c
+++ b/board/ccv/xpress/spl.c
@@ -11,6 +11,7 @@
 #include <asm/io.h>
 #include <asm/arch/mx6-ddr.h>
 #include <asm/arch/crm_regs.h>
+#include <linux/types.h>
 
 /* Configuration for IM IME1G16D3EEBG-15EI, 64M x 16 -> 128MiB */
 
diff --git a/board/ccv/xpress/xpress.c b/board/ccv/xpress/xpress.c
index dfc71ba91bed..060b8372b78e 100644
--- a/board/ccv/xpress/xpress.c
+++ b/board/ccv/xpress/xpress.c
@@ -27,6 +27,7 @@
 #include <mmc.h>
 #include <netdev.h>
 #include <usb.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
diff --git a/board/cirrus/edb93xx/edb93xx.c b/board/cirrus/edb93xx/edb93xx.c
index d33861f229c1..6b4dc61de28a 100644
--- a/board/cirrus/edb93xx/edb93xx.c
+++ b/board/cirrus/edb93xx/edb93xx.c
@@ -27,6 +27,7 @@
 #include <asm/mach-types.h>
 #include <asm/arch/ep93xx.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/cloudengines/pogo_e02/pogo_e02.c b/board/cloudengines/pogo_e02/pogo_e02.c
index fbb88a7150a7..b6fb6241ba9d 100644
--- a/board/cloudengines/pogo_e02/pogo_e02.c
+++ b/board/cloudengines/pogo_e02/pogo_e02.c
@@ -19,6 +19,7 @@
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include "pogo_e02.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/cobra5272/flash.c b/board/cobra5272/flash.c
index f1874e35ff46..09a2a14b67f9 100644
--- a/board/cobra5272/flash.c
+++ b/board/cobra5272/flash.c
@@ -14,6 +14,7 @@
 #include <vsprintf.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define PHYS_FLASH_1 CONFIG_SYS_FLASH_BASE
 #define FLASH_BANK_SIZE 0x200000
diff --git a/board/compulab/cl-som-imx7/cl-som-imx7.c b/board/compulab/cl-som-imx7/cl-som-imx7.c
index 28f4859f6491..1846c9bf4cfa 100644
--- a/board/compulab/cl-som-imx7/cl-som-imx7.c
+++ b/board/compulab/cl-som-imx7/cl-som-imx7.c
@@ -20,6 +20,7 @@
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/pfuze3000_pmic.h>
 #include <asm/mach-imx/mxc_i2c.h>
diff --git a/board/compulab/cl-som-imx7/spl.c b/board/compulab/cl-som-imx7/spl.c
index d75951615be4..b00d7c9052f9 100644
--- a/board/compulab/cl-som-imx7/spl.c
+++ b/board/compulab/cl-som-imx7/spl.c
@@ -19,6 +19,7 @@
 #include <asm/arch-mx7/mx7-ddr.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "common.h"
 
 #ifdef CONFIG_FSL_ESDHC_IMX
diff --git a/board/compulab/cm_fx6/cm_fx6.c b/board/compulab/cm_fx6/cm_fx6.c
index b3862fcf3a73..b7401748899b 100644
--- a/board/compulab/cm_fx6/cm_fx6.c
+++ b/board/compulab/cm_fx6/cm_fx6.c
@@ -42,6 +42,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "common.h"
 #include "../common/eeprom.h"
 #include "../common/common.h"
diff --git a/board/compulab/cm_fx6/spl.c b/board/compulab/cm_fx6/spl.c
index a66e60162377..e0f995762e57 100644
--- a/board/compulab/cm_fx6/spl.c
+++ b/board/compulab/cm_fx6/spl.c
@@ -24,6 +24,7 @@
 #include <fsl_esdhc_imx.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 #include "common.h"
 
 enum ddr_config {
diff --git a/board/compulab/cm_t335/cm_t335.c b/board/compulab/cm_t335/cm_t335.c
index 26ba6711c934..ee9f93a735a0 100644
--- a/board/compulab/cm_t335/cm_t335.c
+++ b/board/compulab/cm_t335/cm_t335.c
@@ -18,6 +18,7 @@
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/hardware_am33xx.h>
diff --git a/board/compulab/cm_t43/cm_t43.c b/board/compulab/cm_t43/cm_t43.c
index c035f3643103..4a1afd3727b4 100644
--- a/board/compulab/cm_t43/cm_t43.c
+++ b/board/compulab/cm_t43/cm_t43.c
@@ -15,6 +15,7 @@
 #include <asm/emif.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/tps65218.h>
 #include "board.h"
diff --git a/board/compulab/cm_t43/spl.c b/board/compulab/cm_t43/spl.c
index 14a37b0f5689..6665ee1f8402 100644
--- a/board/compulab/cm_t43/spl.c
+++ b/board/compulab/cm_t43/spl.c
@@ -11,6 +11,7 @@
 #include <asm/arch/clock.h>
 #include <asm/arch/ddr_defs.h>
 #include <asm/gpio.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 #include <power/pmic.h>
 #include <power/tps65218.h>
diff --git a/board/compulab/common/common.c b/board/compulab/common/common.c
index 7021e73b0820..cae98d2597f4 100644
--- a/board/compulab/common/common.c
+++ b/board/compulab/common/common.c
@@ -6,11 +6,13 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <malloc.h>
 #include <stdio.h>
 #include <asm/bootm.h>
 #include <asm/gpio.h>
 #include <asm/setup.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #include "common.h"
diff --git a/board/compulab/common/common.h b/board/compulab/common/common.h
index 17cfbb6f27a1..cc3c9dace240 100644
--- a/board/compulab/common/common.h
+++ b/board/compulab/common/common.h
@@ -8,6 +8,7 @@
 #ifndef _CL_COMMON_
 #define _CL_COMMON_
 
+#include <asm/types.h>
 #include <linux/errno.h>
 
 void cl_print_pcb_info(void);
diff --git a/board/compulab/common/eeprom.c b/board/compulab/common/eeprom.c
index cc190103c4cf..7b772b0c1043 100644
--- a/board/compulab/common/eeprom.c
+++ b/board/compulab/common/eeprom.c
@@ -17,6 +17,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "eeprom.h"
 
 #ifndef CONFIG_SYS_I2C_EEPROM_ADDR
diff --git a/board/compulab/common/eeprom.h b/board/compulab/common/eeprom.h
index 5e5aa41074dc..373087a86ce9 100644
--- a/board/compulab/common/eeprom.h
+++ b/board/compulab/common/eeprom.h
@@ -10,6 +10,7 @@
 #define _EEPROM_
 #include <errno.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_SYS_I2C
 int cl_eeprom_read_mac_addr(uchar *buf, uint eeprom_bus);
diff --git a/board/compulab/common/omap3_display.c b/board/compulab/common/omap3_display.c
index 61641aa83755..1af06666603c 100644
--- a/board/compulab/common/omap3_display.c
+++ b/board/compulab/common/omap3_display.c
@@ -20,6 +20,7 @@
 #include <asm/arch-omap3/dss.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 enum display_type {
 	NONE,
diff --git a/board/compulab/common/omap3_smc911x.c b/board/compulab/common/omap3_smc911x.c
index a6a03bc58237..f5d92553fb97 100644
--- a/board/compulab/common/omap3_smc911x.c
+++ b/board/compulab/common/omap3_smc911x.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <netdev.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #include <asm/io.h>
diff --git a/board/congatec/cgtqmx6eval/cgtqmx6eval.c b/board/congatec/cgtqmx6eval/cgtqmx6eval.c
index 6b37c27fabcd..f56875734e9b 100644
--- a/board/congatec/cgtqmx6eval/cgtqmx6eval.c
+++ b/board/congatec/cgtqmx6eval/cgtqmx6eval.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <init.h>
 #include <net.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
@@ -34,6 +35,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/pfuze100_pmic.h>
 #include <linux/fb.h>
diff --git a/board/congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c b/board/congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c
index 4184c34ace04..89d01b89782a 100644
--- a/board/congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c
+++ b/board/congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c
@@ -11,6 +11,7 @@
 #include <asm/gpio.h>
 #include <asm/ibmpc.h>
 #include <asm/pnp_def.h>
+#include <asm/types.h>
 
 int board_early_init_f(void)
 {
diff --git a/board/corscience/tricorder/led.c b/board/corscience/tricorder/led.c
index d876dd7b9f57..80387cd8116e 100644
--- a/board/corscience/tricorder/led.c
+++ b/board/corscience/tricorder/led.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/gpio.h>
+#include <linux/types.h>
 
 #define TRICORDER_STATUS_LED_YELLOW 42
 #define TRICORDER_STATUS_LED_GREEN  43
diff --git a/board/corscience/tricorder/tricorder-eeprom.c b/board/corscience/tricorder/tricorder-eeprom.c
index e239eeea1457..6444c096fbfc 100644
--- a/board/corscience/tricorder/tricorder-eeprom.c
+++ b/board/corscience/tricorder/tricorder-eeprom.c
@@ -6,6 +6,7 @@
  */
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <display_options.h>
 #include <eeprom.h>
 #include <i2c.h>
@@ -13,6 +14,7 @@
 #include <vsprintf.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <u-boot/crc.h>
 
 #include "tricorder-eeprom.h"
diff --git a/board/corscience/tricorder/tricorder-eeprom.h b/board/corscience/tricorder/tricorder-eeprom.h
index 7107b02a2c10..4906d241f09f 100644
--- a/board/corscience/tricorder/tricorder-eeprom.h
+++ b/board/corscience/tricorder/tricorder-eeprom.h
@@ -7,7 +7,9 @@
 #ifndef TRICORDER_EEPROM_H_
 #define TRICORDER_EEPROM_H_
 
+#include <compiler.h>
 #include <linux/compiler.h>
+#include <linux/types.h>
 
 #define TRICORDER_EEPROM_MAGIC 0xc2a94f52
 #define TRICORDER_EEPROM_VERSION 1
diff --git a/board/corscience/tricorder/tricorder.c b/board/corscience/tricorder/tricorder.c
index 08b8e7f4d04e..2d918acbe04d 100644
--- a/board/corscience/tricorder/tricorder.c
+++ b/board/corscience/tricorder/tricorder.c
@@ -25,6 +25,7 @@
 #include <asm/arch/mem.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "tricorder.h"
 #include "tricorder-eeprom.h"
 
diff --git a/board/cortina/presidio-asic/presidio.c b/board/cortina/presidio-asic/presidio.c
index f26ad2a5d9c1..a929350412a5 100644
--- a/board/cortina/presidio-asic/presidio.c
+++ b/board/cortina/presidio-asic/presidio.c
@@ -18,6 +18,7 @@
 #include <asm/psci.h>
 #include <cpu_func.h>
 #include <asm/armv8/mmu.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/creative/xfi3/spl_boot.c b/board/creative/xfi3/spl_boot.c
index dd31156e445f..b88ddcefe2e5 100644
--- a/board/creative/xfi3/spl_boot.c
+++ b/board/creative/xfi3/spl_boot.c
@@ -13,6 +13,7 @@
 #include <asm/arch/sys_proto.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define	MUX_CONFIG_EMI	(MXS_PAD_1V8 | MXS_PAD_12MA | MXS_PAD_PULLUP)
 #define	MUX_CONFIG_SSP	(MXS_PAD_3V3 | MXS_PAD_8MA | MXS_PAD_PULLUP)
diff --git a/board/creative/xfi3/xfi3.c b/board/creative/xfi3/xfi3.c
index 825a613aee4b..ce5ff83e084c 100644
--- a/board/creative/xfi3/xfi3.c
+++ b/board/creative/xfi3/xfi3.c
@@ -24,6 +24,7 @@
 #include <linux/delay.h>
 #include <linux/errno.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/cssi/MCR3000/MCR3000.c b/board/cssi/MCR3000/MCR3000.c
index 3bce44ef4305..c95163345206 100644
--- a/board/cssi/MCR3000/MCR3000.c
+++ b/board/cssi/MCR3000/MCR3000.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <env.h>
 #include <hwconfig.h>
 #include <init.h>
@@ -23,6 +24,7 @@
 #include <wdt.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/cssi/MCR3000/nand.c b/board/cssi/MCR3000/nand.c
index d2ed0fc7d49d..700b43113d1b 100644
--- a/board/cssi/MCR3000/nand.c
+++ b/board/cssi/MCR3000/nand.c
@@ -5,6 +5,7 @@
  * Christophe Leroy <christophe.leroy at c-s.fr>
  */
 
+#include <compiler.h>
 #include <config.h>
 #include <common.h>
 #include <nand.h>
diff --git a/board/d-link/dns325/dns325.c b/board/d-link/dns325/dns325.c
index a50220576f12..a1054d2f10c3 100644
--- a/board/d-link/dns325/dns325.c
+++ b/board/d-link/dns325/dns325.c
@@ -21,6 +21,7 @@
 #include <asm/arch/mpp.h>
 #include <asm/arch/gpio.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include "dns325.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/davinci/da8xxevm/da850evm.c b/board/davinci/da8xxevm/da850evm.c
index 8cc118cde5a4..cfb6d0ffdffd 100644
--- a/board/davinci/da8xxevm/da850evm.c
+++ b/board/davinci/da8xxevm/da850evm.c
@@ -32,6 +32,7 @@
 #include <asm/gpio.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_MMC_DAVINCI
 #include <mmc.h>
diff --git a/board/davinci/da8xxevm/omapl138_lcdk.c b/board/davinci/da8xxevm/omapl138_lcdk.c
index 30182d02805f..559ad93c9efe 100644
--- a/board/davinci/da8xxevm/omapl138_lcdk.c
+++ b/board/davinci/da8xxevm/omapl138_lcdk.c
@@ -31,6 +31,7 @@
 #endif
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/devboards/dbm-soc1/qts/pinmux_config.h b/board/devboards/dbm-soc1/qts/pinmux_config.h
index 3f34b131f330..90473c1828e2 100644
--- a/board/devboards/dbm-soc1/qts/pinmux_config.h
+++ b/board/devboards/dbm-soc1/qts/pinmux_config.h
@@ -6,6 +6,7 @@
 #ifndef __SOCFPGA_PINMUX_CONFIG_H__
 #define __SOCFPGA_PINMUX_CONFIG_H__
 
+#include <asm/types.h>
 const u8 sys_mgr_init_table[] = {
 	0, /* EMACIO0 */
 	2, /* EMACIO1 */
diff --git a/board/devboards/dbm-soc1/qts/sdram_config.h b/board/devboards/dbm-soc1/qts/sdram_config.h
index 2022969bed9b..ba77e006161b 100644
--- a/board/devboards/dbm-soc1/qts/sdram_config.h
+++ b/board/devboards/dbm-soc1/qts/sdram_config.h
@@ -7,6 +7,7 @@
 #define __SOCFPGA_SDRAM_CONFIG_H__
 
 /* SDRAM configuration */
+#include <asm/types.h>
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR		0x5A56A
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP		0xB00088
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH		0x44555
diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c b/board/dhelectronics/dh_imx6/dh_imx6.c
index 8badac1d682e..d05aa65728ff 100644
--- a/board/dhelectronics/dh_imx6/dh_imx6.c
+++ b/board/dhelectronics/dh_imx6/dh_imx6.c
@@ -14,6 +14,7 @@
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <dm/device-internal.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
diff --git a/board/dhelectronics/dh_imx6/dh_imx6_spl.c b/board/dhelectronics/dh_imx6/dh_imx6_spl.c
index fdf915fead49..d289f0917cb1 100644
--- a/board/dhelectronics/dh_imx6/dh_imx6_spl.c
+++ b/board/dhelectronics/dh_imx6/dh_imx6_spl.c
@@ -29,6 +29,7 @@
 #include <asm/u-boot.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #define ENET_PAD_CTRL							\
 	(PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED | PAD_CTL_DSE_40ohm |	\
diff --git a/board/dhelectronics/dh_stm32mp1/board.c b/board/dhelectronics/dh_stm32mp1/board.c
index 3fdf69d14685..5bebdbdea9ca 100644
--- a/board/dhelectronics/dh_stm32mp1/board.c
+++ b/board/dhelectronics/dh_stm32mp1/board.c
@@ -7,6 +7,7 @@
 #include <adc.h>
 #include <log.h>
 #include <net.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/arch/stm32.h>
@@ -42,6 +43,7 @@
 #include <linux/kernel.h>
 #include <linux/printk.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <power/regulator.h>
 #include <remoteproc.h>
 #include <reset.h>
diff --git a/board/ebv/socrates/qts/pinmux_config.h b/board/ebv/socrates/qts/pinmux_config.h
index 41b634315bfb..950b72aa6179 100644
--- a/board/ebv/socrates/qts/pinmux_config.h
+++ b/board/ebv/socrates/qts/pinmux_config.h
@@ -6,6 +6,7 @@
 #ifndef __SOCFPGA_PINMUX_CONFIG_H__
 #define __SOCFPGA_PINMUX_CONFIG_H__
 
+#include <asm/types.h>
 const u8 sys_mgr_init_table[] = {
 	0, /* EMACIO0 */
 	2, /* EMACIO1 */
diff --git a/board/ebv/socrates/qts/sdram_config.h b/board/ebv/socrates/qts/sdram_config.h
index 2f8465bf77ca..1bf1e8708ea6 100644
--- a/board/ebv/socrates/qts/sdram_config.h
+++ b/board/ebv/socrates/qts/sdram_config.h
@@ -7,6 +7,7 @@
 #define __SOCFPGA_SDRAM_CONFIG_H__
 
 /* SDRAM configuration */
+#include <asm/types.h>
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRDWR_CPORTRDWR		0x5A56A
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTRMAP_CPORTRMAP		0xB00088
 #define CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH		0x44555
diff --git a/board/eets/pdu001/board.c b/board/eets/pdu001/board.c
index 4268885e29e5..351af43b6d7e 100644
--- a/board/eets/pdu001/board.c
+++ b/board/eets/pdu001/board.c
@@ -20,6 +20,7 @@
 #include <watchdog.h>
 #include <debug_uart.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <dm/ofnode.h>
 #include <power/pmic.h>
 #include <power/regulator.h>
diff --git a/board/eets/pdu001/board.h b/board/eets/pdu001/board.h
index bfea96e5f02a..034a24ac67c3 100644
--- a/board/eets/pdu001/board.h
+++ b/board/eets/pdu001/board.h
@@ -25,6 +25,7 @@
  * However we relay on the ROM to configure the pins of MMC0 (eMMC) as well
  * as MMC1 (microSD card-cage) since these are our boot devices.
  */
+#include <asm/types.h>
 void enable_uart0_pin_mux(void);
 void enable_uart1_pin_mux(void);
 void enable_uart2_pin_mux(void);
diff --git a/board/eets/pdu001/mux.c b/board/eets/pdu001/mux.c
index f0f9e262ebdb..4466775c8119 100644
--- a/board/eets/pdu001/mux.c
+++ b/board/eets/pdu001/mux.c
@@ -13,6 +13,7 @@
 #include <asm/arch/hardware.h>
 #include <asm/arch/mux.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include "board.h"
 
 static struct module_pin_mux uart0_pin_mux[] = {
diff --git a/board/egnite/ethernut5/ethernut5_pwrman.c b/board/egnite/ethernut5/ethernut5_pwrman.c
index ad5285f8ca98..93a8f1c9a77d 100644
--- a/board/egnite/ethernut5/ethernut5_pwrman.c
+++ b/board/egnite/ethernut5/ethernut5_pwrman.c
@@ -20,6 +20,7 @@
  * which allows to manually deal with the PMC.
  *
  * Two distinct registers are provided by the PMC for enabling
+#include <asm/types.h>
  * and disabling specific features. This avoids the often seen
  * read-modify-write cycle or shadow register requirement.
  * Additional registers are available to query the board
diff --git a/board/el/el6x/el6x.c b/board/el/el6x/el6x.c
index 952ec9dae101..e5ff2dab705c 100644
--- a/board/el/el6x/el6x.c
+++ b/board/el/el6x/el6x.c
@@ -35,6 +35,7 @@
 #include <input.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/pfuze100_pmic.h>
 #include <asm/arch/mx6-ddr.h>
diff --git a/board/embest/mx6boards/mx6boards.c b/board/embest/mx6boards/mx6boards.c
index b6d29adc5f40..e4ae166ea5b0 100644
--- a/board/embest/mx6boards/mx6boards.c
+++ b/board/embest/mx6boards/mx6boards.c
@@ -43,6 +43,7 @@
 #include <ipu_pixfmt.h>
 #include <asm/io.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/emulation/qemu-arm/qemu-arm.c b/board/emulation/qemu-arm/qemu-arm.c
index e6b8776bfafc..4bbde528de70 100644
--- a/board/emulation/qemu-arm/qemu-arm.c
+++ b/board/emulation/qemu-arm/qemu-arm.c
@@ -11,6 +11,7 @@
 #include <log.h>
 #include <virtio_types.h>
 #include <virtio.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 
 #ifdef CONFIG_ARM64
diff --git a/board/emulation/qemu-riscv/qemu-riscv.c b/board/emulation/qemu-riscv/qemu-riscv.c
index dcfd3f20bee6..80a137595697 100644
--- a/board/emulation/qemu-riscv/qemu-riscv.c
+++ b/board/emulation/qemu-riscv/qemu-riscv.c
@@ -13,6 +13,7 @@
 #include <init.h>
 #include <virtio_types.h>
 #include <virtio.h>
+#include <linux/types.h>
 
 int board_init(void)
 {
diff --git a/board/engicam/common/board.c b/board/engicam/common/board.c
index 174266397048..971b08f6349b 100644
--- a/board/engicam/common/board.c
+++ b/board/engicam/common/board.c
@@ -18,6 +18,7 @@
 #include <asm/arch/sys_proto.h>
 #include <watchdog.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <linux/string.h>
 
diff --git a/board/engicam/common/spl.c b/board/engicam/common/spl.c
index fc01fabd521f..a859522646a8 100644
--- a/board/engicam/common/spl.c
+++ b/board/engicam/common/spl.c
@@ -13,6 +13,7 @@
 #include <stdio.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <asm/gpio.h>
diff --git a/board/engicam/imx6q/imx6q.c b/board/engicam/imx6q/imx6q.c
index 3405c7a09e41..eb8322a7848b 100644
--- a/board/engicam/imx6q/imx6q.c
+++ b/board/engicam/imx6q/imx6q.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #include <asm/io.h>
 #include <asm/gpio.h>
diff --git a/board/esd/meesc/meesc.c b/board/esd/meesc/meesc.c
index 6ddaed412ed8..9936733ee4d6 100644
--- a/board/esd/meesc/meesc.c
+++ b/board/esd/meesc/meesc.c
@@ -31,6 +31,7 @@
 #include <netdev.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/esd/vme8349/caddy.c b/board/esd/vme8349/caddy.c
index 7ced22e8430d..67538bf8a006 100644
--- a/board/esd/vme8349/caddy.c
+++ b/board/esd/vme8349/caddy.c
@@ -18,6 +18,7 @@
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include "caddy.h"
 
diff --git a/board/esd/vme8349/caddy.h b/board/esd/vme8349/caddy.h
index 8e3033ba20ee..3d0df1e1c0e7 100644
--- a/board/esd/vme8349/caddy.h
+++ b/board/esd/vme8349/caddy.h
@@ -9,6 +9,7 @@
 #ifndef __CADDY_H__
 #define __CADDY_H__
 
+#include <linux/types.h>
 #define CMD_SIZE	1024
 #define ANSWER_SIZE	1024
 #define CADDY_MAGIC	"esd vme8349 V1.0"
diff --git a/board/esd/vme8349/pci.c b/board/esd/vme8349/pci.c
index bf59cc8d8c2d..8db2062a0491 100644
--- a/board/esd/vme8349/pci.c
+++ b/board/esd/vme8349/pci.c
@@ -20,6 +20,7 @@
 #include <i2c.h>
 #include <asm/fsl_i2c.h>
 #include <asm/ppc.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 #include "vme8349pin.h"
 
diff --git a/board/esd/vme8349/vme8349.c b/board/esd/vme8349/vme8349.c
index 014578673656..e4a2dd491486 100644
--- a/board/esd/vme8349/vme8349.c
+++ b/board/esd/vme8349/vme8349.c
@@ -33,6 +33,7 @@
 #include <asm/u-boot.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/common/arm_sleep.c b/board/freescale/common/arm_sleep.c
index ddcab9f9eef9..2e51b43de3cf 100644
--- a/board/freescale/common/arm_sleep.c
+++ b/board/freescale/common/arm_sleep.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <log.h>
 #include <stdbool.h>
 #include <asm/global_data.h>
@@ -14,6 +15,7 @@
 #include <asm/secure.h>
 #endif
 #include <asm/armv7.h>
+#include <asm/types.h>
 
 #if defined(CONFIG_ARCH_LS1021A)
 #include <asm/arch/immap_ls102xa.h>
diff --git a/board/freescale/common/cadmus.c b/board/freescale/common/cadmus.c
index 7e7394f333e7..2b5b62e5bc06 100644
--- a/board/freescale/common/cadmus.c
+++ b/board/freescale/common/cadmus.c
@@ -5,6 +5,7 @@
 
 
 #include <common.h>
+#include <linux/types.h>
 
 
 /*
diff --git a/board/freescale/common/cds_pci_ft.c b/board/freescale/common/cds_pci_ft.c
index 6b3690610d99..c5d673c2db97 100644
--- a/board/freescale/common/cds_pci_ft.c
+++ b/board/freescale/common/cds_pci_ft.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/board/freescale/common/cmd_esbc_validate.c b/board/freescale/common/cmd_esbc_validate.c
index 72b58360c271..1a77528a5ede 100644
--- a/board/freescale/common/cmd_esbc_validate.c
+++ b/board/freescale/common/cmd_esbc_validate.c
@@ -9,6 +9,7 @@
 #include <fsl_validate.h>
 #include <stdio.h>
 #include <vsprintf.h>
+#include <linux/types.h>
 
 int do_esbc_halt(struct cmd_tbl *cmdtp, int flag, int argc,
 		 char *const argv[])
diff --git a/board/freescale/common/dcu_sii9022a.c b/board/freescale/common/dcu_sii9022a.c
index dc0f27bfe71d..3170444c8f52 100644
--- a/board/freescale/common/dcu_sii9022a.c
+++ b/board/freescale/common/dcu_sii9022a.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <fsl_dcu_fb.h>
 #include <i2c.h>
+#include <asm/types.h>
 #include <linux/fb.h>
 
 #define PIXEL_CLK_LSB_REG		0x00
diff --git a/board/freescale/common/diu_ch7301.c b/board/freescale/common/diu_ch7301.c
index cd6264b354f5..8305a5c6af62 100644
--- a/board/freescale/common/diu_ch7301.c
+++ b/board/freescale/common/diu_ch7301.c
@@ -13,6 +13,7 @@
 #include <stdio.h>
 #include <stdio_dev.h>
 #include <i2c.h>
+#include <asm/types.h>
 #include <linux/delay.h>
 
 #define I2C_DVI_INPUT_DATA_FORMAT_REG		0x1F
diff --git a/board/freescale/common/emc2305.c b/board/freescale/common/emc2305.c
index b8f2bbd2b5a9..82544d4f55a6 100644
--- a/board/freescale/common/emc2305.c
+++ b/board/freescale/common/emc2305.c
@@ -11,6 +11,7 @@
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #include "emc2305.h"
 
diff --git a/board/freescale/common/emc2305.h b/board/freescale/common/emc2305.h
index eddf53713844..5608f72f5101 100644
--- a/board/freescale/common/emc2305.h
+++ b/board/freescale/common/emc2305.h
@@ -8,6 +8,7 @@
 #ifndef __EMC2305_H_
 #define __EMC2305_H_
 
+#include <asm/types.h>
 #define I2C_EMC2305_CONF		0x20
 #define I2C_EMC2305_FAN1		0x30
 #define I2C_EMC2305_FAN2		0x40
diff --git a/board/freescale/common/fman.c b/board/freescale/common/fman.c
index 358303108d8d..af45f3429a78 100644
--- a/board/freescale/common/fman.c
+++ b/board/freescale/common/fman.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <asm/types.h>
 #include <linux/libfdt.h>
 #include <linux/libfdt_env.h>
 #include <fdt_support.h>
diff --git a/board/freescale/common/fman.h b/board/freescale/common/fman.h
index 16afc34b03e3..976a09f1e142 100644
--- a/board/freescale/common/fman.h
+++ b/board/freescale/common/fman.h
@@ -6,6 +6,7 @@
 #ifndef __FMAN_BOARD_HELPER__
 #define __FMAN_BOARD_HELPER__
 
+#include <asm/types.h>
 int fdt_set_phy_handle(void *fdt, char *compat, phys_addr_t addr,
 			const char *alias);
 
diff --git a/board/freescale/common/fsl_chain_of_trust.c b/board/freescale/common/fsl_chain_of_trust.c
index 7567ea2c1c29..dd8dcba41574 100644
--- a/board/freescale/common/fsl_chain_of_trust.c
+++ b/board/freescale/common/fsl_chain_of_trust.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <env.h>
 #include <fsl_validate.h>
@@ -12,6 +13,7 @@
 #include <log.h>
 #include <stdio.h>
 #include <dm/root.h>
+#include <linux/types.h>
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_FRAMEWORK)
 #include <spl.h>
diff --git a/board/freescale/common/fsl_validate.c b/board/freescale/common/fsl_validate.c
index a228c82bc8e0..7b962025c603 100644
--- a/board/freescale/common/fsl_validate.c
+++ b/board/freescale/common/fsl_validate.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <flash.h>
 #include <fsl_validate.h>
@@ -17,6 +18,7 @@
 #include <vsprintf.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <u-boot/rsa-mod-exp.h>
 #include <hash.h>
 #include <fsl_secboot_err.h>
diff --git a/board/freescale/common/ics307_clk.c b/board/freescale/common/ics307_clk.c
index 7a74239fb3a4..2cd8adf24cb9 100644
--- a/board/freescale/common/ics307_clk.c
+++ b/board/freescale/common/ics307_clk.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <log.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/kernel.h>
 
 #include "ics307_clk.h"
diff --git a/board/freescale/common/idt8t49n222a_serdes_clk.h b/board/freescale/common/idt8t49n222a_serdes_clk.h
index b1528e326693..4e21403e9146 100644
--- a/board/freescale/common/idt8t49n222a_serdes_clk.h
+++ b/board/freescale/common/idt8t49n222a_serdes_clk.h
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <i2c.h>
+#include <asm/types.h>
 #include "qixis.h"
 #include "../b4860qds/b4860qds_qixis.h"
 #include <errno.h>
diff --git a/board/freescale/common/ls102xa_stream_id.c b/board/freescale/common/ls102xa_stream_id.c
index a6ee87da9f55..f1f86e5cc294 100644
--- a/board/freescale/common/ls102xa_stream_id.c
+++ b/board/freescale/common/ls102xa_stream_id.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <asm/io.h>
 #include <asm/arch/ls102xa_stream_id.h>
+#include <linux/types.h>
 
 void ls102xa_config_smmu_stream_id(struct smmu_stream_id *id, uint32_t num)
 {
diff --git a/board/freescale/common/mc34vr500.c b/board/freescale/common/mc34vr500.c
index d96d1e2293f2..12ad0057c236 100644
--- a/board/freescale/common/mc34vr500.c
+++ b/board/freescale/common/mc34vr500.c
@@ -10,6 +10,7 @@
 #include <log.h>
 #include <stdio.h>
 #include <linux/errno.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/mc34vr500_pmic.h>
 
diff --git a/board/freescale/common/mpc85xx_sleep.c b/board/freescale/common/mpc85xx_sleep.c
index bfaf8eb2d6fd..f2daa50150ba 100644
--- a/board/freescale/common/mpc85xx_sleep.c
+++ b/board/freescale/common/mpc85xx_sleep.c
@@ -4,10 +4,12 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <log.h>
 #include <stdbool.h>
 #include <asm/global_data.h>
 #include <asm/immap_85xx.h>
+#include <asm/types.h>
 #include "sleep.h"
 #ifdef CONFIG_U_QE
 #include <fsl_qe.h>
diff --git a/board/freescale/common/ngpixis.c b/board/freescale/common/ngpixis.c
index 6938c2c2ead4..45d61caaae22 100644
--- a/board/freescale/common/ngpixis.c
+++ b/board/freescale/common/ngpixis.c
@@ -34,6 +34,7 @@
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 #include "ngpixis.h"
diff --git a/board/freescale/common/ngpixis.h b/board/freescale/common/ngpixis.h
index 7a20ee015fa3..7342220bc040 100644
--- a/board/freescale/common/ngpixis.h
+++ b/board/freescale/common/ngpixis.h
@@ -10,6 +10,7 @@
 /* ngPIXIS register set. Hopefully, this won't change too much over time.
  * Feel free to add board-specific #ifdefs where necessary.
  */
+#include <asm/types.h>
 typedef struct ngpixis {
 	u8 id;
 	u8 arch;
diff --git a/board/freescale/common/ns_access.c b/board/freescale/common/ns_access.c
index 64eeb1159e76..16fb8d44adda 100644
--- a/board/freescale/common/ns_access.c
+++ b/board/freescale/common/ns_access.c
@@ -11,6 +11,7 @@
 #include <asm/arch/ns_access.h>
 #include <asm/arch/fsl_serdes.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 
 #ifdef CONFIG_ARCH_LS1021A
 static struct csu_ns_dev ns_dev[] = {
diff --git a/board/freescale/common/pfuze.c b/board/freescale/common/pfuze.c
index 2011738fe215..95a21e1cb9b6 100644
--- a/board/freescale/common/pfuze.c
+++ b/board/freescale/common/pfuze.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <errno.h>
 #include <stdio.h>
+#include <asm/types.h>
 #include <linux/errno.h>
 #include <power/pmic.h>
 #include <power/pfuze100_pmic.h>
diff --git a/board/freescale/common/pfuze.h b/board/freescale/common/pfuze.h
index 45b49afaeb77..8cb94f8885c5 100644
--- a/board/freescale/common/pfuze.h
+++ b/board/freescale/common/pfuze.h
@@ -14,4 +14,5 @@ struct pmic *pfuze_common_init(unsigned char i2cbus);
 int pfuze_mode_init(struct pmic *p, u32 mode);
 #endif
 
+#include <asm/types.h>
 #endif
diff --git a/board/freescale/common/pixis.c b/board/freescale/common/pixis.c
index 2d232958c5ba..3dc5a3bf3caa 100644
--- a/board/freescale/common/pixis.c
+++ b/board/freescale/common/pixis.c
@@ -10,6 +10,7 @@
 #include <stdio.h>
 #include <vsprintf.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/string.h>
 
 #define pixis_base (u8 *)PIXIS_BASE
diff --git a/board/freescale/common/pixis.h b/board/freescale/common/pixis.h
index 40053c45bb75..78a2cd926e79 100644
--- a/board/freescale/common/pixis.h
+++ b/board/freescale/common/pixis.h
@@ -160,6 +160,7 @@ typedef struct pixis {
 #endif
 
 /* Pointer to the PIXIS register set */
+#include <asm/types.h>
 #define pixis ((pixis_t *)PIXIS_BASE)
 
 #endif	/* __PIXIS_H_ */
diff --git a/board/freescale/common/pq-mds-pib.c b/board/freescale/common/pq-mds-pib.c
index 10e1dfe43f97..8143f042c5bb 100644
--- a/board/freescale/common/pq-mds-pib.c
+++ b/board/freescale/common/pq-mds-pib.c
@@ -12,6 +12,7 @@
 #include <i2c.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 
 #include "pq-mds-pib.h"
 
diff --git a/board/freescale/common/qixis.c b/board/freescale/common/qixis.c
index ee42a53dae16..07e1d0ef18e2 100644
--- a/board/freescale/common/qixis.c
+++ b/board/freescale/common/qixis.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <stdio.h>
 #include <asm/io.h>
 #include <linux/compiler.h>
@@ -16,6 +17,7 @@
 #include <linux/string.h>
 #include <linux/time.h>
 #include <i2c.h>
+#include <linux/types.h>
 #include "qixis.h"
 
 #ifndef QIXIS_LBMAP_BRDCFG_REG
diff --git a/board/freescale/common/qixis.h b/board/freescale/common/qixis.h
index 93638d24524d..339980cbf011 100644
--- a/board/freescale/common/qixis.h
+++ b/board/freescale/common/qixis.h
@@ -10,6 +10,7 @@
 #ifndef __QIXIS_H_
 #define __QIXIS_H_
 
+#include <asm/types.h>
 struct qixis {
 	u8 id;      /* ID value uniquely identifying each QDS board type */
 	u8 arch;    /* Board version information */
diff --git a/board/freescale/common/sdhc_boot.c b/board/freescale/common/sdhc_boot.c
index a1c7a94a90e3..903c6535097d 100644
--- a/board/freescale/common/sdhc_boot.c
+++ b/board/freescale/common/sdhc_boot.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <mmc.h>
 #include <malloc.h>
+#include <asm/types.h>
 
 /*
  * The environment variables are written to just after the u-boot image
diff --git a/board/freescale/common/sgmii_riser.c b/board/freescale/common/sgmii_riser.c
index 5e486a98e848..2f689b7783ed 100644
--- a/board/freescale/common/sgmii_riser.c
+++ b/board/freescale/common/sgmii_riser.c
@@ -21,6 +21,7 @@
 #include <tsec.h>
 #include <fdt_support.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 void fsl_sgmii_riser_init(struct tsec_info_struct *tsec_info, int num)
 {
diff --git a/board/freescale/common/spl.h b/board/freescale/common/spl.h
index d4689d3d7269..b0e7abf76cbe 100644
--- a/board/freescale/common/spl.h
+++ b/board/freescale/common/spl.h
@@ -6,6 +6,7 @@
 #ifndef __FREESCALE_BOARD_SPL_H
 #define __FREESCALE_BOARD_SPL_H
 
+#include <linux/types.h>
 void fsl_spi_spl_load_image(uint32_t offs, unsigned int size, void *vdst);
 void fsl_spi_boot(void) __noreturn;
 
diff --git a/board/freescale/common/sys_eeprom.c b/board/freescale/common/sys_eeprom.c
index f04bec05a419..3eeabf616d4b 100644
--- a/board/freescale/common/sys_eeprom.c
+++ b/board/freescale/common/sys_eeprom.c
@@ -8,11 +8,13 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <env.h>
 #include <i2c.h>
 #include <init.h>
 #include <stdio.h>
 #include <vsprintf.h>
+#include <asm/types.h>
 #include <linux/ctype.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
diff --git a/board/freescale/common/vid.c b/board/freescale/common/vid.c
index f1ef3142c0c2..0a738e9e2d40 100644
--- a/board/freescale/common/vid.c
+++ b/board/freescale/common/vid.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <compiler.h>
 #include <env.h>
 #include <i2c.h>
 #include <irq_func.h>
@@ -21,6 +22,7 @@
 #endif
 #include <linux/delay.h>
 #include <linux/kernel.h>
+#include <linux/types.h>
 #include "vid.h"
 
 int __weak i2c_multiplexer_select_vid_channel(u8 channel)
diff --git a/board/freescale/common/vid.h b/board/freescale/common/vid.h
index 99778e9a934b..a74f517c098c 100644
--- a/board/freescale/common/vid.h
+++ b/board/freescale/common/vid.h
@@ -6,6 +6,7 @@
 #ifndef __VID_H_
 #define __VID_H_
 
+#include <linux/types.h>
 #define IR36021_LOOP1_MANUAL_ID_OFFSET	0x6A
 #define IR36021_LOOP1_VOUT_OFFSET	0x9A
 #define IR36021_MFR_ID_OFFSET		0x92
diff --git a/board/freescale/corenet_ds/corenet_ds.c b/board/freescale/corenet_ds/corenet_ds.c
index a6b93bab4e89..89dac9f46c89 100644
--- a/board/freescale/corenet_ds/corenet_ds.c
+++ b/board/freescale/corenet_ds/corenet_ds.c
@@ -12,6 +12,7 @@
 #include <netdev.h>
 #include <stdio.h>
 #include <asm/global_data.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/corenet_ds/ddr.c b/board/freescale/corenet_ds/ddr.c
index ea1419efa700..473217b33b22 100644
--- a/board/freescale/corenet_ds/ddr.c
+++ b/board/freescale/corenet_ds/ddr.c
@@ -17,6 +17,7 @@
 #include <fsl_ddr_dimm_params.h>
 #include <asm/fsl_law.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/corenet_ds/eth_hydra.c b/board/freescale/corenet_ds/eth_hydra.c
index f7c337d677af..e38c1d59dca3 100644
--- a/board/freescale/corenet_ds/eth_hydra.c
+++ b/board/freescale/corenet_ds/eth_hydra.c
@@ -58,6 +58,7 @@
 #include <malloc.h>
 #include <fdt_support.h>
 #include <fsl_dtsec.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
 
diff --git a/board/freescale/corenet_ds/eth_p4080.c b/board/freescale/corenet_ds/eth_p4080.c
index 30b7912c270f..64066851c6bc 100644
--- a/board/freescale/corenet_ds/eth_p4080.c
+++ b/board/freescale/corenet_ds/eth_p4080.c
@@ -26,6 +26,7 @@
 #include <phy.h>
 #include <asm/u-boot.h>
 #include <linux/delay.h>
+#include <linux/types.h>
 
 #include "../common/ngpixis.h"
 #include "../common/fman.h"
diff --git a/board/freescale/corenet_ds/eth_superhydra.c b/board/freescale/corenet_ds/eth_superhydra.c
index bda97fbd6bd8..71b95e5cd720 100644
--- a/board/freescale/corenet_ds/eth_superhydra.c
+++ b/board/freescale/corenet_ds/eth_superhydra.c
@@ -59,6 +59,7 @@
 #include <malloc.h>
 #include <fdt_support.h>
 #include <fsl_dtsec.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
 
diff --git a/board/freescale/imx8mm_evk/spl.c b/board/freescale/imx8mm_evk/spl.c
index ef4526a7dca3..0cdf2b0d2003 100644
--- a/board/freescale/imx8mm_evk/spl.c
+++ b/board/freescale/imx8mm_evk/spl.c
@@ -23,6 +23,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <dm/uclass.h>
 #include <dm/device.h>
diff --git a/board/freescale/imx8mn_evk/spl.c b/board/freescale/imx8mn_evk/spl.c
index bd732c226be5..1fd731ce65a3 100644
--- a/board/freescale/imx8mn_evk/spl.c
+++ b/board/freescale/imx8mn_evk/spl.c
@@ -23,6 +23,7 @@
 #include <asm/arch/ddr.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <dm/uclass.h>
 #include <dm/device.h>
diff --git a/board/freescale/imx8mp_evk/spl.c b/board/freescale/imx8mp_evk/spl.c
index 244d04c18a5a..ecbc6be6abac 100644
--- a/board/freescale/imx8mp_evk/spl.c
+++ b/board/freescale/imx8mp_evk/spl.c
@@ -21,6 +21,7 @@
 #include <asm/arch/imx8mp_pins.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/mach-imx/boot_mode.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 
 #include <power/pca9450.h>
diff --git a/board/freescale/imx8mq_evk/spl.c b/board/freescale/imx8mq_evk/spl.c
index ccb8f44f115c..929470cf285d 100644
--- a/board/freescale/imx8mq_evk/spl.c
+++ b/board/freescale/imx8mq_evk/spl.c
@@ -29,6 +29,7 @@
 #include <linux/errno.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include <power/pmic.h>
 #include <power/pfuze100_pmic.h>
 #include <spl.h>
diff --git a/board/freescale/imx8qm_mek/imx8qm_mek.c b/board/freescale/imx8qm_mek/imx8qm_mek.c
index 3aa6c2d7a23a..fac21ec5af3f 100644
--- a/board/freescale/imx8qm_mek/imx8qm_mek.c
+++ b/board/freescale/imx8qm_mek/imx8qm_mek.c
@@ -8,6 +8,7 @@
 #include <env.h>
 #include <errno.h>
 #include <init.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
@@ -22,6 +23,7 @@
 #include <asm/arch/iomux.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/imx8qm_mek/spl.c b/board/freescale/imx8qm_mek/spl.c
index d3d3431fe63f..de7582ac4f46 100644
--- a/board/freescale/imx8qm_mek/spl.c
+++ b/board/freescale/imx8qm_mek/spl.c
@@ -19,6 +19,7 @@
 #include <dm/lists.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/imx8qxp_mek/imx8qxp_mek.c b/board/freescale/imx8qxp_mek/imx8qxp_mek.c
index f0220b131009..5e0bb68402f0 100644
--- a/board/freescale/imx8qxp_mek/imx8qxp_mek.c
+++ b/board/freescale/imx8qxp_mek/imx8qxp_mek.c
@@ -8,6 +8,7 @@
 #include <env.h>
 #include <errno.h>
 #include <init.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <asm/global_data.h>
 #include <asm/u-boot.h>
@@ -25,6 +26,7 @@
 #include <asm/arch/iomux.h>
 #include <asm/arch/sys_proto.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/imx8qxp_mek/spl.c b/board/freescale/imx8qxp_mek/spl.c
index 5b3e87c25610..35ed37dc6094 100644
--- a/board/freescale/imx8qxp_mek/spl.c
+++ b/board/freescale/imx8qxp_mek/spl.c
@@ -25,6 +25,7 @@
 #include <asm/arch/sys_proto.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/imxrt1020-evk/imxrt1020-evk.c b/board/freescale/imxrt1020-evk/imxrt1020-evk.c
index 35241acd224c..d67c4d309de3 100644
--- a/board/freescale/imxrt1020-evk/imxrt1020-evk.c
+++ b/board/freescale/imxrt1020-evk/imxrt1020-evk.c
@@ -13,6 +13,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/armv7m.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/imxrt1050-evk/imxrt1050-evk.c b/board/freescale/imxrt1050-evk/imxrt1050-evk.c
index b8d852f097b0..463cc37085fc 100644
--- a/board/freescale/imxrt1050-evk/imxrt1050-evk.c
+++ b/board/freescale/imxrt1050-evk/imxrt1050-evk.c
@@ -13,6 +13,7 @@
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <asm/armv7m.h>
+#include <asm/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/ls1012afrdm/ls1012afrdm.c b/board/freescale/ls1012afrdm/ls1012afrdm.c
index 3100aee2715e..6fb630ab64cd 100644
--- a/board/freescale/ls1012afrdm/ls1012afrdm.c
+++ b/board/freescale/ls1012afrdm/ls1012afrdm.c
@@ -25,6 +25,7 @@
 #include <netdev.h>
 #include <fsl_sec.h>
 #include <asm/u-boot.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/ls1012aqds/eth.c b/board/freescale/ls1012aqds/eth.c
index 35d7bfcb2ff8..a0b44735dd8e 100644
--- a/board/freescale/ls1012aqds/eth.c
+++ b/board/freescale/ls1012aqds/eth.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <stdio.h>
 #include <vsprintf.h>
diff --git a/board/freescale/ls1012aqds/ls1012aqds.c b/board/freescale/ls1012aqds/ls1012aqds.c
index 50e04204c688..4bb80717636a 100644
--- a/board/freescale/ls1012aqds/ls1012aqds.c
+++ b/board/freescale/ls1012aqds/ls1012aqds.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <i2c.h>
 #include <fdt_support.h>
 #include <stdio.h>
@@ -32,6 +33,7 @@
 #include <fsl_sec.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "../common/qixis.h"
 #include "ls1012aqds_qixis.h"
 #include "ls1012aqds_pfe.h"
diff --git a/board/freescale/ls1012ardb/eth.c b/board/freescale/ls1012ardb/eth.c
index 7d4d4017e925..d208686ffc8e 100644
--- a/board/freescale/ls1012ardb/eth.c
+++ b/board/freescale/ls1012ardb/eth.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <dm.h>
 #include <net.h>
 #include <stdio.h>
diff --git a/board/freescale/ls1012ardb/ls1012ardb.c b/board/freescale/ls1012ardb/ls1012ardb.c
index 8cc986ab01af..7c38a8b8ccf7 100644
--- a/board/freescale/ls1012ardb/ls1012ardb.c
+++ b/board/freescale/ls1012ardb/ls1012ardb.c
@@ -33,6 +33,7 @@
 #include <asm/u-boot.h>
 #include <linux/errno.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/freescale/ls1021aiot/ls1021aiot.c b/board/freescale/ls1021aiot/ls1021aiot.c
index 66c701e1e35d..988b0bad937c 100644
--- a/board/freescale/ls1021aiot/ls1021aiot.c
+++ b/board/freescale/ls1021aiot/ls1021aiot.c
@@ -18,6 +18,7 @@
 #include <linux/delay.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 
 #include <asm/arch/ls102xa_devdis.h>
 #include <asm/arch/ls102xa_soc.h>
diff --git a/board/freescale/ls1021aqds/dcu.c b/board/freescale/ls1021aqds/dcu.c
index 7f0ae42e92b6..175ce7ce5ba6 100644
--- a/board/freescale/ls1021aqds/dcu.c
+++ b/board/freescale/ls1021aqds/dcu.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <fsl_dcu_fb.h>
 #include <i2c.h>
+#include <asm/types.h>
 #include <linux/string.h>
 #include "div64.h"
 #include "../common/diu_ch7301.h"
diff --git a/board/freescale/ls1021aqds/ddr.c b/board/freescale/ls1021aqds/ddr.c
index b35f98b46d15..7b4e0e1e58a7 100644
--- a/board/freescale/ls1021aqds/ddr.c
+++ b/board/freescale/ls1021aqds/ddr.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <fsl_ddr_sdram.h>
 #include <fsl_ddr_dimm_params.h>
 #include <init.h>
@@ -15,6 +16,7 @@
 #include <asm/arch/clock.h>
 #include <linux/delay.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "ddr.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/freescale/ls1021aqds/ddr.h b/board/freescale/ls1021aqds/ddr.h
index 58a883843671..b7233dd7a2ac 100644
--- a/board/freescale/ls1021aqds/ddr.h
+++ b/board/freescale/ls1021aqds/ddr.h
@@ -6,6 +6,7 @@
 #ifndef __DDR_H__
 #define __DDR_H__
 
+#include <asm/types.h>
 void erratum_a008850_post(void);
 
 struct board_specific_parameters {
diff --git a/board/freescale/ls1021aqds/eth.c b/board/freescale/ls1021aqds/eth.c
index 786935b8b335..bda159bfb7b7 100644
--- a/board/freescale/ls1021aqds/eth.c
+++ b/board/freescale/ls1021aqds/eth.c
@@ -21,6 +21,7 @@
 #include <fsl_mdio.h>
 #include <tsec.h>
 #include <malloc.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/string.h>
 
diff --git a/board/freescale/ls1021aqds/ls1021aqds.c b/board/freescale/ls1021aqds/ls1021aqds.c
index c13ec4127003..21c82e4ce536 100644
--- a/board/freescale/ls1021aqds/ls1021aqds.c
+++ b/board/freescale/ls1021aqds/ls1021aqds.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <clock_legacy.h>
+#include <compiler.h>
 #include <fdt_support.h>
 #include <i2c.h>
 #include <init.h>
@@ -29,6 +30,7 @@
 #include <asm/u-boot.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "../common/sleep.h"
 #include "../common/qixis.h"
 #include "ls1021aqds_qixis.h"
diff --git a/board/freescale/ls1021atsn/ls1021atsn.c b/board/freescale/ls1021atsn/ls1021atsn.c
index 4ad4f1eb07a0..72228133e9b9 100644
--- a/board/freescale/ls1021atsn/ls1021atsn.c
+++ b/board/freescale/ls1021atsn/ls1021atsn.c
@@ -16,6 +16,7 @@
 #include <linux/delay.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "../common/sleep.h"
 #include <fsl_validate.h>
 #include <fsl_immap.h>
diff --git a/board/freescale/ls1021atwr/ls1021atwr.c b/board/freescale/ls1021atwr/ls1021atwr.c
index 8c21393a6e5f..38eebc268a68 100644
--- a/board/freescale/ls1021atwr/ls1021atwr.c
+++ b/board/freescale/ls1021atwr/ls1021atwr.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <clock_legacy.h>
 #include <command.h>
+#include <compiler.h>
 #include <fdt_support.h>
 #include <i2c.h>
 #include <init.h>
@@ -34,6 +35,7 @@
 #include <linux/delay.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
+#include <linux/types.h>
 #include "../common/sleep.h"
 #ifdef CONFIG_U_QE
 #include <fsl_qe.h>
diff --git a/board/freescale/ls1028a/ls1028a.c b/board/freescale/ls1028a/ls1028a.c
index 220d0b0befaa..bb60b980add5 100644
--- a/board/freescale/ls1028a/ls1028a.c
+++ b/board/freescale/ls1028a/ls1028a.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <display_options.h>
 #include <init.h>
 #include <malloc.h>
@@ -27,6 +28,7 @@
 #endif
 #include <fsl_immap.h>
 #include <netdev.h>
+#include <linux/types.h>
 
 #include <fdtdec.h>
 #include <miiphy.h>
diff --git a/board/freescale/ls1043aqds/ddr.c b/board/freescale/ls1043aqds/ddr.c
index d4e7c4093078..cecf0f903a07 100644
--- a/board/freescale/ls1043aqds/ddr.c
+++ b/board/freescale/ls1043aqds/ddr.c
@@ -14,6 +14,7 @@
 #include <vsprintf.h>
 #include <asm/arch/clock.h>
 #include <asm/global_data.h>
+#include <linux/types.h>
 #include "ddr.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/freescale/ls1043aqds/ddr.h b/board/freescale/ls1043aqds/ddr.h
index 65b0250d3706..4e5f0b42611d 100644
--- a/board/freescale/ls1043aqds/ddr.h
+++ b/board/freescale/ls1043aqds/ddr.h
@@ -6,6 +6,7 @@
 #ifndef __DDR_H__
 #define __DDR_H__
 
+#include <asm/types.h>
 extern void erratum_a008850_post(void);
 
 struct board_specific_parameters {
diff --git a/board/freescale/ls1043aqds/eth.c b/board/freescale/ls1043aqds/eth.c
index ba56512ec96e..0355a6aa89f3 100644
--- a/board/freescale/ls1043aqds/eth.c
+++ b/board/freescale/ls1043aqds/eth.c
@@ -14,6 +14,7 @@
 #include <fm_eth.h>
 #include <fsl_mdio.h>
 #include <fsl_dtsec.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 #include <linux/libfdt.h>
 #include <malloc.h>
diff --git a/board/freescale/ls1043aqds/ls1043aqds.c b/board/freescale/ls1043aqds/ls1043aqds.c
index 6b377d0d997e..8db0d0e510c2 100644
--- a/board/freescale/ls1043aqds/ls1043aqds.c
+++ b/board/freescale/ls1043aqds/ls1043aqds.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <compiler.h>
 #include <i2c.h>
 #include <fdt_support.h>
 #include <fsl_ddr_sdram.h>
@@ -30,6 +31,7 @@
 #include <fsl_esdhc.h>
 #include <fsl_ifc.h>
 #include <spl.h>
+#include <asm/types.h>
 #include <asm/u-boot.h>
 
 #include "../common/qixis.h"
diff --git a/board/freescale/ls1043ardb/cpld.c b/board/freescale/ls1043ardb/cpld.c
index c230dcdca5df..52ab566f056a 100644
--- a/board/freescale/ls1043ardb/cpld.c
+++ b/board/freescale/ls1043ardb/cpld.c
@@ -9,6 +9,7 @@
 #include <command.h>
 #include <stdio.h>
 #include <asm/io.h>
+#include <asm/types.h>
 #include <linux/string.h>
 #include "cpld.h"
 
diff --git a/board/freescale/ls1043ardb/cpld.h b/board/freescale/ls1043ardb/cpld.h
index 2e757b557f4b..dce9682e42b2 100644
--- a/board/freescale/ls1043ardb/cpld.h
+++ b/board/freescale/ls1043ardb/cpld.h
@@ -9,6 +9,7 @@
 /*
  * CPLD register set of LS1043ARDB board-specific.
  */
+#include <asm/types.h>
 struct cpld_data {
 	u8 cpld_ver;		/* 0x0 - CPLD Major Revision Register */
 	u8 cpld_ver_sub;	/* 0x1 - CPLD Minor Revis