sunxi: use fwtool for checking sdcard images
authorYousong Zhou <yszhou4tech@gmail.com>
Wed, 4 Jan 2017 14:19:30 +0000 (22:19 +0800)
committerFelix Fietkau <nbd@nbd.name>
Thu, 5 Jan 2017 10:09:15 +0000 (11:09 +0100)
To achieve this, device tree compatible string was used as boardname and
the value of it will be checked against supported_devices list.

It should be noted that we do not distinguish between
sun5i-a13-olimex-som and sun5i-a13-olinuxino as they share the same dts
file.

The other thing is that we need to gunzip the generated firmware to do
fwtool check.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
target/linux/sunxi/base-files/etc/board.d/02_network
target/linux/sunxi/base-files/lib/preinit/01_preinit_sunxi.sh [deleted file]
target/linux/sunxi/base-files/lib/preinit/02_b53_hack.sh
target/linux/sunxi/base-files/lib/sunxi.sh
target/linux/sunxi/image/Makefile

index 74fa2a0e6d3a39ab5220ec1425c1afeeeed5e920..2b18748c6f08fcfbd57b12de626396b7591b82a5 100755 (executable)
@@ -9,10 +9,10 @@
 board_config_update
 
 case "$( sunxi_board_name )" in
-"olinuxino-micro"*)
+"olimex,a20-olinuxino-micro")
        ucidef_set_interface_lan 'wlan0'
        ;;
-"lamobo-r1")
+"lamobo,lamobo-r1")
        ucidef_add_switch "switch0" \
                "4:lan:1" "0:lan:2" "1:lan:3" "2:lan:4" "3:wan" "8@eth0"
        ;;
diff --git a/target/linux/sunxi/base-files/lib/preinit/01_preinit_sunxi.sh b/target/linux/sunxi/base-files/lib/preinit/01_preinit_sunxi.sh
deleted file mode 100644 (file)
index f221dbc..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-do_sunxi() {
-        . /lib/sunxi.sh
-
-        sunxi_board_detect
-}
-
-boot_hook_add preinit_main do_sunxi
index 84070de3eb9e99706d26776cf7ef1b3bb7408ae9..7f508ff918e0fc7576591434d1f1012b0d4df4a6 100644 (file)
@@ -4,7 +4,7 @@
 do_b53_hack() {
        # hack: enable switch on Lamobo R1 and reset counters
        case "$( sunxi_board_name )" in
-       "lamobo-r1")
+       "lamobo,lamobo-r1")
                ifconfig eth0 up
                sleep 1
                swconfig dev switch0 set reset 1
index ce1292b5fd4c3ae372150f2f2f600756f2ba7cd3..dbb27feea0ca13ebf1d00b23ca5d5f9e98722252 100644 (file)
@@ -1,145 +1,5 @@
 #!/bin/sh
 
-# defaults
-SUNXI_BOARD_NAME="generic"
-SUNXI_BOARD_MODEL="Generic sunxi board"
-
-sunxi_board_detect() {
-       local board
-       local model
-
-       [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
-
-       model="$( cat /proc/device-tree/model )"
-
-       case "$model" in
-               "Mele A1000")
-                       board="a1000"
-                       ;;
-
-               "BA10 tvbox")
-                       board="ba10-tvbox"
-                       ;;
-
-               "Cubietech Cubieboard")
-                       board="cubieboard"
-                       ;;
-
-               "Miniand Hackberry")
-                       board="hackberry"
-                       ;;
-
-               "INet-97F Rev 02")
-                       board="inet97fv2"
-                       ;;
-
-               "PineRiver Mini X-Plus")
-                       board="mini-xplus"
-                       ;;
-
-               "Olimex A10-OLinuXino-LIME")
-                       board="olinuxino-lime"
-                       ;;
-
-               "LinkSprite pcDuino")
-                       board="pcduino"
-                       ;;
-
-               "Olimex A10s-Olinuxino Micro")
-                       board="olinuxino-micro"
-                       ;;
-
-               "R7 A10s hdmi tv-stick")
-                       board="r7-tv-dongle"
-                       ;;
-
-               "HSG H702")
-                       board="hsg-h702"
-                       ;;
-
-               "Olimex A13-Olinuxino")
-                       board="olinuxino"
-                       ;;
-
-               "Olimex A13-Olinuxino Micro")
-                       board="olinuxino-micro"
-                       ;;
-
-               "Allwinner A31 APP4 EVB1 Evaluation Board")
-                       board="app4-evb1"
-                       ;;
-
-               "WITS A31 Colombus Evaluation Board")
-                       board="colombus"
-                       ;;
-
-               "Merrii A31 Hummingbird")
-                       board="hummingbird"
-                       ;;
-
-               "Mele M9 / A1000G Quad top set box")
-                       board="m9"
-                       ;;
-
-               "LeMaker Banana Pi")
-                       board="bananapi"
-                       ;;
-
-               "LeMaker Banana Pro")
-                       board="bananapro"
-                       ;;
-
-               "Cubietech Cubieboard2")
-                       board="cubieboard2"
-                       ;;
-
-               "Cubietech Cubietruck")
-                       board="cubietruck"
-                       ;;
-
-               "Merrii A20 Hummingbird")
-                       board="hummingbird"
-                       ;;
-
-               "I12 / Q5 / QT840A A20 tvbox")
-                       board="i12-tvbox"
-                       ;;
-
-               "Lamobo R1")
-                       board="lamobo-r1"
-                       ;;
-
-               "Olimex A20-OLinuXino-LIME")
-                       board="olinuxino-lime"
-                       ;;
-
-               "Olimex A20-Olinuxino Micro")
-                       board="olinuxino-a20-micro"
-                       ;;
-
-               "LinkSprite pcDuino3")
-                       board="pcduino3"
-                       ;;
-
-               "Ippo Q8H Dual Core Tablet (v5)")
-                       board="ippo-q8h-v5"
-                       ;;
-       esac
-
-       if [ "$board" != "" ]; then
-               SUNXI_BOARD_NAME="$board"
-       fi
-
-       if [ "$model" != "" ]; then
-               SUNXI_BOARD_MODEL="$model"
-       fi
-
-
-       echo "$SUNXI_BOARD_NAME" > /tmp/sysinfo/board_name
-       echo "$SUNXI_BOARD_MODEL" > /tmp/sysinfo/model
-       echo "Detected $SUNXI_BOARD_NAME // $SUNXI_BOARD_MODEL"
-}
-
 sunxi_board_name() {
        local name
 
index 07beb03770f2d0425bafc50f4dce69402a48ce9e..bc696cf8bddbfcc6fb0eb4b89b95f99909422ebf 100644 (file)
@@ -37,12 +37,13 @@ define Device/Default
   KERNEL_NAME := zImage
   KERNEL := kernel-bin | uImage none
   IMAGES := sdcard.img.gz
-  IMAGE/sdcard.img.gz := sunxi-sdcard | gzip
+  IMAGE/sdcard.img.gz := sunxi-sdcard | append-metadata | gzip
 endef
 
 define Device/sun4i-a10-olinuxino-lime
   DEVICE_TITLE:=Olimex A10-OLinuXino-LIME
   DEVICE_PACKAGES:=uboot-sunxi-A10-OLinuXino-Lime kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
+  SUPPORTED_DEVICES:=olimex,a10-olinuxino-lime
   SUNXI_DTS:=sun4i-a10-olinuxino-lime
   SUNXI_UBOOT:=A10-OLinuXino-Lime
 endef
@@ -53,6 +54,7 @@ TARGET_DEVICES += sun4i-a10-olinuxino-lime
 define Device/sun5i-a13-olimex-som
   DEVICE_TITLE:=Olimex A13 SOM
   DEVICE_PACKAGES:=uboot-sunxi-OLIMEX_A13_SOM kmod-rtl8192cu
+  SUPPORTED_DEVICES:=olimex,a13-olinuxino
   SUNXI_DTS:=sun5i-a13-olinuxino
   SUNXI_UBOOT:=OLIMEX_A13_SOM
 endef
@@ -63,6 +65,7 @@ TARGET_DEVICES += sun5i-a13-olimex-som
 define Device/sun5i-a13-olinuxino
   DEVICE_TITLE:=Olimex A13-Olinuxino
   DEVICE_PACKAGES:=uboot-sunxi-A13-OLinuXino kmod-rtl8192cu
+  SUPPORTED_DEVICES:=olimex,a13-olinuxino
   SUNXI_DTS:=sun5i-a13-olinuxino
   SUNXI_UBOOT:=A13-OLinuXino
 endef
@@ -73,6 +76,7 @@ TARGET_DEVICES += sun5i-a13-olinuxino
 define Device/sun7i-a20-olinuxino-lime
   DEVICE_TITLE:=Olimex A20-OLinuXino-LIME
   DEVICE_PACKAGES:=uboot-sunxi-A20-OLinuXino-Lime kmod-ata-core kmod-ata-sunxi kmod-rtc-sunxi
+  SUPPORTED_DEVICES:=olimex,a20-olinuxino-lime
   SUNXI_DTS:=sun7i-a20-olinuxino-lime
   SUNXI_UBOOT:=A20-OLinuXino-Lime
 endef
@@ -83,6 +87,7 @@ TARGET_DEVICES += sun7i-a20-olinuxino-lime
 define Device/sun7i-a20-olinuxino-micro
   DEVICE_TITLE:=Olimex A20-Olinuxino Micro
   DEVICE_PACKAGES:=uboot-sunxi-A20-OLinuXino_MICRO kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
+  SUPPORTED_DEVICES:=olimex,a20-olinuxino-micro
   SUNXI_DTS:=sun7i-a20-olinuxino-micro
   SUNXI_UBOOT:=A20-OLinuXino_MICRO
 endef
@@ -93,6 +98,7 @@ TARGET_DEVICES += sun7i-a20-olinuxino-micro
 define Device/sun7i-a20-bananapi
   DEVICE_TITLE:=LeMaker Banana Pi
   DEVICE_PACKAGES:=uboot-sunxi-Bananapi kmod-rtc-sunxi kmod-ata-core kmod-ata-sunxi
+  SUPPORTED_DEVICES:=lemaker,bananapi
   SUNXI_DTS:=sun7i-a20-bananapi
   SUNXI_UBOOT:=Bananapi
 endef
@@ -103,6 +109,7 @@ TARGET_DEVICES += sun7i-a20-bananapi
 define Device/sun7i-a20-bananapro
   DEVICE_TITLE:=LeMaker Banana Pro
   DEVICE_PACKAGES:=uboot-sunxi-Bananapro kmod-rtc-sunxi kmod-ata-core kmod-ata-sunxi kmod-brcmfmac
+  SUPPORTED_DEVICES:=lemaker,bananapro
   SUNXI_DTS:=sun7i-a20-bananapro
   SUNXI_UBOOT:=Bananapro
 endef
@@ -113,6 +120,7 @@ TARGET_DEVICES += sun7i-a20-bananapro
 define Device/sun7i-a20-cubieboard2
   DEVICE_TITLE:=Cubietech Cubieboard2
   DEVICE_PACKAGES:=uboot-sunxi-Cubieboard2 kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
+  SUPPORTED_DEVICES:=cubietech,cubieboard2
   SUNXI_DTS:=sun7i-a20-cubieboard2
   SUNXI_UBOOT:=Cubieboard2
 endef
@@ -123,6 +131,7 @@ TARGET_DEVICES += sun7i-a20-cubieboard2
 define Device/sun4i-a10-cubieboard
   DEVICE_TITLE:=Cubietech Cubieboard
   DEVICE_PACKAGES:=uboot-sunxi-Cubieboard kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
+  SUPPORTED_DEVICES:=cubietech,a10-cubieboard
   SUNXI_DTS:=sun4i-a10-cubieboard
   SUNXI_UBOOT:=Cubieboard
 endef
@@ -133,6 +142,7 @@ TARGET_DEVICES += sun4i-a10-cubieboard
 define Device/sun7i-a20-cubietruck
   DEVICE_TITLE:=Cubietech Cubietruck
   DEVICE_PACKAGES:=uboot-sunxi-Cubietruck kmod-ata-core kmod-ata-sunxi kmod-rtc-sunxi kmod-brcmfmac
+  SUPPORTED_DEVICES:=cubietech,cubietruck
   SUNXI_DTS:=sun7i-a20-cubietruck
   SUNXI_UBOOT:=Cubietruck
 endef
@@ -143,6 +153,7 @@ TARGET_DEVICES += sun7i-a20-cubietruck
 define Device/sun7i-a20-lamobo-r1
   DEVICE_TITLE:=Lamobo R1
   DEVICE_PACKAGES:=uboot-sunxi-Lamobo_R1 kmod-ata-sunxi kmod-rtl8192cu swconfig wpad-mini
+  SUPPORTED_DEVICES:=lamobo,lamobo-r1
   SUNXI_DTS:=sun7i-a20-lamobo-r1
   SUNXI_UBOOT:=Lamobo_R1
 endef
@@ -153,6 +164,7 @@ TARGET_DEVICES += sun7i-a20-lamobo-r1
 define Device/sun6i-a31-m9
   DEVICE_TITLE:=Mele M9 top set box
   DEVICE_PACKAGES:=uboot-sunxi-Mele_M9 kmod-sun4i-emac kmod-rtc-sunxi kmod-rtl8192cu
+  SUPPORTED_DEVICES:=mele,m9
   SUNXI_DTS:=sun6i-a31-m9
   SUNXI_UBOOT:=Mele_M9
 endef
@@ -163,6 +175,7 @@ TARGET_DEVICES += sun6i-a31-m9
 define Device/sun8i-h3-orangepi-plus
   DEVICE_TITLE:=Xunlong Orange Pi Plus
   DEVICE_PACKAGES:=kmod-rtc-sunxi uboot-sunxi-orangepi_plus
+  SUPPORTED_DEVICES:=xunlong,orangepi-plus
   SUNXI_DTS:=sun8i-h3-orangepi-plus
   SUNXI_UBOOT:=orangepi_plus
 endef
@@ -173,6 +186,7 @@ TARGET_DEVICES += sun8i-h3-orangepi-plus
 define Device/sun7i-a20-pcduino3
   DEVICE_TITLE:=LinkSprite pcDuino3
   DEVICE_PACKAGES:=uboot-sunxi-Linksprite_pcDuino3 kmod-sun4i-emac kmod-rtc-sunxi kmod-ata-core kmod-ata-sunxi kmod-rtl8xxxu rtl8188eu-firmware
+  SUPPORTED_DEVICES:=linksprite,pcduino3
   SUNXI_DTS:=sun7i-a20-pcduino3
   SUNXI_UBOOT:=Linksprite_pcDuino3
 endef
@@ -183,6 +197,7 @@ TARGET_DEVICES += sun7i-a20-pcduino3
 define Device/sun4i-a10-pcduino
   DEVICE_TITLE:=LinkSprite pcDuino
   DEVICE_PACKAGES:=uboot-sunxi-Linksprite_pcDuino kmod-sun4i-emac kmod-rtc-sunxi kmod-rtl8192cu
+  SUPPORTED_DEVICES:=linksprite,a10-pcduino
   SUNXI_DTS:=sun4i-a10-pcduino
   SUNXI_UBOOT:=Linksprite_pcDuino
 endef