#
# SPDX-License-Identifier:	GPL-2.0+
#

dtb-$(CONFIG_AT91FAMILY) += at91sam9260-smartweb.dtb \
	at91sam9g20-taurus.dtb \
	at91sam9g45-corvus.dtb \
	at91sam9g45-gurnard.dtb

dtb-$(CONFIG_S5PC100) += s5pc1xx-smdkc100.dtb
dtb-$(CONFIG_S5PC110) += s5pc1xx-goni.dtb
dtb-$(CONFIG_EXYNOS4) += exynos4210-origen.dtb \
	exynos4210-smdkv310.dtb \
	exynos4210-universal_c210.dtb \
	exynos4210-trats.dtb \
	exynos4412-trats2.dtb \
	exynos4412-odroid.dtb

dtb-$(CONFIG_TARGET_HIKEY) += hi6220-hikey.dtb

dtb-$(CONFIG_EXYNOS5) += exynos5250-arndale.dtb \
	exynos5250-snow.dtb \
	exynos5250-spring.dtb \
	exynos5250-smdk5250.dtb \
	exynos5420-smdk5420.dtb \
	exynos5420-peach-pit.dtb \
	exynos5800-peach-pi.dtb \
	exynos5422-odroidxu3.dtb
dtb-$(CONFIG_EXYNOS7420) += exynos7420-espresso7420.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += \
	rk3288-firefly.dtb \
	rk3288-jerry.dtb \
	rk3288-rock2-square.dtb \
	rk3036-sdk.dtb
dtb-$(CONFIG_ARCH_MESON) += \
	meson-gxbb-odroidc2.dtb
dtb-$(CONFIG_TEGRA) += tegra20-harmony.dtb \
	tegra20-medcom-wide.dtb \
	tegra20-paz00.dtb \
	tegra20-plutux.dtb \
	tegra20-seaboard.dtb \
	tegra20-tec.dtb \
	tegra20-trimslice.dtb \
	tegra20-ventana.dtb \
	tegra20-whistler.dtb \
	tegra20-colibri.dtb \
	tegra30-apalis.dtb \
	tegra30-beaver.dtb \
	tegra30-cardhu.dtb \
	tegra30-colibri.dtb \
	tegra30-tec-ng.dtb \
	tegra114-dalmore.dtb \
	tegra124-jetson-tk1.dtb \
	tegra124-nyan-big.dtb \
	tegra124-venice2.dtb \
	tegra186-p2771-0000-a02.dtb \
	tegra186-p2771-0000-b00.dtb \
	tegra210-e2220-1170.dtb \
	tegra210-p2371-0000.dtb \
	tegra210-p2371-2180.dtb \
	tegra210-p2571.dtb

dtb-$(CONFIG_ARCH_MVEBU) +=			\
	armada-375-db.dtb			\
	armada-388-clearfog.dtb			\
	armada-388-gp.dtb			\
	armada-xp-gp.dtb			\
	armada-xp-maxbcm.dtb			\
	armada-xp-synology-ds414.dtb		\
	armada-xp-theadorable.dtb

dtb-$(CONFIG_ARCH_UNIPHIER) += \
	uniphier-ph1-ld11-ref.dtb \
	uniphier-ph1-ld20-ref.dtb \
	uniphier-ph1-ld4-ref.dtb \
	uniphier-ph1-ld6b-ref.dtb \
	uniphier-ph1-pro4-ace.dtb \
	uniphier-ph1-pro4-ref.dtb \
	uniphier-ph1-pro4-sanji.dtb \
	uniphier-ph1-pro5-4kbox.dtb \
	uniphier-ph1-sld3-ref.dtb \
	uniphier-ph1-sld8-ref.dtb \
	uniphier-proxstream2-gentil.dtb \
	uniphier-proxstream2-vodka.dtb
dtb-$(CONFIG_ARCH_ZYNQ) += zynq-zc702.dtb \
	zynq-zc706.dtb \
	zynq-zed.dtb \
	zynq-zybo.dtb \
	zynq-microzed.dtb \
	zynq-picozed.dtb \
	zynq-zc770-xm010.dtb \
	zynq-zc770-xm011.dtb \
	zynq-zc770-xm012.dtb \
	zynq-zc770-xm013.dtb
dtb-$(CONFIG_ARCH_ZYNQMP) += \
	zynqmp-ep108.dtb			\
	zynqmp-zcu102.dtb			\
	zynqmp-zcu102-revB.dtb			\
	zynqmp-zc1751-xm015-dc1.dtb		\
	zynqmp-zc1751-xm016-dc2.dtb		\
	zynqmp-zc1751-xm018-dc4.dtb		\
	zynqmp-zc1751-xm019-dc5.dtb
dtb-$(CONFIG_AM33XX) += am335x-boneblack.dtb am335x-bone.dtb \
	am335x-draco.dtb \
	am335x-evm.dtb \
	am335x-evmsk.dtb \
	am335x-bonegreen.dtb \
	am335x-icev2.dtb \
	am335x-pxm50.dtb \
	am335x-rut.dtb
dtb-$(CONFIG_AM43XX) += am437x-gp-evm.dtb am437x-sk-evm.dtb	\
	am43x-epos-evm.dtb \
	am437x-idk-evm.dtb
dtb-$(CONFIG_THUNDERX) += thunderx-88xx.dtb

dtb-$(CONFIG_ARCH_SOCFPGA) +=				\
	socfpga_arria5_socdk.dtb			\
	socfpga_cyclone5_is1.dtb			\
	socfpga_cyclone5_mcvevk.dtb			\
	socfpga_cyclone5_socdk.dtb			\
	socfpga_cyclone5_de0_nano_soc.dtb			\
	socfpga_cyclone5_sockit.dtb			\
	socfpga_cyclone5_socrates.dtb			\
	socfpga_cyclone5_sr1500.dtb			\
	socfpga_cyclone5_vining_fpga.dtb

dtb-$(CONFIG_TARGET_DRA7XX_EVM) += dra72-evm.dtb dra7-evm.dtb
dtb-$(CONFIG_TARGET_AM57XX_EVM) += am57xx-beagle-x15.dtb \
	am572x-idk.dtb
dtb-$(CONFIG_TARGET_STV0991) += stv0991.dtb

dtb-$(CONFIG_LS102XA) += ls1021a-qds-duart.dtb \
	ls1021a-qds-lpuart.dtb \
	ls1021a-twr-duart.dtb ls1021a-twr-lpuart.dtb
dtb-$(CONFIG_FSL_LSCH3) += fsl-ls2080a-qds.dtb \
	fsl-ls2080a-rdb.dtb
dtb-$(CONFIG_FSL_LSCH2) += fsl-ls1043a-qds-duart.dtb \
	fsl-ls1043a-qds-lpuart.dtb \
	fsl-ls1043a-rdb.dtb \
	fsl-ls1012a-qds.dtb \
	fsl-ls1012a-rdb.dtb \
	fsl-ls1012a-frdm.dtb

dtb-$(CONFIG_ARCH_SNAPDRAGON) += dragonboard410c.dtb

dtb-$(CONFIG_MACH_SUN4I) += \
	sun4i-a10-a1000.dtb \
	sun4i-a10-ba10-tvbox.dtb \
	sun4i-a10-chuwi-v7-cw0825.dtb \
	sun4i-a10-cubieboard.dtb \
	sun4i-a10-dserve-dsrv9703c.dtb \
	sun4i-a10-gemei-g9.dtb \
	sun4i-a10-hackberry.dtb \
	sun4i-a10-hyundai-a7hd.dtb \
	sun4i-a10-inet1.dtb \
	sun4i-a10-inet-3f.dtb \
	sun4i-a10-inet-3w.dtb \
	sun4i-a10-inet97fv2.dtb \
	sun4i-a10-inet9f-rev03.dtb \
	sun4i-a10-itead-iteaduino-plus.dtb \
	sun4i-a10-jesurun-q5.dtb \
	sun4i-a10-marsboard.dtb \
	sun4i-a10-mini-xplus.dtb \
	sun4i-a10-mk802.dtb \
	sun4i-a10-mk802ii.dtb \
	sun4i-a10-olinuxino-lime.dtb \
	sun4i-a10-pcduino.dtb \
	sun4i-a10-pcduino2.dtb \
	sun4i-a10-pov-protab2-ips9.dtb
dtb-$(CONFIG_MACH_SUN5I) += \
	sun5i-a10s-auxtek-t003.dtb \
	sun5i-a10s-auxtek-t004.dtb \
	sun5i-a10s-mk802.dtb \
	sun5i-a10s-olinuxino-micro.dtb \
	sun5i-a10s-r7-tv-dongle.dtb \
	sun5i-a10s-wobo-i5.dtb \
	sun5i-a13-ampe-a76.dtb \
	sun5i-a13-difrnce-dit4350.dtb \
	sun5i-a13-empire-electronix-d709.dtb \
	sun5i-a13-hsg-h702.dtb \
	sun5i-a13-inet-86vs.dtb \
	sun5i-a13-inet-98v-rev2.dtb \
	sun5i-a13-olinuxino.dtb \
	sun5i-a13-olinuxino-micro.dtb \
	sun5i-a13-q8-tablet.dtb \
	sun5i-a13-utoo-p66.dtb \
	sun5i-r8-chip.dtb
dtb-$(CONFIG_MACH_SUN6I) += \
	sun6i-a31-app4-evb1.dtb \
	sun6i-a31-colombus.dtb \
	sun6i-a31-hummingbird.dtb \
	sun6i-a31-i7.dtb \
	sun6i-a31-m9.dtb \
	sun6i-a31-mele-a1000g-quad.dtb \
	sun6i-a31-mixtile-loftq.dtb \
	sun6i-a31s-colorfly-e708-q1.dtb \
	sun6i-a31s-cs908.dtb \
	sun6i-a31s-primo81.dtb \
	sun6i-a31s-sina31s.dtb \
	sun6i-a31s-sinovoip-bpi-m2.dtb \
	sun6i-a31s-yones-toptech-bs1078-v2.dtb
dtb-$(CONFIG_MACH_SUN7I) += \
	sun7i-a20-ainol-aw1.dtb \
	sun7i-a20-bananapi.dtb \
	sun7i-a20-bananapro.dtb \
	sun7i-a20-cubieboard2.dtb \
	sun7i-a20-cubietruck.dtb \
	sun7i-a20-hummingbird.dtb \
	sun7i-a20-i12-tvbox.dtb \
	sun7i-a20-icnova-swac.dtb \
	sun7i-a20-itead-ibox.dtb \
	sun7i-a20-lamobo-r1.dtb \
	sun7i-a20-m3.dtb \
	sun7i-a20-m5.dtb \
	sun7i-a20-mk808c.dtb \
	sun7i-a20-olimex-som-evb.dtb \
	sun7i-a20-olinuxino-lime.dtb \
	sun7i-a20-olinuxino-lime2.dtb \
	sun7i-a20-olinuxino-micro.dtb \
	sun7i-a20-orangepi.dtb \
	sun7i-a20-orangepi-mini.dtb \
	sun7i-a20-pcduino3.dtb \
	sun7i-a20-pcduino3-nano.dtb \
	sun7i-a20-primo73.dtb \
	sun7i-a20-wexler-tab7200.dtb \
	sun7i-a20-wits-pro-a20-dkt.dtb \
	sun7i-a20-yones-toptech-bd1078.dtb
dtb-$(CONFIG_MACH_SUN8I_A23) += \
	sun8i-a23-evb.dtb \
	sun8i-a23-gt90h-v4.dtb \
	sun8i-a23-inet86dz.dtb \
	sun8i-a23-polaroid-mid2407pxe03.dtb \
	sun8i-a23-polaroid-mid2809pxe04.dtb \
	sun8i-a23-q8-tablet.dtb
dtb-$(CONFIG_MACH_SUN8I_A33) += \
	sun8i-a33-ga10h-v1.1.dtb \
	sun8i-a33-q8-tablet.dtb \
	sun8i-a33-sinlinx-sina33.dtb \
	sun8i-r16-parrot.dtb
dtb-$(CONFIG_MACH_SUN8I_A83T) += \
	sun8i-a83t-allwinner-h8homlet-v2.dtb \
	sun8i-a83t-cubietruck-plus.dtb \
	sun8i-a83t-sinovoip-bpi-m3.dtb
dtb-$(CONFIG_MACH_SUN8I_H3) += \
	sun8i-h3-orangepi-2.dtb \
	sun8i-h3-orangepi-lite.dtb \
	sun8i-h3-orangepi-one.dtb \
	sun8i-h3-orangepi-pc.dtb \
	sun8i-h3-orangepi-pc-plus.dtb \
	sun8i-h3-orangepi-plus.dtb
dtb-$(CONFIG_MACH_SUN50I) += \
	sun50i-a64-pine64-plus.dtb \
	sun50i-a64-pine64.dtb
dtb-$(CONFIG_MACH_SUN9I) += \
	sun9i-a80-optimus.dtb \
	sun9i-a80-cubieboard4.dtb

dtb-$(CONFIG_VF610) += vf500-colibri.dtb \
	vf610-colibri.dtb \
	vf610-twr.dtb \
	pcm052.dtb

dtb-$(CONFIG_SOC_KEYSTONE) += k2hk-evm.dtb \
	k2l-evm.dtb \
	k2e-evm.dtb \
	k2g-evm.dtb

targets += $(dtb-y)

# Add any required device tree compiler flags here
DTC_FLAGS +=

PHONY += dtbs
dtbs: $(addprefix $(obj)/, $(dtb-y))
	@:

clean-files := *.dtb
