1#!/usr/bin/env sh
2#
3# Copyright 2020, Data61, CSIRO (ABN 41 687 119 230)
4#
5# SPDX-License-Identifier: GPL-2.0-only
6#
7
8if [ -z "$1" ]; then
9    echo "Usage: $0 </path/to/linux/kernel>"
10    exit 1
11fi
12
13destdir=`pwd`
14
15cd "$1" || exit 1
16echo Using DTS from Linux $(make -s kernelversion)
17make ARCH=arm multi_v7_defconfig
18make ARCH=arm -j4 dtbs
19
20make ARCH=arm64 defconfig
21make ARCH=arm64 -j4 dtbs
22
23LICENSE="/*
24 * Copyright Linux Kernel Team
25 *
26 * SPDX-License-Identifier: GPL-2.0-only
27 *
28 * This file is derived from an intermediate build stage of the
29 * Linux kernel. The licenses of all input files to this process
30 * are compatible with GPL-2.0-only.
31 */
32"
33
34ARM_DTBS="
35am335x-bone=am335x-bone
36am335x-boneblack=am335x-boneblack
37am335x-boneblue=am335x-boneblue
38bcm2837-rpi-3-b=rpi3
39exynos4412-odroidx=exynos4
40exynos5250-arndale=exynos5250
41exynos5410-odroidxu=exynos5410
42exynos5422-odroidxu4=exynos5422
43imx6q-sabrelite=sabre
44imx6q-wandboard-revd1=wandq
45imx7d-sdb=imx7sabre
46omap3-beagle=omap3
47qcom-apq8064-ifc6410=apq8064
48sun7i-a20-cubietruck=allwinnera20
49tegra124-jetson-tk1=tk1
50zynq-zc706=zynq7000
51"
52
53ARM64_DTBS="
54amlogic/meson-sm1-odroid-c4=odroidc4
55amlogic/meson-gxbb-odroidc2=odroidc2
56hisilicon/hi6220-hikey=hikey
57nvidia/tegra210-p2371-2180=tx1
58xilinx/avnet-ultra96-rev1=ultra96
59xilinx/zynqmp-zcu102-rev1.0=zynqmp
60freescale/fsl-imx8mq-evk=imx8mq-evk
61freescale/fsl-imx8mm-evk=imx8mm-evk
62rockchip/rk3399-rockpro64=rockpro64
63broadcom/bcm2711-rpi-4-b=rpi4
64"
65
66extract_dts() {
67    dtb=`echo $1| sed 's/=.*$//'`
68    platform=`echo $1| sed 's/^.*=//'`
69    echo "'$dtb'" = "'$platform'"
70    dtc -I dtb -O dts -o $2/$platform.dts.tmp $3/$dtb.dtb
71    echo "$LICENSE" > $2/$platform.dts
72    cat $2/$platform.dts.tmp >> $2/$platform.dts
73    rm $2/$platform.dts.tmp
74}
75
76for entry in $ARM_DTBS; do
77    extract_dts $entry $destdir arch/arm/boot/dts
78done
79
80for entry in $ARM64_DTBS; do
81    extract_dts $entry $destdir arch/arm64/boot/dts
82done
83