brcm2708: convert to dt-based board-detection

Use the values populated by the generic board detect function. The
first compatible from the device tree source file will be the board
name in userspace. The model property from the device tree source file
will be the model name.

Change the board name where used in the userspace and drop the target
specific board detect, to use the generic one.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This commit is contained in:
Christian Lamparter 2017-12-17 15:18:48 +01:00 committed by Álvaro Fernández Rojas
parent 778543dab4
commit 6f04128892
6 changed files with 20 additions and 71 deletions

View file

@ -11,13 +11,15 @@ board_config_update
board=$(board_name)
case "$board" in
rpi-2-b |\
rpi-3-b |\
rpi-b |\
rpi-b-plus)
raspberrypi,model-b |\
raspberrypi,model-b-plus |\
raspberrypi,model-b-rev2 |\
raspberrypi,2-model-b |\
raspberrypi,3-model-b)
ucidef_set_interface_lan "eth0"
;;
rpi-zero-w)
raspberrypi,model-zero-w)
ucidef_set_interface_lan "wlan0"
;;
esac

View file

@ -7,14 +7,13 @@
set_state() {
case "$(board_name)" in
rpi-2-b |\
rpi-b-plus)
raspberrypi,2-model-b |\
raspberrypi,model-b-plus)
status_led="led1"
;;
rpi-b |\
rpi-cm |\
rpi-zero |\
rpi-zero-w)
raspberrypi,model-b |\
raspberrypi,model-zero |\
raspberrypi,model-zero-w)
status_led="led0"
;;
esac

View file

@ -1,43 +0,0 @@
#!/bin/sh
# Copyright (C) 2015-2016 OpenWrt.org
# Copyright (C) 2017 LEDE project
ifname=""
brcm2708_detect() {
local board_name model
model=$(cat /proc/device-tree/model)
case "$model" in
"Raspberry Pi 2 Model B Rev"*)
board_name="rpi-2-b"
;;
"Raspberry Pi 3 Model B Rev"*)
board_name="rpi-3-b"
;;
"Raspberry Pi Compute Module Rev"*)
board_name="rpi-cm"
;;
"Raspberry Pi Model B Plus Rev"* |\
"Raspberry Pi Model B+ Rev"*)
board_name="rpi-b-plus"
;;
"Raspberry Pi Model B Rev"*)
board_name="rpi-b"
;;
"Raspberry Pi Zero Rev"*)
board_name="rpi-zero"
;;
"Raspberry Pi Zero W Rev"*)
board_name="rpi-zero-w"
;;
*)
board_name="unknown"
;;
esac
[ -e "/tmp/sysinfo" ] || mkdir -p "/tmp/sysinfo"
echo "$board_name" > /tmp/sysinfo/board_name
echo "$model" > /tmp/sysinfo/model
}

View file

@ -1,10 +0,0 @@
#!/bin/sh
# Copyright (C) 2015 OpenWrt.org
do_brcm2708() {
. /lib/brcm2708.sh
brcm2708_detect
}
boot_hook_add preinit_main do_brcm2708

View file

@ -6,10 +6,11 @@ set_preinit_iface() {
. /lib/functions.sh
case "$(board_name)" in
rpi-2-b |\
rpi-3-b |\
rpi-b |\
rpi-b-plus)
raspberrypi,2-model-b |\
raspberrypi,3-model-b |\
raspberrypi,model-b |\
raspberrypi,model-b-plus |\
raspberrypi,model-b-rev2)
ifname=eth0
;;
esac

View file

@ -57,7 +57,7 @@ endef
define Device/rpi
DEVICE_TITLE := Raspberry Pi B/B+/CM/Zero/ZeroW
DEVICE_DTS := bcm2708-rpi-b bcm2708-rpi-b-plus bcm2708-rpi-cm bcm2708-rpi-0-w
SUPPORTED_DEVICES := rpi-b rpi-b-plus rpi-cm rpi-zero-w
SUPPORTED_DEVICES := rpi-b rpi-b-plus rpi-cm rpi-zero rpi-zero-w raspberrypi,model-b raspberrypi,model-b-plus raspberrypi,compute-module-1 raspberrypi,model-b-rev2 raspberrypi,model-zero raspberrypi,model-zero-w
endef
ifeq ($(SUBTARGET),bcm2708)
TARGET_DEVICES += rpi
@ -66,7 +66,7 @@ endif
define Device/rpi-2
DEVICE_TITLE := Raspberry Pi 2B/3B/3CM
DEVICE_DTS := bcm2709-rpi-2-b bcm2710-rpi-3-b bcm2710-rpi-cm3
SUPPORTED_DEVICES := rpi-2-b rpi-3-b rpi-cm
SUPPORTED_DEVICES := rpi-2-b rpi-3-b rpi-cm raspberrypi,2-model-b raspberrypi,3-model-b raspberrypi,compute-module-3
endef
ifeq ($(SUBTARGET),bcm2709)
TARGET_DEVICES += rpi-2
@ -76,7 +76,7 @@ define Device/rpi-3
KERNEL_IMG := kernel8.img
DEVICE_TITLE := Raspberry Pi 3B (64 bit)
DEVICE_DTS := broadcom/bcm2710-rpi-3-b
SUPPORTED_DEVICES := rpi-3-b
SUPPORTED_DEVICES := rpi-3-b raspberrypi,3-model-b
endef
ifeq ($(SUBTARGET),bcm2710)
TARGET_DEVICES += rpi-3