brcm2708: add board detection and LED support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 44447
master
John Crispin 10 years ago
parent eea462106f
commit dc72499b53
  1. 25
      target/linux/brcm2708/base-files/etc/diag.sh
  2. 11
      target/linux/brcm2708/base-files/etc/uci-defaults/01_leds
  3. 36
      target/linux/brcm2708/base-files/lib/brcm2708.sh
  4. 9
      target/linux/brcm2708/base-files/lib/preinit/03_preinit_do_brcm2708.sh
  5. 2
      target/linux/brcm2708/config-3.18

@ -0,0 +1,25 @@
#!/bin/sh
#
# Copyright (C) 2015 OpenWrt.org
#
. /lib/functions/leds.sh
set_state() {
status_led="led0"
case "$1" in
preinit)
status_led_blink_preinit
;;
failsafe)
status_led_blink_failsafe
;;
preinit_regular)
status_led_blink_preinit_regular
;;
done)
status_led_on
;;
esac
}

@ -0,0 +1,11 @@
#!/bin/sh
#
# Copyright (C) 2015 OpenWrt.org
#
. /lib/functions/uci-defaults.sh
ucidef_set_led_mmc "mmc" "MMC" "led0" "mmc0"
ucidef_commit_leds
exit 0

@ -0,0 +1,36 @@
#!/bin/sh
#
# Copyright (C) 2015 OpenWrt.org
#
brcm2708_board_detect() {
local machine
local name
machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /Hardware/ {print $2}' /proc/cpuinfo)
case "$machine" in
BCM2708)
name="Raspberry Pi"
;;
BCM2709)
name="Raspberry Pi 2"
;;
esac
[ -z "$name" ] && name="unknown"
[ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
echo "$machine" > /tmp/sysinfo/board_name
echo "$name" > /tmp/sysinfo/model
}
brcm2708_board_name() {
local name
[ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
[ -z "$name" ] && name="unknown"
echo "$name"
}

@ -0,0 +1,9 @@
#!/bin/sh
do_brcm2708() {
. /lib/brcm2708.sh
brcm2708_board_detect
}
boot_hook_add preinit_main do_brcm2708

@ -175,9 +175,7 @@ CONFIG_KTIME_SCALAR=y
# CONFIG_LCD_TDO24M is not set # CONFIG_LCD_TDO24M is not set
# CONFIG_LCD_VGG2432A4 is not set # CONFIG_LCD_VGG2432A4 is not set
CONFIG_LEDS_GPIO=y CONFIG_LEDS_GPIO=y
# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
# CONFIG_LEDS_TRIGGER_INPUT is not set # CONFIG_LEDS_TRIGGER_INPUT is not set
# CONFIG_LEDS_TRIGGER_TIMER is not set
CONFIG_LOGO=y CONFIG_LOGO=y
CONFIG_LOGO_LINUX_CLUT224=y CONFIG_LOGO_LINUX_CLUT224=y
# CONFIG_LOGO_LINUX_MONO is not set # CONFIG_LOGO_LINUX_MONO is not set

Loading…
Cancel
Save