target/linux/orion: create subtargets (closes #8154)

SVN-Revision: 23883
This commit is contained in:
Alexandros C. Couloumbis
2010-11-04 22:10:11 +00:00
parent f341342d38
commit 4ec905f3c9
9 changed files with 175 additions and 122 deletions

View File

@@ -0,0 +1,54 @@
#!/bin/sh
#
# Copyright (C) 2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
#
# This script sets system defaults for the hardware on firstboot
#
local hardware=`sed -n /Hardware/s/.*:.//p /proc/cpuinfo`
wrt350nv2_default() {
# leds
uci batch <<__EOF
set system.power_led=led
set system.power_led.name='Power LED (green)'
set system.power_led.sysfs='wrt350nv2:green:power'
set system.power_led.default='1'
set system.wifi_led=led
set system.wifi_led.name='Wireless LED (green)'
set system.wifi_led.sysfs='wrt350nv2:green:wireless'
set system.wifi_led.trigger='netdev'
set system.wifi_led.dev='wlan0'
set system.wifi_led.mode='link tx rx'
set system.wifi_led.default='0'
commit system
__EOF
# add mac address from U-Boot partition to lan and wan devices
MTD=`grep -e 'u-boot' /proc/mtd`
MTD=`echo ${MTD} | sed 's/[a-z]*\([0-9]*\):.*/\1/'`
[ -n "${MTD}" ] && {
MACADDR=`dd if=/dev/mtdblock${MTD} bs=1 skip=262048 count=6 2>/dev/null | hexdump -e '1/1 "%02x"'`
MACADDR2=$(( 0x${MACADDR} + 1))
MACADDR2=`printf "%012x" ${MACADDR2}`
MACADDR=`echo ${MACADDR} | sed 's/\(..\)/\1:/g' | sed 's/:$//'`
MACADDR2=`echo ${MACADDR2} | sed 's/\(..\)/\1:/g' | sed 's/:$//'`
uci set network.eth0.macaddr=${MACADDR}
uci set network.lan.macaddr=${MACADDR}
uci set network.wan.macaddr=${MACADDR2}
uci commit network
}
}
case "${hardware}" in
'Linksys WRT350N v2')
wrt350nv2_default
;;
esac

View File

@@ -0,0 +1,31 @@
# use default "image" for PART_NAME
# use default for platform_do_upgrade()
platform_check_image() {
[ "${ARGC}" -gt 1 ] && { echo 'Too many arguments. Only flash file expected.'; return 1; }
local hardware=`sed -n /Hardware/s/.*:.//p /proc/cpuinfo`
local magic="$(get_magic_word "$1")"
case "${hardware}" in
# hardware with padded uImage + padded rootfs
'Linksys WRT350N v2')
[ "${magic}" != '2705' ] && {
echo "Invalid image type ${magic}."
return 1
}
return 0
;;
# Netgear WNR854T has extra header before uImage
'Netgear WNR854T')
[ "${magic}" != '8519' ] && {
echo "Invalid image type ${magic}."
return 1
}
return 0
;;
esac
echo "Sysupgrade is not yet supported on ${hardware}."
return 1
}

View File

@@ -1,6 +1,16 @@
#
# Copyright (C) 2008-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
BOARDNAME:=Generic
FEATURES:=squashfs jffs2
DEFAULT_PACKAGES += kmod-ath9k wpad-mini
define Target/Description
Build firmware images for orion based boards that boot from internal flash
Build firmware images for Marvell Orion based boards that boot from internal flash.
(e.g.: Linksys WRT350N v2, Netgear WNR854T, ...)
endef