mirror of https://github.com/hak5/openwrt.git
brcm2708: add device detection and use it for network, leds and preinit
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> SVN-Revision: 47572lede-17.01
parent
deff5fb6c8
commit
cd9d0ee0d0
|
@ -0,0 +1,3 @@
|
||||||
|
define Package/base-files/install-target
|
||||||
|
rm -f $(1)/etc/config/network
|
||||||
|
endef
|
|
@ -0,0 +1,25 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Copyright (C) 2014-2015 OpenWrt.org
|
||||||
|
|
||||||
|
. /lib/functions/uci-defaults-new.sh
|
||||||
|
. /lib/brcm2708.sh
|
||||||
|
. /lib/functions.sh
|
||||||
|
. /lib/functions/system.sh
|
||||||
|
|
||||||
|
board_config_update
|
||||||
|
|
||||||
|
ucidef_set_interface_loopback
|
||||||
|
|
||||||
|
board=$(brcm2708_board_name)
|
||||||
|
|
||||||
|
case "$board" in
|
||||||
|
rpi-b |\
|
||||||
|
rpi-b-plus |\
|
||||||
|
rpi-2-b)
|
||||||
|
ucidef_set_interface_lan "eth0"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
board_config_flush
|
||||||
|
|
||||||
|
exit 0
|
|
@ -4,9 +4,19 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
. /lib/functions/leds.sh
|
. /lib/functions/leds.sh
|
||||||
|
. /lib/brcm2708.sh
|
||||||
|
|
||||||
set_state() {
|
set_state() {
|
||||||
|
case "$(brcm2708_board_name)" in
|
||||||
|
rpi-b |\
|
||||||
|
rpi-cm)
|
||||||
status_led="led0"
|
status_led="led0"
|
||||||
|
;;
|
||||||
|
rpi-b-plus |\
|
||||||
|
rpi-2-b)
|
||||||
|
status_led="led1"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
preinit)
|
preinit)
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# Copyright (C) 2014 OpenWrt.org
|
|
||||||
|
|
||||||
[ -e /etc/config/network ] && exit 0
|
|
||||||
|
|
||||||
touch /etc/config/network
|
|
||||||
|
|
||||||
. /lib/functions/uci-defaults.sh
|
|
||||||
|
|
||||||
ucidef_set_interface_loopback
|
|
||||||
ucidef_set_interface_lan "eth0"
|
|
||||||
|
|
||||||
uci commit network
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Copyright (C) 2015 OpenWrt.org
|
||||||
|
|
||||||
|
ifname=""
|
||||||
|
|
||||||
|
brcm2708_detect() {
|
||||||
|
local board_name model
|
||||||
|
|
||||||
|
model=$(cat /proc/device-tree/model)
|
||||||
|
case "$model" in
|
||||||
|
"Raspberry Pi Model B Rev"*)
|
||||||
|
board_name="rpi-b"
|
||||||
|
;;
|
||||||
|
"Raspberry Pi Model B+ Rev"*)
|
||||||
|
board_name="rpi-b-plus"
|
||||||
|
;;
|
||||||
|
"Raspberry Pi Compute Module Rev"*)
|
||||||
|
board_name="rpi-cm"
|
||||||
|
;;
|
||||||
|
"Raspberry Pi 2 Model B Rev"*)
|
||||||
|
board_name="rpi-2-b"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
board_name="unknown"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
[ -e "/tmp/sysinfo" ] || mkdir -p "/tmp/sysinfo"
|
||||||
|
|
||||||
|
echo "$board_name" > /tmp/sysinfo/board_name
|
||||||
|
echo "$model" > /tmp/sysinfo/model
|
||||||
|
}
|
||||||
|
|
||||||
|
brcm2708_board_name() {
|
||||||
|
local name
|
||||||
|
|
||||||
|
[ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
|
||||||
|
[ -n "$name" ] || name="unknown"
|
||||||
|
|
||||||
|
echo $name
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Copyright (C) 2015 OpenWrt.org
|
||||||
|
|
||||||
|
do_brcm2708() {
|
||||||
|
. /lib/brcm2708.sh
|
||||||
|
|
||||||
|
brcm2708_detect
|
||||||
|
}
|
||||||
|
|
||||||
|
boot_hook_add preinit_main do_brcm2708
|
|
@ -0,0 +1,18 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Copyright (C) 2015 OpenWrt.org
|
||||||
|
#
|
||||||
|
|
||||||
|
. /lib/brcm2708.sh
|
||||||
|
|
||||||
|
set_preinit_iface() {
|
||||||
|
case "$(brcm2708_board_name)" in
|
||||||
|
rpi-b |\
|
||||||
|
rpi-b-plus |\
|
||||||
|
rpi-2-b)
|
||||||
|
ifname=eth0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
boot_hook_add preinit_main set_preinit_iface
|
|
@ -225,7 +225,7 @@ CONFIG_KERNEL_GZIP=y
|
||||||
# CONFIG_KERNEL_XZ is not set
|
# CONFIG_KERNEL_XZ is not set
|
||||||
# CONFIG_LCD_CLASS_DEVICE is not set
|
# CONFIG_LCD_CLASS_DEVICE is not set
|
||||||
CONFIG_LEDS_GPIO=y
|
CONFIG_LEDS_GPIO=y
|
||||||
# CONFIG_LEDS_TRIGGER_INPUT is not set
|
CONFIG_LEDS_TRIGGER_INPUT=y
|
||||||
CONFIG_LIBFDT=y
|
CONFIG_LIBFDT=y
|
||||||
CONFIG_LOGO=y
|
CONFIG_LOGO=y
|
||||||
CONFIG_LOGO_LINUX_CLUT224=y
|
CONFIG_LOGO_LINUX_CLUT224=y
|
||||||
|
|
|
@ -237,7 +237,7 @@ CONFIG_KERNEL_GZIP=y
|
||||||
# CONFIG_KERNEL_XZ is not set
|
# CONFIG_KERNEL_XZ is not set
|
||||||
# CONFIG_LCD_CLASS_DEVICE is not set
|
# CONFIG_LCD_CLASS_DEVICE is not set
|
||||||
CONFIG_LEDS_GPIO=y
|
CONFIG_LEDS_GPIO=y
|
||||||
# CONFIG_LEDS_TRIGGER_INPUT is not set
|
CONFIG_LEDS_TRIGGER_INPUT=y
|
||||||
CONFIG_LIBFDT=y
|
CONFIG_LIBFDT=y
|
||||||
CONFIG_LOCK_SPIN_ON_OWNER=y
|
CONFIG_LOCK_SPIN_ON_OWNER=y
|
||||||
CONFIG_LOGO=y
|
CONFIG_LOGO=y
|
||||||
|
|
Loading…
Reference in New Issue