ltq-vdsl-app: load the vrx200 firmware or patch it
This checks for the VRX firmware provided in the OpenWrt package. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 48940
This commit is contained in:
parent
8b41bb6648
commit
a937e160c8
2 changed files with 43 additions and 1 deletions
|
@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
|
||||||
|
|
||||||
PKG_NAME:=ltq-vdsl-app
|
PKG_NAME:=ltq-vdsl-app
|
||||||
PKG_VERSION:=4.16.6.3
|
PKG_VERSION:=4.16.6.3
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=2
|
||||||
PKG_BASE_NAME:=dsl_cpe_control
|
PKG_BASE_NAME:=dsl_cpe_control
|
||||||
PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
|
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
|
||||||
|
|
|
@ -153,6 +153,48 @@ start_service() {
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
if [ -z "${firmware}" ]; then
|
||||||
|
# search for the firmware provided by dsl-vrx200-firmware-xdsl-*
|
||||||
|
if grep -qE "system type.*: (VR9|xRX200)" /proc/cpuinfo; then
|
||||||
|
case "${annex}" in
|
||||||
|
a|l|m)
|
||||||
|
if [ -f "/lib/firmware/lantiq-vrx200-a.bin" ]; then
|
||||||
|
firmware="/lib/firmware/lantiq-vrx200-a.bin"
|
||||||
|
elif [ -f "/tmp/lantiq-vrx200-a.bin" ]; then
|
||||||
|
firmware="/tmp/lantiq-vrx200-a.bin"
|
||||||
|
elif [ -f "/lib/firmware/lantiq-vrx200-b.bin" ] && [ -f "/lib/firmware/lantiq-vrx200-b-to-a.bspatch" ]; then
|
||||||
|
bspatch /lib/firmware/lantiq-vrx200-b.bin \
|
||||||
|
/tmp/lantiq-vrx200-a.bin \
|
||||||
|
/lib/firmware/lantiq-vrx200-b-to-a.bspatch
|
||||||
|
firmware="/tmp/lantiq-vrx200-a.bin"
|
||||||
|
else
|
||||||
|
echo "firmware for annex a not found"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
b|j)
|
||||||
|
if [ -f "/lib/firmware/lantiq-vrx200-b.bin" ]; then
|
||||||
|
firmware="/lib/firmware/lantiq-vrx200-b.bin"
|
||||||
|
elif [ -f "/tmp/lantiq-vrx200-b.bin" ]; then
|
||||||
|
firmware="/tmp/lantiq-vrx200-b.bin"
|
||||||
|
elif [ -f "/lib/firmware/lantiq-vrx200-a.bin" ] && [ -f "/lib/firmware/lantiq-vrx200-a-to-b.bspatch" ]; then
|
||||||
|
bspatch /lib/firmware/lantiq-vrx200-a.bin \
|
||||||
|
/tmp/lantiq-vrx200-b.bin \
|
||||||
|
/lib/firmware/lantiq-vrx200-a-to-b.bspatch
|
||||||
|
firmware="/tmp/lantiq-vrx200-b.bin"
|
||||||
|
else
|
||||||
|
echo "firmware for annex b not found"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "annex type not supported use a or b"
|
||||||
|
return 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
[ -z "${firmware}" ] && firmware=/lib/firmware/vdsl.bin
|
[ -z "${firmware}" ] && firmware=/lib/firmware/vdsl.bin
|
||||||
[ -f "${firmware}" ] || {
|
[ -f "${firmware}" ] || {
|
||||||
echo failed to find $firmware
|
echo failed to find $firmware
|
||||||
|
|
Loading…
Reference in a new issue