All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v4 31/42] common: Move ARM cache operations out of common.h
Date: Fri, 15 Nov 2019 13:46:40 +0100	[thread overview]
Message-ID: <32a4e7aa-be21-05ed-ae4e-69b2b2088a51@gmail.com> (raw)
In-Reply-To: <20191114125724.v4.31.I23f5bc2600c87302498986e504962471ec961060@changeid>



Am 14.11.19 um 20:57 schrieb Simon Glass:
> These functions are CPU-related and do not use driver model. Move them to
> cpu_func.h
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
> Changes in v4:
> - Use cpu_func.h instead of cpu_legacy.h
> - Use irq_func.h instead of irq_legacy.h
> 
> Changes in v3: None
> Changes in v2: None
> 
>  arch/arm/cpu/arm926ejs/lpc32xx/cpu.c       |  1 +
>  arch/arm/cpu/armv7/cache_v7.c              |  1 +
>  arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c  |  1 +
>  arch/arm/cpu/armv8/sec_firmware.c          |  1 +
>  arch/arm/cpu/pxa/cache.c                   |  1 +
>  arch/arm/lib/cache.c                       |  1 +
>  arch/arm/mach-bcm283x/mbox.c               |  1 +
>  arch/arm/mach-imx/mx7/psci-mx7.c           |  1 +
>  arch/arm/mach-omap2/sec-common.c           |  1 +
>  arch/arm/mach-tegra/ivc.c                  |  1 +
>  arch/microblaze/lib/bootm.c                |  1 +
>  arch/mips/lib/reloc.c                      |  1 +
>  arch/mips/lib/traps.c                      |  1 +
>  arch/mips/mach-jz47xx/jz4780/jz4780.c      |  1 +
>  arch/mips/mach-mtmips/ddr_calibrate.c      |  1 +
>  arch/nds32/cpu/n1213/ae3xx/cpu.c           |  1 +
>  arch/nios2/cpu/cpu.c                       |  1 +
>  arch/nios2/lib/bootm.c                     |  1 +
>  arch/powerpc/lib/bootm.c                   |  1 +
>  arch/powerpc/lib/cache.c                   |  1 +
>  arch/riscv/cpu/ax25/cpu.c                  |  1 +
>  arch/riscv/lib/smp.c                       |  1 +
>  arch/riscv/lib/spl.c                       |  1 +
>  arch/sandbox/cpu/cpu.c                     |  1 +
>  arch/x86/cpu/quark/dram.c                  |  1 +
>  arch/xtensa/lib/bootm.c                    |  1 +
>  board/Arcturus/ucp1020/cmd_arc.c           |  1 +
>  board/beckhoff/mx53cx9020/mx53cx9020.c     |  1 +
>  board/broadcom/bcmstb/bcmstb.c             |  1 +
>  board/cirrus/edb93xx/edb93xx.c             |  1 +
>  board/phytec/pfla02/pfla02.c               |  1 +
>  board/sandbox/sandbox.c                    |  1 +
>  cmd/disk.c                                 |  1 +
>  cmd/load.c                                 |  1 +
>  cmd/ximg.c                                 |  1 +
>  common/avb_verify.c                        |  1 +
>  common/board_r.c                           |  1 +
>  common/bootm.c                             |  1 +
>  common/bouncebuf.c                         |  1 +
>  common/image.c                             |  1 +
>  common/lcd.c                               |  1 +
>  common/spl/spl_opensbi.c                   |  1 +
>  common/update.c                            |  1 +
>  drivers/ata/ahci.c                         |  1 +
>  drivers/ata/dwc_ahsata.c                   |  1 +
>  drivers/ata/fsl_ahci.c                     |  1 +
>  drivers/ata/fsl_sata.c                     |  1 +
>  drivers/ata/sata_mv.c                      |  1 +
>  drivers/ata/sata_sil.c                     |  1 +
>  drivers/bootcount/bootcount.c              |  1 +
>  drivers/bootcount/bootcount_ram.c          |  1 +
>  drivers/core/device.c                      |  1 +
>  drivers/crypto/fsl/fsl_blob.c              |  1 +
>  drivers/crypto/fsl/fsl_hash.c              |  1 +
>  drivers/crypto/fsl/jobdesc.c               |  1 +
>  drivers/crypto/fsl/jr.c                    |  1 +
>  drivers/dma/apbh_dma.c                     |  1 +
>  drivers/dma/bcm6348-iudma.c                |  1 +
>  drivers/dma/dma-uclass.c                   |  1 +
>  drivers/dma/ti/k3-udma.c                   |  1 +
>  drivers/fpga/versalpl.c                    |  1 +
>  drivers/fpga/zynqmppl.c                    |  1 +
>  drivers/mmc/dw_mmc.c                       |  1 +
>  drivers/mmc/fsl_esdhc.c                    |  1 +
>  drivers/mmc/fsl_esdhc_imx.c                |  1 +
>  drivers/mmc/fsl_esdhc_spl.c                |  1 +
>  drivers/mmc/meson_gx_mmc.c                 |  1 +
>  drivers/mmc/omap_hsmmc.c                   |  1 +
>  drivers/mmc/sdhci.c                        |  1 +
>  drivers/mmc/stm32_sdmmc2.c                 |  1 +
>  drivers/mmc/tmio-common.c                  |  1 +
>  drivers/mtd/nand/raw/denali.c              |  1 +
>  drivers/mtd/nand/raw/fsl_elbc_spl.c        |  1 +
>  drivers/mtd/nand/raw/fsl_ifc_spl.c         |  1 +
>  drivers/mtd/nand/raw/mxs_nand.c            |  1 +
>  drivers/mtd/pic32_flash.c                  |  1 +
>  drivers/mtd/spi/fsl_espi_spl.c             |  1 +
>  drivers/net/ag7xxx.c                       |  1 +
>  drivers/net/altera_tse.c                   |  1 +
>  drivers/net/bcm-sf2-eth-gmac.c             |  1 +
>  drivers/net/designware.c                   |  1 +
>  drivers/net/dwc_eth_qos.c                  |  1 +
>  drivers/net/e1000.c                        |  1 +
>  drivers/net/ethoc.c                        |  1 +
>  drivers/net/fec_mxc.c                      |  1 +
>  drivers/net/fsl-mc/mc.c                    |  1 +
>  drivers/net/ftgmac100.c                    |  1 +
>  drivers/net/ftmac100.c                     |  1 +
>  drivers/net/higmacv300.c                   |  1 +
>  drivers/net/ldpaa_eth/ldpaa_eth.c          |  1 +
>  drivers/net/macb.c                         |  1 +
>  drivers/net/mt7628-eth.c                   |  1 +
>  drivers/net/mtk_eth.c                      |  1 +
>  drivers/net/mvneta.c                       |  1 +
>  drivers/net/mvpp2.c                        |  1 +
>  drivers/net/pch_gbe.c                      |  1 +
>  drivers/net/pcnet.c                        |  1 +
>  drivers/net/pic32_eth.c                    |  1 +
>  drivers/net/ravb.c                         |  1 +
>  drivers/net/rtl8139.c                      |  1 +
>  drivers/net/rtl8169.c                      |  1 +
>  drivers/net/sh_eth.c                       |  1 +
>  drivers/net/sni_ave.c                      |  1 +
>  drivers/net/sun8i_emac.c                   |  1 +
>  drivers/net/ti/cpsw.c                      |  1 +
>  drivers/net/ti/davinci_emac.c              |  1 +
>  drivers/net/xilinx_axi_emac.c              |  1 +
>  drivers/net/zynq_gem.c                     |  1 +
>  drivers/nvme/nvme.c                        |  1 +
>  drivers/remoteproc/rproc-elf-loader.c      |  1 +
>  drivers/spi/mxs_spi.c                      |  1 +
>  drivers/spi/ti_qspi.c                      |  1 +
>  drivers/spi/zynqmp_gqspi.c                 |  1 +
>  drivers/usb/dwc3/core.c                    |  1 +
>  drivers/usb/dwc3/dwc3-generic.c            |  1 +
>  drivers/usb/dwc3/ep0.c                     |  1 +
>  drivers/usb/dwc3/gadget.c                  |  1 +
>  drivers/usb/dwc3/io.h                      |  1 +
>  drivers/usb/gadget/ci_udc.c                |  1 +
>  drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c |  3 +++
>  drivers/usb/gadget/fotg210.c               |  1 +
>  drivers/usb/host/dwc2.c                    |  1 +
>  drivers/usb/host/ehci-hcd.c                |  1 +
>  drivers/usb/host/ohci-hcd.c                |  1 +
>  drivers/usb/host/xhci-mem.c                |  1 +
>  drivers/usb/host/xhci-ring.c               |  1 +
>  drivers/usb/host/xhci.c                    |  1 +
>  drivers/video/atmel_hlcdfb.c               |  1 +
>  drivers/video/sunxi/sunxi_display.c        |  1 +
>  drivers/video/video-uclass.c               |  1 +
>  include/common.h                           | 24 ----------------------
>  include/cpu_func.h                         | 24 ++++++++++++++++++++++
>  lib/efi_loader/efi_image_loader.c          |  1 +
>  lib/efi_loader/efi_runtime.c               |  1 +
>  post/cpu/mpc83xx/ecc.c                     |  1 +
>  135 files changed, 159 insertions(+), 24 deletions(-)

Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>

one nit below

> 
> diff --git a/arch/arm/cpu/arm926ejs/lpc32xx/cpu.c b/arch/arm/cpu/arm926ejs/lpc32xx/cpu.c
> index 5117177474..4c59a44f7e 100644
> --- a/arch/arm/cpu/arm926ejs/lpc32xx/cpu.c
> +++ b/arch/arm/cpu/arm926ejs/lpc32xx/cpu.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <netdev.h>
>  #include <asm/arch/cpu.h>
>  #include <asm/arch/clk.h>
> diff --git a/arch/arm/cpu/armv7/cache_v7.c b/arch/arm/cpu/armv7/cache_v7.c
> index 0dc4ebf694..99eb7db342 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@ti.com>
>   */
> +#include <cpu_func.h>
>  #include <linux/types.h>
>  #include <common.h>
>  #include <asm/armv7.h>
> diff --git a/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c b/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c
> index df64f5415a..4a4b3c6f23 100644
> --- a/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c
> +++ b/arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <config.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/psci.h>
>  #include <asm/arch/immap_ls102xa.h>
> diff --git a/arch/arm/cpu/armv8/sec_firmware.c b/arch/arm/cpu/armv8/sec_firmware.c
> index 8dc0ac9266..11f9b4df38 100644
> --- a/arch/arm/cpu/armv8/sec_firmware.c
> +++ b/arch/arm/cpu/armv8/sec_firmware.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <errno.h>
>  #include <linux/kernel.h>
>  #include <asm/io.h>
> diff --git a/arch/arm/cpu/pxa/cache.c b/arch/arm/cpu/pxa/cache.c
> index 5cd4a9524b..d4dfe7f6d8 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@gmail.com>
>   */
>  
> +#include <cpu_func.h>
>  #include <linux/types.h>
>  #include <common.h>
>  
> diff --git a/arch/arm/lib/cache.c b/arch/arm/lib/cache.c
> index 463d283cb7..007d4ebc49 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 <cpu_func.h>
>  #include <malloc.h>
>  
>  /*
> diff --git a/arch/arm/mach-bcm283x/mbox.c b/arch/arm/mach-bcm283x/mbox.c
> index 3c67f68c17..00c6afb15f 100644
> --- a/arch/arm/mach-bcm283x/mbox.c
> +++ b/arch/arm/mach-bcm283x/mbox.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/arch/mbox.h>
>  #include <phys2bus.h>
> diff --git a/arch/arm/mach-imx/mx7/psci-mx7.c b/arch/arm/mach-imx/mx7/psci-mx7.c
> index c98d2e96af..c8f6ca235b 100644
> --- a/arch/arm/mach-imx/mx7/psci-mx7.c
> +++ b/arch/arm/mach-imx/mx7/psci-mx7.c
> @@ -4,6 +4,7 @@
>   * Copyright 2017 NXP
>   */
>  
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/psci.h>
>  #include <asm/secure.h>
> diff --git a/arch/arm/mach-omap2/sec-common.c b/arch/arm/mach-omap2/sec-common.c
> index b45d3ee544..e9b3e746fe 100644
> --- a/arch/arm/mach-omap2/sec-common.c
> +++ b/arch/arm/mach-omap2/sec-common.c
> @@ -13,6 +13,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <stdarg.h>
>  
>  #include <asm/arch/sys_proto.h>
> diff --git a/arch/arm/mach-tegra/ivc.c b/arch/arm/mach-tegra/ivc.c
> index 65b1cfc07d..a448f2df30 100644
> --- a/arch/arm/mach-tegra/ivc.c
> +++ b/arch/arm/mach-tegra/ivc.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/arch-tegra/ivc.h>
>  
> diff --git a/arch/microblaze/lib/bootm.c b/arch/microblaze/lib/bootm.c
> index 01c5d57bc5..efd5acf359 100644
> --- a/arch/microblaze/lib/bootm.c
> +++ b/arch/microblaze/lib/bootm.c
> @@ -9,6 +9,7 @@
>  
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <fdt_support.h>
>  #include <image.h>
> diff --git a/arch/mips/lib/reloc.c b/arch/mips/lib/reloc.c
> index c6a517d66f..e68f49467c 100644
> --- a/arch/mips/lib/reloc.c
> +++ b/arch/mips/lib/reloc.c
> @@ -27,6 +27,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/relocs.h>
>  #include <asm/sections.h>
>  
> diff --git a/arch/mips/lib/traps.c b/arch/mips/lib/traps.c
> index 976978c3e9..b4bcdf8150 100644
> --- a/arch/mips/lib/traps.c
> +++ b/arch/mips/lib/traps.c
> @@ -11,6 +11,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/mipsregs.h>
>  #include <asm/addrspace.h>
>  #include <asm/system.h>
> diff --git a/arch/mips/mach-jz47xx/jz4780/jz4780.c b/arch/mips/mach-jz47xx/jz4780/jz4780.c
> index dbd328cb49..ec18df8879 100644
> --- a/arch/mips/mach-jz47xx/jz4780/jz4780.c
> +++ b/arch/mips/mach-jz47xx/jz4780/jz4780.c
> @@ -8,6 +8,7 @@
>  
>  #include <config.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/sections.h>
>  #include <mach/jz4780.h>
> diff --git a/arch/mips/mach-mtmips/ddr_calibrate.c b/arch/mips/mach-mtmips/ddr_calibrate.c
> index 75763c4528..3cd440804d 100644
> --- a/arch/mips/mach-mtmips/ddr_calibrate.c
> +++ b/arch/mips/mach-mtmips/ddr_calibrate.c
> @@ -17,6 +17,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <linux/io.h>
>  #include <asm/cacheops.h>
>  #include <asm/io.h>
> diff --git a/arch/nds32/cpu/n1213/ae3xx/cpu.c b/arch/nds32/cpu/n1213/ae3xx/cpu.c
> index a53bed1970..0660fffa45 100644
> --- a/arch/nds32/cpu/n1213/ae3xx/cpu.c
> +++ b/arch/nds32/cpu/n1213/ae3xx/cpu.c
> @@ -16,6 +16,7 @@
>  #include <common.h>
>  #include <command.h>
>  #include <cpu_func.h>
> +#include <irq_func.h>
>  #include <watchdog.h>
>  #include <asm/cache.h>
>  
> diff --git a/arch/nios2/cpu/cpu.c b/arch/nios2/cpu/cpu.c
> index 1fc79213e2..05b26e8d20 100644
> --- a/arch/nios2/cpu/cpu.c
> +++ b/arch/nios2/cpu/cpu.c
> @@ -6,6 +6,7 @@
>  
>  #include <common.h>
>  #include <cpu.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <asm/cache.h>
> diff --git a/arch/nios2/lib/bootm.c b/arch/nios2/lib/bootm.c
> index 485d5ae540..a68b091f87 100644
> --- a/arch/nios2/lib/bootm.c
> +++ b/arch/nios2/lib/bootm.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  
>  #define NIOS_MAGIC 0x534f494e /* enable command line and initrd passing */
>  
> diff --git a/arch/powerpc/lib/bootm.c b/arch/powerpc/lib/bootm.c
> index 84691b7554..f2e670eb6b 100644
> --- a/arch/powerpc/lib/bootm.c
> +++ b/arch/powerpc/lib/bootm.c
> @@ -8,6 +8,7 @@
>  
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <watchdog.h>
>  #include <command.h>
> diff --git a/arch/powerpc/lib/cache.c b/arch/powerpc/lib/cache.c
> index 2d36c3aa08..3c3c470bbb 100644
> --- a/arch/powerpc/lib/cache.c
> +++ b/arch/powerpc/lib/cache.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/cache.h>
>  #include <watchdog.h>
>  
> diff --git a/arch/riscv/cpu/ax25/cpu.c b/arch/riscv/cpu/ax25/cpu.c
> index 0534b37f5d..f092600e14 100644
> --- a/arch/riscv/cpu/ax25/cpu.c
> +++ b/arch/riscv/cpu/ax25/cpu.c
> @@ -7,6 +7,7 @@
>  /* CPU specific code */
>  #include <common.h>
>  #include <cpu_func.h>
> +#include <irq_func.h>
>  #include <asm/cache.h>
>  
>  /*
> diff --git a/arch/riscv/lib/smp.c b/arch/riscv/lib/smp.c
> index cc66f15567..705437862a 100644
> --- a/arch/riscv/lib/smp.c
> +++ b/arch/riscv/lib/smp.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <asm/barrier.h>
>  #include <asm/smp.h>
> diff --git a/arch/riscv/lib/spl.c b/arch/riscv/lib/spl.c
> index bea8695987..a544df0a2b 100644
> --- a/arch/riscv/lib/spl.c
> +++ b/arch/riscv/lib/spl.c
> @@ -4,6 +4,7 @@
>   * Lukas Auer <lukas.auer@aisec.fraunhofer.de>
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <spl.h>
>  #include <asm/smp.h>
>  
> diff --git a/arch/sandbox/cpu/cpu.c b/arch/sandbox/cpu/cpu.c
> index f3af88d79e..ff7430393f 100644
> --- a/arch/sandbox/cpu/cpu.c
> +++ b/arch/sandbox/cpu/cpu.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <linux/libfdt.h>
> diff --git a/arch/x86/cpu/quark/dram.c b/arch/x86/cpu/quark/dram.c
> index 51f9659ab1..1b764dfccd 100644
> --- a/arch/x86/cpu/quark/dram.c
> +++ b/arch/x86/cpu/quark/dram.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <errno.h>
>  #include <fdtdec.h>
>  #include <malloc.h>
> diff --git a/arch/xtensa/lib/bootm.c b/arch/xtensa/lib/bootm.c
> index 93eea53c5f..057b229433 100644
> --- a/arch/xtensa/lib/bootm.c
> +++ b/arch/xtensa/lib/bootm.c
> @@ -6,6 +6,7 @@
>  
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <u-boot/zlib.h>
>  #include <asm/byteorder.h>
> diff --git a/board/Arcturus/ucp1020/cmd_arc.c b/board/Arcturus/ucp1020/cmd_arc.c
> index 2e8477ed3b..b50de63c5e 100644
> --- a/board/Arcturus/ucp1020/cmd_arc.c
> +++ b/board/Arcturus/ucp1020/cmd_arc.c
> @@ -9,6 +9,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <div64.h>
>  #include <env.h>
>  #include <malloc.h>
> diff --git a/board/beckhoff/mx53cx9020/mx53cx9020.c b/board/beckhoff/mx53cx9020/mx53cx9020.c
> index 9450d925f6..1b1b688f19 100644
> --- a/board/beckhoff/mx53cx9020/mx53cx9020.c
> +++ b/board/beckhoff/mx53cx9020/mx53cx9020.c
> @@ -8,6 +8,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/arch/sys_proto.h>
>  #include <asm/arch/clock.h>
>  #include <asm/arch/iomux-mx53.h>
> diff --git a/board/broadcom/bcmstb/bcmstb.c b/board/broadcom/bcmstb/bcmstb.c
> index 23500dfa69..12b9dba612 100644
> --- a/board/broadcom/bcmstb/bcmstb.c
> +++ b/board/broadcom/bcmstb/bcmstb.c
> @@ -6,6 +6,7 @@
>   * Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
>   */
>  
> +#include <cpu_func.h>
>  #include <time.h>
>  #include <linux/types.h>
>  #include <common.h>
> diff --git a/board/cirrus/edb93xx/edb93xx.c b/board/cirrus/edb93xx/edb93xx.c
> index 0966e37e7a..dfebb7c1c1 100644
> --- a/board/cirrus/edb93xx/edb93xx.c
> +++ b/board/cirrus/edb93xx/edb93xx.c
> @@ -16,6 +16,7 @@
>  #include <config.h>
>  #include <common.h>
>  #include <cpu_func.h>
> +#include <irq_func.h>
>  #include <netdev.h>
>  #include <status_led.h>
>  #include <asm/io.h>
> diff --git a/board/phytec/pfla02/pfla02.c b/board/phytec/pfla02/pfla02.c
> index ae9ffe0390..f498fdf807 100644
> --- a/board/phytec/pfla02/pfla02.c
> +++ b/board/phytec/pfla02/pfla02.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/arch/clock.h>
>  #include <asm/arch/imx-regs.h>
> diff --git a/board/sandbox/sandbox.c b/board/sandbox/sandbox.c
> index 9ca1eca027..438f9a47ed 100644
> --- a/board/sandbox/sandbox.c
> +++ b/board/sandbox/sandbox.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <cros_ec.h>
>  #include <dm.h>
>  #include <led.h>
> diff --git a/cmd/disk.c b/cmd/disk.c
> index 9e635c1172..437c175374 100644
> --- a/cmd/disk.c
> +++ b/cmd/disk.c
> @@ -5,6 +5,7 @@
>   */
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <part.h>
>  
>  int common_diskboot(cmd_tbl_t *cmdtp, const char *intf, int argc,
> diff --git a/cmd/load.c b/cmd/load.c
> index 5811a99310..3bfc1b41ec 100644
> --- a/cmd/load.c
> +++ b/cmd/load.c
> @@ -10,6 +10,7 @@
>  #include <common.h>
>  #include <command.h>
>  #include <console.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <s_record.h>
>  #include <net.h>
> diff --git a/cmd/ximg.c b/cmd/ximg.c
> index a9481004f0..22b2037a33 100644
> --- a/cmd/ximg.c
> +++ b/cmd/ximg.c
> @@ -13,6 +13,7 @@
>   */
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <gzip.h>
>  #include <image.h>
> diff --git a/common/avb_verify.c b/common/avb_verify.c
> index 36898a610f..a2b739626b 100644
> --- a/common/avb_verify.c
> +++ b/common/avb_verify.c
> @@ -6,6 +6,7 @@
>  
>  #include <avb_verify.h>
>  #include <blk.h>
> +#include <cpu_func.h>
>  #include <fastboot.h>
>  #include <image.h>
>  #include <malloc.h>
> diff --git a/common/board_r.c b/common/board_r.c
> index 05e08212b4..6a421002dd 100644
> --- a/common/board_r.c
> +++ b/common/board_r.c
> @@ -11,6 +11,7 @@
>  
>  #include <common.h>
>  #include <api.h>
> +#include <cpu_func.h>
>  #include <u-boot/crc.h>
>  /* TODO: can we just include all these headers whether needed or not? */
>  #if defined(CONFIG_CMD_BEDBUG)
> diff --git a/common/bootm.c b/common/bootm.c
> index 02295daf79..3bbe490ab9 100644
> --- a/common/bootm.c
> +++ b/common/bootm.c
> @@ -7,6 +7,7 @@
>  #ifndef USE_HOSTCC
>  #include <common.h>
>  #include <bootstage.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <errno.h>
>  #include <fdt_support.h>
> diff --git a/common/bouncebuf.c b/common/bouncebuf.c
> index a7098e2caf..614eb36c78 100644
> --- a/common/bouncebuf.c
> +++ b/common/bouncebuf.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <errno.h>
>  #include <bouncebuf.h>
> diff --git a/common/image.c b/common/image.c
> index 1c8ac2df70..eb626dcac9 100644
> --- a/common/image.c
> +++ b/common/image.c
> @@ -8,6 +8,7 @@
>  
>  #ifndef USE_HOSTCC
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <u-boot/crc.h>
>  #include <watchdog.h>
> diff --git a/common/lcd.c b/common/lcd.c
> index b34754fe51..f8bc1ceba7 100644
> --- a/common/lcd.c
> +++ b/common/lcd.c
> @@ -10,6 +10,7 @@
>  #include <config.h>
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <env_callback.h>
>  #include <linux/types.h>
>  #include <stdio_dev.h>
> diff --git a/common/spl/spl_opensbi.c b/common/spl/spl_opensbi.c
> index a6b4480ed2..2345f949f0 100644
> --- a/common/spl/spl_opensbi.c
> +++ b/common/spl/spl_opensbi.c
> @@ -6,6 +6,7 @@
>   * Based on common/spl/spl_atf.c
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <errno.h>
>  #include <spl.h>
>  #include <asm/smp.h>
> diff --git a/common/update.c b/common/update.c
> index 457b29f42a..13b09ab00f 100644
> --- a/common/update.c
> +++ b/common/update.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  
>  #if !(defined(CONFIG_FIT) && defined(CONFIG_OF_LIBFDT))
>  #error "CONFIG_FIT and CONFIG_OF_LIBFDT are required for auto-update feature"
> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
> index d10f9f0bf8..4cd7420c3c 100644
> --- a/drivers/ata/ahci.c
> +++ b/drivers/ata/ahci.c
> @@ -9,6 +9,7 @@
>   * This driver provides a SCSI interface to SATA.
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  
>  #include <command.h>
>  #include <dm.h>
> diff --git a/drivers/ata/dwc_ahsata.c b/drivers/ata/dwc_ahsata.c
> index afced8e7e3..c2e28fe518 100644
> --- a/drivers/ata/dwc_ahsata.c
> +++ b/drivers/ata/dwc_ahsata.c
> @@ -6,6 +6,7 @@
>  
>  #include <common.h>
>  #include <ahci.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <dwc_ahsata.h>
>  #include <fis.h>
> diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c
> index d04cff3ee7..4ccfe23593 100644
> --- a/drivers/ata/fsl_ahci.c
> +++ b/drivers/ata/fsl_ahci.c
> @@ -6,6 +6,7 @@
>   *
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/fsl_serdes.h>
>  #include <dm/lists.h>
>  #include <dm.h>
> diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c
> index e70a515eff..96a8f2f0c6 100644
> --- a/drivers/ata/fsl_sata.c
> +++ b/drivers/ata/fsl_sata.c
> @@ -7,6 +7,7 @@
>  #include <common.h>
>  #include <command.h>
>  #include <console.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/processor.h>
>  #include <asm/fsl_serdes.h>
> diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
> index 2a630d46c1..6019ac089e 100644
> --- a/drivers/ata/sata_mv.c
> +++ b/drivers/ata/sata_mv.c
> @@ -33,6 +33,7 @@
>  
>  #include <common.h>
>  #include <ahci.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <dm/device-internal.h>
>  #include <dm/lists.h>
> diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
> index a8598d9f21..ae832c5a16 100644
> --- a/drivers/ata/sata_sil.c
> +++ b/drivers/ata/sata_sil.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <pci.h>
>  #include <command.h>
>  #include <asm/byteorder.h>
> diff --git a/drivers/bootcount/bootcount.c b/drivers/bootcount/bootcount.c
> index 66c1284c5b..7a6d03dcca 100644
> --- a/drivers/bootcount/bootcount.c
> +++ b/drivers/bootcount/bootcount.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <bootcount.h>
> +#include <cpu_func.h>
>  #include <linux/compiler.h>
>  
>  /* Now implement the generic default functions */
> diff --git a/drivers/bootcount/bootcount_ram.c b/drivers/bootcount/bootcount_ram.c
> index edef36724b..9c678e25f4 100644
> --- a/drivers/bootcount/bootcount_ram.c
> +++ b/drivers/bootcount/bootcount_ram.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  
>  DECLARE_GLOBAL_DATA_PTR;
> diff --git a/drivers/core/device.c b/drivers/core/device.c
> index 8eabaf8b55..4e037083a6 100644
> --- a/drivers/core/device.c
> +++ b/drivers/core/device.c
> @@ -9,6 +9,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <clk.h>
>  #include <fdtdec.h>
> diff --git a/drivers/crypto/fsl/fsl_blob.c b/drivers/crypto/fsl/fsl_blob.c
> index ce6aa05fe7..0531b1b735 100644
> --- a/drivers/crypto/fsl/fsl_blob.c
> +++ b/drivers/crypto/fsl/fsl_blob.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <memalign.h>
>  #include <fsl_sec.h>
> diff --git a/drivers/crypto/fsl/fsl_hash.c b/drivers/crypto/fsl/fsl_hash.c
> index c2686df02f..74e38ca759 100644
> --- a/drivers/crypto/fsl/fsl_hash.c
> +++ b/drivers/crypto/fsl/fsl_hash.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <memalign.h>
>  #include "jobdesc.h"
> diff --git a/drivers/crypto/fsl/jobdesc.c b/drivers/crypto/fsl/jobdesc.c
> index 317f73c42b..637ef29f15 100644
> --- a/drivers/crypto/fsl/jobdesc.c
> +++ b/drivers/crypto/fsl/jobdesc.c
> @@ -8,6 +8,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <fsl_sec.h>
>  #include "desc_constr.h"
>  #include "jobdesc.h"
> diff --git a/drivers/crypto/fsl/jr.c b/drivers/crypto/fsl/jr.c
> index 1ea9db6850..aa84f2cee0 100644
> --- a/drivers/crypto/fsl/jr.c
> +++ b/drivers/crypto/fsl/jr.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include "fsl_sec.h"
>  #include "jr.h"
> diff --git a/drivers/dma/apbh_dma.c b/drivers/dma/apbh_dma.c
> index ac589feeb7..15133128be 100644
> --- a/drivers/dma/apbh_dma.c
> +++ b/drivers/dma/apbh_dma.c
> @@ -9,6 +9,7 @@
>   * Copyright (C) 2010 Freescale Semiconductor, Inc. All Rights Reserved.
>   */
>  
> +#include <cpu_func.h>
>  #include <linux/list.h>
>  
>  #include <common.h>
> diff --git a/drivers/dma/bcm6348-iudma.c b/drivers/dma/bcm6348-iudma.c
> index e7bd1b2350..96250eb5d2 100644
> --- a/drivers/dma/bcm6348-iudma.c
> +++ b/drivers/dma/bcm6348-iudma.c
> @@ -17,6 +17,7 @@
>  
>  #include <common.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <dma-uclass.h>
>  #include <memalign.h>
> diff --git a/drivers/dma/dma-uclass.c b/drivers/dma/dma-uclass.c
> index 9c961cf1e2..0ff56f7e88 100644
> --- a/drivers/dma/dma-uclass.c
> +++ b/drivers/dma/dma-uclass.c
> @@ -10,6 +10,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <dm/read.h>
>  #include <dma-uclass.h>
> diff --git a/drivers/dma/ti/k3-udma.c b/drivers/dma/ti/k3-udma.c
> index a5fc7809bc..2e64d338ca 100644
> --- a/drivers/dma/ti/k3-udma.c
> +++ b/drivers/dma/ti/k3-udma.c
> @@ -6,6 +6,7 @@
>  #define pr_fmt(fmt) "udma: " fmt
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/bitops.h>
>  #include <malloc.h>
> diff --git a/drivers/fpga/versalpl.c b/drivers/fpga/versalpl.c
> index 4bcc213243..6c69ab7802 100644
> --- a/drivers/fpga/versalpl.c
> +++ b/drivers/fpga/versalpl.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/arch/sys_proto.h>
>  #include <memalign.h>
>  #include <versalpl.h>
> diff --git a/drivers/fpga/zynqmppl.c b/drivers/fpga/zynqmppl.c
> index d129b5459c..4a826e4a71 100644
> --- a/drivers/fpga/zynqmppl.c
> +++ b/drivers/fpga/zynqmppl.c
> @@ -7,6 +7,7 @@
>  
>  #include <console.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <zynqmppl.h>
>  #include <zynqmp_firmware.h>
>  #include <linux/sizes.h>
> diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c
> index ebe7bcdd90..1224540811 100644
> --- a/drivers/mmc/dw_mmc.c
> +++ b/drivers/mmc/dw_mmc.c
> @@ -7,6 +7,7 @@
>  
>  #include <bouncebuf.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <errno.h>
>  #include <malloc.h>
>  #include <memalign.h>
> diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
> index 8ff84aa3a8..3b7bb216eb 100644
> --- a/drivers/mmc/fsl_esdhc.c
> +++ b/drivers/mmc/fsl_esdhc.c
> @@ -13,6 +13,7 @@
>  #include <common.h>
>  #include <command.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <errno.h>
>  #include <hwconfig.h>
>  #include <mmc.h>
> diff --git a/drivers/mmc/fsl_esdhc_imx.c b/drivers/mmc/fsl_esdhc_imx.c
> index 4099386313..f1afab742d 100644
> --- a/drivers/mmc/fsl_esdhc_imx.c
> +++ b/drivers/mmc/fsl_esdhc_imx.c
> @@ -14,6 +14,7 @@
>  #include <common.h>
>  #include <command.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <errno.h>
>  #include <hwconfig.h>
>  #include <mmc.h>
> diff --git a/drivers/mmc/fsl_esdhc_spl.c b/drivers/mmc/fsl_esdhc_spl.c
> index 4557cd3dd7..3021c3d6d4 100644
> --- a/drivers/mmc/fsl_esdhc_spl.c
> +++ b/drivers/mmc/fsl_esdhc_spl.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <mmc.h>
>  #include <malloc.h>
>  
> diff --git a/drivers/mmc/meson_gx_mmc.c b/drivers/mmc/meson_gx_mmc.c
> index 031cc79ccb..b5f5122b1b 100644
> --- a/drivers/mmc/meson_gx_mmc.c
> +++ b/drivers/mmc/meson_gx_mmc.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <fdtdec.h>
>  #include <malloc.h>
> diff --git a/drivers/mmc/omap_hsmmc.c b/drivers/mmc/omap_hsmmc.c
> index bade129aea..dab3425e97 100644
> --- a/drivers/mmc/omap_hsmmc.c
> +++ b/drivers/mmc/omap_hsmmc.c
> @@ -24,6 +24,7 @@
>  
>  #include <config.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <memalign.h>
>  #include <mmc.h>
> diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
> index fbc576fd72..e6fed1a08a 100644
> --- a/drivers/mmc/sdhci.c
> +++ b/drivers/mmc/sdhci.c
> @@ -8,6 +8,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <malloc.h>
> diff --git a/drivers/mmc/stm32_sdmmc2.c b/drivers/mmc/stm32_sdmmc2.c
> index 1726ed72ef..0a7a2fe624 100644
> --- a/drivers/mmc/stm32_sdmmc2.c
> +++ b/drivers/mmc/stm32_sdmmc2.c
> @@ -6,6 +6,7 @@
>  
>  #include <common.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <fdtdec.h>
>  #include <linux/libfdt.h>
> diff --git a/drivers/mmc/tmio-common.c b/drivers/mmc/tmio-common.c
> index 812205a21f..669410d97f 100644
> --- a/drivers/mmc/tmio-common.c
> +++ b/drivers/mmc/tmio-common.c
> @@ -6,6 +6,7 @@
>  
>  #include <common.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <fdtdec.h>
>  #include <mmc.h>
>  #include <dm.h>
> diff --git a/drivers/mtd/nand/raw/denali.c b/drivers/mtd/nand/raw/denali.c
> index e0eb1339ec..0a7ca8a8df 100644
> --- a/drivers/mtd/nand/raw/denali.c
> +++ b/drivers/mtd/nand/raw/denali.c
> @@ -5,6 +5,7 @@
>   * Copyright (C) 2009-2010, Intel Corporation and its suppliers.
>   */
>  
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <nand.h>
>  #include <linux/bitfield.h>
> diff --git a/drivers/mtd/nand/raw/fsl_elbc_spl.c b/drivers/mtd/nand/raw/fsl_elbc_spl.c
> index 099d86427c..a62ab69ee1 100644
> --- a/drivers/mtd/nand/raw/fsl_elbc_spl.c
> +++ b/drivers/mtd/nand/raw/fsl_elbc_spl.c
> @@ -10,6 +10,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/fsl_lbc.h>
>  #include <nand.h>
> diff --git a/drivers/mtd/nand/raw/fsl_ifc_spl.c b/drivers/mtd/nand/raw/fsl_ifc_spl.c
> index 7137eb4108..0983fbced3 100644
> --- a/drivers/mtd/nand/raw/fsl_ifc_spl.c
> +++ b/drivers/mtd/nand/raw/fsl_ifc_spl.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <fsl_ifc.h>
>  #include <linux/mtd/rawnand.h>
> diff --git a/drivers/mtd/nand/raw/mxs_nand.c b/drivers/mtd/nand/raw/mxs_nand.c
> index ad7b644886..fe8097c146 100644
> --- a/drivers/mtd/nand/raw/mxs_nand.c
> +++ b/drivers/mtd/nand/raw/mxs_nand.c
> @@ -13,6 +13,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <linux/mtd/rawnand.h>
>  #include <linux/sizes.h>
> diff --git a/drivers/mtd/pic32_flash.c b/drivers/mtd/pic32_flash.c
> index 5c55f1557f..8f09e5b250 100644
> --- a/drivers/mtd/pic32_flash.c
> +++ b/drivers/mtd/pic32_flash.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <fdt_support.h>
>  #include <flash.h>
> diff --git a/drivers/mtd/spi/fsl_espi_spl.c b/drivers/mtd/spi/fsl_espi_spl.c
> index b90e6a5527..580b1e24b7 100644
> --- a/drivers/mtd/spi/fsl_espi_spl.c
> +++ b/drivers/mtd/spi/fsl_espi_spl.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <spi_flash.h>
>  #include <malloc.h>
>  
> diff --git a/drivers/net/ag7xxx.c b/drivers/net/ag7xxx.c
> index 7f1dee4b3e..804d5c20b6 100644
> --- a/drivers/net/ag7xxx.c
> +++ b/drivers/net/ag7xxx.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <miiphy.h>
> diff --git a/drivers/net/altera_tse.c b/drivers/net/altera_tse.c
> index fb878d4e63..aabddd6bb6 100644
> --- a/drivers/net/altera_tse.c
> +++ b/drivers/net/altera_tse.c
> @@ -9,6 +9,7 @@
>   * published by the Free Software Foundation.
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <fdt_support.h>
> diff --git a/drivers/net/bcm-sf2-eth-gmac.c b/drivers/net/bcm-sf2-eth-gmac.c
> index db3e79ade3..6a25f67c30 100644
> --- a/drivers/net/bcm-sf2-eth-gmac.c
> +++ b/drivers/net/bcm-sf2-eth-gmac.c
> @@ -11,6 +11,7 @@
>  
>  #include <config.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <net.h>
>  #include <asm/io.h>
> diff --git a/drivers/net/designware.c b/drivers/net/designware.c
> index 0031370085..5c2d5e5a79 100644
> --- a/drivers/net/designware.c
> +++ b/drivers/net/designware.c
> @@ -10,6 +10,7 @@
>  
>  #include <common.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <miiphy.h>
> diff --git a/drivers/net/dwc_eth_qos.c b/drivers/net/dwc_eth_qos.c
> index 455709338c..da5b696c9d 100644
> --- a/drivers/net/dwc_eth_qos.c
> +++ b/drivers/net/dwc_eth_qos.c
> @@ -28,6 +28,7 @@
>   */
>  #include <common.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <memalign.h>
> diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c
> index a34f697461..0946011844 100644
> --- a/drivers/net/e1000.c
> +++ b/drivers/net/e1000.c
> @@ -30,6 +30,7 @@ tested on both gig copper and gig fiber boards
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <memalign.h>
> diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c
> index 3d43a58d4a..be5d9add61 100644
> --- a/drivers/net/ethoc.c
> +++ b/drivers/net/ethoc.c
> @@ -10,6 +10,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <dm/platform_data/net_ethoc.h>
>  #include <linux/io.h>
> diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
> index 131d1998a7..2aa1029d42 100644
> --- a/drivers/net/fec_mxc.c
> +++ b/drivers/net/fec_mxc.c
> @@ -8,6 +8,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <env.h>
>  #include <malloc.h>
> diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c
> index c980ba4edb..6a9cf51fe4 100644
> --- a/drivers/net/fsl-mc/mc.c
> +++ b/drivers/net/fsl-mc/mc.c
> @@ -5,6 +5,7 @@
>   * Copyright 2017-2018 NXP
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <errno.h>
>  #include <linux/bug.h>
> diff --git a/drivers/net/ftgmac100.c b/drivers/net/ftgmac100.c
> index 92c38a81bd..b6b8a93bb5 100644
> --- a/drivers/net/ftgmac100.c
> +++ b/drivers/net/ftgmac100.c
> @@ -12,6 +12,7 @@
>   */
>  
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <miiphy.h>
>  #include <net.h>
> diff --git a/drivers/net/ftmac100.c b/drivers/net/ftmac100.c
> index d8f1dde657..24bb45f351 100644
> --- a/drivers/net/ftmac100.c
> +++ b/drivers/net/ftmac100.c
> @@ -8,6 +8,7 @@
>  
>  #include <config.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <malloc.h>
>  #include <net.h>
> diff --git a/drivers/net/higmacv300.c b/drivers/net/higmacv300.c
> index 1be8359133..897741ab82 100644
> --- a/drivers/net/higmacv300.c
> +++ b/drivers/net/higmacv300.c
> @@ -3,6 +3,7 @@
>   * Copyright (c) 2019, Linaro Limited
>   */
>  
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <common.h>
>  #include <console.h>
> diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c
> index 34253e3924..a3b9c152b2 100644
> --- a/drivers/net/ldpaa_eth/ldpaa_eth.c
> +++ b/drivers/net/ldpaa_eth/ldpaa_eth.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/types.h>
>  #include <malloc.h>
> diff --git a/drivers/net/macb.c b/drivers/net/macb.c
> index 1a532b0e5a..f809f3eb07 100644
> --- a/drivers/net/macb.c
> +++ b/drivers/net/macb.c
> @@ -4,6 +4,7 @@
>   */
>  #include <common.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  
>  /*
> diff --git a/drivers/net/mt7628-eth.c b/drivers/net/mt7628-eth.c
> index a1d12f6902..404a046422 100644
> --- a/drivers/net/mt7628-eth.c
> +++ b/drivers/net/mt7628-eth.c
> @@ -14,6 +14,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <malloc.h>
>  #include <miiphy.h>
> diff --git a/drivers/net/mtk_eth.c b/drivers/net/mtk_eth.c
> index 0ef814c78b..c22e590387 100644
> --- a/drivers/net/mtk_eth.c
> +++ b/drivers/net/mtk_eth.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <malloc.h>
>  #include <miiphy.h>
> diff --git a/drivers/net/mvneta.c b/drivers/net/mvneta.c
> index 333be8ff28..6f76a6b0dc 100644
> --- a/drivers/net/mvneta.c
> +++ b/drivers/net/mvneta.c
> @@ -13,6 +13,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <net.h>
>  #include <netdev.h>
> diff --git a/drivers/net/mvpp2.c b/drivers/net/mvpp2.c
> index bd89725e77..8148c03d22 100644
> --- a/drivers/net/mvpp2.c
> +++ b/drivers/net/mvpp2.c
> @@ -14,6 +14,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <dm/device-internal.h>
>  #include <dm/lists.h>
> diff --git a/drivers/net/pch_gbe.c b/drivers/net/pch_gbe.c
> index 2286dd07e9..e4507bf7fd 100644
> --- a/drivers/net/pch_gbe.c
> +++ b/drivers/net/pch_gbe.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <asm/io.h>
> diff --git a/drivers/net/pcnet.c b/drivers/net/pcnet.c
> index eda6743ec3..b4ad11d3fa 100644
> --- a/drivers/net/pcnet.c
> +++ b/drivers/net/pcnet.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <net.h>
>  #include <netdev.h>
> diff --git a/drivers/net/pic32_eth.c b/drivers/net/pic32_eth.c
> index 39c4b10ab8..3458440b6f 100644
> --- a/drivers/net/pic32_eth.c
> +++ b/drivers/net/pic32_eth.c
> @@ -4,6 +4,7 @@
>   *
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <errno.h>
>  #include <dm.h>
>  #include <net.h>
> diff --git a/drivers/net/ravb.c b/drivers/net/ravb.c
> index 11abe5e0c9..fb4a628d63 100644
> --- a/drivers/net/ravb.c
> +++ b/drivers/net/ravb.c
> @@ -10,6 +10,7 @@
>  
>  #include <common.h>
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <miiphy.h>
> diff --git a/drivers/net/rtl8139.c b/drivers/net/rtl8139.c
> index 13309970e2..bb59629f81 100644
> --- a/drivers/net/rtl8139.c
> +++ b/drivers/net/rtl8139.c
> @@ -72,6 +72,7 @@
>  */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <net.h>
>  #include <netdev.h>
> diff --git a/drivers/net/rtl8169.c b/drivers/net/rtl8169.c
> index 521e5909a2..53454f2f21 100644
> --- a/drivers/net/rtl8169.c
> +++ b/drivers/net/rtl8169.c
> @@ -40,6 +40,7 @@
>   * Modified to use le32_to_cpu and cpu_to_le32 properly
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <malloc.h>
> diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c
> index 749f651920..183e8e3083 100644
> --- a/drivers/net/sh_eth.c
> +++ b/drivers/net/sh_eth.c
> @@ -10,6 +10,7 @@
>  
>  #include <config.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <env.h>
>  #include <malloc.h>
>  #include <net.h>
> diff --git a/drivers/net/sni_ave.c b/drivers/net/sni_ave.c
> index ba51ea5e38..6d333e24ee 100644
> --- a/drivers/net/sni_ave.c
> +++ b/drivers/net/sni_ave.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <clk.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <fdt_support.h>
>  #include <linux/io.h>
> diff --git a/drivers/net/sun8i_emac.c b/drivers/net/sun8i_emac.c
> index 0629b16e57..9551918796 100644
> --- a/drivers/net/sun8i_emac.c
> +++ b/drivers/net/sun8i_emac.c
> @@ -10,6 +10,7 @@
>   *
>  */
>  
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/arch/clock.h>
>  #include <asm/arch/gpio.h>
> diff --git a/drivers/net/ti/cpsw.c b/drivers/net/ti/cpsw.c
> index 4a990be93e..93d53612b5 100644
> --- a/drivers/net/ti/cpsw.c
> +++ b/drivers/net/ti/cpsw.c
> @@ -7,6 +7,7 @@
>  
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <net.h>
>  #include <miiphy.h>
>  #include <malloc.h>
> diff --git a/drivers/net/ti/davinci_emac.c b/drivers/net/ti/davinci_emac.c
> index 2bd9c51079..9c6bfca5a9 100644
> --- a/drivers/net/ti/davinci_emac.c
> +++ b/drivers/net/ti/davinci_emac.c
> @@ -23,6 +23,7 @@
>   */
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <net.h>
>  #include <miiphy.h>
>  #include <malloc.h>
> diff --git a/drivers/net/xilinx_axi_emac.c b/drivers/net/xilinx_axi_emac.c
> index 36d651109c..b0450fff56 100644
> --- a/drivers/net/xilinx_axi_emac.c
> +++ b/drivers/net/xilinx_axi_emac.c
> @@ -7,6 +7,7 @@
>  
>  #include <config.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <net.h>
>  #include <malloc.h>
> diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c
> index a7a6ce987f..78f94148b4 100644
> --- a/drivers/net/zynq_gem.c
> +++ b/drivers/net/zynq_gem.c
> @@ -10,6 +10,7 @@
>  
>  #include <clk.h>
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <net.h>
>  #include <netdev.h>
> diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c
> index cddcc2f11d..2593eb174b 100644
> --- a/drivers/nvme/nvme.c
> +++ b/drivers/nvme/nvme.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <memalign.h>
> diff --git a/drivers/remoteproc/rproc-elf-loader.c b/drivers/remoteproc/rproc-elf-loader.c
> index b38a226065..e8026cdfbb 100644
> --- a/drivers/remoteproc/rproc-elf-loader.c
> +++ b/drivers/remoteproc/rproc-elf-loader.c
> @@ -3,6 +3,7 @@
>   * Copyright (C) 2019, STMicroelectronics - All Rights Reserved
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <elf.h>
>  #include <remoteproc.h>
> diff --git a/drivers/spi/mxs_spi.c b/drivers/spi/mxs_spi.c
> index 58b1c67a19..3ca30887fb 100644
> --- a/drivers/spi/mxs_spi.c
> +++ b/drivers/spi/mxs_spi.c
> @@ -13,6 +13,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <memalign.h>
>  #include <spi.h>
> diff --git a/drivers/spi/ti_qspi.c b/drivers/spi/ti_qspi.c
> index 77fa17ee8a..c3d9e7f2ee 100644
> --- a/drivers/spi/ti_qspi.c
> +++ b/drivers/spi/ti_qspi.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/arch/omap.h>
>  #include <malloc.h>
> diff --git a/drivers/spi/zynqmp_gqspi.c b/drivers/spi/zynqmp_gqspi.c
> index c11f040200..4cca418012 100644
> --- a/drivers/spi/zynqmp_gqspi.c
> +++ b/drivers/spi/zynqmp_gqspi.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/arch/sys_proto.h>
>  #include <asm/io.h>
>  #include <clk.h>
> diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
> index 23af60c98d..d01bda18c5 100644
> --- a/drivers/usb/dwc3/core.c
> +++ b/drivers/usb/dwc3/core.c
> @@ -14,6 +14,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <dwc3-uboot.h>
>  #include <asm/dma-mapping.h>
> diff --git a/drivers/usb/dwc3/dwc3-generic.c b/drivers/usb/dwc3/dwc3-generic.c
> index 24b320bbce..8d45748b3b 100644
> --- a/drivers/usb/dwc3/dwc3-generic.c
> +++ b/drivers/usb/dwc3/dwc3-generic.c
> @@ -8,6 +8,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm-generic/io.h>
>  #include <dm.h>
>  #include <dm/device-internal.h>
> diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c
> index 818efb3e8d..0c8c11d743 100644
> --- a/drivers/usb/dwc3/ep0.c
> +++ b/drivers/usb/dwc3/ep0.c
> @@ -13,6 +13,7 @@
>   * commit c00552ebaf : Merge 3.18-rc7 into usb-next
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <linux/kernel.h>
>  #include <linux/list.h>
>  
> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
> index 67d11b4c0d..4353dffb6b 100644
> --- a/drivers/usb/dwc3/gadget.c
> +++ b/drivers/usb/dwc3/gadget.c
> @@ -14,6 +14,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <malloc.h>
>  #include <asm/dma-mapping.h>
>  #include <linux/bug.h>
> diff --git a/drivers/usb/dwc3/io.h b/drivers/usb/dwc3/io.h
> index f660d53231..2407f826c1 100644
> --- a/drivers/usb/dwc3/io.h
> +++ b/drivers/usb/dwc3/io.h
> @@ -17,6 +17,7 @@
>  #ifndef __DRIVERS_USB_DWC3_IO_H
>  #define __DRIVERS_USB_DWC3_IO_H
>  
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  
>  #define	CACHELINE_SIZE		CONFIG_SYS_CACHELINE_SIZE
> diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c
> index bd596ce977..d9cfff3a29 100644
> --- a/drivers/usb/gadget/ci_udc.c
> +++ b/drivers/usb/gadget/ci_udc.c
> @@ -10,6 +10,7 @@
>  #include <common.h>
>  #include <command.h>
>  #include <config.h>
> +#include <cpu_func.h>
>  #include <net.h>
>  #include <malloc.h>
>  #include <asm/byteorder.h>
> diff --git a/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c b/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c
> index 7eb632d3b1..e9e18568c1 100644
> --- a/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c
> +++ b/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c
> @@ -17,6 +17,9 @@
>   * Lukasz Majewski <l.majewski@samsumg.com>
>   */
>  
> +#include <common.h>
> +#include <cpu_func.h>
> +

is this intended if both files haven't been required before?

>  static u8 clear_feature_num;
>  int clear_feature_flag;
>  
> diff --git a/drivers/usb/gadget/fotg210.c b/drivers/usb/gadget/fotg210.c
> index 176068cbfb..0866ef6531 100644
> --- a/drivers/usb/gadget/fotg210.c
> +++ b/drivers/usb/gadget/fotg210.c
> @@ -9,6 +9,7 @@
>  #include <common.h>
>  #include <command.h>
>  #include <config.h>
> +#include <cpu_func.h>
>  #include <net.h>
>  #include <malloc.h>
>  #include <asm/io.h>
> diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
> index 350d820a6e..b9c56f763b 100644
> --- a/drivers/usb/host/dwc2.c
> +++ b/drivers/usb/host/dwc2.c
> @@ -5,6 +5,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <usb.h>
> diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
> index 85918e85be..ef20c3c982 100644
> --- a/drivers/usb/host/ehci-hcd.c
> +++ b/drivers/usb/host/ehci-hcd.c
> @@ -7,6 +7,7 @@
>   * All rights reserved.
>   */
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <errno.h>
>  #include <asm/byteorder.h>
> diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
> index 57e92a9c89..c94960f2cc 100644
> --- a/drivers/usb/host/ohci-hcd.c
> +++ b/drivers/usb/host/ohci-hcd.c
> @@ -28,6 +28,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/byteorder.h>
>  #include <dm.h>
>  #include <errno.h>
> diff --git a/drivers/usb/host/xhci-mem.c b/drivers/usb/host/xhci-mem.c
> index 530e979bb7..93450ee3b7 100644
> --- a/drivers/usb/host/xhci-mem.c
> +++ b/drivers/usb/host/xhci-mem.c
> @@ -14,6 +14,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <asm/byteorder.h>
>  #include <usb.h>
> diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
> index 6a469e1dae..3cd6c8a0dc 100644
> --- a/drivers/usb/host/xhci-ring.c
> +++ b/drivers/usb/host/xhci-ring.c
> @@ -14,6 +14,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/byteorder.h>
>  #include <usb.h>
>  #include <asm/unaligned.h>
> diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
> index abd23e23fd..40dee2e6d9 100644
> --- a/drivers/usb/host/xhci.c
> +++ b/drivers/usb/host/xhci.c
> @@ -20,6 +20,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <asm/byteorder.h>
>  #include <usb.h>
> diff --git a/drivers/video/atmel_hlcdfb.c b/drivers/video/atmel_hlcdfb.c
> index 120d41f41f..734bc12c7b 100644
> --- a/drivers/video/atmel_hlcdfb.c
> +++ b/drivers/video/atmel_hlcdfb.c
> @@ -6,6 +6,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <asm/io.h>
>  #include <asm/arch/gpio.h>
>  #include <asm/arch/clk.h>
> diff --git a/drivers/video/sunxi/sunxi_display.c b/drivers/video/sunxi/sunxi_display.c
> index c45b3ebe6e..b1aa4b25be 100644
> --- a/drivers/video/sunxi/sunxi_display.c
> +++ b/drivers/video/sunxi/sunxi_display.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <efi_loader.h>
>  #include <time.h>
>  
> diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
> index d4071c0661..f660c5205e 100644
> --- a/drivers/video/video-uclass.c
> +++ b/drivers/video/video-uclass.c
> @@ -4,6 +4,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <mapmem.h>
>  #include <stdio_dev.h>
> diff --git a/include/common.h b/include/common.h
> index 423f1023ad..6dedb37a06 100644
> --- a/include/common.h
> +++ b/include/common.h
> @@ -218,30 +218,6 @@ void	reset_timer	   (void);
>  void	enable_interrupts  (void);
>  int	disable_interrupts (void);
>  
> -/* arch/$(ARCH)/lib/cache.c */
> -void	enable_caches(void);
> -void	flush_cache   (unsigned long, unsigned long);
> -void	flush_dcache_all(void);
> -void	flush_dcache_range(unsigned long start, unsigned long stop);
> -void	invalidate_dcache_range(unsigned long start, unsigned long stop);
> -void	invalidate_dcache_all(void);
> -void	invalidate_icache_all(void);
> -
> -enum {
> -	/* Disable caches (else flush caches but leave them active) */
> -	CBL_DISABLE_CACHES		= 1 << 0,
> -	CBL_SHOW_BOOTSTAGE_REPORT	= 1 << 1,
> -
> -	CBL_ALL				= 3,
> -};
> -
> -/**
> - * Clean up ready for linux
> - *
> - * @param flags		Flags to control what is done
> - */
> -int cleanup_before_linux_select(int flags);
> -
>  /* lib/uuid.c */
>  #include <uuid.h>
>  
> diff --git a/include/cpu_func.h b/include/cpu_func.h
> index a14d23a36d..46f3d92459 100644
> --- a/include/cpu_func.h
> +++ b/include/cpu_func.h
> @@ -60,4 +60,28 @@ void dcache_enable(void);
>  void dcache_disable(void);
>  void mmu_disable(void);
>  
> +/* arch/$(ARCH)/lib/cache.c */
> +void enable_caches(void);
> +void flush_cache(unsigned long addr, unsigned long size);
> +void flush_dcache_all(void);
> +void flush_dcache_range(unsigned long start, unsigned long stop);
> +void invalidate_dcache_range(unsigned long start, unsigned long stop);
> +void invalidate_dcache_all(void);
> +void invalidate_icache_all(void);
> +
> +enum {
> +	/* Disable caches (else flush caches but leave them active) */
> +	CBL_DISABLE_CACHES		= 1 << 0,
> +	CBL_SHOW_BOOTSTAGE_REPORT	= 1 << 1,
> +
> +	CBL_ALL				= 3,
> +};
> +
> +/**
> + * Clean up ready for linux
> + *
> + * @param flags		Flags to control what is done
> + */
> +int cleanup_before_linux_select(int flags);
> +;
>  #endif
> diff --git a/lib/efi_loader/efi_image_loader.c b/lib/efi_loader/efi_image_loader.c
> index 13541cfa7a..d5de6df16d 100644
> --- a/lib/efi_loader/efi_image_loader.c
> +++ b/lib/efi_loader/efi_image_loader.c
> @@ -8,6 +8,7 @@
>   */
>  
>  #include <common.h>
> +#include <cpu_func.h>
>  #include <efi_loader.h>
>  #include <pe.h>
>  
> diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c
> index 72555f07fc..df0485cdad 100644
> --- a/lib/efi_loader/efi_runtime.c
> +++ b/lib/efi_loader/efi_runtime.c
> @@ -7,6 +7,7 @@
>  
>  #include <common.h>
>  #include <command.h>
> +#include <cpu_func.h>
>  #include <dm.h>
>  #include <elf.h>
>  #include <efi_loader.h>
> diff --git a/post/cpu/mpc83xx/ecc.c b/post/cpu/mpc83xx/ecc.c
> index 65a490d357..16210c65ab 100644
> --- a/post/cpu/mpc83xx/ecc.c
> +++ b/post/cpu/mpc83xx/ecc.c
> @@ -10,6 +10,7 @@
>  
>  #include <common.h>
>  #include <cpu_func.h>
> +#include <irq_func.h>
>  #include <mpc83xx.h>
>  #include <watchdog.h>
>  #include <asm/io.h>
> 

-- 
- Daniel

  reply	other threads:[~2019-11-15 12:46 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-14 19:57 [U-Boot] [PATCH v4 00/42] common: Further reduce common.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 01/42] common: Move older CPU functions to their own header Simon Glass
2019-11-20  0:45   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 02/42] Drop CONFIG_SHOW_ACTIVITY Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 03/42] common: Drop global inclusion of status_led.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 04/42] status_led: Tidy up the code style Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 05/42] common: Move random-number functions into their own header Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 06/42] common: Drop linux/crc8.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 07/42] crc: Fix code style with crc functions Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 08/42] crc32: Use the crc.h header for " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 09/42] spl: bootcount: Move code out of header file Simon Glass
2019-11-20  0:46   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 10/42] common: Move bootcount functions to their " Simon Glass
2019-11-20  0:45   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 11/42] common: Move sorting functions to their own " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 12/42] Move strtomhz() to vsprintf.h Simon Glass
2019-11-20  0:45   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 13/42] common: Move env_get_ip() to net.h Simon Glass
2019-11-18 21:27   ` Joe Hershberger
2019-11-14 19:57 ` [U-Boot] [PATCH v4 14/42] serial: usb: Correct the usbtty_...() prototypes Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 15/42] common: Move serial_printf() to the serial header Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 16/42] common: Move serial functions out of common.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 17/42] common: Add a new lz4.h header file Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 18/42] common: Move some time functions out of common.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 19/42] common: Move wait_ticks " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 20/42] arm: pxa: Drop pxa_wait_ticks() Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 21/42] common: Move timer_get_us() function out of common.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 22/42] common: Move get_ticks() " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 23/42] common: Move mii_init() " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 24/42] common: Move some CPU functions " Simon Glass
2019-11-20  0:45   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 25/42] common: Drop cpu_init() Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 26/42] common: Move checkcpu() out of common.h Simon Glass
2019-11-20  0:46   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 27/42] common: Move some SMP functions " Simon Glass
2019-11-20  0:46   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 28/42] arm: powerpc: Tidy up code style for cache functions Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 29/42] common: Move some cache and MMU functions out of common.h Simon Glass
2019-11-20  0:46   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 30/42] common: Drop checkicache() and checkdcache() Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 31/42] common: Move ARM cache operations out of common.h Simon Glass
2019-11-15 12:46   ` Daniel Schwierzeck [this message]
2019-11-15 16:46     ` Simon Glass
2019-11-20  0:46   ` Tom Rini
2019-11-14 19:57 ` [U-Boot] [PATCH v4 32/42] arm: powerpc: Tidy up code style for interrupt functions Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 33/42] common: Move interrupt functions into a new header Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 34/42] common: Move enable/disable_interrupts out of common.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 35/42] common: Move command functions " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 36/42] common: Drop board_show_dram() Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 37/42] common: Move board_get_usable_ram_top() out of common.h Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 38/42] common: Move some board functions " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 39/42] common: Move pci_init_board() " Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 40/42] common: Move trap_init() " Simon Glass
2019-11-15 13:07   ` Daniel Schwierzeck
2019-11-14 19:57 ` [U-Boot] [PATCH v4 41/42] common: Drop get_endaddr() Simon Glass
2019-11-14 19:57 ` [U-Boot] [PATCH v4 42/42] common: Move old EEPROM functions into a new header Simon Glass
2019-11-21 22:23 ` [U-Boot] [PATCH v4 00/42] common: Further reduce common.h Simon Glass
2019-11-21 23:03   ` Tom Rini
2019-11-22  0:21     ` Simon Glass
2019-12-03  3:10 ` Tom Rini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=32a4e7aa-be21-05ed-ae4e-69b2b2088a51@gmail.com \
    --to=daniel.schwierzeck@gmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.