dm: core: Create a new header file for 'compat' features
authorSimon Glass <sjg@chromium.org>
Mon, 3 Feb 2020 14:36:16 +0000 (07:36 -0700)
committerSimon Glass <sjg@chromium.org>
Thu, 6 Feb 2020 02:33:46 +0000 (19:33 -0700)
commit336d4615f8fa774557d14f9b3245daa9e5fe3dbc
tree7a4d2d33113f44238d64e7e409fd3aafef63c2ed
parent61b29b82683863a970fd4609a7c58512872616bc
dm: core: Create a new header file for 'compat' features

At present dm/device.h includes the linux-compatible features. This
requires including linux/compat.h which in turn includes a lot of headers.
One of these is malloc.h which we thus end up including in every file in
U-Boot. Apart from the inefficiency of this, it is problematic for sandbox
which needs to use the system malloc() in some files.

Move the compatibility features into a separate header file.

Signed-off-by: Simon Glass <sjg@chromium.org>
460 files changed:
arch/arm/mach-imx/cmd_nandbcb.c
arch/arm/mach-imx/imx8/image.c
arch/arm/mach-mvebu/mbus.c
arch/arm/mach-rockchip/rk3288/rk3288.c
arch/arm/mach-rockchip/rk3308/rk3308.c
arch/arm/mach-socfpga/clock_manager_agilex.c
arch/arm/mach-socfpga/clock_manager_arria10.c
arch/arm/mach-stm32mp/pwr_regulator.c
arch/arm/mach-tegra/cboot.c
arch/arm/mach-zynq/clk.c
arch/arm/mach-zynq/timer.c
arch/mips/mach-mtmips/cpu.c
arch/mips/mach-pic32/cpu.c
arch/sandbox/cpu/cpu.c
arch/x86/cpu/apollolake/fsp_s.c
arch/x86/cpu/apollolake/spl.c
arch/x86/cpu/apollolake/uart.c
arch/x86/cpu/intel_common/itss.c
arch/x86/cpu/qemu/e820.c
arch/x86/cpu/qfw_cpu.c
arch/x86/lib/coreboot_table.c
arch/x86/lib/fsp1/fsp_common.c
arch/x86/lib/mrccache.c
arch/x86/lib/tables.c
board/compulab/common/common.c
board/corscience/tricorder/tricorder.c
board/gardena/smart-gateway-mt7688/board.c
board/ge/common/vpd_reader.c
board/isee/igep003x/board.c
board/isee/igep00x0/igep00x0.c
board/menlo/m53menlo/m53menlo.c
board/microchip/pic32mzda/pic32mzda.c
board/overo/overo.c
board/siemens/common/board.c
board/siemens/pxm2/board.c
board/siemens/rut/board.c
board/st/stm32mp1/stm32mp1.c
board/synopsys/hsdk/clk-lib.c
board/technexion/tao3530/tao3530.c
board/ti/am335x/board.c
board/ti/am57xx/board.c
board/timll/devkit8000/devkit8000.c
cmd/bootefi.c
cmd/gpio.c
cmd/host.c
cmd/rng.c
cmd/tpm-common.c
cmd/ubi.c
cmd/usb_mass_storage.c
cmd/ximg.c
common/android_ab.c
common/autoboot.c
common/image-fdt.c
common/image.c
common/usb.c
common/usb_hub.c
drivers/adc/stm32-adc-core.c
drivers/adc/stm32-adc.c
drivers/axi/sandbox_store.c
drivers/block/blk-uclass.c
drivers/block/sandbox.c
drivers/clk/altera/clk-arria10.c
drivers/clk/at91/clk-generated.c
drivers/clk/at91/clk-h32mx.c
drivers/clk/at91/clk-peripheral.c
drivers/clk/clk-cdce9xx.c
drivers/clk/clk-ti-sci.c
drivers/clk/clk-uclass.c
drivers/clk/clk_sandbox.c
drivers/clk/clk_sandbox_ccf.c
drivers/clk/clk_sandbox_test.c
drivers/clk/clk_versal.c
drivers/clk/clk_vexpress_osc.c
drivers/clk/clk_zynq.c
drivers/clk/clk_zynqmp.c
drivers/clk/imx/clk-imx8.c
drivers/clk/mvebu/armada-37xx-periph.c
drivers/clk/mvebu/armada-37xx-tbg.c
drivers/clk/rockchip/clk_px30.c
drivers/clk/rockchip/clk_rk3036.c
drivers/clk/rockchip/clk_rk3128.c
drivers/clk/rockchip/clk_rk3188.c
drivers/clk/rockchip/clk_rk322x.c
drivers/clk/rockchip/clk_rk3288.c
drivers/clk/rockchip/clk_rk3308.c
drivers/clk/rockchip/clk_rk3328.c
drivers/clk/rockchip/clk_rk3368.c
drivers/clk/rockchip/clk_rk3399.c
drivers/clk/rockchip/clk_rv1108.c
drivers/clk/tegra/tegra-car-clk.c
drivers/clk/uniphier/clk-uniphier-core.c
drivers/core/devres.c
drivers/core/of_access.c
drivers/core/ofnode.c
drivers/core/syscon-uclass.c
drivers/ddr/altera/sdram_gen5.c
drivers/ddr/altera/sdram_soc64.c
drivers/dma/bcm6348-iudma.c
drivers/dma/dma-uclass.c
drivers/dma/sandbox-dma-test.c
drivers/dma/ti/k3-udma.c
drivers/firmware/ti_sci.c
drivers/fpga/fpga.c
drivers/gpio/74x164_gpio.c
drivers/gpio/adi_gpio2.c
drivers/gpio/at91_gpio.c
drivers/gpio/atmel_pio4.c
drivers/gpio/da8xx_gpio.c
drivers/gpio/dwapb_gpio.c
drivers/gpio/gpio-rcar.c
drivers/gpio/kona_gpio.c
drivers/gpio/mpc83xx_gpio.c
drivers/gpio/mscc_sgpio.c
drivers/gpio/mvgpio.c
drivers/gpio/mxs_gpio.c
drivers/gpio/pca953x_gpio.c
drivers/gpio/pca9698.c
drivers/gpio/sh_pfc.c
drivers/gpio/spear_gpio.c
drivers/gpio/stm32_gpio.c
drivers/hwspinlock/hwspinlock-uclass.c
drivers/hwspinlock/stm32_hwspinlock.c
drivers/i2c/at91_i2c.c
drivers/i2c/designware_i2c.c
drivers/i2c/i2c-uniphier-f.c
drivers/i2c/i2c-uniphier.c
drivers/i2c/imx_lpi2c.c
drivers/i2c/muxes/i2c-arb-gpio-challenge.c
drivers/i2c/muxes/i2c-mux-gpio.c
drivers/i2c/muxes/i2c-mux-uclass.c
drivers/i2c/muxes/pca954x.c
drivers/i2c/mxc_i2c.c
drivers/i2c/rcar_i2c.c
drivers/i2c/stm32f7_i2c.c
drivers/i2c/xilinx_xiic.c
drivers/led/led_gpio.c
drivers/mailbox/k3-sec-proxy.c
drivers/mailbox/mailbox-uclass.c
drivers/mailbox/sandbox-mbox-test.c
drivers/mailbox/sandbox-mbox.c
drivers/mailbox/stm32-ipcc.c
drivers/mailbox/tegra-hsp.c
drivers/mailbox/zynqmp-ipi.c
drivers/misc/imx8/scu_api.c
drivers/misc/k3_avs.c
drivers/misc/p2sb-uclass.c
drivers/misc/stm32_rcc.c
drivers/misc/tegra186_bpmp.c
drivers/misc/vexpress_config.c
drivers/mmc/am654_sdhci.c
drivers/mmc/arm_pl180_mmci.c
drivers/mmc/bcm2835_sdhost.c
drivers/mmc/fsl_esdhc.c
drivers/mmc/fsl_esdhc_imx.c
drivers/mmc/jz_mmc.c
drivers/mmc/mmc-uclass.c
drivers/mmc/msm_sdhci.c
drivers/mmc/mtk-sd.c
drivers/mmc/renesas-sdhi.c
drivers/mmc/sdhci-cadence.c
drivers/mmc/sh_mmcif.c
drivers/mmc/sh_sdhi.c
drivers/mmc/snps_dw_mmc.c
drivers/mmc/socfpga_dw_mmc.c
drivers/mmc/stm32_sdmmc2.c
drivers/mmc/tmio-common.c
drivers/mmc/uniphier-sd.c
drivers/mmc/zynq_sdhci.c
drivers/mtd/hbmc-am654.c
drivers/mtd/mtd_uboot.c
drivers/mtd/nand/core.c
drivers/mtd/nand/raw/atmel_nand.c
drivers/mtd/nand/raw/brcmnand/brcmnand.c
drivers/mtd/nand/raw/brcmnand/brcmnand_compat.c
drivers/mtd/nand/raw/denali.c
drivers/mtd/nand/raw/denali_dt.c
drivers/mtd/nand/raw/pxa3xx_nand.c
drivers/mtd/nand/raw/sunxi_nand.c
drivers/mtd/nand/raw/tegra_nand.c
drivers/mtd/nand/raw/vf610_nfc.c
drivers/mtd/nand/spi/core.c
drivers/mtd/nand/spi/gigadevice.c
drivers/mtd/nand/spi/macronix.c
drivers/mtd/nand/spi/micron.c
drivers/mtd/nand/spi/winbond.c
drivers/mtd/renesas_rpc_hf.c
drivers/mtd/spi/sf-uclass.c
drivers/mtd/spi/spi-nor-core.c
drivers/mtd/spi/spi-nor-tiny.c
drivers/mtd/ubi/debug.c
drivers/mtd/ubi/misc.c
drivers/mtd/ubi/upd.c
drivers/net/bcm6348-eth.c
drivers/net/bcm6368-eth.c
drivers/net/designware.c
drivers/net/dwc_eth_qos.c
drivers/net/dwmac_socfpga.c
drivers/net/e1000.c
drivers/net/e1000_spi.c
drivers/net/fsl-mc/dpio/qbman_portal.c
drivers/net/fsl-mc/mc.c
drivers/net/fsl_enetc.c
drivers/net/ftgmac100.c
drivers/net/higmacv300.c
drivers/net/mscc_eswitch/jr2_switch.c
drivers/net/mscc_eswitch/luton_switch.c
drivers/net/mscc_eswitch/ocelot_switch.c
drivers/net/mscc_eswitch/serval_switch.c
drivers/net/mscc_eswitch/servalt_switch.c
drivers/net/mtk_eth.c
drivers/net/mvneta.c
drivers/net/mvpp2.c
drivers/net/pch_gbe.c
drivers/net/pfe_eth/pfe_driver.c
drivers/net/pfe_eth/pfe_eth.c
drivers/net/pfe_eth/pfe_firmware.c
drivers/net/pfe_eth/pfe_mdio.c
drivers/net/phy/fixed.c
drivers/net/pic32_eth.c
drivers/net/sandbox-raw-bus.c
drivers/net/sni_ave.c
drivers/net/sun8i_emac.c
drivers/net/sunxi_emac.c
drivers/net/ti/am65-cpsw-nuss.c
drivers/net/ti/cpsw-common.c
drivers/net/ti/cpsw.c
drivers/net/ti/cpsw_mdio.c
drivers/net/zynq_gem.c
drivers/nvme/nvme.c
drivers/pci/pci-aardvark.c
drivers/pci/pci-uclass.c
drivers/pci/pci_mvebu.c
drivers/pci/pcie_dw_ti.c
drivers/pci/pcie_fsl.c
drivers/pci/pcie_imx.c
drivers/pci/pcie_intel_fpga.c
drivers/pci/pcie_mediatek.c
drivers/phy/allwinner/phy-sun4i-usb.c
drivers/phy/bcm6318-usbh-phy.c
drivers/phy/bcm6348-usbh-phy.c
drivers/phy/bcm6358-usbh-phy.c
drivers/phy/bcm6368-usbh-phy.c
drivers/phy/marvell/comphy_core.c
drivers/phy/meson-g12a-usb2.c
drivers/phy/meson-g12a-usb3-pcie.c
drivers/phy/meson-gxl-usb2.c
drivers/phy/meson-gxl-usb3.c
drivers/phy/phy-mtk-tphy.c
drivers/phy/phy-rcar-gen2.c
drivers/phy/phy-rcar-gen3.c
drivers/phy/phy-stm32-usbphyc.c
drivers/phy/phy-ti-am654.c
drivers/pinctrl/broadcom/pinctrl-bcm6838.c
drivers/pinctrl/intel/pinctrl.c
drivers/pinctrl/meson/pinctrl-meson.c
drivers/pinctrl/mscc/mscc-common.c
drivers/pinctrl/mtmips/pinctrl-mtmips-common.c
drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
drivers/pinctrl/nxp/pinctrl-imx.c
drivers/pinctrl/nxp/pinctrl-mxs.c
drivers/pinctrl/pinctrl-generic.c
drivers/pinctrl/pinctrl-single.c
drivers/pinctrl/pinctrl-stmfx.c
drivers/pinctrl/pinctrl-uclass.c
drivers/pinctrl/pinctrl_stm32.c
drivers/pinctrl/renesas/pfc.c
drivers/pinctrl/uniphier/pinctrl-uniphier-core.c
drivers/power/domain/bcm6328-power-domain.c
drivers/power/domain/imx8-power-domain-legacy.c
drivers/power/domain/imx8-power-domain.c
drivers/power/domain/imx8m-power-domain.c
drivers/power/domain/meson-ee-pwrc.c
drivers/power/domain/meson-gx-pwrc-vpu.c
drivers/power/domain/mtk-power-domain.c
drivers/power/domain/power-domain-uclass.c
drivers/power/domain/sandbox-power-domain-test.c
drivers/power/domain/sandbox-power-domain.c
drivers/power/domain/tegra186-power-domain.c
drivers/power/domain/ti-sci-power-domain.c
drivers/power/pmic/fan53555.c
drivers/power/pmic/i2c_pmic_emul.c
drivers/power/pmic/stpmic1.c
drivers/power/regulator/pwm_regulator.c
drivers/power/regulator/stm32-vrefbuf.c
drivers/power/regulator/tps62360_regulator.c
drivers/ram/k3-am654-ddrss.c
drivers/ram/k3-j721e/k3-j721e-ddrss.c
drivers/ram/stm32_sdram.c
drivers/remoteproc/k3_system_controller.c
drivers/remoteproc/rproc-elf-loader.c
drivers/remoteproc/stm32_copro.c
drivers/remoteproc/ti_k3_arm64_rproc.c
drivers/remoteproc/ti_k3_dsp_rproc.c
drivers/remoteproc/ti_k3_r5f_rproc.c
drivers/reset/reset-bcm6345.c
drivers/reset/reset-hisilicon.c
drivers/reset/reset-imx7.c
drivers/reset/reset-mediatek.c
drivers/reset/reset-meson.c
drivers/reset/reset-mtmips.c
drivers/reset/reset-rockchip.c
drivers/reset/reset-socfpga.c
drivers/reset/reset-sunxi.c
drivers/reset/reset-ti-sci.c
drivers/reset/reset-uclass.c
drivers/reset/reset-uniphier.c
drivers/reset/sandbox-reset-test.c
drivers/reset/sandbox-reset.c
drivers/reset/sti-reset.c
drivers/reset/stm32-reset.c
drivers/reset/tegra-car-reset.c
drivers/reset/tegra186-reset.c
drivers/rtc/ds3232.c
drivers/rtc/rv3029.c
drivers/rtc/stm32_rtc.c
drivers/serial/atmel_usart.c
drivers/serial/serial-uclass.c
drivers/serial/serial_bcm6345.c
drivers/serial/serial_lpuart.c
drivers/serial/serial_msm.c
drivers/serial/serial_pic32.c
drivers/serial/serial_stm32.c
drivers/serial/serial_zynq.c
drivers/smem/msm_smem.c
drivers/soc/ti/k3-navss-ringacc.c
drivers/sound/sound-uclass.c
drivers/spi/atmel-quadspi.c
drivers/spi/bcm63xx_hsspi.c
drivers/spi/bcm63xx_spi.c
drivers/spi/cadence_qspi.c
drivers/spi/designware_spi.c
drivers/spi/mvebu_a3700_spi.c
drivers/spi/mxc_spi.c
drivers/spi/spi-mem-nodm.c
drivers/spi/spi-mem.c
drivers/spi/spi-sunxi.c
drivers/spi/stm32_qspi.c
drivers/spi/stm32_spi.c
drivers/spi/uniphier_spi.c
drivers/spi/zynqmp_gqspi.c
drivers/spmi/spmi-msm.c
drivers/sysreset/sysreset-ti-sci.c
drivers/tee/optee/core.c
drivers/tee/optee/rpmb.c
drivers/tee/optee/supplicant.c
drivers/tee/tee-uclass.c
drivers/timer/dw-apb-timer.c
drivers/timer/ostm_timer.c
drivers/timer/stm32_timer.c
drivers/ufs/cdns-platform.c
drivers/ufs/ti-j721e-ufs.c
drivers/ufs/ufs.c
drivers/usb/cdns3/cdns3-ti.c
drivers/usb/cdns3/core.c
drivers/usb/cdns3/drd.c
drivers/usb/cdns3/ep0.c
drivers/usb/cdns3/gadget.c
drivers/usb/dwc3/core.c
drivers/usb/dwc3/dwc3-omap.c
drivers/usb/dwc3/dwc3-uniphier.c
drivers/usb/dwc3/ep0.c
drivers/usb/dwc3/gadget.c
drivers/usb/dwc3/ti_usb_phy.c
drivers/usb/gadget/dwc2_udc_otg.c
drivers/usb/gadget/storage_common.c
drivers/usb/gadget/udc/udc-core.c
drivers/usb/host/dwc2.c
drivers/usb/host/ehci-atmel.c
drivers/usb/host/ehci-generic.c
drivers/usb/host/ehci-hcd.c
drivers/usb/host/ohci-da8xx.c
drivers/usb/host/ohci-generic.c
drivers/usb/host/r8a66597-hcd.c
drivers/usb/host/xhci-rcar.c
drivers/usb/musb-new/am35x.c
drivers/usb/musb-new/da8xx.c
drivers/usb/musb-new/musb_core.c
drivers/usb/musb-new/musb_dsps.c
drivers/usb/musb-new/musb_gadget.c
drivers/usb/musb-new/musb_gadget_ep0.c
drivers/usb/musb-new/musb_host.c
drivers/usb/musb-new/musb_uboot.c
drivers/usb/musb-new/omap2430.c
drivers/usb/musb-new/pic32.c
drivers/usb/musb-new/sunxi.c
drivers/usb/musb-new/ti-musb.c
drivers/usb/phy/omap_usb_phy.c
drivers/video/atmel_hlcdfb.c
drivers/video/console_truetype.c
drivers/video/da8xx-fb.c
drivers/video/dw_mipi_dsi.c
drivers/video/hitachi_tx18d42vm_lcd.c
drivers/video/mali_dp.c
drivers/video/mvebu_lcd.c
drivers/video/mxsfb.c
drivers/video/orisetech_otm8009a.c
drivers/video/pwm_backlight.c
drivers/video/raydium-rm68200.c
drivers/video/rockchip/rk3288_hdmi.c
drivers/video/rockchip/rk_edp.c
drivers/video/sandbox_osd.c
drivers/video/scf0403_lcd.c
drivers/video/ssd2828.c
drivers/video/stm32/stm32_dsi.c
drivers/video/stm32/stm32_ltdc.c
drivers/video/video-uclass.c
drivers/virtio/virtio-uclass.c
drivers/virtio/virtio_ring.c
drivers/w1-eeprom/ds2502.c
drivers/w1/mxc_w1.c
drivers/watchdog/armada-37xx-wdt.c
drivers/watchdog/cdns_wdt.c
fs/ext4/ext4_write.c
fs/ext4/ext4fs.c
fs/fat/fat_write.c
fs/sandbox/sandboxfs.c
fs/ubifs/lprops.c
fs/ubifs/ubifs.c
fs/yaffs2/yaffs_nandif.c
fs/yaffs2/yaffs_uboot_glue.c
include/dm/device.h
include/dm/device_compat.h [new file with mode: 0644]
include/linux/clk-provider.h
lib/bch.c
lib/binman.c
lib/bzip2/bzlib.c
lib/crypto/rsa_helper.c
lib/efi/efi.c
lib/efi/efi_app.c
lib/efi/efi_stub.c
lib/efi_driver/efi_block_device.c
lib/efi_driver/efi_uclass.c
lib/efi_loader/efi_console.c
lib/efi_loader/efi_runtime.c
lib/fdtdec.c
lib/libavb/avb_cmdline.c
lib/libavb/avb_descriptor.c
lib/libavb/avb_rsa.c
lib/libavb/avb_slot_verify.c
lib/libavb/avb_sysdeps_posix.c
lib/libavb/avb_util.c
lib/linux_compat.c
lib/lmb.c
lib/rsa/rsa-sign.c
lib/rsa/rsa-verify.c
lib/zstd/decompress.c
lib/zstd/zstd_common.c
net/mdio-uclass.c
post/post.c
test/dm/clk.c
test/dm/dma.c
test/dm/gpio.c
test/dm/mailbox.c
test/dm/power-domain.c
test/dm/reset.c
test/dm/spmi.c
test/dm/tee.c
test/dm/video.c
test/lib/lmb.c
test/unicode_ut.c