ipq806x: build DEVICE_DTS based on SOC and device name
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>
Sat, 21 Dec 2019 00:16:49 +0000 (01:16 +0100)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Fri, 27 Dec 2019 17:00:32 +0000 (18:00 +0100)
This patch uses the SOC variable to calculate DTS names automatically
based on the SOC and the device definition node name.

This reduces redundancy and (by having to choose DTS name
appropriately) will unify the naming of a device in different places
(image/Makefile, DTS name, compatible, image name). This is supposed
to make life easier for developers and reviewers.

Since the kernel uses a "soc-device.dts" scheme for this target, we
use this for the derivation of DEVICE_DTS, too, leaving the DTS names
unchanged for this target.

Note that for some devices the kernel itself uses inconsistent names
(DTS naming scheme vs. compatible), leaving us with a manual overwrite
of DEVICE_DTS for those cases.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/ipq806x/image/Makefile

index 81f14b4756737d78962123fddb0fbc04fc66ea4c..33f68b7a60f3550316b8bd0e60bbfe91cc662372 100644 (file)
@@ -16,6 +16,7 @@ define Device/Default
        KERNEL_INITRAMFS_PREFIX := $$(IMG_PREFIX)-$(1)-initramfs
        KERNEL_PREFIX := $$(IMAGE_PREFIX)
        KERNEL_LOADADDR = 0x42208000
+       DEVICE_DTS = $$(SOC)-$(lastword $(subst _, ,$(1)))
        SUPPORTED_DEVICES := $(subst _,$(comma),$(1))
        IMAGE/sysupgrade.bin = sysupgrade-tar | append-metadata
        IMAGE/sysupgrade.bin/squashfs :=
@@ -81,7 +82,7 @@ endef
 
 define Device/buffalo_wxr-2533dhp
        $(call Device/LegacyImage)
-       DEVICE_DTS := qcom-ipq8064-wxr-2533dhp
+       SOC := qcom-ipq8064
        DEVICE_VENDOR := Buffalo
        DEVICE_MODEL := WXR-2533DHP
        BLOCKSIZE := 128k
@@ -102,7 +103,7 @@ define Device/compex_wpq864
        DEVICE_MODEL := WPQ864
        BLOCKSIZE := 128k
        PAGESIZE := 2048
-       DEVICE_DTS := qcom-ipq8064-wpq864
+       SOC := qcom-ipq8064
        DEVICE_PACKAGES := kmod-gpio-beeper
 endef
 TARGET_DEVICES += compex_wpq864
@@ -111,7 +112,7 @@ define Device/linksys_ea8500
        $(call Device/LegacyImage)
        DEVICE_VENDOR := Linksys
        DEVICE_MODEL := EA8500
-       DEVICE_DTS := qcom-ipq8064-ea8500
+       SOC := qcom-ipq8064
        PAGESIZE := 2048
        BLOCKSIZE := 128k
        KERNEL_SIZE := 3072k
@@ -129,7 +130,7 @@ define Device/nec_wg2600hp
        $(call Device/LegacyImage)
        DEVICE_VENDOR := NEC
        DEVICE_MODEL := Aterm WG2600HP
-       DEVICE_DTS := qcom-ipq8064-wg2600hp
+       SOC := qcom-ipq8064
        BLOCKSIZE := 64k
        BOARD_NAME := wg2600hp
        IMAGES := sysupgrade.bin
@@ -142,7 +143,7 @@ define Device/netgear_d7800
        $(call Device/DniImage)
        DEVICE_VENDOR := NETGEAR
        DEVICE_MODEL := Nighthawk X4 D7800
-       DEVICE_DTS := qcom-ipq8064-d7800
+       SOC := qcom-ipq8064
        KERNEL_SIZE := 4096k
        NETGEAR_BOARD_ID := D7800
        NETGEAR_HW_ID := 29764958+0+128+512+4x4+4x4
@@ -159,7 +160,7 @@ define Device/netgear_r7500
        DEVICE_VENDOR := NETGEAR
        DEVICE_MODEL := Nighthawk X4 R7500
        DEVICE_VARIANT := v1
-       DEVICE_DTS := qcom-ipq8064-r7500
+       SOC := qcom-ipq8064
        KERNEL_SIZE := 4096k
        NETGEAR_BOARD_ID := R7500
        NETGEAR_HW_ID := 29764841+0+128+256+3x3+4x4
@@ -176,7 +177,7 @@ define Device/netgear_r7500v2
        DEVICE_VENDOR := NETGEAR
        DEVICE_MODEL := Nighthawk X4 R7500
        DEVICE_VARIANT := v2
-       DEVICE_DTS := qcom-ipq8064-r7500v2
+       SOC := qcom-ipq8064
        KERNEL_SIZE := 4096k
        NETGEAR_BOARD_ID := R7500v2
        NETGEAR_HW_ID := 29764958+0+128+512+3x3+4x4
@@ -192,7 +193,7 @@ define Device/netgear_r7800
        $(call Device/DniImage)
        DEVICE_VENDOR := NETGEAR
        DEVICE_MODEL := Nighthawk X4S R7800
-       DEVICE_DTS := qcom-ipq8065-r7800
+       SOC := qcom-ipq8065
        KERNEL_SIZE := 4096k
        NETGEAR_BOARD_ID := R7800
        NETGEAR_HW_ID := 29764958+0+128+512+4x4+4x4+cascade
@@ -210,6 +211,7 @@ define Device/qcom_ipq8064-ap148
        DEVICE_VENDOR := Qualcomm
        DEVICE_MODEL := AP148
        DEVICE_VARIANT := standard
+       SOC := qcom-ipq8064
        DEVICE_DTS := qcom-ipq8064-ap148
        KERNEL_INSTALL := 1
        BLOCKSIZE := 128k
@@ -226,6 +228,7 @@ define Device/qcom_ipq8064-ap148-legacy
        DEVICE_VENDOR := Qualcomm
        DEVICE_MODEL := AP148
        DEVICE_VARIANT := legacy
+       SOC := qcom-ipq8064
        DEVICE_DTS := qcom-ipq8064-ap148
        BLOCKSIZE := 128k
        PAGESIZE := 2048
@@ -240,6 +243,7 @@ define Device/qcom_ipq8064-ap161
        $(call Device/UbiFit)
        DEVICE_VENDOR := Qualcomm
        DEVICE_MODEL := AP161
+       SOC := qcom-ipq8064
        DEVICE_DTS := qcom-ipq8064-ap161
        KERNEL_INSTALL := 1
        BLOCKSIZE := 128k
@@ -253,6 +257,7 @@ define Device/qcom_ipq8064-db149
        $(call Device/FitImage)
        DEVICE_VENDOR := Qualcomm
        DEVICE_MODEL := DB149
+       SOC := qcom-ipq8064
        DEVICE_DTS := qcom-ipq8064-db149
        KERNEL_INSTALL := 1
        BOARD_NAME := db149
@@ -265,7 +270,7 @@ define Device/tplink_c2600
        DEVICE_VENDOR := TP-Link
        DEVICE_MODEL := Archer C2600
        DEVICE_VARIANT := v1
-       DEVICE_DTS := qcom-ipq8064-c2600
+       SOC := qcom-ipq8064
        BLOCKSIZE := 128k
        PAGESIZE := 2048
        BOARD_NAME := c2600
@@ -283,7 +288,7 @@ define Device/tplink_vr2600v
        KERNEL = kernel-bin | append-dtb | uImage none
        KERNEL_NAME := zImage
        KERNEL_SIZE := 3072k
-       DEVICE_DTS := qcom-ipq8064-vr2600v
+       SOC := qcom-ipq8064
        BLOCKSIZE := 128k
        PAGESIZE := 2048
        BOARD_NAME := vr2600v
@@ -297,7 +302,7 @@ TARGET_DEVICES += tplink_vr2600v
 define Device/zyxel_nbg6817
        DEVICE_VENDOR := ZyXEL
        DEVICE_MODEL := NBG6817
-       DEVICE_DTS := qcom-ipq8065-nbg6817
+       SOC := qcom-ipq8065
        KERNEL_SIZE := 4096k
        BLOCKSIZE := 64k
        BOARD_NAME := nbg6817