All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v3 00/42] common: Further reduce common.h
@ 2019-11-12 19:42 Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 01/42] common: Move legacy CPU functions to their own header Simon Glass
                   ` (41 more replies)
  0 siblings, 42 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This series drops the size of common.h down further, by moving things out
into existing and new header files.

It is now down to about 200 lines.

Changes in v3:
- Add init.h header
- Add new patch to inline pxa_wait_ticks()
- Drop include in pxa2xx.c since this is for pxa_wait_ticks()
- Put copyright info into vsprintf.c
- Rename eeprom_legacy.h to eeprom.h since this may not be legacy code
- Rename irq_legacy to irq_func to avoid the 'legacy' label
- Update comment to wait_ticks() to indicate it is an internal function
- Update commit message
- Update the commit message

Changes in v2:
- Move trap_init() into init.h instead; update commit message

Simon Glass (42):
  common: Move legacy CPU functions to their own header
  Drop CONFIG_SHOW_ACTIVITY
  common: Drop global inclusion of status_led.h
  status_led: Tidy up the code style
  common: Move random-number functions into their own header
  common: Drop linux/crc8.h
  crc: Fix code style with crc functions
  crc32: Use the crc.h header for crc functions
  spl: bootcount: Move code out of header file
  common: Move bootcount functions to their header file
  common: Move sorting functions to their own header file
  Move strtomhz() to vsprintf.h
  common: Move env_get_ip() to net.h
  serial: usb: Correct the usbtty_...() prototypes
  common: Move serial_printf() to the serial header
  common: Move serial functions out of common.h
  common: Add a new lz4.h header file
  common: Move some time functions out of common.h
  common: Move wait_ticks functions out of common.h
  arm: pxa: Drop pxa_wait_ticks()
  common: Move timer_get_us() function out of common.h
  common: Move get_ticks() function out of common.h
  common: Move mii_init() function out of common.h
  common: Move some CPU functions out of common.h
  common: Drop cpu_init()
  common: Move checkcpu() out of common.h
  common: Move some SMP functions out of common.h
  arm: powerpc: Tidy up code style for cache functions
  common: Move some cache and MMU functions out of common.h
  common: Drop checkicache() and checkdcache()
  common: Move ARM cache operations out of common.h
  arm: powerpc: Tidy up code style for interrupt functions
  common: Move interrupt functions into a new header
  common: Move enable/disable_interrupts out of common.h
  common: Move command functions out of common.h
  common: Drop board_show_dram()
  common: Move board_get_usable_ram_top() out of common.h
  common: Move some board functions out of common.h
  common: Move pci_init_board() out of common.h
  common: Move trap_init() out of common.h
  common: Drop get_endaddr()
  common: Move old EEPROM functions into a new header

 README                                        |   2 +-
 api/api.c                                     |   1 +
 arch/arc/lib/bootm.c                          |   1 +
 arch/arc/lib/cache.c                          |   1 +
 arch/arc/lib/cpu.c                            |   1 +
 arch/arc/lib/interrupts.c                     |   1 +
 arch/arm/cpu/arm11/cpu.c                      |   4 +-
 arch/arm/cpu/arm920t/cpu.c                    |   4 +-
 arch/arm/cpu/arm920t/ep93xx/timer.c           |   1 +
 arch/arm/cpu/arm920t/imx/timer.c              |   1 +
 arch/arm/cpu/arm926ejs/armada100/cpu.c        |   1 +
 arch/arm/cpu/arm926ejs/armada100/timer.c      |   1 +
 arch/arm/cpu/arm926ejs/cache.c                |   1 +
 arch/arm/cpu/arm926ejs/cpu.c                  |   4 +-
 arch/arm/cpu/arm926ejs/lpc32xx/cpu.c          |   1 +
 arch/arm/cpu/arm926ejs/lpc32xx/timer.c        |   1 +
 arch/arm/cpu/arm926ejs/mx25/generic.c         |   1 +
 arch/arm/cpu/arm926ejs/mx27/generic.c         |   1 +
 arch/arm/cpu/arm926ejs/mx27/timer.c           |   1 +
 arch/arm/cpu/arm926ejs/mxs/spl_boot.c         |   1 +
 arch/arm/cpu/arm926ejs/mxs/timer.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                   |   4 +-
 arch/arm/cpu/armv7/arch_timer.c               |   1 +
 arch/arm/cpu/armv7/cache_v7.c                 |   1 +
 arch/arm/cpu/armv7/cpu.c                      |   2 +
 arch/arm/cpu/armv7/exception_level.c          |   1 +
 .../cpu/armv7/iproc-common/hwinit-common.c    |   1 +
 arch/arm/cpu/armv7/iproc-common/timer.c       |   1 +
 .../arm/cpu/armv7/kona-common/hwinit-common.c |   1 +
 arch/arm/cpu/armv7/ls102xa/cpu.c              |   2 +
 arch/arm/cpu/armv7/ls102xa/ls102xa_psci.c     |   1 +
 arch/arm/cpu/armv7/ls102xa/timer.c            |   1 +
 arch/arm/cpu/armv7/mpu_v7r.c                  |   1 +
 arch/arm/cpu/armv7/s5p-common/timer.c         |   1 +
 arch/arm/cpu/armv7/stv0991/timer.c            |   1 +
 arch/arm/cpu/armv7/sunxi/timer.c              |   1 +
 arch/arm/cpu/armv7/vf610/generic.c            |   1 +
 arch/arm/cpu/armv7/vf610/timer.c              |   1 +
 arch/arm/cpu/armv7/virt-v7.c                  |   1 +
 arch/arm/cpu/armv7m/cache.c                   |   1 +
 arch/arm/cpu/armv7m/cpu.c                     |   2 +
 arch/arm/cpu/armv7m/systick-timer.c           |   1 +
 arch/arm/cpu/armv8/cache_v8.c                 |   1 +
 arch/arm/cpu/armv8/cpu.c                      |   2 +
 arch/arm/cpu/armv8/exception_level.c          |   1 +
 arch/arm/cpu/armv8/fsl-layerscape/cpu.c       |   3 +
 .../armv8/fsl-layerscape/fsl_lsch2_speed.c    |   1 +
 .../armv8/fsl-layerscape/fsl_lsch3_speed.c    |   1 +
 arch/arm/cpu/armv8/fsl-layerscape/mp.c        |   1 +
 arch/arm/cpu/armv8/fsl-layerscape/soc.c       |   1 +
 arch/arm/cpu/armv8/fsl-layerscape/spl.c       |   1 +
 arch/arm/cpu/armv8/generic_timer.c            |   1 +
 arch/arm/cpu/armv8/s32v234/cpu.c              |   1 +
 arch/arm/cpu/armv8/sec_firmware.c             |   1 +
 arch/arm/cpu/pxa/cache.c                      |   1 +
 arch/arm/cpu/pxa/pxa2xx.c                     |  14 +-
 arch/arm/cpu/sa1100/cpu.c                     |   4 +-
 arch/arm/cpu/sa1100/timer.c                   |   1 +
 arch/arm/lib/bootm.c                          |   1 +
 arch/arm/lib/cache-cp15.c                     |  13 +-
 arch/arm/lib/cache.c                          |   1 +
 arch/arm/lib/interrupts.c                     |   7 +-
 arch/arm/lib/interrupts_64.c                  |   1 +
 arch/arm/lib/interrupts_m.c                   |   1 +
 arch/arm/lib/reset.c                          |   1 +
 arch/arm/mach-at91/arm920t/timer.c            |   1 +
 arch/arm/mach-at91/arm926ejs/cpu.c            |   1 +
 arch/arm/mach-at91/armv7/cpu.c                |   2 +
 arch/arm/mach-bcm283x/init.c                  |   1 +
 arch/arm/mach-bcm283x/mbox.c                  |   1 +
 arch/arm/mach-davinci/timer.c                 |   1 +
 arch/arm/mach-exynos/soc.c                    |   1 +
 arch/arm/mach-imx/cache.c                     |   1 +
 arch/arm/mach-imx/imx8/cpu.c                  |   1 +
 arch/arm/mach-imx/imx8m/soc.c                 |   1 +
 arch/arm/mach-imx/mx5/soc.c                   |   1 +
 arch/arm/mach-imx/mx6/mp.c                    |   1 +
 arch/arm/mach-imx/mx6/opos6ul.c               |   1 +
 arch/arm/mach-imx/mx6/soc.c                   |   1 +
 arch/arm/mach-imx/mx7/psci-mx7.c              |   1 +
 arch/arm/mach-imx/mx7ulp/soc.c                |   1 +
 arch/arm/mach-imx/syscounter.c                |   1 +
 arch/arm/mach-imx/timer.c                     |   1 +
 arch/arm/mach-keystone/init.c                 |   1 +
 arch/arm/mach-kirkwood/cpu.c                  |   1 +
 arch/arm/mach-mediatek/cpu.c                  |   1 +
 arch/arm/mach-meson/board-common.c            |   2 +
 arch/arm/mach-mvebu/arm64-common.c            |   1 +
 arch/arm/mach-mvebu/armada8k/cpu.c            |   1 +
 arch/arm/mach-mvebu/cpu.c                     |   1 +
 arch/arm/mach-omap2/omap-cache.c              |   1 +
 arch/arm/mach-omap2/sec-common.c              |   1 +
 arch/arm/mach-omap2/timer.c                   |   1 +
 arch/arm/mach-orion5x/cpu.c                   |   1 +
 arch/arm/mach-orion5x/timer.c                 |   1 +
 arch/arm/mach-rmobile/cpu_info.c              |   1 +
 arch/arm/mach-rmobile/memmap-gen3.c           |   1 +
 arch/arm/mach-rmobile/timer.c                 |   1 +
 arch/arm/mach-rockchip/board.c                |   2 +
 arch/arm/mach-rockchip/misc.c                 |   1 +
 arch/arm/mach-rockchip/rk3288/rk3288.c        |   1 +
 arch/arm/mach-rockchip/sdram_common.c         |   1 +
 arch/arm/mach-s5pc1xx/cache.c                 |   1 +
 arch/arm/mach-socfpga/clock_manager_gen5.c    |   1 +
 arch/arm/mach-socfpga/misc.c                  |   1 +
 arch/arm/mach-socfpga/spl_a10.c               |   1 +
 arch/arm/mach-stm32mp/cpu.c                   |   1 +
 arch/arm/mach-sunxi/board.c                   |   1 +
 arch/arm/mach-sunxi/dram_helpers.c            |   1 +
 arch/arm/mach-sunxi/p2wi.c                    |   1 +
 arch/arm/mach-sunxi/rsb.c                     |   1 +
 arch/arm/mach-tegra/board.c                   |   1 +
 arch/arm/mach-tegra/board2.c                  |   1 +
 arch/arm/mach-tegra/clock.c                   |   1 +
 arch/arm/mach-tegra/cmd_enterrcm.c            |   1 +
 arch/arm/mach-tegra/ivc.c                     |   1 +
 arch/arm/mach-uniphier/arm32/cache-uniphier.c |   1 +
 arch/arm/mach-uniphier/arm32/psci.c           |   1 +
 arch/arm/mach-uniphier/board_late_init.c      |   1 +
 arch/arm/mach-zynq/cpu.c                      |   1 +
 arch/arm/mach-zynqmp/mp.c                     |   1 +
 arch/arm/mach-zynqmp/spl.c                    |   1 +
 arch/m68k/cpu/mcf5227x/cpu.c                  |   1 +
 arch/m68k/cpu/mcf5227x/cpu_init.c             |   1 +
 arch/m68k/cpu/mcf5227x/interrupts.c           |   1 +
 arch/m68k/cpu/mcf523x/cpu.c                   |   1 +
 arch/m68k/cpu/mcf523x/cpu_init.c              |   1 +
 arch/m68k/cpu/mcf523x/interrupts.c            |   1 +
 arch/m68k/cpu/mcf52x2/cpu.c                   |   1 +
 arch/m68k/cpu/mcf52x2/cpu_init.c              |   1 +
 arch/m68k/cpu/mcf52x2/interrupts.c            |   1 +
 arch/m68k/cpu/mcf530x/cpu.c                   |   1 +
 arch/m68k/cpu/mcf530x/cpu_init.c              |   1 +
 arch/m68k/cpu/mcf530x/interrupts.c            |   1 +
 arch/m68k/cpu/mcf532x/cpu.c                   |   1 +
 arch/m68k/cpu/mcf532x/cpu_init.c              |   1 +
 arch/m68k/cpu/mcf532x/interrupts.c            |   1 +
 arch/m68k/cpu/mcf5445x/cpu.c                  |   1 +
 arch/m68k/cpu/mcf5445x/cpu_init.c             |   1 +
 arch/m68k/cpu/mcf5445x/interrupts.c           |   1 +
 arch/m68k/cpu/mcf547x_8x/cpu.c                |   1 +
 arch/m68k/cpu/mcf547x_8x/cpu_init.c           |   1 +
 arch/m68k/cpu/mcf547x_8x/interrupts.c         |   1 +
 arch/m68k/cpu/mcf547x_8x/slicetimer.c         |   1 +
 arch/m68k/lib/cache.c                         |   1 +
 arch/m68k/lib/interrupts.c                    |   9 +-
 arch/m68k/lib/time.c                          |   2 +
 arch/m68k/lib/traps.c                         |   1 +
 arch/microblaze/cpu/cache.c                   |  19 +-
 arch/microblaze/cpu/interrupts.c              |   1 +
 arch/microblaze/cpu/timer.c                   |   1 +
 arch/microblaze/include/asm/microblaze_intc.h |   2 +
 arch/microblaze/lib/bootm.c                   |   1 +
 arch/mips/cpu/interrupts.c                    |   1 +
 arch/mips/lib/cache.c                         |   1 +
 arch/mips/lib/reloc.c                         |   1 +
 arch/mips/lib/traps.c                         |   2 +
 arch/mips/mach-jz47xx/jz4780/jz4780.c         |   2 +
 arch/mips/mach-jz47xx/jz4780/timer.c          |   2 +
 arch/mips/mach-mtmips/ddr_calibrate.c         |   1 +
 arch/nds32/cpu/n1213/ae3xx/cpu.c              |   2 +
 arch/nds32/cpu/n1213/ag101/cpu.c              |   2 +
 arch/nds32/cpu/n1213/ag101/timer.c            |   2 +
 arch/nds32/lib/cache.c                        |   1 +
 arch/nds32/lib/interrupts.c                   |   1 +
 arch/nios2/cpu/cpu.c                          |   2 +
 arch/nios2/cpu/interrupts.c                   |  15 +-
 arch/nios2/lib/bootm.c                        |   2 +
 arch/nios2/lib/cache.c                        |   1 +
 arch/powerpc/cpu/mpc83xx/cpu.c                |   5 +-
 arch/powerpc/cpu/mpc83xx/ecc.c                |   1 +
 arch/powerpc/cpu/mpc83xx/interrupts.c         |   7 +-
 arch/powerpc/cpu/mpc83xx/spd_sdram.c          |   2 +
 arch/powerpc/cpu/mpc83xx/speed.c              |   1 +
 arch/powerpc/cpu/mpc85xx/cpu.c                |   3 +
 arch/powerpc/cpu/mpc85xx/cpu_init.c           |   1 +
 arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c |   1 +
 arch/powerpc/cpu/mpc85xx/interrupts.c         |   1 +
 arch/powerpc/cpu/mpc85xx/mp.c                 |   1 +
 arch/powerpc/cpu/mpc85xx/speed.c              |   1 +
 arch/powerpc/cpu/mpc85xx/traps.c              |   1 +
 arch/powerpc/cpu/mpc86xx/cpu.c                |   2 +
 arch/powerpc/cpu/mpc86xx/interrupts.c         |   3 +-
 arch/powerpc/cpu/mpc86xx/mp.c                 |   1 +
 arch/powerpc/cpu/mpc8xx/cache.c               |   1 +
 arch/powerpc/cpu/mpc8xx/cpu.c                 | 132 +++++------
 arch/powerpc/cpu/mpc8xx/interrupts.c          |   1 +
 arch/powerpc/cpu/mpc8xxx/cpu.c                |   1 +
 arch/powerpc/cpu/mpc8xxx/fdt.c                |   1 +
 arch/powerpc/cpu/mpc8xxx/srio.c               |   1 +
 arch/powerpc/lib/bootm.c                      |   1 +
 arch/powerpc/lib/cache.c                      |   1 +
 arch/powerpc/lib/interrupts.c                 |  24 +-
 arch/powerpc/lib/time.c                       |   1 +
 arch/riscv/cpu/ax25/cache.c                   |   1 +
 arch/riscv/cpu/ax25/cpu.c                     |   2 +
 arch/riscv/cpu/generic/cpu.c                  |   1 +
 arch/riscv/cpu/generic/dram.c                 |   1 +
 arch/riscv/lib/cache.c                        |   1 +
 arch/riscv/lib/interrupts.c                   |   1 +
 arch/riscv/lib/smp.c                          |   1 +
 arch/riscv/lib/spl.c                          |   1 +
 arch/sandbox/cpu/cpu.c                        |   1 +
 arch/sandbox/cpu/start.c                      |   1 +
 arch/sandbox/lib/interrupts.c                 |   1 +
 arch/sh/cpu/sh4/cache.c                       |   1 +
 arch/sh/cpu/sh4/cpu.c                         |   2 +
 arch/sh/cpu/sh4/interrupts.c                  |   7 +-
 arch/sh/lib/time_sh2.c                        |   1 +
 arch/sh/lib/zimageboot.c                      |   1 +
 arch/x86/cpu/broadwell/cpu_from_spl.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/cpu.c                            |   1 +
 arch/x86/cpu/efi/app.c                        |   1 +
 arch/x86/cpu/efi/payload.c                    |   2 +
 arch/x86/cpu/efi/sdram.c                      |   1 +
 arch/x86/cpu/i386/cpu.c                       |   1 +
 arch/x86/cpu/i386/interrupt.c                 |   1 +
 arch/x86/cpu/intel_common/mrc.c               |   1 +
 arch/x86/cpu/ivybridge/cpu.c                  |   1 +
 arch/x86/cpu/ivybridge/sdram.c                |   1 +
 arch/x86/cpu/mtrr.c                           |   1 +
 arch/x86/cpu/qemu/dram.c                      |   1 +
 arch/x86/cpu/qemu/qemu.c                      |   1 +
 arch/x86/cpu/quark/dram.c                     |   2 +
 arch/x86/cpu/quark/quark.c                    |   2 +
 arch/x86/cpu/slimbootloader/sdram.c           |   1 +
 arch/x86/cpu/slimbootloader/slimbootloader.c  |   1 +
 arch/x86/cpu/tangier/tangier.c                |   1 +
 arch/x86/cpu/x86_64/cpu.c                     |   2 +
 arch/x86/cpu/x86_64/interrupts.c              |   1 +
 arch/x86/lib/bios.c                           |   1 +
 arch/x86/lib/fsp/fsp_common.c                 |   1 +
 arch/x86/lib/fsp/fsp_dram.c                   |   1 +
 arch/x86/lib/init_helpers.c                   |   1 +
 arch/x86/lib/interrupts.c                     |   1 +
 arch/x86/lib/spl.c                            |   2 +
 arch/x86/lib/zimage.c                         |   1 +
 arch/xtensa/cpu/cpu.c                         |   1 +
 arch/xtensa/cpu/exceptions.c                  |   1 +
 arch/xtensa/lib/bootm.c                       |   1 +
 arch/xtensa/lib/cache.c                       |   1 +
 arch/xtensa/lib/time.c                        |   1 +
 board/Arcturus/ucp1020/cmd_arc.c              |   1 +
 board/Arcturus/ucp1020/ddr.c                  |   1 +
 board/Arcturus/ucp1020/ucp1020.c              |   1 +
 board/BuR/brppt1/board.c                      |   2 +
 board/BuR/brsmarc1/board.c                    |   1 +
 board/BuR/brxre1/board.c                      |   1 +
 board/CZ.NIC/turris_mox/turris_mox.c          |   1 +
 board/CZ.NIC/turris_omnia/turris_omnia.c      |   2 +
 board/Marvell/mvebu_armada-8k/board.c         |   1 +
 board/advantech/dms-ba16/dms-ba16.c           |   1 +
 board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c   |   1 +
 board/amarula/vyasa-rk3288/vyasa-rk3288.c     |   1 +
 board/aristainetos/aristainetos-v2.c          |   1 +
 board/armadeus/apf27/apf27.c                  |   1 +
 board/armadeus/opos6uldev/board.c             |   3 +-
 board/armltd/integrator/integrator.c          |   3 +-
 board/armltd/integrator/pci.c                 |   1 +
 board/armltd/integrator/timer.c               |   1 +
 board/armltd/vexpress/vexpress_common.c       |   1 +
 board/astro/mcf5373l/mcf5373l.c               |   1 +
 .../armadillo-800eva/armadillo-800eva.c       |   1 +
 board/atmel/at91sam9261ek/at91sam9261ek.c     |   1 +
 board/atmel/at91sam9261ek/led.c               |   1 +
 board/atmel/at91sam9263ek/at91sam9263ek.c     |   1 +
 board/atmel/at91sam9263ek/led.c               |   1 +
 .../atmel/at91sam9m10g45ek/at91sam9m10g45ek.c |   1 +
 board/atmel/at91sam9m10g45ek/led.c            |   1 +
 board/atmel/at91sam9n12ek/at91sam9n12ek.c     |   1 +
 board/atmel/at91sam9rlek/at91sam9rlek.c       |   1 +
 board/atmel/at91sam9rlek/led.c                |   1 +
 board/atmel/at91sam9x5ek/at91sam9x5ek.c       |   1 +
 board/atmel/common/mac_eeprom.c               |   1 +
 board/atmel/common/video_display.c            |   1 +
 .../atmel/sama5d27_som1_ek/sama5d27_som1_ek.c |   1 +
 board/atmel/sama5d2_icp/sama5d2_icp.c         |   1 +
 board/atmel/sama5d2_ptc_ek/sama5d2_ptc_ek.c   |   1 +
 .../atmel/sama5d2_xplained/sama5d2_xplained.c |   1 +
 .../atmel/sama5d3_xplained/sama5d3_xplained.c |   1 +
 board/atmel/sama5d3xek/sama5d3xek.c           |   1 +
 .../atmel/sama5d4_xplained/sama5d4_xplained.c |   1 +
 board/atmel/sama5d4ek/sama5d4ek.c             |   1 +
 board/beckhoff/mx53cx9020/mx53cx9020.c        |   2 +
 board/birdland/bav335x/board.c                |   2 +
 board/bluewater/gurnard/gurnard.c             |   1 +
 board/bosch/shc/board.c                       |   2 +
 board/broadcom/bcm_ep/board.c                 |   1 +
 board/broadcom/bcmstb/bcmstb.c                |   3 +
 board/bticino/mamoj/spl.c                     |   1 +
 board/cadence/xtfpga/xtfpga.c                 |   1 +
 board/cavium/thunderx/thunderx.c              |   1 +
 board/ccv/xpress/xpress.c                     |   1 +
 .../popmetal_rk3288/popmetal-rk3288.c         |   1 +
 board/cirrus/edb93xx/edb93xx.c                |   3 +
 board/cobra5272/flash.c                       |  22 +-
 board/compulab/cl-som-imx7/cl-som-imx7.c      |   1 +
 board/compulab/cm_fx6/cm_fx6.c                |   1 +
 board/compulab/cm_t335/cm_t335.c              |   1 +
 board/compulab/common/eeprom.c                |   1 +
 board/congatec/cgtqmx6eval/cgtqmx6eval.c      |   1 +
 .../conga-qeval20-qa3.c                       |   1 +
 board/coreboot/coreboot/coreboot.c            |   1 +
 board/corscience/tricorder/tricorder-eeprom.c |   2 +
 board/corscience/tricorder/tricorder.c        |   1 +
 board/cssi/MCR3000/MCR3000.c                  |   2 +
 board/dfi/dfi-bt700/dfi-bt700.c               |   1 +
 board/dhelectronics/dh_imx6/dh_imx6.c         |   2 +
 board/eets/pdu001/board.c                     |   1 +
 board/efi/efi-x86_payload/payload.c           |   1 +
 board/el/el6x/el6x.c                          |   1 +
 board/embest/mx6boards/mx6boards.c            |   1 +
 board/emulation/qemu-riscv/qemu-riscv.c       |   1 +
 board/engicam/common/board.c                  |   2 +
 board/engicam/common/spl.c                    |   1 +
 board/esd/meesc/meesc.c                       |   2 +
 board/esd/vme8349/pci.c                       |   1 +
 board/freescale/b4860qds/b4860qds.c           |   2 +
 board/freescale/b4860qds/pci.c                |   1 +
 board/freescale/bsc9131rdb/ddr.c              |   1 +
 board/freescale/bsc9132qds/bsc9132qds.c       |   1 +
 board/freescale/bsc9132qds/ddr.c              |   1 +
 board/freescale/c29xpcie/c29xpcie.c           |   1 +
 board/freescale/common/p_corenet/pci.c        |   1 +
 board/freescale/common/sys_eeprom.c           |   1 +
 board/freescale/common/vid.c                  |   1 +
 board/freescale/corenet_ds/corenet_ds.c       |   1 +
 board/freescale/corenet_ds/ddr.c              |   1 +
 board/freescale/imx8mq_evk/imx8mq_evk.c       |   1 +
 board/freescale/imx8qm_mek/imx8qm_mek.c       |   1 +
 board/freescale/imx8qxp_mek/imx8qxp_mek.c     |   1 +
 board/freescale/ls1021aiot/ls1021aiot.c       |   1 +
 board/freescale/ls1021aqds/ls1021aqds.c       |   1 +
 board/freescale/ls1021atsn/ls1021atsn.c       |   1 +
 board/freescale/ls1021atwr/ls1021atwr.c       |   1 +
 board/freescale/ls1043ardb/ddr.c              |   1 +
 board/freescale/m5253demo/flash.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/mpc8313erdb/mpc8313erdb.c     |   1 +
 board/freescale/mpc8315erdb/mpc8315erdb.c     |   1 +
 board/freescale/mpc8323erdb/mpc8323erdb.c     |   3 +
 board/freescale/mpc832xemds/mpc832xemds.c     |   1 +
 board/freescale/mpc832xemds/pci.c             |   1 +
 board/freescale/mpc8349emds/pci.c             |   1 +
 board/freescale/mpc8349itx/pci.c              |   1 +
 board/freescale/mpc837xemds/mpc837xemds.c     |   1 +
 board/freescale/mpc837xemds/pci.c             |   1 +
 board/freescale/mpc837xerdb/pci.c             |   1 +
 board/freescale/mpc8536ds/mpc8536ds.c         |   1 +
 board/freescale/mpc8541cds/mpc8541cds.c       |   2 +
 board/freescale/mpc8544ds/mpc8544ds.c         |   1 +
 board/freescale/mpc8548cds/mpc8548cds.c       |   2 +
 board/freescale/mpc8555cds/mpc8555cds.c       |   2 +
 board/freescale/mpc8568mds/mpc8568mds.c       |   1 +
 board/freescale/mpc8569mds/mpc8569mds.c       |   1 +
 board/freescale/mpc8572ds/mpc8572ds.c         |   1 +
 board/freescale/mpc8610hpcd/mpc8610hpcd.c     |   1 +
 board/freescale/mpc8641hpcn/mpc8641hpcn.c     |   1 +
 board/freescale/mx25pdk/mx25pdk.c             |   1 +
 board/freescale/mx31pdk/mx31pdk.c             |   1 +
 board/freescale/mx35pdk/mx35pdk.c             |   1 +
 board/freescale/mx51evk/mx51evk.c             |   1 +
 board/freescale/mx53evk/mx53evk.c             |   1 +
 board/freescale/mx53loco/mx53loco.c           |   1 +
 board/freescale/mx6sabreauto/mx6sabreauto.c   |   1 +
 board/freescale/mx6sabresd/mx6sabresd.c       |   1 +
 board/freescale/mx6sllevk/mx6sllevk.c         |   1 +
 .../freescale/mx6sxsabreauto/mx6sxsabreauto.c |   1 +
 board/freescale/mx6sxsabresd/mx6sxsabresd.c   |   1 +
 .../mx6ul_14x14_evk/mx6ul_14x14_evk.c         |   1 +
 board/freescale/mx6ullevk/mx6ullevk.c         |   1 +
 board/freescale/mx7dsabresd/mx7dsabresd.c     |   1 +
 board/freescale/p1010rdb/ddr.c                |   1 +
 board/freescale/p1010rdb/p1010rdb.c           |   1 +
 board/freescale/p1022ds/p1022ds.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_twr/ddr.c                  |   1 +
 board/freescale/p1_twr/p1_twr.c               |   1 +
 board/freescale/p2041rdb/p2041rdb.c           |   1 +
 board/freescale/qemu-ppce500/qemu-ppce500.c   |   2 +
 board/freescale/t102xqds/pci.c                |   1 +
 board/freescale/t102xqds/t102xqds.c           |   1 +
 board/freescale/t102xrdb/pci.c                |   1 +
 board/freescale/t102xrdb/t102xrdb.c           |   1 +
 board/freescale/t1040qds/pci.c                |   1 +
 board/freescale/t1040qds/t1040qds.c           |   1 +
 board/freescale/t104xrdb/pci.c                |   1 +
 board/freescale/t104xrdb/t104xrdb.c           |   1 +
 board/freescale/t208xqds/pci.c                |   1 +
 board/freescale/t208xqds/t208xqds.c           |   1 +
 board/freescale/t208xrdb/pci.c                |   1 +
 board/freescale/t208xrdb/t208xrdb.c           |   1 +
 board/freescale/t4qds/pci.c                   |   1 +
 board/freescale/t4qds/t4240emu.c              |   1 +
 board/freescale/t4qds/t4240qds.c              |   2 +
 board/freescale/t4rdb/pci.c                   |   1 +
 board/freescale/t4rdb/t4240rdb.c              |   1 +
 board/gardena/smart-gateway-at91sam/board.c   |   1 +
 board/gardena/smart-gateway-mt7688/board.c    |   2 +
 board/gdsys/a38x/controlcenterdc.c            |   1 +
 board/gdsys/a38x/hre.c                        |   1 +
 board/gdsys/a38x/keyprogram.c                 |   1 +
 board/gdsys/mpc8308/gazerbeam.c               |   1 +
 board/gdsys/mpc8308/hrcon.c                   |   1 +
 board/gdsys/mpc8308/mpc8308.c                 |   1 +
 board/gdsys/mpc8308/strider.c                 |   1 +
 board/gdsys/p1022/controlcenterd-id.c         |   2 +
 board/gdsys/p1022/controlcenterd.c            |   1 +
 board/ge/bx50v3/bx50v3.c                      |   1 +
 board/ge/mx53ppd/mx53ppd.c                    |   1 +
 board/grinn/chiliboard/board.c                |   1 +
 board/grinn/liteboard/board.c                 |   2 +
 board/gumstix/pepper/board.c                  |   1 +
 board/highbank/highbank.c                     |   1 +
 board/imgtec/boston/ddr.c                     |   1 +
 board/imgtec/malta/malta.c                    |   1 +
 board/intel/edison/edison.c                   |   1 +
 board/intel/slimbootloader/slimbootloader.c   |   1 +
 board/inversepath/usbarmory/usbarmory.c       |   1 +
 board/isee/igep003x/board.c                   |   2 +
 board/isee/igep00x0/spl.c                     |   1 +
 board/k+p/kp_imx53/kp_imx53.c                 |   1 +
 board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c         |   1 +
 board/keymile/km83xx/km83xx.c                 |   1 +
 board/keymile/km_arm/km_arm.c                 |   1 +
 board/keymile/kmp204x/kmp204x.c               |   1 +
 board/keymile/kmp204x/pci.c                   |   1 +
 board/kosagi/novena/novena.c                  |   2 +
 board/kosagi/novena/novena_spl.c              |   1 +
 board/laird/wb50n/wb50n.c                     |   1 +
 board/liebherr/display5/spl.c                 |   1 +
 board/liebherr/mccmon6/mccmon6.c              |   2 +
 board/liebherr/mccmon6/spl.c                  |   1 +
 board/logicpd/am3517evm/am3517evm.c           |   1 +
 board/logicpd/imx6/imx6logic.c                |   2 +
 board/logicpd/omap3som/omap3logic.c           |   2 +
 board/menlo/m53menlo/m53menlo.c               |   1 +
 board/mini-box/picosam9g45/led.c              |   1 +
 board/mini-box/picosam9g45/picosam9g45.c      |   1 +
 board/mpc8308_p1m/mpc8308_p1m.c               |   1 +
 board/mscc/jr2/jr2.c                          |   1 +
 board/mscc/luton/luton.c                      |   1 +
 board/mscc/ocelot/ocelot.c                    |   1 +
 board/mscc/serval/serval.c                    |   1 +
 board/mscc/servalt/servalt.c                  |   1 +
 board/overo/common.c                          |   1 +
 board/phytec/pcm052/pcm052.c                  |   1 +
 board/phytec/pcm058/pcm058.c                  |   1 +
 board/phytec/pfla02/pfla02.c                  |   2 +
 board/phytec/phycore_rk3288/phycore-rk3288.c  |   2 +
 .../dragonboard410c/dragonboard410c.c         |   1 +
 board/raspberrypi/rpi/rpi.c                   |   1 +
 board/renesas/r2dplus/r2dplus.c               |   1 +
 board/renesas/r7780mp/r7780mp.c               |   1 +
 board/renesas/sh7752evb/sh7752evb.c           |   1 +
 board/renesas/sh7753evb/sh7753evb.c           |   1 +
 board/renesas/sh7757lcr/sh7757lcr.c           |   1 +
 board/rockchip/kylin_rk3036/kylin_rk3036.c    |   1 +
 board/rockchip/tinker_rk3288/tinker-rk3288.c  |   2 +
 board/ronetix/pm9261/led.c                    |   1 +
 board/ronetix/pm9261/pm9261.c                 |   1 +
 board/ronetix/pm9263/led.c                    |   1 +
 board/samsung/arndale/arndale.c               |   1 +
 board/samsung/common/board.c                  |   1 +
 board/samsung/common/misc.c                   |   1 +
 board/sandbox/sandbox.c                       |   2 +
 board/sbc8349/pci.c                           |   1 +
 board/sbc8548/sbc8548.c                       |   1 +
 board/sbc8641d/sbc8641d.c                     |   1 +
 board/siemens/common/board.c                  |   1 +
 board/siemens/draco/board.c                   |   1 +
 board/siemens/pxm2/board.c                    |   1 +
 board/siemens/rut/board.c                     |   1 +
 board/silica/pengwyn/board.c                  |   1 +
 board/softing/vining_2000/vining_2000.c       |   1 +
 board/softing/vining_fpga/socfpga.c           |   3 +
 board/solidrun/mx6cuboxi/mx6cuboxi.c          |   1 +
 board/spear/x600/x600.c                       |   1 +
 board/st/stih410-b2260/board.c                |   1 +
 board/st/stm32f429-discovery/led.c            |   1 +
 board/st/stm32f746-disco/stm32f746-disco.c    |   2 +
 board/st/stm32h743-disco/stm32h743-disco.c    |   1 +
 board/st/stm32h743-eval/stm32h743-eval.c      |   1 +
 board/st/stm32mp1/stm32mp1.c                  |   1 +
 board/sunxi/board.c                           |   1 +
 board/synopsys/axs10x/axs10x.c                |   1 +
 board/synopsys/hsdk/hsdk.c                    |   3 +
 board/syteco/zmx25/zmx25.c                    |   2 +
 board/tcl/sl50/board.c                        |   2 +
 board/technexion/pico-imx7d/pico-imx7d.c      |   1 +
 board/theadorable/theadorable.c               |   3 +-
 .../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                |   1 +
 board/ti/dra7xx/evm.c                         |   2 +
 board/ti/evm/evm.c                            |   1 +
 board/ti/j721e/evm.c                          |   1 +
 board/ti/ks2_evm/board_k2g.c                  |   2 +
 board/toradex/apalis-imx8/apalis-imx8.c       |   1 +
 board/toradex/apalis_imx6/apalis_imx6.c       |   1 +
 .../toradex/colibri-imx6ull/colibri-imx6ull.c |   1 +
 board/toradex/colibri-imx8x/colibri-imx8x.c   |   1 +
 board/toradex/colibri_imx6/colibri_imx6.c     |   1 +
 board/toradex/colibri_pxa270/colibri_pxa270.c |   1 +
 board/toradex/colibri_vf/colibri_vf.c         |   1 +
 board/tqc/tqm834x/pci.c                       |   1 +
 board/tqc/tqma6/tqma6.c                       |   1 +
 board/tqc/tqma6/tqma6_mba6.c                  |   1 +
 board/tqc/tqma6/tqma6_wru4.c                  |   1 +
 board/udoo/neo/neo.c                          |   1 +
 board/udoo/udoo.c                             |   1 +
 board/varisys/common/sys_eeprom.c             |   1 +
 board/varisys/cyrus/cyrus.c                   |   1 +
 board/varisys/cyrus/pci.c                     |   1 +
 board/ve8313/ve8313.c                         |   1 +
 board/vscom/baltos/board.c                    |   2 +
 board/wandboard/wandboard.c                   |   1 +
 board/warp/warp.c                             |   1 +
 board/warp7/warp7.c                           |   1 +
 board/work-microwave/work_92105/work_92105.c  |   1 +
 board/xes/common/fsl_8xxx_pci.c               |   1 +
 board/xes/xpedite517x/xpedite517x.c           |   1 +
 board/xes/xpedite520x/xpedite520x.c           |   1 +
 board/xes/xpedite537x/xpedite537x.c           |   1 +
 board/xes/xpedite550x/xpedite550x.c           |   1 +
 .../microblaze-generic/microblaze-generic.c   |   1 +
 board/xilinx/versal/board.c                   |   2 +
 board/xilinx/zynq/board.c                     |   1 +
 board/xilinx/zynqmp/cmds.c                    |   1 +
 board/xilinx/zynqmp/zynqmp.c                  |   2 +
 cmd/bdinfo.c                                  |   1 +
 cmd/booti.c                                   |   1 +
 cmd/bootz.c                                   |   1 +
 cmd/cache.c                                   |   1 +
 cmd/disk.c                                    |   1 +
 cmd/eeprom.c                                  |   1 +
 cmd/efi.c                                     |   1 +
 cmd/elf.c                                     |   1 +
 cmd/fdc.c                                     |   1 +
 cmd/i2c.c                                     |   3 +-
 cmd/irq.c                                     |   1 +
 cmd/load.c                                    |   2 +
 cmd/mem.c                                     |   9 +-
 cmd/mp.c                                      |   1 +
 cmd/nvedit.c                                  |   1 +
 cmd/ti/ddr3.c                                 |   1 +
 cmd/ximg.c                                    |   1 +
 common/android_ab.c                           |   1 +
 common/autoboot.c                             |   2 +
 common/avb_verify.c                           |   1 +
 common/bloblist.c                             |   1 +
 common/board_f.c                              |   3 +
 common/board_r.c                              |   5 +
 common/bootm.c                                |   2 +
 common/bootm_os.c                             |   1 +
 common/bootretry.c                            |   1 +
 common/bootstage.c                            |   1 +
 common/bouncebuf.c                            |   1 +
 common/cli.c                                  |   1 +
 common/cli_readline.c                         |   7 +-
 common/cli_simple.c                           |   1 +
 common/hash.c                                 |   1 +
 common/image-fit.c                            |   1 +
 common/image.c                                |   3 +
 common/iotrace.c                              |   2 +
 common/kgdb_stubs.c                           |   2 +
 common/lcd.c                                  |   1 +
 common/lcd_console.c                          |   1 +
 common/main.c                                 |   1 +
 common/spl/spl.c                              |  14 ++
 common/spl/spl_atf.c                          |   1 +
 common/spl/spl_opensbi.c                      |   1 +
 common/splash_source.c                        |   1 +
 common/update.c                               |   1 +
 disk/part_efi.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/clk/clk_stm32mp1.c                    |   2 +
 drivers/clk/mpc83xx_clk.c                     |   1 +
 drivers/core/device.c                         |   1 +
 drivers/cpu/mpc83xx_cpu.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                       |   2 +
 drivers/ddr/altera/sdram_arria10.c            |   1 +
 drivers/ddr/altera/sdram_s10.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/fastboot/fb_command.c                 |   1 +
 drivers/fastboot/fb_common.c                  |   1 +
 drivers/firmware/psci.c                       |   1 +
 drivers/fpga/versalpl.c                       |   1 +
 drivers/fpga/zynqmppl.c                       |   1 +
 drivers/fpga/zynqpl.c                         |   1 +
 drivers/i2c/fsl_i2c.c                         |   1 +
 drivers/mailbox/mailbox-uclass.c              |   1 +
 drivers/misc/atsha204a-i2c.c                  |   1 +
 drivers/misc/i2c_eeprom.c                     |   1 +
 drivers/misc/pca9551_led.c                    |   1 +
 drivers/misc/status_led.c                     |   8 +-
 drivers/misc/tegra186_bpmp.c                  |   1 +
 drivers/mmc/bcm2835_sdhci.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/mxcmmc.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/cfi_flash.c                       |   1 +
 drivers/mtd/mw_eeprom.c                       |   1 +
 drivers/mtd/nand/raw/denali.c                 |   1 +
 drivers/mtd/nand/raw/fsl_elbc_nand.c          |   1 +
 drivers/mtd/nand/raw/fsl_elbc_spl.c           |   1 +
 drivers/mtd/nand/raw/fsl_ifc_nand.c           |   1 +
 drivers/mtd/nand/raw/fsl_ifc_spl.c            |   1 +
 drivers/mtd/nand/raw/mxs_nand.c               |   1 +
 drivers/mtd/pic32_flash.c                     |   2 +
 drivers/mtd/spi/fsl_espi_spl.c                |   1 +
 drivers/mtd/ubi/attach.c                      |   1 +
 drivers/mtd/ubi/crc32.c                       |   1 +
 drivers/mtd/ubi/eba.c                         |   1 +
 drivers/mtd/ubi/fastmap.c                     |   1 +
 drivers/mtd/ubi/io.c                          |   1 +
 drivers/mtd/ubi/vtbl.c                        |   1 +
 drivers/mtd/ubispl/ubispl.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/fm/fdt.c                          |   1 +
 drivers/net/fm/fm.c                           |   1 +
 drivers/net/fsl-mc/mc.c                       |   2 +
 drivers/net/fsl_mcdmafec.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/ldpaa_eth/ls1088a.c               |   1 +
 drivers/net/ldpaa_eth/lx2160a.c               |   1 +
 drivers/net/macb.c                            |   1 +
 drivers/net/mcffec.c                          |   1 +
 drivers/net/mcfmii.c                          |   1 +
 drivers/net/mpc8xx_fec.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                       |   3 +
 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                           |   2 +
 drivers/pci/pci.c                             |   1 +
 drivers/pci/pcie_imx.c                        |   1 +
 drivers/power/pmic/stpmic1.c                  |   1 +
 drivers/qe/qe.c                               |   1 +
 drivers/remoteproc/rproc-elf-loader.c         |   1 +
 drivers/rtc/rv3029.c                          |   1 +
 drivers/serial/usbtty.c                       |   1 +
 drivers/sound/broadwell_i2s.c                 |   1 +
 drivers/spi/ath79_spi.c                       |   1 +
 drivers/spi/exynos_spi.c                      |   1 +
 drivers/spi/mxs_spi.c                         |   1 +
 drivers/spi/rk_spi.c                          |   1 +
 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/ti_qspi.c                         |   1 +
 drivers/spi/uniphier_spi.c                    |   1 +
 drivers/spi/zynq_spi.c                        |   1 +
 drivers/spi/zynqmp_gqspi.c                    |   1 +
 drivers/timer/mpc83xx_timer.c                 |   7 +-
 drivers/timer/tsc_timer.c                     |   1 +
 drivers/tpm/tpm2_tis_sandbox.c                |   2 +-
 drivers/tpm/tpm_tis_sandbox.c                 |   2 +-
 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/core.c                     |   1 +
 drivers/usb/gadget/designware_udc.c           |   1 +
 drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c    |   3 +
 drivers/usb/gadget/ep0.c                      |   3 +-
 drivers/usb/gadget/f_thor.c                   |   1 +
 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/usb/musb-new/omap2430.c               |   1 +
 drivers/usb/musb/musb_udc.c                   |   1 +
 drivers/usb/musb/omap3.c                      |   1 +
 drivers/video/atmel_hlcdfb.c                  |   1 +
 drivers/video/cfb_console.c                   |   1 +
 drivers/video/fsl_dcu_fb.c                    |   1 +
 drivers/video/sunxi/sunxi_display.c           |   3 +
 drivers/video/sunxi/sunxi_dw_hdmi.c           |   1 +
 drivers/video/video-uclass.c                  |   1 +
 env/common.c                                  |   2 +
 env/eeprom.c                                  |   2 +
 env/flash.c                                   |   1 +
 env/nand.c                                    |   1 +
 env/nvram.c                                   |   1 +
 env/remote.c                                  |   1 +
 env/sf.c                                      |   1 +
 examples/api/glue.c                           |   1 +
 fs/jffs2/jffs2_1pass.c                        |   1 +
 fs/ubifs/io.c                                 |   1 +
 fs/ubifs/recovery.c                           |   1 +
 fs/ubifs/tnc.c                                |   1 +
 fs/yaffs2/yaffs_qsort.c                       |   1 +
 include/bootcount.h                           |  14 +-
 include/command.h                             |  16 ++
 include/common.h                              | 212 +-----------------
 include/cpu_legacy.h                          |  87 +++++++
 include/eeprom.h                              |  24 ++
 include/exports.h                             |   4 +
 include/init.h                                |  33 ++-
 include/irq_func.h                            |  26 +++
 include/linux/crc8.h                          |  23 --
 include/linux/mii.h                           |   2 +
 include/lz4.h                                 |  24 ++
 include/net.h                                 |  22 +-
 include/rand.h                                |  40 ++++
 include/serial.h                              |  37 ++-
 include/sort.h                                |  34 +++
 include/status_led.h                          |   4 +-
 include/time.h                                |  43 ++++
 include/u-boot/crc.h                          |  89 +++++++-
 include/vsprintf.h                            |  10 +
 lib/Makefile                                  |   4 +-
 lib/crc32.c                                   |   5 +-
 lib/crc8.c                                    |   7 +-
 lib/efi_loader/efi_boottime.c                 |   3 +
 lib/efi_loader/efi_console.c                  |   1 +
 lib/efi_loader/efi_image_loader.c             |   1 +
 lib/efi_loader/efi_memory.c                   |   1 +
 lib/efi_loader/efi_runtime.c                  |   2 +
 lib/efi_loader/efi_variable.c                 |   1 +
 lib/efi_selftest/efi_selftest_config_table.c  |   1 +
 lib/efi_selftest/efi_selftest_crc32.c         |   1 +
 lib/gunzip.c                                  |   1 +
 lib/hashtable.c                               |   1 +
 lib/lz4_wrapper.c                             |   1 +
 lib/qsort.c                                   |   1 +
 lib/rand.c                                    |   1 +
 lib/strmhz.c                                  |  21 --
 lib/time.c                                    |   1 +
 lib/trace.c                                   |   1 +
 lib/uuid.c                                    |   1 +
 lib/vsprintf.c                                |  19 ++
 lib/zlib/deflate.c                            |   1 +
 net/link_local.c                              |   1 +
 net/net.c                                     |   3 -
 net/nfs.c                                     |   1 +
 post/cpu/mpc83xx/ecc.c                        |   2 +
 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/complex.c                    |   1 +
 post/lib_powerpc/cpu.c                        |   7 +-
 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                                   |   1 +
 scripts/config_whitelist.txt                  |   1 -
 test/command_ut.c                             |   1 +
 test/compression.c                            |   1 +
 test/dm/sf.c                                  |   1 +
 test/time_ut.c                                |   1 +
 tools/default_image.c                         |   1 +
 tools/env/fw_env.c                            |   1 +
 tools/env/fw_env.h                            |   2 -
 tools/envcrc.c                                |   5 +-
 tools/mkenvimage.c                            |   1 +
 tools/mxsimage.c                              |   1 +
 tools/pbl_crc32.c                             |   1 +
 tools/pblimage.c                              |   1 +
 tools/socfpgaimage.c                          |   1 +
 836 files changed, 1600 insertions(+), 465 deletions(-)
 create mode 100644 include/cpu_legacy.h
 create mode 100644 include/eeprom.h
 create mode 100644 include/irq_func.h
 delete mode 100644 include/linux/crc8.h
 create mode 100644 include/lz4.h
 create mode 100644 include/rand.h
 create mode 100644 include/sort.h
 delete mode 100644 lib/strmhz.c

-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 01/42] common: Move legacy CPU functions to their own header
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-13 15:07   ` Tom Rini
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 02/42] Drop CONFIG_SHOW_ACTIVITY Simon Glass
                   ` (40 subsequent siblings)
  41 siblings, 1 reply; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These should be moved to driver model, but in the meantime, move them
out of the common header to help reduce its size.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 README                                 |  2 +-
 arch/arm/cpu/armv8/fsl-layerscape/mp.c |  1 +
 arch/arm/mach-imx/mx6/mp.c             |  1 +
 arch/arm/mach-zynqmp/mp.c              |  1 +
 arch/powerpc/cpu/mpc85xx/cpu.c         |  1 +
 arch/powerpc/cpu/mpc85xx/mp.c          |  1 +
 arch/powerpc/cpu/mpc86xx/mp.c          |  1 +
 cmd/mp.c                               |  1 +
 include/common.h                       |  8 --------
 include/cpu_legacy.h                   | 23 +++++++++++++++++++++++
 10 files changed, 31 insertions(+), 9 deletions(-)
 create mode 100644 include/cpu_legacy.h

diff --git a/README b/README
index 1389e8ff12..107e67fdda 100644
--- a/README
+++ b/README
@@ -2983,7 +2983,7 @@ Low Level (hardware related) configuration options:
 - CONFIG_SYS_SRIOn_MEM_VIRT:
 		Virtual Address of SRIO port 'n' memory region
 
-- CONFIG_SYS_SRIOn_MEM_PHYS:
+- CONFIG_SYS_SRIOn_MEM_PHYxS:
 		Physical Address of SRIO port 'n' memory region
 
 - CONFIG_SYS_SRIOn_MEM_SIZE:
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/mp.c b/arch/arm/cpu/armv8/fsl-layerscape/mp.c
index 7627fd13e7..1c878bc9ab 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 <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/system.h>
 #include <asm/arch/mp.h>
diff --git a/arch/arm/mach-imx/mx6/mp.c b/arch/arm/mach-imx/mx6/mp.c
index eda168d867..36f1dc8f92 100644
--- a/arch/arm/mach-imx/mx6/mp.c
+++ b/arch/arm/mach-imx/mx6/mp.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <linux/errno.h>
 #include <asm/arch/sys_proto.h>
diff --git a/arch/arm/mach-zynqmp/mp.c b/arch/arm/mach-zynqmp/mp.c
index 2a71870ae7..691c86a4b0 100644
--- a/arch/arm/mach-zynqmp/mp.c
+++ b/arch/arm/mach-zynqmp/mp.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/io.h>
diff --git a/arch/powerpc/cpu/mpc85xx/cpu.c b/arch/powerpc/cpu/mpc85xx/cpu.c
index bf48836036..bba71813bc 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu.c
@@ -10,6 +10,7 @@
 
 #include <config.h>
 #include <common.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <command.h>
 #include <fsl_esdhc.h>
diff --git a/arch/powerpc/cpu/mpc85xx/mp.c b/arch/powerpc/cpu/mpc85xx/mp.c
index 3882c95f92..d4077a0920 100644
--- a/arch/powerpc/cpu/mpc85xx/mp.c
+++ b/arch/powerpc/cpu/mpc85xx/mp.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <asm/processor.h>
 #include <env.h>
diff --git a/arch/powerpc/cpu/mpc86xx/mp.c b/arch/powerpc/cpu/mpc86xx/mp.c
index ce300eac5b..40499ef947 100644
--- a/arch/powerpc/cpu/mpc86xx/mp.c
+++ b/arch/powerpc/cpu/mpc86xx/mp.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <ioports.h>
diff --git a/cmd/mp.c b/cmd/mp.c
index 01d30c1ccb..5d77c3a78d 100644
--- a/cmd/mp.c
+++ b/cmd/mp.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 
 static int cpu_status_all(void)
 {
diff --git a/include/common.h b/include/common.h
index d8f302ea92..16c885dd3f 100644
--- a/include/common.h
+++ b/include/common.h
@@ -355,14 +355,6 @@ static inline struct in_addr env_get_ip(char *var)
 void show_activity(int arg);
 #endif
 
-/* Multicore arch functions */
-#ifdef CONFIG_MP
-int cpu_status(u32 nr);
-int cpu_reset(u32 nr);
-int cpu_disable(u32 nr);
-int cpu_release(u32 nr, int argc, char * const argv[]);
-#endif
-
 #else	/* __ASSEMBLY__ */
 
 #endif	/* __ASSEMBLY__ */
diff --git a/include/cpu_legacy.h b/include/cpu_legacy.h
new file mode 100644
index 0000000000..a99b69b976
--- /dev/null
+++ b/include/cpu_legacy.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2000-2009
+ * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+ * Copyright 2019 Google LLC
+ */
+
+#ifndef __CPU_LEGACY_H
+#define __CPU_LEGACY_H
+
+#include <linux/types.h>
+
+/*
+ * Multicore arch functions
+ *
+ * These should be moved to use the CPU uclass.
+ */
+int cpu_status(u32 nr);
+int cpu_reset(u32 nr);
+int cpu_disable(u32 nr);
+int cpu_release(u32 nr, int argc, char * const argv[]);
+
+#endif
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 02/42] Drop CONFIG_SHOW_ACTIVITY
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 01/42] common: Move legacy CPU functions to their own header Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 03/42] common: Drop global inclusion of status_led.h Simon Glass
                   ` (39 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This feature is not enabled by any board. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/powerpc/lib/interrupts.c | 13 -------------
 common/cli_readline.c         |  6 ------
 drivers/timer/mpc83xx_timer.c |  4 ----
 include/common.h              |  4 ----
 net/net.c                     |  3 ---
 scripts/config_whitelist.txt  |  1 -
 6 files changed, 31 deletions(-)

diff --git a/arch/powerpc/lib/interrupts.c b/arch/powerpc/lib/interrupts.c
index 19682cfcfa..e589933f56 100644
--- a/arch/powerpc/lib/interrupts.c
+++ b/arch/powerpc/lib/interrupts.c
@@ -15,15 +15,6 @@
 #endif
 
 #ifndef CONFIG_MPC83XX_TIMER
-#ifdef CONFIG_SHOW_ACTIVITY
-void board_show_activity (ulong) __attribute__((weak, alias("__board_show_activity")));
-
-void __board_show_activity (ulong dummy)
-{
-	return;
-}
-#endif /* CONFIG_SHOW_ACTIVITY */
-
 #ifndef CONFIG_SYS_WATCHDOG_FREQ
 #define CONFIG_SYS_WATCHDOG_FREQ (CONFIG_SYS_HZ / 2)
 #endif
@@ -94,10 +85,6 @@ void timer_interrupt (struct pt_regs *regs)
 #ifdef CONFIG_LED_STATUS
 	status_led_tick (timestamp);
 #endif /* CONFIG_LED_STATUS */
-
-#ifdef CONFIG_SHOW_ACTIVITY
-	board_show_activity (timestamp);
-#endif /* CONFIG_SHOW_ACTIVITY */
 }
 
 ulong get_timer (ulong base)
diff --git a/common/cli_readline.c b/common/cli_readline.c
index 99b631720e..ea510ed639 100644
--- a/common/cli_readline.c
+++ b/common/cli_readline.c
@@ -569,12 +569,6 @@ int cli_readline_into_buffer(const char *const prompt, char *buffer,
 			return -2;	/* timed out */
 		WATCHDOG_RESET();	/* Trigger watchdog, if needed */
 
-#ifdef CONFIG_SHOW_ACTIVITY
-		while (!tstc()) {
-			show_activity(0);
-			WATCHDOG_RESET();
-		}
-#endif
 		c = getc();
 
 		/*
diff --git a/drivers/timer/mpc83xx_timer.c b/drivers/timer/mpc83xx_timer.c
index 8e541109d4..9bc32f9b28 100644
--- a/drivers/timer/mpc83xx_timer.c
+++ b/drivers/timer/mpc83xx_timer.c
@@ -171,10 +171,6 @@ void timer_interrupt(struct pt_regs *regs)
 #ifdef CONFIG_LED_STATUS
 	status_led_tick(priv->timestamp);
 #endif /* CONFIG_LED_STATUS */
-
-#ifdef CONFIG_SHOW_ACTIVITY
-	board_show_activity(priv->timestamp);
-#endif /* CONFIG_SHOW_ACTIVITY */
 }
 
 void wait_ticks(ulong ticks)
diff --git a/include/common.h b/include/common.h
index 16c885dd3f..4b84969ad3 100644
--- a/include/common.h
+++ b/include/common.h
@@ -351,10 +351,6 @@ static inline struct in_addr env_get_ip(char *var)
 
 #include <bootstage.h>
 
-#ifdef CONFIG_SHOW_ACTIVITY
-void show_activity(int arg);
-#endif
-
 #else	/* __ASSEMBLY__ */
 
 #endif	/* __ASSEMBLY__ */
diff --git a/net/net.c b/net/net.c
index ded86e7456..0513444eb7 100644
--- a/net/net.c
+++ b/net/net.c
@@ -561,9 +561,6 @@ restart:
 	 */
 	for (;;) {
 		WATCHDOG_RESET();
-#ifdef CONFIG_SHOW_ACTIVITY
-		show_activity(1);
-#endif
 		if (arp_timeout_check() > 0)
 			time_start = get_timer(0);
 
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index bbc1cb1033..b5a48f2467 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -1573,7 +1573,6 @@ CONFIG_SHARP_LM8V31
 CONFIG_SHARP_LQ035Q7DH06
 CONFIG_SHEEVA_88SV131
 CONFIG_SHEEVA_88SV331xV5
-CONFIG_SHOW_ACTIVITY
 CONFIG_SH_CMT_CLK_FREQ
 CONFIG_SH_DSP
 CONFIG_SH_ETHER_ALIGNE_SIZE
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 03/42] common: Drop global inclusion of status_led.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 01/42] common: Move legacy CPU functions to their own header Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 02/42] Drop CONFIG_SHOW_ACTIVITY Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 04/42] status_led: Tidy up the code style Simon Glass
                   ` (38 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This is only used by a few files so it should not be in the common header.
Move it out.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c | 1 +
 board/atmel/at91sam9261ek/led.c             | 1 +
 board/atmel/at91sam9263ek/led.c             | 1 +
 board/atmel/at91sam9m10g45ek/led.c          | 1 +
 board/atmel/at91sam9rlek/led.c              | 1 +
 board/cirrus/edb93xx/edb93xx.c              | 1 +
 board/compulab/cm_t335/cm_t335.c            | 1 +
 board/corscience/tricorder/tricorder.c      | 1 +
 board/mini-box/picosam9g45/led.c            | 1 +
 board/ronetix/pm9261/led.c                  | 1 +
 board/ronetix/pm9263/led.c                  | 1 +
 board/softing/vining_fpga/socfpga.c         | 1 +
 board/st/stm32f429-discovery/led.c          | 1 +
 common/board_r.c                            | 1 +
 drivers/misc/pca9551_led.c                  | 1 +
 drivers/timer/mpc83xx_timer.c               | 1 +
 include/common.h                            | 4 ----
 17 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c b/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c
index e58bbf07ef..0eac10d911 100644
--- a/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c
+++ b/board/alliedtelesis/SBx81LIFKW/sbx81lifkw.c
@@ -8,6 +8,7 @@
 #include <linux/io.h>
 #include <miiphy.h>
 #include <netdev.h>
+#include <status_led.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/arch/mpp.h>
diff --git a/board/atmel/at91sam9261ek/led.c b/board/atmel/at91sam9261ek/led.c
index 81967864cf..a1aab98d58 100644
--- a/board/atmel/at91sam9261ek/led.c
+++ b/board/atmel/at91sam9261ek/led.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm/arch/at91sam9261.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/at91_pio.h>
diff --git a/board/atmel/at91sam9263ek/led.c b/board/atmel/at91sam9263ek/led.c
index 55fb80dc8d..849501ec36 100644
--- a/board/atmel/at91sam9263ek/led.c
+++ b/board/atmel/at91sam9263ek/led.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm/io.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/at91sam9263.h>
diff --git a/board/atmel/at91sam9m10g45ek/led.c b/board/atmel/at91sam9m10g45ek/led.c
index feef230871..f44a09623f 100644
--- a/board/atmel/at91sam9m10g45ek/led.c
+++ b/board/atmel/at91sam9m10g45ek/led.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm/io.h>
 #include <asm/arch/at91sam9g45.h>
 #include <asm/arch/clk.h>
diff --git a/board/atmel/at91sam9rlek/led.c b/board/atmel/at91sam9rlek/led.c
index c2df6efd18..6dd19aea15 100644
--- a/board/atmel/at91sam9rlek/led.c
+++ b/board/atmel/at91sam9rlek/led.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm/arch/at91sam9rl.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
diff --git a/board/cirrus/edb93xx/edb93xx.c b/board/cirrus/edb93xx/edb93xx.c
index 8a72fa7a42..88fac76ea5 100644
--- a/board/cirrus/edb93xx/edb93xx.c
+++ b/board/cirrus/edb93xx/edb93xx.c
@@ -16,6 +16,7 @@
 #include <config.h>
 #include <common.h>
 #include <netdev.h>
+#include <status_led.h>
 #include <asm/io.h>
 #include <asm/mach-types.h>
 #include <asm/arch/ep93xx.h>
diff --git a/board/compulab/cm_t335/cm_t335.c b/board/compulab/cm_t335/cm_t335.c
index 6e38745191..561f2f30bb 100644
--- a/board/compulab/cm_t335/cm_t335.c
+++ b/board/compulab/cm_t335/cm_t335.c
@@ -11,6 +11,7 @@
 #include <env.h>
 #include <errno.h>
 #include <miiphy.h>
+#include <status_led.h>
 #include <cpsw.h>
 
 #include <asm/arch/sys_proto.h>
diff --git a/board/corscience/tricorder/tricorder.c b/board/corscience/tricorder/tricorder.c
index 27e6066575..da33f8441c 100644
--- a/board/corscience/tricorder/tricorder.c
+++ b/board/corscience/tricorder/tricorder.c
@@ -11,6 +11,7 @@
  */
 #include <common.h>
 #include <twl4030.h>
+#include <status_led.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/arch/mmc_host_def.h>
diff --git a/board/mini-box/picosam9g45/led.c b/board/mini-box/picosam9g45/led.c
index 2e32b7fb36..8ce8b6bbea 100644
--- a/board/mini-box/picosam9g45/led.c
+++ b/board/mini-box/picosam9g45/led.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm/io.h>
 #include <asm/arch/at91sam9g45.h>
 #include <asm/arch/clk.h>
diff --git a/board/ronetix/pm9261/led.c b/board/ronetix/pm9261/led.c
index 2a53b2e6bd..df955830b1 100644
--- a/board/ronetix/pm9261/led.c
+++ b/board/ronetix/pm9261/led.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm/gpio.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
diff --git a/board/ronetix/pm9263/led.c b/board/ronetix/pm9263/led.c
index 683e151a4f..524b4afcbd 100644
--- a/board/ronetix/pm9263/led.c
+++ b/board/ronetix/pm9263/led.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm/gpio.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
diff --git a/board/softing/vining_fpga/socfpga.c b/board/softing/vining_fpga/socfpga.c
index 3f597fb99e..e42d9194ad 100644
--- a/board/softing/vining_fpga/socfpga.c
+++ b/board/softing/vining_fpga/socfpga.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <status_led.h>
 #include <asm/arch/reset_manager.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
diff --git a/board/st/stm32f429-discovery/led.c b/board/st/stm32f429-discovery/led.c
index ae6df78f56..539c139bb5 100644
--- a/board/st/stm32f429-discovery/led.c
+++ b/board/st/stm32f429-discovery/led.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <status_led.h>
 #include <asm-generic/gpio.h>
 
 void coloured_LED_init(void)
diff --git a/common/board_r.c b/common/board_r.c
index c1ecb06b74..79ee21e968 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -37,6 +37,7 @@
 #include <onenand_uboot.h>
 #include <scsi.h>
 #include <serial.h>
+#include <status_led.h>
 #include <stdio_dev.h>
 #include <timer.h>
 #include <trace.h>
diff --git a/drivers/misc/pca9551_led.c b/drivers/misc/pca9551_led.c
index 2333ec8038..cdc4390f81 100644
--- a/drivers/misc/pca9551_led.c
+++ b/drivers/misc/pca9551_led.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <errno.h>
 #include <i2c.h>
+#include <status_led.h>
 
 #ifndef CONFIG_PCA9551_I2C_ADDR
 #error "CONFIG_PCA9551_I2C_ADDR not defined!"
diff --git a/drivers/timer/mpc83xx_timer.c b/drivers/timer/mpc83xx_timer.c
index 9bc32f9b28..dfbc8672b2 100644
--- a/drivers/timer/mpc83xx_timer.c
+++ b/drivers/timer/mpc83xx_timer.c
@@ -8,6 +8,7 @@
 #include <board.h>
 #include <clk.h>
 #include <dm.h>
+#include <status_led.h>
 #include <timer.h>
 #include <watchdog.h>
 
diff --git a/include/common.h b/include/common.h
index 4b84969ad3..52bcc2e591 100644
--- a/include/common.h
+++ b/include/common.h
@@ -345,10 +345,6 @@ static inline struct in_addr env_get_ip(char *var)
 	return string_to_ip(env_get(var));
 }
 
-#ifdef CONFIG_LED_STATUS
-# include <status_led.h>
-#endif
-
 #include <bootstage.h>
 
 #else	/* __ASSEMBLY__ */
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 04/42] status_led: Tidy up the code style
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (2 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 03/42] common: Drop global inclusion of status_led.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 05/42] common: Move random-number functions into their own header Simon Glass
                   ` (37 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

There are a few whitespace problems with this code. Tidy them up.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/powerpc/lib/interrupts.c | 2 +-
 drivers/misc/status_led.c     | 8 ++++----
 include/status_led.h          | 4 ++--
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/powerpc/lib/interrupts.c b/arch/powerpc/lib/interrupts.c
index e589933f56..4b7f543a18 100644
--- a/arch/powerpc/lib/interrupts.c
+++ b/arch/powerpc/lib/interrupts.c
@@ -83,7 +83,7 @@ void timer_interrupt (struct pt_regs *regs)
 #endif    /* CONFIG_WATCHDOG || CONFIG_HW_WATCHDOG */
 
 #ifdef CONFIG_LED_STATUS
-	status_led_tick (timestamp);
+	status_led_tick(timestamp);
 #endif /* CONFIG_LED_STATUS */
 }
 
diff --git a/drivers/misc/status_led.c b/drivers/misc/status_led.c
index 8983ab40e4..a6e9c03a02 100644
--- a/drivers/misc/status_led.c
+++ b/drivers/misc/status_led.c
@@ -82,13 +82,13 @@ void status_led_init(void)
 	status_led_init_done = 1;
 }
 
-void status_led_tick (ulong timestamp)
+void status_led_tick(ulong timestamp)
 {
 	led_dev_t *ld;
 	int i;
 
 	if (!status_led_init_done)
-		status_led_init ();
+		status_led_init();
 
 	for (i = 0, ld = led_dev; i < MAX_LED_DEV; i++, ld++) {
 
@@ -103,7 +103,7 @@ void status_led_tick (ulong timestamp)
 	}
 }
 
-void status_led_set (int led, int state)
+void status_led_set(int led, int state)
 {
 	led_dev_t *ld;
 
@@ -111,7 +111,7 @@ void status_led_set (int led, int state)
 		return;
 
 	if (!status_led_init_done)
-		status_led_init ();
+		status_led_init();
 
 	ld = &led_dev[led];
 
diff --git a/include/status_led.h b/include/status_led.h
index 5b3570166d..6707ab1d29 100644
--- a/include/status_led.h
+++ b/include/status_led.h
@@ -36,8 +36,8 @@
 #endif /* CONFIG_LED_STATUS5 */
 
 void status_led_init(void);
-void status_led_tick (unsigned long timestamp);
-void status_led_set  (int led, int state);
+void status_led_tick(unsigned long timestamp);
+void status_led_set(int led, int state);
 
 /*****  MVS v1  **********************************************************/
 #if (defined(CONFIG_MVS) && CONFIG_MVS < 2)
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 05/42] common: Move random-number functions into their own header
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (3 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 04/42] status_led: Tidy up the code style Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 06/42] common: Drop linux/crc8.h Simon Glass
                   ` (36 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Create a new rand.h header file and move functions into it, to reduce
the size of common.h

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 include/common.h |  6 ------
 include/net.h    |  1 +
 include/rand.h   | 40 ++++++++++++++++++++++++++++++++++++++++
 lib/rand.c       |  1 +
 net/link_local.c |  1 +
 5 files changed, 43 insertions(+), 6 deletions(-)
 create mode 100644 include/rand.h

diff --git a/include/common.h b/include/common.h
index 52bcc2e591..b09c7aeddd 100644
--- a/include/common.h
+++ b/include/common.h
@@ -325,12 +325,6 @@ char *	strmhz(char *buf, unsigned long hz);
 /* lib/crc32.c */
 #include <u-boot/crc.h>
 
-/* lib/rand.c */
-#define RAND_MAX -1U
-void srand(unsigned int seed);
-unsigned int rand(void);
-unsigned int rand_r(unsigned int *seedp);
-
 /*
  * STDIO based functions (can always be used)
  */
diff --git a/include/net.h b/include/net.h
index 75a16e4c8f..d8d187d8af 100644
--- a/include/net.h
+++ b/include/net.h
@@ -16,6 +16,7 @@
 #include <asm/byteorder.h>	/* for nton* / ntoh* stuff */
 #include <env.h>
 #include <linux/if_ether.h>
+#include <rand.h>
 
 #define DEBUG_LL_STATE 0	/* Link local state machine changes */
 #define DEBUG_DEV_PKT 0		/* Packets or info directed to the device */
diff --git a/include/rand.h b/include/rand.h
new file mode 100644
index 0000000000..c9d15f50a1
--- /dev/null
+++ b/include/rand.h
@@ -0,0 +1,40 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2000-2009
+ * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+ */
+
+#ifndef __RAND_H
+#define __RAND_H
+
+#define RAND_MAX -1U
+
+/**
+ * srand() - Set the random-number seed value
+ *
+ * This can be used to restart the pseudo-random-number sequence from a known
+ * point. This affects future calls to rand() to start from that point
+ *
+ * @seed: New seed
+ */
+void srand(unsigned int seed);
+
+/**
+ * rand() - Get a 32-bit pseudo-random number
+ *
+ * @returns next random number in the sequence
+ */
+unsigned int rand(void);
+
+/**
+ * rand_r() - Get a 32-bit pseudo-random number
+ *
+ * This version of the function allows multiple sequences to be used at the
+ * same time, since it requires the caller to store the seed value.
+ *
+ * @seed value to use, updated on exit
+ * @returns next random number in the sequence
+ */
+unsigned int rand_r(unsigned int *seedp);
+
+#endif
diff --git a/lib/rand.c b/lib/rand.c
index af4cf3a0e8..d256baf5ce 100644
--- a/lib/rand.c
+++ b/lib/rand.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <rand.h>
 
 static unsigned int y = 1U;
 
diff --git a/net/link_local.c b/net/link_local.c
index dd9fcad087..1986b9b9d3 100644
--- a/net/link_local.c
+++ b/net/link_local.c
@@ -14,6 +14,7 @@
 #include <common.h>
 #include <env.h>
 #include <net.h>
+#include <rand.h>
 #include "arp.h"
 #include "net_rand.h"
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 06/42] common: Drop linux/crc8.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (4 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 05/42] common: Move random-number functions into their own header Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 07/42] crc: Fix code style with crc functions Simon Glass
                   ` (35 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

We have an existing U-Boot header for the one function that this defines.
Use that instead of the linux/ one. Move over the nice comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 board/theadorable/theadorable.c |  2 +-
 drivers/tpm/tpm2_tis_sandbox.c  |  2 +-
 drivers/tpm/tpm_tis_sandbox.c   |  2 +-
 include/linux/crc8.h            | 23 -----------------------
 include/u-boot/crc.h            | 14 +++++++++++++-
 lib/crc8.c                      |  7 ++++++-
 6 files changed, 22 insertions(+), 28 deletions(-)
 delete mode 100644 include/linux/crc8.h

diff --git a/board/theadorable/theadorable.c b/board/theadorable/theadorable.c
index d42350319c..2958d5ff88 100644
--- a/board/theadorable/theadorable.c
+++ b/board/theadorable/theadorable.c
@@ -14,11 +14,11 @@
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
-#include <linux/crc8.h>
 #include <linux/mbus.h>
 #ifdef CONFIG_NET
 #include <netdev.h>
 #endif
+#include <u-boot/crc.h>
 #include "theadorable.h"
 
 #include "../drivers/ddr/marvell/axp/ddr3_hw_training.h"
diff --git a/drivers/tpm/tpm2_tis_sandbox.c b/drivers/tpm/tpm2_tis_sandbox.c
index f282ea6adf..522988795c 100644
--- a/drivers/tpm/tpm2_tis_sandbox.c
+++ b/drivers/tpm/tpm2_tis_sandbox.c
@@ -9,7 +9,7 @@
 #include <tpm-v2.h>
 #include <asm/state.h>
 #include <asm/unaligned.h>
-#include <linux/crc8.h>
+#include <u-boot/crc.h>
 
 /* Hierarchies */
 enum tpm2_hierarchy {
diff --git a/drivers/tpm/tpm_tis_sandbox.c b/drivers/tpm/tpm_tis_sandbox.c
index 3336f559e5..2dff0d3eee 100644
--- a/drivers/tpm/tpm_tis_sandbox.c
+++ b/drivers/tpm/tpm_tis_sandbox.c
@@ -8,7 +8,7 @@
 #include <tpm-v1.h>
 #include <asm/state.h>
 #include <asm/unaligned.h>
-#include <linux/crc8.h>
+#include <u-boot/crc.h>
 
 /* TPM NVRAM location indices. */
 #define FIRMWARE_NV_INDEX		0x1007
diff --git a/include/linux/crc8.h b/include/linux/crc8.h
deleted file mode 100644
index 0ab5b9ab21..0000000000
--- a/include/linux/crc8.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (c) 2013 Google, Inc
- */
-
-
-#ifndef __linux_crc8_h
-#define __linux_crc8_h
-
-/**
- * crc8() - Calculate and return CRC-8 of the data
- *
- * This uses an x^8 + x^2 + x + 1 polynomial.  A table-based algorithm would
- * be faster, but for only a few bytes it isn't worth the code size
- *
- * @crc_start: CRC8 start value
- * @vptr: Buffer to checksum
- * @len: Length of buffer in bytes
- * @return CRC8 checksum
- */
-unsigned int crc8(unsigned int crc_start, const unsigned char *vptr, int len);
-
-#endif
diff --git a/include/u-boot/crc.h b/include/u-boot/crc.h
index 788ef29a17..b42bcda2b3 100644
--- a/include/u-boot/crc.h
+++ b/include/u-boot/crc.h
@@ -8,7 +8,19 @@
 #ifndef _UBOOT_CRC_H
 #define _UBOOT_CRC_H
 
-/* lib/crc8.c */
+/**
+ * crc8() - Calculate and return CRC-8 of the data
+ *
+ * This uses an x^8 + x^2 + x + 1 polynomial.  A table-based algorithm would
+ * be faster, but for only a few bytes it isn't worth the code size
+ *
+ * lib/crc8.c
+ *
+ * @crc_start: CRC8 start value
+ * @vptr: Buffer to checksum
+ * @len: Length of buffer in bytes
+ * @return CRC8 checksum
+ */
 unsigned int crc8(unsigned int crc_start, const unsigned char *vptr, int len);
 
 /* lib/crc16.c - 16 bit CRC with polynomial x^16+x^12+x^5+1 (CRC-CCITT) */
diff --git a/lib/crc8.c b/lib/crc8.c
index 55f7c07285..87b87b675b 100644
--- a/lib/crc8.c
+++ b/lib/crc8.c
@@ -3,7 +3,12 @@
  * Copyright (c) 2013 Google, Inc
  */
 
-#include "linux/crc8.h"
+#ifdef USE_HOSTCC
+#include <arpa/inet.h>
+#else
+#include <common.h>
+#endif
+#include <u-boot/crc.h>
 
 #define POLY	(0x1070U << 3)
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 07/42] crc: Fix code style with crc functions
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (5 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 06/42] common: Drop linux/crc8.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 08/42] crc32: Use the crc.h header for " Simon Glass
                   ` (34 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Some of these have a space before the bracket. Drop it to fix the style.
Add some missing function comments while here.

Note that u32 and u8 cannot be used here since crc.h is included on the
host side.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 cmd/i2c.c            |  2 +-
 include/u-boot/crc.h | 75 +++++++++++++++++++++++++++++++++++++++-----
 lib/crc32.c          |  4 +--
 tools/envcrc.c       |  4 +--
 4 files changed, 73 insertions(+), 12 deletions(-)

diff --git a/cmd/i2c.c b/cmd/i2c.c
index e0f8ece597..038f97c261 100644
--- a/cmd/i2c.c
+++ b/cmd/i2c.c
@@ -768,7 +768,7 @@ static int do_i2c_crc (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]
 #endif
 		if (ret)
 			err++;
-		crc = crc32 (crc, &byte, 1);
+		crc = crc32(crc, &byte, 1);
 		addr++;
 	}
 	if (err > 0)
diff --git a/include/u-boot/crc.h b/include/u-boot/crc.h
index b42bcda2b3..1086d2168c 100644
--- a/include/u-boot/crc.h
+++ b/include/u-boot/crc.h
@@ -38,9 +38,47 @@ void crc16_ccitt_wd_buf(const uint8_t *in, uint len,
 			uint8_t *out, uint chunk_sz);
 
 /* lib/crc32.c */
-uint32_t crc32 (uint32_t, const unsigned char *, uint);
-uint32_t crc32_wd (uint32_t, const unsigned char *, uint, uint);
-uint32_t crc32_no_comp (uint32_t, const unsigned char *, uint);
+
+/**
+ * crc32 - Calculate the CRC32 for a block of data
+ *
+ * @crc: Input crc to chain from a previous calculution (use 0 to start a new
+ *	calculation)
+ * @buf: Bytes to checksum
+ * @len: Number of bytes to checksum
+ * @return checksum value
+ */
+uint32_t crc32(uint32_t crc, const unsigned char *buf, uint len);
+
+/**
+ * crc32_wd - Calculate the CRC32 for a block of data (watchdog version)
+ *
+ * This checksums the data @chunk_sz bytes at a time, calling WATCHDOG_RESET()
+ * after each chunk, to prevent the watchdog from firing.
+ *
+ * @crc: Input crc to chain from a previous calculution (use 0 to start a new
+ *	calculation)
+ * @buf: Bytes to checksum
+ * @len: Number of bytes to checksum
+ * @chunk_sz: Chunk size to use between watchdog resets
+ * @return checksum
+ */
+uint32_t crc32_wd(uint32_t crc, const unsigned char *buf, uint len,
+		  uint chunk_sz);
+
+/**
+ * crc32_no_comp - Calculate the CRC32 for a block of data (no one's compliment)
+ *
+ * This version uses a different algorithm which doesn't use one's compliment.
+ * JFFS2 (and other things?) use this.
+ *
+ * @crc: Input crc to chain from a previous calculution (use 0 to start a new
+ *	calculation)
+ * @buf: Bytes to checksum
+ * @len: Number of bytes to checksum
+ * @return checksum value
+ */
+uint32_t crc32_no_comp(uint32_t crc, const unsigned char *buf, uint len);
 
 /**
  * crc32_wd_buf - Perform CRC32 on a buffer and return result in buffer
@@ -50,11 +88,34 @@ uint32_t crc32_no_comp (uint32_t, const unsigned char *, uint);
  * @output:	Place to put checksum result (4 bytes)
  * @chunk_sz:	Trigger watchdog after processing this many bytes
  */
-void crc32_wd_buf(const unsigned char *input, uint ilen,
-		    unsigned char *output, uint chunk_sz);
+void crc32_wd_buf(const uint8_t *input, uint ilen, uint8_t *output,
+		  uint chunk_sz);
 
 /* lib/crc32c.c */
-void crc32c_init(uint32_t *, uint32_t);
-uint32_t crc32c_cal(uint32_t, const char *, int, uint32_t *);
+
+/**
+ * crc32c_init() - Set up a the CRC32 table
+ *
+ * This sets up 256-item table to aid in CRC32 calculation
+ *
+ * @crc32c_table: Place to put table
+ * @pol: polynomial to use
+ */
+void crc32c_init(uint32_t *crc32c_table, uint32_t pol);
+
+/**
+ * crc32c_cal() - Perform CRC32 on a buffer given a table
+ *
+ * This algorithm uses the table (set up by crc32c_init() to speed up
+ * processing.
+ *
+ * @crc: Previous crc (use 0 at start)
+ * @data: Data bytes to checksum
+ * @length: Number of bytes to process
+ * @crc32c_table:: CRC table
+ * @return checksum value
+ */
+uint32_t crc32c_cal(uint32_t crc, const char *data, int length,
+		    uint32_t *crc32c_table);
 
 #endif /* _UBOOT_CRC_H */
diff --git a/lib/crc32.c b/lib/crc32.c
index eee21f8d73..dc7e183f18 100644
--- a/lib/crc32.c
+++ b/lib/crc32.c
@@ -244,12 +244,12 @@ uint32_t crc32_wd(uint32_t crc, const unsigned char *buf, uInt len,
 		chunk = end - curr;
 		if (chunk > chunk_sz)
 			chunk = chunk_sz;
-		crc = crc32 (crc, curr, chunk);
+		crc = crc32(crc, curr, chunk);
 		curr += chunk;
 		WATCHDOG_RESET ();
 	}
 #else
-	crc = crc32 (crc, buf, len);
+	crc = crc32(crc, buf, len);
 #endif
 
 	return crc;
diff --git a/tools/envcrc.c b/tools/envcrc.c
index 672ef4d675..09b49b49f9 100644
--- a/tools/envcrc.c
+++ b/tools/envcrc.c
@@ -64,7 +64,7 @@ extern unsigned int env_size;
 extern env_t embedded_environment;
 #endif	/* CONFIG_BUILD_ENVCRC */
 
-extern uint32_t crc32 (uint32_t, const unsigned char *, unsigned int);
+extern uint32_t crc32(uint32_t, const unsigned char *, unsigned int);
 
 int main (int argc, char **argv)
 {
@@ -94,7 +94,7 @@ int main (int argc, char **argv)
 			memset(dataptr + eoe, pad, datasize - eoe);
 	}
 
-	crc = crc32 (0, dataptr, datasize);
+	crc = crc32(0, dataptr, datasize);
 
 	/* Check if verbose mode is activated passing a parameter to the program */
 	if (argc > 1) {
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 08/42] crc32: Use the crc.h header for crc functions
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (6 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 07/42] crc: Fix code style with crc functions Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 09/42] spl: bootcount: Move code out of header file Simon Glass
                   ` (33 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Drop inclusion of crc.h in common.h and use the correct header directly
instead.

With this we can drop the conflicting definition in fw_env.h and rely on
the crc.h header, which is already included.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 api/api.c                                         | 1 +
 arch/arm/mach-meson/board-common.c                | 1 +
 arch/arm/mach-rockchip/misc.c                     | 1 +
 board/CZ.NIC/turris_omnia/turris_omnia.c          | 1 +
 board/corscience/tricorder/tricorder-eeprom.c     | 1 +
 board/freescale/common/sys_eeprom.c               | 1 +
 board/freescale/mpc8323erdb/mpc8323erdb.c         | 1 +
 board/gardena/smart-gateway-mt7688/board.c        | 1 +
 board/gdsys/a38x/hre.c                            | 1 +
 board/gdsys/p1022/controlcenterd-id.c             | 1 +
 board/sunxi/board.c                               | 1 +
 board/theobroma-systems/puma_rk3399/puma-rk3399.c | 1 +
 board/varisys/common/sys_eeprom.c                 | 1 +
 cmd/i2c.c                                         | 1 +
 cmd/nvedit.c                                      | 1 +
 common/android_ab.c                               | 1 +
 common/bloblist.c                                 | 1 +
 common/board_r.c                                  | 1 +
 common/hash.c                                     | 1 +
 common/image-fit.c                                | 1 +
 common/image.c                                    | 1 +
 common/iotrace.c                                  | 1 +
 common/spl/spl.c                                  | 1 +
 disk/part_efi.c                                   | 1 +
 drivers/misc/atsha204a-i2c.c                      | 1 +
 drivers/mtd/ubi/attach.c                          | 1 +
 drivers/mtd/ubi/crc32.c                           | 1 +
 drivers/mtd/ubi/eba.c                             | 1 +
 drivers/mtd/ubi/fastmap.c                         | 1 +
 drivers/mtd/ubi/io.c                              | 1 +
 drivers/mtd/ubi/vtbl.c                            | 1 +
 drivers/mtd/ubispl/ubispl.c                       | 1 +
 drivers/net/fm/fdt.c                              | 1 +
 drivers/net/fm/fm.c                               | 1 +
 drivers/qe/qe.c                                   | 1 +
 env/common.c                                      | 1 +
 env/eeprom.c                                      | 1 +
 env/flash.c                                       | 1 +
 env/nand.c                                        | 1 +
 env/nvram.c                                       | 1 +
 env/remote.c                                      | 1 +
 env/sf.c                                          | 1 +
 examples/api/glue.c                               | 1 +
 fs/jffs2/jffs2_1pass.c                            | 1 +
 fs/ubifs/io.c                                     | 1 +
 fs/ubifs/recovery.c                               | 1 +
 fs/ubifs/tnc.c                                    | 1 +
 include/common.h                                  | 3 ---
 lib/crc32.c                                       | 1 +
 lib/efi_loader/efi_boottime.c                     | 1 +
 lib/efi_loader/efi_runtime.c                      | 1 +
 lib/efi_loader/efi_variable.c                     | 1 +
 lib/efi_selftest/efi_selftest_config_table.c      | 1 +
 lib/efi_selftest/efi_selftest_crc32.c             | 1 +
 lib/gunzip.c                                      | 1 +
 lib/zlib/deflate.c                                | 1 +
 tools/default_image.c                             | 1 +
 tools/env/fw_env.c                                | 1 +
 tools/env/fw_env.h                                | 2 --
 tools/envcrc.c                                    | 1 +
 tools/mkenvimage.c                                | 1 +
 tools/mxsimage.c                                  | 1 +
 tools/pbl_crc32.c                                 | 1 +
 tools/pblimage.c                                  | 1 +
 tools/socfpgaimage.c                              | 1 +
 65 files changed, 63 insertions(+), 5 deletions(-)

diff --git a/api/api.c b/api/api.c
index 71fa03804e..4fc451a83d 100644
--- a/api/api.c
+++ b/api/api.c
@@ -13,6 +13,7 @@
 #include <env_internal.h>
 #include <linux/types.h>
 #include <api_public.h>
+#include <u-boot/crc.h>
 
 #include "api_private.h"
 
diff --git a/arch/arm/mach-meson/board-common.c b/arch/arm/mach-meson/board-common.c
index d261b4ea33..6c77e37966 100644
--- a/arch/arm/mach-meson/board-common.c
+++ b/arch/arm/mach-meson/board-common.c
@@ -13,6 +13,7 @@
 #include <asm/armv8/mmu.h>
 #include <asm/unaligned.h>
 #include <efi_loader.h>
+#include <u-boot/crc.h>
 
 #if CONFIG_IS_ENABLED(FASTBOOT)
 #include <asm/psci.h>
diff --git a/arch/arm/mach-rockchip/misc.c b/arch/arm/mach-rockchip/misc.c
index c0e4fdbc00..186ea84d77 100644
--- a/arch/arm/mach-rockchip/misc.c
+++ b/arch/arm/mach-rockchip/misc.c
@@ -14,6 +14,7 @@
 #include <dm.h>
 #include <dm/uclass-internal.h>
 #include <misc.h>
+#include <u-boot/crc.h>
 #include <u-boot/sha256.h>
 
 #include <asm/arch-rockchip/misc.h>
diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c
index 1d8d08a847..4d21e62e73 100644
--- a/board/CZ.NIC/turris_omnia/turris_omnia.c
+++ b/board/CZ.NIC/turris_omnia/turris_omnia.c
@@ -18,6 +18,7 @@
 #include <dm/uclass.h>
 #include <fdt_support.h>
 #include <time.h>
+#include <u-boot/crc.h>
 # include <atsha204a-i2c.h>
 
 #include "../drivers/ddr/marvell/a38x/ddr3_init.h"
diff --git a/board/corscience/tricorder/tricorder-eeprom.c b/board/corscience/tricorder/tricorder-eeprom.c
index 16bceea7ba..b28189dafd 100644
--- a/board/corscience/tricorder/tricorder-eeprom.c
+++ b/board/corscience/tricorder/tricorder-eeprom.c
@@ -6,6 +6,7 @@
  */
 #include <common.h>
 #include <i2c.h>
+#include <u-boot/crc.h>
 
 #include "tricorder-eeprom.h"
 
diff --git a/board/freescale/common/sys_eeprom.c b/board/freescale/common/sys_eeprom.c
index bb655ca744..6f151b0f71 100644
--- a/board/freescale/common/sys_eeprom.c
+++ b/board/freescale/common/sys_eeprom.c
@@ -11,6 +11,7 @@
 #include <env.h>
 #include <i2c.h>
 #include <linux/ctype.h>
+#include <u-boot/crc.h>
 
 #ifdef CONFIG_SYS_I2C_EEPROM_CCID
 #include "../common/eeprom.h"
diff --git a/board/freescale/mpc8323erdb/mpc8323erdb.c b/board/freescale/mpc8323erdb/mpc8323erdb.c
index e5aecc4e1f..003e95cb6b 100644
--- a/board/freescale/mpc8323erdb/mpc8323erdb.c
+++ b/board/freescale/mpc8323erdb/mpc8323erdb.c
@@ -17,6 +17,7 @@
 #include <miiphy.h>
 #include <command.h>
 #include <linux/libfdt.h>
+#include <u-boot/crc.h>
 #if defined(CONFIG_PCI)
 #include <pci.h>
 #endif
diff --git a/board/gardena/smart-gateway-mt7688/board.c b/board/gardena/smart-gateway-mt7688/board.c
index bd494c84fc..1a59839569 100644
--- a/board/gardena/smart-gateway-mt7688/board.c
+++ b/board/gardena/smart-gateway-mt7688/board.c
@@ -10,6 +10,7 @@
 #include <net.h>
 #include <spi.h>
 #include <spi_flash.h>
+#include <u-boot/crc.h>
 #include <uuid.h>
 #include <linux/ctype.h>
 #include <linux/io.h>
diff --git a/board/gdsys/a38x/hre.c b/board/gdsys/a38x/hre.c
index 82b84284ef..027ad1f57e 100644
--- a/board/gdsys/a38x/hre.c
+++ b/board/gdsys/a38x/hre.c
@@ -10,6 +10,7 @@
 #include <i2c.h>
 #include <mmc.h>
 #include <tpm-v1.h>
+#include <u-boot/crc.h>
 #include <u-boot/sha1.h>
 #include <asm/byteorder.h>
 #include <asm/unaligned.h>
diff --git a/board/gdsys/p1022/controlcenterd-id.c b/board/gdsys/p1022/controlcenterd-id.c
index 43f5404231..d6798bd338 100644
--- a/board/gdsys/p1022/controlcenterd-id.c
+++ b/board/gdsys/p1022/controlcenterd-id.c
@@ -18,6 +18,7 @@
 #include <i2c.h>
 #include <mmc.h>
 #include <tpm-v1.h>
+#include <u-boot/crc.h>
 #include <u-boot/sha1.h>
 #include <asm/byteorder.h>
 #include <asm/unaligned.h>
diff --git a/board/sunxi/board.c b/board/sunxi/board.c
index e3b2d13892..b9450a0e36 100644
--- a/board/sunxi/board.c
+++ b/board/sunxi/board.c
@@ -24,6 +24,7 @@
 #include <asm/arch/gpio.h>
 #include <asm/arch/mmc.h>
 #include <asm/arch/spl.h>
+#include <u-boot/crc.h>
 #ifndef CONFIG_ARM64
 #include <asm/armv7.h>
 #endif
diff --git a/board/theobroma-systems/puma_rk3399/puma-rk3399.c b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
index 47259b7149..9887d20207 100644
--- a/board/theobroma-systems/puma_rk3399/puma-rk3399.c
+++ b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
@@ -9,6 +9,7 @@
 #include <misc.h>
 #include <spl.h>
 #include <syscon.h>
+#include <u-boot/crc.h>
 #include <usb.h>
 #include <dm/pinctrl.h>
 #include <dm/uclass-internal.h>
diff --git a/board/varisys/common/sys_eeprom.c b/board/varisys/common/sys_eeprom.c
index 77772a6923..4c025087db 100644
--- a/board/varisys/common/sys_eeprom.c
+++ b/board/varisys/common/sys_eeprom.c
@@ -15,6 +15,7 @@
 #include <env.h>
 #include <i2c.h>
 #include <linux/ctype.h>
+#include <u-boot/crc.h>
 
 #include "eeprom.h"
 
diff --git a/cmd/i2c.c b/cmd/i2c.c
index 038f97c261..43a76299b3 100644
--- a/cmd/i2c.c
+++ b/cmd/i2c.c
@@ -76,6 +76,7 @@
 #include <malloc.h>
 #include <asm/byteorder.h>
 #include <linux/compiler.h>
+#include <u-boot/crc.h>
 
 /* Display values from last command.
  * Memory modify remembered values are different from display memory.
diff --git a/cmd/nvedit.c b/cmd/nvedit.c
index 99a3bc57b1..b5da375913 100644
--- a/cmd/nvedit.c
+++ b/cmd/nvedit.c
@@ -33,6 +33,7 @@
 #include <errno.h>
 #include <malloc.h>
 #include <mapmem.h>
+#include <u-boot/crc.h>
 #include <watchdog.h>
 #include <linux/stddef.h>
 #include <asm/byteorder.h>
diff --git a/common/android_ab.c b/common/android_ab.c
index 05ffc6f4e5..6c4df419b2 100644
--- a/common/android_ab.c
+++ b/common/android_ab.c
@@ -8,6 +8,7 @@
 #include <linux/err.h>
 #include <memalign.h>
 #include <u-boot/crc.h>
+#include <u-boot/crc.h>
 
 /**
  * Compute the CRC-32 of the bootloader control struct.
diff --git a/common/bloblist.c b/common/bloblist.c
index b4cf169b05..ccf5e4b6f6 100644
--- a/common/bloblist.c
+++ b/common/bloblist.c
@@ -9,6 +9,7 @@
 #include <log.h>
 #include <mapmem.h>
 #include <spl.h>
+#include <u-boot/crc.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/common/board_r.c b/common/board_r.c
index 79ee21e968..05e08212b4 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <api.h>
+#include <u-boot/crc.h>
 /* TODO: can we just include all these headers whether needed or not? */
 #if defined(CONFIG_CMD_BEDBUG)
 #include <bedbug/type.h>
diff --git a/common/hash.c b/common/hash.c
index d0d825e389..ff4986a619 100644
--- a/common/hash.c
+++ b/common/hash.c
@@ -18,6 +18,7 @@
 #include <hw_sha.h>
 #include <asm/io.h>
 #include <linux/errno.h>
+#include <u-boot/crc.h>
 #else
 #include "mkimage.h"
 #include <time.h>
diff --git a/common/image-fit.c b/common/image-fit.c
index 5c63c769de..c52f945120 100644
--- a/common/image-fit.c
+++ b/common/image-fit.c
@@ -11,6 +11,7 @@
 #ifdef USE_HOSTCC
 #include "mkimage.h"
 #include <time.h>
+#include <u-boot/crc.h>
 #else
 #include <linux/compiler.h>
 #include <linux/kconfig.h>
diff --git a/common/image.c b/common/image.c
index f17fa40c49..992ebbad51 100644
--- a/common/image.c
+++ b/common/image.c
@@ -9,6 +9,7 @@
 #ifndef USE_HOSTCC
 #include <common.h>
 #include <env.h>
+#include <u-boot/crc.h>
 #include <watchdog.h>
 
 #ifdef CONFIG_SHOW_BOOT_PROGRESS
diff --git a/common/iotrace.c b/common/iotrace.c
index 5b92fabc76..ba955afc94 100644
--- a/common/iotrace.c
+++ b/common/iotrace.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <mapmem.h>
 #include <asm/io.h>
+#include <u-boot/crc.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/common/spl/spl.c b/common/spl/spl.c
index f1ad8dc9da..cc5507f757 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -15,6 +15,7 @@
 #include <asm/u-boot.h>
 #include <nand.h>
 #include <fat.h>
+#include <u-boot/crc.h>
 #include <version.h>
 #include <image.h>
 #include <malloc.h>
diff --git a/disk/part_efi.c b/disk/part_efi.c
index 51fa4a74ab..b2e157d9c1 100644
--- a/disk/part_efi.c
+++ b/disk/part_efi.c
@@ -19,6 +19,7 @@
 #include <part_efi.h>
 #include <linux/compiler.h>
 #include <linux/ctype.h>
+#include <u-boot/crc.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/drivers/misc/atsha204a-i2c.c b/drivers/misc/atsha204a-i2c.c
index 934ba5e6b8..116c0661e7 100644
--- a/drivers/misc/atsha204a-i2c.c
+++ b/drivers/misc/atsha204a-i2c.c
@@ -15,6 +15,7 @@
 #include <i2c.h>
 #include <errno.h>
 #include <atsha204a-i2c.h>
+#include <u-boot/crc.h>
 
 #define ATSHA204A_TWLO			60
 #define ATSHA204A_TRANSACTION_TIMEOUT	100000
diff --git a/drivers/mtd/ubi/attach.c b/drivers/mtd/ubi/attach.c
index b4ba339c80..19defd8831 100644
--- a/drivers/mtd/ubi/attach.c
+++ b/drivers/mtd/ubi/attach.c
@@ -74,6 +74,7 @@
 #include <linux/slab.h>
 #include <linux/crc32.h>
 #include <linux/random.h>
+#include <u-boot/crc.h>
 #else
 #include <div64.h>
 #include <linux/err.h>
diff --git a/drivers/mtd/ubi/crc32.c b/drivers/mtd/ubi/crc32.c
index 9c54ea4db0..9ce061c861 100644
--- a/drivers/mtd/ubi/crc32.c
+++ b/drivers/mtd/ubi/crc32.c
@@ -25,6 +25,7 @@
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/compiler.h>
+#include <u-boot/crc.h>
 #endif
 #include <linux/types.h>
 
diff --git a/drivers/mtd/ubi/eba.c b/drivers/mtd/ubi/eba.c
index 809782b372..0c8b998e7e 100644
--- a/drivers/mtd/ubi/eba.c
+++ b/drivers/mtd/ubi/eba.c
@@ -31,6 +31,7 @@
 #ifndef __UBOOT__
 #include <linux/slab.h>
 #include <linux/crc32.h>
+#include <u-boot/crc.h>
 #else
 #include <ubi_uboot.h>
 #endif
diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index 14368f9738..646c778e87 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -8,6 +8,7 @@
 
 #ifndef __UBOOT__
 #include <linux/crc32.h>
+#include <u-boot/crc.h>
 #else
 #include <div64.h>
 #include <malloc.h>
diff --git a/drivers/mtd/ubi/io.c b/drivers/mtd/ubi/io.c
index 688fb509d2..608dede492 100644
--- a/drivers/mtd/ubi/io.c
+++ b/drivers/mtd/ubi/io.c
@@ -77,6 +77,7 @@
 #include <linux/crc32.h>
 #include <linux/err.h>
 #include <linux/slab.h>
+#include <u-boot/crc.h>
 #else
 #include <hexdump.h>
 #include <ubi_uboot.h>
diff --git a/drivers/mtd/ubi/vtbl.c b/drivers/mtd/ubi/vtbl.c
index fb535c1a87..9c46ef6695 100644
--- a/drivers/mtd/ubi/vtbl.c
+++ b/drivers/mtd/ubi/vtbl.c
@@ -50,6 +50,7 @@
 #include <linux/err.h>
 #include <linux/slab.h>
 #include <asm/div64.h>
+#include <u-boot/crc.h>
 #else
 #include <ubi_uboot.h>
 #endif
diff --git a/drivers/mtd/ubispl/ubispl.c b/drivers/mtd/ubispl/ubispl.c
index 3f3b9b4367..00102fcf74 100644
--- a/drivers/mtd/ubispl/ubispl.c
+++ b/drivers/mtd/ubispl/ubispl.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <errno.h>
+#include <u-boot/crc.h>
 #include <ubispl.h>
 
 #include <linux/crc32.h>
diff --git a/drivers/net/fm/fdt.c b/drivers/net/fm/fdt.c
index 72d1294751..a6b0d87415 100644
--- a/drivers/net/fm/fdt.c
+++ b/drivers/net/fm/fdt.c
@@ -5,6 +5,7 @@
 #include <asm/io.h>
 #include <env.h>
 #include <fsl_qe.h>	/* For struct qe_firmware */
+#include <u-boot/crc.h>
 
 #ifdef CONFIG_SYS_DPAA_FMAN
 /**
diff --git a/drivers/net/fm/fm.c b/drivers/net/fm/fm.c
index 4c9dce8dc5..926cf81a07 100644
--- a/drivers/net/fm/fm.c
+++ b/drivers/net/fm/fm.c
@@ -8,6 +8,7 @@
 #include <malloc.h>
 #include <asm/io.h>
 #include <linux/errno.h>
+#include <u-boot/crc.h>
 
 #include "fm.h"
 #include <fsl_qe.h>		/* For struct qe_firmware */
diff --git a/drivers/qe/qe.c b/drivers/qe/qe.c
index 6e4d732a07..24549ece65 100644
--- a/drivers/qe/qe.c
+++ b/drivers/qe/qe.c
@@ -14,6 +14,7 @@
 #include <linux/immap_qe.h>
 #include <fsl_qe.h>
 #include <mmc.h>
+#include <u-boot/crc.h>
 
 #ifdef CONFIG_ARCH_LS1021A
 #include <asm/arch/immap_ls102xa.h>
diff --git a/env/common.c b/env/common.c
index 4daaa6faea..0edb6fb04c 100644
--- a/env/common.c
+++ b/env/common.c
@@ -15,6 +15,7 @@
 #include <search.h>
 #include <errno.h>
 #include <malloc.h>
+#include <u-boot/crc.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/env/eeprom.c b/env/eeprom.c
index cb04d2ac88..f0bdf2a141 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -12,6 +12,7 @@
 #include <env.h>
 #include <env_internal.h>
 #include <linux/stddef.h>
+#include <u-boot/crc.h>
 #if defined(CONFIG_I2C_ENV_EEPROM_BUS)
 #include <i2c.h>
 #endif
diff --git a/env/flash.c b/env/flash.c
index 231a5fdf24..97e0024572 100644
--- a/env/flash.c
+++ b/env/flash.c
@@ -17,6 +17,7 @@
 #include <malloc.h>
 #include <search.h>
 #include <errno.h>
+#include <u-boot/crc.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/env/nand.c b/env/nand.c
index 9f3dc635cf..4dce234c22 100644
--- a/env/nand.c
+++ b/env/nand.c
@@ -23,6 +23,7 @@
 #include <nand.h>
 #include <search.h>
 #include <errno.h>
+#include <u-boot/crc.h>
 
 #if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_NAND) && \
 		!defined(CONFIG_SPL_BUILD)
diff --git a/env/nvram.c b/env/nvram.c
index 79201bd788..a78db21623 100644
--- a/env/nvram.c
+++ b/env/nvram.c
@@ -30,6 +30,7 @@
 #include <linux/stddef.h>
 #include <search.h>
 #include <errno.h>
+#include <u-boot/crc.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/env/remote.c b/env/remote.c
index 02531f427b..7cdc61a514 100644
--- a/env/remote.c
+++ b/env/remote.c
@@ -9,6 +9,7 @@
 #include <command.h>
 #include <env_internal.h>
 #include <linux/stddef.h>
+#include <u-boot/crc.h>
 
 #ifdef ENV_IS_EMBEDDED
 env_t *env_ptr = &environment;
diff --git a/env/sf.c b/env/sf.c
index 590d0cedd8..5b55ee51ad 100644
--- a/env/sf.c
+++ b/env/sf.c
@@ -18,6 +18,7 @@
 #include <search.h>
 #include <errno.h>
 #include <dm/device-internal.h>
+#include <u-boot/crc.h>
 
 #ifndef CONFIG_SPL_BUILD
 #define CMD_SAVEENV
diff --git a/examples/api/glue.c b/examples/api/glue.c
index 4086616a94..91d13157a1 100644
--- a/examples/api/glue.c
+++ b/examples/api/glue.c
@@ -7,6 +7,7 @@
 #include <env.h>
 #include <linux/types.h>
 #include <api_public.h>
+#include <u-boot/crc.h>
 
 #include "glue.h"
 
diff --git a/fs/jffs2/jffs2_1pass.c b/fs/jffs2/jffs2_1pass.c
index 6bf1943958..5912cde838 100644
--- a/fs/jffs2/jffs2_1pass.c
+++ b/fs/jffs2/jffs2_1pass.c
@@ -118,6 +118,7 @@
 #include <linux/compiler.h>
 #include <linux/stat.h>
 #include <linux/time.h>
+#include <u-boot/crc.h>
 #include <watchdog.h>
 #include <jffs2/jffs2.h>
 #include <jffs2/jffs2_1pass.h>
diff --git a/fs/ubifs/io.c b/fs/ubifs/io.c
index 8d7f8feebb..7fe94e1093 100644
--- a/fs/ubifs/io.c
+++ b/fs/ubifs/io.c
@@ -61,6 +61,7 @@
 #ifndef __UBOOT__
 #include <linux/crc32.h>
 #include <linux/slab.h>
+#include <u-boot/crc.h>
 #else
 #include <linux/compat.h>
 #include <linux/err.h>
diff --git a/fs/ubifs/recovery.c b/fs/ubifs/recovery.c
index 621804c6fd..b568012fec 100644
--- a/fs/ubifs/recovery.c
+++ b/fs/ubifs/recovery.c
@@ -38,6 +38,7 @@
 #ifndef __UBOOT__
 #include <linux/crc32.h>
 #include <linux/slab.h>
+#include <u-boot/crc.h>
 #else
 #include <linux/err.h>
 #endif
diff --git a/fs/ubifs/tnc.c b/fs/ubifs/tnc.c
index 86774f8fa2..8afc08ad7d 100644
--- a/fs/ubifs/tnc.c
+++ b/fs/ubifs/tnc.c
@@ -21,6 +21,7 @@
 #ifndef __UBOOT__
 #include <linux/crc32.h>
 #include <linux/slab.h>
+#include <u-boot/crc.h>
 #else
 #include <linux/compat.h>
 #include <linux/err.h>
diff --git a/include/common.h b/include/common.h
index b09c7aeddd..9c454fb1c8 100644
--- a/include/common.h
+++ b/include/common.h
@@ -322,9 +322,6 @@ int strcmp_compar(const void *, const void *);
 /* lib/strmhz.c */
 char *	strmhz(char *buf, unsigned long hz);
 
-/* lib/crc32.c */
-#include <u-boot/crc.h>
-
 /*
  * STDIO based functions (can always be used)
  */
diff --git a/lib/crc32.c b/lib/crc32.c
index dc7e183f18..e9be3bf386 100644
--- a/lib/crc32.c
+++ b/lib/crc32.c
@@ -10,6 +10,7 @@
 
 #ifdef USE_HOSTCC
 #include <arpa/inet.h>
+#include <u-boot/crc.h>
 #else
 #include <common.h>
 #include <efi_loader.h>
diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
index 493d906c64..ea52b9539d 100644
--- a/lib/efi_loader/efi_boottime.c
+++ b/lib/efi_loader/efi_boottime.c
@@ -13,6 +13,7 @@
 #include <u-boot/crc.h>
 #include <bootm.h>
 #include <pe.h>
+#include <u-boot/crc.h>
 #include <watchdog.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c
index ced00516f7..72555f07fc 100644
--- a/lib/efi_loader/efi_runtime.c
+++ b/lib/efi_loader/efi_runtime.c
@@ -11,6 +11,7 @@
 #include <elf.h>
 #include <efi_loader.h>
 #include <rtc.h>
+#include <u-boot/crc.h>
 
 /* For manual relocation support */
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c
index 46f35bc60b..c316bdfec0 100644
--- a/lib/efi_loader/efi_variable.c
+++ b/lib/efi_loader/efi_variable.c
@@ -11,6 +11,7 @@
 #include <hexdump.h>
 #include <malloc.h>
 #include <search.h>
+#include <u-boot/crc.h>
 
 #define READ_ONLY BIT(31)
 
diff --git a/lib/efi_selftest/efi_selftest_config_table.c b/lib/efi_selftest/efi_selftest_config_table.c
index 4467f492ac..2bf12b5bb6 100644
--- a/lib/efi_selftest/efi_selftest_config_table.c
+++ b/lib/efi_selftest/efi_selftest_config_table.c
@@ -9,6 +9,7 @@
  */
 
 #include <efi_selftest.h>
+#include <u-boot/crc.h>
 
 static const struct efi_system_table *sys_table;
 static struct efi_boot_services *boottime;
diff --git a/lib/efi_selftest/efi_selftest_crc32.c b/lib/efi_selftest/efi_selftest_crc32.c
index 4881e8ac6f..19153c759a 100644
--- a/lib/efi_selftest/efi_selftest_crc32.c
+++ b/lib/efi_selftest/efi_selftest_crc32.c
@@ -10,6 +10,7 @@
  */
 
 #include <efi_selftest.h>
+#include <u-boot/crc.h>
 
 const struct efi_system_table *st;
 efi_status_t (EFIAPI *bs_crc32)(const void *data, efi_uintn_t data_size,
diff --git a/lib/gunzip.c b/lib/gunzip.c
index 1d65616c13..9e6ccd692a 100644
--- a/lib/gunzip.c
+++ b/lib/gunzip.c
@@ -12,6 +12,7 @@
 #include <image.h>
 #include <malloc.h>
 #include <memalign.h>
+#include <u-boot/crc.h>
 #include <watchdog.h>
 #include <u-boot/zlib.h>
 
diff --git a/lib/zlib/deflate.c b/lib/zlib/deflate.c
index 9a20b70344..1fe58d5da6 100644
--- a/lib/zlib/deflate.c
+++ b/lib/zlib/deflate.c
@@ -50,6 +50,7 @@
 /* @(#) $Id$ */
 
 #include "deflate.h"
+#include <u-boot/crc.h>
 
 const char deflate_copyright[] =
    " deflate 1.2.5 Copyright 1995-2010 Jean-loup Gailly and Mark Adler ";
diff --git a/tools/default_image.c b/tools/default_image.c
index f7990e28c0..e164c0c27d 100644
--- a/tools/default_image.c
+++ b/tools/default_image.c
@@ -15,6 +15,7 @@
 
 #include "imagetool.h"
 #include "mkimage.h"
+#include <u-boot/crc.h>
 
 #include <image.h>
 #include <tee/optee.h>
diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
index e2801f595f..30b5a190ab 100644
--- a/tools/env/fw_env.c
+++ b/tools/env/fw_env.c
@@ -25,6 +25,7 @@
 #include <sys/types.h>
 #include <sys/ioctl.h>
 #include <sys/stat.h>
+#include <u-boot/crc.h>
 #include <unistd.h>
 #include <dirent.h>
 
diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
index 3d2b457b31..b60fbfc8f8 100644
--- a/tools/env/fw_env.h
+++ b/tools/env/fw_env.h
@@ -160,5 +160,3 @@ int fw_env_close(struct env_opts *opts);
  *  version string of the library
  */
 char *fw_env_version(void);
-
-unsigned long crc32(unsigned long, const unsigned char *, unsigned);
diff --git a/tools/envcrc.c b/tools/envcrc.c
index 09b49b49f9..037b6e8bec 100644
--- a/tools/envcrc.c
+++ b/tools/envcrc.c
@@ -9,6 +9,7 @@
 #include <stdint.h>
 #include <stdlib.h>
 #include <string.h>
+#include <u-boot/crc.h>
 #include <unistd.h>
 
 #include <linux/kconfig.h>
diff --git a/tools/mkenvimage.c b/tools/mkenvimage.c
index a8eebab6c3..b05f83415f 100644
--- a/tools/mkenvimage.c
+++ b/tools/mkenvimage.c
@@ -14,6 +14,7 @@
 #include <stdlib.h>
 #include <stdint.h>
 #include <string.h>
+#include <u-boot/crc.h>
 #include <unistd.h>
 #include <libgen.h>
 #include <sys/types.h>
diff --git a/tools/mxsimage.c b/tools/mxsimage.c
index 0bb5c6aa6b..002f4b525a 100644
--- a/tools/mxsimage.c
+++ b/tools/mxsimage.c
@@ -11,6 +11,7 @@
 #include <fcntl.h>
 #include <stdio.h>
 #include <string.h>
+#include <u-boot/crc.h>
 #include <unistd.h>
 #include <limits.h>
 
diff --git a/tools/pbl_crc32.c b/tools/pbl_crc32.c
index 06da1d92ff..9b1ca55348 100644
--- a/tools/pbl_crc32.c
+++ b/tools/pbl_crc32.c
@@ -5,6 +5,7 @@
  * Cleaned up and refactored by Charles Manning.
  */
 #include "pblimage.h"
+#include <u-boot/crc.h>
 
 static uint32_t crc_table[256];
 static int crc_table_valid;
diff --git a/tools/pblimage.c b/tools/pblimage.c
index d11f9afe24..3c823e96cf 100644
--- a/tools/pblimage.c
+++ b/tools/pblimage.c
@@ -6,6 +6,7 @@
 #include <image.h>
 #include "pblimage.h"
 #include "pbl_crc32.h"
+#include <u-boot/crc.h>
 
 #define roundup(x, y)		((((x) + ((y) - 1)) / (y)) * (y))
 #define PBL_ACS_CONT_CMD	0x81000000
diff --git a/tools/socfpgaimage.c b/tools/socfpgaimage.c
index 72d8b96f54..8fa098338b 100644
--- a/tools/socfpgaimage.c
+++ b/tools/socfpgaimage.c
@@ -55,6 +55,7 @@
 #include "pbl_crc32.h"
 #include "imagetool.h"
 #include "mkimage.h"
+#include <u-boot/crc.h>
 
 #include <image.h>
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 09/42] spl: bootcount: Move code out of header file
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (7 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 08/42] crc32: Use the crc.h header for " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 10/42] common: Move bootcount functions to their " Simon Glass
                   ` (32 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

It is not good practice to write code in a header file. If it is included
multiple times then the code can cause duplicate functions.

Move the bootcount_store() and bootcount_load() functions into SPL.

Note: bootcount is a bit strange in that it uses driver model but does not
define proper drivers. This should be fixed.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 common/spl/spl.c    | 11 +++++++++++
 include/bootcount.h |  4 ----
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/common/spl/spl.c b/common/spl/spl.c
index cc5507f757..a2ef13a41c 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -830,3 +830,14 @@ ulong spl_relocate_stack_gd(void)
 	return 0;
 #endif
 }
+
+#if defined(CONFIG_BOOTCOUNT_LIMIT) && !defined(CONFIG_SPL_BOOTCOUNT_LIMIT)
+void bootcount_store(ulong a)
+{
+}
+
+ulong bootcount_load(void)
+{
+	return 0;
+}
+#endif
diff --git a/include/bootcount.h b/include/bootcount.h
index 8fa8cf8218..a26a385233 100644
--- a/include/bootcount.h
+++ b/include/bootcount.h
@@ -127,10 +127,6 @@ static inline void bootcount_inc(void)
 #endif /* !CONFIG_SPL_BUILD */
 }
 
-#if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_SPL_BOOTCOUNT_LIMIT)
-void bootcount_store(ulong a) {};
-ulong bootcount_load(void) { return 0; }
-#endif /* CONFIG_SPL_BUILD && !CONFIG_SPL_BOOTCOUNT_LIMIT */
 #else
 static inline int bootcount_error(void) { return 0; }
 static inline void bootcount_inc(void) {}
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 10/42] common: Move bootcount functions to their header file
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (8 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 09/42] spl: bootcount: Move code out of header file Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 11/42] common: Move sorting functions to their own " Simon Glass
                   ` (31 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These don't need to be in common.h so move them out.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 board/BuR/brppt1/board.c |  1 +
 include/bootcount.h      | 10 ++++++++++
 include/common.h         |  4 ----
 3 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/board/BuR/brppt1/board.c b/board/BuR/brppt1/board.c
index ef4f5c9501..e0d1707ac1 100644
--- a/board/BuR/brppt1/board.c
+++ b/board/BuR/brppt1/board.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <bootcount.h>
 #include <env.h>
 #include <errno.h>
 #include <spl.h>
diff --git a/include/bootcount.h b/include/bootcount.h
index a26a385233..cd30403984 100644
--- a/include/bootcount.h
+++ b/include/bootcount.h
@@ -59,6 +59,16 @@ int dm_bootcount_set(struct udevice *dev, u32 bootcount);
 
 #endif
 
+/** bootcount_store() - store the current bootcount */
+void bootcount_store(ulong);
+
+/**
+ * bootcount_load() - load the current bootcount
+ *
+ * @return bootcount, read from the appropriate location
+ */
+ulong bootcount_load(void);
+
 #if defined(CONFIG_SPL_BOOTCOUNT_LIMIT) || defined(CONFIG_BOOTCOUNT_LIMIT)
 
 #if !defined(CONFIG_SYS_BOOTCOUNT_LE) && !defined(CONFIG_SYS_BOOTCOUNT_BE)
diff --git a/include/common.h b/include/common.h
index 9c454fb1c8..97b661181b 100644
--- a/include/common.h
+++ b/include/common.h
@@ -266,10 +266,6 @@ unsigned long timer_get_us(void);
 void	enable_interrupts  (void);
 int	disable_interrupts (void);
 
-/* $(CPU)/.../commproc.c */
-void	bootcount_store (ulong);
-ulong	bootcount_load (void);
-
 /* $(CPU)/.../<eth> */
 void mii_init (void);
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 11/42] common: Move sorting functions to their own header file
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (9 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 10/42] common: Move bootcount functions to their " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 12/42] Move strtomhz() to vsprintf.h Simon Glass
                   ` (30 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These don't need to be in common.h so move them out into a new header.
Also add some missing comments.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 cmd/efi.c               |  1 +
 common/bootstage.c      |  1 +
 env/common.c            |  1 +
 fs/yaffs2/yaffs_qsort.c |  1 +
 include/common.h        |  5 -----
 include/sort.h          | 34 ++++++++++++++++++++++++++++++++++
 lib/hashtable.c         |  1 +
 lib/qsort.c             |  1 +
 8 files changed, 40 insertions(+), 5 deletions(-)
 create mode 100644 include/sort.h

diff --git a/cmd/efi.c b/cmd/efi.c
index 919cb2fcfd..ea239a01f0 100644
--- a/cmd/efi.c
+++ b/cmd/efi.c
@@ -9,6 +9,7 @@
 #include <efi.h>
 #include <errno.h>
 #include <malloc.h>
+#include <sort.h>
 
 static const char *const type_name[] = {
 	"reserved",
diff --git a/common/bootstage.c b/common/bootstage.c
index e8b7bbf81a..79972e46f2 100644
--- a/common/bootstage.c
+++ b/common/bootstage.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <malloc.h>
+#include <sort.h>
 #include <spl.h>
 #include <linux/compiler.h>
 #include <linux/libfdt.h>
diff --git a/env/common.c b/env/common.c
index 0edb6fb04c..1fd1bd01d3 100644
--- a/env/common.c
+++ b/env/common.c
@@ -11,6 +11,7 @@
 #include <command.h>
 #include <env.h>
 #include <env_internal.h>
+#include <sort.h>
 #include <linux/stddef.h>
 #include <search.h>
 #include <errno.h>
diff --git a/fs/yaffs2/yaffs_qsort.c b/fs/yaffs2/yaffs_qsort.c
index b463569815..32c767f359 100644
--- a/fs/yaffs2/yaffs_qsort.c
+++ b/fs/yaffs2/yaffs_qsort.c
@@ -5,6 +5,7 @@
  */
 
 #include "yportenv.h"
+#include <sort.h>
 /* #include <linux/string.h> */
 
 /*
diff --git a/include/common.h b/include/common.h
index 97b661181b..d17a2b2642 100644
--- a/include/common.h
+++ b/include/common.h
@@ -304,11 +304,6 @@ ulong	ticks2usec    (unsigned long ticks);
 /* lib/lz4_wrapper.c */
 int ulz4fn(const void *src, size_t srcn, void *dst, size_t *dstn);
 
-/* lib/qsort.c */
-void qsort(void *base, size_t nmemb, size_t size,
-	   int(*compar)(const void *, const void *));
-int strcmp_compar(const void *, const void *);
-
 /* lib/uuid.c */
 #include <uuid.h>
 
diff --git a/include/sort.h b/include/sort.h
new file mode 100644
index 0000000000..0c6b588fcb
--- /dev/null
+++ b/include/sort.h
@@ -0,0 +1,34 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright 2019 Google LLC
+ */
+
+#ifndef __SORT_H
+#define __SORT_H
+
+/**
+ * qsort() - Use the quicksort algorithm to sort some values
+ *
+ * @base: Base address of array to sort
+ * @nmemb: Number of members to sort
+ * @size: Size of each member in bytes
+ * @compar: Comparison function which should return:
+ *	< 0 if element at s1 < element at s2,
+ *	  0 if element at s1 == element@s2,
+ *	> 0 if element at s1 > element at s2,
+ */
+void qsort(void *base, size_t nmemb, size_t size,
+	   int (*compar)(const void *s1, const void *s2));
+
+/**
+ * strcmp_compar() - compar function for string arrays
+ *
+ * This can be passed to qsort when a string array is being sorted
+ *
+ * @s1: First string to compare
+ * @s2: Second string to compare
+ * @return comparison value (less than, equal to, or greater than 0)
+ */
+int strcmp_compar(const void *s1, const void *s2);
+
+#endif
diff --git a/lib/hashtable.c b/lib/hashtable.c
index 2caab0a4c6..907e8a642f 100644
--- a/lib/hashtable.c
+++ b/lib/hashtable.c
@@ -14,6 +14,7 @@
 
 #include <errno.h>
 #include <malloc.h>
+#include <sort.h>
 
 #ifdef USE_HOSTCC		/* HOST build */
 # include <string.h>
diff --git a/lib/qsort.c b/lib/qsort.c
index 57098841f9..f63d4ef726 100644
--- a/lib/qsort.c
+++ b/lib/qsort.c
@@ -18,6 +18,7 @@
 #include <linux/types.h>
 #include <common.h>
 #include <exports.h>
+#include <sort.h>
 
 void qsort(void  *base,
 	   size_t nel,
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 12/42] Move strtomhz() to vsprintf.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (10 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 11/42] common: Move sorting functions to their own " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 13/42] common: Move env_get_ip() to net.h Simon Glass
                   ` (29 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

At present this function sits in its own file but it does not really
justify it. There are similar string functions in vsprintf.h, so move it
there. Also add the missing function comment.

Use the vsprintf.h include file explicitly where needed.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Put copyright info into vsprintf.c

Changes in v2: None

 arch/arc/lib/cpu.c                            |  1 +
 arch/arm/cpu/arm926ejs/mx25/generic.c         |  1 +
 arch/arm/cpu/arm926ejs/mx27/generic.c         |  1 +
 arch/arm/cpu/armv7/ls102xa/cpu.c              |  1 +
 arch/arm/cpu/armv8/fsl-layerscape/cpu.c       |  1 +
 arch/arm/mach-at91/arm926ejs/cpu.c            |  1 +
 arch/arm/mach-at91/armv7/cpu.c                |  1 +
 arch/m68k/cpu/mcf5227x/cpu.c                  |  1 +
 arch/m68k/cpu/mcf523x/cpu.c                   |  1 +
 arch/m68k/cpu/mcf52x2/cpu.c                   |  1 +
 arch/m68k/cpu/mcf530x/cpu.c                   |  1 +
 arch/m68k/cpu/mcf532x/cpu.c                   |  1 +
 arch/m68k/cpu/mcf5445x/cpu.c                  |  1 +
 arch/m68k/cpu/mcf547x_8x/cpu.c                |  1 +
 arch/powerpc/cpu/mpc83xx/cpu.c                |  1 +
 arch/powerpc/cpu/mpc83xx/spd_sdram.c          |  1 +
 arch/powerpc/cpu/mpc83xx/speed.c              |  1 +
 arch/powerpc/cpu/mpc85xx/cpu.c                |  1 +
 arch/powerpc/cpu/mpc86xx/cpu.c                |  1 +
 arch/powerpc/cpu/mpc8xx/cpu.c                 |  1 +
 arch/xtensa/cpu/cpu.c                         |  1 +
 board/Arcturus/ucp1020/ddr.c                  |  1 +
 board/atmel/at91sam9261ek/at91sam9261ek.c     |  1 +
 board/atmel/at91sam9263ek/at91sam9263ek.c     |  1 +
 .../atmel/at91sam9m10g45ek/at91sam9m10g45ek.c |  1 +
 board/atmel/at91sam9n12ek/at91sam9n12ek.c     |  1 +
 board/atmel/at91sam9rlek/at91sam9rlek.c       |  1 +
 board/atmel/common/video_display.c            |  1 +
 board/esd/meesc/meesc.c                       |  1 +
 board/freescale/bsc9131rdb/ddr.c              |  1 +
 board/freescale/bsc9132qds/ddr.c              |  1 +
 board/freescale/corenet_ds/ddr.c              |  1 +
 board/freescale/ls1043ardb/ddr.c              |  1 +
 board/freescale/mpc8541cds/mpc8541cds.c       |  1 +
 board/freescale/mpc8548cds/mpc8548cds.c       |  1 +
 board/freescale/mpc8555cds/mpc8555cds.c       |  1 +
 board/freescale/p1010rdb/ddr.c                |  1 +
 board/freescale/p1_p2_rdb_pc/ddr.c            |  1 +
 board/freescale/p1_twr/ddr.c                  |  1 +
 board/mini-box/picosam9g45/picosam9g45.c      |  1 +
 board/ronetix/pm9261/pm9261.c                 |  1 +
 cmd/bdinfo.c                                  |  1 +
 drivers/clk/clk_stm32mp1.c                    |  1 +
 drivers/clk/mpc83xx_clk.c                     |  1 +
 drivers/cpu/mpc83xx_cpu.c                     |  1 +
 include/common.h                              |  3 ---
 include/vsprintf.h                            | 10 +++++++++
 lib/Makefile                                  |  4 ++--
 lib/strmhz.c                                  | 21 -------------------
 lib/vsprintf.c                                | 19 +++++++++++++++++
 50 files changed, 76 insertions(+), 26 deletions(-)
 delete mode 100644 lib/strmhz.c

diff --git a/arch/arc/lib/cpu.c b/arch/arc/lib/cpu.c
index 01cca95d5b..83246550ec 100644
--- a/arch/arc/lib/cpu.c
+++ b/arch/arc/lib/cpu.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <malloc.h>
+#include <vsprintf.h>
 #include <asm/arcregs.h>
 #include <asm/cache.h>
 
diff --git a/arch/arm/cpu/arm926ejs/mx25/generic.c b/arch/arm/cpu/arm926ejs/mx25/generic.c
index 5fcf06ae1a..eeb61d0d10 100644
--- a/arch/arm/cpu/arm926ejs/mx25/generic.c
+++ b/arch/arm/cpu/arm926ejs/mx25/generic.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <div64.h>
 #include <netdev.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch-imx/cpu.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/cpu/arm926ejs/mx27/generic.c b/arch/arm/cpu/arm926ejs/mx27/generic.c
index 08b1b4de71..9bed0e91be 100644
--- a/arch/arm/cpu/arm926ejs/mx27/generic.c
+++ b/arch/arm/cpu/arm926ejs/mx27/generic.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <div64.h>
 #include <netdev.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/clock.h>
diff --git a/arch/arm/cpu/armv7/ls102xa/cpu.c b/arch/arm/cpu/armv7/ls102xa/cpu.c
index 9ccfe1042c..ec9984db79 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 <vsprintf.h>
 #include <asm/arch/clock.h>
 #include <asm/io.h>
 #include <asm/arch/immap_ls102xa.h>
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
index 83a3319321..59d03b167c 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <env.h>
 #include <fsl_ddr_sdram.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <linux/errno.h>
 #include <asm/system.h>
diff --git a/arch/arm/mach-at91/arm926ejs/cpu.c b/arch/arm/mach-at91/arm926ejs/cpu.c
index 6f5aa4274b..e9b4e06595 100644
--- a/arch/arm/mach-at91/arm926ejs/cpu.c
+++ b/arch/arm/mach-at91/arm926ejs/cpu.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_pit.h>
diff --git a/arch/arm/mach-at91/armv7/cpu.c b/arch/arm/mach-at91/armv7/cpu.c
index 5da067cda1..638645c7e4 100644
--- a/arch/arm/mach-at91/armv7/cpu.c
+++ b/arch/arm/mach-at91/armv7/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/at91_pit.h>
diff --git a/arch/m68k/cpu/mcf5227x/cpu.c b/arch/m68k/cpu/mcf5227x/cpu.c
index 7ad023dac5..34534d876b 100644
--- a/arch/m68k/cpu/mcf5227x/cpu.c
+++ b/arch/m68k/cpu/mcf5227x/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 
diff --git a/arch/m68k/cpu/mcf523x/cpu.c b/arch/m68k/cpu/mcf523x/cpu.c
index 79be04f7a0..429781945b 100644
--- a/arch/m68k/cpu/mcf523x/cpu.c
+++ b/arch/m68k/cpu/mcf523x/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <netdev.h>
diff --git a/arch/m68k/cpu/mcf52x2/cpu.c b/arch/m68k/cpu/mcf52x2/cpu.c
index 29a17c57fc..b48a753f9b 100644
--- a/arch/m68k/cpu/mcf52x2/cpu.c
+++ b/arch/m68k/cpu/mcf52x2/cpu.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <asm/immap.h>
diff --git a/arch/m68k/cpu/mcf530x/cpu.c b/arch/m68k/cpu/mcf530x/cpu.c
index c7ae65afce..a76deebc68 100644
--- a/arch/m68k/cpu/mcf530x/cpu.c
+++ b/arch/m68k/cpu/mcf530x/cpu.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/cpu/mcf532x/cpu.c b/arch/m68k/cpu/mcf532x/cpu.c
index a01b5e65a7..c8a1f20530 100644
--- a/arch/m68k/cpu/mcf532x/cpu.c
+++ b/arch/m68k/cpu/mcf532x/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <netdev.h>
diff --git a/arch/m68k/cpu/mcf5445x/cpu.c b/arch/m68k/cpu/mcf5445x/cpu.c
index 56e5585e09..2f79380c8b 100644
--- a/arch/m68k/cpu/mcf5445x/cpu.c
+++ b/arch/m68k/cpu/mcf5445x/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <netdev.h>
diff --git a/arch/m68k/cpu/mcf547x_8x/cpu.c b/arch/m68k/cpu/mcf547x_8x/cpu.c
index 819b25f280..dc5ed1aa79 100644
--- a/arch/m68k/cpu/mcf547x_8x/cpu.c
+++ b/arch/m68k/cpu/mcf547x_8x/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <netdev.h>
diff --git a/arch/powerpc/cpu/mpc83xx/cpu.c b/arch/powerpc/cpu/mpc83xx/cpu.c
index 3048ecf34a..363c0ffd28 100644
--- a/arch/powerpc/cpu/mpc83xx/cpu.c
+++ b/arch/powerpc/cpu/mpc83xx/cpu.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <mpc83xx.h>
diff --git a/arch/powerpc/cpu/mpc83xx/spd_sdram.c b/arch/powerpc/cpu/mpc83xx/spd_sdram.c
index 8b5ecdb9ad..08918a9d75 100644
--- a/arch/powerpc/cpu/mpc83xx/spd_sdram.c
+++ b/arch/powerpc/cpu/mpc83xx/spd_sdram.c
@@ -13,6 +13,7 @@
 #ifndef CONFIG_MPC83XX_SDRAM
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/processor.h>
 #include <asm/io.h>
 #include <i2c.h>
diff --git a/arch/powerpc/cpu/mpc83xx/speed.c b/arch/powerpc/cpu/mpc83xx/speed.c
index e118a10fa8..93af7f495f 100644
--- a/arch/powerpc/cpu/mpc83xx/speed.c
+++ b/arch/powerpc/cpu/mpc83xx/speed.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <mpc83xx.h>
 #include <command.h>
+#include <vsprintf.h>
 #include <asm/processor.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/powerpc/cpu/mpc85xx/cpu.c b/arch/powerpc/cpu/mpc85xx/cpu.c
index bba71813bc..8f58924b7b 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu.c
@@ -11,6 +11,7 @@
 #include <config.h>
 #include <common.h>
 #include <cpu_legacy.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <fsl_esdhc.h>
diff --git a/arch/powerpc/cpu/mpc86xx/cpu.c b/arch/powerpc/cpu/mpc86xx/cpu.c
index c023d0684f..1c3c78217c 100644
--- a/arch/powerpc/cpu/mpc86xx/cpu.c
+++ b/arch/powerpc/cpu/mpc86xx/cpu.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <asm/cache.h>
diff --git a/arch/powerpc/cpu/mpc8xx/cpu.c b/arch/powerpc/cpu/mpc8xx/cpu.c
index 798eabdc21..6ad86e9a1d 100644
--- a/arch/powerpc/cpu/mpc8xx/cpu.c
+++ b/arch/powerpc/cpu/mpc8xx/cpu.c
@@ -17,6 +17,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
 #include <mpc8xx.h>
diff --git a/arch/xtensa/cpu/cpu.c b/arch/xtensa/cpu/cpu.c
index 64bb0b6ee0..6f4b88f88e 100644
--- a/arch/xtensa/cpu/cpu.c
+++ b/arch/xtensa/cpu/cpu.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <vsprintf.h>
 #include <linux/stringify.h>
 #include <asm/global_data.h>
 #include <asm/cache.h>
diff --git a/board/Arcturus/ucp1020/ddr.c b/board/Arcturus/ucp1020/ddr.c
index 4b84a1a4c0..a3285ebe5c 100644
--- a/board/Arcturus/ucp1020/ddr.c
+++ b/board/Arcturus/ucp1020/ddr.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
 #include <asm/processor.h>
diff --git a/board/atmel/at91sam9261ek/at91sam9261ek.c b/board/atmel/at91sam9261ek/at91sam9261ek.c
index 6f15bc6776..28765315f7 100644
--- a/board/atmel/at91sam9261ek/at91sam9261ek.c
+++ b/board/atmel/at91sam9261ek/at91sam9261ek.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/at91sam9261.h>
 #include <asm/arch/at91sam9261_matrix.h>
diff --git a/board/atmel/at91sam9263ek/at91sam9263ek.c b/board/atmel/at91sam9263ek/at91sam9263ek.c
index 2d882174de..31bb72c0cd 100644
--- a/board/atmel/at91sam9263ek/at91sam9263ek.c
+++ b/board/atmel/at91sam9263ek/at91sam9263ek.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <vsprintf.h>
 #include <linux/sizes.h>
 #include <asm/arch/at91sam9263.h>
 #include <asm/arch/at91sam9_smc.h>
diff --git a/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c b/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c
index 3b277fc575..85004310b1 100644
--- a/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c
+++ b/board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/at91sam9g45_matrix.h>
diff --git a/board/atmel/at91sam9n12ek/at91sam9n12ek.c b/board/atmel/at91sam9n12ek/at91sam9n12ek.c
index b2bb7ec992..51b24e1d59 100644
--- a/board/atmel/at91sam9n12ek/at91sam9n12ek.c
+++ b/board/atmel/at91sam9n12ek/at91sam9n12ek.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/at91sam9x5_matrix.h>
 #include <asm/arch/at91sam9_smc.h>
diff --git a/board/atmel/at91sam9rlek/at91sam9rlek.c b/board/atmel/at91sam9rlek/at91sam9rlek.c
index 0393307315..4e674d49b3 100644
--- a/board/atmel/at91sam9rlek/at91sam9rlek.c
+++ b/board/atmel/at91sam9rlek/at91sam9rlek.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/mach-types.h>
 #include <asm/arch/at91sam9rl.h>
diff --git a/board/atmel/common/video_display.c b/board/atmel/common/video_display.c
index cc051d2e0c..5cc52139a7 100644
--- a/board/atmel/common/video_display.c
+++ b/board/atmel/common/video_display.c
@@ -11,6 +11,7 @@
 #include <version.h>
 #include <video.h>
 #include <video_console.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/clk.h>
 
diff --git a/board/esd/meesc/meesc.c b/board/esd/meesc/meesc.c
index b0d2f7b6f8..221048a91f 100644
--- a/board/esd/meesc/meesc.c
+++ b/board/esd/meesc/meesc.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/mach-types.h>
diff --git a/board/freescale/bsc9131rdb/ddr.c b/board/freescale/bsc9131rdb/ddr.c
index f9f8d80213..4b6d91df21 100644
--- a/board/freescale/bsc9131rdb/ddr.c
+++ b/board/freescale/bsc9131rdb/ddr.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
 #include <asm/processor.h>
diff --git a/board/freescale/bsc9132qds/ddr.c b/board/freescale/bsc9132qds/ddr.c
index 191ef01d23..f4effe5a2d 100644
--- a/board/freescale/bsc9132qds/ddr.c
+++ b/board/freescale/bsc9132qds/ddr.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
 #include <asm/processor.h>
diff --git a/board/freescale/corenet_ds/ddr.c b/board/freescale/corenet_ds/ddr.c
index 38f13ce4b2..9c8731ce78 100644
--- a/board/freescale/corenet_ds/ddr.c
+++ b/board/freescale/corenet_ds/ddr.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <i2c.h>
 #include <hwconfig.h>
+#include <vsprintf.h>
 #include <asm/mmu.h>
 #include <fsl_ddr_sdram.h>
 #include <fsl_ddr_dimm_params.h>
diff --git a/board/freescale/ls1043ardb/ddr.c b/board/freescale/ls1043ardb/ddr.c
index 784e482f32..2677b7928f 100644
--- a/board/freescale/ls1043ardb/ddr.c
+++ b/board/freescale/ls1043ardb/ddr.c
@@ -7,6 +7,7 @@
 #include <fsl_ddr_sdram.h>
 #include <fsl_ddr_dimm_params.h>
 #include "ddr.h"
+#include <vsprintf.h>
 #ifdef CONFIG_FSL_DEEP_SLEEP
 #include <fsl_sleep.h>
 #endif
diff --git a/board/freescale/mpc8541cds/mpc8541cds.c b/board/freescale/mpc8541cds/mpc8541cds.c
index 779c99c268..be79a7ca7b 100644
--- a/board/freescale/mpc8541cds/mpc8541cds.c
+++ b/board/freescale/mpc8541cds/mpc8541cds.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <pci.h>
+#include <vsprintf.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
diff --git a/board/freescale/mpc8548cds/mpc8548cds.c b/board/freescale/mpc8548cds/mpc8548cds.c
index 2799b5b5a4..28f8a998ce 100644
--- a/board/freescale/mpc8548cds/mpc8548cds.c
+++ b/board/freescale/mpc8548cds/mpc8548cds.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <pci.h>
+#include <vsprintf.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
diff --git a/board/freescale/mpc8555cds/mpc8555cds.c b/board/freescale/mpc8555cds/mpc8555cds.c
index 6cfb8d5191..bc1ebc51ed 100644
--- a/board/freescale/mpc8555cds/mpc8555cds.c
+++ b/board/freescale/mpc8555cds/mpc8555cds.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <pci.h>
+#include <vsprintf.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
diff --git a/board/freescale/p1010rdb/ddr.c b/board/freescale/p1010rdb/ddr.c
index 01e3eafd12..71f6259b60 100644
--- a/board/freescale/p1010rdb/ddr.c
+++ b/board/freescale/p1010rdb/ddr.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
 #include <asm/processor.h>
diff --git a/board/freescale/p1_p2_rdb_pc/ddr.c b/board/freescale/p1_p2_rdb_pc/ddr.c
index b9bd7b5276..2346f6a0c2 100644
--- a/board/freescale/p1_p2_rdb_pc/ddr.c
+++ b/board/freescale/p1_p2_rdb_pc/ddr.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
 #include <asm/processor.h>
diff --git a/board/freescale/p1_twr/ddr.c b/board/freescale/p1_twr/ddr.c
index 7e8bd6b8c2..85f1f6344a 100644
--- a/board/freescale/p1_twr/ddr.c
+++ b/board/freescale/p1_twr/ddr.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
 #include <asm/processor.h>
diff --git a/board/mini-box/picosam9g45/picosam9g45.c b/board/mini-box/picosam9g45/picosam9g45.c
index 9554fefd4e..9a724040b0 100644
--- a/board/mini-box/picosam9g45/picosam9g45.c
+++ b/board/mini-box/picosam9g45/picosam9g45.c
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/at91sam9g45_matrix.h>
diff --git a/board/ronetix/pm9261/pm9261.c b/board/ronetix/pm9261/pm9261.c
index f1e7aab629..bad673412a 100644
--- a/board/ronetix/pm9261/pm9261.c
+++ b/board/ronetix/pm9261/pm9261.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <vsprintf.h>
 #include <linux/sizes.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
diff --git a/cmd/bdinfo.c b/cmd/bdinfo.c
index ae6006f85f..abd9151432 100644
--- a/cmd/bdinfo.c
+++ b/cmd/bdinfo.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <vsprintf.h>
 #include <linux/compiler.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/clk/clk_stm32mp1.c b/drivers/clk/clk_stm32mp1.c
index e87307fa60..e223f84eac 100644
--- a/drivers/clk/clk_stm32mp1.c
+++ b/drivers/clk/clk_stm32mp1.c
@@ -10,6 +10,7 @@
 #include <regmap.h>
 #include <spl.h>
 #include <syscon.h>
+#include <vsprintf.h>
 #include <linux/io.h>
 #include <linux/iopoll.h>
 #include <dt-bindings/clock/stm32mp1-clks.h>
diff --git a/drivers/clk/mpc83xx_clk.c b/drivers/clk/mpc83xx_clk.c
index 32d2db9eda..cbccda5594 100644
--- a/drivers/clk/mpc83xx_clk.c
+++ b/drivers/clk/mpc83xx_clk.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <clk-uclass.h>
 #include <dm.h>
+#include <vsprintf.h>
 #include <dm/lists.h>
 #include <dt-bindings/clk/mpc83xx-clk.h>
 #include <asm/arch/soc.h>
diff --git a/drivers/cpu/mpc83xx_cpu.c b/drivers/cpu/mpc83xx_cpu.c
index 7bc86bf9b2..1e58457742 100644
--- a/drivers/cpu/mpc83xx_cpu.c
+++ b/drivers/cpu/mpc83xx_cpu.c
@@ -9,6 +9,7 @@
 #include <clk.h>
 #include <cpu.h>
 #include <dm.h>
+#include <vsprintf.h>
 
 #include "mpc83xx_cpu.h"
 
diff --git a/include/common.h b/include/common.h
index d17a2b2642..f993e4bef3 100644
--- a/include/common.h
+++ b/include/common.h
@@ -310,9 +310,6 @@ int ulz4fn(const void *src, size_t srcn, void *dst, size_t *dstn);
 /* lib/vsprintf.c */
 #include <vsprintf.h>
 
-/* lib/strmhz.c */
-char *	strmhz(char *buf, unsigned long hz);
-
 /*
  * STDIO based functions (can always be used)
  */
diff --git a/include/vsprintf.h b/include/vsprintf.h
index d1740a378e..56844dd2de 100644
--- a/include/vsprintf.h
+++ b/include/vsprintf.h
@@ -212,4 +212,14 @@ void print_grouped_ull(unsigned long long int_val, int digits);
 
 bool str2off(const char *p, loff_t *num);
 bool str2long(const char *p, ulong *num);
+
+/**
+ * strmhz() - Convert a value to a Hz string
+ *
+ * This creates a string indicating the number of MHz of a value. For example,
+ * 2700000 produces "2.7".
+ * @buf: Buffer to hold output string, which must be large enough
+ * @hz: Value to convert
+ */
+char *strmhz(char *buf, unsigned long hz);
 #endif
diff --git a/lib/Makefile b/lib/Makefile
index d248d8626c..e15a189f65 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -109,12 +109,12 @@ ifeq ($(CONFIG_$(SPL_TPL_)BUILD),y)
 ifdef CONFIG_$(SPL_TPL_)USE_TINY_PRINTF
 obj-$(CONFIG_$(SPL_TPL_)SPRINTF) += tiny-printf.o
 else
-obj-$(CONFIG_$(SPL_TPL_)SPRINTF) += vsprintf.o strmhz.o
+obj-$(CONFIG_$(SPL_TPL_)SPRINTF) += vsprintf.o
 endif
 obj-$(CONFIG_$(SPL_TPL_)STRTO) += strto.o
 else
 # Main U-Boot always uses the full printf support
-obj-y += vsprintf.o strto.o strmhz.o
+obj-y += vsprintf.o strto.o
 endif
 
 subdir-ccflags-$(CONFIG_CC_OPTIMIZE_LIBS_FOR_SPEED) += -O2
diff --git a/lib/strmhz.c b/lib/strmhz.c
deleted file mode 100644
index 66afe91ab9..0000000000
--- a/lib/strmhz.c
+++ /dev/null
@@ -1,21 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * (C) Copyright 2002-2006
- * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
- */
-#include <common.h>
-
-char *strmhz (char *buf, unsigned long hz)
-{
-	long l, n;
-	long m;
-
-	n = DIV_ROUND_CLOSEST(hz, 1000) / 1000L;
-	l = sprintf (buf, "%ld", n);
-
-	hz -= n * 1000000L;
-	m = DIV_ROUND_CLOSEST(hz, 1000L);
-	if (m != 0)
-		sprintf (buf + l, ".%03ld", m);
-	return (buf);
-}
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index 425f2f53f7..c6467ecd5f 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -2,6 +2,8 @@
  *  linux/lib/vsprintf.c
  *
  *  Copyright (C) 1991, 1992  Linus Torvalds
+ * (C) Copyright 2000-2009
+ * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
  */
 
 /* vsprintf.c -- Lars Wirzenius & Linus Torvalds. */
@@ -17,6 +19,7 @@
 #include <div64.h>
 #include <hexdump.h>
 #include <stdarg.h>
+#include <vsprintf.h>
 #include <linux/ctype.h>
 #include <linux/err.h>
 #include <linux/types.h>
@@ -873,3 +876,19 @@ bool str2long(const char *p, ulong *num)
 	*num = simple_strtoul(p, &endptr, 16);
 	return *p != '\0' && *endptr == '\0';
 }
+
+char *strmhz(char *buf, unsigned long hz)
+{
+	long l, n;
+	long m;
+
+	n = DIV_ROUND_CLOSEST(hz, 1000) / 1000L;
+	l = sprintf(buf, "%ld", n);
+
+	hz -= n * 1000000L;
+	m = DIV_ROUND_CLOSEST(hz, 1000L);
+	if (m != 0)
+		sprintf(buf + l, ".%03ld", m);
+
+	return buf;
+}
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 13/42] common: Move env_get_ip() to net.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (11 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 12/42] Move strtomhz() to vsprintf.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 14/42] serial: usb: Correct the usbtty_...() prototypes Simon Glass
                   ` (28 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function relates to networking, so move it out of the common.h
header file.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 include/common.h |  4 ----
 include/net.h    | 21 ++++++++++++++++++++-
 2 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/include/common.h b/include/common.h
index f993e4bef3..4fda40cc1d 100644
--- a/include/common.h
+++ b/include/common.h
@@ -319,10 +319,6 @@ int	serial_printf (const char *fmt, ...)
 
 /* lib/net_utils.c */
 #include <net.h>
-static inline struct in_addr env_get_ip(char *var)
-{
-	return string_to_ip(env_get(var));
-}
 
 #include <bootstage.h>
 
diff --git a/include/net.h b/include/net.h
index d8d187d8af..11eca1bc6c 100644
--- a/include/net.h
+++ b/include/net.h
@@ -829,7 +829,13 @@ static inline void net_random_ethaddr(uchar *addr)
 /* Convert an IP address to a string */
 void ip_to_string(struct in_addr x, char *s);
 
-/* Convert a string to ip address */
+/**
+ * string_to_ip() - Convert a string to ip address
+ *
+ * @s: String to conver, in the format format a.b.c.d, where each value is a
+ *	decimal number from 0 to 255
+ * @return IP address, or 0 if invalid
+ */
 struct in_addr string_to_ip(const char *s);
 
 /* Convert a VLAN id to a string */
@@ -887,4 +893,17 @@ int update_tftp(ulong addr, char *interface, char *devstring);
  */
 void eth_parse_enetaddr(const char *addr, uint8_t *enetaddr);
 
+/**
+ * env_get_ip() - Convert an environment value to to an ip address
+ *
+ * @var: Environment variable to convert. The value of this variable must be
+ *	in the format format a.b.c.d, where each value is a decimal number from
+ *	0 to 255
+ * @return IP address, or 0 if invalid
+ */
+static inline struct in_addr env_get_ip(char *var)
+{
+	return string_to_ip(env_get(var));
+}
+
 #endif /* __NET_H__ */
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 14/42] serial: usb: Correct the usbtty_...() prototypes
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (12 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 13/42] common: Move env_get_ip() to net.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 15/42] common: Move serial_printf() to the serial header Simon Glass
                   ` (27 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

The function declarations in serial.h are not in sync with what is
currently used in usbtty. Fix this by updating the header and including
it, to help catch future such problems.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 drivers/serial/usbtty.c |  1 +
 include/serial.h        | 18 ++++++++++--------
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/drivers/serial/usbtty.c b/drivers/serial/usbtty.c
index 76d9c8a3a6..f1c1a260da 100644
--- a/drivers/serial/usbtty.c
+++ b/drivers/serial/usbtty.c
@@ -11,6 +11,7 @@
 #include <config.h>
 #include <circbuf.h>
 #include <env.h>
+#include <serial.h>
 #include <stdio_dev.h>
 #include <asm/unaligned.h>
 #include "usbtty.h"
diff --git a/include/serial.h b/include/serial.h
index c1368c68b6..38a1cc99ae 100644
--- a/include/serial.h
+++ b/include/serial.h
@@ -50,18 +50,20 @@ extern void serial_reinit_all(void);
 /* For usbtty */
 #ifdef CONFIG_USB_TTY
 
-extern int usbtty_getc(void);
-extern void usbtty_putc(const char c);
-extern void usbtty_puts(const char *str);
-extern int usbtty_tstc(void);
+struct stdio_dev;
+
+int usbtty_getc(struct stdio_dev *dev);
+void usbtty_putc(struct stdio_dev *dev, const char c);
+void usbtty_puts(struct stdio_dev *dev, const char *str);
+int usbtty_tstc(struct stdio_dev *dev);
 
 #else
 
 /* stubs */
-#define usbtty_getc() 0
-#define usbtty_putc(a)
-#define usbtty_puts(a)
-#define usbtty_tstc() 0
+#define usbtty_getc(dev) 0
+#define usbtty_putc(dev, a)
+#define usbtty_puts(dev, a)
+#define usbtty_tstc(dev) 0
 
 #endif /* CONFIG_USB_TTY */
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 15/42] common: Move serial_printf() to the serial header
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (13 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 14/42] serial: usb: Correct the usbtty_...() prototypes Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 16/42] common: Move serial functions out of common.h Simon Glass
                   ` (26 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Move this function header to serial.h since this function is clearly
related to serial. The function itself stays in console.c since we don't
have a single serial file. DM and non-DM each has a separate file so we
would have to either create a new common serial file, or repeat the
function in both serial.c and serial-uclass.c, neither of which seem
worthwhile.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 drivers/usb/gadget/core.c           |  1 +
 drivers/usb/gadget/designware_udc.c |  1 +
 drivers/usb/gadget/ep0.c            |  3 ++-
 drivers/usb/musb-new/omap2430.c     |  1 +
 drivers/usb/musb/musb_udc.c         |  1 +
 drivers/usb/musb/omap3.c            |  1 +
 include/common.h                    |  7 -------
 include/serial.h                    | 11 +++++++++++
 8 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/drivers/usb/gadget/core.c b/drivers/usb/gadget/core.c
index ffaf161fb7..7e1e51db96 100644
--- a/drivers/usb/gadget/core.c
+++ b/drivers/usb/gadget/core.c
@@ -16,6 +16,7 @@
  */
 
 #include <malloc.h>
+#include <serial.h>
 #include <usbdevice.h>
 
 #define MAX_INTERFACES 2
diff --git a/drivers/usb/gadget/designware_udc.c b/drivers/usb/gadget/designware_udc.c
index 432f312cee..70c5c678c3 100644
--- a/drivers/usb/gadget/designware_udc.c
+++ b/drivers/usb/gadget/designware_udc.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <serial.h>
 #include <asm/io.h>
 
 #include <env.h>
diff --git a/drivers/usb/gadget/ep0.c b/drivers/usb/gadget/ep0.c
index a36d9ec03d..6fabee24ce 100644
--- a/drivers/usb/gadget/ep0.c
+++ b/drivers/usb/gadget/ep0.c
@@ -37,6 +37,7 @@
  */
 
 #include <common.h>
+#include <serial.h>
 #include <usbdevice.h>
 
 #if 0
@@ -581,7 +582,7 @@ int ep0_recv_setup (struct urb *urb)
 			device->interface = le16_to_cpu (request->wIndex);
 			device->alternate = le16_to_cpu (request->wValue);
 			/*dbg_ep0(2, "set interface: %d alternate: %d", device->interface, device->alternate); */
-			serial_printf ("DEVICE_SET_INTERFACE.. event?\n");
+			serial_printf("DEVICE_SET_INTERFACE.. event?\n");
 			return 0;
 
 		case USB_REQ_GET_STATUS:
diff --git a/drivers/usb/musb-new/omap2430.c b/drivers/usb/musb-new/omap2430.c
index cca1653f1e..05059ce3cb 100644
--- a/drivers/usb/musb-new/omap2430.c
+++ b/drivers/usb/musb-new/omap2430.c
@@ -10,6 +10,7 @@
  */
 #include <common.h>
 #include <dm.h>
+#include <serial.h>
 #include <dm/device-internal.h>
 #include <dm/lists.h>
 #include <linux/usb/otg.h>
diff --git a/drivers/usb/musb/musb_udc.c b/drivers/usb/musb/musb_udc.c
index 7620114bec..584564bac2 100644
--- a/drivers/usb/musb/musb_udc.c
+++ b/drivers/usb/musb/musb_udc.c
@@ -38,6 +38,7 @@
  */
 
 #include <common.h>
+#include <serial.h>
 #include <usbdevice.h>
 #include <usb/udc.h>
 #include "../gadget/ep0.h"
diff --git a/drivers/usb/musb/omap3.c b/drivers/usb/musb/omap3.c
index b2e4c32baf..080bd78523 100644
--- a/drivers/usb/musb/omap3.c
+++ b/drivers/usb/musb/omap3.c
@@ -16,6 +16,7 @@
  * ------------------------------------------------------------------------
  */
 
+#include <serial.h>
 #include <asm/omap_common.h>
 #include <twl4030.h>
 #include <twl6030.h>
diff --git a/include/common.h b/include/common.h
index 4fda40cc1d..f97a7b6e14 100644
--- a/include/common.h
+++ b/include/common.h
@@ -310,13 +310,6 @@ int ulz4fn(const void *src, size_t srcn, void *dst, size_t *dstn);
 /* lib/vsprintf.c */
 #include <vsprintf.h>
 
-/*
- * STDIO based functions (can always be used)
- */
-/* serial stuff */
-int	serial_printf (const char *fmt, ...)
-		__attribute__ ((format (__printf__, 1, 2)));
-
 /* lib/net_utils.c */
 #include <net.h>
 
diff --git a/include/serial.h b/include/serial.h
index 38a1cc99ae..8d1803c800 100644
--- a/include/serial.h
+++ b/include/serial.h
@@ -324,4 +324,15 @@ void pl01x_serial_initialize(void);
 void pxa_serial_initialize(void);
 void sh_serial_initialize(void);
 
+/**
+ * serial_printf() - Write a formatted string to the serial console
+ *
+ * The total size of the output must be less than CONFIG_SYS_PBSIZE.
+ *
+ * @fmt: Printf format string, followed by format arguments
+ * @return number of characters written
+ */
+int serial_printf(const char *fmt, ...)
+		__attribute__ ((format (__printf__, 1, 2)));
+
 #endif
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 16/42] common: Move serial functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (14 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 15/42] common: Move serial_printf() to the serial header Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 17/42] common: Add a new lz4.h header file Simon Glass
                   ` (25 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions belong in serial.h so move them over.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm926ejs/mxs/spl_boot.c      | 1 +
 board/amarula/vyasa-rk3288/vyasa-rk3288.c  | 1 +
 board/astro/mcf5373l/mcf5373l.c            | 1 +
 board/birdland/bav335x/board.c             | 1 +
 board/bticino/mamoj/spl.c                  | 1 +
 board/cssi/MCR3000/MCR3000.c               | 1 +
 board/engicam/common/spl.c                 | 1 +
 board/esd/meesc/meesc.c                    | 1 +
 board/gumstix/pepper/board.c               | 1 +
 board/isee/igep003x/board.c                | 1 +
 board/isee/igep00x0/spl.c                  | 1 +
 board/liebherr/display5/spl.c              | 1 +
 board/liebherr/mccmon6/mccmon6.c           | 1 +
 board/liebherr/mccmon6/spl.c               | 1 +
 board/logicpd/am3517evm/am3517evm.c        | 1 +
 board/logicpd/imx6/imx6logic.c             | 1 +
 board/logicpd/omap3som/omap3logic.c        | 1 +
 board/overo/common.c                       | 1 +
 board/siemens/common/board.c               | 1 +
 board/silica/pengwyn/board.c               | 1 +
 board/st/stm32f746-disco/stm32f746-disco.c | 1 +
 board/tcl/sl50/board.c                     | 1 +
 board/ti/am57xx/board.c                    | 1 +
 board/ti/beagle/beagle.c                   | 1 +
 board/ti/dra7xx/evm.c                      | 1 +
 board/ti/evm/evm.c                         | 1 +
 board/vscom/baltos/board.c                 | 1 +
 cmd/load.c                                 | 1 +
 common/board_f.c                           | 1 +
 common/kgdb_stubs.c                        | 1 +
 common/lcd_console.c                       | 1 +
 common/spl/spl.c                           | 1 +
 include/common.h                           | 9 ---------
 include/serial.h                           | 8 ++++++++
 34 files changed, 40 insertions(+), 9 deletions(-)

diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
index cb361ac65c..5b3b51ce15 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <config.h>
+#include <serial.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/amarula/vyasa-rk3288/vyasa-rk3288.c b/board/amarula/vyasa-rk3288/vyasa-rk3288.c
index baf197c485..92e0698c53 100644
--- a/board/amarula/vyasa-rk3288/vyasa-rk3288.c
+++ b/board/amarula/vyasa-rk3288/vyasa-rk3288.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <serial.h>
 
 #ifndef CONFIG_TPL_BUILD
 
diff --git a/board/astro/mcf5373l/mcf5373l.c b/board/astro/mcf5373l/mcf5373l.c
index 759ff49562..db157a83c8 100644
--- a/board/astro/mcf5373l/mcf5373l.c
+++ b/board/astro/mcf5373l/mcf5373l.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <serial.h>
 #include <watchdog.h>
 #include <command.h>
 #include <asm/m5329.h>
diff --git a/board/birdland/bav335x/board.c b/board/birdland/bav335x/board.c
index 8811583ac6..1f3f44a867 100644
--- a/board/birdland/bav335x/board.c
+++ b/board/birdland/bav335x/board.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/bticino/mamoj/spl.c b/board/bticino/mamoj/spl.c
index c53bdce0ce..620e4d1de0 100644
--- a/board/bticino/mamoj/spl.c
+++ b/board/bticino/mamoj/spl.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <serial.h>
 #include <spl.h>
 
 #include <asm/io.h>
diff --git a/board/cssi/MCR3000/MCR3000.c b/board/cssi/MCR3000/MCR3000.c
index 445b84c180..dcd2c1c975 100644
--- a/board/cssi/MCR3000/MCR3000.c
+++ b/board/cssi/MCR3000/MCR3000.c
@@ -12,6 +12,7 @@
 #include <hwconfig.h>
 #include <mpc8xx.h>
 #include <fdt_support.h>
+#include <serial.h>
 #include <asm/io.h>
 #include <dm/uclass.h>
 #include <wdt.h>
diff --git a/board/engicam/common/spl.c b/board/engicam/common/spl.c
index 4d293c8032..a9820a9028 100644
--- a/board/engicam/common/spl.c
+++ b/board/engicam/common/spl.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <serial.h>
 #include <spl.h>
 
 #include <asm/io.h>
diff --git a/board/esd/meesc/meesc.c b/board/esd/meesc/meesc.c
index 221048a91f..4271b0db19 100644
--- a/board/esd/meesc/meesc.c
+++ b/board/esd/meesc/meesc.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <serial.h>
 #include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
diff --git a/board/gumstix/pepper/board.c b/board/gumstix/pepper/board.c
index f5beb8c940..65e5e1e60f 100644
--- a/board/gumstix/pepper/board.c
+++ b/board/gumstix/pepper/board.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/isee/igep003x/board.c b/board/isee/igep003x/board.c
index a8c2b121a4..d59121296e 100644
--- a/board/isee/igep003x/board.c
+++ b/board/isee/igep003x/board.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/isee/igep00x0/spl.c b/board/isee/igep00x0/spl.c
index e092e1a418..f814fe1354 100644
--- a/board/isee/igep00x0/spl.c
+++ b/board/isee/igep00x0/spl.c
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0+
 
+#include <serial.h>
 #include <asm/io.h>
 #include <asm/arch/mem.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/liebherr/display5/spl.c b/board/liebherr/display5/spl.c
index 311edaf939..e845edf068 100644
--- a/board/liebherr/display5/spl.c
+++ b/board/liebherr/display5/spl.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <serial.h>
 #include <spl.h>
 #include <linux/libfdt.h>
 #include <asm/io.h>
diff --git a/board/liebherr/mccmon6/mccmon6.c b/board/liebherr/mccmon6/mccmon6.c
index 6a5fbbb8e6..c7af73ff71 100644
--- a/board/liebherr/mccmon6/mccmon6.c
+++ b/board/liebherr/mccmon6/mccmon6.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <serial.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/liebherr/mccmon6/spl.c b/board/liebherr/mccmon6/spl.c
index fc5f5e948c..08d2b56d54 100644
--- a/board/liebherr/mccmon6/spl.c
+++ b/board/liebherr/mccmon6/spl.c
@@ -18,6 +18,7 @@
 #include <asm/arch/crm_regs.h>
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
+#include <serial.h>
 #include <spl.h>
 
 #include <asm/arch/mx6-ddr.h>
diff --git a/board/logicpd/am3517evm/am3517evm.c b/board/logicpd/am3517evm/am3517evm.c
index 95c4cfc75d..18f3c3f9d9 100644
--- a/board/logicpd/am3517evm/am3517evm.c
+++ b/board/logicpd/am3517evm/am3517evm.c
@@ -13,6 +13,7 @@
 #include <common.h>
 #include <dm.h>
 #include <ns16550.h>
+#include <serial.h>
 #include <asm/io.h>
 #include <asm/omap_musb.h>
 #include <asm/arch/am35x_def.h>
diff --git a/board/logicpd/imx6/imx6logic.c b/board/logicpd/imx6/imx6logic.c
index 3c1a3a9fa2..0ea24c0870 100644
--- a/board/logicpd/imx6/imx6logic.c
+++ b/board/logicpd/imx6/imx6logic.c
@@ -14,6 +14,7 @@
 #include <input.h>
 #include <mmc.h>
 #include <fsl_esdhc_imx.h>
+#include <serial.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <linux/sizes.h>
diff --git a/board/logicpd/omap3som/omap3logic.c b/board/logicpd/omap3som/omap3logic.c
index 43f049e592..2f93248391 100644
--- a/board/logicpd/omap3som/omap3logic.c
+++ b/board/logicpd/omap3som/omap3logic.c
@@ -17,6 +17,7 @@
 #include <flash.h>
 #include <nand.h>
 #include <i2c.h>
+#include <serial.h>
 #include <twl4030.h>
 #include <asm/io.h>
 #include <asm/arch/mmc_host_def.h>
diff --git a/board/overo/common.c b/board/overo/common.c
index 2c4f412e5d..67823e68b6 100644
--- a/board/overo/common.c
+++ b/board/overo/common.c
@@ -11,6 +11,7 @@
  * (C) Copyright 2004-2008
  * Texas Instruments, <www.ti.com>
  */
+#include <serial.h>
 #include <twl4030.h>
 #include <common.h>
 #include <asm/io.h>
diff --git a/board/siemens/common/board.c b/board/siemens/common/board.c
index 75462d1c34..5f5e2eb544 100644
--- a/board/siemens/common/board.c
+++ b/board/siemens/common/board.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/silica/pengwyn/board.c b/board/silica/pengwyn/board.c
index 345701fd52..c0496c549a 100644
--- a/board/silica/pengwyn/board.c
+++ b/board/silica/pengwyn/board.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <serial.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/ddr_defs.h>
diff --git a/board/st/stm32f746-disco/stm32f746-disco.c b/board/st/stm32f746-disco/stm32f746-disco.c
index e89ed2153b..5be60af18c 100644
--- a/board/st/stm32f746-disco/stm32f746-disco.c
+++ b/board/st/stm32f746-disco/stm32f746-disco.c
@@ -10,6 +10,7 @@
 #include <miiphy.h>
 #include <phy_interface.h>
 #include <ram.h>
+#include <serial.h>
 #include <spl.h>
 #include <splash.h>
 #include <st_logo_data.h>
diff --git a/board/tcl/sl50/board.c b/board/tcl/sl50/board.c
index c7eed31946..a958827507 100644
--- a/board/tcl/sl50/board.c
+++ b/board/tcl/sl50/board.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/ti/am57xx/board.c b/board/ti/am57xx/board.c
index 237a834c53..8d1f38971c 100644
--- a/board/ti/am57xx/board.c
+++ b/board/ti/am57xx/board.c
@@ -11,6 +11,7 @@
 #include <env.h>
 #include <palmas.h>
 #include <sata.h>
+#include <serial.h>
 #include <usb.h>
 #include <asm/omap_common.h>
 #include <asm/omap_sec_common.h>
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
index 0138fc91fc..12e657c9c6 100644
--- a/board/ti/beagle/beagle.c
+++ b/board/ti/beagle/beagle.c
@@ -16,6 +16,7 @@
 #include <dm.h>
 #include <env.h>
 #include <ns16550.h>
+#include <serial.h>
 #ifdef CONFIG_LED_STATUS
 #include <status_led.h>
 #endif
diff --git a/board/ti/dra7xx/evm.c b/board/ti/dra7xx/evm.c
index 74d04bb1e3..ea8523541f 100644
--- a/board/ti/dra7xx/evm.c
+++ b/board/ti/dra7xx/evm.c
@@ -13,6 +13,7 @@
 #include <env.h>
 #include <palmas.h>
 #include <sata.h>
+#include <serial.h>
 #include <linux/string.h>
 #include <asm/gpio.h>
 #include <usb.h>
diff --git a/board/ti/evm/evm.c b/board/ti/evm/evm.c
index d0b9bafbd1..d26dd5ba84 100644
--- a/board/ti/evm/evm.c
+++ b/board/ti/evm/evm.c
@@ -15,6 +15,7 @@
 #include <env.h>
 #include <ns16550.h>
 #include <netdev.h>
+#include <serial.h>
 #include <asm/io.h>
 #include <asm/arch/mem.h>
 #include <asm/arch/mux.h>
diff --git a/board/vscom/baltos/board.c b/board/vscom/baltos/board.c
index 1ba58d0f11..588f6db172 100644
--- a/board/vscom/baltos/board.c
+++ b/board/vscom/baltos/board.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <serial.h>
 #include <linux/libfdt.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
diff --git a/cmd/load.c b/cmd/load.c
index 713fe56b55..5811a99310 100644
--- a/cmd/load.c
+++ b/cmd/load.c
@@ -14,6 +14,7 @@
 #include <s_record.h>
 #include <net.h>
 #include <exports.h>
+#include <serial.h>
 #include <xyzModem.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/common/board_f.c b/common/board_f.c
index e3591cbaeb..01044452bf 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -26,6 +26,7 @@
 #include <os.h>
 #include <post.h>
 #include <relocate.h>
+#include <serial.h>
 #ifdef CONFIG_SPL
 #include <spl.h>
 #endif
diff --git a/common/kgdb_stubs.c b/common/kgdb_stubs.c
index 5278209909..afa7d6403a 100644
--- a/common/kgdb_stubs.c
+++ b/common/kgdb_stubs.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <kgdb.h>
+#include <serial.h>
 
 int (*debugger_exception_handler)(struct pt_regs *);
 
diff --git a/common/lcd_console.c b/common/lcd_console.c
index 7d1f883013..d34bc2fa83 100644
--- a/common/lcd_console.c
+++ b/common/lcd_console.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <lcd.h>
+#include <serial.h>
 #include <video_font.h>		/* Get font data, width and height */
 #if defined(CONFIG_LCD_LOGO)
 #include <bmp_logo.h>
diff --git a/common/spl/spl.c b/common/spl/spl.c
index a2ef13a41c..82fd54c984 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -11,6 +11,7 @@
 #include <binman_sym.h>
 #include <dm.h>
 #include <handoff.h>
+#include <serial.h>
 #include <spl.h>
 #include <asm/u-boot.h>
 #include <nand.h>
diff --git a/include/common.h b/include/common.h
index f97a7b6e14..f433db17ae 100644
--- a/include/common.h
+++ b/include/common.h
@@ -238,15 +238,6 @@ void ft_pci_setup(void *blob, bd_t *bd);
 void smp_set_core_boot_addr(unsigned long addr, int corenr);
 void smp_kick_all_cpus(void);
 
-/* $(CPU)/serial.c */
-int	serial_init   (void);
-void	serial_setbrg (void);
-void	serial_putc   (const char);
-void	serial_putc_raw(const char);
-void	serial_puts   (const char *);
-int	serial_getc   (void);
-int	serial_tstc   (void);
-
 /* $(CPU)/speed.c */
 int	get_clocks (void);
 ulong	get_bus_freq  (ulong);
diff --git a/include/serial.h b/include/serial.h
index 8d1803c800..104f34ff91 100644
--- a/include/serial.h
+++ b/include/serial.h
@@ -335,4 +335,12 @@ void sh_serial_initialize(void);
 int serial_printf(const char *fmt, ...)
 		__attribute__ ((format (__printf__, 1, 2)));
 
+int serial_init(void);
+void serial_setbrg(void);
+void serial_putc(const char ch);
+void serial_putc_raw(const char ch);
+void serial_puts(const char *str);
+int serial_getc(void);
+int serial_tstc(void);
+
 #endif
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 17/42] common: Add a new lz4.h header file
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (15 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 16/42] common: Move serial functions out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 18/42] common: Move some time functions out of common.h Simon Glass
                   ` (24 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Add a header file to house the lz4 compression function. Add a comment
while we are here, since it not even clear from the name what the function
actuall does.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 common/image.c     |  1 +
 include/common.h   |  3 ---
 include/lz4.h      | 24 ++++++++++++++++++++++++
 lib/lz4_wrapper.c  |  1 +
 test/compression.c |  1 +
 5 files changed, 27 insertions(+), 3 deletions(-)
 create mode 100644 include/lz4.h

diff --git a/common/image.c b/common/image.c
index 992ebbad51..1c8ac2df70 100644
--- a/common/image.c
+++ b/common/image.c
@@ -20,6 +20,7 @@
 
 #include <gzip.h>
 #include <image.h>
+#include <lz4.h>
 #include <mapmem.h>
 
 #if IMAGE_ENABLE_FIT || IMAGE_ENABLE_OF_LIBFDT
diff --git a/include/common.h b/include/common.h
index f433db17ae..1e77ed393e 100644
--- a/include/common.h
+++ b/include/common.h
@@ -292,9 +292,6 @@ void	wait_ticks    (unsigned long);
 ulong	usec2ticks    (unsigned long usec);
 ulong	ticks2usec    (unsigned long ticks);
 
-/* lib/lz4_wrapper.c */
-int ulz4fn(const void *src, size_t srcn, void *dst, size_t *dstn);
-
 /* lib/uuid.c */
 #include <uuid.h>
 
diff --git a/include/lz4.h b/include/lz4.h
new file mode 100644
index 0000000000..1276fb98a3
--- /dev/null
+++ b/include/lz4.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright 2019 Google LLC
+ */
+
+#ifndef __LZ4_H
+#define __LZ4_H
+
+/**
+ * ulz4fn() - Decompress LZ4 data
+ *
+ * @src: Source data to decompress
+ * @srcn: Length of source data
+ * @dst: Destination for uncompressed data
+ * @dstn: Returns length of uncompressed data
+ * @return 0 if OK, -EPROTONOSUPPORT if the magic number or version number are
+ *	not recognised or independent blocks are used, -EINVAL if the reserved
+ *	fields are non-zero, or input is overrun, -EENOBUFS if the destination
+ *	buffer is overrun, -EEPROTO if the compressed data causes an error in
+ *	the decompression algorithm
+ */
+int ulz4fn(const void *src, size_t srcn, void *dst, size_t *dstn);
+
+#endif
diff --git a/lib/lz4_wrapper.c b/lib/lz4_wrapper.c
index 1c68e67452..1e1e8d5085 100644
--- a/lib/lz4_wrapper.c
+++ b/lib/lz4_wrapper.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <compiler.h>
 #include <image.h>
+#include <lz4.h>
 #include <linux/kernel.h>
 #include <linux/types.h>
 
diff --git a/test/compression.c b/test/compression.c
index 08fef59d0a..48dccc0e89 100644
--- a/test/compression.c
+++ b/test/compression.c
@@ -7,6 +7,7 @@
 #include <bootm.h>
 #include <command.h>
 #include <gzip.h>
+#include <lz4.h>
 #include <malloc.h>
 #include <mapmem.h>
 #include <asm/io.h>
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 18/42] common: Move some time functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (16 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 17/42] common: Add a new lz4.h header file Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 19/42] common: Move wait_ticks " Simon Glass
                   ` (23 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions belong in time.h so move them over and add comments.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/armv7/ls102xa/timer.c            |  1 +
 arch/arm/cpu/armv8/generic_timer.c            |  1 +
 arch/arm/mach-imx/syscounter.c                |  1 +
 arch/arm/mach-imx/timer.c                     |  1 +
 arch/m68k/lib/time.c                          |  1 +
 arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c |  1 +
 arch/powerpc/cpu/mpc8xxx/srio.c               |  1 +
 arch/powerpc/lib/time.c                       |  1 +
 drivers/crypto/fsl/jr.c                       |  1 +
 drivers/i2c/fsl_i2c.c                         |  1 +
 include/common.h                              |  4 ----
 include/time.h                                | 16 ++++++++++++++++
 12 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/arch/arm/cpu/armv7/ls102xa/timer.c b/arch/arm/cpu/armv7/ls102xa/timer.c
index e79360ada8..a5f4e31ac7 100644
--- a/arch/arm/cpu/armv7/ls102xa/timer.c
+++ b/arch/arm/cpu/armv7/ls102xa/timer.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <div64.h>
 #include <asm/arch/immap_ls102xa.h>
diff --git a/arch/arm/cpu/armv8/generic_timer.c b/arch/arm/cpu/armv8/generic_timer.c
index c1706dcec1..46e63294fe 100644
--- a/arch/arm/cpu/armv8/generic_timer.c
+++ b/arch/arm/cpu/armv8/generic_timer.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <time.h>
 #include <asm/system.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-imx/syscounter.c b/arch/arm/mach-imx/syscounter.c
index c888a93938..5a292c3964 100644
--- a/arch/arm/mach-imx/syscounter.c
+++ b/arch/arm/mach-imx/syscounter.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <div64.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/mach-imx/timer.c b/arch/arm/mach-imx/timer.c
index ed5eb1c8a7..5fe5c51f6a 100644
--- a/arch/arm/mach-imx/timer.c
+++ b/arch/arm/mach-imx/timer.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <div64.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/m68k/lib/time.c b/arch/m68k/lib/time.c
index a6345a0bc9..c76c5fedc9 100644
--- a/arch/m68k/lib/time.c
+++ b/arch/m68k/lib/time.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 
 #include <asm/timer.h>
 #include <asm/immap.h>
diff --git a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c
index fcfa730233..ebdcd29c13 100644
--- a/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c
+++ b/arch/powerpc/cpu/mpc85xx/fsl_corenet_serdes.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <time.h>
 #ifdef CONFIG_SYS_P4080_ERRATUM_SERDES8
 #include <hwconfig.h>
 #endif
diff --git a/arch/powerpc/cpu/mpc8xxx/srio.c b/arch/powerpc/cpu/mpc8xxx/srio.c
index ea7dac6e66..a1f9403559 100644
--- a/arch/powerpc/cpu/mpc8xxx/srio.c
+++ b/arch/powerpc/cpu/mpc8xxx/srio.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <config.h>
+#include <time.h>
 #include <asm/fsl_law.h>
 #include <asm/fsl_serdes.h>
 #include <asm/fsl_srio.h>
diff --git a/arch/powerpc/lib/time.c b/arch/powerpc/lib/time.c
index a22a73abfa..e1494fa129 100644
--- a/arch/powerpc/lib/time.c
+++ b/arch/powerpc/lib/time.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 
 /* ------------------------------------------------------------------------- */
diff --git a/drivers/crypto/fsl/jr.c b/drivers/crypto/fsl/jr.c
index 3121762364..1ea9db6850 100644
--- a/drivers/crypto/fsl/jr.c
+++ b/drivers/crypto/fsl/jr.c
@@ -11,6 +11,7 @@
 #include "jr.h"
 #include "jobdesc.h"
 #include "desc_constr.h"
+#include <time.h>
 #ifdef CONFIG_FSL_CORENET
 #include <asm/fsl_pamu.h>
 #endif
diff --git a/drivers/i2c/fsl_i2c.c b/drivers/i2c/fsl_i2c.c
index bf8d52d5ad..bbbd6ef5bf 100644
--- a/drivers/i2c/fsl_i2c.c
+++ b/drivers/i2c/fsl_i2c.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <command.h>
 #include <i2c.h>		/* Functional interface */
+#include <time.h>
 #include <asm/io.h>
 #include <asm/fsl_i2c.h>	/* HW definitions */
 #include <clk.h>
diff --git a/include/common.h b/include/common.h
index 1e77ed393e..20d143deb8 100644
--- a/include/common.h
+++ b/include/common.h
@@ -288,10 +288,6 @@ int cleanup_before_linux_select(int flags);
 uint64_t get_ticks(void);
 void	wait_ticks    (unsigned long);
 
-/* arch/$(ARCH)/lib/time.c */
-ulong	usec2ticks    (unsigned long usec);
-ulong	ticks2usec    (unsigned long ticks);
-
 /* lib/uuid.c */
 #include <uuid.h>
 
diff --git a/include/time.h b/include/time.h
index a1149522ed..a1bdefc164 100644
--- a/include/time.h
+++ b/include/time.h
@@ -70,4 +70,20 @@ uint64_t usec_to_tick(unsigned long usec);
 	(time_after_eq(a,b) && \
 	 time_before(a,c))
 
+/**
+ * usec2ticks() - Convert microseconds to internal ticks
+ *
+ * @usec: Value of microseconds to convert
+ * @return Corresponding internal ticks value, calculated using get_tbclk()
+ */
+ulong usec2ticks(unsigned long usec);
+
+/**
+ * ticks2usec() - Convert internal ticks to microseconds
+ *
+ * @ticks: Value of ticks to convert
+ * @return Corresponding microseconds value, calculated using get_tbclk()
+ */
+ulong ticks2usec(unsigned long ticks);
+
 #endif /* _TIME_H */
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 19/42] common: Move wait_ticks functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (17 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 18/42] common: Move some time functions out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-13 18:59   ` Tom Rini
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 20/42] arm: pxa: Drop pxa_wait_ticks() Simon Glass
                   ` (22 subsequent siblings)
  41 siblings, 1 reply; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function belongs in time.h so move it over and add a comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Drop include in pxa2xx.c since this is for pxa_wait_ticks()
- Update comment to wait_ticks() to indicate it is an internal function

Changes in v2: None

 drivers/timer/mpc83xx_timer.c |  1 +
 include/common.h              |  1 -
 include/time.h                | 10 ++++++++++
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/timer/mpc83xx_timer.c b/drivers/timer/mpc83xx_timer.c
index dfbc8672b2..69949d5333 100644
--- a/drivers/timer/mpc83xx_timer.c
+++ b/drivers/timer/mpc83xx_timer.c
@@ -9,6 +9,7 @@
 #include <clk.h>
 #include <dm.h>
 #include <status_led.h>
+#include <time.h>
 #include <timer.h>
 #include <watchdog.h>
 
diff --git a/include/common.h b/include/common.h
index 20d143deb8..091b54787f 100644
--- a/include/common.h
+++ b/include/common.h
@@ -286,7 +286,6 @@ int cleanup_before_linux_select(int flags);
 
 /* arch/$(ARCH)/lib/ticks.S */
 uint64_t get_ticks(void);
-void	wait_ticks    (unsigned long);
 
 /* lib/uuid.c */
 #include <uuid.h>
diff --git a/include/time.h b/include/time.h
index a1bdefc164..31d386729e 100644
--- a/include/time.h
+++ b/include/time.h
@@ -86,4 +86,14 @@ ulong usec2ticks(unsigned long usec);
  */
 ulong ticks2usec(unsigned long ticks);
 
+/**
+ * wait_ticks() - waits a given number of ticks
+ *
+ * This is an internal function typically used to implement udelay() and
+ * similar. Normally you should use udelay() or mdelay() instead.
+ *
+ * @ticks: Number of ticks to wait
+ */
+void wait_ticks(unsigned long ticks);
+
 #endif /* _TIME_H */
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 20/42] arm: pxa: Drop pxa_wait_ticks()
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (18 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 19/42] common: Move wait_ticks " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-13 19:00   ` Tom Rini
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 21/42] common: Move timer_get_us() function out of common.h Simon Glass
                   ` (21 subsequent siblings)
  41 siblings, 1 reply; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function has a similar name to the common wait_ticks(). It is only
used in one place and seems small enough to drop.

Inline it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Add new patch to inline pxa_wait_ticks()

Changes in v2: None

 arch/arm/cpu/pxa/pxa2xx.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/arch/arm/cpu/pxa/pxa2xx.c b/arch/arm/cpu/pxa/pxa2xx.c
index 0b28f0a3ef..14fe307c1a 100644
--- a/arch/arm/cpu/pxa/pxa2xx.c
+++ b/arch/arm/cpu/pxa/pxa2xx.c
@@ -39,13 +39,6 @@ int cleanup_before_linux(void)
 	return 0;
 }
 
-void pxa_wait_ticks(int ticks)
-{
-	writel(0, OSCR);
-	while (readl(OSCR) < ticks)
-		asm volatile("" : : : "memory");
-}
-
 inline void writelrb(uint32_t val, uint32_t addr)
 {
 	writel(val, addr);
@@ -136,8 +129,11 @@ void pxa2xx_dram_init(void)
 
 	writelrb(CONFIG_SYS_MDCNFG_VAL &
 		~(MDCNFG_DE0 | MDCNFG_DE1 | MDCNFG_DE2 | MDCNFG_DE3), MDCNFG);
+
 	/* Wait for the clock to the SDRAMs to stabilize, 100..200 usec. */
-	pxa_wait_ticks(0x300);
+	writel(0, OSCR);
+	while (readl(OSCR) < 0x300)
+		asm volatile("" : : : "memory");
 
 	/*
 	 * 8) Trigger a number (usually 8) refresh cycles by attempting
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 21/42] common: Move timer_get_us() function out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (19 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 20/42] arm: pxa: Drop pxa_wait_ticks() Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 22/42] common: Move get_ticks() " Simon Glass
                   ` (20 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function belongs in time.h so move it over and update the comment
style.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 include/common.h | 3 ---
 include/time.h   | 7 +++++++
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/include/common.h b/include/common.h
index 091b54787f..e68bed6407 100644
--- a/include/common.h
+++ b/include/common.h
@@ -251,9 +251,6 @@ void	irq_install_handler(int, interrupt_handler_t *, void *);
 void	irq_free_handler   (int);
 void	reset_timer	   (void);
 
-/* Return value of monotonic microsecond timer */
-unsigned long timer_get_us(void);
-
 void	enable_interrupts  (void);
 int	disable_interrupts (void);
 
diff --git a/include/time.h b/include/time.h
index 31d386729e..875a2b293e 100644
--- a/include/time.h
+++ b/include/time.h
@@ -96,4 +96,11 @@ ulong ticks2usec(unsigned long ticks);
  */
 void wait_ticks(unsigned long ticks);
 
+/**
+ * timer_get_us() - Get monotonic microsecond timer
+ *
+ * @return value of monotonic microsecond timer
+ */
+unsigned long timer_get_us(void);
+
 #endif /* _TIME_H */
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 22/42] common: Move get_ticks() function out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (20 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 21/42] common: Move timer_get_us() function out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 23/42] common: Move mii_init() " Simon Glass
                   ` (19 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function belongs in time.h so move it over and add a comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm920t/ep93xx/timer.c        |  1 +
 arch/arm/cpu/arm920t/imx/timer.c           |  1 +
 arch/arm/cpu/arm926ejs/armada100/timer.c   |  1 +
 arch/arm/cpu/arm926ejs/lpc32xx/timer.c     |  1 +
 arch/arm/cpu/arm926ejs/mx27/timer.c        |  1 +
 arch/arm/cpu/arm926ejs/mxs/timer.c         |  1 +
 arch/arm/cpu/arm926ejs/spear/timer.c       |  1 +
 arch/arm/cpu/armv7/arch_timer.c            |  1 +
 arch/arm/cpu/armv7/iproc-common/timer.c    |  1 +
 arch/arm/cpu/armv7/s5p-common/timer.c      |  1 +
 arch/arm/cpu/armv7/stv0991/timer.c         |  1 +
 arch/arm/cpu/armv7/sunxi/timer.c           |  1 +
 arch/arm/cpu/armv7/vf610/timer.c           |  1 +
 arch/arm/cpu/armv7m/systick-timer.c        |  1 +
 arch/arm/cpu/sa1100/timer.c                |  1 +
 arch/arm/mach-at91/arm920t/timer.c         |  1 +
 arch/arm/mach-davinci/timer.c              |  1 +
 arch/arm/mach-omap2/timer.c                |  1 +
 arch/arm/mach-orion5x/timer.c              |  1 +
 arch/arm/mach-rmobile/timer.c              |  1 +
 arch/arm/mach-socfpga/clock_manager_gen5.c |  1 +
 arch/arm/mach-sunxi/dram_helpers.c         |  1 +
 arch/arm/mach-sunxi/p2wi.c                 |  1 +
 arch/arm/mach-sunxi/rsb.c                  |  1 +
 arch/arm/mach-tegra/clock.c                |  1 +
 arch/microblaze/cpu/timer.c                |  1 +
 arch/mips/mach-jz47xx/jz4780/timer.c       |  1 +
 arch/nds32/cpu/n1213/ag101/timer.c         |  1 +
 arch/sh/lib/time_sh2.c                     |  1 +
 arch/xtensa/lib/time.c                     |  1 +
 board/armltd/integrator/timer.c            |  1 +
 board/broadcom/bcmstb/bcmstb.c             |  1 +
 board/xilinx/versal/board.c                |  1 +
 common/autoboot.c                          |  1 +
 common/bootretry.c                         |  1 +
 common/cli_readline.c                      |  1 +
 common/iotrace.c                           |  1 +
 drivers/clk/clk_stm32mp1.c                 |  1 +
 drivers/mailbox/mailbox-uclass.c           |  1 +
 drivers/misc/tegra186_bpmp.c               |  1 +
 drivers/mmc/bcm2835_sdhci.c                |  1 +
 drivers/mmc/mxcmmc.c                       |  1 +
 drivers/net/pic32_eth.c                    |  1 +
 drivers/nvme/nvme.c                        |  1 +
 drivers/power/pmic/stpmic1.c               |  1 +
 drivers/sound/broadwell_i2s.c              |  1 +
 drivers/spi/ath79_spi.c                    |  1 +
 drivers/spi/exynos_spi.c                   |  1 +
 drivers/spi/rk_spi.c                       |  1 +
 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/uniphier_spi.c                 |  1 +
 drivers/spi/zynq_spi.c                     |  1 +
 drivers/timer/tsc_timer.c                  |  1 +
 drivers/video/sunxi/sunxi_display.c        |  1 +
 drivers/video/sunxi/sunxi_dw_hdmi.c        |  1 +
 include/common.h                           |  7 ++-----
 include/time.h                             | 10 ++++++++++
 lib/efi_loader/efi_boottime.c              |  1 +
 lib/efi_loader/efi_console.c               |  1 +
 lib/time.c                                 |  1 +
 lib/trace.c                                |  1 +
 lib/uuid.c                                 |  1 +
 net/nfs.c                                  |  1 +
 post/post.c                                |  1 +
 test/time_ut.c                             |  1 +
 68 files changed, 78 insertions(+), 5 deletions(-)

diff --git a/arch/arm/cpu/arm920t/ep93xx/timer.c b/arch/arm/cpu/arm920t/ep93xx/timer.c
index 49bf49bbd3..4829c996be 100644
--- a/arch/arm/cpu/arm920t/ep93xx/timer.c
+++ b/arch/arm/cpu/arm920t/ep93xx/timer.c
@@ -12,6 +12,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <linux/types.h>
 #include <asm/arch/ep93xx.h>
 #include <asm/io.h>
diff --git a/arch/arm/cpu/arm920t/imx/timer.c b/arch/arm/cpu/arm920t/imx/timer.c
index 96fff3f683..17081ddb6d 100644
--- a/arch/arm/cpu/arm920t/imx/timer.c
+++ b/arch/arm/cpu/arm920t/imx/timer.c
@@ -13,6 +13,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #if defined (CONFIG_IMX)
 
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/cpu/arm926ejs/armada100/timer.c b/arch/arm/cpu/arm926ejs/armada100/timer.c
index d2ecbd07e2..6c6948a8ef 100644
--- a/arch/arm/cpu/arm926ejs/armada100/timer.c
+++ b/arch/arm/cpu/arm926ejs/armada100/timer.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/armada100.h>
 
diff --git a/arch/arm/cpu/arm926ejs/lpc32xx/timer.c b/arch/arm/cpu/arm926ejs/lpc32xx/timer.c
index b3ca686040..3a896d10ca 100644
--- a/arch/arm/cpu/arm926ejs/lpc32xx/timer.c
+++ b/arch/arm/cpu/arm926ejs/lpc32xx/timer.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/timer.h>
diff --git a/arch/arm/cpu/arm926ejs/mx27/timer.c b/arch/arm/cpu/arm926ejs/mx27/timer.c
index 94b5d454e9..f51f0df8ec 100644
--- a/arch/arm/cpu/arm926ejs/mx27/timer.c
+++ b/arch/arm/cpu/arm926ejs/mx27/timer.c
@@ -17,6 +17,7 @@
 
 #include <common.h>
 #include <div64.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 
diff --git a/arch/arm/cpu/arm926ejs/mxs/timer.c b/arch/arm/cpu/arm926ejs/mxs/timer.c
index 7492ba46dc..226401dd6e 100644
--- a/arch/arm/cpu/arm926ejs/mxs/timer.c
+++ b/arch/arm/cpu/arm926ejs/mxs/timer.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/arch/arm/cpu/arm926ejs/spear/timer.c b/arch/arm/cpu/arm926ejs/spear/timer.c
index e7b5bda1bc..28c09e9fd6 100644
--- a/arch/arm/cpu/arm926ejs/spear/timer.c
+++ b/arch/arm/cpu/arm926ejs/spear/timer.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/spr_gpt.h>
diff --git a/arch/arm/cpu/armv7/arch_timer.c b/arch/arm/cpu/armv7/arch_timer.c
index 5de63053d5..2eb571050a 100644
--- a/arch/arm/cpu/armv7/arch_timer.c
+++ b/arch/arm/cpu/armv7/arch_timer.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <div64.h>
 #include <bootstage.h>
diff --git a/arch/arm/cpu/armv7/iproc-common/timer.c b/arch/arm/cpu/armv7/iproc-common/timer.c
index aaa767db13..668b5e11a6 100644
--- a/arch/arm/cpu/armv7/iproc-common/timer.c
+++ b/arch/arm/cpu/armv7/iproc-common/timer.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <div64.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/iproc-common/timer.h>
 #include <asm/iproc-common/sysmap.h>
diff --git a/arch/arm/cpu/armv7/s5p-common/timer.c b/arch/arm/cpu/armv7/s5p-common/timer.c
index 0048cd8067..e54cfb06dc 100644
--- a/arch/arm/cpu/armv7/s5p-common/timer.c
+++ b/arch/arm/cpu/armv7/s5p-common/timer.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <div64.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/pwm.h>
 #include <asm/arch/clk.h>
diff --git a/arch/arm/cpu/armv7/stv0991/timer.c b/arch/arm/cpu/armv7/stv0991/timer.c
index d1b763df8e..695bdd7a5c 100644
--- a/arch/arm/cpu/armv7/stv0991/timer.c
+++ b/arch/arm/cpu/armv7/stv0991/timer.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch-stv0991/hardware.h>
 #include <asm/arch-stv0991/stv0991_cgu.h>
diff --git a/arch/arm/cpu/armv7/sunxi/timer.c b/arch/arm/cpu/armv7/sunxi/timer.c
index 304c1ac5f9..6bda5fbbb6 100644
--- a/arch/arm/cpu/armv7/sunxi/timer.c
+++ b/arch/arm/cpu/armv7/sunxi/timer.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/timer.h>
 
diff --git a/arch/arm/cpu/armv7/vf610/timer.c b/arch/arm/cpu/armv7/vf610/timer.c
index 821a279b63..f858de953d 100644
--- a/arch/arm/cpu/armv7/vf610/timer.c
+++ b/arch/arm/cpu/armv7/vf610/timer.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <div64.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/cpu/armv7m/systick-timer.c b/arch/arm/cpu/armv7m/systick-timer.c
index d04f67ae16..5c310d306d 100644
--- a/arch/arm/cpu/armv7m/systick-timer.c
+++ b/arch/arm/cpu/armv7m/systick-timer.c
@@ -22,6 +22,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/cpu/sa1100/timer.c b/arch/arm/cpu/sa1100/timer.c
index 0fac5c1707..c6b1b2c177 100644
--- a/arch/arm/cpu/sa1100/timer.c
+++ b/arch/arm/cpu/sa1100/timer.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <SA-1100.h>
+#include <time.h>
 
 static ulong get_timer_masked (void)
 {
diff --git a/arch/arm/mach-at91/arm920t/timer.c b/arch/arm/mach-at91/arm920t/timer.c
index 6db541a7b3..3aef9538b4 100644
--- a/arch/arm/mach-at91/arm920t/timer.c
+++ b/arch/arm/mach-at91/arm920t/timer.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
diff --git a/arch/arm/mach-davinci/timer.c b/arch/arm/mach-davinci/timer.c
index 99f1eabf5f..9846463c60 100644
--- a/arch/arm/mach-davinci/timer.c
+++ b/arch/arm/mach-davinci/timer.c
@@ -21,6 +21,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/timer_defs.h>
 #include <div64.h>
diff --git a/arch/arm/mach-omap2/timer.c b/arch/arm/mach-omap2/timer.c
index 87b674e694..dbb68f718d 100644
--- a/arch/arm/mach-omap2/timer.c
+++ b/arch/arm/mach-omap2/timer.c
@@ -16,6 +16,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/clock.h>
diff --git a/arch/arm/mach-orion5x/timer.c b/arch/arm/mach-orion5x/timer.c
index 6aaf94ae08..9da9783822 100644
--- a/arch/arm/mach-orion5x/timer.c
+++ b/arch/arm/mach-orion5x/timer.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 
 #define UBOOT_CNTR	0	/* counter to use for uboot timer */
diff --git a/arch/arm/mach-rmobile/timer.c b/arch/arm/mach-rmobile/timer.c
index bf74955793..9fcab446a5 100644
--- a/arch/arm/mach-rmobile/timer.c
+++ b/arch/arm/mach-rmobile/timer.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <div64.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch-armv7/globaltimer.h>
 #include <asm/arch/rmobile.h>
diff --git a/arch/arm/mach-socfpga/clock_manager_gen5.c b/arch/arm/mach-socfpga/clock_manager_gen5.c
index 3a64600861..54a821a27f 100644
--- a/arch/arm/mach-socfpga/clock_manager_gen5.c
+++ b/arch/arm/mach-socfpga/clock_manager_gen5.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <dm.h>
 #include <asm/arch/clock_manager.h>
diff --git a/arch/arm/mach-sunxi/dram_helpers.c b/arch/arm/mach-sunxi/dram_helpers.c
index 239ab421a8..520b597fcc 100644
--- a/arch/arm/mach-sunxi/dram_helpers.c
+++ b/arch/arm/mach-sunxi/dram_helpers.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/barriers.h>
 #include <asm/io.h>
 #include <asm/arch/dram.h>
diff --git a/arch/arm/mach-sunxi/p2wi.c b/arch/arm/mach-sunxi/p2wi.c
index e84e1d8d5c..7c5c12254e 100644
--- a/arch/arm/mach-sunxi/p2wi.c
+++ b/arch/arm/mach-sunxi/p2wi.c
@@ -15,6 +15,7 @@
 
 #include <common.h>
 #include <errno.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/gpio.h>
diff --git a/arch/arm/mach-sunxi/rsb.c b/arch/arm/mach-sunxi/rsb.c
index 005ca58db5..01bb09b747 100644
--- a/arch/arm/mach-sunxi/rsb.c
+++ b/arch/arm/mach-sunxi/rsb.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <errno.h>
+#include <time.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/gpio.h>
 #include <asm/arch/prcm.h>
diff --git a/arch/arm/mach-tegra/clock.c b/arch/arm/mach-tegra/clock.c
index e539ad8b30..31b6aa2cfc 100644
--- a/arch/arm/mach-tegra/clock.c
+++ b/arch/arm/mach-tegra/clock.c
@@ -9,6 +9,7 @@
 #include <div64.h>
 #include <dm.h>
 #include <errno.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/tegra.h>
diff --git a/arch/microblaze/cpu/timer.c b/arch/microblaze/cpu/timer.c
index 58e5c30750..805eac7fa3 100644
--- a/arch/microblaze/cpu/timer.c
+++ b/arch/microblaze/cpu/timer.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <fdtdec.h>
+#include <time.h>
 #include <asm/microblaze_timer.h>
 #include <asm/microblaze_intc.h>
 
diff --git a/arch/mips/mach-jz47xx/jz4780/timer.c b/arch/mips/mach-jz47xx/jz4780/timer.c
index a689b9d71a..988ebd2671 100644
--- a/arch/mips/mach-jz47xx/jz4780/timer.c
+++ b/arch/mips/mach-jz47xx/jz4780/timer.c
@@ -9,6 +9,7 @@
 #include <config.h>
 #include <common.h>
 #include <div64.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/mipsregs.h>
 #include <mach/jz4780.h>
diff --git a/arch/nds32/cpu/n1213/ag101/timer.c b/arch/nds32/cpu/n1213/ag101/timer.c
index dfec5b3e96..cbfe07e351 100644
--- a/arch/nds32/cpu/n1213/ag101/timer.c
+++ b/arch/nds32/cpu/n1213/ag101/timer.c
@@ -9,6 +9,7 @@
  */
 #ifndef CONFIG_TIMER
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <faraday/fttmr010.h>
 
diff --git a/arch/sh/lib/time_sh2.c b/arch/sh/lib/time_sh2.c
index 14bef6b45b..d82c1d2feb 100644
--- a/arch/sh/lib/time_sh2.c
+++ b/arch/sh/lib/time_sh2.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/processor.h>
 
diff --git a/arch/xtensa/lib/time.c b/arch/xtensa/lib/time.c
index 81459b4c28..62bbe37b80 100644
--- a/arch/xtensa/lib/time.c
+++ b/arch/xtensa/lib/time.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <time.h>
 #include <asm/global_data.h>
 #include <linux/stringify.h>
 
diff --git a/board/armltd/integrator/timer.c b/board/armltd/integrator/timer.c
index 7ecfa49c70..e65ae997fd 100644
--- a/board/armltd/integrator/timer.c
+++ b/board/armltd/integrator/timer.c
@@ -18,6 +18,7 @@
 
 #include <common.h>
 #include <div64.h>
+#include <time.h>
 
 #ifdef CONFIG_ARCH_CINTEGRATOR
 #define DIV_CLOCK_INIT	1
diff --git a/board/broadcom/bcmstb/bcmstb.c b/board/broadcom/bcmstb/bcmstb.c
index 5fc2c0591b..23500dfa69 100644
--- a/board/broadcom/bcmstb/bcmstb.c
+++ b/board/broadcom/bcmstb/bcmstb.c
@@ -6,6 +6,7 @@
  * Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
  */
 
+#include <time.h>
 #include <linux/types.h>
 #include <common.h>
 #include <env.h>
diff --git a/board/xilinx/versal/board.c b/board/xilinx/versal/board.c
index abdd580c01..75056aa3d9 100644
--- a/board/xilinx/versal/board.c
+++ b/board/xilinx/versal/board.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <fdtdec.h>
 #include <malloc.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/sys_proto.h>
diff --git a/common/autoboot.c b/common/autoboot.c
index b28bd6823d..8faac2005d 100644
--- a/common/autoboot.c
+++ b/common/autoboot.c
@@ -15,6 +15,7 @@
 #include <memalign.h>
 #include <menu.h>
 #include <post.h>
+#include <time.h>
 #include <u-boot/sha256.h>
 #include <bootcount.h>
 
diff --git a/common/bootretry.c b/common/bootretry.c
index 47aaaa8220..dac891fbc5 100644
--- a/common/bootretry.c
+++ b/common/bootretry.c
@@ -9,6 +9,7 @@
 #include <cli.h>
 #include <env.h>
 #include <errno.h>
+#include <time.h>
 #include <watchdog.h>
 
 #ifndef CONFIG_BOOT_RETRY_MIN
diff --git a/common/cli_readline.c b/common/cli_readline.c
index ea510ed639..6ef7a3e564 100644
--- a/common/cli_readline.c
+++ b/common/cli_readline.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <bootretry.h>
 #include <cli.h>
+#include <time.h>
 #include <watchdog.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/common/iotrace.c b/common/iotrace.c
index ba955afc94..295ee07b72 100644
--- a/common/iotrace.c
+++ b/common/iotrace.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <mapmem.h>
+#include <time.h>
 #include <asm/io.h>
 #include <u-boot/crc.h>
 
diff --git a/drivers/clk/clk_stm32mp1.c b/drivers/clk/clk_stm32mp1.c
index e223f84eac..3718970dc7 100644
--- a/drivers/clk/clk_stm32mp1.c
+++ b/drivers/clk/clk_stm32mp1.c
@@ -10,6 +10,7 @@
 #include <regmap.h>
 #include <spl.h>
 #include <syscon.h>
+#include <time.h>
 #include <vsprintf.h>
 #include <linux/io.h>
 #include <linux/iopoll.h>
diff --git a/drivers/mailbox/mailbox-uclass.c b/drivers/mailbox/mailbox-uclass.c
index 9fdb6279e4..5968c9b7eb 100644
--- a/drivers/mailbox/mailbox-uclass.c
+++ b/drivers/mailbox/mailbox-uclass.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <mailbox.h>
 #include <mailbox-uclass.h>
+#include <time.h>
 
 static inline struct mbox_ops *mbox_dev_ops(struct udevice *dev)
 {
diff --git a/drivers/misc/tegra186_bpmp.c b/drivers/misc/tegra186_bpmp.c
index b3ed03e9da..89e27dd526 100644
--- a/drivers/misc/tegra186_bpmp.c
+++ b/drivers/misc/tegra186_bpmp.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <time.h>
 #include <dm/lists.h>
 #include <dm/root.h>
 #include <mailbox.h>
diff --git a/drivers/mmc/bcm2835_sdhci.c b/drivers/mmc/bcm2835_sdhci.c
index bc9ee95fd5..39c93db275 100644
--- a/drivers/mmc/bcm2835_sdhci.c
+++ b/drivers/mmc/bcm2835_sdhci.c
@@ -41,6 +41,7 @@
 #include <malloc.h>
 #include <memalign.h>
 #include <sdhci.h>
+#include <time.h>
 #include <asm/arch/msg.h>
 #include <asm/arch/mbox.h>
 #include <mach/sdhci.h>
diff --git a/drivers/mmc/mxcmmc.c b/drivers/mmc/mxcmmc.c
index dcf17c5d60..269882b202 100644
--- a/drivers/mmc/mxcmmc.c
+++ b/drivers/mmc/mxcmmc.c
@@ -23,6 +23,7 @@
 #include <part.h>
 #include <malloc.h>
 #include <mmc.h>
+#include <time.h>
 #include <linux/errno.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
diff --git a/drivers/net/pic32_eth.c b/drivers/net/pic32_eth.c
index 5c706c04c5..b0f7677154 100644
--- a/drivers/net/pic32_eth.c
+++ b/drivers/net/pic32_eth.c
@@ -9,6 +9,7 @@
 #include <net.h>
 #include <miiphy.h>
 #include <console.h>
+#include <time.h>
 #include <wait_bit.h>
 #include <asm/gpio.h>
 
diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c
index f915817aaa..cddcc2f11d 100644
--- a/drivers/nvme/nvme.c
+++ b/drivers/nvme/nvme.c
@@ -9,6 +9,7 @@
 #include <errno.h>
 #include <memalign.h>
 #include <pci.h>
+#include <time.h>
 #include <dm/device-internal.h>
 #include "nvme.h"
 
diff --git a/drivers/power/pmic/stpmic1.c b/drivers/power/pmic/stpmic1.c
index de31934f41..2297af4157 100644
--- a/drivers/power/pmic/stpmic1.c
+++ b/drivers/power/pmic/stpmic1.c
@@ -9,6 +9,7 @@
 #include <i2c.h>
 #include <misc.h>
 #include <sysreset.h>
+#include <time.h>
 #include <dm/device.h>
 #include <dm/lists.h>
 #include <power/pmic.h>
diff --git a/drivers/sound/broadwell_i2s.c b/drivers/sound/broadwell_i2s.c
index 998792b239..3d577401bd 100644
--- a/drivers/sound/broadwell_i2s.c
+++ b/drivers/sound/broadwell_i2s.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <dm.h>
 #include <i2s.h>
+#include <time.h>
 #include <asm/io.h>
 #include "broadwell_i2s.h"
 
diff --git a/drivers/spi/ath79_spi.c b/drivers/spi/ath79_spi.c
index 207069218f..0b8ebaabe9 100644
--- a/drivers/spi/ath79_spi.c
+++ b/drivers/spi/ath79_spi.c
@@ -8,6 +8,7 @@
 #include <dm.h>
 #include <div64.h>
 #include <errno.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
 #include <asm/types.h>
diff --git a/drivers/spi/exynos_spi.c b/drivers/spi/exynos_spi.c
index a9691c7603..d682a11013 100644
--- a/drivers/spi/exynos_spi.c
+++ b/drivers/spi/exynos_spi.c
@@ -10,6 +10,7 @@
 #include <malloc.h>
 #include <spi.h>
 #include <fdtdec.h>
+#include <time.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/cpu.h>
diff --git a/drivers/spi/rk_spi.c b/drivers/spi/rk_spi.c
index a68553b75b..c04535ac44 100644
--- a/drivers/spi/rk_spi.c
+++ b/drivers/spi/rk_spi.c
@@ -16,6 +16,7 @@
 #include <dt-structs.h>
 #include <errno.h>
 #include <spi.h>
+#include <time.h>
 #include <linux/errno.h>
 #include <asm/io.h>
 #include <asm/arch-rockchip/clock.h>
diff --git a/drivers/spi/tegra114_spi.c b/drivers/spi/tegra114_spi.c
index 5c35c22592..bb34b20f54 100644
--- a/drivers/spi/tegra114_spi.c
+++ b/drivers/spi/tegra114_spi.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch-tegra/clk_rst.h>
diff --git a/drivers/spi/tegra20_sflash.c b/drivers/spi/tegra20_sflash.c
index 567e33f156..0e68d33be6 100644
--- a/drivers/spi/tegra20_sflash.c
+++ b/drivers/spi/tegra20_sflash.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <dm.h>
 #include <errno.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/arch/clock.h>
diff --git a/drivers/spi/tegra20_slink.c b/drivers/spi/tegra20_slink.c
index d55e833cc2..ae2fc3e76d 100644
--- a/drivers/spi/tegra20_slink.c
+++ b/drivers/spi/tegra20_slink.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch-tegra/clk_rst.h>
diff --git a/drivers/spi/tegra210_qspi.c b/drivers/spi/tegra210_qspi.c
index e4b82767f8..d82ecaa61f 100644
--- a/drivers/spi/tegra210_qspi.c
+++ b/drivers/spi/tegra210_qspi.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch-tegra/clk_rst.h>
diff --git a/drivers/spi/uniphier_spi.c b/drivers/spi/uniphier_spi.c
index ef02d07aa4..e47b969864 100644
--- a/drivers/spi/uniphier_spi.c
+++ b/drivers/spi/uniphier_spi.c
@@ -7,6 +7,7 @@
 #include <clk.h>
 #include <common.h>
 #include <dm.h>
+#include <time.h>
 #include <linux/bitfield.h>
 #include <linux/io.h>
 #include <spi.h>
diff --git a/drivers/spi/zynq_spi.c b/drivers/spi/zynq_spi.c
index 2a02942d41..0b2b2f4810 100644
--- a/drivers/spi/zynq_spi.c
+++ b/drivers/spi/zynq_spi.c
@@ -10,6 +10,7 @@
 #include <dm.h>
 #include <malloc.h>
 #include <spi.h>
+#include <time.h>
 #include <asm/io.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/timer/tsc_timer.c b/drivers/timer/tsc_timer.c
index 637c8ff25a..0df551f94c 100644
--- a/drivers/timer/tsc_timer.c
+++ b/drivers/timer/tsc_timer.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <dm.h>
 #include <malloc.h>
+#include <time.h>
 #include <timer.h>
 #include <asm/cpu.h>
 #include <asm/io.h>
diff --git a/drivers/video/sunxi/sunxi_display.c b/drivers/video/sunxi/sunxi_display.c
index 46436b88c5..c45b3ebe6e 100644
--- a/drivers/video/sunxi/sunxi_display.c
+++ b/drivers/video/sunxi/sunxi_display.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <efi_loader.h>
+#include <time.h>
 
 #include <asm/arch/clock.h>
 #include <asm/arch/display.h>
diff --git a/drivers/video/sunxi/sunxi_dw_hdmi.c b/drivers/video/sunxi/sunxi_dw_hdmi.c
index 66a319187c..c87c919a52 100644
--- a/drivers/video/sunxi/sunxi_dw_hdmi.c
+++ b/drivers/video/sunxi/sunxi_dw_hdmi.c
@@ -10,6 +10,7 @@
 #include <dm.h>
 #include <dw_hdmi.h>
 #include <edid.h>
+#include <time.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/lcdc.h>
diff --git a/include/common.h b/include/common.h
index e68bed6407..cc5f13ec7e 100644
--- a/include/common.h
+++ b/include/common.h
@@ -3,8 +3,8 @@
  * Common header file for U-Boot
  *
  * This file still includes quite a bit of stuff that should be in separate
- * headers like command.h, cpu.h and timer.h. Please think before adding more
- * things. Patches to remove things are welcome.
+ * headers like command.h and cpu.h. Please think before adding more things.
+ * Patches to remove things are welcome.
  *
  * (C) Copyright 2000-2009
  * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
@@ -281,9 +281,6 @@ enum {
  */
 int cleanup_before_linux_select(int flags);
 
-/* arch/$(ARCH)/lib/ticks.S */
-uint64_t get_ticks(void);
-
 /* lib/uuid.c */
 #include <uuid.h>
 
diff --git a/include/time.h b/include/time.h
index 875a2b293e..71446c3171 100644
--- a/include/time.h
+++ b/include/time.h
@@ -103,4 +103,14 @@ void wait_ticks(unsigned long ticks);
  */
 unsigned long timer_get_us(void);
 
+/**
+ * get_ticks() - Get the current tick value
+ *
+ * This is an internal value used by the timer on the system. Ticks increase
+ * monotonically at the rate given by get_tbclk().
+ *
+ * @return current tick value
+ */
+uint64_t get_ticks(void);
+
 #endif /* _TIME_H */
diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
index ea52b9539d..265297ed46 100644
--- a/lib/efi_loader/efi_boottime.c
+++ b/lib/efi_loader/efi_boottime.c
@@ -9,6 +9,7 @@
 #include <div64.h>
 #include <efi_loader.h>
 #include <malloc.h>
+#include <time.h>
 #include <linux/libfdt_env.h>
 #include <u-boot/crc.h>
 #include <bootm.h>
diff --git a/lib/efi_loader/efi_console.c b/lib/efi_loader/efi_console.c
index a55e4b33ec..218f7caa12 100644
--- a/lib/efi_loader/efi_console.c
+++ b/lib/efi_loader/efi_console.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <charset.h>
+#include <time.h>
 #include <dm/device.h>
 #include <efi_loader.h>
 #include <env.h>
diff --git a/lib/time.c b/lib/time.c
index f30fc05804..75de48f900 100644
--- a/lib/time.c
+++ b/lib/time.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <dm.h>
 #include <errno.h>
+#include <time.h>
 #include <timer.h>
 #include <watchdog.h>
 #include <div64.h>
diff --git a/lib/trace.c b/lib/trace.c
index f2402b9359..6716c7c2f0 100644
--- a/lib/trace.c
+++ b/lib/trace.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <mapmem.h>
+#include <time.h>
 #include <trace.h>
 #include <asm/io.h>
 #include <asm/sections.h>
diff --git a/lib/uuid.c b/lib/uuid.c
index a48e19c06e..3d3c7abcae 100644
--- a/lib/uuid.c
+++ b/lib/uuid.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <time.h>
 #include <linux/ctype.h>
 #include <errno.h>
 #include <common.h>
diff --git a/net/nfs.c b/net/nfs.c
index aca0ca55f3..97e62f1dce 100644
--- a/net/nfs.c
+++ b/net/nfs.c
@@ -33,6 +33,7 @@
 #include <mapmem.h>
 #include "nfs.h"
 #include "bootp.h"
+#include <time.h>
 
 #define HASHES_PER_LINE 65	/* Number of "loading" hashes per line	*/
 #define NFS_RETRY_COUNT 30
diff --git a/post/post.c b/post/post.c
index fb751d9a83..f27138ddaa 100644
--- a/post/post.c
+++ b/post/post.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <env.h>
 #include <stdio_dev.h>
+#include <time.h>
 #include <watchdog.h>
 #include <div64.h>
 #include <post.h>
diff --git a/test/time_ut.c b/test/time_ut.c
index 28c934e426..40a19a50d9 100644
--- a/test/time_ut.c
+++ b/test/time_ut.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <command.h>
 #include <errno.h>
+#include <time.h>
 
 static int test_get_timer(void)
 {
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 23/42] common: Move mii_init() function out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (21 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 22/42] common: Move get_ticks() " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 24/42] common: Move some CPU functions " Simon Glass
                   ` (18 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function belongs in mii.h so move it over.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 1 +
 drivers/net/fsl_mcdmafec.c              | 1 +
 drivers/net/ldpaa_eth/ls1088a.c         | 1 +
 drivers/net/ldpaa_eth/lx2160a.c         | 1 +
 drivers/net/mcffec.c                    | 1 +
 drivers/net/mcfmii.c                    | 1 +
 drivers/net/mpc8xx_fec.c                | 1 +
 drivers/net/pic32_eth.c                 | 1 +
 include/common.h                        | 3 ---
 include/linux/mii.h                     | 2 ++
 10 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
index 59d03b167c..374fde6b65 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
@@ -39,6 +39,7 @@
 #include <fsl_validate.h>
 #endif
 #endif
+#include <linux/mii.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/drivers/net/fsl_mcdmafec.c b/drivers/net/fsl_mcdmafec.c
index e66fb16de8..b2936b78d7 100644
--- a/drivers/net/fsl_mcdmafec.c
+++ b/drivers/net/fsl_mcdmafec.c
@@ -14,6 +14,7 @@
 #include <config.h>
 #include <net.h>
 #include <miiphy.h>
+#include <linux/mii.h>
 
 #undef	ET_DEBUG
 #undef	MII_DEBUG
diff --git a/drivers/net/ldpaa_eth/ls1088a.c b/drivers/net/ldpaa_eth/ls1088a.c
index c3260d318c..54cb16e51b 100644
--- a/drivers/net/ldpaa_eth/ls1088a.c
+++ b/drivers/net/ldpaa_eth/ls1088a.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/soc.h>
+#include <linux/mii.h>
 
 u32 dpmac_to_devdisr[] = {
 	[WRIOP1_DPMAC1] = FSL_CHASSIS3_DEVDISR2_DPMAC1,
diff --git a/drivers/net/ldpaa_eth/lx2160a.c b/drivers/net/ldpaa_eth/lx2160a.c
index 1fbeb0d14b..9432b6eb85 100644
--- a/drivers/net/ldpaa_eth/lx2160a.c
+++ b/drivers/net/ldpaa_eth/lx2160a.c
@@ -8,6 +8,7 @@
 #include <asm/io.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/soc.h>
+#include <linux/mii.h>
 
 u32 dpmac_to_devdisr[] = {
 	[WRIOP1_DPMAC1] = FSL_CHASSIS3_DEVDISR2_DPMAC1,
diff --git a/drivers/net/mcffec.c b/drivers/net/mcffec.c
index fb93041256..9a3a8455a1 100644
--- a/drivers/net/mcffec.c
+++ b/drivers/net/mcffec.c
@@ -18,6 +18,7 @@
 
 #include <asm/fec.h>
 #include <asm/immap.h>
+#include <linux/mii.h>
 
 #undef	ET_DEBUG
 #undef	MII_DEBUG
diff --git a/drivers/net/mcfmii.c b/drivers/net/mcfmii.c
index 961618b410..b8af2cc44b 100644
--- a/drivers/net/mcfmii.c
+++ b/drivers/net/mcfmii.c
@@ -15,6 +15,7 @@
 #include <asm/fec.h>
 #endif
 #include <asm/immap.h>
+#include <linux/mii.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/drivers/net/mpc8xx_fec.c b/drivers/net/mpc8xx_fec.c
index f45f1e4677..0a80985192 100644
--- a/drivers/net/mpc8xx_fec.c
+++ b/drivers/net/mpc8xx_fec.c
@@ -13,6 +13,7 @@
 #include <asm/io.h>
 
 #include <phy.h>
+#include <linux/mii.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/drivers/net/pic32_eth.c b/drivers/net/pic32_eth.c
index b0f7677154..39c4b10ab8 100644
--- a/drivers/net/pic32_eth.c
+++ b/drivers/net/pic32_eth.c
@@ -12,6 +12,7 @@
 #include <time.h>
 #include <wait_bit.h>
 #include <asm/gpio.h>
+#include <linux/mii.h>
 
 #include "pic32_eth.h"
 
diff --git a/include/common.h b/include/common.h
index cc5f13ec7e..992675100d 100644
--- a/include/common.h
+++ b/include/common.h
@@ -254,9 +254,6 @@ void	reset_timer	   (void);
 void	enable_interrupts  (void);
 int	disable_interrupts (void);
 
-/* $(CPU)/.../<eth> */
-void mii_init (void);
-
 /* arch/$(ARCH)/lib/cache.c */
 void	enable_caches(void);
 void	flush_cache   (unsigned long, unsigned long);
diff --git a/include/linux/mii.h b/include/linux/mii.h
index 21db032340..49e29ac314 100644
--- a/include/linux/mii.h
+++ b/include/linux/mii.h
@@ -225,4 +225,6 @@ static inline u8 mii_resolve_flowctrl_fdx(u16 lcladv, u16 rmtadv)
 	return cap;
 }
 
+void mii_init(void);
+
 #endif /* __LINUX_MII_H__ */
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 24/42] common: Move some CPU functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (22 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 23/42] common: Move mii_init() " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 25/42] common: Drop cpu_init() Simon Glass
                   ` (17 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions belong in cpu_legacy.h since they do not use driver model.
Move them over. Don't bother adding comments since these functions should
be deleted.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/armv8/fsl-layerscape/cpu.c       |  1 +
 .../armv8/fsl-layerscape/fsl_lsch2_speed.c    |  1 +
 .../armv8/fsl-layerscape/fsl_lsch3_speed.c    |  1 +
 arch/arm/cpu/armv8/s32v234/cpu.c              |  1 +
 arch/powerpc/cpu/mpc85xx/speed.c              |  1 +
 arch/powerpc/cpu/mpc86xx/cpu.c                |  1 +
 arch/powerpc/cpu/mpc8xxx/cpu.c                |  1 +
 arch/powerpc/cpu/mpc8xxx/fdt.c                |  1 +
 board/freescale/qemu-ppce500/qemu-ppce500.c   |  1 +
 include/common.h                              | 20 -------------------
 include/cpu_legacy.h                          | 19 ++++++++++++++++++
 11 files changed, 28 insertions(+), 20 deletions(-)

diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
index 374fde6b65..e4e0ac888b 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 <cpu_legacy.h>
 #include <env.h>
 #include <fsl_ddr_sdram.h>
 #include <vsprintf.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 df4df9aca7..500c06642b 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/compiler.h>
 #include <asm/io.h>
 #include <asm/processor.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 bbd550b036..795528107e 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/compiler.h>
 #include <fsl_ifc.h>
 #include <asm/processor.h>
diff --git a/arch/arm/cpu/armv8/s32v234/cpu.c b/arch/arm/cpu/armv8/s32v234/cpu.c
index b4cb67a66a..bc4b8bf86f 100644
--- a/arch/arm/cpu/armv8/s32v234/cpu.c
+++ b/arch/arm/cpu/armv8/s32v234/cpu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/system.h>
 #include <asm/armv8/mmu.h>
diff --git a/arch/powerpc/cpu/mpc85xx/speed.c b/arch/powerpc/cpu/mpc85xx/speed.c
index acc2f2bb81..c6026f3381 100644
--- a/arch/powerpc/cpu/mpc85xx/speed.c
+++ b/arch/powerpc/cpu/mpc85xx/speed.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <ppc_asm.tmpl>
 #include <linux/compiler.h>
 #include <asm/processor.h>
diff --git a/arch/powerpc/cpu/mpc86xx/cpu.c b/arch/powerpc/cpu/mpc86xx/cpu.c
index 1c3c78217c..5ee3a56b47 100644
--- a/arch/powerpc/cpu/mpc86xx/cpu.c
+++ b/arch/powerpc/cpu/mpc86xx/cpu.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
diff --git a/arch/powerpc/cpu/mpc8xxx/cpu.c b/arch/powerpc/cpu/mpc8xxx/cpu.c
index 467eac4a2e..333dfa3090 100644
--- a/arch/powerpc/cpu/mpc8xxx/cpu.c
+++ b/arch/powerpc/cpu/mpc8xxx/cpu.c
@@ -10,6 +10,7 @@
 #include <config.h>
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <tsec.h>
 #include <fm_eth.h>
 #include <netdev.h>
diff --git a/arch/powerpc/cpu/mpc8xxx/fdt.c b/arch/powerpc/cpu/mpc8xxx/fdt.c
index 0d877c43be..40ee46c24a 100644
--- a/arch/powerpc/cpu/mpc8xxx/fdt.c
+++ b/arch/powerpc/cpu/mpc8xxx/fdt.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <asm/mp.h>
diff --git a/board/freescale/qemu-ppce500/qemu-ppce500.c b/board/freescale/qemu-ppce500/qemu-ppce500.c
index fb36d8366c..6814bed27c 100644
--- a/board/freescale/qemu-ppce500/qemu-ppce500.c
+++ b/board/freescale/qemu-ppce500/qemu-ppce500.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <pci.h>
 #include <asm/processor.h>
diff --git a/include/common.h b/include/common.h
index 992675100d..4de05032b2 100644
--- a/include/common.h
+++ b/include/common.h
@@ -203,26 +203,6 @@ void	relocate_code(ulong, gd_t *, ulong) __attribute__ ((noreturn));
 ulong	get_endaddr   (void);
 void	trap_init     (ulong);
 
-/* $(CPU)/cpu.c */
-static inline int cpumask_next(int cpu, unsigned int mask)
-{
-	for (cpu++; !((1 << cpu) & mask); cpu++)
-		;
-
-	return cpu;
-}
-
-#define for_each_cpu(iter, cpu, num_cpus, mask) \
-	for (iter = 0, cpu = cpumask_next(-1, mask); \
-		iter < num_cpus; \
-		iter++, cpu = cpumask_next(cpu, mask)) \
-
-int	cpu_numcores  (void);
-int	cpu_num_dspcores(void);
-u32	cpu_mask      (void);
-u32	cpu_dsp_mask(void);
-int	is_core_valid (unsigned int);
-
 void s_init(void);
 
 int	checkcpu      (void);
diff --git a/include/cpu_legacy.h b/include/cpu_legacy.h
index a99b69b976..75b93bc11e 100644
--- a/include/cpu_legacy.h
+++ b/include/cpu_legacy.h
@@ -20,4 +20,23 @@ int cpu_reset(u32 nr);
 int cpu_disable(u32 nr);
 int cpu_release(u32 nr, int argc, char * const argv[]);
 
+static inline int cpumask_next(int cpu, unsigned int mask)
+{
+	for (cpu++; !((1 << cpu) & mask); cpu++)
+		;
+
+	return cpu;
+}
+
+#define for_each_cpu(iter, cpu, num_cpus, mask) \
+	for (iter = 0, cpu = cpumask_next(-1, mask); \
+	     iter < num_cpus; \
+	     iter++, cpu = cpumask_next(cpu, mask)) \
+
+int cpu_numcores(void);
+int cpu_num_dspcores(void);
+u32 cpu_mask(void);
+u32 cpu_dsp_mask(void);
+int is_core_valid(unsigned int core);
+
 #endif
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 25/42] common: Drop cpu_init()
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (23 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 24/42] common: Move some CPU functions " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 26/42] common: Move checkcpu() out of common.h Simon Glass
                   ` (16 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function is not defined anywhere. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 include/common.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/include/common.h b/include/common.h
index 4de05032b2..ce08bfe11f 100644
--- a/include/common.h
+++ b/include/common.h
@@ -64,8 +64,6 @@ typedef void (interrupt_handler_t)(void *);
  */
 void	hang		(void) __attribute__ ((noreturn));
 
-int	cpu_init(void);
-
 #include <display_options.h>
 
 /* common/main.c */
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 26/42] common: Move checkcpu() out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (24 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 25/42] common: Drop cpu_init() Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 27/42] common: Move some SMP functions " Simon Glass
                   ` (15 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function belongs in cpu.h so move it over.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/powerpc/cpu/mpc83xx/cpu.c               |  1 +
 arch/powerpc/cpu/mpc8xx/cpu.c                |  1 +
 arch/sh/cpu/sh4/cpu.c                        |  1 +
 arch/x86/cpu/broadwell/cpu_from_spl.c        |  1 +
 arch/x86/cpu/coreboot/coreboot.c             |  1 +
 arch/x86/cpu/efi/app.c                       |  1 +
 arch/x86/cpu/efi/payload.c                   |  1 +
 arch/x86/cpu/ivybridge/cpu.c                 |  1 +
 arch/x86/cpu/qemu/qemu.c                     |  1 +
 arch/x86/cpu/quark/quark.c                   |  1 +
 arch/x86/cpu/slimbootloader/slimbootloader.c |  1 +
 arch/x86/cpu/tangier/tangier.c               |  1 +
 arch/x86/cpu/x86_64/cpu.c                    |  1 +
 arch/x86/lib/fsp/fsp_common.c                |  1 +
 common/board_f.c                             |  1 +
 include/common.h                             |  1 -
 include/cpu_legacy.h                         | 10 ++++++++++
 17 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/cpu/mpc83xx/cpu.c b/arch/powerpc/cpu/mpc83xx/cpu.c
index 363c0ffd28..1c0d0d2632 100644
--- a/arch/powerpc/cpu/mpc83xx/cpu.c
+++ b/arch/powerpc/cpu/mpc83xx/cpu.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
diff --git a/arch/powerpc/cpu/mpc8xx/cpu.c b/arch/powerpc/cpu/mpc8xx/cpu.c
index 6ad86e9a1d..36af7c1612 100644
--- a/arch/powerpc/cpu/mpc8xx/cpu.c
+++ b/arch/powerpc/cpu/mpc8xx/cpu.c
@@ -17,6 +17,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
diff --git a/arch/sh/cpu/sh4/cpu.c b/arch/sh/cpu/sh4/cpu.c
index a8b50a9ff5..d79e6ea71d 100644
--- a/arch/sh/cpu/sh4/cpu.c
+++ b/arch/sh/cpu/sh4/cpu.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu.h>
 #include <netdev.h>
 #include <asm/processor.h>
 
diff --git a/arch/x86/cpu/broadwell/cpu_from_spl.c b/arch/x86/cpu/broadwell/cpu_from_spl.c
index c3d4a8d547..feb0732ee9 100644
--- a/arch/x86/cpu/broadwell/cpu_from_spl.c
+++ b/arch/x86/cpu/broadwell/cpu_from_spl.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <bloblist.h>
+#include <cpu.h>
 #include <debug_uart.h>
 #include <handoff.h>
 #include <asm/mtrr.h>
diff --git a/arch/x86/cpu/coreboot/coreboot.c b/arch/x86/cpu/coreboot/coreboot.c
index 9686f8ed5b..67cfcb72d7 100644
--- a/arch/x86/cpu/coreboot/coreboot.c
+++ b/arch/x86/cpu/coreboot/coreboot.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <fdtdec.h>
 #include <usb.h>
 #include <asm/io.h>
diff --git a/arch/x86/cpu/efi/app.c b/arch/x86/cpu/efi/app.c
index ba7c02bd7e..34bdc40e39 100644
--- a/arch/x86/cpu/efi/app.c
+++ b/arch/x86/cpu/efi/app.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <fdtdec.h>
 #include <netdev.h>
 
diff --git a/arch/x86/cpu/efi/payload.c b/arch/x86/cpu/efi/payload.c
index 225aef7bf6..019e312527 100644
--- a/arch/x86/cpu/efi/payload.c
+++ b/arch/x86/cpu/efi/payload.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <efi.h>
 #include <errno.h>
 #include <usb.h>
diff --git a/arch/x86/cpu/ivybridge/cpu.c b/arch/x86/cpu/ivybridge/cpu.c
index 6db9da81b7..3dffc1697e 100644
--- a/arch/x86/cpu/ivybridge/cpu.c
+++ b/arch/x86/cpu/ivybridge/cpu.c
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <dm.h>
 #include <errno.h>
 #include <fdtdec.h>
diff --git a/arch/x86/cpu/qemu/qemu.c b/arch/x86/cpu/qemu/qemu.c
index 5e8b4f068e..c76868fa90 100644
--- a/arch/x86/cpu/qemu/qemu.c
+++ b/arch/x86/cpu/qemu/qemu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <pci.h>
 #include <qfw.h>
 #include <asm/irq.h>
diff --git a/arch/x86/cpu/quark/quark.c b/arch/x86/cpu/quark/quark.c
index d39edb2271..f598666a6b 100644
--- a/arch/x86/cpu/quark/quark.c
+++ b/arch/x86/cpu/quark/quark.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <mmc.h>
 #include <asm/io.h>
 #include <asm/ioapic.h>
diff --git a/arch/x86/cpu/slimbootloader/slimbootloader.c b/arch/x86/cpu/slimbootloader/slimbootloader.c
index e6b174ca88..16dd4d7381 100644
--- a/arch/x86/cpu/slimbootloader/slimbootloader.c
+++ b/arch/x86/cpu/slimbootloader/slimbootloader.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <asm/arch/slimbootloader.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/x86/cpu/tangier/tangier.c b/arch/x86/cpu/tangier/tangier.c
index df2c600be3..a758ac4f1e 100644
--- a/arch/x86/cpu/tangier/tangier.c
+++ b/arch/x86/cpu/tangier/tangier.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <asm/u-boot-x86.h>
 
 /*
diff --git a/arch/x86/cpu/x86_64/cpu.c b/arch/x86/cpu/x86_64/cpu.c
index 42abb23a9e..7d291f60f5 100644
--- a/arch/x86/cpu/x86_64/cpu.c
+++ b/arch/x86/cpu/x86_64/cpu.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu.h>
 #include <debug_uart.h>
 
 /*
diff --git a/arch/x86/lib/fsp/fsp_common.c b/arch/x86/lib/fsp/fsp_common.c
index 40ba866d77..89ad12d1f9 100644
--- a/arch/x86/lib/fsp/fsp_common.c
+++ b/arch/x86/lib/fsp/fsp_common.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <acpi_s3.h>
+#include <cpu.h>
 #include <dm.h>
 #include <errno.h>
 #include <rtc.h>
diff --git a/common/board_f.c b/common/board_f.c
index 01044452bf..5dcecd66d6 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -13,6 +13,7 @@
 #include <bloblist.h>
 #include <console.h>
 #include <cpu.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <env.h>
 #include <env_internal.h>
diff --git a/include/common.h b/include/common.h
index ce08bfe11f..96bb42ce71 100644
--- a/include/common.h
+++ b/include/common.h
@@ -203,7 +203,6 @@ void	trap_init     (ulong);
 
 void s_init(void);
 
-int	checkcpu      (void);
 int	checkicache   (void);
 int	checkdcache   (void);
 void	upmconfig     (unsigned int, unsigned int *, unsigned int);
diff --git a/include/cpu_legacy.h b/include/cpu_legacy.h
index 75b93bc11e..03feaa63e9 100644
--- a/include/cpu_legacy.h
+++ b/include/cpu_legacy.h
@@ -39,4 +39,14 @@ u32 cpu_mask(void);
 u32 cpu_dsp_mask(void);
 int is_core_valid(unsigned int core);
 
+/**
+ * checkcpu() - perform an early check of the CPU
+ *
+ * This is used on PowerPC, SH and X86 machines as a CPU init mechanism. It is
+ * called during the pre-relocation init sequence in board_init_f().
+ *
+ * @return 0 if oK, -ve on error
+ */
+int checkcpu(void);
+
 #endif
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 27/42] common: Move some SMP functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (25 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 26/42] common: Move checkcpu() out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 28/42] arm: powerpc: Tidy up code style for cache functions Simon Glass
                   ` (14 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions belong in cpu_legacy.h so move them over.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/armv7/ls102xa/cpu.c        | 1 +
 arch/arm/cpu/armv7/virt-v7.c            | 1 +
 arch/arm/lib/bootm.c                    | 1 +
 arch/arm/mach-uniphier/arm32/psci.c     | 1 +
 board/armltd/vexpress/vexpress_common.c | 1 +
 board/broadcom/bcm_ep/board.c           | 1 +
 board/samsung/arndale/arndale.c         | 1 +
 board/synopsys/axs10x/axs10x.c          | 1 +
 board/xilinx/zynqmp/zynqmp.c            | 1 +
 cmd/elf.c                               | 1 +
 include/common.h                        | 3 ---
 include/cpu_legacy.h                    | 3 +++
 12 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/arch/arm/cpu/armv7/ls102xa/cpu.c b/arch/arm/cpu/armv7/ls102xa/cpu.c
index ec9984db79..0c61f31516 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 <cpu_legacy.h>
 #include <vsprintf.h>
 #include <asm/arch/clock.h>
 #include <asm/io.h>
diff --git a/arch/arm/cpu/armv7/virt-v7.c b/arch/arm/cpu/armv7/virt-v7.c
index be14eb9376..1f01a7fd19 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 <cpu_legacy.h>
 #include <asm/armv7.h>
 #include <asm/gic.h>
 #include <asm/io.h>
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
index 488358a331..99e545e6d1 100644
--- a/arch/arm/lib/bootm.c
+++ b/arch/arm/lib/bootm.c
@@ -13,6 +13,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <dm/root.h>
 #include <env.h>
diff --git a/arch/arm/mach-uniphier/arm32/psci.c b/arch/arm/mach-uniphier/arm32/psci.c
index ef35923f6a..7f9c9d1fe5 100644
--- a/arch/arm/mach-uniphier/arm32/psci.c
+++ b/arch/arm/mach-uniphier/arm32/psci.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/bitops.h>
 #include <linux/delay.h>
 #include <linux/io.h>
diff --git a/board/armltd/vexpress/vexpress_common.c b/board/armltd/vexpress/vexpress_common.c
index 30b9dbbe8a..25da4c3904 100644
--- a/board/armltd/vexpress/vexpress_common.c
+++ b/board/armltd/vexpress/vexpress_common.c
@@ -16,6 +16,7 @@
  * Philippe Robin, <philippe.robin@arm.com>
  */
 #include <common.h>
+#include <cpu_legacy.h>
 #include <malloc.h>
 #include <errno.h>
 #include <netdev.h>
diff --git a/board/broadcom/bcm_ep/board.c b/board/broadcom/bcm_ep/board.c
index b2469dcb52..0c3aa3b05f 100644
--- a/board/broadcom/bcm_ep/board.c
+++ b/board/broadcom/bcm_ep/board.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <config.h>
 #include <netdev.h>
diff --git a/board/samsung/arndale/arndale.c b/board/samsung/arndale/arndale.c
index d06ab8f3c0..0d33f5c449 100644
--- a/board/samsung/arndale/arndale.c
+++ b/board/samsung/arndale/arndale.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <usb.h>
 #include <asm/gpio.h>
 #include <asm/arch/pinmux.h>
diff --git a/board/synopsys/axs10x/axs10x.c b/board/synopsys/axs10x/axs10x.c
index 7c4fcf281c..bd39d0c7d8 100644
--- a/board/synopsys/axs10x/axs10x.c
+++ b/board/synopsys/axs10x/axs10x.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dwmmc.h>
 #include <malloc.h>
 #include <asm/arcregs.h>
diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
index b94936474d..104c81b06f 100644
--- a/board/xilinx/zynqmp/zynqmp.c
+++ b/board/xilinx/zynqmp/zynqmp.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <sata.h>
 #include <ahci.h>
diff --git a/cmd/elf.c b/cmd/elf.c
index 538562fda5..690c61791d 100644
--- a/cmd/elf.c
+++ b/cmd/elf.c
@@ -15,6 +15,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <elf.h>
 #include <env.h>
 #include <net.h>
diff --git a/include/common.h b/include/common.h
index 96bb42ce71..3f6a95d7e0 100644
--- a/include/common.h
+++ b/include/common.h
@@ -212,9 +212,6 @@ void	reset_cpu     (ulong addr);
 void ft_cpu_setup(void *blob, bd_t *bd);
 void ft_pci_setup(void *blob, bd_t *bd);
 
-void smp_set_core_boot_addr(unsigned long addr, int corenr);
-void smp_kick_all_cpus(void);
-
 /* $(CPU)/speed.c */
 int	get_clocks (void);
 ulong	get_bus_freq  (ulong);
diff --git a/include/cpu_legacy.h b/include/cpu_legacy.h
index 03feaa63e9..1741f7f7a6 100644
--- a/include/cpu_legacy.h
+++ b/include/cpu_legacy.h
@@ -49,4 +49,7 @@ int is_core_valid(unsigned int core);
  */
 int checkcpu(void);
 
+void smp_set_core_boot_addr(unsigned long addr, int corenr);
+void smp_kick_all_cpus(void);
+
 #endif
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 28/42] arm: powerpc: Tidy up code style for cache functions
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (26 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 27/42] common: Move some SMP functions " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 29/42] common: Move some cache and MMU functions out of common.h Simon Glass
                   ` (13 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Remove the unwanted space before the bracket.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/lib/cache-cp15.c            | 12 ++++++------
 arch/microblaze/cpu/cache.c          | 18 +++++++++++-------
 board/armltd/integrator/integrator.c |  2 +-
 board/cobra5272/flash.c              | 12 ++++++------
 include/common.h                     |  2 +-
 post/lib_powerpc/cpu.c               |  6 +++---
 6 files changed, 28 insertions(+), 24 deletions(-)

diff --git a/arch/arm/lib/cache-cp15.c b/arch/arm/lib/cache-cp15.c
index 47c223917a..8ca8e48380 100644
--- a/arch/arm/lib/cache-cp15.c
+++ b/arch/arm/lib/cache-cp15.c
@@ -253,17 +253,17 @@ static void cache_disable(uint32_t cache_bit)
 #endif
 
 #if CONFIG_IS_ENABLED(SYS_ICACHE_OFF)
-void icache_enable (void)
+void icache_enable(void)
 {
 	return;
 }
 
-void icache_disable (void)
+void icache_disable(void)
 {
 	return;
 }
 
-int icache_status (void)
+int icache_status(void)
 {
 	return 0;					/* always off */
 }
@@ -285,17 +285,17 @@ int icache_status(void)
 #endif
 
 #if CONFIG_IS_ENABLED(SYS_DCACHE_OFF)
-void dcache_enable (void)
+void dcache_enable(void)
 {
 	return;
 }
 
-void dcache_disable (void)
+void dcache_disable(void)
 {
 	return;
 }
 
-int dcache_status (void)
+int dcache_status(void)
 {
 	return 0;					/* always off */
 }
diff --git a/arch/microblaze/cpu/cache.c b/arch/microblaze/cpu/cache.c
index eebeb37830..94114555ff 100644
--- a/arch/microblaze/cpu/cache.c
+++ b/arch/microblaze/cpu/cache.c
@@ -8,7 +8,7 @@
 #include <common.h>
 #include <asm/asm.h>
 
-int dcache_status (void)
+int dcache_status(void)
 {
 	int i = 0;
 	int mask = 0x80;
@@ -18,7 +18,7 @@ int dcache_status (void)
 	return i;
 }
 
-int icache_status (void)
+int icache_status(void)
 {
 	int i = 0;
 	int mask = 0x20;
@@ -28,28 +28,32 @@ int icache_status (void)
 	return i;
 }
 
-void	icache_enable (void) {
+void icache_enable(void)
+{
 	MSRSET(0x20);
 }
 
-void	icache_disable(void) {
+void icache_disable(void)
+{
 	/* we are not generate ICACHE size -> flush whole cache */
 	flush_cache(0, 32768);
 	MSRCLR(0x20);
 }
 
-void	dcache_enable (void) {
+void dcache_enable(void)
+{
 	MSRSET(0x80);
 }
 
-void	dcache_disable(void) {
+void dcache_disable(void)
+{
 #ifdef XILINX_USE_DCACHE
 	flush_cache(0, XILINX_DCACHE_BYTE_SIZE);
 #endif
 	MSRCLR(0x80);
 }
 
-void flush_cache (ulong addr, ulong size)
+void flush_cache(ulong addr, ulong size)
 {
 	int i;
 	for (i = 0; i < size; i += 4)
diff --git a/board/armltd/integrator/integrator.c b/board/armltd/integrator/integrator.c
index 0a2baa7297..f0fbe2b417 100644
--- a/board/armltd/integrator/integrator.c
+++ b/board/armltd/integrator/integrator.c
@@ -109,7 +109,7 @@ extern void cm_remap(void);
 	writel(SC_CTRL_FLASHVPP | SC_CTRL_FLASHWP, SC_CTRLS);
 #endif
 
-	icache_enable ();
+	icache_enable();
 
 	return 0;
 }
diff --git a/board/cobra5272/flash.c b/board/cobra5272/flash.c
index e5edc2a040..9bf824889a 100644
--- a/board/cobra5272/flash.c
+++ b/board/cobra5272/flash.c
@@ -164,8 +164,8 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)
 	 * chip is in programming mode.
 	 */
 
-	cflag = icache_status ();
-	icache_disable ();
+	cflag = icache_status();
+	icache_disable();
 	iflag = disable_interrupts ();
 
 	printf ("\n");
@@ -237,7 +237,7 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)
 		enable_interrupts ();
 
 	if (cflag)
-		icache_enable ();
+		icache_enable();
 
 	return rc;
 }
@@ -267,8 +267,8 @@ static int write_word (flash_info_t * info, ulong dest, ulong data)
 	 * chip is in programming mode.
 	 */
 
-	cflag = icache_status ();
-	icache_disable ();
+	cflag = icache_status();
+	icache_disable();
 	iflag = disable_interrupts ();
 
 	MEM_FLASH_ADDR1 = CMD_UNLOCK1;
@@ -303,7 +303,7 @@ static int write_word (flash_info_t * info, ulong dest, ulong data)
 		enable_interrupts ();
 
 	if (cflag)
-		icache_enable ();
+		icache_enable();
 
 	return rc;
 }
diff --git a/include/common.h b/include/common.h
index 3f6a95d7e0..82b1abe698 100644
--- a/include/common.h
+++ b/include/common.h
@@ -189,7 +189,7 @@ int testdram(void);
 int	icache_status (void);
 void	icache_enable (void);
 void	icache_disable(void);
-int	dcache_status (void);
+int	dcache_status(void);
 void	dcache_enable (void);
 void	dcache_disable(void);
 void	mmu_disable(void);
diff --git a/post/lib_powerpc/cpu.c b/post/lib_powerpc/cpu.c
index 109be38e16..6713039330 100644
--- a/post/lib_powerpc/cpu.c
+++ b/post/lib_powerpc/cpu.c
@@ -57,12 +57,12 @@ ulong cpu_post_makecr (long v)
 
 int cpu_post_test (int flags)
 {
-	int ic = icache_status ();
+	int ic = icache_status();
 	int ret = 0;
 
 	WATCHDOG_RESET();
 	if (ic)
-		icache_disable ();
+		icache_disable();
 
 	if (ret == 0)
 		ret = cpu_post_test_cmp ();
@@ -110,7 +110,7 @@ int cpu_post_test (int flags)
 	WATCHDOG_RESET();
 
 	if (ic)
-		icache_enable ();
+		icache_enable();
 
 	WATCHDOG_RESET();
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 29/42] common: Move some cache and MMU functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (27 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 28/42] arm: powerpc: Tidy up code style for cache functions Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 30/42] common: Drop checkicache() and checkdcache() Simon Glass
                   ` (12 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions belong in cpu_legacy.h. Another option would be cache.h
but that code uses driver model and we have not moved these cache
functions to use driver model. Since they are CPU-related it seems
reasonable to put them here.

Move them over.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arc/lib/cache.c                            |  1 +
 arch/arm/cpu/arm11/cpu.c                        |  1 +
 arch/arm/cpu/arm920t/cpu.c                      |  1 +
 arch/arm/cpu/arm926ejs/armada100/cpu.c          |  1 +
 arch/arm/cpu/arm926ejs/cache.c                  |  1 +
 arch/arm/cpu/arm926ejs/cpu.c                    |  1 +
 arch/arm/cpu/arm926ejs/spear/spr_misc.c         |  1 +
 arch/arm/cpu/arm946es/cpu.c                     |  1 +
 arch/arm/cpu/armv7/cpu.c                        |  1 +
 arch/arm/cpu/armv7/exception_level.c            |  1 +
 arch/arm/cpu/armv7/iproc-common/hwinit-common.c |  1 +
 arch/arm/cpu/armv7/kona-common/hwinit-common.c  |  1 +
 arch/arm/cpu/armv7/mpu_v7r.c                    |  1 +
 arch/arm/cpu/armv7/vf610/generic.c              |  1 +
 arch/arm/cpu/armv7m/cache.c                     |  1 +
 arch/arm/cpu/armv7m/cpu.c                       |  1 +
 arch/arm/cpu/armv8/cache_v8.c                   |  1 +
 arch/arm/cpu/armv8/cpu.c                        |  1 +
 arch/arm/cpu/armv8/exception_level.c            |  1 +
 arch/arm/cpu/armv8/fsl-layerscape/spl.c         |  1 +
 arch/arm/cpu/pxa/pxa2xx.c                       |  1 +
 arch/arm/cpu/sa1100/cpu.c                       |  1 +
 arch/arm/lib/cache-cp15.c                       |  1 +
 arch/arm/mach-at91/armv7/cpu.c                  |  1 +
 arch/arm/mach-bcm283x/init.c                    |  1 +
 arch/arm/mach-exynos/soc.c                      |  1 +
 arch/arm/mach-imx/cache.c                       |  1 +
 arch/arm/mach-imx/imx8/cpu.c                    |  1 +
 arch/arm/mach-imx/imx8m/soc.c                   |  1 +
 arch/arm/mach-imx/mx5/soc.c                     |  1 +
 arch/arm/mach-keystone/init.c                   |  1 +
 arch/arm/mach-mediatek/cpu.c                    |  1 +
 arch/arm/mach-mvebu/armada8k/cpu.c              |  1 +
 arch/arm/mach-mvebu/cpu.c                       |  1 +
 arch/arm/mach-omap2/omap-cache.c                |  1 +
 arch/arm/mach-orion5x/cpu.c                     |  1 +
 arch/arm/mach-rmobile/cpu_info.c                |  1 +
 arch/arm/mach-rmobile/memmap-gen3.c             |  1 +
 arch/arm/mach-rockchip/board.c                  |  1 +
 arch/arm/mach-s5pc1xx/cache.c                   |  1 +
 arch/arm/mach-socfpga/misc.c                    |  1 +
 arch/arm/mach-socfpga/spl_a10.c                 |  1 +
 arch/arm/mach-stm32mp/cpu.c                     |  1 +
 arch/arm/mach-sunxi/board.c                     |  1 +
 arch/arm/mach-tegra/board.c                     |  1 +
 arch/arm/mach-uniphier/arm32/cache-uniphier.c   |  1 +
 arch/arm/mach-zynq/cpu.c                        |  1 +
 arch/m68k/cpu/mcf5227x/cpu_init.c               |  1 +
 arch/m68k/cpu/mcf523x/cpu_init.c                |  1 +
 arch/m68k/cpu/mcf52x2/cpu_init.c                |  1 +
 arch/m68k/cpu/mcf530x/cpu_init.c                |  1 +
 arch/m68k/cpu/mcf532x/cpu_init.c                |  1 +
 arch/m68k/cpu/mcf5445x/cpu_init.c               |  1 +
 arch/m68k/cpu/mcf547x_8x/cpu_init.c             |  1 +
 arch/m68k/lib/cache.c                           |  1 +
 arch/microblaze/cpu/cache.c                     |  1 +
 arch/mips/lib/cache.c                           |  1 +
 arch/nds32/cpu/n1213/ae3xx/cpu.c                |  1 +
 arch/nds32/cpu/n1213/ag101/cpu.c                |  1 +
 arch/nds32/lib/cache.c                          |  1 +
 arch/nios2/lib/cache.c                          |  1 +
 arch/powerpc/cpu/mpc83xx/spd_sdram.c            |  1 +
 arch/powerpc/cpu/mpc8xx/cache.c                 |  1 +
 arch/riscv/cpu/ax25/cache.c                     |  1 +
 arch/riscv/cpu/ax25/cpu.c                       |  1 +
 arch/riscv/lib/cache.c                          |  1 +
 arch/sh/cpu/sh4/cache.c                         |  1 +
 arch/x86/cpu/cpu.c                              |  1 +
 arch/x86/cpu/i386/cpu.c                         |  1 +
 arch/x86/cpu/mtrr.c                             |  1 +
 arch/x86/cpu/x86_64/cpu.c                       |  1 +
 arch/x86/lib/spl.c                              |  1 +
 arch/xtensa/lib/cache.c                         |  1 +
 board/armltd/integrator/integrator.c            |  1 +
 board/cirrus/edb93xx/edb93xx.c                  |  1 +
 board/cobra5272/flash.c                         |  1 +
 board/highbank/highbank.c                       |  1 +
 board/st/stih410-b2260/board.c                  |  1 +
 board/synopsys/hsdk/hsdk.c                      |  1 +
 board/syteco/zmx25/zmx25.c                      |  1 +
 board/toradex/colibri_pxa270/colibri_pxa270.c   |  1 +
 board/xilinx/zynqmp/cmds.c                      |  1 +
 cmd/cache.c                                     |  1 +
 cmd/ti/ddr3.c                                   |  1 +
 common/bootm_os.c                               |  1 +
 common/kgdb_stubs.c                             |  1 +
 common/spl/spl_atf.c                            |  1 +
 drivers/ddr/altera/sdram_arria10.c              |  1 +
 drivers/ddr/altera/sdram_s10.c                  |  1 +
 drivers/fpga/zynqpl.c                           |  1 +
 drivers/video/cfb_console.c                     |  1 +
 include/common.h                                | 10 +---------
 include/cpu_legacy.h                            |  8 ++++++++
 post/cpu/mpc83xx/ecc.c                          |  1 +
 post/lib_powerpc/cpu.c                          |  1 +
 95 files changed, 102 insertions(+), 9 deletions(-)

diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index 8c1cb6e800..6172b8b902 100644
--- a/arch/arc/lib/cache.c
+++ b/arch/arc/lib/cache.c
@@ -5,6 +5,7 @@
 
 #include <config.h>
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/compiler.h>
 #include <linux/kernel.h>
 #include <linux/log2.h>
diff --git a/arch/arm/cpu/arm11/cpu.c b/arch/arm/cpu/arm11/cpu.c
index 8aee1539a9..a546ec21de 100644
--- a/arch/arm/cpu/arm11/cpu.c
+++ b/arch/arm/cpu/arm11/cpu.c
@@ -16,6 +16,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <asm/system.h>
 
 static void cache_flush(void);
diff --git a/arch/arm/cpu/arm920t/cpu.c b/arch/arm/cpu/arm920t/cpu.c
index 2ef133f133..a98c86eaf3 100644
--- a/arch/arm/cpu/arm920t/cpu.c
+++ b/arch/arm/cpu/arm920t/cpu.c
@@ -14,6 +14,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <asm/system.h>
 
 static void cache_flush(void);
diff --git a/arch/arm/cpu/arm926ejs/armada100/cpu.c b/arch/arm/cpu/arm926ejs/armada100/cpu.c
index 4cd8511414..b7926e40b1 100644
--- a/arch/arm/cpu/arm926ejs/armada100/cpu.c
+++ b/arch/arm/cpu/arm926ejs/armada100/cpu.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/armada100.h>
 
diff --git a/arch/arm/cpu/arm926ejs/cache.c b/arch/arm/cpu/arm926ejs/cache.c
index 16eea693d1..6ae8e8b380 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 <cpu_legacy.h>
 #include <linux/types.h>
 #include <common.h>
 
diff --git a/arch/arm/cpu/arm926ejs/cpu.c b/arch/arm/cpu/arm926ejs/cpu.c
index d7cffe8b69..6d06fb758a 100644
--- a/arch/arm/cpu/arm926ejs/cpu.c
+++ b/arch/arm/cpu/arm926ejs/cpu.c
@@ -14,6 +14,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <asm/system.h>
 
 static void cache_flush(void);
diff --git a/arch/arm/cpu/arm926ejs/spear/spr_misc.c b/arch/arm/cpu/arm926ejs/spear/spr_misc.c
index d36484c9d6..47c7c5b6e9 100644
--- a/arch/arm/cpu/arm926ejs/spear/spr_misc.c
+++ b/arch/arm/cpu/arm926ejs/spear/spr_misc.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <i2c.h>
 #include <net.h>
diff --git a/arch/arm/cpu/arm946es/cpu.c b/arch/arm/cpu/arm946es/cpu.c
index 3b4f5de8f6..0a78ffbae1 100644
--- a/arch/arm/cpu/arm946es/cpu.c
+++ b/arch/arm/cpu/arm946es/cpu.c
@@ -14,6 +14,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <asm/system.h>
 #include <asm/io.h>
 
diff --git a/arch/arm/cpu/armv7/cpu.c b/arch/arm/cpu/armv7/cpu.c
index 44f2757267..bf3ebba052 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 <cpu_legacy.h>
 #include <asm/system.h>
 #include <asm/cache.h>
 #include <asm/armv7.h>
diff --git a/arch/arm/cpu/armv7/exception_level.c b/arch/arm/cpu/armv7/exception_level.c
index 274f03d8bb..9d7dcb1681 100644
--- a/arch/arm/cpu/armv7/exception_level.c
+++ b/arch/arm/cpu/armv7/exception_level.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <bootm.h>
+#include <cpu_legacy.h>
 #include <asm/armv7.h>
 #include <asm/secure.h>
 #include <asm/setjmp.h>
diff --git a/arch/arm/cpu/armv7/iproc-common/hwinit-common.c b/arch/arm/cpu/armv7/iproc-common/hwinit-common.c
index 70431ecf6b..70ba24072a 100644
--- a/arch/arm/cpu/armv7/iproc-common/hwinit-common.c
+++ b/arch/arm/cpu/armv7/iproc-common/hwinit-common.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 
 #if !CONFIG_IS_ENABLED(SYS_DCACHE_OFF)
 void enable_caches(void)
diff --git a/arch/arm/cpu/armv7/kona-common/hwinit-common.c b/arch/arm/cpu/armv7/kona-common/hwinit-common.c
index 10e7488879..07e7b1fea1 100644
--- a/arch/arm/cpu/armv7/kona-common/hwinit-common.c
+++ b/arch/arm/cpu/armv7/kona-common/hwinit-common.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/sizes.h>
 
 #if !CONFIG_IS_ENABLED(SYS_DCACHE_OFF)
diff --git a/arch/arm/cpu/armv7/mpu_v7r.c b/arch/arm/cpu/armv7/mpu_v7r.c
index 7adecffff8..c1a0079900 100644
--- a/arch/arm/cpu/armv7/mpu_v7r.c
+++ b/arch/arm/cpu/armv7/mpu_v7r.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <asm/armv7.h>
 #include <asm/system.h>
 #include <asm/barriers.h>
diff --git a/arch/arm/cpu/armv7/vf610/generic.c b/arch/arm/cpu/armv7/vf610/generic.c
index 7e4641fd32..9307c343b0 100644
--- a/arch/arm/cpu/armv7/vf610/generic.c
+++ b/arch/arm/cpu/armv7/vf610/generic.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/clock.h>
diff --git a/arch/arm/cpu/armv7m/cache.c b/arch/arm/cpu/armv7m/cache.c
index 1106bead41..b291566152 100644
--- a/arch/arm/cpu/armv7m/cache.c
+++ b/arch/arm/cpu/armv7m/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <errno.h>
 #include <asm/armv7m.h>
 #include <asm/io.h>
diff --git a/arch/arm/cpu/armv7m/cpu.c b/arch/arm/cpu/armv7m/cpu.c
index 55ea0787a7..fed17bd649 100644
--- a/arch/arm/cpu/armv7m/cpu.c
+++ b/arch/arm/cpu/armv7m/cpu.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/armv7m.h>
 
diff --git a/arch/arm/cpu/armv8/cache_v8.c b/arch/arm/cpu/armv8/cache_v8.c
index e500e722e5..f92dd4daaf 100644
--- a/arch/arm/cpu/armv8/cache_v8.c
+++ b/arch/arm/cpu/armv8/cache_v8.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/system.h>
 #include <asm/armv8/mmu.h>
 
diff --git a/arch/arm/cpu/armv8/cpu.c b/arch/arm/cpu/armv8/cpu.c
index b312b3be35..6fdc94ec08 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 <cpu_legacy.h>
 #include <asm/system.h>
 #include <asm/secure.h>
 #include <linux/compiler.h>
diff --git a/arch/arm/cpu/armv8/exception_level.c b/arch/arm/cpu/armv8/exception_level.c
index 57824eb2ac..1407d1b9ca 100644
--- a/arch/arm/cpu/armv8/exception_level.c
+++ b/arch/arm/cpu/armv8/exception_level.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <bootm.h>
+#include <cpu_legacy.h>
 #include <asm/setjmp.h>
 
 /**
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/spl.c b/arch/arm/cpu/armv8/fsl-layerscape/spl.c
index 3f6a5f6a42..29654ac2d8 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/spl.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/spl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <spl.h>
 #include <asm/io.h>
diff --git a/arch/arm/cpu/pxa/pxa2xx.c b/arch/arm/cpu/pxa/pxa2xx.c
index 14fe307c1a..d69e925e6f 100644
--- a/arch/arm/cpu/pxa/pxa2xx.c
+++ b/arch/arm/cpu/pxa/pxa2xx.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/arch/pxa-regs.h>
 #include <asm/io.h>
 #include <asm/system.h>
diff --git a/arch/arm/cpu/sa1100/cpu.c b/arch/arm/cpu/sa1100/cpu.c
index f81ebc9ba2..8ef9f294f2 100644
--- a/arch/arm/cpu/sa1100/cpu.c
+++ b/arch/arm/cpu/sa1100/cpu.c
@@ -15,6 +15,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <asm/system.h>
 #include <asm/io.h>
 
diff --git a/arch/arm/lib/cache-cp15.c b/arch/arm/lib/cache-cp15.c
index 8ca8e48380..aabe980826 100644
--- a/arch/arm/lib/cache-cp15.c
+++ b/arch/arm/lib/cache-cp15.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/system.h>
 #include <asm/cache.h>
 #include <linux/compiler.h>
diff --git a/arch/arm/mach-at91/armv7/cpu.c b/arch/arm/mach-at91/armv7/cpu.c
index 638645c7e4..f301fae89b 100644
--- a/arch/arm/mach-at91/armv7/cpu.c
+++ b/arch/arm/mach-at91/armv7/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <vsprintf.h>
 #include <asm/io.h>
 #include <asm/arch/hardware.h>
diff --git a/arch/arm/mach-bcm283x/init.c b/arch/arm/mach-bcm283x/init.c
index 97414415a6..1ca1c4f99b 100644
--- a/arch/arm/mach-bcm283x/init.c
+++ b/arch/arm/mach-bcm283x/init.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 
 int arch_cpu_init(void)
 {
diff --git a/arch/arm/mach-exynos/soc.c b/arch/arm/mach-exynos/soc.c
index 2ae9a43b4e..b718f6fff6 100644
--- a/arch/arm/mach-exynos/soc.c
+++ b/arch/arm/mach-exynos/soc.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/system.h>
 
diff --git a/arch/arm/mach-imx/cache.c b/arch/arm/mach-imx/cache.c
index a605942503..65a9a7ede4 100644
--- a/arch/arm/mach-imx/cache.c
+++ b/arch/arm/mach-imx/cache.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/armv7.h>
 #include <asm/pl310.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-imx/imx8/cpu.c b/arch/arm/mach-imx/imx8/cpu.c
index d393a01178..953110ad54 100644
--- a/arch/arm/mach-imx/imx8/cpu.c
+++ b/arch/arm/mach-imx/imx8/cpu.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <clk.h>
 #include <cpu.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <dm/device-internal.h>
 #include <dm/lists.h>
diff --git a/arch/arm/mach-imx/imx8m/soc.c b/arch/arm/mach-imx/imx8m/soc.c
index a924af431c..ed338663bc 100644
--- a/arch/arm/mach-imx/imx8m/soc.c
+++ b/arch/arm/mach-imx/imx8m/soc.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
diff --git a/arch/arm/mach-imx/mx5/soc.c b/arch/arm/mach-imx/mx5/soc.c
index bbb335e275..35b5a37270 100644
--- a/arch/arm/mach-imx/mx5/soc.c
+++ b/arch/arm/mach-imx/mx5/soc.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
diff --git a/arch/arm/mach-keystone/init.c b/arch/arm/mach-keystone/init.c
index 3dee300d77..f53920f1dd 100644
--- a/arch/arm/mach-keystone/init.c
+++ b/arch/arm/mach-keystone/init.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <ns16550.h>
 #include <asm/io.h>
 #include <asm/arch/msmc.h>
diff --git a/arch/arm/mach-mediatek/cpu.c b/arch/arm/mach-mediatek/cpu.c
index 1923c9e527..7f9996163d 100644
--- a/arch/arm/mach-mediatek/cpu.c
+++ b/arch/arm/mach-mediatek/cpu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <wdt.h>
 #include <dm/uclass-internal.h>
diff --git a/arch/arm/mach-mvebu/armada8k/cpu.c b/arch/arm/mach-mvebu/armada8k/cpu.c
index 959a7cff76..e0b8b6568b 100644
--- a/arch/arm/mach-mvebu/armada8k/cpu.c
+++ b/arch/arm/mach-mvebu/armada8k/cpu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <fdtdec.h>
 #include <linux/libfdt.h>
diff --git a/arch/arm/mach-mvebu/cpu.c b/arch/arm/mach-mvebu/cpu.c
index f4b7a4fa80..4a5c8f959a 100644
--- a/arch/arm/mach-mvebu/cpu.c
+++ b/arch/arm/mach-mvebu/cpu.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <ahci.h>
+#include <cpu_legacy.h>
 #include <linux/mbus.h>
 #include <asm/io.h>
 #include <asm/pl310.h>
diff --git a/arch/arm/mach-omap2/omap-cache.c b/arch/arm/mach-omap2/omap-cache.c
index d58a0a15ff..27029f59b6 100644
--- a/arch/arm/mach-omap2/omap-cache.c
+++ b/arch/arm/mach-omap2/omap-cache.c
@@ -12,6 +12,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/cache.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-orion5x/cpu.c b/arch/arm/mach-orion5x/cpu.c
index 79b5f4f34f..364f1ec986 100644
--- a/arch/arm/mach-orion5x/cpu.c
+++ b/arch/arm/mach-orion5x/cpu.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <netdev.h>
 #include <asm/cache.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-rmobile/cpu_info.c b/arch/arm/mach-rmobile/cpu_info.c
index 9ef94a4899..7a6a790b55 100644
--- a/arch/arm/mach-rmobile/cpu_info.c
+++ b/arch/arm/mach-rmobile/cpu_info.c
@@ -4,6 +4,7 @@
  * (C) Copyright 2012 Renesas Solutions Corp.
  */
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <env.h>
 #include <linux/ctype.h>
diff --git a/arch/arm/mach-rmobile/memmap-gen3.c b/arch/arm/mach-rmobile/memmap-gen3.c
index 1a9eb72bb9..f69c68f57a 100644
--- a/arch/arm/mach-rmobile/memmap-gen3.c
+++ b/arch/arm/mach-rmobile/memmap-gen3.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/armv8/mmu.h>
 
 #define GEN3_NR_REGIONS 16
diff --git a/arch/arm/mach-rockchip/board.c b/arch/arm/mach-rockchip/board.c
index 8ca3463731..d1cff2424c 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 <cpu_legacy.h>
 #include <dm.h>
 #include <ram.h>
 #include <syscon.h>
diff --git a/arch/arm/mach-s5pc1xx/cache.c b/arch/arm/mach-s5pc1xx/cache.c
index 0b879b545d..c686ff0a2c 100644
--- a/arch/arm/mach-s5pc1xx/cache.c
+++ b/arch/arm/mach-s5pc1xx/cache.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 
 #if !CONFIG_IS_ENABLED(SYS_DCACHE_OFF)
 void enable_caches(void)
diff --git a/arch/arm/mach-socfpga/misc.c b/arch/arm/mach-socfpga/misc.c
index 49dadd4c3d..2cee6a25cb 100644
--- a/arch/arm/mach-socfpga/misc.c
+++ b/arch/arm/mach-socfpga/misc.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <errno.h>
 #include <fdtdec.h>
diff --git a/arch/arm/mach-socfpga/spl_a10.c b/arch/arm/mach-socfpga/spl_a10.c
index b820cb0673..2b85d16ba1 100644
--- a/arch/arm/mach-socfpga/spl_a10.c
+++ b/arch/arm/mach-socfpga/spl_a10.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/pl310.h>
 #include <asm/u-boot.h>
diff --git a/arch/arm/mach-stm32mp/cpu.c b/arch/arm/mach-stm32mp/cpu.c
index a46e8438f7..d949fed209 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 <cpu_legacy.h>
 #include <debug_uart.h>
 #include <env.h>
 #include <misc.h>
diff --git a/arch/arm/mach-sunxi/board.c b/arch/arm/mach-sunxi/board.c
index db506367bf..687382dab3 100644
--- a/arch/arm/mach-sunxi/board.c
+++ b/arch/arm/mach-sunxi/board.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <mmc.h>
 #include <i2c.h>
 #include <serial.h>
diff --git a/arch/arm/mach-tegra/board.c b/arch/arm/mach-tegra/board.c
index abcae15ea3..ef08428a14 100644
--- a/arch/arm/mach-tegra/board.c
+++ b/arch/arm/mach-tegra/board.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <ns16550.h>
 #include <spl.h>
diff --git a/arch/arm/mach-uniphier/arm32/cache-uniphier.c b/arch/arm/mach-uniphier/arm32/cache-uniphier.c
index 023b3396f5..5075ca6396 100644
--- a/arch/arm/mach-uniphier/arm32/cache-uniphier.c
+++ b/arch/arm/mach-uniphier/arm32/cache-uniphier.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
 #include <asm/armv7.h>
diff --git a/arch/arm/mach-zynq/cpu.c b/arch/arm/mach-zynq/cpu.c
index e5f557716b..d4375a482f 100644
--- a/arch/arm/mach-zynq/cpu.c
+++ b/arch/arm/mach-zynq/cpu.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2012 Xilinx, Inc. All rights reserved.
  */
 #include <common.h>
+#include <cpu_legacy.h>
 #include <zynqpl.h>
 #include <asm/io.h>
 #include <asm/arch/clk.h>
diff --git a/arch/m68k/cpu/mcf5227x/cpu_init.c b/arch/m68k/cpu/mcf5227x/cpu_init.c
index 3bbc42f508..1672400f29 100644
--- a/arch/m68k/cpu/mcf5227x/cpu_init.c
+++ b/arch/m68k/cpu/mcf5227x/cpu_init.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 
 #include <asm/immap.h>
diff --git a/arch/m68k/cpu/mcf523x/cpu_init.c b/arch/m68k/cpu/mcf523x/cpu_init.c
index 339fbeb429..5231e34983 100644
--- a/arch/m68k/cpu/mcf523x/cpu_init.c
+++ b/arch/m68k/cpu/mcf523x/cpu_init.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/arch/m68k/cpu/mcf52x2/cpu_init.c b/arch/m68k/cpu/mcf52x2/cpu_init.c
index f4a3872667..a57c2e82f4 100644
--- a/arch/m68k/cpu/mcf52x2/cpu_init.c
+++ b/arch/m68k/cpu/mcf52x2/cpu_init.c
@@ -18,6 +18,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/arch/m68k/cpu/mcf530x/cpu_init.c b/arch/m68k/cpu/mcf530x/cpu_init.c
index 27d06d92e2..31fbddbb65 100644
--- a/arch/m68k/cpu/mcf530x/cpu_init.c
+++ b/arch/m68k/cpu/mcf530x/cpu_init.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/arch/m68k/cpu/mcf532x/cpu_init.c b/arch/m68k/cpu/mcf532x/cpu_init.c
index cbf840f76e..aa61fcdb3b 100644
--- a/arch/m68k/cpu/mcf532x/cpu_init.c
+++ b/arch/m68k/cpu/mcf532x/cpu_init.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/arch/m68k/cpu/mcf5445x/cpu_init.c b/arch/m68k/cpu/mcf5445x/cpu_init.c
index 134510b00f..7f7ed26b68 100644
--- a/arch/m68k/cpu/mcf5445x/cpu_init.c
+++ b/arch/m68k/cpu/mcf5445x/cpu_init.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <asm/immap.h>
 #include <asm/processor.h>
diff --git a/arch/m68k/cpu/mcf547x_8x/cpu_init.c b/arch/m68k/cpu/mcf547x_8x/cpu_init.c
index 81ffc6c094..c0aa62da3b 100644
--- a/arch/m68k/cpu/mcf547x_8x/cpu_init.c
+++ b/arch/m68k/cpu/mcf547x_8x/cpu_init.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <MCD_dma.h>
+#include <cpu_legacy.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/lib/cache.c b/arch/m68k/lib/cache.c
index 29f863b8b4..598d0045fd 100644
--- a/arch/m68k/lib/cache.c
+++ b/arch/m68k/lib/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/immap.h>
 #include <asm/cache.h>
 
diff --git a/arch/microblaze/cpu/cache.c b/arch/microblaze/cpu/cache.c
index 94114555ff..952066b16e 100644
--- a/arch/microblaze/cpu/cache.c
+++ b/arch/microblaze/cpu/cache.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/asm.h>
 
 int dcache_status(void)
diff --git a/arch/mips/lib/cache.c b/arch/mips/lib/cache.c
index 0ddae30f2c..b27dea4b97 100644
--- a/arch/mips/lib/cache.c
+++ b/arch/mips/lib/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/cacheops.h>
 #ifdef CONFIG_MIPS_L2_CACHE
 #include <asm/cm.h>
diff --git a/arch/nds32/cpu/n1213/ae3xx/cpu.c b/arch/nds32/cpu/n1213/ae3xx/cpu.c
index c5a7a3fd0a..ca8e6a140e 100644
--- a/arch/nds32/cpu/n1213/ae3xx/cpu.c
+++ b/arch/nds32/cpu/n1213/ae3xx/cpu.c
@@ -15,6 +15,7 @@
 /* CPU specific code */
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <asm/cache.h>
 
diff --git a/arch/nds32/cpu/n1213/ag101/cpu.c b/arch/nds32/cpu/n1213/ag101/cpu.c
index c9cb4333ba..f43b696059 100644
--- a/arch/nds32/cpu/n1213/ag101/cpu.c
+++ b/arch/nds32/cpu/n1213/ag101/cpu.c
@@ -15,6 +15,7 @@
 /* CPU specific code */
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <watchdog.h>
 #include <asm/cache.h>
 
diff --git a/arch/nds32/lib/cache.c b/arch/nds32/lib/cache.c
index 27065136dd..05e469da2f 100644
--- a/arch/nds32/lib/cache.c
+++ b/arch/nds32/lib/cache.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #if !(CONFIG_IS_ENABLED(SYS_ICACHE_OFF) && CONFIG_IS_ENABLED(SYS_DCACHE_OFF))
 static inline unsigned long CACHE_SET(unsigned char cache)
 {
diff --git a/arch/nios2/lib/cache.c b/arch/nios2/lib/cache.c
index c2cdee3e9e..90bcd7c1e8 100644
--- a/arch/nios2/lib/cache.c
+++ b/arch/nios2/lib/cache.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/cache.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/powerpc/cpu/mpc83xx/spd_sdram.c b/arch/powerpc/cpu/mpc83xx/spd_sdram.c
index 08918a9d75..0d38d6c8f3 100644
--- a/arch/powerpc/cpu/mpc83xx/spd_sdram.c
+++ b/arch/powerpc/cpu/mpc83xx/spd_sdram.c
@@ -13,6 +13,7 @@
 #ifndef CONFIG_MPC83XX_SDRAM
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <vsprintf.h>
 #include <asm/processor.h>
 #include <asm/io.h>
diff --git a/arch/powerpc/cpu/mpc8xx/cache.c b/arch/powerpc/cpu/mpc8xx/cache.c
index 8051d3e8d2..4407a5c68a 100644
--- a/arch/powerpc/cpu/mpc8xx/cache.c
+++ b/arch/powerpc/cpu/mpc8xx/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/processor.h>
 #include <asm/ppc.h>
 #include <asm/io.h>
diff --git a/arch/riscv/cpu/ax25/cache.c b/arch/riscv/cpu/ax25/cache.c
index 41de30cc02..415e57b3c5 100644
--- a/arch/riscv/cpu/ax25/cache.c
+++ b/arch/riscv/cpu/ax25/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <dm/uclass-internal.h>
 #include <cache.h>
diff --git a/arch/riscv/cpu/ax25/cpu.c b/arch/riscv/cpu/ax25/cpu.c
index 76689b21d3..e717675713 100644
--- a/arch/riscv/cpu/ax25/cpu.c
+++ b/arch/riscv/cpu/ax25/cpu.c
@@ -6,6 +6,7 @@
 
 /* CPU specific code */
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/cache.h>
 
 /*
diff --git a/arch/riscv/lib/cache.c b/arch/riscv/lib/cache.c
index 5437a122a1..b1525c046b 100644
--- a/arch/riscv/lib/cache.c
+++ b/arch/riscv/lib/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 
 void invalidate_icache_all(void)
 {
diff --git a/arch/sh/cpu/sh4/cache.c b/arch/sh/cpu/sh4/cache.c
index 5049090424..98f7b59f93 100644
--- a/arch/sh/cpu/sh4/cache.c
+++ b/arch/sh/cpu/sh4/cache.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/processor.h>
 #include <asm/system.h>
diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c
index 9ee4b0294a..6b8ef55693 100644
--- a/arch/x86/cpu/cpu.c
+++ b/arch/x86/cpu/cpu.c
@@ -21,6 +21,7 @@
 #include <common.h>
 #include <acpi_s3.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <errno.h>
 #include <malloc.h>
diff --git a/arch/x86/cpu/i386/cpu.c b/arch/x86/cpu/i386/cpu.c
index 31663714a0..b3a061136b 100644
--- a/arch/x86/cpu/i386/cpu.c
+++ b/arch/x86/cpu/i386/cpu.c
@@ -19,6 +19,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <malloc.h>
 #include <asm/control_regs.h>
 #include <asm/cpu.h>
diff --git a/arch/x86/cpu/mtrr.c b/arch/x86/cpu/mtrr.c
index a00db422e7..b2d97ab592 100644
--- a/arch/x86/cpu/mtrr.c
+++ b/arch/x86/cpu/mtrr.c
@@ -17,6 +17,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <asm/msr.h>
 #include <asm/mtrr.h>
diff --git a/arch/x86/cpu/x86_64/cpu.c b/arch/x86/cpu/x86_64/cpu.c
index 7d291f60f5..5418543fbe 100644
--- a/arch/x86/cpu/x86_64/cpu.c
+++ b/arch/x86/cpu/x86_64/cpu.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <cpu.h>
+#include <cpu_legacy.h>
 #include <debug_uart.h>
 
 /*
diff --git a/arch/x86/lib/spl.c b/arch/x86/lib/spl.c
index 1677f80b25..b1dfffe9d4 100644
--- a/arch/x86/lib/spl.c
+++ b/arch/x86/lib/spl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <debug_uart.h>
 #include <dm.h>
 #include <malloc.h>
diff --git a/arch/xtensa/lib/cache.c b/arch/xtensa/lib/cache.c
index 8f13f1fb63..c2db450cad 100644
--- a/arch/xtensa/lib/cache.c
+++ b/arch/xtensa/lib/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/cache.h>
 
 /*
diff --git a/board/armltd/integrator/integrator.c b/board/armltd/integrator/integrator.c
index f0fbe2b417..9dd7670106 100644
--- a/board/armltd/integrator/integrator.c
+++ b/board/armltd/integrator/integrator.c
@@ -17,6 +17,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <env.h>
 #include <netdev.h>
diff --git a/board/cirrus/edb93xx/edb93xx.c b/board/cirrus/edb93xx/edb93xx.c
index 88fac76ea5..64d8e4d9f7 100644
--- a/board/cirrus/edb93xx/edb93xx.c
+++ b/board/cirrus/edb93xx/edb93xx.c
@@ -15,6 +15,7 @@
 
 #include <config.h>
 #include <common.h>
+#include <cpu_legacy.h>
 #include <netdev.h>
 #include <status_led.h>
 #include <asm/io.h>
diff --git a/board/cobra5272/flash.c b/board/cobra5272/flash.c
index 9bf824889a..0e1d9ce8d3 100644
--- a/board/cobra5272/flash.c
+++ b/board/cobra5272/flash.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <cpu_legacy.h>
 
 #define PHYS_FLASH_1 CONFIG_SYS_FLASH_BASE
 #define FLASH_BANK_SIZE 0x200000
diff --git a/board/highbank/highbank.c b/board/highbank/highbank.c
index 9563763dfa..f0862c7cec 100644
--- a/board/highbank/highbank.c
+++ b/board/highbank/highbank.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <ahci.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <netdev.h>
 #include <scsi.h>
diff --git a/board/st/stih410-b2260/board.c b/board/st/stih410-b2260/board.c
index 111e64b995..69d9f7e91d 100644
--- a/board/st/stih410-b2260/board.c
+++ b/board/st/stih410-b2260/board.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <linux/usb/otg.h>
 #include <dwc3-sti-glue.h>
 #include <dwc3-uboot.h>
diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c
index 8a7642a0aa..1360755710 100644
--- a/board/synopsys/hsdk/hsdk.c
+++ b/board/synopsys/hsdk/hsdk.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <config.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <linux/printk.h>
 #include <linux/kernel.h>
diff --git a/board/syteco/zmx25/zmx25.c b/board/syteco/zmx25/zmx25.c
index d2318457b4..f64fadde03 100644
--- a/board/syteco/zmx25/zmx25.c
+++ b/board/syteco/zmx25/zmx25.c
@@ -14,6 +14,7 @@
  *   RedBoot tx25_misc.c Copyright (C) 2009 Red Hat
  */
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/toradex/colibri_pxa270/colibri_pxa270.c b/board/toradex/colibri_pxa270/colibri_pxa270.c
index e9e17508a5..e64dd14aff 100644
--- a/board/toradex/colibri_pxa270/colibri_pxa270.c
+++ b/board/toradex/colibri_pxa270/colibri_pxa270.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <asm/arch/hardware.h>
 #include <asm/arch/pxa.h>
diff --git a/board/xilinx/zynqmp/cmds.c b/board/xilinx/zynqmp/cmds.c
index d3bb57a2e9..262202ed76 100644
--- a/board/xilinx/zynqmp/cmds.c
+++ b/board/xilinx/zynqmp/cmds.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <malloc.h>
 #include <zynqmp_firmware.h>
diff --git a/cmd/cache.c b/cmd/cache.c
index 2c687173a8..96c7512cd7 100644
--- a/cmd/cache.c
+++ b/cmd/cache.c
@@ -9,6 +9,7 @@
  */
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <linux/compiler.h>
 
 static int parse_argv(const char *);
diff --git a/cmd/ti/ddr3.c b/cmd/ti/ddr3.c
index 448a7f54a9..c355eb7a10 100644
--- a/cmd/ti/ddr3.c
+++ b/cmd/ti/ddr3.c
@@ -5,6 +5,7 @@
  * Copyright (C) 2012-2017 Texas Instruments Incorporated, <www.ti.com>
  */
 
+#include <cpu_legacy.h>
 #include <asm/arch/hardware.h>
 #include <asm/cache.h>
 #include <asm/emif.h>
diff --git a/common/bootm_os.c b/common/bootm_os.c
index 6fb7d658da..93d2a3f53d 100644
--- a/common/bootm_os.c
+++ b/common/bootm_os.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <bootm.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <fdt_support.h>
 #include <linux/libfdt.h>
diff --git a/common/kgdb_stubs.c b/common/kgdb_stubs.c
index afa7d6403a..43c7103b8d 100644
--- a/common/kgdb_stubs.c
+++ b/common/kgdb_stubs.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <kgdb.h>
 #include <serial.h>
 
diff --git a/common/spl/spl_atf.c b/common/spl/spl_atf.c
index 0498d0a2c9..40d614d7eb 100644
--- a/common/spl/spl_atf.c
+++ b/common/spl/spl_atf.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <atf_common.h>
+#include <cpu_legacy.h>
 #include <errno.h>
 #include <spl.h>
 
diff --git a/drivers/ddr/altera/sdram_arria10.c b/drivers/ddr/altera/sdram_arria10.c
index 1777e7e1a5..46b1dda3de 100644
--- a/drivers/ddr/altera/sdram_arria10.c
+++ b/drivers/ddr/altera/sdram_arria10.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <errno.h>
 #include <fdtdec.h>
 #include <malloc.h>
diff --git a/drivers/ddr/altera/sdram_s10.c b/drivers/ddr/altera/sdram_s10.c
index 56cbbac9fe..90846d9c2b 100644
--- a/drivers/ddr/altera/sdram_s10.c
+++ b/drivers/ddr/altera/sdram_s10.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <errno.h>
 #include <div64.h>
diff --git a/drivers/fpga/zynqpl.c b/drivers/fpga/zynqpl.c
index 069c63ba45..23587e5678 100644
--- a/drivers/fpga/zynqpl.c
+++ b/drivers/fpga/zynqpl.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <console.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 #include <fs.h>
 #include <zynqpl.h>
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index e5c077e4f5..6d11986fde 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -65,6 +65,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <fdtdec.h>
 #include <gzip.h>
diff --git a/include/common.h b/include/common.h
index 82b1abe698..48eb223627 100644
--- a/include/common.h
+++ b/include/common.h
@@ -3,7 +3,7 @@
  * Common header file for U-Boot
  *
  * This file still includes quite a bit of stuff that should be in separate
- * headers like command.h and cpu.h. Please think before adding more things.
+ * headers like command.h. Please think before adding more things.
  * Patches to remove things are welcome.
  *
  * (C) Copyright 2000-2009
@@ -185,14 +185,6 @@ int board_early_init_r (void);
 int testdram(void);
 #endif /* CONFIG_SYS_DRAM_TEST */
 
-/* $(CPU)/start.S */
-int	icache_status (void);
-void	icache_enable (void);
-void	icache_disable(void);
-int	dcache_status(void);
-void	dcache_enable (void);
-void	dcache_disable(void);
-void	mmu_disable(void);
 #if defined(CONFIG_ARM)
 void	relocate_code(ulong);
 #else
diff --git a/include/cpu_legacy.h b/include/cpu_legacy.h
index 1741f7f7a6..a14d23a36d 100644
--- a/include/cpu_legacy.h
+++ b/include/cpu_legacy.h
@@ -52,4 +52,12 @@ int checkcpu(void);
 void smp_set_core_boot_addr(unsigned long addr, int corenr);
 void smp_kick_all_cpus(void);
 
+int icache_status(void);
+void icache_enable(void);
+void icache_disable(void);
+int dcache_status(void);
+void dcache_enable(void);
+void dcache_disable(void);
+void mmu_disable(void);
+
 #endif
diff --git a/post/cpu/mpc83xx/ecc.c b/post/cpu/mpc83xx/ecc.c
index 03b6d65fe9..ce24705777 100644
--- a/post/cpu/mpc83xx/ecc.c
+++ b/post/cpu/mpc83xx/ecc.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <mpc83xx.h>
 #include <watchdog.h>
 #include <asm/io.h>
diff --git a/post/lib_powerpc/cpu.c b/post/lib_powerpc/cpu.c
index 6713039330..b2a6fbde00 100644
--- a/post/lib_powerpc/cpu.c
+++ b/post/lib_powerpc/cpu.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 
 /*
  * CPU test
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 30/42] common: Drop checkicache() and checkdcache()
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (28 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 29/42] common: Move some cache and MMU functions out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 31/42] common: Move ARM cache operations out of common.h Simon Glass
                   ` (11 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These are used by only one arch and only within a single file. Drop the
declarations from the common file.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/powerpc/cpu/mpc8xx/cpu.c | 130 +++++++++++++++++-----------------
 include/common.h              |   2 -
 2 files changed, 65 insertions(+), 67 deletions(-)

diff --git a/arch/powerpc/cpu/mpc8xx/cpu.c b/arch/powerpc/cpu/mpc8xx/cpu.c
index 36af7c1612..787c1bdc11 100644
--- a/arch/powerpc/cpu/mpc8xx/cpu.c
+++ b/arch/powerpc/cpu/mpc8xx/cpu.c
@@ -35,70 +35,6 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-static int check_CPU(long clock, uint pvr, uint immr)
-{
-	immap_t __iomem *immap = (immap_t __iomem *)CONFIG_SYS_IMMR;
-	uint k;
-	char buf[32];
-
-	/* the highest 16 bits should be 0x0050 for a 860 */
-
-	if (PVR_VER(pvr) != PVR_VER(PVR_8xx))
-		return -1;
-
-	k = (immr << 16) |
-	    in_be16(&immap->im_cpm.cp_dparam16[PROFF_REVNUM / sizeof(u16)]);
-
-	/*
-	 * Some boards use sockets so different CPUs can be used.
-	 * We have to check chip version in run time.
-	 */
-	switch (k) {
-		/* MPC866P/MPC866T/MPC859T/MPC859DSL/MPC852T */
-	case 0x08010004:		/* Rev. A.0 */
-		printf("MPC866xxxZPnnA");
-		break;
-	case 0x08000003:		/* Rev. 0.3 */
-		printf("MPC866xxxZPnn");
-		break;
-	case 0x09000000:		/* 870/875/880/885 */
-		puts("MPC885ZPnn");
-		break;
-
-	default:
-		printf("unknown MPC86x (0x%08x)", k);
-		break;
-	}
-
-	printf(" at %s MHz: ", strmhz(buf, clock));
-
-	print_size(checkicache(), " I-Cache ");
-	print_size(checkdcache(), " D-Cache");
-
-	/* do we have a FEC (860T/P or 852/859/866/885)? */
-
-	out_be32(&immap->im_cpm.cp_fec.fec_addr_low, 0x12345678);
-	if (in_be32(&immap->im_cpm.cp_fec.fec_addr_low) == 0x12345678)
-		printf(" FEC present");
-
-	putc('\n');
-
-	return 0;
-}
-
-/* ------------------------------------------------------------------------- */
-
-int checkcpu(void)
-{
-	ulong clock = gd->cpu_clk;
-	uint immr = get_immr();	/* Return full IMMR contents */
-	uint pvr = get_pvr();
-
-	puts("CPU:   ");
-
-	return check_CPU(clock, pvr, immr);
-}
-
 /* ------------------------------------------------------------------------- */
 /* L1 i-cache                                                                */
 
@@ -143,7 +79,7 @@ int checkicache(void)
 /* L1 d-cache                                                                */
 /* call with cache disabled                                                  */
 
-int checkdcache(void)
+static int checkdcache(void)
 {
 	immap_t __iomem *immap = (immap_t __iomem *)CONFIG_SYS_IMMR;
 	memctl8xx_t __iomem *memctl = &immap->im_memctl;
@@ -175,6 +111,70 @@ int checkdcache(void)
 	return lines << 4;
 };
 
+static int check_CPU(long clock, uint pvr, uint immr)
+{
+	immap_t __iomem *immap = (immap_t __iomem *)CONFIG_SYS_IMMR;
+	uint k;
+	char buf[32];
+
+	/* the highest 16 bits should be 0x0050 for a 860 */
+
+	if (PVR_VER(pvr) != PVR_VER(PVR_8xx))
+		return -1;
+
+	k = (immr << 16) |
+	    in_be16(&immap->im_cpm.cp_dparam16[PROFF_REVNUM / sizeof(u16)]);
+
+	/*
+	 * Some boards use sockets so different CPUs can be used.
+	 * We have to check chip version in run time.
+	 */
+	switch (k) {
+		/* MPC866P/MPC866T/MPC859T/MPC859DSL/MPC852T */
+	case 0x08010004:		/* Rev. A.0 */
+		printf("MPC866xxxZPnnA");
+		break;
+	case 0x08000003:		/* Rev. 0.3 */
+		printf("MPC866xxxZPnn");
+		break;
+	case 0x09000000:		/* 870/875/880/885 */
+		puts("MPC885ZPnn");
+		break;
+
+	default:
+		printf("unknown MPC86x (0x%08x)", k);
+		break;
+	}
+
+	printf(" at %s MHz: ", strmhz(buf, clock));
+
+	print_size(checkicache(), " I-Cache ");
+	print_size(checkdcache(), " D-Cache");
+
+	/* do we have a FEC (860T/P or 852/859/866/885)? */
+
+	out_be32(&immap->im_cpm.cp_fec.fec_addr_low, 0x12345678);
+	if (in_be32(&immap->im_cpm.cp_fec.fec_addr_low) == 0x12345678)
+		printf(" FEC present");
+
+	putc('\n');
+
+	return 0;
+}
+
+/* ------------------------------------------------------------------------- */
+
+int checkcpu(void)
+{
+	ulong clock = gd->cpu_clk;
+	uint immr = get_immr();	/* Return full IMMR contents */
+	uint pvr = get_pvr();
+
+	puts("CPU:   ");
+
+	return check_CPU(clock, pvr, immr);
+}
+
 /* ------------------------------------------------------------------------- */
 
 void upmconfig(uint upm, uint *table, uint size)
diff --git a/include/common.h b/include/common.h
index 48eb223627..423f1023ad 100644
--- a/include/common.h
+++ b/include/common.h
@@ -195,8 +195,6 @@ void	trap_init     (ulong);
 
 void s_init(void);
 
-int	checkicache   (void);
-int	checkdcache   (void);
 void	upmconfig     (unsigned int, unsigned int *, unsigned int);
 ulong	get_tbclk     (void);
 void	reset_misc    (void);
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 31/42] common: Move ARM cache operations out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (29 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 30/42] common: Drop checkicache() and checkdcache() Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 32/42] arm: powerpc: Tidy up code style for interrupt functions Simon Glass
                   ` (10 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions are CPU-related and do not use driver model. Move them to
cpu_legacy.h

Signed-off-by: Simon Glass <sjg@chromium.org>
---

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/x86/cpu/quark/quark.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_legacy.h                       | 24 ++++++++++++++++++++++
 lib/efi_loader/efi_image_loader.c          |  1 +
 lib/efi_loader/efi_runtime.c               |  1 +
 post/cpu/mpc83xx/ecc.c                     |  1 +
 136 files changed, 160 insertions(+), 24 deletions(-)

diff --git a/arch/arm/cpu/arm926ejs/lpc32xx/cpu.c b/arch/arm/cpu/arm926ejs/lpc32xx/cpu.c
index 5117177474..855d921aa9 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_legacy.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..c8ff9dcc56 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_legacy.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..94dcdb5ada 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_legacy.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..25a5b45c63 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_legacy.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..8054ea57f4 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_legacy.h>
 #include <linux/types.h>
 #include <common.h>
 
diff --git a/arch/arm/lib/cache.c b/arch/arm/lib/cache.c
index 463d283cb7..d5d748ff93 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_legacy.h>
 #include <malloc.h>
 
 /*
diff --git a/arch/arm/mach-bcm283x/mbox.c b/arch/arm/mach-bcm283x/mbox.c
index 3c67f68c17..b9301a2ae0 100644
--- a/arch/arm/mach-bcm283x/mbox.c
+++ b/arch/arm/mach-bcm283x/mbox.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..c91d315a5c 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_legacy.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..31ebf41f68 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_legacy.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..f5b52fe6bf 100644
--- a/arch/arm/mach-tegra/ivc.c
+++ b/arch/arm/mach-tegra/ivc.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..d95bf7d21b 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_legacy.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..c9c3a0aaed 100644
--- a/arch/mips/lib/reloc.c
+++ b/arch/mips/lib/reloc.c
@@ -27,6 +27,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..ff02d437a8 100644
--- a/arch/mips/lib/traps.c
+++ b/arch/mips/lib/traps.c
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..0949cbc3d0 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_legacy.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..b0c6430586 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_legacy.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 ca8e6a140e..d32d5be39f 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_legacy.h>
+#include <irq_legacy.h>
 #include <watchdog.h>
 #include <asm/cache.h>
 
diff --git a/arch/nios2/cpu/cpu.c b/arch/nios2/cpu/cpu.c
index 1fc79213e2..54b6741d4e 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_legacy.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..c671e03214 100644
--- a/arch/nios2/lib/bootm.c
+++ b/arch/nios2/lib/bootm.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..a7d6f20d1c 100644
--- a/arch/powerpc/lib/bootm.c
+++ b/arch/powerpc/lib/bootm.c
@@ -8,6 +8,7 @@
 
 
 #include <common.h>
+#include <cpu_legacy.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..192a50c08d 100644
--- a/arch/powerpc/lib/cache.c
+++ b/arch/powerpc/lib/cache.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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 e717675713..682ad22de2 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_legacy.h>
+#include <irq_legacy.h>
 #include <asm/cache.h>
 
 /*
diff --git a/arch/riscv/lib/smp.c b/arch/riscv/lib/smp.c
index cc66f15567..44ea470b8e 100644
--- a/arch/riscv/lib/smp.c
+++ b/arch/riscv/lib/smp.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..6a2b8f7162 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_legacy.h>
 #include <spl.h>
 #include <asm/smp.h>
 
diff --git a/arch/sandbox/cpu/cpu.c b/arch/sandbox/cpu/cpu.c
index f3af88d79e..95c90da65a 100644
--- a/arch/sandbox/cpu/cpu.c
+++ b/arch/sandbox/cpu/cpu.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..1c5d6a963c 100644
--- a/arch/x86/cpu/quark/dram.c
+++ b/arch/x86/cpu/quark/dram.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <errno.h>
 #include <fdtdec.h>
 #include <malloc.h>
diff --git a/arch/x86/cpu/quark/quark.c b/arch/x86/cpu/quark/quark.c
index f598666a6b..91b68433d4 100644
--- a/arch/x86/cpu/quark/quark.c
+++ b/arch/x86/cpu/quark/quark.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <cpu.h>
+#include <cpu_legacy.h>
 #include <mmc.h>
 #include <asm/io.h>
 #include <asm/ioapic.h>
diff --git a/arch/xtensa/lib/bootm.c b/arch/xtensa/lib/bootm.c
index 93eea53c5f..c62612709a 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_legacy.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..e2b65052e8 100644
--- a/board/Arcturus/ucp1020/cmd_arc.c
+++ b/board/Arcturus/ucp1020/cmd_arc.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..73cf8b1194 100644
--- a/board/beckhoff/mx53cx9020/mx53cx9020.c
+++ b/board/beckhoff/mx53cx9020/mx53cx9020.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..6af49a368d 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_legacy.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 64d8e4d9f7..35893bd0b0 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_legacy.h>
+#include <irq_legacy.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..57de1f8e55 100644
--- a/board/phytec/pfla02/pfla02.c
+++ b/board/phytec/pfla02/pfla02.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..68e8071d26 100644
--- a/board/sandbox/sandbox.c
+++ b/board/sandbox/sandbox.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <cros_ec.h>
 #include <dm.h>
 #include <led.h>
diff --git a/cmd/disk.c b/cmd/disk.c
index 9e635c1172..afb633faa3 100644
--- a/cmd/disk.c
+++ b/cmd/disk.c
@@ -5,6 +5,7 @@
  */
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.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..c120231538 100644
--- a/cmd/load.c
+++ b/cmd/load.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <command.h>
 #include <console.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <s_record.h>
 #include <net.h>
diff --git a/cmd/ximg.c b/cmd/ximg.c
index a9481004f0..3f67aa98f5 100644
--- a/cmd/ximg.c
+++ b/cmd/ximg.c
@@ -13,6 +13,7 @@
  */
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <gzip.h>
 #include <image.h>
diff --git a/common/avb_verify.c b/common/avb_verify.c
index 36898a610f..2f5bd576ec 100644
--- a/common/avb_verify.c
+++ b/common/avb_verify.c
@@ -6,6 +6,7 @@
 
 #include <avb_verify.h>
 #include <blk.h>
+#include <cpu_legacy.h>
 #include <fastboot.h>
 #include <image.h>
 #include <malloc.h>
diff --git a/common/board_r.c b/common/board_r.c
index 05e08212b4..8189d1f31b 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <api.h>
+#include <cpu_legacy.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..b031c5ce20 100644
--- a/common/bootm.c
+++ b/common/bootm.c
@@ -7,6 +7,7 @@
 #ifndef USE_HOSTCC
 #include <common.h>
 #include <bootstage.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <errno.h>
 #include <fdt_support.h>
diff --git a/common/bouncebuf.c b/common/bouncebuf.c
index a7098e2caf..8363613b00 100644
--- a/common/bouncebuf.c
+++ b/common/bouncebuf.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <malloc.h>
 #include <errno.h>
 #include <bouncebuf.h>
diff --git a/common/image.c b/common/image.c
index 1c8ac2df70..2edcf12cce 100644
--- a/common/image.c
+++ b/common/image.c
@@ -8,6 +8,7 @@
 
 #ifndef USE_HOSTCC
 #include <common.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <u-boot/crc.h>
 #include <watchdog.h>
diff --git a/common/lcd.c b/common/lcd.c
index b34754fe51..6e1f471231 100644
--- a/common/lcd.c
+++ b/common/lcd.c
@@ -10,6 +10,7 @@
 #include <config.h>
 #include <common.h>
 #include <command.h>
+#include <cpu_legacy.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..7bb91c064d 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_legacy.h>
 #include <errno.h>
 #include <spl.h>
 #include <asm/smp.h>
diff --git a/common/update.c b/common/update.c
index 457b29f42a..fe11662679 100644
--- a/common/update.c
+++ b/common/update.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..ce97d805f8 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_legacy.h>
 
 #include <command.h>
 #include <dm.h>
diff --git a/drivers/ata/dwc_ahsata.c b/drivers/ata/dwc_ahsata.c
index afced8e7e3..b17c3da9d6 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_legacy.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..02bcb19dc8 100644
--- a/drivers/ata/fsl_ahci.c
+++ b/drivers/ata/fsl_ahci.c
@@ -6,6 +6,7 @@
  *
  */
 #include <common.h>
+#include <cpu_legacy.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..1c97e932f6 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_legacy.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..435fdacce3 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_legacy.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..b42bd929dd 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..9c459b5b37 100644
--- a/drivers/bootcount/bootcount.c
+++ b/drivers/bootcount/bootcount.c
@@ -5,6 +5,7 @@
  */
 
 #include <bootcount.h>
+#include <cpu_legacy.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..1895bc0f6a 100644
--- a/drivers/bootcount/bootcount_ram.c
+++ b/drivers/bootcount/bootcount_ram.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <asm/io.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/core/device.c b/drivers/core/device.c
index 8eabaf8b55..f112f8ccd1 100644
--- a/drivers/core/device.c
+++ b/drivers/core/device.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..9726df17f5 100644
--- a/drivers/crypto/fsl/fsl_blob.c
+++ b/drivers/crypto/fsl/fsl_blob.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..f0f8c3bd98 100644
--- a/drivers/crypto/fsl/fsl_hash.c
+++ b/drivers/crypto/fsl/fsl_hash.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..8c4e313559 100644
--- a/drivers/crypto/fsl/jobdesc.c
+++ b/drivers/crypto/fsl/jobdesc.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..13336a25e1 100644
--- a/drivers/crypto/fsl/jr.c
+++ b/drivers/crypto/fsl/jr.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..5755965a9f 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_legacy.h>
 #include <linux/list.h>
 
 #include <common.h>
diff --git a/drivers/dma/bcm6348-iudma.c b/drivers/dma/bcm6348-iudma.c
index e7bd1b2350..ea803493ed 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_legacy.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..8f81cc1eec 100644
--- a/drivers/dma/dma-uclass.c
+++ b/drivers/dma/dma-uclass.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..fe486d2cc1 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_legacy.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..58efc7d8e5 100644
--- a/drivers/fpga/versalpl.c
+++ b/drivers/fpga/versalpl.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..1c6984e239 100644
--- a/drivers/fpga/zynqmppl.c
+++ b/drivers/fpga/zynqmppl.c
@@ -7,6 +7,7 @@
 
 #include <console.h>
 #include <common.h>
+#include <cpu_legacy.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..584e14f932 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_legacy.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..57f6c668d9 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_legacy.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..129eb9e82f 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_legacy.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..dc374b2eed 100644
--- a/drivers/mmc/fsl_esdhc_spl.c
+++ b/drivers/mmc/fsl_esdhc_spl.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..3ac00cae36 100644
--- a/drivers/mmc/meson_gx_mmc.c
+++ b/drivers/mmc/meson_gx_mmc.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..bdc92ecb9b 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_legacy.h>
 #include <malloc.h>
 #include <memalign.h>
 #include <mmc.h>
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index fbc576fd72..8d93a3efa4 100644
--- a/drivers/mmc/sdhci.c
+++ b/drivers/mmc/sdhci.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..1166bcc224 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_legacy.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..75967445cd 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_legacy.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..eb1d50c8c6 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_legacy.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..523173174d 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_legacy.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..c97beec581 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_legacy.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..201cbf300c 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_legacy.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..910aa53a64 100644
--- a/drivers/mtd/pic32_flash.c
+++ b/drivers/mtd/pic32_flash.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..6b31029776 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_legacy.h>
 #include <spi_flash.h>
 #include <malloc.h>
 
diff --git a/drivers/net/ag7xxx.c b/drivers/net/ag7xxx.c
index 7f1dee4b3e..c7c398f85b 100644
--- a/drivers/net/ag7xxx.c
+++ b/drivers/net/ag7xxx.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..d27b4873de 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_legacy.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..98034393ca 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_legacy.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..f58ded9138 100644
--- a/drivers/net/designware.c
+++ b/drivers/net/designware.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <clk.h>
+#include <cpu_legacy.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..5289ce01e7 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_legacy.h>
 #include <dm.h>
 #include <errno.h>
 #include <memalign.h>
diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c
index a34f697461..0cba942afc 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_legacy.h>
 #include <dm.h>
 #include <errno.h>
 #include <memalign.h>
diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c
index 3d43a58d4a..bae481977b 100644
--- a/drivers/net/ethoc.c
+++ b/drivers/net/ethoc.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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 080dbcf7db..04020cfe80 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..1a06fad872 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_legacy.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..2dbc66e877 100644
--- a/drivers/net/ftgmac100.c
+++ b/drivers/net/ftgmac100.c
@@ -12,6 +12,7 @@
  */
 
 #include <clk.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <miiphy.h>
 #include <net.h>
diff --git a/drivers/net/ftmac100.c b/drivers/net/ftmac100.c
index d8f1dde657..58f4dc79ce 100644
--- a/drivers/net/ftmac100.c
+++ b/drivers/net/ftmac100.c
@@ -8,6 +8,7 @@
 
 #include <config.h>
 #include <common.h>
+#include <cpu_legacy.h>
 #include <env.h>
 #include <malloc.h>
 #include <net.h>
diff --git a/drivers/net/higmacv300.c b/drivers/net/higmacv300.c
index 1be8359133..d7de4db14a 100644
--- a/drivers/net/higmacv300.c
+++ b/drivers/net/higmacv300.c
@@ -3,6 +3,7 @@
  * Copyright (c) 2019, Linaro Limited
  */
 
+#include <cpu_legacy.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..21d1bbe53a 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_legacy.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..88ab2ff1df 100644
--- a/drivers/net/macb.c
+++ b/drivers/net/macb.c
@@ -4,6 +4,7 @@
  */
 #include <common.h>
 #include <clk.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 
 /*
diff --git a/drivers/net/mt7628-eth.c b/drivers/net/mt7628-eth.c
index a1d12f6902..5ed7c29aae 100644
--- a/drivers/net/mt7628-eth.c
+++ b/drivers/net/mt7628-eth.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..c9a10beefa 100644
--- a/drivers/net/mtk_eth.c
+++ b/drivers/net/mtk_eth.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <malloc.h>
 #include <miiphy.h>
diff --git a/drivers/net/mvneta.c b/drivers/net/mvneta.c
index 333be8ff28..e906d0d62f 100644
--- a/drivers/net/mvneta.c
+++ b/drivers/net/mvneta.c
@@ -13,6 +13,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <net.h>
 #include <netdev.h>
diff --git a/drivers/net/mvpp2.c b/drivers/net/mvpp2.c
index bd89725e77..5b23c11714 100644
--- a/drivers/net/mvpp2.c
+++ b/drivers/net/mvpp2.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..5581078743 100644
--- a/drivers/net/pch_gbe.c
+++ b/drivers/net/pch_gbe.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..aff15ca649 100644
--- a/drivers/net/pcnet.c
+++ b/drivers/net/pcnet.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..9d6b9e0d65 100644
--- a/drivers/net/pic32_eth.c
+++ b/drivers/net/pic32_eth.c
@@ -4,6 +4,7 @@
  *
  */
 #include <common.h>
+#include <cpu_legacy.h>
 #include <errno.h>
 #include <dm.h>
 #include <net.h>
diff --git a/drivers/net/ravb.c b/drivers/net/ravb.c
index 11abe5e0c9..51c975b1cf 100644
--- a/drivers/net/ravb.c
+++ b/drivers/net/ravb.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <clk.h>
+#include <cpu_legacy.h>
 #include <dm.h>
 #include <errno.h>
 #include <miiphy.h>
diff --git a/drivers/net/rtl8139.c b/drivers/net/rtl8139.c
index 13309970e2..f125019902 100644
--- a/drivers/net/rtl8139.c
+++ b/drivers/net/rtl8139.c
@@ -72,6 +72,7 @@
 */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <malloc.h>
 #include <net.h>
 #include <netdev.h>
diff --git a/drivers/net/rtl8169.c b/drivers/net/rtl8169.c
index 521e5909a2..9d32ba13a6 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_legacy.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..93acb86082 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_legacy.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..a0c1bba6a6 100644
--- a/drivers/net/sni_ave.c
+++ b/drivers/net/sni_ave.c
@@ -5,6 +5,7 @@
  */
 
 #include <clk.h>
+#include <cpu_legacy.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..1dd8a5eca6 100644
--- a/drivers/net/sun8i_emac.c
+++ b/drivers/net/sun8i_emac.c
@@ -10,6 +10,7 @@
  *
 */
 
+#include <cpu_legacy.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..dd4b93c56d 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_legacy.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..98628ced44 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_legacy.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..6ca579d249 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_legacy.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..7dcf78ed0b 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_legacy.h>
 #include <dm.h>
 #include <net.h>
 #include <netdev.h>
diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c
index cddcc2f11d..a5e66c661a 100644
--- a/drivers/nvme/nvme.c
+++ b/drivers/nvme/nvme.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..93d09adf30 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_legacy.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..205339e7ea 100644
--- a/drivers/spi/mxs_spi.c
+++ b/drivers/spi/mxs_spi.c
@@ -13,6 +13,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..fdaad40a8b 100644
--- a/drivers/spi/ti_qspi.c
+++ b/drivers/spi/ti_qspi.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..c304cc12cc 100644
--- a/drivers/spi/zynqmp_gqspi.c
+++ b/drivers/spi/zynqmp_gqspi.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..26b8e98519 100644
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..ad14327a9d 100644
--- a/drivers/usb/dwc3/dwc3-generic.c
+++ b/drivers/usb/dwc3/dwc3-generic.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..cfc73f3992 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_legacy.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..e62bfdddd8 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..7fbc886233 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_legacy.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..e3bf6d5dec 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_legacy.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..7dddbfb5e3 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_legacy.h>
+
 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..dfc057ca7c 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_legacy.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..bbf0273c0e 100644
--- a/drivers/usb/host/dwc2.c
+++ b/drivers/usb/host/dwc2.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..2a6a146448 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_legacy.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..b9d9ba2b28 100644
--- a/drivers/usb/host/ohci-hcd.c
+++ b/drivers/usb/host/ohci-hcd.c
@@ -28,6 +28,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..b5702591a8 100644
--- a/drivers/usb/host/xhci-mem.c
+++ b/drivers/usb/host/xhci-mem.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..0b592eeea3 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -14,6 +14,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..e4f0a06e69 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -20,6 +20,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..ebe2249e32 100644
--- a/drivers/video/atmel_hlcdfb.c
+++ b/drivers/video/atmel_hlcdfb.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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..9172a3b011 100644
--- a/drivers/video/sunxi/sunxi_display.c
+++ b/drivers/video/sunxi/sunxi_display.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.h>
 #include <efi_loader.h>
 #include <time.h>
 
diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
index d4071c0661..8700aae294 100644
--- a/drivers/video/video-uclass.c
+++ b/drivers/video/video-uclass.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_legacy.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_legacy.h b/include/cpu_legacy.h
index a14d23a36d..46f3d92459 100644
--- a/include/cpu_legacy.h
+++ b/include/cpu_legacy.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..25023511c9 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_legacy.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..334576b1f7 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_legacy.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 ce24705777..d3c5773f7b 100644
--- a/post/cpu/mpc83xx/ecc.c
+++ b/post/cpu/mpc83xx/ecc.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
+#include <irq_legacy.h>
 #include <mpc83xx.h>
 #include <watchdog.h>
 #include <asm/io.h>
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 32/42] arm: powerpc: Tidy up code style for interrupt functions
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (30 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 31/42] common: Move ARM cache operations out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 33/42] common: Move interrupt functions into a new header Simon Glass
                   ` (9 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Remove the unwanted space before the bracket.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/arm11/cpu.c              |  2 +-
 arch/arm/cpu/arm920t/cpu.c            |  2 +-
 arch/arm/cpu/arm926ejs/cpu.c          |  2 +-
 arch/arm/cpu/arm946es/cpu.c           |  2 +-
 arch/arm/cpu/sa1100/cpu.c             |  2 +-
 arch/arm/lib/interrupts.c             |  6 +++---
 arch/m68k/lib/interrupts.c            |  8 ++++----
 arch/nios2/cpu/interrupts.c           | 14 +++++++-------
 arch/powerpc/cpu/mpc83xx/cpu.c        |  2 +-
 arch/powerpc/cpu/mpc83xx/interrupts.c |  6 +++---
 arch/powerpc/cpu/mpc86xx/interrupts.c |  2 +-
 arch/powerpc/lib/interrupts.c         |  8 ++++----
 arch/sh/cpu/sh4/interrupts.c          |  6 +++---
 board/cobra5272/flash.c               |  8 ++++----
 14 files changed, 35 insertions(+), 35 deletions(-)

diff --git a/arch/arm/cpu/arm11/cpu.c b/arch/arm/cpu/arm11/cpu.c
index a546ec21de..280622fe33 100644
--- a/arch/arm/cpu/arm11/cpu.c
+++ b/arch/arm/cpu/arm11/cpu.c
@@ -30,7 +30,7 @@ int cleanup_before_linux (void)
 	 * we turn off caches etc ...
 	 */
 
-	disable_interrupts ();
+	disable_interrupts();
 
 	/* turn off I/D-cache */
 	icache_disable();
diff --git a/arch/arm/cpu/arm920t/cpu.c b/arch/arm/cpu/arm920t/cpu.c
index a98c86eaf3..e632aa52f8 100644
--- a/arch/arm/cpu/arm920t/cpu.c
+++ b/arch/arm/cpu/arm920t/cpu.c
@@ -28,7 +28,7 @@ int cleanup_before_linux (void)
 	 * we turn off caches etc ...
 	 */
 
-	disable_interrupts ();
+	disable_interrupts();
 
 	/* turn off I/D-cache */
 	icache_disable();
diff --git a/arch/arm/cpu/arm926ejs/cpu.c b/arch/arm/cpu/arm926ejs/cpu.c
index 6d06fb758a..f4b27d93be 100644
--- a/arch/arm/cpu/arm926ejs/cpu.c
+++ b/arch/arm/cpu/arm926ejs/cpu.c
@@ -28,7 +28,7 @@ int cleanup_before_linux (void)
 	 * we turn off caches etc ...
 	 */
 
-	disable_interrupts ();
+	disable_interrupts();
 
 
 	/* turn off I/D-cache */
diff --git a/arch/arm/cpu/arm946es/cpu.c b/arch/arm/cpu/arm946es/cpu.c
index 0a78ffbae1..19b805096f 100644
--- a/arch/arm/cpu/arm946es/cpu.c
+++ b/arch/arm/cpu/arm946es/cpu.c
@@ -29,7 +29,7 @@ int cleanup_before_linux (void)
 	 * we turn off caches etc ...
 	 */
 
-	disable_interrupts ();
+	disable_interrupts();
 
 	/* ARM926E-S needs the protection unit enabled for the icache to have
 	 * been enabled	 - left for possible later use
diff --git a/arch/arm/cpu/sa1100/cpu.c b/arch/arm/cpu/sa1100/cpu.c
index 8ef9f294f2..ec408564c1 100644
--- a/arch/arm/cpu/sa1100/cpu.c
+++ b/arch/arm/cpu/sa1100/cpu.c
@@ -30,7 +30,7 @@ int cleanup_before_linux (void)
 	 * just disable everything that can disturb booting linux
 	 */
 
-	disable_interrupts ();
+	disable_interrupts();
 
 	/* turn off I-cache */
 	icache_disable();
diff --git a/arch/arm/lib/interrupts.c b/arch/arm/lib/interrupts.c
index ee775ce5d2..e78ca56d25 100644
--- a/arch/arm/lib/interrupts.c
+++ b/arch/arm/lib/interrupts.c
@@ -25,7 +25,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int interrupt_init (void)
+int interrupt_init(void)
 {
 	/*
 	 * setup up stacks if necessary
@@ -35,11 +35,11 @@ int interrupt_init (void)
 	return 0;
 }
 
-void enable_interrupts (void)
+void enable_interrupts(void)
 {
 	return;
 }
-int disable_interrupts (void)
+int disable_interrupts(void)
 {
 	return 0;
 }
diff --git a/arch/m68k/lib/interrupts.c b/arch/m68k/lib/interrupts.c
index 2d1c6136a1..85ae3b4ee0 100644
--- a/arch/m68k/lib/interrupts.c
+++ b/arch/m68k/lib/interrupts.c
@@ -42,7 +42,7 @@ static __inline__ void set_sr (unsigned short sr)
 /*
  * Install and free an interrupt handler
  */
-void irq_install_handler (int vec, interrupt_handler_t * handler, void *arg)
+void irq_install_handler(int vec, interrupt_handler_t * handler, void *arg)
 {
 	if ((vec < 0) || (vec >= NR_IRQS)) {
 		printf ("irq_install_handler: wrong interrupt vector %d\n",
@@ -54,7 +54,7 @@ void irq_install_handler (int vec, interrupt_handler_t * handler, void *arg)
 	irq_vecs[vec].arg = arg;
 }
 
-void irq_free_handler (int vec)
+void irq_free_handler(int vec)
 {
 	if ((vec < 0) || (vec >= NR_IRQS)) {
 		return;
@@ -64,7 +64,7 @@ void irq_free_handler (int vec)
 	irq_vecs[vec].arg = NULL;
 }
 
-void enable_interrupts (void)
+void enable_interrupts(void)
 {
 	unsigned short sr;
 
@@ -72,7 +72,7 @@ void enable_interrupts (void)
 	set_sr (sr & ~0x0700);
 }
 
-int disable_interrupts (void)
+int disable_interrupts(void)
 {
 	unsigned short sr;
 
diff --git a/arch/nios2/cpu/interrupts.c b/arch/nios2/cpu/interrupts.c
index 6b5d0724e3..96c3020935 100644
--- a/arch/nios2/cpu/interrupts.c
+++ b/arch/nios2/cpu/interrupts.c
@@ -23,7 +23,7 @@ struct	irq_action {
 
 static struct irq_action vecs[32];
 
-int disable_interrupts (void)
+int disable_interrupts(void)
 {
 	int val = rdctl (CTL_STATUS);
 	wrctl (CTL_STATUS, val & ~STATUS_IE);
@@ -36,7 +36,7 @@ void enable_interrupts( void )
 	wrctl (CTL_STATUS, val | STATUS_IE);
 }
 
-void external_interrupt (struct pt_regs *regs)
+void external_interrupt(struct pt_regs *regs)
 {
 	unsigned irqs;
 	struct irq_action *act;
@@ -73,7 +73,7 @@ static void def_hdlr (void *arg)
 }
 
 /*************************************************************************/
-void irq_install_handler (int irq, interrupt_handler_t *hdlr, void *arg)
+void irq_install_handler(int irq, interrupt_handler_t *hdlr, void *arg)
 {
 
 	int flag;
@@ -84,7 +84,7 @@ void irq_install_handler (int irq, interrupt_handler_t *hdlr, void *arg)
 		return;
 	act = &vecs[irq];
 
-	flag = disable_interrupts ();
+	flag = disable_interrupts();
 	if (hdlr) {
 		act->handler = hdlr;
 		act->arg = arg;
@@ -95,11 +95,11 @@ void irq_install_handler (int irq, interrupt_handler_t *hdlr, void *arg)
 		ena &= ~(1 << irq);		/* disable */
 	}
 	wrctl (CTL_IENABLE, ena);
-	if (flag) enable_interrupts ();
+	if (flag) enable_interrupts();
 }
 
 
-int interrupt_init (void)
+int interrupt_init(void)
 {
 	int i;
 
@@ -110,7 +110,7 @@ int interrupt_init (void)
 		vecs[i].count = 0;
 	}
 
-	enable_interrupts ();
+	enable_interrupts();
 	return (0);
 }
 
diff --git a/arch/powerpc/cpu/mpc83xx/cpu.c b/arch/powerpc/cpu/mpc83xx/cpu.c
index 1c0d0d2632..71e4bb3f28 100644
--- a/arch/powerpc/cpu/mpc83xx/cpu.c
+++ b/arch/powerpc/cpu/mpc83xx/cpu.c
@@ -196,7 +196,7 @@ void watchdog_reset (void)
 	immr->wdt.swsrr = 0xaa39;
 
 	if (re_enable)
-		enable_interrupts ();
+		enable_interrupts();
 }
 #endif
 
diff --git a/arch/powerpc/cpu/mpc83xx/interrupts.c b/arch/powerpc/cpu/mpc83xx/interrupts.c
index 520c2c363e..04cd147321 100644
--- a/arch/powerpc/cpu/mpc83xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc83xx/interrupts.c
@@ -35,7 +35,7 @@ void interrupt_init_cpu (unsigned *decrementer_count)
  * Handle external interrupts
  */
 
-void external_interrupt (struct pt_regs *regs)
+void external_interrupt(struct pt_regs *regs)
 {
 }
 
@@ -45,12 +45,12 @@ void external_interrupt (struct pt_regs *regs)
  */
 
 void
-irq_install_handler (int irq, interrupt_handler_t * handler, void *arg)
+irq_install_handler(int irq, interrupt_handler_t * handler, void *arg)
 {
 }
 
 
-void irq_free_handler (int irq)
+void irq_free_handler(int irq)
 {
 }
 
diff --git a/arch/powerpc/cpu/mpc86xx/interrupts.c b/arch/powerpc/cpu/mpc86xx/interrupts.c
index ed780a599d..04c8f25af6 100644
--- a/arch/powerpc/cpu/mpc86xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc86xx/interrupts.c
@@ -108,5 +108,5 @@ int do_irqinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  */
 void external_interrupt(struct pt_regs *regs)
 {
-	puts("external_interrupt (oops!)\n");
+	puts("external_interrupt(oops!)\n");
 }
diff --git a/arch/powerpc/lib/interrupts.c b/arch/powerpc/lib/interrupts.c
index 4b7f543a18..a58ddfa569 100644
--- a/arch/powerpc/lib/interrupts.c
+++ b/arch/powerpc/lib/interrupts.c
@@ -38,13 +38,13 @@ static __inline__ void set_dec (unsigned long val)
 }
 #endif /* !CONFIG_MPC83XX_TIMER */
 
-void enable_interrupts (void)
+void enable_interrupts(void)
 {
 	set_msr (get_msr () | MSR_EE);
 }
 
 /* returns flag if MSR_EE was set before */
-int disable_interrupts (void)
+int disable_interrupts(void)
 {
 	ulong msr = get_msr ();
 
@@ -53,7 +53,7 @@ int disable_interrupts (void)
 }
 
 #ifndef CONFIG_MPC83XX_TIMER
-int interrupt_init (void)
+int interrupt_init(void)
 {
 	/* call cpu specific function from $(CPU)/interrupts.c */
 	interrupt_init_cpu (&decrementer_count);
@@ -67,7 +67,7 @@ int interrupt_init (void)
 
 static volatile ulong timestamp = 0;
 
-void timer_interrupt (struct pt_regs *regs)
+void timer_interrupt(struct pt_regs *regs)
 {
 	/* call cpu specific function from $(CPU)/interrupts.c */
 	timer_interrupt_cpu (regs);
diff --git a/arch/sh/cpu/sh4/interrupts.c b/arch/sh/cpu/sh4/interrupts.c
index ff7470eccc..5982aad54e 100644
--- a/arch/sh/cpu/sh4/interrupts.c
+++ b/arch/sh/cpu/sh4/interrupts.c
@@ -6,16 +6,16 @@
 
 #include <common.h>
 
-int interrupt_init (void)
+int interrupt_init(void)
 {
 	return 0;
 }
 
-void enable_interrupts (void)
+void enable_interrupts(void)
 {
 
 }
 
-int disable_interrupts (void){
+int disable_interrupts(void){
 	return 0;
 }
diff --git a/board/cobra5272/flash.c b/board/cobra5272/flash.c
index 0e1d9ce8d3..ccff46adf8 100644
--- a/board/cobra5272/flash.c
+++ b/board/cobra5272/flash.c
@@ -167,7 +167,7 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)
 
 	cflag = icache_status();
 	icache_disable();
-	iflag = disable_interrupts ();
+	iflag = disable_interrupts();
 
 	printf ("\n");
 
@@ -235,7 +235,7 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)
 	udelay (10000);
 
 	if (iflag)
-		enable_interrupts ();
+		enable_interrupts();
 
 	if (cflag)
 		icache_enable();
@@ -270,7 +270,7 @@ static int write_word (flash_info_t * info, ulong dest, ulong data)
 
 	cflag = icache_status();
 	icache_disable();
-	iflag = disable_interrupts ();
+	iflag = disable_interrupts();
 
 	MEM_FLASH_ADDR1 = CMD_UNLOCK1;
 	MEM_FLASH_ADDR2 = CMD_UNLOCK2;
@@ -301,7 +301,7 @@ static int write_word (flash_info_t * info, ulong dest, ulong data)
 		rc = ERR_PROG_ERROR;
 
 	if (iflag)
-		enable_interrupts ();
+		enable_interrupts();
 
 	if (cflag)
 		icache_enable();
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 33/42] common: Move interrupt functions into a new header
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (31 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 32/42] arm: powerpc: Tidy up code style for interrupt functions Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-13 19:00   ` Tom Rini
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 34/42] common: Move enable/disable_interrupts out of common.h Simon Glass
                   ` (8 subsequent siblings)
  41 siblings, 1 reply; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions do not use driver model but are fairly widely used in
U-Boot. But it is not clear that they will use driver model anytime soon,
so we don't want to label them as 'legacy'.

Move them to a new irq_func.h header file. Avoid the name 'irq.h' since it
is widely used in U-Boot already.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Rename irq_legacy to irq_func to avoid the 'legacy' label
- Update commit message

Changes in v2: None

 arch/arc/lib/interrupts.c             |  1 +
 arch/arm/lib/interrupts.c             |  1 +
 arch/arm/lib/interrupts_64.c          |  1 +
 arch/arm/lib/interrupts_m.c           |  1 +
 arch/m68k/cpu/mcf5227x/interrupts.c   |  1 +
 arch/m68k/cpu/mcf523x/interrupts.c    |  1 +
 arch/m68k/cpu/mcf52x2/interrupts.c    |  1 +
 arch/m68k/cpu/mcf530x/interrupts.c    |  1 +
 arch/m68k/cpu/mcf532x/interrupts.c    |  1 +
 arch/m68k/cpu/mcf5445x/interrupts.c   |  1 +
 arch/m68k/cpu/mcf547x_8x/interrupts.c |  1 +
 arch/m68k/cpu/mcf547x_8x/slicetimer.c |  1 +
 arch/m68k/lib/interrupts.c            |  1 +
 arch/m68k/lib/time.c                  |  1 +
 arch/microblaze/cpu/interrupts.c      |  1 +
 arch/mips/cpu/interrupts.c            |  1 +
 arch/mips/mach-jz47xx/jz4780/timer.c  |  1 +
 arch/nds32/cpu/n1213/ae3xx/cpu.c      |  2 +-
 arch/nds32/cpu/n1213/ag101/timer.c    |  1 +
 arch/nds32/lib/interrupts.c           |  1 +
 arch/nios2/cpu/interrupts.c           |  1 +
 arch/powerpc/cpu/mpc83xx/interrupts.c |  1 +
 arch/powerpc/cpu/mpc85xx/interrupts.c |  1 +
 arch/powerpc/cpu/mpc85xx/traps.c      |  1 +
 arch/powerpc/cpu/mpc86xx/interrupts.c |  1 +
 arch/powerpc/cpu/mpc8xx/interrupts.c  |  1 +
 arch/powerpc/lib/interrupts.c         |  1 +
 arch/riscv/cpu/ax25/cpu.c             |  2 +-
 arch/riscv/lib/interrupts.c           |  1 +
 arch/sandbox/lib/interrupts.c         |  1 +
 arch/sh/cpu/sh4/interrupts.c          |  1 +
 arch/x86/cpu/i386/interrupt.c         |  1 +
 arch/x86/cpu/x86_64/interrupts.c      |  1 +
 arch/x86/lib/bios.c                   |  1 +
 arch/x86/lib/interrupts.c             |  1 +
 arch/x86/lib/spl.c                    |  1 +
 arch/xtensa/cpu/exceptions.c          |  1 +
 board/cirrus/edb93xx/edb93xx.c        |  2 +-
 common/board_r.c                      |  1 +
 common/spl/spl.c                      |  1 +
 drivers/mtd/cfi_flash.c               |  1 +
 drivers/timer/mpc83xx_timer.c         |  1 +
 include/common.h                      |  7 -------
 include/exports.h                     |  2 ++
 include/irq_func.h                    | 19 +++++++++++++++++++
 post/cpu/mpc83xx/ecc.c                |  2 +-
 46 files changed, 64 insertions(+), 11 deletions(-)
 create mode 100644 include/irq_func.h

diff --git a/arch/arc/lib/interrupts.c b/arch/arc/lib/interrupts.c
index 24ff751220..db21fbb114 100644
--- a/arch/arc/lib/interrupts.c
+++ b/arch/arc/lib/interrupts.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/arcregs.h>
 #include <asm/ptrace.h>
 
diff --git a/arch/arm/lib/interrupts.c b/arch/arm/lib/interrupts.c
index e78ca56d25..75b70d9125 100644
--- a/arch/arm/lib/interrupts.c
+++ b/arch/arm/lib/interrupts.c
@@ -20,6 +20,7 @@
 
 #include <common.h>
 #include <efi_loader.h>
+#include <irq_func.h>
 #include <asm/proc-armv/ptrace.h>
 #include <asm/u-boot-arm.h>
 
diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c
index a32a4b6868..dffdf57aa2 100644
--- a/arch/arm/lib/interrupts_64.c
+++ b/arch/arm/lib/interrupts_64.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <linux/compiler.h>
 #include <efi_loader.h>
 
diff --git a/arch/arm/lib/interrupts_m.c b/arch/arm/lib/interrupts_m.c
index 95df6cb1eb..e4373f3781 100644
--- a/arch/arm/lib/interrupts_m.c
+++ b/arch/arm/lib/interrupts_m.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * Upon exception entry ARMv7-M processors automatically save stack
diff --git a/arch/m68k/cpu/mcf5227x/interrupts.c b/arch/m68k/cpu/mcf5227x/interrupts.c
index d38f01950b..5a6a88cd57 100644
--- a/arch/m68k/cpu/mcf5227x/interrupts.c
+++ b/arch/m68k/cpu/mcf5227x/interrupts.c
@@ -10,6 +10,7 @@
 
 /* CPU specific interrupt routine */
 #include <common.h>
+#include <irq_func.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/cpu/mcf523x/interrupts.c b/arch/m68k/cpu/mcf523x/interrupts.c
index 1d03724f15..b554c51fcb 100644
--- a/arch/m68k/cpu/mcf523x/interrupts.c
+++ b/arch/m68k/cpu/mcf523x/interrupts.c
@@ -7,6 +7,7 @@
 
 /* CPU specific interrupt routine */
 #include <common.h>
+#include <irq_func.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/cpu/mcf52x2/interrupts.c b/arch/m68k/cpu/mcf52x2/interrupts.c
index f874675b12..35ed1e7901 100644
--- a/arch/m68k/cpu/mcf52x2/interrupts.c
+++ b/arch/m68k/cpu/mcf52x2/interrupts.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <watchdog.h>
 #include <asm/processor.h>
 #include <asm/immap.h>
diff --git a/arch/m68k/cpu/mcf530x/interrupts.c b/arch/m68k/cpu/mcf530x/interrupts.c
index cd85c69f12..2659e3478f 100644
--- a/arch/m68k/cpu/mcf530x/interrupts.c
+++ b/arch/m68k/cpu/mcf530x/interrupts.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/cpu/mcf532x/interrupts.c b/arch/m68k/cpu/mcf532x/interrupts.c
index 43a903ed72..8f2df452ba 100644
--- a/arch/m68k/cpu/mcf532x/interrupts.c
+++ b/arch/m68k/cpu/mcf532x/interrupts.c
@@ -7,6 +7,7 @@
 
 /* CPU specific interrupt routine */
 #include <common.h>
+#include <irq_func.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/cpu/mcf5445x/interrupts.c b/arch/m68k/cpu/mcf5445x/interrupts.c
index d38f01950b..5a6a88cd57 100644
--- a/arch/m68k/cpu/mcf5445x/interrupts.c
+++ b/arch/m68k/cpu/mcf5445x/interrupts.c
@@ -10,6 +10,7 @@
 
 /* CPU specific interrupt routine */
 #include <common.h>
+#include <irq_func.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/cpu/mcf547x_8x/interrupts.c b/arch/m68k/cpu/mcf547x_8x/interrupts.c
index 2cdf53ea09..703090ddc2 100644
--- a/arch/m68k/cpu/mcf547x_8x/interrupts.c
+++ b/arch/m68k/cpu/mcf547x_8x/interrupts.c
@@ -7,6 +7,7 @@
 
 /* CPU specific interrupt routine */
 #include <common.h>
+#include <irq_func.h>
 #include <asm/immap.h>
 #include <asm/io.h>
 
diff --git a/arch/m68k/cpu/mcf547x_8x/slicetimer.c b/arch/m68k/cpu/mcf547x_8x/slicetimer.c
index 544bfd2083..885659e342 100644
--- a/arch/m68k/cpu/mcf547x_8x/slicetimer.c
+++ b/arch/m68k/cpu/mcf547x_8x/slicetimer.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 #include <asm/timer.h>
 #include <asm/immap.h>
diff --git a/arch/m68k/lib/interrupts.c b/arch/m68k/lib/interrupts.c
index 85ae3b4ee0..ddc91993a1 100644
--- a/arch/m68k/lib/interrupts.c
+++ b/arch/m68k/lib/interrupts.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <watchdog.h>
 #include <asm/processor.h>
 #include <asm/immap.h>
diff --git a/arch/m68k/lib/time.c b/arch/m68k/lib/time.c
index c76c5fedc9..8957d194d4 100644
--- a/arch/m68k/lib/time.c
+++ b/arch/m68k/lib/time.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <time.h>
 
 #include <asm/timer.h>
diff --git a/arch/microblaze/cpu/interrupts.c b/arch/microblaze/cpu/interrupts.c
index aea612eef1..910c596884 100644
--- a/arch/microblaze/cpu/interrupts.c
+++ b/arch/microblaze/cpu/interrupts.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <command.h>
 #include <fdtdec.h>
+#include <irq_func.h>
 #include <malloc.h>
 #include <asm/microblaze_intc.h>
 #include <asm/asm.h>
diff --git a/arch/mips/cpu/interrupts.c b/arch/mips/cpu/interrupts.c
index 1c5192ed33..b3ba9aaeae 100644
--- a/arch/mips/cpu/interrupts.c
+++ b/arch/mips/cpu/interrupts.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 int interrupt_init(void)
 {
diff --git a/arch/mips/mach-jz47xx/jz4780/timer.c b/arch/mips/mach-jz47xx/jz4780/timer.c
index 988ebd2671..b32a2f5643 100644
--- a/arch/mips/mach-jz47xx/jz4780/timer.c
+++ b/arch/mips/mach-jz47xx/jz4780/timer.c
@@ -9,6 +9,7 @@
 #include <config.h>
 #include <common.h>
 #include <div64.h>
+#include <irq_func.h>
 #include <time.h>
 #include <asm/io.h>
 #include <asm/mipsregs.h>
diff --git a/arch/nds32/cpu/n1213/ae3xx/cpu.c b/arch/nds32/cpu/n1213/ae3xx/cpu.c
index d32d5be39f..777ea4f943 100644
--- a/arch/nds32/cpu/n1213/ae3xx/cpu.c
+++ b/arch/nds32/cpu/n1213/ae3xx/cpu.c
@@ -16,7 +16,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
-#include <irq_legacy.h>
+#include <irq_func.h>
 #include <watchdog.h>
 #include <asm/cache.h>
 
diff --git a/arch/nds32/cpu/n1213/ag101/timer.c b/arch/nds32/cpu/n1213/ag101/timer.c
index cbfe07e351..f2e362102e 100644
--- a/arch/nds32/cpu/n1213/ag101/timer.c
+++ b/arch/nds32/cpu/n1213/ag101/timer.c
@@ -9,6 +9,7 @@
  */
 #ifndef CONFIG_TIMER
 #include <common.h>
+#include <irq_func.h>
 #include <time.h>
 #include <asm/io.h>
 #include <faraday/fttmr010.h>
diff --git a/arch/nds32/lib/interrupts.c b/arch/nds32/lib/interrupts.c
index 966c19a1ae..88cc7b98d8 100644
--- a/arch/nds32/lib/interrupts.c
+++ b/arch/nds32/lib/interrupts.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/ptrace.h>
 #include <asm/system.h>
 #undef INTERRUPT_MODE
diff --git a/arch/nios2/cpu/interrupts.c b/arch/nios2/cpu/interrupts.c
index 96c3020935..e9d1ff911b 100644
--- a/arch/nios2/cpu/interrupts.c
+++ b/arch/nios2/cpu/interrupts.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <irq_func.h>
 #include <asm/nios2.h>
 #include <asm/types.h>
 #include <asm/io.h>
diff --git a/arch/powerpc/cpu/mpc83xx/interrupts.c b/arch/powerpc/cpu/mpc83xx/interrupts.c
index 04cd147321..e83895deab 100644
--- a/arch/powerpc/cpu/mpc83xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc83xx/interrupts.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <irq_func.h>
 #include <mpc83xx.h>
 #include <asm/processor.h>
 
diff --git a/arch/powerpc/cpu/mpc85xx/interrupts.c b/arch/powerpc/cpu/mpc85xx/interrupts.c
index b5a6ead8bd..e767573193 100644
--- a/arch/powerpc/cpu/mpc85xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc85xx/interrupts.c
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <watchdog.h>
 #include <command.h>
 #include <asm/processor.h>
diff --git a/arch/powerpc/cpu/mpc85xx/traps.c b/arch/powerpc/cpu/mpc85xx/traps.c
index e1d492f05a..804788d050 100644
--- a/arch/powerpc/cpu/mpc85xx/traps.c
+++ b/arch/powerpc/cpu/mpc85xx/traps.c
@@ -21,6 +21,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <irq_func.h>
 #include <kgdb.h>
 #include <asm/processor.h>
 
diff --git a/arch/powerpc/cpu/mpc86xx/interrupts.c b/arch/powerpc/cpu/mpc86xx/interrupts.c
index 04c8f25af6..0f930fcd9e 100644
--- a/arch/powerpc/cpu/mpc86xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc86xx/interrupts.c
@@ -15,6 +15,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <mpc86xx.h>
 #include <command.h>
 #include <asm/processor.h>
diff --git a/arch/powerpc/cpu/mpc8xx/interrupts.c b/arch/powerpc/cpu/mpc8xx/interrupts.c
index 26aa7a5645..6ee6088fa8 100644
--- a/arch/powerpc/cpu/mpc8xx/interrupts.c
+++ b/arch/powerpc/cpu/mpc8xx/interrupts.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <mpc8xx.h>
 #include <mpc8xx_irq.h>
 #include <asm/cpm_8xx.h>
diff --git a/arch/powerpc/lib/interrupts.c b/arch/powerpc/lib/interrupts.c
index a58ddfa569..64ee0cc210 100644
--- a/arch/powerpc/lib/interrupts.c
+++ b/arch/powerpc/lib/interrupts.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/processor.h>
 #include <watchdog.h>
 #ifdef CONFIG_LED_STATUS
diff --git a/arch/riscv/cpu/ax25/cpu.c b/arch/riscv/cpu/ax25/cpu.c
index 682ad22de2..35f085d62d 100644
--- a/arch/riscv/cpu/ax25/cpu.c
+++ b/arch/riscv/cpu/ax25/cpu.c
@@ -7,7 +7,7 @@
 /* CPU specific code */
 #include <common.h>
 #include <cpu_legacy.h>
-#include <irq_legacy.h>
+#include <irq_func.h>
 #include <asm/cache.h>
 
 /*
diff --git a/arch/riscv/lib/interrupts.c b/arch/riscv/lib/interrupts.c
index 74c1e561c7..3b25c5b7a7 100644
--- a/arch/riscv/lib/interrupts.c
+++ b/arch/riscv/lib/interrupts.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/ptrace.h>
 #include <asm/system.h>
 #include <asm/encoding.h>
diff --git a/arch/sandbox/lib/interrupts.c b/arch/sandbox/lib/interrupts.c
index 4ddcd37522..21f761ac3b 100644
--- a/arch/sandbox/lib/interrupts.c
+++ b/arch/sandbox/lib/interrupts.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 int interrupt_init(void)
 {
diff --git a/arch/sh/cpu/sh4/interrupts.c b/arch/sh/cpu/sh4/interrupts.c
index 5982aad54e..278a3e32ac 100644
--- a/arch/sh/cpu/sh4/interrupts.c
+++ b/arch/sh/cpu/sh4/interrupts.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 int interrupt_init(void)
 {
diff --git a/arch/x86/cpu/i386/interrupt.c b/arch/x86/cpu/i386/interrupt.c
index 1445204878..78aa51a3ea 100644
--- a/arch/x86/cpu/i386/interrupt.c
+++ b/arch/x86/cpu/i386/interrupt.c
@@ -13,6 +13,7 @@
 #include <common.h>
 #include <dm.h>
 #include <efi_loader.h>
+#include <irq_func.h>
 #include <asm/control_regs.h>
 #include <asm/i8259.h>
 #include <asm/interrupt.h>
diff --git a/arch/x86/cpu/x86_64/interrupts.c b/arch/x86/cpu/x86_64/interrupts.c
index 15830d6a1a..634f7660c0 100644
--- a/arch/x86/cpu/x86_64/interrupts.c
+++ b/arch/x86/cpu/x86_64/interrupts.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/processor-flags.h>
 
 void enable_interrupts(void)
diff --git a/arch/x86/lib/bios.c b/arch/x86/lib/bios.c
index b990f53bfd..30c0997fd0 100644
--- a/arch/x86/lib/bios.c
+++ b/arch/x86/lib/bios.c
@@ -7,6 +7,7 @@
  */
 #include <common.h>
 #include <bios_emul.h>
+#include <irq_func.h>
 #include <vbe.h>
 #include <linux/linkage.h>
 #include <asm/cache.h>
diff --git a/arch/x86/lib/interrupts.c b/arch/x86/lib/interrupts.c
index 39f8deaed1..b23b8fd402 100644
--- a/arch/x86/lib/interrupts.c
+++ b/arch/x86/lib/interrupts.c
@@ -30,6 +30,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/interrupt.h>
 
 #if !CONFIG_IS_ENABLED(X86_64)
diff --git a/arch/x86/lib/spl.c b/arch/x86/lib/spl.c
index b1dfffe9d4..9f10353989 100644
--- a/arch/x86/lib/spl.c
+++ b/arch/x86/lib/spl.c
@@ -7,6 +7,7 @@
 #include <cpu_legacy.h>
 #include <debug_uart.h>
 #include <dm.h>
+#include <irq_func.h>
 #include <malloc.h>
 #include <spl.h>
 #include <syscon.h>
diff --git a/arch/xtensa/cpu/exceptions.c b/arch/xtensa/cpu/exceptions.c
index fe2dedf3c4..3b8f4a36d3 100644
--- a/arch/xtensa/cpu/exceptions.c
+++ b/arch/xtensa/cpu/exceptions.c
@@ -12,6 +12,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <irq_func.h>
 #include <asm/string.h>
 #include <asm/regs.h>
 
diff --git a/board/cirrus/edb93xx/edb93xx.c b/board/cirrus/edb93xx/edb93xx.c
index 35893bd0b0..899c6c7817 100644
--- a/board/cirrus/edb93xx/edb93xx.c
+++ b/board/cirrus/edb93xx/edb93xx.c
@@ -16,7 +16,7 @@
 #include <config.h>
 #include <common.h>
 #include <cpu_legacy.h>
-#include <irq_legacy.h>
+#include <irq_func.h>
 #include <netdev.h>
 #include <status_led.h>
 #include <asm/io.h>
diff --git a/common/board_r.c b/common/board_r.c
index 8189d1f31b..831334519c 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -28,6 +28,7 @@
 #if defined(CONFIG_CMD_KGDB)
 #include <kgdb.h>
 #endif
+#include <irq_func.h>
 #include <malloc.h>
 #include <mapmem.h>
 #ifdef CONFIG_BITBANGMII
diff --git a/common/spl/spl.c b/common/spl/spl.c
index 82fd54c984..d51dbe9942 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -11,6 +11,7 @@
 #include <binman_sym.h>
 #include <dm.h>
 #include <handoff.h>
+#include <irq_func.h>
 #include <serial.h>
 #include <spl.h>
 #include <asm/u-boot.h>
diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
index 0574fa63a4..4ce183b6f3 100644
--- a/drivers/mtd/cfi_flash.c
+++ b/drivers/mtd/cfi_flash.c
@@ -22,6 +22,7 @@
 #include <env.h>
 #include <errno.h>
 #include <fdt_support.h>
+#include <irq_func.h>
 #include <asm/processor.h>
 #include <asm/io.h>
 #include <asm/byteorder.h>
diff --git a/drivers/timer/mpc83xx_timer.c b/drivers/timer/mpc83xx_timer.c
index 69949d5333..72cb58b693 100644
--- a/drivers/timer/mpc83xx_timer.c
+++ b/drivers/timer/mpc83xx_timer.c
@@ -8,6 +8,7 @@
 #include <board.h>
 #include <clk.h>
 #include <dm.h>
+#include <irq_func.h>
 #include <status_led.h>
 #include <time.h>
 #include <timer.h>
diff --git a/include/common.h b/include/common.h
index 6dedb37a06..81387d561e 100644
--- a/include/common.h
+++ b/include/common.h
@@ -208,13 +208,6 @@ ulong	get_bus_freq  (ulong);
 int get_serial_clock(void);
 
 /* $(CPU)/interrupts.c */
-int	interrupt_init	   (void);
-void	timer_interrupt	   (struct pt_regs *);
-void	external_interrupt (struct pt_regs *);
-void	irq_install_handler(int, interrupt_handler_t *, void *);
-void	irq_free_handler   (int);
-void	reset_timer	   (void);
-
 void	enable_interrupts  (void);
 int	disable_interrupts (void);
 
diff --git a/include/exports.h b/include/exports.h
index 147a00f860..8899622738 100644
--- a/include/exports.h
+++ b/include/exports.h
@@ -1,6 +1,8 @@
 #ifndef __EXPORTS_H__
 #define __EXPORTS_H__
 
+#include <irq_func.h>
+
 #ifndef __ASSEMBLY__
 #ifdef CONFIG_PHY_AQUANTIA
 #include <env.h>
diff --git a/include/irq_func.h b/include/irq_func.h
new file mode 100644
index 0000000000..11d2bdd912
--- /dev/null
+++ b/include/irq_func.h
@@ -0,0 +1,19 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Header file for interrupt functions
+ *
+ * (C) Copyright 2000-2009
+ * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+ */
+
+#ifndef __IRQ_FUNC_H
+#define __IRQ_FUNC_H
+
+int interrupt_init(void);
+void timer_interrupt(struct pt_regs *regs);
+void external_interrupt(struct pt_regs *regs);
+void irq_install_handler (int vec, interrupt_handler_t *handler, void *arg);
+void irq_free_handler(int vec);
+void reset_timer(void);
+
+#endif
diff --git a/post/cpu/mpc83xx/ecc.c b/post/cpu/mpc83xx/ecc.c
index d3c5773f7b..fcf5f879e8 100644
--- a/post/cpu/mpc83xx/ecc.c
+++ b/post/cpu/mpc83xx/ecc.c
@@ -10,7 +10,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
-#include <irq_legacy.h>
+#include <irq_func.h>
 #include <mpc83xx.h>
 #include <watchdog.h>
 #include <asm/io.h>
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 34/42] common: Move enable/disable_interrupts out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (32 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 33/42] common: Move interrupt functions into a new header Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-13 19:00   ` Tom Rini
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 35/42] common: Move command functions " Simon Glass
                   ` (7 subsequent siblings)
  41 siblings, 1 reply; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Move these two functions into the irq_funcs.h header file. Also move
interrupt_handler_t as this is used by the irq_install_handler() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Rename irq_legacy to irq_func to avoid the 'legacy' label
- Update commit message

Changes in v2: None

 arch/arc/lib/bootm.c                          | 1 +
 arch/arm/cpu/arm11/cpu.c                      | 1 +
 arch/arm/cpu/arm920t/cpu.c                    | 1 +
 arch/arm/cpu/arm926ejs/cpu.c                  | 1 +
 arch/arm/cpu/arm946es/cpu.c                   | 1 +
 arch/arm/cpu/armv7/cpu.c                      | 1 +
 arch/arm/cpu/armv7m/cpu.c                     | 1 +
 arch/arm/cpu/armv8/cpu.c                      | 1 +
 arch/arm/cpu/pxa/pxa2xx.c                     | 1 +
 arch/arm/cpu/sa1100/cpu.c                     | 1 +
 arch/arm/lib/reset.c                          | 1 +
 arch/arm/mach-tegra/cmd_enterrcm.c            | 1 +
 arch/microblaze/include/asm/microblaze_intc.h | 2 ++
 arch/nds32/cpu/n1213/ag101/cpu.c              | 1 +
 arch/nios2/cpu/cpu.c                          | 1 +
 arch/nios2/lib/bootm.c                        | 1 +
 arch/powerpc/cpu/mpc83xx/cpu.c                | 1 +
 arch/powerpc/cpu/mpc83xx/ecc.c                | 1 +
 arch/powerpc/cpu/mpc85xx/cpu.c                | 1 +
 arch/riscv/cpu/generic/cpu.c                  | 1 +
 arch/sh/cpu/sh4/cpu.c                         | 1 +
 arch/sh/lib/zimageboot.c                      | 1 +
 arch/x86/lib/zimage.c                         | 1 +
 board/bosch/shc/board.c                       | 1 +
 board/cobra5272/flash.c                       | 1 +
 board/freescale/b4860qds/b4860qds.c           | 1 +
 board/freescale/common/vid.c                  | 1 +
 board/freescale/m5253demo/flash.c             | 1 +
 board/freescale/t4qds/t4240qds.c              | 1 +
 board/synopsys/hsdk/hsdk.c                    | 1 +
 cmd/booti.c                                   | 1 +
 cmd/bootz.c                                   | 1 +
 cmd/fdc.c                                     | 1 +
 cmd/irq.c                                     | 1 +
 common/board_r.c                              | 1 +
 common/bootm.c                                | 1 +
 drivers/firmware/psci.c                       | 1 +
 drivers/mtd/pic32_flash.c                     | 1 +
 include/common.h                              | 6 ------
 include/exports.h                             | 2 ++
 include/irq_func.h                            | 9 ++++++++-
 lib/efi_loader/efi_boottime.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/complex.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 +
 61 files changed, 69 insertions(+), 7 deletions(-)

diff --git a/arch/arc/lib/bootm.c b/arch/arc/lib/bootm.c
index 254e0284b3..d38c18ef8f 100644
--- a/arch/arc/lib/bootm.c
+++ b/arch/arc/lib/bootm.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved.
  */
 
+#include <irq_func.h>
 #include <asm/cache.h>
 #include <common.h>
 
diff --git a/arch/arm/cpu/arm11/cpu.c b/arch/arm/cpu/arm11/cpu.c
index 280622fe33..8db2510a49 100644
--- a/arch/arm/cpu/arm11/cpu.c
+++ b/arch/arm/cpu/arm11/cpu.c
@@ -17,6 +17,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/system.h>
 
 static void cache_flush(void);
diff --git a/arch/arm/cpu/arm920t/cpu.c b/arch/arm/cpu/arm920t/cpu.c
index e632aa52f8..7469a661c9 100644
--- a/arch/arm/cpu/arm920t/cpu.c
+++ b/arch/arm/cpu/arm920t/cpu.c
@@ -15,6 +15,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/system.h>
 
 static void cache_flush(void);
diff --git a/arch/arm/cpu/arm926ejs/cpu.c b/arch/arm/cpu/arm926ejs/cpu.c
index f4b27d93be..84e91c5e64 100644
--- a/arch/arm/cpu/arm926ejs/cpu.c
+++ b/arch/arm/cpu/arm926ejs/cpu.c
@@ -15,6 +15,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/system.h>
 
 static void cache_flush(void);
diff --git a/arch/arm/cpu/arm946es/cpu.c b/arch/arm/cpu/arm946es/cpu.c
index 19b805096f..263343c944 100644
--- a/arch/arm/cpu/arm946es/cpu.c
+++ b/arch/arm/cpu/arm946es/cpu.c
@@ -15,6 +15,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/system.h>
 #include <asm/io.h>
 
diff --git a/arch/arm/cpu/armv7/cpu.c b/arch/arm/cpu/armv7/cpu.c
index bf3ebba052..9d7a632a65 100644
--- a/arch/arm/cpu/armv7/cpu.c
+++ b/arch/arm/cpu/armv7/cpu.c
@@ -17,6 +17,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/system.h>
 #include <asm/cache.h>
 #include <asm/armv7.h>
diff --git a/arch/arm/cpu/armv7m/cpu.c b/arch/arm/cpu/armv7m/cpu.c
index fed17bd649..cc3365bc6f 100644
--- a/arch/arm/cpu/armv7m/cpu.c
+++ b/arch/arm/cpu/armv7m/cpu.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/io.h>
 #include <asm/armv7m.h>
 
diff --git a/arch/arm/cpu/armv8/cpu.c b/arch/arm/cpu/armv8/cpu.c
index 6fdc94ec08..43713c5c6b 100644
--- a/arch/arm/cpu/armv8/cpu.c
+++ b/arch/arm/cpu/armv8/cpu.c
@@ -13,6 +13,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/system.h>
 #include <asm/secure.h>
 #include <linux/compiler.h>
diff --git a/arch/arm/cpu/pxa/pxa2xx.c b/arch/arm/cpu/pxa/pxa2xx.c
index d69e925e6f..6ba4d7a748 100644
--- a/arch/arm/cpu/pxa/pxa2xx.c
+++ b/arch/arm/cpu/pxa/pxa2xx.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/arch/pxa-regs.h>
 #include <asm/io.h>
 #include <asm/system.h>
diff --git a/arch/arm/cpu/sa1100/cpu.c b/arch/arm/cpu/sa1100/cpu.c
index ec408564c1..52a4b43e23 100644
--- a/arch/arm/cpu/sa1100/cpu.c
+++ b/arch/arm/cpu/sa1100/cpu.c
@@ -16,6 +16,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <asm/system.h>
 #include <asm/io.h>
 
diff --git a/arch/arm/lib/reset.c b/arch/arm/lib/reset.c
index f3ea116e87..3c4512d495 100644
--- a/arch/arm/lib/reset.c
+++ b/arch/arm/lib/reset.c
@@ -21,6 +21,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 __weak void reset_misc(void)
 {
diff --git a/arch/arm/mach-tegra/cmd_enterrcm.c b/arch/arm/mach-tegra/cmd_enterrcm.c
index 4a889f0e34..5247e52a5a 100644
--- a/arch/arm/mach-tegra/cmd_enterrcm.c
+++ b/arch/arm/mach-tegra/cmd_enterrcm.c
@@ -25,6 +25,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/arch/tegra.h>
 #include <asm/arch-tegra/pmc.h>
 
diff --git a/arch/microblaze/include/asm/microblaze_intc.h b/arch/microblaze/include/asm/microblaze_intc.h
index b4e0fc6930..1434be8756 100644
--- a/arch/microblaze/include/asm/microblaze_intc.h
+++ b/arch/microblaze/include/asm/microblaze_intc.h
@@ -5,6 +5,8 @@
  * Michal  SIMEK <monstr@monstr.cz>
  */
 
+#include <irq_func.h>
+
 typedef volatile struct microblaze_intc_t {
 	int isr; /* interrupt status register */
 	int ipr; /* interrupt pending register */
diff --git a/arch/nds32/cpu/n1213/ag101/cpu.c b/arch/nds32/cpu/n1213/ag101/cpu.c
index f43b696059..b96a18bf58 100644
--- a/arch/nds32/cpu/n1213/ag101/cpu.c
+++ b/arch/nds32/cpu/n1213/ag101/cpu.c
@@ -16,6 +16,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu_legacy.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 54b6741d4e..0212c86606 100644
--- a/arch/nios2/cpu/cpu.c
+++ b/arch/nios2/cpu/cpu.c
@@ -9,6 +9,7 @@
 #include <cpu_legacy.h>
 #include <dm.h>
 #include <errno.h>
+#include <irq_func.h>
 #include <asm/cache.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/nios2/lib/bootm.c b/arch/nios2/lib/bootm.c
index c671e03214..d6a320c540 100644
--- a/arch/nios2/lib/bootm.c
+++ b/arch/nios2/lib/bootm.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 
 #define NIOS_MAGIC 0x534f494e /* enable command line and initrd passing */
 
diff --git a/arch/powerpc/cpu/mpc83xx/cpu.c b/arch/powerpc/cpu/mpc83xx/cpu.c
index 71e4bb3f28..40cf85f3b8 100644
--- a/arch/powerpc/cpu/mpc83xx/cpu.c
+++ b/arch/powerpc/cpu/mpc83xx/cpu.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <cpu.h>
+#include <irq_func.h>
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
diff --git a/arch/powerpc/cpu/mpc83xx/ecc.c b/arch/powerpc/cpu/mpc83xx/ecc.c
index 10e9b96add..a6eb7cb97c 100644
--- a/arch/powerpc/cpu/mpc83xx/ecc.c
+++ b/arch/powerpc/cpu/mpc83xx/ecc.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <mpc83xx.h>
 #include <command.h>
 
diff --git a/arch/powerpc/cpu/mpc85xx/cpu.c b/arch/powerpc/cpu/mpc85xx/cpu.c
index 8f58924b7b..e0f36f8994 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu.c
@@ -11,6 +11,7 @@
 #include <config.h>
 #include <common.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
diff --git a/arch/riscv/cpu/generic/cpu.c b/arch/riscv/cpu/generic/cpu.c
index ad2950ce40..c0a5288bdb 100644
--- a/arch/riscv/cpu/generic/cpu.c
+++ b/arch/riscv/cpu/generic/cpu.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <irq_func.h>
 
 /*
  * cleanup_before_linux() is called just before we call linux
diff --git a/arch/sh/cpu/sh4/cpu.c b/arch/sh/cpu/sh4/cpu.c
index d79e6ea71d..d51b74d76d 100644
--- a/arch/sh/cpu/sh4/cpu.c
+++ b/arch/sh/cpu/sh4/cpu.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <command.h>
 #include <cpu.h>
+#include <irq_func.h>
 #include <netdev.h>
 #include <asm/processor.h>
 
diff --git a/arch/sh/lib/zimageboot.c b/arch/sh/lib/zimageboot.c
index 93933b7931..602776a474 100644
--- a/arch/sh/lib/zimageboot.c
+++ b/arch/sh/lib/zimageboot.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 #include <asm/io.h>
 #include <asm/zimage.h>
 
diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c
index d07041fd4c..9b5e767ccc 100644
--- a/arch/x86/lib/zimage.c
+++ b/arch/x86/lib/zimage.c
@@ -14,6 +14,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <irq_func.h>
 #include <malloc.h>
 #include <asm/acpi_table.h>
 #include <asm/io.h>
diff --git a/board/bosch/shc/board.c b/board/bosch/shc/board.c
index a96fdef992..145bc0233a 100644
--- a/board/bosch/shc/board.c
+++ b/board/bosch/shc/board.c
@@ -14,6 +14,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <irq_func.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/cobra5272/flash.c b/board/cobra5272/flash.c
index ccff46adf8..103712d0e0 100644
--- a/board/cobra5272/flash.c
+++ b/board/cobra5272/flash.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <console.h>
 #include <cpu_legacy.h>
+#include <irq_func.h>
 
 #define PHYS_FLASH_1 CONFIG_SYS_FLASH_BASE
 #define FLASH_BANK_SIZE 0x200000
diff --git a/board/freescale/b4860qds/b4860qds.c b/board/freescale/b4860qds/b4860qds.c
index 33cd4b4964..24efe77b57 100644
--- a/board/freescale/b4860qds/b4860qds.c
+++ b/board/freescale/b4860qds/b4860qds.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <irq_func.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/common/vid.c b/board/freescale/common/vid.c
index b37f3bf4f8..20852476dd 100644
--- a/board/freescale/common/vid.c
+++ b/board/freescale/common/vid.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <irq_func.h>
 #include <asm/io.h>
 #ifdef CONFIG_FSL_LSCH2
 #include <asm/arch/immap_lsch2.h>
diff --git a/board/freescale/m5253demo/flash.c b/board/freescale/m5253demo/flash.c
index 0706b62396..a5223ecee6 100644
--- a/board/freescale/m5253demo/flash.c
+++ b/board/freescale/m5253demo/flash.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 #include <asm/immap.h>
 
diff --git a/board/freescale/t4qds/t4240qds.c b/board/freescale/t4qds/t4240qds.c
index bb18b97e6a..d73ddf5921 100644
--- a/board/freescale/t4qds/t4240qds.c
+++ b/board/freescale/t4qds/t4240qds.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <irq_func.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c
index 1360755710..a79458290c 100644
--- a/board/synopsys/hsdk/hsdk.c
+++ b/board/synopsys/hsdk/hsdk.c
@@ -8,6 +8,7 @@
 #include <config.h>
 #include <cpu_legacy.h>
 #include <env.h>
+#include <irq_func.h>
 #include <linux/printk.h>
 #include <linux/kernel.h>
 #include <linux/io.h>
diff --git a/cmd/booti.c b/cmd/booti.c
index 841eff10d1..d0671deb75 100644
--- a/cmd/booti.c
+++ b/cmd/booti.c
@@ -8,6 +8,7 @@
 #include <bootm.h>
 #include <command.h>
 #include <image.h>
+#include <irq_func.h>
 #include <lmb.h>
 #include <mapmem.h>
 #include <linux/kernel.h>
diff --git a/cmd/bootz.c b/cmd/bootz.c
index 0e75509ee9..74be62c2c5 100644
--- a/cmd/bootz.c
+++ b/cmd/bootz.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <bootm.h>
 #include <command.h>
+#include <irq_func.h>
 #include <lmb.h>
 #include <linux/compiler.h>
 
diff --git a/cmd/fdc.c b/cmd/fdc.c
index 7bfaae0e38..7d4b829637 100644
--- a/cmd/fdc.c
+++ b/cmd/fdc.c
@@ -11,6 +11,7 @@
 #include <config.h>
 #include <command.h>
 #include <image.h>
+#include <irq_func.h>
 
 
 #undef	FDC_DEBUG
diff --git a/cmd/irq.c b/cmd/irq.c
index bcc718b4bc..52d06b3eed 100644
--- a/cmd/irq.c
+++ b/cmd/irq.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <config.h>
 #include <command.h>
+#include <irq_func.h>
 
 static int do_interrupts(cmd_tbl_t *cmdtp, int flag, int argc,
 			 char * const argv[])
diff --git a/common/board_r.c b/common/board_r.c
index 831334519c..451b4ffa3c 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <api.h>
 #include <cpu_legacy.h>
+#include <irq_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 b031c5ce20..3864a88c2f 100644
--- a/common/bootm.c
+++ b/common/bootm.c
@@ -11,6 +11,7 @@
 #include <env.h>
 #include <errno.h>
 #include <fdt_support.h>
+#include <irq_func.h>
 #include <lmb.h>
 #include <malloc.h>
 #include <mapmem.h>
diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
index c8c47acfd3..394f30fa88 100644
--- a/drivers/firmware/psci.c
+++ b/drivers/firmware/psci.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <irq_func.h>
 #include <dm/lists.h>
 #include <efi_loader.h>
 #include <linux/libfdt.h>
diff --git a/drivers/mtd/pic32_flash.c b/drivers/mtd/pic32_flash.c
index 910aa53a64..00833bc9dc 100644
--- a/drivers/mtd/pic32_flash.c
+++ b/drivers/mtd/pic32_flash.c
@@ -10,6 +10,7 @@
 #include <dm.h>
 #include <fdt_support.h>
 #include <flash.h>
+#include <irq_func.h>
 #include <mach/pic32.h>
 #include <wait_bit.h>
 
diff --git a/include/common.h b/include/common.h
index 81387d561e..c22eb63501 100644
--- a/include/common.h
+++ b/include/common.h
@@ -46,8 +46,6 @@ typedef volatile unsigned char	vu_char;
 
 #include <log.h>
 
-typedef void (interrupt_handler_t)(void *);
-
 #include <asm/u-boot.h> /* boot information for Linux kernel */
 #include <asm/global_data.h>	/* global data used for startup functions */
 
@@ -207,10 +205,6 @@ int	get_clocks (void);
 ulong	get_bus_freq  (ulong);
 int get_serial_clock(void);
 
-/* $(CPU)/interrupts.c */
-void	enable_interrupts  (void);
-int	disable_interrupts (void);
-
 /* lib/uuid.c */
 #include <uuid.h>
 
diff --git a/include/exports.h b/include/exports.h
index 8899622738..35f463287f 100644
--- a/include/exports.h
+++ b/include/exports.h
@@ -9,6 +9,8 @@
 #include <phy_interface.h>
 #endif
 
+#include <irq_func.h>
+
 struct spi_slave;
 
 /* These are declarations of exported functions available in C code */
diff --git a/include/irq_func.h b/include/irq_func.h
index 11d2bdd912..c7c4babbfc 100644
--- a/include/irq_func.h
+++ b/include/irq_func.h
@@ -9,11 +9,18 @@
 #ifndef __IRQ_FUNC_H
 #define __IRQ_FUNC_H
 
+struct pt_regs;
+
+typedef void (interrupt_handler_t)(void *arg);
+
 int interrupt_init(void);
 void timer_interrupt(struct pt_regs *regs);
 void external_interrupt(struct pt_regs *regs);
-void irq_install_handler (int vec, interrupt_handler_t *handler, void *arg);
+void irq_install_handler(int vec, interrupt_handler_t *handler, void *arg);
 void irq_free_handler(int vec);
 void reset_timer(void);
 
+void enable_interrupts(void);
+int disable_interrupts(void);
+
 #endif
diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
index 265297ed46..88a7604bbf 100644
--- a/lib/efi_loader/efi_boottime.c
+++ b/lib/efi_loader/efi_boottime.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <div64.h>
 #include <efi_loader.h>
+#include <irq_func.h>
 #include <malloc.h>
 #include <time.h>
 #include <linux/libfdt_env.h>
diff --git a/post/lib_powerpc/andi.c b/post/lib_powerpc/andi.c
index 49c5ee6349..d4f60aa738 100644
--- a/post/lib_powerpc/andi.c
+++ b/post/lib_powerpc/andi.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/b.c b/post/lib_powerpc/b.c
index 67edee0107..0b02e9169e 100644
--- a/post/lib_powerpc/b.c
+++ b/post/lib_powerpc/b.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/cmp.c b/post/lib_powerpc/cmp.c
index 79b22ebab7..e70869774c 100644
--- a/post/lib_powerpc/cmp.c
+++ b/post/lib_powerpc/cmp.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/cmpi.c b/post/lib_powerpc/cmpi.c
index b5b47bafb2..85a9b0ad36 100644
--- a/post/lib_powerpc/cmpi.c
+++ b/post/lib_powerpc/cmpi.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/complex.c b/post/lib_powerpc/complex.c
index 7ab3c352ac..bb29e91701 100644
--- a/post/lib_powerpc/complex.c
+++ b/post/lib_powerpc/complex.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/cr.c b/post/lib_powerpc/cr.c
index 93de47a1cf..56ed355dde 100644
--- a/post/lib_powerpc/cr.c
+++ b/post/lib_powerpc/cr.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/load.c b/post/lib_powerpc/load.c
index 3fbd8babfa..5269563b1e 100644
--- a/post/lib_powerpc/load.c
+++ b/post/lib_powerpc/load.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/multi.c b/post/lib_powerpc/multi.c
index 51750bb070..7807eb17ac 100644
--- a/post/lib_powerpc/multi.c
+++ b/post/lib_powerpc/multi.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/rlwimi.c b/post/lib_powerpc/rlwimi.c
index 16e642238e..7b4dc79fb1 100644
--- a/post/lib_powerpc/rlwimi.c
+++ b/post/lib_powerpc/rlwimi.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/rlwinm.c b/post/lib_powerpc/rlwinm.c
index f88d62a73b..8a03e9b9bc 100644
--- a/post/lib_powerpc/rlwinm.c
+++ b/post/lib_powerpc/rlwinm.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/rlwnm.c b/post/lib_powerpc/rlwnm.c
index c12577fd4f..e2beb4e417 100644
--- a/post/lib_powerpc/rlwnm.c
+++ b/post/lib_powerpc/rlwnm.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/srawi.c b/post/lib_powerpc/srawi.c
index cad3aec82d..d4a8fabc42 100644
--- a/post/lib_powerpc/srawi.c
+++ b/post/lib_powerpc/srawi.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/store.c b/post/lib_powerpc/store.c
index 8bd65c3581..8e278fee88 100644
--- a/post/lib_powerpc/store.c
+++ b/post/lib_powerpc/store.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/string.c b/post/lib_powerpc/string.c
index 3d3f2b117c..fc460ceb9f 100644
--- a/post/lib_powerpc/string.c
+++ b/post/lib_powerpc/string.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/three.c b/post/lib_powerpc/three.c
index 27a32a274a..fc6f1f5674 100644
--- a/post/lib_powerpc/three.c
+++ b/post/lib_powerpc/three.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/threei.c b/post/lib_powerpc/threei.c
index 28c17df71e..f49c85e6b9 100644
--- a/post/lib_powerpc/threei.c
+++ b/post/lib_powerpc/threei.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/threex.c b/post/lib_powerpc/threex.c
index ea9e465862..6bc5a54706 100644
--- a/post/lib_powerpc/threex.c
+++ b/post/lib_powerpc/threex.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/two.c b/post/lib_powerpc/two.c
index 2c0efaec36..fa376c76b1 100644
--- a/post/lib_powerpc/two.c
+++ b/post/lib_powerpc/two.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
diff --git a/post/lib_powerpc/twox.c b/post/lib_powerpc/twox.c
index eae4c57244..5c36012a9b 100644
--- a/post/lib_powerpc/twox.c
+++ b/post/lib_powerpc/twox.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <irq_func.h>
 
 /*
  * CPU test
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 35/42] common: Move command functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (33 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 34/42] common: Move enable/disable_interrupts out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 36/42] common: Drop board_show_dram() Simon Glass
                   ` (6 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Move these functions into the command.h header file which is a better fit.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/mach-kirkwood/cpu.c            |  1 +
 arch/sandbox/cpu/start.c                |  1 +
 board/engicam/common/board.c            |  1 +
 board/gdsys/a38x/keyprogram.c           |  1 +
 board/gdsys/p1022/controlcenterd-id.c   |  1 +
 board/grinn/liteboard/board.c           |  1 +
 board/inversepath/usbarmory/usbarmory.c |  1 +
 board/samsung/common/misc.c             |  1 +
 common/autoboot.c                       |  1 +
 common/cli.c                            |  1 +
 common/cli_simple.c                     |  1 +
 common/main.c                           |  1 +
 common/splash_source.c                  |  1 +
 drivers/fastboot/fb_command.c           |  1 +
 drivers/fastboot/fb_common.c            |  1 +
 drivers/mtd/nand/raw/fsl_elbc_nand.c    |  1 +
 drivers/mtd/nand/raw/fsl_ifc_nand.c     |  1 +
 drivers/net/fsl-mc/mc.c                 |  1 +
 drivers/usb/gadget/f_thor.c             |  1 +
 include/command.h                       | 16 ++++++++++++++++
 include/common.h                        | 17 +----------------
 test/command_ut.c                       |  1 +
 test/dm/sf.c                            |  1 +
 23 files changed, 38 insertions(+), 16 deletions(-)

diff --git a/arch/arm/mach-kirkwood/cpu.c b/arch/arm/mach-kirkwood/cpu.c
index 6ad2543438..29c0e592e4 100644
--- a/arch/arm/mach-kirkwood/cpu.c
+++ b/arch/arm/mach-kirkwood/cpu.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <env.h>
 #include <netdev.h>
 #include <asm/cache.h>
diff --git a/arch/sandbox/cpu/start.c b/arch/sandbox/cpu/start.c
index cfc542c806..fff9cbdd79 100644
--- a/arch/sandbox/cpu/start.c
+++ b/arch/sandbox/cpu/start.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <errno.h>
 #include <os.h>
 #include <cli.h>
diff --git a/board/engicam/common/board.c b/board/engicam/common/board.c
index 0c47afe5b5..31ff297b75 100644
--- a/board/engicam/common/board.c
+++ b/board/engicam/common/board.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <env.h>
 #include <mmc.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/gdsys/a38x/keyprogram.c b/board/gdsys/a38x/keyprogram.c
index 000897984a..853981aadb 100644
--- a/board/gdsys/a38x/keyprogram.c
+++ b/board/gdsys/a38x/keyprogram.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <env.h>
 #include <tpm-v1.h>
 #include <malloc.h>
diff --git a/board/gdsys/p1022/controlcenterd-id.c b/board/gdsys/p1022/controlcenterd-id.c
index d6798bd338..04d3809566 100644
--- a/board/gdsys/p1022/controlcenterd-id.c
+++ b/board/gdsys/p1022/controlcenterd-id.c
@@ -11,6 +11,7 @@
 #endif
 
 #include <common.h>
+#include <command.h>
 #include <dm.h>
 #include <env.h>
 #include <malloc.h>
diff --git a/board/grinn/liteboard/board.c b/board/grinn/liteboard/board.c
index 1558ea4b84..151041a789 100644
--- a/board/grinn/liteboard/board.c
+++ b/board/grinn/liteboard/board.c
@@ -4,6 +4,7 @@
  * Copyright (C) 2016 Grinn
  */
 
+#include <command.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/inversepath/usbarmory/usbarmory.c b/board/inversepath/usbarmory/usbarmory.c
index de4ad83226..19510184d8 100644
--- a/board/inversepath/usbarmory/usbarmory.c
+++ b/board/inversepath/usbarmory/usbarmory.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/samsung/common/misc.c b/board/samsung/common/misc.c
index 3ef1e79980..9117669f71 100644
--- a/board/samsung/common/misc.c
+++ b/board/samsung/common/misc.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <env.h>
 #include <lcd.h>
 #include <libtizen.h>
diff --git a/common/autoboot.c b/common/autoboot.c
index 8faac2005d..94a1b4abeb 100644
--- a/common/autoboot.c
+++ b/common/autoboot.c
@@ -8,6 +8,7 @@
 #include <autoboot.h>
 #include <bootretry.h>
 #include <cli.h>
+#include <command.h>
 #include <console.h>
 #include <env.h>
 #include <fdtdec.h>
diff --git a/common/cli.c b/common/cli.c
index 49b910666b..67ceb635a6 100644
--- a/common/cli.c
+++ b/common/cli.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <cli.h>
 #include <cli_hush.h>
+#include <command.h>
 #include <console.h>
 #include <env.h>
 #include <fdtdec.h>
diff --git a/common/cli_simple.c b/common/cli_simple.c
index 6c881c133c..358e9b7fe1 100644
--- a/common/cli_simple.c
+++ b/common/cli_simple.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <bootretry.h>
 #include <cli.h>
+#include <command.h>
 #include <console.h>
 #include <env.h>
 #include <linux/ctype.h>
diff --git a/common/main.c b/common/main.c
index 3a657c3d9a..a94df7ae04 100644
--- a/common/main.c
+++ b/common/main.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <autoboot.h>
 #include <cli.h>
+#include <command.h>
 #include <console.h>
 #include <env.h>
 #include <version.h>
diff --git a/common/splash_source.c b/common/splash_source.c
index d37b4b304c..2ff15208a7 100644
--- a/common/splash_source.c
+++ b/common/splash_source.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <bmp_layout.h>
+#include <command.h>
 #include <env.h>
 #include <errno.h>
 #include <fs.h>
diff --git a/drivers/fastboot/fb_command.c b/drivers/fastboot/fb_command.c
index 4864344853..3c4acfecf6 100644
--- a/drivers/fastboot/fb_command.c
+++ b/drivers/fastboot/fb_command.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <env.h>
 #include <fastboot.h>
 #include <fastboot-internal.h>
diff --git a/drivers/fastboot/fb_common.c b/drivers/fastboot/fb_common.c
index e76af8ecc3..c3735a44af 100644
--- a/drivers/fastboot/fb_common.c
+++ b/drivers/fastboot/fb_common.c
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <env.h>
 #include <fastboot.h>
 #include <net/fastboot.h>
diff --git a/drivers/mtd/nand/raw/fsl_elbc_nand.c b/drivers/mtd/nand/raw/fsl_elbc_nand.c
index 263d46ec8f..cbf689af63 100644
--- a/drivers/mtd/nand/raw/fsl_elbc_nand.c
+++ b/drivers/mtd/nand/raw/fsl_elbc_nand.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <malloc.h>
 #include <nand.h>
 
diff --git a/drivers/mtd/nand/raw/fsl_ifc_nand.c b/drivers/mtd/nand/raw/fsl_ifc_nand.c
index 29f30d8ccc..e2419e18a9 100644
--- a/drivers/mtd/nand/raw/fsl_ifc_nand.c
+++ b/drivers/mtd/nand/raw/fsl_ifc_nand.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <malloc.h>
 #include <nand.h>
 
diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c
index 1a06fad872..f7461fb563 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 <command.h>
 #include <cpu_legacy.h>
 #include <env.h>
 #include <errno.h>
diff --git a/drivers/usb/gadget/f_thor.c b/drivers/usb/gadget/f_thor.c
index 920fa5279c..5a023a2b34 100644
--- a/drivers/usb/gadget/f_thor.c
+++ b/drivers/usb/gadget/f_thor.c
@@ -14,6 +14,7 @@
  * Sanghee Kim <sh0130.kim@samsung.com>
  */
 
+#include <command.h>
 #include <errno.h>
 #include <common.h>
 #include <console.h>
diff --git a/include/command.h b/include/command.h
index f6170e7151..d1063774ce 100644
--- a/include/command.h
+++ b/include/command.h
@@ -199,6 +199,22 @@ void fixup_cmdtable(cmd_tbl_t *cmdtp, int size);
  * @return 0 if OK, 1 for error
  */
 int board_run_command(const char *cmdline);
+
+int run_command(const char *cmd, int flag);
+int run_command_repeatable(const char *cmd, int flag);
+
+/**
+ * Run a list of commands separated by ; or even \0
+ *
+ * Note that if 'len' is not -1, then the command does not need to be nul
+ * terminated, Memory will be allocated for the command in that case.
+ *
+ * @param cmd	List of commands to run, each separated bu semicolon
+ * @param len	Length of commands excluding terminator if known (-1 if not)
+ * @param flag	Execution flags (CMD_FLAG_...)
+ * @return 0 on success, or != 0 on error.
+ */
+int run_command_list(const char *cmd, int len, int flag);
 #endif	/* __ASSEMBLY__ */
 
 /*
diff --git a/include/common.h b/include/common.h
index c22eb63501..5bd778a4f4 100644
--- a/include/common.h
+++ b/include/common.h
@@ -3,7 +3,7 @@
  * Common header file for U-Boot
  *
  * This file still includes quite a bit of stuff that should be in separate
- * headers like command.h. Please think before adding more things.
+ * headers. Please think before adding more things.
  * Patches to remove things are welcome.
  *
  * (C) Copyright 2000-2009
@@ -66,21 +66,6 @@ void	hang		(void) __attribute__ ((noreturn));
 
 /* common/main.c */
 void	main_loop	(void);
-int run_command(const char *cmd, int flag);
-int run_command_repeatable(const char *cmd, int flag);
-
-/**
- * Run a list of commands separated by ; or even \0
- *
- * Note that if 'len' is not -1, then the command does not need to be nul
- * terminated, Memory will be allocated for the command in that case.
- *
- * @param cmd	List of commands to run, each separated bu semicolon
- * @param len	Length of commands excluding terminator if known (-1 if not)
- * @param flag	Execution flags (CMD_FLAG_...)
- * @return 0 on success, or != 0 on error.
- */
-int run_command_list(const char *cmd, int len, int flag);
 
 int checkflash(void);
 int checkdram(void);
diff --git a/test/command_ut.c b/test/command_ut.c
index 62f2828b7c..8e268e5ee5 100644
--- a/test/command_ut.c
+++ b/test/command_ut.c
@@ -6,6 +6,7 @@
 #define DEBUG
 
 #include <common.h>
+#include <command.h>
 
 static const char test_cmd[] = "setenv list 1\n setenv list ${list}2; "
 		"setenv list ${list}3\0"
diff --git a/test/dm/sf.c b/test/dm/sf.c
index 65aab4f2e9..7805af740e 100644
--- a/test/dm/sf.c
+++ b/test/dm/sf.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <command.h>
 #include <dm.h>
 #include <fdtdec.h>
 #include <mapmem.h>
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 36/42] common: Drop board_show_dram()
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (34 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 35/42] common: Move command functions " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 37/42] common: Move board_get_usable_ram_top() out of common.h Simon Glass
                   ` (5 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function is not defined by any boards so the feature is not used.
Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 cmd/mem.c        | 9 ++-------
 include/common.h | 9 ---------
 2 files changed, 2 insertions(+), 16 deletions(-)

diff --git a/cmd/mem.c b/cmd/mem.c
index c6b8038fc9..545534b1fc 100644
--- a/cmd/mem.c
+++ b/cmd/mem.c
@@ -1212,16 +1212,11 @@ U_BOOT_CMD(
 #endif
 
 #ifdef CONFIG_CMD_MEMINFO
-__weak void board_show_dram(phys_size_t size)
-{
-	puts("DRAM:  ");
-	print_size(size, "\n");
-}
-
 static int do_mem_info(cmd_tbl_t *cmdtp, int flag, int argc,
 		       char * const argv[])
 {
-	board_show_dram(gd->ram_size);
+	puts("DRAM:  ");
+	print_size(gd->ram_size, "\n");
 
 	return 0;
 }
diff --git a/include/common.h b/include/common.h
index 5bd778a4f4..16d4b0612f 100644
--- a/include/common.h
+++ b/include/common.h
@@ -73,15 +73,6 @@ extern u8 __dtb_dt_begin[];	/* embedded device tree blob */
 extern u8 __dtb_dt_spl_begin[];	/* embedded device tree blob for SPL/TPL */
 int mdm_init(void);
 
-/**
- * Show the DRAM size in a board-specific way
- *
- * This is used by boards to display DRAM information in their own way.
- *
- * @param size	Size of DRAM (which should be displayed along with other info)
- */
-void board_show_dram(phys_size_t size);
-
 /**
  * Get the uppermost pointer that is valid to access
  *
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 37/42] common: Move board_get_usable_ram_top() out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (35 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 36/42] common: Drop board_show_dram() Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 38/42] common: Move some board functions " Simon Glass
                   ` (4 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Move this function into init.h which seems to be designed for this sort
of thing. Also update the header to declare struct global_data so that it
can be included without global_data.h being needed.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/mach-mvebu/arm64-common.c    |  1 +
 arch/arm/mach-rockchip/sdram_common.c |  1 +
 arch/arm/mach-tegra/board2.c          |  1 +
 arch/mips/mach-jz47xx/jz4780/jz4780.c |  1 +
 arch/riscv/cpu/generic/dram.c         |  1 +
 arch/x86/cpu/broadwell/sdram.c        |  1 +
 arch/x86/cpu/coreboot/sdram.c         |  1 +
 arch/x86/cpu/efi/payload.c            |  1 +
 arch/x86/cpu/efi/sdram.c              |  1 +
 arch/x86/cpu/intel_common/mrc.c       |  1 +
 arch/x86/cpu/ivybridge/sdram.c        |  1 +
 arch/x86/cpu/qemu/dram.c              |  1 +
 arch/x86/cpu/quark/dram.c             |  1 +
 arch/x86/cpu/slimbootloader/sdram.c   |  1 +
 arch/x86/lib/fsp/fsp_dram.c           |  1 +
 arch/x86/lib/init_helpers.c           |  1 +
 board/armadeus/apf27/apf27.c          |  1 +
 board/imgtec/boston/ddr.c             |  1 +
 board/menlo/m53menlo/m53menlo.c       |  1 +
 board/raspberrypi/rpi/rpi.c           |  1 +
 board/ti/am65x/evm.c                  |  1 +
 board/ti/j721e/evm.c                  |  1 +
 common/board_f.c                      |  1 +
 drivers/video/fsl_dcu_fb.c            |  1 +
 drivers/video/sunxi/sunxi_display.c   |  1 +
 include/common.h                      | 11 -----------
 include/init.h                        | 20 ++++++++++++++++++--
 lib/efi_loader/efi_memory.c           |  1 +
 28 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/arch/arm/mach-mvebu/arm64-common.c b/arch/arm/mach-mvebu/arm64-common.c
index aaf7b7c447..40b98dbf08 100644
--- a/arch/arm/mach-mvebu/arm64-common.c
+++ b/arch/arm/mach-mvebu/arm64-common.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <fdtdec.h>
+#include <init.h>
 #include <linux/libfdt.h>
 #include <linux/sizes.h>
 #include <pci.h>
diff --git a/arch/arm/mach-rockchip/sdram_common.c b/arch/arm/mach-rockchip/sdram_common.c
index 22a4aca940..74a1223532 100644
--- a/arch/arm/mach-rockchip/sdram_common.c
+++ b/arch/arm/mach-rockchip/sdram_common.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <ram.h>
 #include <asm/io.h>
 #include <asm/arch-rockchip/sdram_common.h>
diff --git a/arch/arm/mach-tegra/board2.c b/arch/arm/mach-tegra/board2.c
index 07f54f0684..d3497a2673 100644
--- a/arch/arm/mach-tegra/board2.c
+++ b/arch/arm/mach-tegra/board2.c
@@ -8,6 +8,7 @@
 #include <dm.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <ns16550.h>
 #include <usb.h>
 #include <asm/io.h>
diff --git a/arch/mips/mach-jz47xx/jz4780/jz4780.c b/arch/mips/mach-jz47xx/jz4780/jz4780.c
index 0949cbc3d0..967fc41be4 100644
--- a/arch/mips/mach-jz47xx/jz4780/jz4780.c
+++ b/arch/mips/mach-jz47xx/jz4780/jz4780.c
@@ -9,6 +9,7 @@
 #include <config.h>
 #include <common.h>
 #include <cpu_legacy.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/sections.h>
 #include <mach/jz4780.h>
diff --git a/arch/riscv/cpu/generic/dram.c b/arch/riscv/cpu/generic/dram.c
index b7b1207235..1dc77efeca 100644
--- a/arch/riscv/cpu/generic/dram.c
+++ b/arch/riscv/cpu/generic/dram.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <fdtdec.h>
+#include <init.h>
 #include <linux/sizes.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/x86/cpu/broadwell/sdram.c b/arch/x86/cpu/broadwell/sdram.c
index b31d78c092..dfd8afc35f 100644
--- a/arch/x86/cpu/broadwell/sdram.c
+++ b/arch/x86/cpu/broadwell/sdram.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <pci.h>
 #include <syscon.h>
 #include <asm/cpu.h>
diff --git a/arch/x86/cpu/coreboot/sdram.c b/arch/x86/cpu/coreboot/sdram.c
index 664817feff..27e859885e 100644
--- a/arch/x86/cpu/coreboot/sdram.c
+++ b/arch/x86/cpu/coreboot/sdram.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/e820.h>
 #include <asm/arch/sysinfo.h>
 
diff --git a/arch/x86/cpu/efi/payload.c b/arch/x86/cpu/efi/payload.c
index 019e312527..8f8a933194 100644
--- a/arch/x86/cpu/efi/payload.c
+++ b/arch/x86/cpu/efi/payload.c
@@ -8,6 +8,7 @@
 #include <cpu.h>
 #include <efi.h>
 #include <errno.h>
+#include <init.h>
 #include <usb.h>
 #include <asm/bootparam.h>
 #include <asm/e820.h>
diff --git a/arch/x86/cpu/efi/sdram.c b/arch/x86/cpu/efi/sdram.c
index a45525f842..3143c079ad 100644
--- a/arch/x86/cpu/efi/sdram.c
+++ b/arch/x86/cpu/efi/sdram.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <efi.h>
+#include <init.h>
 #include <asm/u-boot-x86.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/x86/cpu/intel_common/mrc.c b/arch/x86/cpu/intel_common/mrc.c
index b35102a3f0..755670a847 100644
--- a/arch/x86/cpu/intel_common/mrc.c
+++ b/arch/x86/cpu/intel_common/mrc.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <syscon.h>
 #include <asm/cpu.h>
 #include <asm/gpio.h>
diff --git a/arch/x86/cpu/ivybridge/sdram.c b/arch/x86/cpu/ivybridge/sdram.c
index 8a58d0383d..51ca4ad301 100644
--- a/arch/x86/cpu/ivybridge/sdram.c
+++ b/arch/x86/cpu/ivybridge/sdram.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <errno.h>
 #include <fdtdec.h>
+#include <init.h>
 #include <malloc.h>
 #include <net.h>
 #include <rtc.h>
diff --git a/arch/x86/cpu/qemu/dram.c b/arch/x86/cpu/qemu/dram.c
index 6707b7b363..19d92f27d8 100644
--- a/arch/x86/cpu/qemu/dram.c
+++ b/arch/x86/cpu/qemu/dram.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/post.h>
 #include <asm/arch/qemu.h>
 
diff --git a/arch/x86/cpu/quark/dram.c b/arch/x86/cpu/quark/dram.c
index 1c5d6a963c..3e502c010d 100644
--- a/arch/x86/cpu/quark/dram.c
+++ b/arch/x86/cpu/quark/dram.c
@@ -7,6 +7,7 @@
 #include <cpu_legacy.h>
 #include <errno.h>
 #include <fdtdec.h>
+#include <init.h>
 #include <malloc.h>
 #include <asm/mrccache.h>
 #include <asm/mtrr.h>
diff --git a/arch/x86/cpu/slimbootloader/sdram.c b/arch/x86/cpu/slimbootloader/sdram.c
index 05d40d196c..33e91fb636 100644
--- a/arch/x86/cpu/slimbootloader/sdram.c
+++ b/arch/x86/cpu/slimbootloader/sdram.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <linux/sizes.h>
 #include <asm/e820.h>
 #include <asm/arch/slimbootloader.h>
diff --git a/arch/x86/lib/fsp/fsp_dram.c b/arch/x86/lib/fsp/fsp_dram.c
index 2d1023068f..bc456bb4a9 100644
--- a/arch/x86/lib/fsp/fsp_dram.c
+++ b/arch/x86/lib/fsp/fsp_dram.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <handoff.h>
+#include <init.h>
 #include <asm/fsp/fsp_support.h>
 #include <asm/e820.h>
 #include <asm/mrccache.h>
diff --git a/arch/x86/lib/init_helpers.c b/arch/x86/lib/init_helpers.c
index 3e3a11ac2f..5bb55e256f 100644
--- a/arch/x86/lib/init_helpers.c
+++ b/arch/x86/lib/init_helpers.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <linux/errno.h>
 #include <asm/mtrr.h>
 
diff --git a/board/armadeus/apf27/apf27.c b/board/armadeus/apf27/apf27.c
index 20be0c3bd4..75395d92cd 100644
--- a/board/armadeus/apf27/apf27.c
+++ b/board/armadeus/apf27/apf27.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <jffs2/jffs2.h>
 #include <nand.h>
 #include <netdev.h>
diff --git a/board/imgtec/boston/ddr.c b/board/imgtec/boston/ddr.c
index 3f8a5c0d8e..241b384668 100644
--- a/board/imgtec/boston/ddr.c
+++ b/board/imgtec/boston/ddr.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 #include <asm/io.h>
 
diff --git a/board/menlo/m53menlo/m53menlo.c b/board/menlo/m53menlo/m53menlo.c
index bda5f0df5b..065e6a2ccc 100644
--- a/board/menlo/m53menlo/m53menlo.c
+++ b/board/menlo/m53menlo/m53menlo.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c
index 9e0abdda31..8898c14f54 100644
--- a/board/raspberrypi/rpi/rpi.c
+++ b/board/raspberrypi/rpi/rpi.c
@@ -10,6 +10,7 @@
 #include <efi_loader.h>
 #include <fdt_support.h>
 #include <fdt_simplefb.h>
+#include <init.h>
 #include <lcd.h>
 #include <memalign.h>
 #include <mmc.h>
diff --git a/board/ti/am65x/evm.c b/board/ti/am65x/evm.c
index 544f872459..4d86757c39 100644
--- a/board/ti/am65x/evm.c
+++ b/board/ti/am65x/evm.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/hardware.h>
 #include <asm/gpio.h>
diff --git a/board/ti/j721e/evm.c b/board/ti/j721e/evm.c
index db5d7b8834..51b121ce05 100644
--- a/board/ti/j721e/evm.c
+++ b/board/ti/j721e/evm.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <spl.h>
 #include <asm/arch/sys_proto.h>
diff --git a/common/board_f.c b/common/board_f.c
index 5dcecd66d6..18aa84dba9 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -20,6 +20,7 @@
 #include <fdtdec.h>
 #include <fs.h>
 #include <i2c.h>
+#include <init.h>
 #include <initcall.h>
 #include <lcd.h>
 #include <malloc.h>
diff --git a/drivers/video/fsl_dcu_fb.c b/drivers/video/fsl_dcu_fb.c
index add64b85b5..076e9ea019 100644
--- a/drivers/video/fsl_dcu_fb.c
+++ b/drivers/video/fsl_dcu_fb.c
@@ -6,6 +6,7 @@
  * FSL DCU Framebuffer driver
  */
 
+#include <init.h>
 #include <asm/io.h>
 #include <common.h>
 #include <dm.h>
diff --git a/drivers/video/sunxi/sunxi_display.c b/drivers/video/sunxi/sunxi_display.c
index 9172a3b011..9fd864bde2 100644
--- a/drivers/video/sunxi/sunxi_display.c
+++ b/drivers/video/sunxi/sunxi_display.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <cpu_legacy.h>
 #include <efi_loader.h>
+#include <init.h>
 #include <time.h>
 
 #include <asm/arch/clock.h>
diff --git a/include/common.h b/include/common.h
index 16d4b0612f..9bdd1cf85c 100644
--- a/include/common.h
+++ b/include/common.h
@@ -73,17 +73,6 @@ extern u8 __dtb_dt_begin[];	/* embedded device tree blob */
 extern u8 __dtb_dt_spl_begin[];	/* embedded device tree blob for SPL/TPL */
 int mdm_init(void);
 
-/**
- * Get the uppermost pointer that is valid to access
- *
- * Some systems may not map all of their address space. This function allows
- * boards to indicate what their highest support pointer value is for DRAM
- * access.
- *
- * @param total_size	Size of U-Boot (unused?)
- */
-ulong board_get_usable_ram_top(ulong total_size);
-
 /**
  * arch_fixup_fdt() - Write arch-specific information to fdt
  *
diff --git a/include/init.h b/include/init.h
index afc953d51e..6076283d2c 100644
--- a/include/init.h
+++ b/include/init.h
@@ -10,6 +10,8 @@
 #ifndef __INIT_H_
 #define __INIT_H_	1
 
+#include <linux/types.h>
+
 #ifndef __ASSEMBLY__		/* put C only stuff in this section */
 
 /*
@@ -149,6 +151,8 @@ ulong board_init_f_alloc_reserve(ulong top);
  */
 void board_init_f_init_reserve(ulong base);
 
+struct global_data;
+
 /**
  * arch_setup_gd() - Set up the global_data pointer
  * @gd_ptr: Pointer to global data
@@ -160,10 +164,11 @@ void board_init_f_init_reserve(ulong base);
  *
  *    gd = gd_ptr;
  */
-void arch_setup_gd(gd_t *gd_ptr);
+void arch_setup_gd(struct global_data *gd_ptr);
 
 /* common/board_r.c */
-void board_init_r(gd_t *id, ulong dest_addr) __attribute__ ((noreturn));
+void board_init_r(struct global_data *id, ulong dest_addr)
+	__attribute__ ((noreturn));
 
 int cpu_init_r(void);
 int last_stage_init(void);
@@ -181,6 +186,17 @@ int init_func_vid(void);
 int checkboard(void);
 int show_board_info(void);
 
+/**
+ * Get the uppermost pointer that is valid to access
+ *
+ * Some systems may not map all of their address space. This function allows
+ * boards to indicate what their highest support pointer value is for DRAM
+ * access.
+ *
+ * @param total_size	Size of U-Boot (unused?)
+ */
+ulong board_get_usable_ram_top(ulong total_size);
+
 #endif	/* __ASSEMBLY__ */
 /* Put only stuff here that the assembler can digest */
 
diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
index 83cbc9154f..e2d6ea4fb8 100644
--- a/lib/efi_loader/efi_memory.c
+++ b/lib/efi_loader/efi_memory.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <efi_loader.h>
+#include <init.h>
 #include <malloc.h>
 #include <mapmem.h>
 #include <watchdog.h>
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 38/42] common: Move some board functions out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (36 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 37/42] common: Move board_get_usable_ram_top() out of common.h Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 39/42] common: Move pci_init_board() " Simon Glass
                   ` (3 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

A number of board function belong in init.h with the others. Move them.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 arch/arm/cpu/armv8/fsl-layerscape/soc.c                   | 1 +
 arch/arm/mach-imx/mx6/opos6ul.c                           | 1 +
 arch/arm/mach-imx/mx6/soc.c                               | 1 +
 arch/arm/mach-imx/mx7ulp/soc.c                            | 1 +
 arch/arm/mach-meson/board-common.c                        | 1 +
 arch/arm/mach-rockchip/board.c                            | 1 +
 arch/arm/mach-rockchip/rk3288/rk3288.c                    | 1 +
 arch/arm/mach-uniphier/board_late_init.c                  | 1 +
 arch/arm/mach-zynqmp/spl.c                                | 1 +
 arch/powerpc/cpu/mpc85xx/cpu_init.c                       | 1 +
 board/Arcturus/ucp1020/ucp1020.c                          | 1 +
 board/BuR/brppt1/board.c                                  | 1 +
 board/BuR/brsmarc1/board.c                                | 1 +
 board/BuR/brxre1/board.c                                  | 1 +
 board/CZ.NIC/turris_mox/turris_mox.c                      | 1 +
 board/CZ.NIC/turris_omnia/turris_omnia.c                  | 1 +
 board/Marvell/mvebu_armada-8k/board.c                     | 1 +
 board/advantech/dms-ba16/dms-ba16.c                       | 1 +
 board/aristainetos/aristainetos-v2.c                      | 1 +
 board/armadeus/opos6uldev/board.c                         | 3 ++-
 board/atmark-techno/armadillo-800eva/armadillo-800eva.c   | 1 +
 board/atmel/at91sam9x5ek/at91sam9x5ek.c                   | 1 +
 board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c           | 1 +
 board/atmel/sama5d2_icp/sama5d2_icp.c                     | 1 +
 board/atmel/sama5d2_ptc_ek/sama5d2_ptc_ek.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/beckhoff/mx53cx9020/mx53cx9020.c                    | 1 +
 board/birdland/bav335x/board.c                            | 1 +
 board/bluewater/gurnard/gurnard.c                         | 1 +
 board/bosch/shc/board.c                                   | 1 +
 board/broadcom/bcmstb/bcmstb.c                            | 1 +
 board/cadence/xtfpga/xtfpga.c                             | 1 +
 board/ccv/xpress/xpress.c                                 | 1 +
 board/chipspark/popmetal_rk3288/popmetal-rk3288.c         | 1 +
 board/compulab/cl-som-imx7/cl-som-imx7.c                  | 1 +
 board/compulab/cm_fx6/cm_fx6.c                            | 1 +
 board/congatec/cgtqmx6eval/cgtqmx6eval.c                  | 1 +
 .../congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c  | 1 +
 board/coreboot/coreboot/coreboot.c                        | 1 +
 board/cssi/MCR3000/MCR3000.c                              | 1 +
 board/dfi/dfi-bt700/dfi-bt700.c                           | 1 +
 board/dhelectronics/dh_imx6/dh_imx6.c                     | 1 +
 board/eets/pdu001/board.c                                 | 1 +
 board/efi/efi-x86_payload/payload.c                       | 1 +
 board/el/el6x/el6x.c                                      | 1 +
 board/embest/mx6boards/mx6boards.c                        | 1 +
 board/emulation/qemu-riscv/qemu-riscv.c                   | 1 +
 board/engicam/common/board.c                              | 1 +
 board/freescale/b4860qds/b4860qds.c                       | 1 +
 board/freescale/bsc9132qds/bsc9132qds.c                   | 1 +
 board/freescale/c29xpcie/c29xpcie.c                       | 1 +
 board/freescale/corenet_ds/corenet_ds.c                   | 1 +
 board/freescale/imx8mq_evk/imx8mq_evk.c                   | 1 +
 board/freescale/imx8qm_mek/imx8qm_mek.c                   | 1 +
 board/freescale/imx8qxp_mek/imx8qxp_mek.c                 | 1 +
 board/freescale/ls1021aiot/ls1021aiot.c                   | 1 +
 board/freescale/ls1021aqds/ls1021aqds.c                   | 1 +
 board/freescale/ls1021atsn/ls1021atsn.c                   | 1 +
 board/freescale/ls1021atwr/ls1021atwr.c                   | 1 +
 board/freescale/mpc8313erdb/mpc8313erdb.c                 | 1 +
 board/freescale/mpc832xemds/mpc832xemds.c                 | 1 +
 board/freescale/mpc837xemds/mpc837xemds.c                 | 1 +
 board/freescale/mpc8536ds/mpc8536ds.c                     | 1 +
 board/freescale/mpc8569mds/mpc8569mds.c                   | 1 +
 board/freescale/mpc8572ds/mpc8572ds.c                     | 1 +
 board/freescale/mx25pdk/mx25pdk.c                         | 1 +
 board/freescale/mx31pdk/mx31pdk.c                         | 1 +
 board/freescale/mx35pdk/mx35pdk.c                         | 1 +
 board/freescale/mx51evk/mx51evk.c                         | 1 +
 board/freescale/mx53evk/mx53evk.c                         | 1 +
 board/freescale/mx53loco/mx53loco.c                       | 1 +
 board/freescale/mx6sabreauto/mx6sabreauto.c               | 1 +
 board/freescale/mx6sabresd/mx6sabresd.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/mx6ullevk/mx6ullevk.c                     | 1 +
 board/freescale/mx7dsabresd/mx7dsabresd.c                 | 1 +
 board/freescale/p1010rdb/p1010rdb.c                       | 1 +
 board/freescale/p1022ds/p1022ds.c                         | 1 +
 board/freescale/p1023rdb/p1023rdb.c                       | 1 +
 board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c               | 1 +
 board/freescale/p1_twr/p1_twr.c                           | 1 +
 board/freescale/p2041rdb/p2041rdb.c                       | 1 +
 board/freescale/t102xqds/t102xqds.c                       | 1 +
 board/freescale/t102xrdb/t102xrdb.c                       | 1 +
 board/freescale/t1040qds/t1040qds.c                       | 1 +
 board/freescale/t104xrdb/t104xrdb.c                       | 1 +
 board/freescale/t208xqds/t208xqds.c                       | 1 +
 board/freescale/t208xrdb/t208xrdb.c                       | 1 +
 board/freescale/t4qds/t4240emu.c                          | 1 +
 board/freescale/t4qds/t4240qds.c                          | 1 +
 board/freescale/t4rdb/t4240rdb.c                          | 1 +
 board/gardena/smart-gateway-at91sam/board.c               | 1 +
 board/gardena/smart-gateway-mt7688/board.c                | 1 +
 board/gdsys/a38x/controlcenterdc.c                        | 1 +
 board/gdsys/mpc8308/gazerbeam.c                           | 1 +
 board/gdsys/mpc8308/mpc8308.c                             | 1 +
 board/gdsys/p1022/controlcenterd.c                        | 1 +
 board/ge/bx50v3/bx50v3.c                                  | 1 +
 board/ge/mx53ppd/mx53ppd.c                                | 1 +
 board/grinn/chiliboard/board.c                            | 1 +
 board/grinn/liteboard/board.c                             | 1 +
 board/intel/edison/edison.c                               | 1 +
 board/intel/slimbootloader/slimbootloader.c               | 1 +
 board/isee/igep003x/board.c                               | 1 +
 board/k+p/kp_imx53/kp_imx53.c                             | 1 +
 board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c                     | 1 +
 board/keymile/km83xx/km83xx.c                             | 1 +
 board/keymile/km_arm/km_arm.c                             | 1 +
 board/keymile/kmp204x/kmp204x.c                           | 1 +
 board/kosagi/novena/novena.c                              | 1 +
 board/kosagi/novena/novena_spl.c                          | 1 +
 board/laird/wb50n/wb50n.c                                 | 1 +
 board/liebherr/mccmon6/mccmon6.c                          | 1 +
 board/logicpd/imx6/imx6logic.c                            | 1 +
 board/logicpd/omap3som/omap3logic.c                       | 1 +
 board/mscc/jr2/jr2.c                                      | 1 +
 board/mscc/luton/luton.c                                  | 1 +
 board/mscc/ocelot/ocelot.c                                | 1 +
 board/mscc/serval/serval.c                                | 1 +
 board/mscc/servalt/servalt.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/qualcomm/dragonboard410c/dragonboard410c.c          | 1 +
 board/renesas/r2dplus/r2dplus.c                           | 1 +
 board/renesas/sh7752evb/sh7752evb.c                       | 1 +
 board/renesas/sh7753evb/sh7753evb.c                       | 1 +
 board/renesas/sh7757lcr/sh7757lcr.c                       | 1 +
 board/rockchip/kylin_rk3036/kylin_rk3036.c                | 1 +
 board/rockchip/tinker_rk3288/tinker-rk3288.c              | 1 +
 board/samsung/common/board.c                              | 1 +
 board/sandbox/sandbox.c                                   | 1 +
 board/siemens/draco/board.c                               | 1 +
 board/siemens/pxm2/board.c                                | 1 +
 board/siemens/rut/board.c                                 | 1 +
 board/softing/vining_2000/vining_2000.c                   | 1 +
 board/softing/vining_fpga/socfpga.c                       | 1 +
 board/solidrun/mx6cuboxi/mx6cuboxi.c                      | 1 +
 board/spear/x600/x600.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/stm32mp1.c                              | 1 +
 board/synopsys/hsdk/hsdk.c                                | 1 +
 board/syteco/zmx25/zmx25.c                                | 1 +
 board/tcl/sl50/board.c                                    | 1 +
 board/technexion/pico-imx7d/pico-imx7d.c                  | 1 +
 board/theadorable/theadorable.c                           | 1 +
 board/ti/am335x/board.c                                   | 1 +
 board/ti/am43xx/board.c                                   | 1 +
 board/ti/am57xx/board.c                                   | 1 +
 board/ti/dra7xx/evm.c                                     | 1 +
 board/ti/ks2_evm/board_k2g.c                              | 1 +
 board/toradex/apalis-imx8/apalis-imx8.c                   | 1 +
 board/toradex/apalis_imx6/apalis_imx6.c                   | 1 +
 board/toradex/colibri-imx6ull/colibri-imx6ull.c           | 1 +
 board/toradex/colibri-imx8x/colibri-imx8x.c               | 1 +
 board/toradex/colibri_imx6/colibri_imx6.c                 | 1 +
 board/toradex/colibri_vf/colibri_vf.c                     | 1 +
 board/tqc/tqma6/tqma6.c                                   | 1 +
 board/tqc/tqma6/tqma6_mba6.c                              | 1 +
 board/tqc/tqma6/tqma6_wru4.c                              | 1 +
 board/udoo/neo/neo.c                                      | 1 +
 board/udoo/udoo.c                                         | 1 +
 board/varisys/cyrus/cyrus.c                               | 1 +
 board/vscom/baltos/board.c                                | 1 +
 board/wandboard/wandboard.c                               | 1 +
 board/warp/warp.c                                         | 1 +
 board/warp7/warp7.c                                       | 1 +
 board/work-microwave/work_92105/work_92105.c              | 1 +
 board/xes/xpedite517x/xpedite517x.c                       | 1 +
 board/xes/xpedite520x/xpedite520x.c                       | 1 +
 board/xes/xpedite537x/xpedite537x.c                       | 1 +
 board/xes/xpedite550x/xpedite550x.c                       | 1 +
 board/xilinx/microblaze-generic/microblaze-generic.c      | 1 +
 board/xilinx/versal/board.c                               | 1 +
 board/xilinx/zynq/board.c                                 | 1 +
 board/xilinx/zynqmp/zynqmp.c                              | 1 +
 include/common.h                                          | 7 -------
 include/init.h                                            | 8 ++++++++
 188 files changed, 195 insertions(+), 8 deletions(-)

diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
index f0df88c565..35f5e43881 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
@@ -8,6 +8,7 @@
 #include <env.h>
 #include <fsl_immap.h>
 #include <fsl_ifc.h>
+#include <init.h>
 #include <asm/arch/fsl_serdes.h>
 #include <asm/arch/soc.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-imx/mx6/opos6ul.c b/arch/arm/mach-imx/mx6/opos6ul.c
index 0c640e2e33..4b3c59f7ee 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 <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
index 6dccee484c..926718b49c 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 <init.h>
 #include <linux/errno.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/mach-imx/mx7ulp/soc.c b/arch/arm/mach-imx/mx7ulp/soc.c
index 127fcfeea1..4b6014e724 100644
--- a/arch/arm/mach-imx/mx7ulp/soc.c
+++ b/arch/arm/mach-imx/mx7ulp/soc.c
@@ -2,6 +2,7 @@
 /*
  * Copyright (C) 2016 Freescale Semiconductor, Inc.
  */
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
diff --git a/arch/arm/mach-meson/board-common.c b/arch/arm/mach-meson/board-common.c
index 6c77e37966..d33e7f1741 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 <init.h>
 #include <asm/arch/boot.h>
 #include <env.h>
 #include <linux/libfdt.h>
diff --git a/arch/arm/mach-rockchip/board.c b/arch/arm/mach-rockchip/board.c
index d1cff2424c..26a2b00425 100644
--- a/arch/arm/mach-rockchip/board.c
+++ b/arch/arm/mach-rockchip/board.c
@@ -6,6 +6,7 @@
 #include <clk.h>
 #include <cpu_legacy.h>
 #include <dm.h>
+#include <init.h>
 #include <ram.h>
 #include <syscon.h>
 #include <asm/io.h>
diff --git a/arch/arm/mach-rockchip/rk3288/rk3288.c b/arch/arm/mach-rockchip/rk3288/rk3288.c
index 987b4e0d58..bd31cdbe91 100644
--- a/arch/arm/mach-rockchip/rk3288/rk3288.c
+++ b/arch/arm/mach-rockchip/rk3288/rk3288.c
@@ -6,6 +6,7 @@
 #include <dm.h>
 #include <env.h>
 #include <clk.h>
+#include <init.h>
 #include <asm/armv7.h>
 #include <asm/io.h>
 #include <asm/arch-rockchip/bootrom.h>
diff --git a/arch/arm/mach-uniphier/board_late_init.c b/arch/arm/mach-uniphier/board_late_init.c
index 14b61fc7df..793283058c 100644
--- a/arch/arm/mach-uniphier/board_late_init.c
+++ b/arch/arm/mach-uniphier/board_late_init.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <spl.h>
 #include <linux/libfdt.h>
 #include <nand.h>
diff --git a/arch/arm/mach-zynqmp/spl.c b/arch/arm/mach-zynqmp/spl.c
index b52ac17853..6ba42bb42f 100644
--- a/arch/arm/mach-zynqmp/spl.c
+++ b/arch/arm/mach-zynqmp/spl.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <init.h>
 #include <spl.h>
 
 #include <asm/io.h>
diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c b/arch/powerpc/cpu/mpc85xx/cpu_init.c
index c2b2ef2041..b8fe4e4788 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu_init.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <watchdog.h>
 #include <asm/processor.h>
 #include <ioports.h>
diff --git a/board/Arcturus/ucp1020/ucp1020.c b/board/Arcturus/ucp1020/ucp1020.c
index 6a880c97bc..b641b72aaa 100644
--- a/board/Arcturus/ucp1020/ucp1020.c
+++ b/board/Arcturus/ucp1020/ucp1020.c
@@ -12,6 +12,7 @@
 #include <command.h>
 #include <env.h>
 #include <hwconfig.h>
+#include <init.h>
 #include <pci.h>
 #include <i2c.h>
 #include <miiphy.h>
diff --git a/board/BuR/brppt1/board.c b/board/BuR/brppt1/board.c
index e0d1707ac1..dd9649ca07 100644
--- a/board/BuR/brppt1/board.c
+++ b/board/BuR/brppt1/board.c
@@ -13,6 +13,7 @@
 #include <bootcount.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/BuR/brsmarc1/board.c b/board/BuR/brsmarc1/board.c
index 4c70346148..5b9108a89f 100644
--- a/board/BuR/brsmarc1/board.c
+++ b/board/BuR/brsmarc1/board.c
@@ -10,6 +10,7 @@
  */
 #include <common.h>
 #include <errno.h>
+#include <init.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/BuR/brxre1/board.c b/board/BuR/brxre1/board.c
index 873208c668..5d57e19fde 100644
--- a/board/BuR/brxre1/board.c
+++ b/board/BuR/brxre1/board.c
@@ -11,6 +11,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/CZ.NIC/turris_mox/turris_mox.c b/board/CZ.NIC/turris_mox/turris_mox.c
index 946e20ab49..377191baef 100644
--- a/board/CZ.NIC/turris_mox/turris_mox.c
+++ b/board/CZ.NIC/turris_mox/turris_mox.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
 #include <dm.h>
diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c b/board/CZ.NIC/turris_omnia/turris_omnia.c
index 4d21e62e73..e1775d3004 100644
--- a/board/CZ.NIC/turris_omnia/turris_omnia.c
+++ b/board/CZ.NIC/turris_omnia/turris_omnia.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <miiphy.h>
 #include <netdev.h>
 #include <asm/io.h>
diff --git a/board/Marvell/mvebu_armada-8k/board.c b/board/Marvell/mvebu_armada-8k/board.c
index e927e338ea..499e89367f 100644
--- a/board/Marvell/mvebu_armada-8k/board.c
+++ b/board/Marvell/mvebu_armada-8k/board.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <i2c.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
diff --git a/board/advantech/dms-ba16/dms-ba16.c b/board/advantech/dms-ba16/dms-ba16.c
index 2eccc053d8..299f2f102d 100644
--- a/board/advantech/dms-ba16/dms-ba16.c
+++ b/board/advantech/dms-ba16/dms-ba16.c
@@ -5,6 +5,7 @@
  * Copyright 2012 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/aristainetos/aristainetos-v2.c b/board/aristainetos/aristainetos-v2.c
index c0a2e41f02..a12c063e5b 100644
--- a/board/aristainetos/aristainetos-v2.c
+++ b/board/aristainetos/aristainetos-v2.c
@@ -9,6 +9,7 @@
  * Author: Fabio Estevam <fabio.estevam@freescale.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/armadeus/opos6uldev/board.c b/board/armadeus/opos6uldev/board.c
index ade155c5ad..365fdca1b7 100644
--- a/board/armadeus/opos6uldev/board.c
+++ b/board/armadeus/opos6uldev/board.c
@@ -3,10 +3,11 @@
  * Copyright (C) 2018 Armadeus Systems
  */
 
+#include <common.h>
+#include <init.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <common.h>
 
 #ifdef CONFIG_VIDEO_MXS
 int setup_lcd(void)
diff --git a/board/atmark-techno/armadillo-800eva/armadillo-800eva.c b/board/atmark-techno/armadillo-800eva/armadillo-800eva.c
index d95ba7b8bf..867fa82c17 100644
--- a/board/atmark-techno/armadillo-800eva/armadillo-800eva.c
+++ b/board/atmark-techno/armadillo-800eva/armadillo-800eva.c
@@ -21,6 +21,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <malloc.h>
 #include <asm/processor.h>
 #include <asm/mach-types.h>
diff --git a/board/atmel/at91sam9x5ek/at91sam9x5ek.c b/board/atmel/at91sam9x5ek/at91sam9x5ek.c
index 0856786a0f..2c071075ba 100644
--- a/board/atmel/at91sam9x5ek/at91sam9x5ek.c
+++ b/board/atmel/at91sam9x5ek/at91sam9x5ek.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/at91sam9x5_matrix.h>
 #include <asm/arch/at91sam9_smc.h>
diff --git a/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c b/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c
index 83634345f3..f3816c8334 100644
--- a/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c
+++ b/board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/at91_common.h>
 #include <asm/arch/atmel_pio4.h>
diff --git a/board/atmel/sama5d2_icp/sama5d2_icp.c b/board/atmel/sama5d2_icp/sama5d2_icp.c
index 1593e2bd4e..7c34df48b8 100644
--- a/board/atmel/sama5d2_icp/sama5d2_icp.c
+++ b/board/atmel/sama5d2_icp/sama5d2_icp.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/at91_common.h>
 #include <asm/arch/atmel_pio4.h>
diff --git a/board/atmel/sama5d2_ptc_ek/sama5d2_ptc_ek.c b/board/atmel/sama5d2_ptc_ek/sama5d2_ptc_ek.c
index 17e08fa9b2..4b3a703f26 100644
--- a/board/atmel/sama5d2_ptc_ek/sama5d2_ptc_ek.c
+++ b/board/atmel/sama5d2_ptc_ek/sama5d2_ptc_ek.c
@@ -8,6 +8,7 @@
 #include <debug_uart.h>
 #include <dm.h>
 #include <i2c.h>
+#include <init.h>
 #include <nand.h>
 #include <version.h>
 #include <asm/io.h>
diff --git a/board/atmel/sama5d2_xplained/sama5d2_xplained.c b/board/atmel/sama5d2_xplained/sama5d2_xplained.c
index fccd80ec70..2116b78837 100644
--- a/board/atmel/sama5d2_xplained/sama5d2_xplained.c
+++ b/board/atmel/sama5d2_xplained/sama5d2_xplained.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <debug_uart.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/at91_common.h>
 #include <asm/arch/atmel_pio4.h>
diff --git a/board/atmel/sama5d3_xplained/sama5d3_xplained.c b/board/atmel/sama5d3_xplained/sama5d3_xplained.c
index 289f8d8499..84c561be6f 100644
--- a/board/atmel/sama5d3_xplained/sama5d3_xplained.c
+++ b/board/atmel/sama5d3_xplained/sama5d3_xplained.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/sama5d3_smc.h>
 #include <asm/arch/at91_common.h>
diff --git a/board/atmel/sama5d3xek/sama5d3xek.c b/board/atmel/sama5d3xek/sama5d3xek.c
index acf61486d2..3aa46b1774 100644
--- a/board/atmel/sama5d3xek/sama5d3xek.c
+++ b/board/atmel/sama5d3xek/sama5d3xek.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/sama5d3_smc.h>
 #include <asm/arch/at91_common.h>
diff --git a/board/atmel/sama5d4_xplained/sama5d4_xplained.c b/board/atmel/sama5d4_xplained/sama5d4_xplained.c
index 4da64890b3..93cc183a5b 100644
--- a/board/atmel/sama5d4_xplained/sama5d4_xplained.c
+++ b/board/atmel/sama5d4_xplained/sama5d4_xplained.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/at91_common.h>
 #include <asm/arch/at91_rstc.h>
diff --git a/board/atmel/sama5d4ek/sama5d4ek.c b/board/atmel/sama5d4ek/sama5d4ek.c
index 2708d8e75e..4b3883e20f 100644
--- a/board/atmel/sama5d4ek/sama5d4ek.c
+++ b/board/atmel/sama5d4ek/sama5d4ek.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/at91_common.h>
 #include <asm/arch/at91_rstc.h>
diff --git a/board/beckhoff/mx53cx9020/mx53cx9020.c b/board/beckhoff/mx53cx9020/mx53cx9020.c
index 73cf8b1194..aeb14fe780 100644
--- a/board/beckhoff/mx53cx9020/mx53cx9020.c
+++ b/board/beckhoff/mx53cx9020/mx53cx9020.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
+#include <init.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux-mx53.h>
diff --git a/board/birdland/bav335x/board.c b/board/birdland/bav335x/board.c
index 1f3f44a867..c946ea408f 100644
--- a/board/birdland/bav335x/board.c
+++ b/board/birdland/bav335x/board.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
diff --git a/board/bluewater/gurnard/gurnard.c b/board/bluewater/gurnard/gurnard.c
index 48e31d9065..4ae70e1aa5 100644
--- a/board/bluewater/gurnard/gurnard.c
+++ b/board/bluewater/gurnard/gurnard.c
@@ -13,6 +13,7 @@
 #include <atmel_mci.h>
 #include <dm.h>
 #include <env.h>
+#include <init.h>
 #include <lcd.h>
 #include <net.h>
 #ifndef CONFIG_DM_ETH
diff --git a/board/bosch/shc/board.c b/board/bosch/shc/board.c
index 145bc0233a..60f9c1ccf4 100644
--- a/board/bosch/shc/board.c
+++ b/board/bosch/shc/board.c
@@ -14,6 +14,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <irq_func.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
diff --git a/board/broadcom/bcmstb/bcmstb.c b/board/broadcom/bcmstb/bcmstb.c
index 6af49a368d..34389a20d8 100644
--- a/board/broadcom/bcmstb/bcmstb.c
+++ b/board/broadcom/bcmstb/bcmstb.c
@@ -7,6 +7,7 @@
  */
 
 #include <cpu_legacy.h>
+#include <init.h>
 #include <time.h>
 #include <linux/types.h>
 #include <common.h>
diff --git a/board/cadence/xtfpga/xtfpga.c b/board/cadence/xtfpga/xtfpga.c
index 256611638a..2869e5cf68 100644
--- a/board/cadence/xtfpga/xtfpga.c
+++ b/board/cadence/xtfpga/xtfpga.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <command.h>
 #include <dm.h>
+#include <init.h>
 #include <dm/platform_data/net_ethoc.h>
 #include <env.h>
 #include <linux/ctype.h>
diff --git a/board/ccv/xpress/xpress.c b/board/ccv/xpress/xpress.c
index 05286e643c..0caeea5885 100644
--- a/board/ccv/xpress/xpress.c
+++ b/board/ccv/xpress/xpress.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2015-2016 Stefan Roese <sr@denx.de>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/chipspark/popmetal_rk3288/popmetal-rk3288.c b/board/chipspark/popmetal_rk3288/popmetal-rk3288.c
index 47b921a748..e6909b3b1c 100644
--- a/board/chipspark/popmetal_rk3288/popmetal-rk3288.c
+++ b/board/chipspark/popmetal_rk3288/popmetal-rk3288.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/gpio.h>
 
 #define GPIO7A3_HUB_RST	227
diff --git a/board/compulab/cl-som-imx7/cl-som-imx7.c b/board/compulab/cl-som-imx7/cl-som-imx7.c
index 395d5dce17..9277094e44 100644
--- a/board/compulab/cl-som-imx7/cl-som-imx7.c
+++ b/board/compulab/cl-som-imx7/cl-som-imx7.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <mmc.h>
 #include <phy.h>
 #include <netdev.h>
diff --git a/board/compulab/cm_fx6/cm_fx6.c b/board/compulab/cm_fx6/cm_fx6.c
index feb7a71f00..b20ca168df 100644
--- a/board/compulab/cm_fx6/cm_fx6.c
+++ b/board/compulab/cm_fx6/cm_fx6.c
@@ -13,6 +13,7 @@
 #include <dwc_ahsata.h>
 #include <env.h>
 #include <fsl_esdhc_imx.h>
+#include <init.h>
 #include <miiphy.h>
 #include <mtd_node.h>
 #include <netdev.h>
diff --git a/board/congatec/cgtqmx6eval/cgtqmx6eval.c b/board/congatec/cgtqmx6eval/cgtqmx6eval.c
index 6b3d5b833f..49c731f891 100644
--- a/board/congatec/cgtqmx6eval/cgtqmx6eval.c
+++ b/board/congatec/cgtqmx6eval/cgtqmx6eval.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.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 9751337a47..315b6dc542 100644
--- a/board/congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c
+++ b/board/congatec/conga-qeval20-qa3-e3845/conga-qeval20-qa3.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <i2c.h>
+#include <init.h>
 #include <winbond_w83627.h>
 #include <asm/gpio.h>
 #include <asm/ibmpc.h>
diff --git a/board/coreboot/coreboot/coreboot.c b/board/coreboot/coreboot/coreboot.c
index ed5606d4a4..b791b82ef4 100644
--- a/board/coreboot/coreboot/coreboot.c
+++ b/board/coreboot/coreboot/coreboot.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 int board_early_init_r(void)
 {
diff --git a/board/cssi/MCR3000/MCR3000.c b/board/cssi/MCR3000/MCR3000.c
index dcd2c1c975..138d0c61f1 100644
--- a/board/cssi/MCR3000/MCR3000.c
+++ b/board/cssi/MCR3000/MCR3000.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <hwconfig.h>
+#include <init.h>
 #include <mpc8xx.h>
 #include <fdt_support.h>
 #include <serial.h>
diff --git a/board/dfi/dfi-bt700/dfi-bt700.c b/board/dfi/dfi-bt700/dfi-bt700.c
index 50cf6dc987..f4c4b1d663 100644
--- a/board/dfi/dfi-bt700/dfi-bt700.c
+++ b/board/dfi/dfi-bt700/dfi-bt700.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <nuvoton_nct6102d.h>
 #include <asm/gpio.h>
 #include <asm/ibmpc.h>
diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c b/board/dhelectronics/dh_imx6/dh_imx6.c
index 8dc4b80872..037be01f8b 100644
--- a/board/dhelectronics/dh_imx6/dh_imx6.c
+++ b/board/dhelectronics/dh_imx6/dh_imx6.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <dm/device-internal.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
diff --git a/board/eets/pdu001/board.c b/board/eets/pdu001/board.c
index 8a3d0ada27..fc4587ed0d 100644
--- a/board/eets/pdu001/board.c
+++ b/board/eets/pdu001/board.c
@@ -12,6 +12,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <spl.h>
 #include <i2c.h>
 #include <watchdog.h>
diff --git a/board/efi/efi-x86_payload/payload.c b/board/efi/efi-x86_payload/payload.c
index 4eeb49a27a..5d4492cdc7 100644
--- a/board/efi/efi-x86_payload/payload.c
+++ b/board/efi/efi-x86_payload/payload.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <usb.h>
 
 int board_early_init_r(void)
diff --git a/board/el/el6x/el6x.c b/board/el/el6x/el6x.c
index 18d69a7da3..9aa71b9941 100644
--- a/board/el/el6x/el6x.c
+++ b/board/el/el6x/el6x.c
@@ -5,6 +5,7 @@
  * Based on other i.MX6 boards
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/embest/mx6boards/mx6boards.c b/board/embest/mx6boards/mx6boards.c
index bcfe1250ad..bf5c020af1 100644
--- a/board/embest/mx6boards/mx6boards.c
+++ b/board/embest/mx6boards/mx6boards.c
@@ -12,6 +12,7 @@
  * Copyright (C) 2013 Jon Nettleton <jon.nettleton@gmail.com>.
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/emulation/qemu-riscv/qemu-riscv.c b/board/emulation/qemu-riscv/qemu-riscv.c
index 37d48d04f2..cbce5ffe6e 100644
--- a/board/emulation/qemu-riscv/qemu-riscv.c
+++ b/board/emulation/qemu-riscv/qemu-riscv.c
@@ -8,6 +8,7 @@
 #include <env.h>
 #include <fdtdec.h>
 #include <spl.h>
+#include <init.h>
 #include <virtio_types.h>
 #include <virtio.h>
 
diff --git a/board/engicam/common/board.c b/board/engicam/common/board.c
index 31ff297b75..e5358b47f3 100644
--- a/board/engicam/common/board.c
+++ b/board/engicam/common/board.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <mmc.h>
 #include <asm/arch/sys_proto.h>
 #include <watchdog.h>
diff --git a/board/freescale/b4860qds/b4860qds.c b/board/freescale/b4860qds/b4860qds.c
index 24efe77b57..45650b4f08 100644
--- a/board/freescale/b4860qds/b4860qds.c
+++ b/board/freescale/b4860qds/b4860qds.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <irq_func.h>
 #include <netdev.h>
 #include <linux/compiler.h>
diff --git a/board/freescale/bsc9132qds/bsc9132qds.c b/board/freescale/bsc9132qds/bsc9132qds.c
index dd9ad90508..ab05d84190 100644
--- a/board/freescale/bsc9132qds/bsc9132qds.c
+++ b/board/freescale/bsc9132qds/bsc9132qds.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/cache.h>
diff --git a/board/freescale/c29xpcie/c29xpcie.c b/board/freescale/c29xpcie/c29xpcie.c
index 6d103be7ff..a9ea986579 100644
--- a/board/freescale/c29xpcie/c29xpcie.c
+++ b/board/freescale/c29xpcie/c29xpcie.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/cache.h>
diff --git a/board/freescale/corenet_ds/corenet_ds.c b/board/freescale/corenet_ds/corenet_ds.c
index 3ce9a76aae..c2fa60e321 100644
--- a/board/freescale/corenet_ds/corenet_ds.c
+++ b/board/freescale/corenet_ds/corenet_ds.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/imx8mq_evk/imx8mq_evk.c b/board/freescale/imx8mq_evk/imx8mq_evk.c
index 1463e6e696..cb39d0f2d6 100644
--- a/board/freescale/imx8mq_evk/imx8mq_evk.c
+++ b/board/freescale/imx8mq_evk/imx8mq_evk.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <malloc.h>
 #include <errno.h>
 #include <asm/io.h>
diff --git a/board/freescale/imx8qm_mek/imx8qm_mek.c b/board/freescale/imx8qm_mek/imx8qm_mek.c
index 76634a3a28..68be0fe0cf 100644
--- a/board/freescale/imx8qm_mek/imx8qm_mek.c
+++ b/board/freescale/imx8qm_mek/imx8qm_mek.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <linux/libfdt.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
diff --git a/board/freescale/imx8qxp_mek/imx8qxp_mek.c b/board/freescale/imx8qxp_mek/imx8qxp_mek.c
index 4ba8314284..671064fae2 100644
--- a/board/freescale/imx8qxp_mek/imx8qxp_mek.c
+++ b/board/freescale/imx8qxp_mek/imx8qxp_mek.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <linux/libfdt.h>
 #include <fsl_esdhc_imx.h>
 #include <asm/io.h>
diff --git a/board/freescale/ls1021aiot/ls1021aiot.c b/board/freescale/ls1021aiot/ls1021aiot.c
index 70992a5ce4..d53b99d112 100644
--- a/board/freescale/ls1021aiot/ls1021aiot.c
+++ b/board/freescale/ls1021aiot/ls1021aiot.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/arch/immap_ls102xa.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/fsl_serdes.h>
diff --git a/board/freescale/ls1021aqds/ls1021aqds.c b/board/freescale/ls1021aqds/ls1021aqds.c
index 2ca2bd9909..03eaf0c79e 100644
--- a/board/freescale/ls1021aqds/ls1021aqds.c
+++ b/board/freescale/ls1021aqds/ls1021aqds.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <i2c.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/immap_ls102xa.h>
 #include <asm/arch/clock.h>
diff --git a/board/freescale/ls1021atsn/ls1021atsn.c b/board/freescale/ls1021atsn/ls1021atsn.c
index 39e825ca49..8039fd55f4 100644
--- a/board/freescale/ls1021atsn/ls1021atsn.c
+++ b/board/freescale/ls1021atsn/ls1021atsn.c
@@ -2,6 +2,7 @@
 /* Copyright 2016-2019 NXP Semiconductors
  */
 #include <common.h>
+#include <init.h>
 #include <asm/arch-ls102xa/ls102xa_soc.h>
 #include <asm/arch/ls102xa_devdis.h>
 #include <asm/arch/immap_ls102xa.h>
diff --git a/board/freescale/ls1021atwr/ls1021atwr.c b/board/freescale/ls1021atwr/ls1021atwr.c
index fcf2ec9788..375cbb99f3 100644
--- a/board/freescale/ls1021atwr/ls1021atwr.c
+++ b/board/freescale/ls1021atwr/ls1021atwr.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <i2c.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/immap_ls102xa.h>
 #include <asm/arch/clock.h>
diff --git a/board/freescale/mpc8313erdb/mpc8313erdb.c b/board/freescale/mpc8313erdb/mpc8313erdb.c
index 72d2d33e0b..55a3529296 100644
--- a/board/freescale/mpc8313erdb/mpc8313erdb.c
+++ b/board/freescale/mpc8313erdb/mpc8313erdb.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #if defined(CONFIG_OF_LIBFDT)
 #include <linux/libfdt.h>
 #endif
diff --git a/board/freescale/mpc832xemds/mpc832xemds.c b/board/freescale/mpc832xemds/mpc832xemds.c
index 61b95c601e..c9f2ac44a6 100644
--- a/board/freescale/mpc832xemds/mpc832xemds.c
+++ b/board/freescale/mpc832xemds/mpc832xemds.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <ioports.h>
 #include <mpc83xx.h>
 #include <i2c.h>
diff --git a/board/freescale/mpc837xemds/mpc837xemds.c b/board/freescale/mpc837xemds/mpc837xemds.c
index 16922087c0..1ae2308e9b 100644
--- a/board/freescale/mpc837xemds/mpc837xemds.c
+++ b/board/freescale/mpc837xemds/mpc837xemds.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <hwconfig.h>
 #include <i2c.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/fsl_mpc83xx_serdes.h>
 #include <spd_sdram.h>
diff --git a/board/freescale/mpc8536ds/mpc8536ds.c b/board/freescale/mpc8536ds/mpc8536ds.c
index 659770e568..e55ee40026 100644
--- a/board/freescale/mpc8536ds/mpc8536ds.c
+++ b/board/freescale/mpc8536ds/mpc8536ds.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/mpc8569mds/mpc8569mds.c b/board/freescale/mpc8569mds/mpc8569mds.c
index 134ed5294a..cf5d8a5244 100644
--- a/board/freescale/mpc8569mds/mpc8569mds.c
+++ b/board/freescale/mpc8569mds/mpc8569mds.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <console.h>
 #include <hwconfig.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/mpc8572ds/mpc8572ds.c b/board/freescale/mpc8572ds/mpc8572ds.c
index 89f4d6c05f..4111d69b4b 100644
--- a/board/freescale/mpc8572ds/mpc8572ds.c
+++ b/board/freescale/mpc8572ds/mpc8572ds.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/mx25pdk/mx25pdk.c b/board/freescale/mx25pdk/mx25pdk.c
index c59f0fb922..6898e9c4d6 100644
--- a/board/freescale/mx25pdk/mx25pdk.c
+++ b/board/freescale/mx25pdk/mx25pdk.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/freescale/mx31pdk/mx31pdk.c b/board/freescale/mx31pdk/mx31pdk.c
index b31a97b5d0..fb57f26357 100644
--- a/board/freescale/mx31pdk/mx31pdk.c
+++ b/board/freescale/mx31pdk/mx31pdk.c
@@ -8,6 +8,7 @@
 
 
 #include <common.h>
+#include <init.h>
 #include <netdev.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/freescale/mx35pdk/mx35pdk.c b/board/freescale/mx35pdk/mx35pdk.c
index aba17a6b82..d0f7f045a5 100644
--- a/board/freescale/mx35pdk/mx35pdk.c
+++ b/board/freescale/mx35pdk/mx35pdk.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <linux/errno.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/freescale/mx51evk/mx51evk.c b/board/freescale/mx51evk/mx51evk.c
index d1bb852f37..3314badf9e 100644
--- a/board/freescale/mx51evk/mx51evk.c
+++ b/board/freescale/mx51evk/mx51evk.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/freescale/mx53evk/mx53evk.c b/board/freescale/mx53evk/mx53evk.c
index 56985c63d7..76a112eaac 100644
--- a/board/freescale/mx53evk/mx53evk.c
+++ b/board/freescale/mx53evk/mx53evk.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/freescale/mx53loco/mx53loco.c b/board/freescale/mx53loco/mx53loco.c
index a177815bb8..381c1ca808 100644
--- a/board/freescale/mx53loco/mx53loco.c
+++ b/board/freescale/mx53loco/mx53loco.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/freescale/mx6sabreauto/mx6sabreauto.c b/board/freescale/mx6sabreauto/mx6sabreauto.c
index dc156efbbc..140f24459d 100644
--- a/board/freescale/mx6sabreauto/mx6sabreauto.c
+++ b/board/freescale/mx6sabreauto/mx6sabreauto.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/freescale/mx6sabresd/mx6sabresd.c b/board/freescale/mx6sabresd/mx6sabresd.c
index b0c0117968..b346ca4ced 100644
--- a/board/freescale/mx6sabresd/mx6sabresd.c
+++ b/board/freescale/mx6sabresd/mx6sabresd.c
@@ -5,6 +5,7 @@
  * Author: Fabio Estevam <fabio.estevam@freescale.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/freescale/mx6sllevk/mx6sllevk.c b/board/freescale/mx6sllevk/mx6sllevk.c
index 83babe18e2..227d178e07 100644
--- a/board/freescale/mx6sllevk/mx6sllevk.c
+++ b/board/freescale/mx6sllevk/mx6sllevk.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2016 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/freescale/mx6sxsabreauto/mx6sxsabreauto.c b/board/freescale/mx6sxsabreauto/mx6sxsabreauto.c
index 15e921aeca..0c7904204f 100644
--- a/board/freescale/mx6sxsabreauto/mx6sxsabreauto.c
+++ b/board/freescale/mx6sxsabreauto/mx6sxsabreauto.c
@@ -5,6 +5,7 @@
  * Author: Ye Li <ye.li@nxp.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/freescale/mx6sxsabresd/mx6sxsabresd.c b/board/freescale/mx6sxsabresd/mx6sxsabresd.c
index 1c10958879..9fff8ffc4c 100644
--- a/board/freescale/mx6sxsabresd/mx6sxsabresd.c
+++ b/board/freescale/mx6sxsabresd/mx6sxsabresd.c
@@ -5,6 +5,7 @@
  * Author: Fabio Estevam <fabio.estevam@freescale.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c b/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c
index c98e98b485..898da34729 100644
--- a/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c
+++ b/board/freescale/mx6ul_14x14_evk/mx6ul_14x14_evk.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2015 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/freescale/mx6ullevk/mx6ullevk.c b/board/freescale/mx6ullevk/mx6ullevk.c
index 20ae011eca..e1eddbff95 100644
--- a/board/freescale/mx6ullevk/mx6ullevk.c
+++ b/board/freescale/mx6ullevk/mx6ullevk.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2016 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/freescale/mx7dsabresd/mx7dsabresd.c b/board/freescale/mx7dsabresd/mx7dsabresd.c
index 86bf030d35..f1120d67e3 100644
--- a/board/freescale/mx7dsabresd/mx7dsabresd.c
+++ b/board/freescale/mx7dsabresd/mx7dsabresd.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2015 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/mx7-pins.h>
diff --git a/board/freescale/p1010rdb/p1010rdb.c b/board/freescale/p1010rdb/p1010rdb.c
index 449df937e6..a086692683 100644
--- a/board/freescale/p1010rdb/p1010rdb.c
+++ b/board/freescale/p1010rdb/p1010rdb.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/cache.h>
diff --git a/board/freescale/p1022ds/p1022ds.c b/board/freescale/p1022ds/p1022ds.c
index 9406e75517..ebf822acb5 100644
--- a/board/freescale/p1022ds/p1022ds.c
+++ b/board/freescale/p1022ds/p1022ds.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/p1023rdb/p1023rdb.c b/board/freescale/p1023rdb/p1023rdb.c
index 7db04043ca..eeb13ccc9b 100644
--- a/board/freescale/p1023rdb/p1023rdb.c
+++ b/board/freescale/p1023rdb/p1023rdb.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/io.h>
 #include <asm/cache.h>
diff --git a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
index 3649f16598..c85243f58b 100644
--- a/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
+++ b/board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <hwconfig.h>
+#include <init.h>
 #include <pci.h>
 #include <i2c.h>
 #include <asm/processor.h>
diff --git a/board/freescale/p1_twr/p1_twr.c b/board/freescale/p1_twr/p1_twr.c
index 01cac181b3..72fe1b4166 100644
--- a/board/freescale/p1_twr/p1_twr.c
+++ b/board/freescale/p1_twr/p1_twr.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <hwconfig.h>
+#include <init.h>
 #include <pci.h>
 #include <i2c.h>
 #include <asm/processor.h>
diff --git a/board/freescale/p2041rdb/p2041rdb.c b/board/freescale/p2041rdb/p2041rdb.c
index baf1506908..78f89fc4cb 100644
--- a/board/freescale/p2041rdb/p2041rdb.c
+++ b/board/freescale/p2041rdb/p2041rdb.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t102xqds/t102xqds.c b/board/freescale/t102xqds/t102xqds.c
index 6c754503d1..85f8517d79 100644
--- a/board/freescale/t102xqds/t102xqds.c
+++ b/board/freescale/t102xqds/t102xqds.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t102xrdb/t102xrdb.c b/board/freescale/t102xrdb/t102xrdb.c
index 793f54d69e..d578a0b1a5 100644
--- a/board/freescale/t102xrdb/t102xrdb.c
+++ b/board/freescale/t102xrdb/t102xrdb.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t1040qds/t1040qds.c b/board/freescale/t1040qds/t1040qds.c
index 55516b9f06..61dedf4c06 100644
--- a/board/freescale/t1040qds/t1040qds.c
+++ b/board/freescale/t1040qds/t1040qds.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t104xrdb/t104xrdb.c b/board/freescale/t104xrdb/t104xrdb.c
index c7a645108f..7dacd0c5f1 100644
--- a/board/freescale/t104xrdb/t104xrdb.c
+++ b/board/freescale/t104xrdb/t104xrdb.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <hwconfig.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t208xqds/t208xqds.c b/board/freescale/t208xqds/t208xqds.c
index 86d6b1defe..6c34db4219 100644
--- a/board/freescale/t208xqds/t208xqds.c
+++ b/board/freescale/t208xqds/t208xqds.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t208xrdb/t208xrdb.c b/board/freescale/t208xrdb/t208xrdb.c
index d03d48bcfa..3ac61f009c 100644
--- a/board/freescale/t208xrdb/t208xrdb.c
+++ b/board/freescale/t208xrdb/t208xrdb.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t4qds/t4240emu.c b/board/freescale/t4qds/t4240emu.c
index d9cb967c22..da050bf800 100644
--- a/board/freescale/t4qds/t4240emu.c
+++ b/board/freescale/t4qds/t4240emu.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t4qds/t4240qds.c b/board/freescale/t4qds/t4240qds.c
index d73ddf5921..11f7489fa2 100644
--- a/board/freescale/t4qds/t4240qds.c
+++ b/board/freescale/t4qds/t4240qds.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <irq_func.h>
 #include <netdev.h>
 #include <linux/compiler.h>
diff --git a/board/freescale/t4rdb/t4240rdb.c b/board/freescale/t4rdb/t4240rdb.c
index 0c95607762..48aa6b6822 100644
--- a/board/freescale/t4rdb/t4240rdb.c
+++ b/board/freescale/t4rdb/t4240rdb.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/gardena/smart-gateway-at91sam/board.c b/board/gardena/smart-gateway-at91sam/board.c
index 3e2da0d6f8..45c947fcbb 100644
--- a/board/gardena/smart-gateway-at91sam/board.c
+++ b/board/gardena/smart-gateway-at91sam/board.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <debug_uart.h>
 #include <env.h>
+#include <init.h>
 #include <led.h>
 #include <asm/arch/at91_common.h>
 #include <asm/arch/clk.h>
diff --git a/board/gardena/smart-gateway-mt7688/board.c b/board/gardena/smart-gateway-mt7688/board.c
index 1a59839569..5c3e84b0b4 100644
--- a/board/gardena/smart-gateway-mt7688/board.c
+++ b/board/gardena/smart-gateway-mt7688/board.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <env.h>
 #include <env_internal.h>
+#include <init.h>
 #include <led.h>
 #include <net.h>
 #include <spi.h>
diff --git a/board/gdsys/a38x/controlcenterdc.c b/board/gdsys/a38x/controlcenterdc.c
index 9e448fcd10..4eb7d76660 100644
--- a/board/gdsys/a38x/controlcenterdc.c
+++ b/board/gdsys/a38x/controlcenterdc.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <miiphy.h>
 #include <tpm-v1.h>
 #include <asm/io.h>
diff --git a/board/gdsys/mpc8308/gazerbeam.c b/board/gdsys/mpc8308/gazerbeam.c
index ddd6ee8953..8c9636d292 100644
--- a/board/gdsys/mpc8308/gazerbeam.c
+++ b/board/gdsys/mpc8308/gazerbeam.c
@@ -11,6 +11,7 @@
 #include <env.h>
 #include <fdt_support.h>
 #include <fsl_esdhc.h>
+#include <init.h>
 #include <miiphy.h>
 #include <misc.h>
 #include <tpm-v1.h>
diff --git a/board/gdsys/mpc8308/mpc8308.c b/board/gdsys/mpc8308/mpc8308.c
index ae77fc2fd1..d4108457d9 100644
--- a/board/gdsys/mpc8308/mpc8308.c
+++ b/board/gdsys/mpc8308/mpc8308.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <asm/io.h>
 #include <asm/global_data.h>
diff --git a/board/gdsys/p1022/controlcenterd.c b/board/gdsys/p1022/controlcenterd.c
index 6eb3d6c5d0..8e868165ed 100644
--- a/board/gdsys/p1022/controlcenterd.c
+++ b/board/gdsys/p1022/controlcenterd.c
@@ -24,6 +24,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/ge/bx50v3/bx50v3.c b/board/ge/bx50v3/bx50v3.c
index 917ecc4c18..2f6747b70a 100644
--- a/board/ge/bx50v3/bx50v3.c
+++ b/board/ge/bx50v3/bx50v3.c
@@ -5,6 +5,7 @@
  * Copyright 2012 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/ge/mx53ppd/mx53ppd.c b/board/ge/mx53ppd/mx53ppd.c
index 5448567298..51b5d8996d 100644
--- a/board/ge/mx53ppd/mx53ppd.c
+++ b/board/ge/mx53ppd/mx53ppd.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/grinn/chiliboard/board.c b/board/grinn/chiliboard/board.c
index c6d53600fa..7f0de5e42b 100644
--- a/board/grinn/chiliboard/board.c
+++ b/board/grinn/chiliboard/board.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/arch/chilisom.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/grinn/liteboard/board.c b/board/grinn/liteboard/board.c
index 151041a789..5d71b639df 100644
--- a/board/grinn/liteboard/board.c
+++ b/board/grinn/liteboard/board.c
@@ -5,6 +5,7 @@
  */
 
 #include <command.h>
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/intel/edison/edison.c b/board/intel/edison/edison.c
index f56b5b1aff..652f975515 100644
--- a/board/intel/edison/edison.c
+++ b/board/intel/edison/edison.c
@@ -5,6 +5,7 @@
 #include <common.h>
 #include <dwc3-uboot.h>
 #include <env.h>
+#include <init.h>
 #include <mmc.h>
 #include <u-boot/md5.h>
 #include <usb.h>
diff --git a/board/intel/slimbootloader/slimbootloader.c b/board/intel/slimbootloader/slimbootloader.c
index f50eeb823f..b20ddf0c68 100644
--- a/board/intel/slimbootloader/slimbootloader.c
+++ b/board/intel/slimbootloader/slimbootloader.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 int board_early_init_r(void)
 {
diff --git a/board/isee/igep003x/board.c b/board/isee/igep003x/board.c
index d59121296e..bc9fdcd1e6 100644
--- a/board/isee/igep003x/board.c
+++ b/board/isee/igep003x/board.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
diff --git a/board/k+p/kp_imx53/kp_imx53.c b/board/k+p/kp_imx53/kp_imx53.c
index 84cddd4894..2f57310e27 100644
--- a/board/k+p/kp_imx53/kp_imx53.c
+++ b/board/k+p/kp_imx53/kp_imx53.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
diff --git a/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c b/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c
index 22ae94e99f..e60d556b30 100644
--- a/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c
+++ b/board/k+p/kp_imx6q_tpc/kp_imx6q_tpc.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/keymile/km83xx/km83xx.c b/board/keymile/km83xx/km83xx.c
index 8846b64f7d..abbf985eb2 100644
--- a/board/keymile/km83xx/km83xx.c
+++ b/board/keymile/km83xx/km83xx.c
@@ -15,6 +15,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <ioports.h>
 #include <mpc83xx.h>
 #include <i2c.h>
diff --git a/board/keymile/km_arm/km_arm.c b/board/keymile/km_arm/km_arm.c
index 922cc621f7..7f83ec180e 100644
--- a/board/keymile/km_arm/km_arm.c
+++ b/board/keymile/km_arm/km_arm.c
@@ -14,6 +14,7 @@
 #include <common.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <nand.h>
 #include <netdev.h>
 #include <miiphy.h>
diff --git a/board/keymile/kmp204x/kmp204x.c b/board/keymile/kmp204x/kmp204x.c
index 4d1e38aa3a..ae9653db78 100644
--- a/board/keymile/kmp204x/kmp204x.c
+++ b/board/keymile/kmp204x/kmp204x.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/kosagi/novena/novena.c b/board/kosagi/novena/novena.c
index b7b747d196..e4f0e81004 100644
--- a/board/kosagi/novena/novena.c
+++ b/board/kosagi/novena/novena.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <dm/device-internal.h>
 #include <ahci.h>
 #include <env.h>
diff --git a/board/kosagi/novena/novena_spl.c b/board/kosagi/novena/novena_spl.c
index 00210ab254..7521cacaf9 100644
--- a/board/kosagi/novena/novena_spl.c
+++ b/board/kosagi/novena/novena_spl.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
diff --git a/board/laird/wb50n/wb50n.c b/board/laird/wb50n/wb50n.c
index 13563abb49..8146d410b9 100644
--- a/board/laird/wb50n/wb50n.c
+++ b/board/laird/wb50n/wb50n.c
@@ -3,6 +3,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/at91_sfr.h>
 #include <asm/arch/sama5d3_smc.h>
diff --git a/board/liebherr/mccmon6/mccmon6.c b/board/liebherr/mccmon6/mccmon6.c
index c7af73ff71..71f75d877d 100644
--- a/board/liebherr/mccmon6/mccmon6.c
+++ b/board/liebherr/mccmon6/mccmon6.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <serial.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
diff --git a/board/logicpd/imx6/imx6logic.c b/board/logicpd/imx6/imx6logic.c
index 0ea24c0870..5b6584720b 100644
--- a/board/logicpd/imx6/imx6logic.c
+++ b/board/logicpd/imx6/imx6logic.c
@@ -10,6 +10,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <miiphy.h>
 #include <input.h>
 #include <mmc.h>
diff --git a/board/logicpd/omap3som/omap3logic.c b/board/logicpd/omap3som/omap3logic.c
index 2f93248391..21d8a21010 100644
--- a/board/logicpd/omap3som/omap3logic.c
+++ b/board/logicpd/omap3som/omap3logic.c
@@ -12,6 +12,7 @@
  */
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <ns16550.h>
 #include <netdev.h>
 #include <flash.h>
diff --git a/board/mscc/jr2/jr2.c b/board/mscc/jr2/jr2.c
index 6e5ef4c97f..067907ba52 100644
--- a/board/mscc/jr2/jr2.c
+++ b/board/mscc/jr2/jr2.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <led.h>
 #include <miiphy.h>
diff --git a/board/mscc/luton/luton.c b/board/mscc/luton/luton.c
index 114f7fd9d9..e614058d10 100644
--- a/board/mscc/luton/luton.c
+++ b/board/mscc/luton/luton.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <led.h>
 #include <miiphy.h>
diff --git a/board/mscc/ocelot/ocelot.c b/board/mscc/ocelot/ocelot.c
index 91d03951db..ad227a4169 100644
--- a/board/mscc/ocelot/ocelot.c
+++ b/board/mscc/ocelot/ocelot.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/addrspace.h>
 #include <asm/types.h>
diff --git a/board/mscc/serval/serval.c b/board/mscc/serval/serval.c
index da7f55620d..6c6dbf2bff 100644
--- a/board/mscc/serval/serval.c
+++ b/board/mscc/serval/serval.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <led.h>
 #include <miiphy.h>
diff --git a/board/mscc/servalt/servalt.c b/board/mscc/servalt/servalt.c
index 566f9765c2..71891f6fe3 100644
--- a/board/mscc/servalt/servalt.c
+++ b/board/mscc/servalt/servalt.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <led.h>
 
diff --git a/board/phytec/pcm052/pcm052.c b/board/phytec/pcm052/pcm052.c
index b52432e653..c40dc052b5 100644
--- a/board/phytec/pcm052/pcm052.c
+++ b/board/phytec/pcm052/pcm052.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux-vf610.h>
diff --git a/board/phytec/pcm058/pcm058.c b/board/phytec/pcm058/pcm058.c
index ac5e3a2328..820b5fde14 100644
--- a/board/phytec/pcm058/pcm058.c
+++ b/board/phytec/pcm058/pcm058.c
@@ -10,6 +10,7 @@
  * same pins (SD4)
  */
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/phytec/pfla02/pfla02.c b/board/phytec/pfla02/pfla02.c
index 57de1f8e55..bfd0deb2aa 100644
--- a/board/phytec/pfla02/pfla02.c
+++ b/board/phytec/pfla02/pfla02.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/phytec/phycore_rk3288/phycore-rk3288.c b/board/phytec/phycore_rk3288/phycore-rk3288.c
index 5fcbf65b7c..dac59cd55d 100644
--- a/board/phytec/phycore_rk3288/phycore-rk3288.c
+++ b/board/phytec/phycore_rk3288/phycore-rk3288.c
@@ -4,6 +4,7 @@
  * Author: Wadim Egorov <w.egorov@phytec.de>
  */
 
+#include <init.h>
 #include <asm/io.h>
 #include <common.h>
 #include <dm.h>
diff --git a/board/qualcomm/dragonboard410c/dragonboard410c.c b/board/qualcomm/dragonboard410c/dragonboard410c.c
index d7f0f93fb1..254af7907a 100644
--- a/board/qualcomm/dragonboard410c/dragonboard410c.c
+++ b/board/qualcomm/dragonboard410c/dragonboard410c.c
@@ -8,6 +8,7 @@
 #include <common.h>
 #include <dm.h>
 #include <env.h>
+#include <init.h>
 #include <usb.h>
 #include <asm/gpio.h>
 #include <fdt_support.h>
diff --git a/board/renesas/r2dplus/r2dplus.c b/board/renesas/r2dplus/r2dplus.c
index 6eff98706f..f2da4686c3 100644
--- a/board/renesas/r2dplus/r2dplus.c
+++ b/board/renesas/r2dplus/r2dplus.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <ide.h>
+#include <init.h>
 #include <netdev.h>
 #include <asm/processor.h>
 #include <asm/io.h>
diff --git a/board/renesas/sh7752evb/sh7752evb.c b/board/renesas/sh7752evb/sh7752evb.c
index d0b850f35d..d675f65c12 100644
--- a/board/renesas/sh7752evb/sh7752evb.c
+++ b/board/renesas/sh7752evb/sh7752evb.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <malloc.h>
 #include <asm/processor.h>
 #include <asm/io.h>
diff --git a/board/renesas/sh7753evb/sh7753evb.c b/board/renesas/sh7753evb/sh7753evb.c
index e1bed7dcc3..43e13829f3 100644
--- a/board/renesas/sh7753evb/sh7753evb.c
+++ b/board/renesas/sh7753evb/sh7753evb.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <malloc.h>
 #include <asm/processor.h>
 #include <asm/io.h>
diff --git a/board/renesas/sh7757lcr/sh7757lcr.c b/board/renesas/sh7757lcr/sh7757lcr.c
index d2671202e9..1d7ed9977e 100644
--- a/board/renesas/sh7757lcr/sh7757lcr.c
+++ b/board/renesas/sh7757lcr/sh7757lcr.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <malloc.h>
 #include <asm/processor.h>
 #include <asm/io.h>
diff --git a/board/rockchip/kylin_rk3036/kylin_rk3036.c b/board/rockchip/kylin_rk3036/kylin_rk3036.c
index 2faeab9baf..c5e28df258 100644
--- a/board/rockchip/kylin_rk3036/kylin_rk3036.c
+++ b/board/rockchip/kylin_rk3036/kylin_rk3036.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch-rockchip/uart.h>
 #include <asm/arch-rockchip/sdram_rk3036.h>
diff --git a/board/rockchip/tinker_rk3288/tinker-rk3288.c b/board/rockchip/tinker_rk3288/tinker-rk3288.c
index 6c76c3c25c..93e9d2f465 100644
--- a/board/rockchip/tinker_rk3288/tinker-rk3288.c
+++ b/board/rockchip/tinker_rk3288/tinker-rk3288.c
@@ -7,6 +7,7 @@
 #include <dm.h>
 #include <env.h>
 #include <i2c_eeprom.h>
+#include <init.h>
 #include <netdev.h>
 
 static int get_ethaddr_from_eeprom(u8 *addr)
diff --git a/board/samsung/common/board.c b/board/samsung/common/board.c
index 9adbd1e2cf..ee2fc7971e 100644
--- a/board/samsung/common/board.c
+++ b/board/samsung/common/board.c
@@ -8,6 +8,7 @@
 #include <cros_ec.h>
 #include <errno.h>
 #include <fdtdec.h>
+#include <init.h>
 #include <spi.h>
 #include <tmu.h>
 #include <netdev.h>
diff --git a/board/sandbox/sandbox.c b/board/sandbox/sandbox.c
index 68e8071d26..b9c9227940 100644
--- a/board/sandbox/sandbox.c
+++ b/board/sandbox/sandbox.c
@@ -7,6 +7,7 @@
 #include <cpu_legacy.h>
 #include <cros_ec.h>
 #include <dm.h>
+#include <init.h>
 #include <led.h>
 #include <os.h>
 #include <asm/test.h>
diff --git a/board/siemens/draco/board.c b/board/siemens/draco/board.c
index a6840b895b..94bd71ad09 100644
--- a/board/siemens/draco/board.c
+++ b/board/siemens/draco/board.c
@@ -15,6 +15,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/siemens/pxm2/board.c b/board/siemens/pxm2/board.c
index 30f0902701..b5a10ebf8b 100644
--- a/board/siemens/pxm2/board.c
+++ b/board/siemens/pxm2/board.c
@@ -15,6 +15,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
 #include <asm/arch/hardware.h>
diff --git a/board/siemens/rut/board.c b/board/siemens/rut/board.c
index 539ecef22c..d7d9738a6d 100644
--- a/board/siemens/rut/board.c
+++ b/board/siemens/rut/board.c
@@ -13,6 +13,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <spi.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
diff --git a/board/softing/vining_2000/vining_2000.c b/board/softing/vining_2000/vining_2000.c
index 51985b91c2..78692e9240 100644
--- a/board/softing/vining_2000/vining_2000.c
+++ b/board/softing/vining_2000/vining_2000.c
@@ -6,6 +6,7 @@
  * Author: Christoph Fritz <chf.fritz@googlemail.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/softing/vining_fpga/socfpga.c b/board/softing/vining_fpga/socfpga.c
index e42d9194ad..d70c22f48f 100644
--- a/board/softing/vining_fpga/socfpga.c
+++ b/board/softing/vining_fpga/socfpga.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <status_led.h>
 #include <asm/arch/reset_manager.h>
 #include <asm/io.h>
diff --git a/board/solidrun/mx6cuboxi/mx6cuboxi.c b/board/solidrun/mx6cuboxi/mx6cuboxi.c
index f82fb0786a..d6e0c83e0d 100644
--- a/board/solidrun/mx6cuboxi/mx6cuboxi.c
+++ b/board/solidrun/mx6cuboxi/mx6cuboxi.c
@@ -13,6 +13,7 @@
  * Ported to SolidRun microSOM by Rabeeh Khoury <rabeeh@solid-run.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/spear/x600/x600.c b/board/spear/x600/x600.c
index d6508ee44d..e1232edd14 100644
--- a/board/spear/x600/x600.c
+++ b/board/spear/x600/x600.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <micrel.h>
 #include <nand.h>
 #include <netdev.h>
diff --git a/board/st/stm32f746-disco/stm32f746-disco.c b/board/st/stm32f746-disco/stm32f746-disco.c
index 5be60af18c..df907426d2 100644
--- a/board/st/stm32f746-disco/stm32f746-disco.c
+++ b/board/st/stm32f746-disco/stm32f746-disco.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <lcd.h>
 #include <miiphy.h>
 #include <phy_interface.h>
diff --git a/board/st/stm32h743-disco/stm32h743-disco.c b/board/st/stm32h743-disco/stm32h743-disco.c
index 3ab9518804..6aab2e243e 100644
--- a/board/st/stm32h743-disco/stm32h743-disco.c
+++ b/board/st/stm32h743-disco/stm32h743-disco.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/st/stm32h743-eval/stm32h743-eval.c b/board/st/stm32h743-eval/stm32h743-eval.c
index 3ab9518804..6aab2e243e 100644
--- a/board/st/stm32h743-eval/stm32h743-eval.c
+++ b/board/st/stm32h743-eval/stm32h743-eval.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index 126af30173..8362f0d659 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -13,6 +13,7 @@
 #include <g_dnl.h>
 #include <generic-phy.h>
 #include <i2c.h>
+#include <init.h>
 #include <led.h>
 #include <misc.h>
 #include <mtd.h>
diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c
index a79458290c..bf7cea001e 100644
--- a/board/synopsys/hsdk/hsdk.c
+++ b/board/synopsys/hsdk/hsdk.c
@@ -8,6 +8,7 @@
 #include <config.h>
 #include <cpu_legacy.h>
 #include <env.h>
+#include <init.h>
 #include <irq_func.h>
 #include <linux/printk.h>
 #include <linux/kernel.h>
diff --git a/board/syteco/zmx25/zmx25.c b/board/syteco/zmx25/zmx25.c
index f64fadde03..2e41cd8689 100644
--- a/board/syteco/zmx25/zmx25.c
+++ b/board/syteco/zmx25/zmx25.c
@@ -15,6 +15,7 @@
  */
 #include <common.h>
 #include <cpu_legacy.h>
+#include <init.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/tcl/sl50/board.c b/board/tcl/sl50/board.c
index a958827507..7537fa213a 100644
--- a/board/tcl/sl50/board.c
+++ b/board/tcl/sl50/board.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <serial.h>
 #include <spl.h>
 #include <asm/arch/cpu.h>
diff --git a/board/technexion/pico-imx7d/pico-imx7d.c b/board/technexion/pico-imx7d/pico-imx7d.c
index bfa3c3c87f..bcfc7d361e 100644
--- a/board/technexion/pico-imx7d/pico-imx7d.c
+++ b/board/technexion/pico-imx7d/pico-imx7d.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2017 NXP Semiconductors
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/theadorable/theadorable.c b/board/theadorable/theadorable.c
index 2958d5ff88..621e26905b 100644
--- a/board/theadorable/theadorable.c
+++ b/board/theadorable/theadorable.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <console.h>
 #include <i2c.h>
+#include <init.h>
 #include <pci.h>
 #if !defined(CONFIG_SPL_BUILD)
 #include <bootcount.h>
diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
index 499c872227..46b95c7865 100644
--- a/board/ti/am335x/board.c
+++ b/board/ti/am335x/board.c
@@ -11,6 +11,7 @@
 #include <dm.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <spl.h>
 #include <serial.h>
 #include <asm/arch/cpu.h>
diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
index f5ecf871bc..9353830969 100644
--- a/board/ti/am43xx/board.c
+++ b/board/ti/am43xx/board.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <i2c.h>
+#include <init.h>
 #include <linux/errno.h>
 #include <spl.h>
 #include <usb.h>
diff --git a/board/ti/am57xx/board.c b/board/ti/am57xx/board.c
index 8d1f38971c..c755821b74 100644
--- a/board/ti/am57xx/board.c
+++ b/board/ti/am57xx/board.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <palmas.h>
 #include <sata.h>
 #include <serial.h>
diff --git a/board/ti/dra7xx/evm.c b/board/ti/dra7xx/evm.c
index ea8523541f..04e9b894d5 100644
--- a/board/ti/dra7xx/evm.c
+++ b/board/ti/dra7xx/evm.c
@@ -11,6 +11,7 @@
  */
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <palmas.h>
 #include <sata.h>
 #include <serial.h>
diff --git a/board/ti/ks2_evm/board_k2g.c b/board/ti/ks2_evm/board_k2g.c
index 4ff9a44b37..a0fd03a39f 100644
--- a/board/ti/ks2_evm/board_k2g.c
+++ b/board/ti/ks2_evm/board_k2g.c
@@ -7,6 +7,7 @@
  */
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/ti-common/keystone_net.h>
 #include <asm/arch/psc_defs.h>
diff --git a/board/toradex/apalis-imx8/apalis-imx8.c b/board/toradex/apalis-imx8/apalis-imx8.c
index af48b56095..3e5174ef8a 100644
--- a/board/toradex/apalis-imx8/apalis-imx8.c
+++ b/board/toradex/apalis-imx8/apalis-imx8.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 #include <asm/arch/clock.h>
 #include <asm/arch/imx8-pins.h>
diff --git a/board/toradex/apalis_imx6/apalis_imx6.c b/board/toradex/apalis_imx6/apalis_imx6.c
index 51505b63e1..d4d6eed11a 100644
--- a/board/toradex/apalis_imx6/apalis_imx6.c
+++ b/board/toradex/apalis_imx6/apalis_imx6.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 
 #include <ahci.h>
 #include <asm/arch/clock.h>
diff --git a/board/toradex/colibri-imx6ull/colibri-imx6ull.c b/board/toradex/colibri-imx6ull/colibri-imx6ull.c
index d1ae463941..7dfe8aec88 100644
--- a/board/toradex/colibri-imx6ull/colibri-imx6ull.c
+++ b/board/toradex/colibri-imx6ull/colibri-imx6ull.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2018-2019 Toradex AG
  */
 #include <common.h>
+#include <init.h>
 
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
diff --git a/board/toradex/colibri-imx8x/colibri-imx8x.c b/board/toradex/colibri-imx8x/colibri-imx8x.c
index eae3c591a1..adeee67643 100644
--- a/board/toradex/colibri-imx8x/colibri-imx8x.c
+++ b/board/toradex/colibri-imx8x/colibri-imx8x.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 #include <asm/arch/clock.h>
 #include <asm/arch/imx8-pins.h>
diff --git a/board/toradex/colibri_imx6/colibri_imx6.c b/board/toradex/colibri_imx6/colibri_imx6.c
index ad40b589c1..1fd0f2c122 100644
--- a/board/toradex/colibri_imx6/colibri_imx6.c
+++ b/board/toradex/colibri_imx6/colibri_imx6.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <dm.h>
 #include <env.h>
+#include <init.h>
 
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
diff --git a/board/toradex/colibri_vf/colibri_vf.c b/board/toradex/colibri_vf/colibri_vf.c
index 04d8ffd1e6..92c5dbfc5a 100644
--- a/board/toradex/colibri_vf/colibri_vf.c
+++ b/board/toradex/colibri_vf/colibri_vf.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
diff --git a/board/tqc/tqma6/tqma6.c b/board/tqc/tqma6/tqma6.c
index 5b20afd488..c8ddc2c1f8 100644
--- a/board/tqc/tqma6/tqma6.c
+++ b/board/tqc/tqma6/tqma6.c
@@ -7,6 +7,7 @@
  * Author: Markus Niebel <markus.niebel@tq-group.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/mx6-pins.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/tqc/tqma6/tqma6_mba6.c b/board/tqc/tqma6/tqma6_mba6.c
index 8a2431edab..154ea0e925 100644
--- a/board/tqc/tqma6/tqma6_mba6.c
+++ b/board/tqc/tqma6/tqma6_mba6.c
@@ -7,6 +7,7 @@
  * Author: Markus Niebel <markus.niebel@tq-group.com>
  */
 
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/mx6-pins.h>
diff --git a/board/tqc/tqma6/tqma6_wru4.c b/board/tqc/tqma6/tqma6_wru4.c
index 99196ad685..3a5957f760 100644
--- a/board/tqc/tqma6/tqma6_wru4.c
+++ b/board/tqc/tqma6/tqma6_wru4.c
@@ -9,6 +9,7 @@
  * Copyright (C) 2015 Stefan Roese <sr@denx.de>
  */
 
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/mx6-pins.h>
diff --git a/board/udoo/neo/neo.c b/board/udoo/neo/neo.c
index 5c468a6a97..2ba98c7b52 100644
--- a/board/udoo/neo/neo.c
+++ b/board/udoo/neo/neo.c
@@ -8,6 +8,7 @@
  * Author: Francesco Montefoschi <francesco.monte@gmail.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/udoo/udoo.c b/board/udoo/udoo.c
index f2c2bf47b0..2a4e790d88 100644
--- a/board/udoo/udoo.c
+++ b/board/udoo/udoo.c
@@ -5,6 +5,7 @@
  * Author: Fabio Estevam <fabio.estevam@freescale.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/varisys/cyrus/cyrus.c b/board/varisys/cyrus/cyrus.c
index fa02fefefa..0515ebbad2 100644
--- a/board/varisys/cyrus/cyrus.c
+++ b/board/varisys/cyrus/cyrus.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <command.h>
 #include <env.h>
+#include <init.h>
 #include <netdev.h>
 #include <linux/compiler.h>
 #include <asm/mmu.h>
diff --git a/board/vscom/baltos/board.c b/board/vscom/baltos/board.c
index 588f6db172..02ea1c0533 100644
--- a/board/vscom/baltos/board.c
+++ b/board/vscom/baltos/board.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <env.h>
 #include <errno.h>
+#include <init.h>
 #include <serial.h>
 #include <linux/libfdt.h>
 #include <spl.h>
diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index 11acbad78b..6c1e4ef27d 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -6,6 +6,7 @@
  * Author: Fabio Estevam <fabio.estevam@freescale.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/crm_regs.h>
 #include <asm/arch/iomux.h>
diff --git a/board/warp/warp.c b/board/warp/warp.c
index a44a5789e4..f7bff5334d 100644
--- a/board/warp/warp.c
+++ b/board/warp/warp.c
@@ -7,6 +7,7 @@
  * Author: Otavio Salvador <otavio@ossystems.com.br>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
diff --git a/board/warp7/warp7.c b/board/warp7/warp7.c
index c423e049cb..9efc62f2fb 100644
--- a/board/warp7/warp7.c
+++ b/board/warp7/warp7.c
@@ -4,6 +4,7 @@
  * Author: Fabio Estevam <fabio.estevam@nxp.com>
  */
 
+#include <init.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/mx7-pins.h>
diff --git a/board/work-microwave/work_92105/work_92105.c b/board/work-microwave/work_92105/work_92105.c
index 3f23af9ed4..5cc2566e2a 100644
--- a/board/work-microwave/work_92105/work_92105.c
+++ b/board/work-microwave/work_92105/work_92105.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/io.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/cpu.h>
diff --git a/board/xes/xpedite517x/xpedite517x.c b/board/xes/xpedite517x/xpedite517x.c
index 0d8fba851d..4164493277 100644
--- a/board/xes/xpedite517x/xpedite517x.c
+++ b/board/xes/xpedite517x/xpedite517x.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <fsl_ddr_sdram.h>
 #include <asm/mmu.h>
diff --git a/board/xes/xpedite520x/xpedite520x.c b/board/xes/xpedite520x/xpedite520x.c
index 8daa18e97c..5a4a36cad1 100644
--- a/board/xes/xpedite520x/xpedite520x.c
+++ b/board/xes/xpedite520x/xpedite520x.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/immap_85xx.h>
diff --git a/board/xes/xpedite537x/xpedite537x.c b/board/xes/xpedite537x/xpedite537x.c
index 8776a02302..4842096c24 100644
--- a/board/xes/xpedite537x/xpedite537x.c
+++ b/board/xes/xpedite537x/xpedite537x.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
diff --git a/board/xes/xpedite550x/xpedite550x.c b/board/xes/xpedite550x/xpedite550x.c
index 378e5b67ff..6ee70d6d29 100644
--- a/board/xes/xpedite550x/xpedite550x.c
+++ b/board/xes/xpedite550x/xpedite550x.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
 #include <asm/immap_85xx.h>
diff --git a/board/xilinx/microblaze-generic/microblaze-generic.c b/board/xilinx/microblaze-generic/microblaze-generic.c
index 7e784d1078..0e33f6af0b 100644
--- a/board/xilinx/microblaze-generic/microblaze-generic.c
+++ b/board/xilinx/microblaze-generic/microblaze-generic.c
@@ -12,6 +12,7 @@
 
 #include <common.h>
 #include <config.h>
+#include <init.h>
 #include <dm/lists.h>
 #include <fdtdec.h>
 #include <linux/sizes.h>
diff --git a/board/xilinx/versal/board.c b/board/xilinx/versal/board.c
index 75056aa3d9..23bb6b9623 100644
--- a/board/xilinx/versal/board.c
+++ b/board/xilinx/versal/board.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <fdtdec.h>
+#include <init.h>
 #include <malloc.h>
 #include <time.h>
 #include <asm/io.h>
diff --git a/board/xilinx/zynq/board.c b/board/xilinx/zynq/board.c
index 8a216ed619..cffabe825a 100644
--- a/board/xilinx/zynq/board.c
+++ b/board/xilinx/zynq/board.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <dm/uclass.h>
 #include <env.h>
 #include <fdtdec.h>
diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
index 104c81b06f..4f41511aa1 100644
--- a/board/xilinx/zynqmp/zynqmp.c
+++ b/board/xilinx/zynqmp/zynqmp.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <cpu_legacy.h>
 #include <env.h>
+#include <init.h>
 #include <sata.h>
 #include <ahci.h>
 #include <scsi.h>
diff --git a/include/common.h b/include/common.h
index 9bdd1cf85c..3001296ff2 100644
--- a/include/common.h
+++ b/include/common.h
@@ -137,13 +137,6 @@ int  eeprom_write (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned c
 # define CONFIG_SYS_DEF_EEPROM_ADDR CONFIG_SYS_I2C_EEPROM_ADDR
 #endif
 
-/* $(BOARD)/$(BOARD).c */
-int board_early_init_f (void);
-int board_fix_fdt (void *rw_fdt_blob); /* manipulate the U-Boot fdt before its relocation */
-int board_late_init (void);
-int board_postclk_init (void); /* after clocks/timebase, before env/serial */
-int board_early_init_r (void);
-
 #if defined(CONFIG_SYS_DRAM_TEST)
 int testdram(void);
 #endif /* CONFIG_SYS_DRAM_TEST */
diff --git a/include/init.h b/include/init.h
index 6076283d2c..e506cd30dd 100644
--- a/include/init.h
+++ b/include/init.h
@@ -197,6 +197,14 @@ int show_board_info(void);
  */
 ulong board_get_usable_ram_top(ulong total_size);
 
+int board_early_init_f(void);
+
+/* manipulate the U-Boot fdt before its relocation */
+int board_fix_fdt(void *rw_fdt_blob);
+int board_late_init(void);
+int board_postclk_init(void); /* after clocks/timebase, before env/serial */
+int board_early_init_r(void);
+
 #endif	/* __ASSEMBLY__ */
 /* Put only stuff here that the assembler can digest */
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 39/42] common: Move pci_init_board() out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (37 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 38/42] common: Move some board functions " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 40/42] common: Move trap_init() " Simon Glass
                   ` (2 subsequent siblings)
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This function can be dropped when all boards use driver model for PCI. For
now, move it into init.h with a comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 board/armltd/integrator/pci.c               | 1 +
 board/cavium/thunderx/thunderx.c            | 1 +
 board/esd/vme8349/pci.c                     | 1 +
 board/freescale/b4860qds/pci.c              | 1 +
 board/freescale/common/p_corenet/pci.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/mpc8315erdb/mpc8315erdb.c   | 1 +
 board/freescale/mpc8323erdb/mpc8323erdb.c   | 1 +
 board/freescale/mpc832xemds/pci.c           | 1 +
 board/freescale/mpc8349emds/pci.c           | 1 +
 board/freescale/mpc8349itx/pci.c            | 1 +
 board/freescale/mpc837xemds/pci.c           | 1 +
 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/mpc8568mds.c     | 1 +
 board/freescale/mpc8610hpcd/mpc8610hpcd.c   | 1 +
 board/freescale/mpc8641hpcn/mpc8641hpcn.c   | 1 +
 board/freescale/qemu-ppce500/qemu-ppce500.c | 1 +
 board/freescale/t102xqds/pci.c              | 1 +
 board/freescale/t102xrdb/pci.c              | 1 +
 board/freescale/t1040qds/pci.c              | 1 +
 board/freescale/t104xrdb/pci.c              | 1 +
 board/freescale/t208xqds/pci.c              | 1 +
 board/freescale/t208xrdb/pci.c              | 1 +
 board/freescale/t4qds/pci.c                 | 1 +
 board/freescale/t4rdb/pci.c                 | 1 +
 board/gdsys/mpc8308/hrcon.c                 | 1 +
 board/gdsys/mpc8308/strider.c               | 1 +
 board/imgtec/malta/malta.c                  | 1 +
 board/keymile/kmp204x/pci.c                 | 1 +
 board/mpc8308_p1m/mpc8308_p1m.c             | 1 +
 board/renesas/r7780mp/r7780mp.c             | 1 +
 board/sbc8349/pci.c                         | 1 +
 board/sbc8548/sbc8548.c                     | 1 +
 board/sbc8641d/sbc8641d.c                   | 1 +
 board/tqc/tqm834x/pci.c                     | 1 +
 board/varisys/cyrus/pci.c                   | 1 +
 board/ve8313/ve8313.c                       | 1 +
 board/xes/common/fsl_8xxx_pci.c             | 1 +
 drivers/pci/pci.c                           | 1 +
 drivers/pci/pcie_imx.c                      | 1 +
 include/common.h                            | 2 --
 include/init.h                              | 3 +++
 49 files changed, 50 insertions(+), 2 deletions(-)

diff --git a/board/armltd/integrator/pci.c b/board/armltd/integrator/pci.c
index 5e57f7f4c9..c189d23eec 100644
--- a/board/armltd/integrator/pci.c
+++ b/board/armltd/integrator/pci.c
@@ -20,6 +20,7 @@
  * Linus Walleij <linus.walleij@linaro.org>
  */
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/io.h>
 #include "integrator-sc.h"
diff --git a/board/cavium/thunderx/thunderx.c b/board/cavium/thunderx/thunderx.c
index cf55b633c3..940455de5b 100644
--- a/board/cavium/thunderx/thunderx.c
+++ b/board/cavium/thunderx/thunderx.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <init.h>
 #include <malloc.h>
 #include <errno.h>
 #include <linux/compiler.h>
diff --git a/board/esd/vme8349/pci.c b/board/esd/vme8349/pci.c
index 82347f258c..349e7b567c 100644
--- a/board/esd/vme8349/pci.c
+++ b/board/esd/vme8349/pci.c
@@ -10,6 +10,7 @@
  * Based on MPC8349 PCI support but w/o PIB related code.
  */
 
+#include <init.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/freescale/b4860qds/pci.c b/board/freescale/b4860qds/pci.c
index 3663b14bc3..45dd461e77 100644
--- a/board/freescale/b4860qds/pci.c
+++ b/board/freescale/b4860qds/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/common/p_corenet/pci.c b/board/freescale/common/p_corenet/pci.c
index a6abe66dc0..94e4715f1c 100644
--- a/board/freescale/common/p_corenet/pci.c
+++ b/board/freescale/common/p_corenet/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/m54455evb/m54455evb.c b/board/freescale/m54455evb/m54455evb.c
index 98af3be595..146cd918c4 100644
--- a/board/freescale/m54455evb/m54455evb.c
+++ b/board/freescale/m54455evb/m54455evb.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/board/freescale/m547xevb/m547xevb.c b/board/freescale/m547xevb/m547xevb.c
index 9e1aa99bbc..e8d86113d6 100644
--- a/board/freescale/m547xevb/m547xevb.c
+++ b/board/freescale/m547xevb/m547xevb.c
@@ -9,6 +9,7 @@
 
 #include <config.h>
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/board/freescale/m548xevb/m548xevb.c b/board/freescale/m548xevb/m548xevb.c
index b491518468..40e01c6f24 100644
--- a/board/freescale/m548xevb/m548xevb.c
+++ b/board/freescale/m548xevb/m548xevb.c
@@ -9,6 +9,7 @@
 
 #include <config.h>
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/immap.h>
 #include <asm/io.h>
diff --git a/board/freescale/mpc8308rdb/mpc8308rdb.c b/board/freescale/mpc8308rdb/mpc8308rdb.c
index fc29e2f0dc..ae73246e5b 100644
--- a/board/freescale/mpc8308rdb/mpc8308rdb.c
+++ b/board/freescale/mpc8308rdb/mpc8308rdb.c
@@ -7,6 +7,7 @@
 #include <common.h>
 #include <hwconfig.h>
 #include <i2c.h>
+#include <init.h>
 #include <spi.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/board/freescale/mpc8315erdb/mpc8315erdb.c b/board/freescale/mpc8315erdb/mpc8315erdb.c
index 84b85f8b10..93e0fca083 100644
--- a/board/freescale/mpc8315erdb/mpc8315erdb.c
+++ b/board/freescale/mpc8315erdb/mpc8315erdb.c
@@ -9,6 +9,7 @@
 #include <common.h>
 #include <hwconfig.h>
 #include <i2c.h>
+#include <init.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <pci.h>
diff --git a/board/freescale/mpc8323erdb/mpc8323erdb.c b/board/freescale/mpc8323erdb/mpc8323erdb.c
index 003e95cb6b..cbec8a44e4 100644
--- a/board/freescale/mpc8323erdb/mpc8323erdb.c
+++ b/board/freescale/mpc8323erdb/mpc8323erdb.c
@@ -11,6 +11,7 @@
 
 #include <common.h>
 #include <env.h>
+#include <init.h>
 #include <ioports.h>
 #include <mpc83xx.h>
 #include <i2c.h>
diff --git a/board/freescale/mpc832xemds/pci.c b/board/freescale/mpc832xemds/pci.c
index d94269a6ea..45c7294832 100644
--- a/board/freescale/mpc832xemds/pci.c
+++ b/board/freescale/mpc832xemds/pci.c
@@ -6,6 +6,7 @@
 /*
  * PCI Configuration space access support for MPC83xx PCI Bridge
  */
+#include <init.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/freescale/mpc8349emds/pci.c b/board/freescale/mpc8349emds/pci.c
index 005190ed87..7615a1dfaa 100644
--- a/board/freescale/mpc8349emds/pci.c
+++ b/board/freescale/mpc8349emds/pci.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2006-2009 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/freescale/mpc8349itx/pci.c b/board/freescale/mpc8349itx/pci.c
index c3c2328dcd..550a2afcb7 100644
--- a/board/freescale/mpc8349itx/pci.c
+++ b/board/freescale/mpc8349itx/pci.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 #include <asm/mmu.h>
 #include <asm/io.h>
diff --git a/board/freescale/mpc837xemds/pci.c b/board/freescale/mpc837xemds/pci.c
index 41b78cf5e4..c72e49fbe1 100644
--- a/board/freescale/mpc837xemds/pci.c
+++ b/board/freescale/mpc837xemds/pci.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2006-2009 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/freescale/mpc837xerdb/pci.c b/board/freescale/mpc837xerdb/pci.c
index 38954587ab..07471e0ae5 100644
--- a/board/freescale/mpc837xerdb/pci.c
+++ b/board/freescale/mpc837xerdb/pci.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <mpc83xx.h>
 #include <pci.h>
 #include <asm/io.h>
diff --git a/board/freescale/mpc8541cds/mpc8541cds.c b/board/freescale/mpc8541cds/mpc8541cds.c
index be79a7ca7b..cb130b4a86 100644
--- a/board/freescale/mpc8541cds/mpc8541cds.c
+++ b/board/freescale/mpc8541cds/mpc8541cds.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <vsprintf.h>
 #include <asm/processor.h>
diff --git a/board/freescale/mpc8544ds/mpc8544ds.c b/board/freescale/mpc8544ds/mpc8544ds.c
index dbfa80a216..2d4aace98d 100644
--- a/board/freescale/mpc8544ds/mpc8544ds.c
+++ b/board/freescale/mpc8544ds/mpc8544ds.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/mpc8548cds/mpc8548cds.c b/board/freescale/mpc8548cds/mpc8548cds.c
index 28f8a998ce..a4455d3f61 100644
--- a/board/freescale/mpc8548cds/mpc8548cds.c
+++ b/board/freescale/mpc8548cds/mpc8548cds.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <vsprintf.h>
 #include <asm/processor.h>
diff --git a/board/freescale/mpc8555cds/mpc8555cds.c b/board/freescale/mpc8555cds/mpc8555cds.c
index bc1ebc51ed..47193dd20e 100644
--- a/board/freescale/mpc8555cds/mpc8555cds.c
+++ b/board/freescale/mpc8555cds/mpc8555cds.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <vsprintf.h>
 #include <asm/processor.h>
diff --git a/board/freescale/mpc8568mds/mpc8568mds.c b/board/freescale/mpc8568mds/mpc8568mds.c
index dd2d15ea00..5167f81be7 100644
--- a/board/freescale/mpc8568mds/mpc8568mds.c
+++ b/board/freescale/mpc8568mds/mpc8568mds.c
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/mpc8610hpcd/mpc8610hpcd.c b/board/freescale/mpc8610hpcd/mpc8610hpcd.c
index 5c8538fa1d..86edd66bca 100644
--- a/board/freescale/mpc8610hpcd/mpc8610hpcd.c
+++ b/board/freescale/mpc8610hpcd/mpc8610hpcd.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/immap_86xx.h>
diff --git a/board/freescale/mpc8641hpcn/mpc8641hpcn.c b/board/freescale/mpc8641hpcn/mpc8641hpcn.c
index ea4f3d670b..d9e538b868 100644
--- a/board/freescale/mpc8641hpcn/mpc8641hpcn.c
+++ b/board/freescale/mpc8641hpcn/mpc8641hpcn.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/immap_86xx.h>
diff --git a/board/freescale/qemu-ppce500/qemu-ppce500.c b/board/freescale/qemu-ppce500/qemu-ppce500.c
index 6814bed27c..e582065975 100644
--- a/board/freescale/qemu-ppce500/qemu-ppce500.c
+++ b/board/freescale/qemu-ppce500/qemu-ppce500.c
@@ -7,6 +7,7 @@
 #include <command.h>
 #include <cpu_legacy.h>
 #include <env.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/mmu.h>
diff --git a/board/freescale/t102xqds/pci.c b/board/freescale/t102xqds/pci.c
index 4100370e20..1b1cc0483c 100644
--- a/board/freescale/t102xqds/pci.c
+++ b/board/freescale/t102xqds/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/t102xrdb/pci.c b/board/freescale/t102xrdb/pci.c
index adc128d924..bd0e29744c 100644
--- a/board/freescale/t102xrdb/pci.c
+++ b/board/freescale/t102xrdb/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/t1040qds/pci.c b/board/freescale/t1040qds/pci.c
index 9fd66594f4..5152cdf18a 100644
--- a/board/freescale/t1040qds/pci.c
+++ b/board/freescale/t1040qds/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/t104xrdb/pci.c b/board/freescale/t104xrdb/pci.c
index 6b666ba2d2..ff7cf36446 100644
--- a/board/freescale/t104xrdb/pci.c
+++ b/board/freescale/t104xrdb/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/t208xqds/pci.c b/board/freescale/t208xqds/pci.c
index ef26f14c46..e335592776 100644
--- a/board/freescale/t208xqds/pci.c
+++ b/board/freescale/t208xqds/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/t208xrdb/pci.c b/board/freescale/t208xrdb/pci.c
index adc128d924..bd0e29744c 100644
--- a/board/freescale/t208xrdb/pci.c
+++ b/board/freescale/t208xrdb/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/t4qds/pci.c b/board/freescale/t4qds/pci.c
index 4860ab6ed1..26e2a0af4a 100644
--- a/board/freescale/t4qds/pci.c
+++ b/board/freescale/t4qds/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/freescale/t4rdb/pci.c b/board/freescale/t4rdb/pci.c
index 7d670e1a2f..ac0c95687a 100644
--- a/board/freescale/t4rdb/pci.c
+++ b/board/freescale/t4rdb/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/gdsys/mpc8308/hrcon.c b/board/gdsys/mpc8308/hrcon.c
index 60faa4688c..d1110157a2 100644
--- a/board/gdsys/mpc8308/hrcon.c
+++ b/board/gdsys/mpc8308/hrcon.c
@@ -8,6 +8,7 @@
 #include <env.h>
 #include <hwconfig.h>
 #include <i2c.h>
+#include <init.h>
 #include <spi.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/board/gdsys/mpc8308/strider.c b/board/gdsys/mpc8308/strider.c
index 886bc2b035..9ba9e4278a 100644
--- a/board/gdsys/mpc8308/strider.c
+++ b/board/gdsys/mpc8308/strider.c
@@ -8,6 +8,7 @@
 #include <env.h>
 #include <hwconfig.h>
 #include <i2c.h>
+#include <init.h>
 #include <spi.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
diff --git a/board/imgtec/malta/malta.c b/board/imgtec/malta/malta.c
index b742e3738f..77ce75ecf2 100644
--- a/board/imgtec/malta/malta.c
+++ b/board/imgtec/malta/malta.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <ide.h>
+#include <init.h>
 #include <netdev.h>
 #include <pci.h>
 #include <pci_gt64120.h>
diff --git a/board/keymile/kmp204x/pci.c b/board/keymile/kmp204x/pci.c
index 965a8ce98b..a8047457f2 100644
--- a/board/keymile/kmp204x/pci.c
+++ b/board/keymile/kmp204x/pci.c
@@ -8,6 +8,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/mpc8308_p1m/mpc8308_p1m.c b/board/mpc8308_p1m/mpc8308_p1m.c
index ab724da0d2..5b2fd9c23f 100644
--- a/board/mpc8308_p1m/mpc8308_p1m.c
+++ b/board/mpc8308_p1m/mpc8308_p1m.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <i2c.h>
+#include <init.h>
 #include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <pci.h>
diff --git a/board/renesas/r7780mp/r7780mp.c b/board/renesas/r7780mp/r7780mp.c
index e2c5c5ba93..8dbeeb6e68 100644
--- a/board/renesas/r7780mp/r7780mp.c
+++ b/board/renesas/r7780mp/r7780mp.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <ide.h>
+#include <init.h>
 #include <asm/processor.h>
 #include <asm/io.h>
 #include <asm/pci.h>
diff --git a/board/sbc8349/pci.c b/board/sbc8349/pci.c
index b173c9c502..b6435f34f2 100644
--- a/board/sbc8349/pci.c
+++ b/board/sbc8349/pci.c
@@ -7,6 +7,7 @@
  * Based on MPC8349 PCI support but w/o PIB related code.
  */
 
+#include <init.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/sbc8548/sbc8548.c b/board/sbc8548/sbc8548.c
index 0c36ded862..d246dce36d 100644
--- a/board/sbc8548/sbc8548.c
+++ b/board/sbc8548/sbc8548.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/immap_85xx.h>
diff --git a/board/sbc8641d/sbc8641d.c b/board/sbc8641d/sbc8641d.c
index fb5db6c93d..0a9dab8939 100644
--- a/board/sbc8641d/sbc8641d.c
+++ b/board/sbc8641d/sbc8641d.c
@@ -13,6 +13,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/processor.h>
 #include <asm/immap_86xx.h>
diff --git a/board/tqc/tqm834x/pci.c b/board/tqc/tqm834x/pci.c
index c9b05e44c2..0834207766 100644
--- a/board/tqc/tqm834x/pci.c
+++ b/board/tqc/tqm834x/pci.c
@@ -5,6 +5,7 @@
  * Copyright (C) 2006-2009 Freescale Semiconductor, Inc.
  */
 
+#include <init.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/varisys/cyrus/pci.c b/board/varisys/cyrus/pci.c
index a2df928fc5..66c4b30eb1 100644
--- a/board/varisys/cyrus/pci.c
+++ b/board/varisys/cyrus/pci.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <linux/libfdt.h>
diff --git a/board/ve8313/ve8313.c b/board/ve8313/ve8313.c
index 1559ff210d..781a07f1d8 100644
--- a/board/ve8313/ve8313.c
+++ b/board/ve8313/ve8313.c
@@ -9,6 +9,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <linux/libfdt.h>
 #include <pci.h>
 #include <mpc83xx.h>
diff --git a/board/xes/common/fsl_8xxx_pci.c b/board/xes/common/fsl_8xxx_pci.c
index 84ca4d1215..9981d04c62 100644
--- a/board/xes/common/fsl_8xxx_pci.c
+++ b/board/xes/common/fsl_8xxx_pci.c
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/fsl_pci.h>
 #include <asm/fsl_serdes.h>
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 5db24f1c51..e8285bf936 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -15,6 +15,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 
 #include <command.h>
 #include <env.h>
diff --git a/drivers/pci/pcie_imx.c b/drivers/pci/pcie_imx.c
index 10b8fb4c88..d53d6298bf 100644
--- a/drivers/pci/pcie_imx.c
+++ b/drivers/pci/pcie_imx.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <pci.h>
 #include <asm/arch/clock.h>
 #include <asm/arch/iomux.h>
diff --git a/include/common.h b/include/common.h
index 3001296ff2..a292d91939 100644
--- a/include/common.h
+++ b/include/common.h
@@ -102,8 +102,6 @@ int do_fat_fsload(cmd_tbl_t *, int, int, char * const []);
 /* common/cmd_ext2.c */
 int do_ext2load(cmd_tbl_t *, int, int, char * const []);
 
-void	pci_init_board(void);
-
 /* common/exports.c */
 void	jumptable_init(void);
 
diff --git a/include/init.h b/include/init.h
index e506cd30dd..3b45e631fc 100644
--- a/include/init.h
+++ b/include/init.h
@@ -205,6 +205,9 @@ int board_late_init(void);
 int board_postclk_init(void); /* after clocks/timebase, before env/serial */
 int board_early_init_r(void);
 
+/* TODO(sjg at chromium.org): Drop this when DM_PCI migration is completed */
+void pci_init_board(void);
+
 #endif	/* __ASSEMBLY__ */
 /* Put only stuff here that the assembler can digest */
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 40/42] common: Move trap_init() out of common.h
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (38 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 39/42] common: Move pci_init_board() " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-13 19:00   ` Tom Rini
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 41/42] common: Drop get_endaddr() Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 42/42] common: Move old EEPROM functions into a new header Simon Glass
  41 siblings, 1 reply; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

Move this function into the init.h header file.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Add init.h header

Changes in v2:
- Move trap_init() into init.h instead; update commit message

 arch/m68k/lib/traps.c | 1 +
 arch/mips/lib/traps.c | 1 +
 include/common.h      | 1 -
 include/init.h        | 2 ++
 4 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/m68k/lib/traps.c b/arch/m68k/lib/traps.c
index 5d80207745..2ccd55add0 100644
--- a/arch/m68k/lib/traps.c
+++ b/arch/m68k/lib/traps.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <init.h>
 #include <watchdog.h>
 #include <command.h>
 #include <asm/processor.h>
diff --git a/arch/mips/lib/traps.c b/arch/mips/lib/traps.c
index ff02d437a8..944fa60240 100644
--- a/arch/mips/lib/traps.c
+++ b/arch/mips/lib/traps.c
@@ -12,6 +12,7 @@
 
 #include <common.h>
 #include <cpu_legacy.h>
+#include <init.h>
 #include <asm/mipsregs.h>
 #include <asm/addrspace.h>
 #include <asm/system.h>
diff --git a/include/common.h b/include/common.h
index a292d91939..e946e4d9b7 100644
--- a/include/common.h
+++ b/include/common.h
@@ -145,7 +145,6 @@ void	relocate_code(ulong);
 void	relocate_code(ulong, gd_t *, ulong) __attribute__ ((noreturn));
 #endif
 ulong	get_endaddr   (void);
-void	trap_init     (ulong);
 
 void s_init(void);
 
diff --git a/include/init.h b/include/init.h
index 3b45e631fc..8b65b2afe4 100644
--- a/include/init.h
+++ b/include/init.h
@@ -208,6 +208,8 @@ int board_early_init_r(void);
 /* TODO(sjg at chromium.org): Drop this when DM_PCI migration is completed */
 void pci_init_board(void);
 
+void trap_init(unsigned long reloc_addr);
+
 #endif	/* __ASSEMBLY__ */
 /* Put only stuff here that the assembler can digest */
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 41/42] common: Drop get_endaddr()
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (39 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 40/42] common: Move trap_init() " Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 42/42] common: Move old EEPROM functions into a new header Simon Glass
  41 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

This is not used in U-Boot. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3: None
Changes in v2: None

 include/common.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/include/common.h b/include/common.h
index e946e4d9b7..64d0cf542e 100644
--- a/include/common.h
+++ b/include/common.h
@@ -144,7 +144,6 @@ void	relocate_code(ulong);
 #else
 void	relocate_code(ulong, gd_t *, ulong) __attribute__ ((noreturn));
 #endif
-ulong	get_endaddr   (void);
 
 void s_init(void);
 
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 42/42] common: Move old EEPROM functions into a new header
  2019-11-12 19:42 [U-Boot] [PATCH v3 00/42] common: Further reduce common.h Simon Glass
                   ` (40 preceding siblings ...)
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 41/42] common: Drop get_endaddr() Simon Glass
@ 2019-11-12 19:42 ` Simon Glass
  2019-11-13 19:01   ` Tom Rini
  41 siblings, 1 reply; 51+ messages in thread
From: Simon Glass @ 2019-11-12 19:42 UTC (permalink / raw)
  To: u-boot

These functions do not use driver model but are still used. Move them to a
new eeprom.h header file.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Rename eeprom_legacy.h to eeprom.h since this may not be legacy code
- Update the commit message

Changes in v2: None

 board/atmel/common/mac_eeprom.c               |  1 +
 board/compulab/common/eeprom.c                |  1 +
 board/corscience/tricorder/tricorder-eeprom.c |  1 +
 board/dhelectronics/dh_imx6/dh_imx6.c         |  1 +
 board/freescale/mpc8323erdb/mpc8323erdb.c     |  1 +
 board/kosagi/novena/novena.c                  |  1 +
 board/phytec/phycore_rk3288/phycore-rk3288.c  |  1 +
 board/rockchip/tinker_rk3288/tinker-rk3288.c  |  1 +
 board/softing/vining_fpga/socfpga.c           |  1 +
 board/ti/am43xx/board.c                       |  1 +
 board/ti/common/board_detect.c                |  1 +
 board/ti/ks2_evm/board_k2g.c                  |  1 +
 cmd/eeprom.c                                  |  1 +
 drivers/misc/i2c_eeprom.c                     |  1 +
 drivers/mtd/mw_eeprom.c                       |  1 +
 drivers/rtc/rv3029.c                          |  1 +
 env/eeprom.c                                  |  1 +
 include/common.h                              | 15 ------------
 include/eeprom.h                              | 24 +++++++++++++++++++
 19 files changed, 41 insertions(+), 15 deletions(-)
 create mode 100644 include/eeprom.h

diff --git a/board/atmel/common/mac_eeprom.c b/board/atmel/common/mac_eeprom.c
index 83a7778e99..050aa51ee1 100644
--- a/board/atmel/common/mac_eeprom.c
+++ b/board/atmel/common/mac_eeprom.c
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom.h>
 #include <env.h>
 #include <i2c_eeprom.h>
 #include <netdev.h>
diff --git a/board/compulab/common/eeprom.c b/board/compulab/common/eeprom.c
index 81f69d3850..5206cf5c0a 100644
--- a/board/compulab/common/eeprom.c
+++ b/board/compulab/common/eeprom.c
@@ -7,6 +7,7 @@
  */
 
 #include <common.h>
+#include <eeprom.h>
 #include <i2c.h>
 #include <eeprom_layout.h>
 #include <eeprom_field.h>
diff --git a/board/corscience/tricorder/tricorder-eeprom.c b/board/corscience/tricorder/tricorder-eeprom.c
index b28189dafd..23c2ea9186 100644
--- a/board/corscience/tricorder/tricorder-eeprom.c
+++ b/board/corscience/tricorder/tricorder-eeprom.c
@@ -5,6 +5,7 @@
  * Andreas Bießmann <andreas.biessmann@corscience.de>
  */
 #include <common.h>
+#include <eeprom.h>
 #include <i2c.h>
 #include <u-boot/crc.h>
 
diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c b/board/dhelectronics/dh_imx6/dh_imx6.c
index 037be01f8b..33ce7e8ff1 100644
--- a/board/dhelectronics/dh_imx6/dh_imx6.c
+++ b/board/dhelectronics/dh_imx6/dh_imx6.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom.h>
 #include <init.h>
 #include <dm/device-internal.h>
 #include <asm/arch/clock.h>
diff --git a/board/freescale/mpc8323erdb/mpc8323erdb.c b/board/freescale/mpc8323erdb/mpc8323erdb.c
index cbec8a44e4..6c47cb2b38 100644
--- a/board/freescale/mpc8323erdb/mpc8323erdb.c
+++ b/board/freescale/mpc8323erdb/mpc8323erdb.c
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <eeprom.h>
 #include <env.h>
 #include <init.h>
 #include <ioports.h>
diff --git a/board/kosagi/novena/novena.c b/board/kosagi/novena/novena.c
index e4f0e81004..7eb833cf02 100644
--- a/board/kosagi/novena/novena.c
+++ b/board/kosagi/novena/novena.c
@@ -7,6 +7,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom.h>
 #include <init.h>
 #include <dm/device-internal.h>
 #include <ahci.h>
diff --git a/board/phytec/phycore_rk3288/phycore-rk3288.c b/board/phytec/phycore_rk3288/phycore-rk3288.c
index dac59cd55d..039ed0f1bc 100644
--- a/board/phytec/phycore_rk3288/phycore-rk3288.c
+++ b/board/phytec/phycore_rk3288/phycore-rk3288.c
@@ -4,6 +4,7 @@
  * Author: Wadim Egorov <w.egorov@phytec.de>
  */
 
+#include <eeprom.h>
 #include <init.h>
 #include <asm/io.h>
 #include <common.h>
diff --git a/board/rockchip/tinker_rk3288/tinker-rk3288.c b/board/rockchip/tinker_rk3288/tinker-rk3288.c
index 93e9d2f465..9efbdc1a3c 100644
--- a/board/rockchip/tinker_rk3288/tinker-rk3288.c
+++ b/board/rockchip/tinker_rk3288/tinker-rk3288.c
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <dm.h>
+#include <eeprom.h>
 #include <env.h>
 #include <i2c_eeprom.h>
 #include <init.h>
diff --git a/board/softing/vining_fpga/socfpga.c b/board/softing/vining_fpga/socfpga.c
index d70c22f48f..5a88b6c8ad 100644
--- a/board/softing/vining_fpga/socfpga.c
+++ b/board/softing/vining_fpga/socfpga.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <eeprom.h>
 #include <env.h>
 #include <init.h>
 #include <status_led.h>
diff --git a/board/ti/am43xx/board.c b/board/ti/am43xx/board.c
index 9353830969..d12f1ebfdf 100644
--- a/board/ti/am43xx/board.c
+++ b/board/ti/am43xx/board.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <eeprom.h>
 #include <env.h>
 #include <i2c.h>
 #include <init.h>
diff --git a/board/ti/common/board_detect.c b/board/ti/common/board_detect.c
index bc89cc57bd..564d2f7046 100644
--- a/board/ti/common/board_detect.c
+++ b/board/ti/common/board_detect.c
@@ -8,6 +8,7 @@
  */
 
 #include <common.h>
+#include <eeprom.h>
 #include <asm/arch/hardware.h>
 #include <asm/omap_common.h>
 #include <dm/uclass.h>
diff --git a/board/ti/ks2_evm/board_k2g.c b/board/ti/ks2_evm/board_k2g.c
index a0fd03a39f..920d0d3420 100644
--- a/board/ti/ks2_evm/board_k2g.c
+++ b/board/ti/ks2_evm/board_k2g.c
@@ -6,6 +6,7 @@
  *     Texas Instruments Incorporated, <www.ti.com>
  */
 #include <common.h>
+#include <eeprom.h>
 #include <env.h>
 #include <init.h>
 #include <asm/arch/clock.h>
diff --git a/cmd/eeprom.c b/cmd/eeprom.c
index 19953df082..4a1569baf3 100644
--- a/cmd/eeprom.c
+++ b/cmd/eeprom.c
@@ -22,6 +22,7 @@
 #include <common.h>
 #include <config.h>
 #include <command.h>
+#include <eeprom.h>
 #include <i2c.h>
 #include <eeprom_layout.h>
 
diff --git a/drivers/misc/i2c_eeprom.c b/drivers/misc/i2c_eeprom.c
index 8f2349ad5a..3755dbf74b 100644
--- a/drivers/misc/i2c_eeprom.c
+++ b/drivers/misc/i2c_eeprom.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <eeprom.h>
 #include <linux/err.h>
 #include <linux/kernel.h>
 #include <dm.h>
diff --git a/drivers/mtd/mw_eeprom.c b/drivers/mtd/mw_eeprom.c
index f7791b51a0..6a3a6f6751 100644
--- a/drivers/mtd/mw_eeprom.c
+++ b/drivers/mtd/mw_eeprom.c
@@ -1,6 +1,7 @@
 /* Three-wire (MicroWire) serial eeprom driver (for 93C46 and compatibles) */
 
 #include <common.h>
+#include <eeprom.h>
 #include <asm/ic/ssi.h>
 
 /*
diff --git a/drivers/rtc/rv3029.c b/drivers/rtc/rv3029.c
index 38acb9c992..2367062777 100644
--- a/drivers/rtc/rv3029.c
+++ b/drivers/rtc/rv3029.c
@@ -10,6 +10,7 @@
 #include <common.h>
 #include <command.h>
 #include <dm.h>
+#include <eeprom.h>
 #include <i2c.h>
 #include <rtc.h>
 
diff --git a/env/eeprom.c b/env/eeprom.c
index f0bdf2a141..e8126cfe39 100644
--- a/env/eeprom.c
+++ b/env/eeprom.c
@@ -9,6 +9,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <eeprom.h>
 #include <env.h>
 #include <env_internal.h>
 #include <linux/stddef.h>
diff --git a/include/common.h b/include/common.h
index 64d0cf542e..8b37b58747 100644
--- a/include/common.h
+++ b/include/common.h
@@ -116,21 +116,6 @@ phys_size_t get_effective_memsize(void);
 void	reset_phy     (void);
 void	fdc_hw_init   (void);
 
-/* $(BOARD)/eeprom.c */
-#ifdef CONFIG_CMD_EEPROM
-void eeprom_init  (int bus);
-int  eeprom_read  (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned cnt);
-int  eeprom_write (unsigned dev_addr, unsigned offset, uchar *buffer, unsigned cnt);
-#else
-/*
- * Some EEPROM code is depecated because it used the legacy I2C interface. Add
- * some macros here so we don't have to touch every one of those uses
- */
-#define eeprom_init(bus)
-#define eeprom_read(dev_addr, offset, buffer, cnt) ((void)-ENOSYS)
-#define eeprom_write(dev_addr, offset, buffer, cnt) ((void)-ENOSYS)
-#endif
-
 #if !defined(CONFIG_ENV_EEPROM_IS_ON_I2C) && defined(CONFIG_SYS_I2C_EEPROM_ADDR)
 # define CONFIG_SYS_DEF_EEPROM_ADDR CONFIG_SYS_I2C_EEPROM_ADDR
 #endif
diff --git a/include/eeprom.h b/include/eeprom.h
new file mode 100644
index 0000000000..61eb826a73
--- /dev/null
+++ b/include/eeprom.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2000-2009
+ * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+ */
+
+#ifndef __EEPROM_LEGACY_H
+#define __EEPROM_LEGACY_H
+
+#ifdef CONFIG_CMD_EEPROM
+void eeprom_init(int bus);
+int eeprom_read(uint dev_addr, uint offset, uchar *buffer, uint cnt);
+int eeprom_write(uint dev_addr, uint offset, uchar *buffer, uint cnt);
+#else
+/*
+ * Some EEPROM code is depecated because it used the legacy I2C interface. Add
+ * some macros here so we don't have to touch every one of those uses
+ */
+#define eeprom_init(bus)
+#define eeprom_read(dev_addr, offset, buffer, cnt) ((void)-ENOSYS)
+#define eeprom_write(dev_addr, offset, buffer, cnt) ((void)-ENOSYS)
+#endif
+
+#endif
-- 
2.24.0.rc1.363.gb1bccd3e3d-goog

^ permalink raw reply related	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 01/42] common: Move legacy CPU functions to their own header
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 01/42] common: Move legacy CPU functions to their own header Simon Glass
@ 2019-11-13 15:07   ` Tom Rini
  2019-11-14 13:44     ` Simon Glass
  0 siblings, 1 reply; 51+ messages in thread
From: Tom Rini @ 2019-11-13 15:07 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 12, 2019 at 12:42:10PM -0700, Simon Glass wrote:

> These should be moved to driver model, but in the meantime, move them
> out of the common header to help reduce its size.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
> Changes in v3: None
> Changes in v2: None

I was hoping to get back to this part before you did a v3, sorry.  I
guess my reaction at this point is that much like how v2->v3 did
irq_legacy.h -> irq_funcs.h we should also do cpu_legacy.h ->
cpu_funcs.h (or some other name).  There's I suspect a good argument to
say that yes, some of these functions should be moved to DM (or,
platforms age out) and some do not.  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191113/b3115cf3/attachment.sig>

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 19/42] common: Move wait_ticks functions out of common.h
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 19/42] common: Move wait_ticks " Simon Glass
@ 2019-11-13 18:59   ` Tom Rini
  0 siblings, 0 replies; 51+ messages in thread
From: Tom Rini @ 2019-11-13 18:59 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 12, 2019 at 12:42:28PM -0700, Simon Glass wrote:

> This function belongs in time.h so move it over and add a comment.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@konsulko.com>

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191113/834bbc3f/attachment.sig>

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 20/42] arm: pxa: Drop pxa_wait_ticks()
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 20/42] arm: pxa: Drop pxa_wait_ticks() Simon Glass
@ 2019-11-13 19:00   ` Tom Rini
  0 siblings, 0 replies; 51+ messages in thread
From: Tom Rini @ 2019-11-13 19:00 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 12, 2019 at 12:42:29PM -0700, Simon Glass wrote:

> This function has a similar name to the common wait_ticks(). It is only
> used in one place and seems small enough to drop.
> 
> Inline it.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@konsulko.com>

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191113/4020443f/attachment.sig>

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 33/42] common: Move interrupt functions into a new header
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 33/42] common: Move interrupt functions into a new header Simon Glass
@ 2019-11-13 19:00   ` Tom Rini
  0 siblings, 0 replies; 51+ messages in thread
From: Tom Rini @ 2019-11-13 19:00 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 12, 2019 at 12:42:42PM -0700, Simon Glass wrote:

> These functions do not use driver model but are fairly widely used in
> U-Boot. But it is not clear that they will use driver model anytime soon,
> so we don't want to label them as 'legacy'.
> 
> Move them to a new irq_func.h header file. Avoid the name 'irq.h' since it
> is widely used in U-Boot already.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@konsulko.com>

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191113/dd782741/attachment.sig>

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 34/42] common: Move enable/disable_interrupts out of common.h
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 34/42] common: Move enable/disable_interrupts out of common.h Simon Glass
@ 2019-11-13 19:00   ` Tom Rini
  0 siblings, 0 replies; 51+ messages in thread
From: Tom Rini @ 2019-11-13 19:00 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 12, 2019 at 12:42:43PM -0700, Simon Glass wrote:

> Move these two functions into the irq_funcs.h header file. Also move
> interrupt_handler_t as this is used by the irq_install_handler() function.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@konsulko.com>

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191113/b3729b01/attachment.sig>

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 40/42] common: Move trap_init() out of common.h
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 40/42] common: Move trap_init() " Simon Glass
@ 2019-11-13 19:00   ` Tom Rini
  0 siblings, 0 replies; 51+ messages in thread
From: Tom Rini @ 2019-11-13 19:00 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 12, 2019 at 12:42:49PM -0700, Simon Glass wrote:

> Move this function into the init.h header file.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@konsulko.com>

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191113/c031b34b/attachment.sig>

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 42/42] common: Move old EEPROM functions into a new header
  2019-11-12 19:42 ` [U-Boot] [PATCH v3 42/42] common: Move old EEPROM functions into a new header Simon Glass
@ 2019-11-13 19:01   ` Tom Rini
  0 siblings, 0 replies; 51+ messages in thread
From: Tom Rini @ 2019-11-13 19:01 UTC (permalink / raw)
  To: u-boot

On Tue, Nov 12, 2019 at 12:42:51PM -0700, Simon Glass wrote:

> These functions do not use driver model but are still used. Move them to a
> new eeprom.h header file.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@konsulko.com>

(and I think this is the end of patches that changed from v2 to v3 and
aren't using cpu_legacy.h, everything else in the series is fine
afaict).

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191113/1cc420d4/attachment.sig>

^ permalink raw reply	[flat|nested] 51+ messages in thread

* [U-Boot] [PATCH v3 01/42] common: Move legacy CPU functions to their own header
  2019-11-13 15:07   ` Tom Rini
@ 2019-11-14 13:44     ` Simon Glass
  0 siblings, 0 replies; 51+ messages in thread
From: Simon Glass @ 2019-11-14 13:44 UTC (permalink / raw)
  To: u-boot

Hi Tom,

On Wed, 13 Nov 2019 at 09:07, Tom Rini <trini@konsulko.com> wrote:
>
> On Tue, Nov 12, 2019 at 12:42:10PM -0700, Simon Glass wrote:
>
> > These should be moved to driver model, but in the meantime, move them
> > out of the common header to help reduce its size.
> >
> > Signed-off-by: Simon Glass <sjg@chromium.org>
> > ---
> >
> > Changes in v3: None
> > Changes in v2: None
>
> I was hoping to get back to this part before you did a v3, sorry.  I
> guess my reaction at this point is that much like how v2->v3 did
> irq_legacy.h -> irq_funcs.h we should also do cpu_legacy.h ->
> cpu_funcs.h (or some other name).  There's I suspect a good argument to
> say that yes, some of these functions should be moved to DM (or,
> platforms age out) and some do not.  Thanks!

Thanks for the guidance, sounds good. I will update this and hopefully
send v4 by tomorrow morning.

Regards,
Simon

^ permalink raw reply	[flat|nested] 51+ messages in thread

end of thread, other threads:[~2019-11-14 13:44 UTC | newest]

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

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.