Initial commit
This commit is contained in:
114
target/linux/imx6/base-files/lib/imx6.sh
Executable file
114
target/linux/imx6/base-files/lib/imx6.sh
Executable file
@@ -0,0 +1,114 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2010-2013 OpenWrt.org
|
||||
#
|
||||
|
||||
IMX6_BOARD_NAME=
|
||||
IMX6_MODEL=
|
||||
|
||||
rootpartuuid() {
|
||||
local cmdline=$(cat /proc/cmdline)
|
||||
local bootpart=${cmdline##*root=}
|
||||
bootpart=${bootpart%% *}
|
||||
local uuid=${bootpart#PARTUUID=}
|
||||
echo ${uuid%-02}
|
||||
}
|
||||
|
||||
bootdev_from_uuid() {
|
||||
blkid | grep "PTUUID=\"$(rootpartuuid)\"" | cut -d : -f1
|
||||
}
|
||||
|
||||
bootpart_from_uuid() {
|
||||
blkid | grep $(rootpartuuid)-01 | cut -d : -f1
|
||||
}
|
||||
|
||||
rootpart_from_uuid() {
|
||||
blkid | grep $(rootpartuuid)-02 | cut -d : -f1
|
||||
}
|
||||
|
||||
apalis_mount_boot() {
|
||||
mkdir -p /boot
|
||||
[ -f /boot/uImage ] || {
|
||||
mount -o rw,noatime $(bootpart_from_uuid) /boot > /dev/null
|
||||
}
|
||||
}
|
||||
|
||||
imx6_board_detect() {
|
||||
local machine
|
||||
local name
|
||||
|
||||
machine=$(cat /proc/device-tree/model)
|
||||
|
||||
case "$machine" in
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW51XX" |\
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW51XX")
|
||||
name="gw51xx"
|
||||
;;
|
||||
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW52XX" |\
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW52XX")
|
||||
name="gw52xx"
|
||||
;;
|
||||
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW53XX" |\
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW53XX")
|
||||
name="gw53xx"
|
||||
;;
|
||||
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW54XX" |\
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW54XX" |\
|
||||
"Gateworks Ventana GW5400-A")
|
||||
name="gw54xx"
|
||||
;;
|
||||
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW551X" |\
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW551X")
|
||||
name="gw551x"
|
||||
;;
|
||||
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW552X" |\
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW552X")
|
||||
name="gw552x"
|
||||
;;
|
||||
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW553X" |\
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW553X")
|
||||
name="gw553x"
|
||||
;;
|
||||
|
||||
"Gateworks Ventana i.MX6 DualLite/Solo GW5904" |\
|
||||
"Gateworks Ventana i.MX6 Dual/Quad GW5904")
|
||||
name="gw5904"
|
||||
;;
|
||||
|
||||
"SolidRun Cubox-i Solo/DualLite" |\
|
||||
"SolidRun Cubox-i Dual/Quad")
|
||||
name="cubox-i"
|
||||
;;
|
||||
|
||||
"Toradex Apalis iMX6Q/D Module on Ixora Carrier Board" |\
|
||||
"Toradex Apalis iMX6Q/D Module on Ixora Carrier Board V1.1")
|
||||
name="apalis,ixora"
|
||||
;;
|
||||
|
||||
"Toradex Apalis iMX6Q/D Module on Apalis Evaluation Board")
|
||||
name="apalis,eval"
|
||||
;;
|
||||
|
||||
"Wandboard i.MX6 Dual Lite Board")
|
||||
name="wandboard"
|
||||
;;
|
||||
|
||||
*)
|
||||
name="generic"
|
||||
;;
|
||||
esac
|
||||
|
||||
[ -z "$IMX6_BOARD_NAME" ] && IMX6_BOARD_NAME="$name"
|
||||
[ -z "$IMX6_MODEL" ] && IMX6_MODEL="$machine"
|
||||
|
||||
[ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
|
||||
|
||||
echo "$IMX6_BOARD_NAME" > /tmp/sysinfo/board_name
|
||||
echo "$IMX6_MODEL" > /tmp/sysinfo/model
|
||||
}
|
||||
9
target/linux/imx6/base-files/lib/preinit/01_sysinfo
Normal file
9
target/linux/imx6/base-files/lib/preinit/01_sysinfo
Normal file
@@ -0,0 +1,9 @@
|
||||
#!/bin/sh
|
||||
|
||||
do_sysinfo_imx6() {
|
||||
. /lib/imx6.sh
|
||||
|
||||
imx6_board_detect
|
||||
}
|
||||
|
||||
boot_hook_add preinit_main do_sysinfo_imx6
|
||||
21
target/linux/imx6/base-files/lib/preinit/79_move_config
Normal file
21
target/linux/imx6/base-files/lib/preinit/79_move_config
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /lib/imx6.sh
|
||||
. /lib/functions.sh
|
||||
. /lib/upgrade/common.sh
|
||||
|
||||
move_config() {
|
||||
local board=$(board_name)
|
||||
|
||||
case "$board" in
|
||||
apalis*)
|
||||
if [ -b $(bootpart_from_uuid) ]; then
|
||||
apalis_mount_boot
|
||||
[ -f "/boot/$BACKUP_FILE" ] && mv -f "/boot/$BACKUP_FILE" /
|
||||
umount /boot
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
boot_hook_add preinit_mount_root move_config
|
||||
87
target/linux/imx6/base-files/lib/upgrade/platform.sh
Executable file
87
target/linux/imx6/base-files/lib/upgrade/platform.sh
Executable file
@@ -0,0 +1,87 @@
|
||||
#
|
||||
# Copyright (C) 2010-2015 OpenWrt.org
|
||||
#
|
||||
|
||||
. /lib/imx6.sh
|
||||
|
||||
RAMFS_COPY_BIN='blkid'
|
||||
|
||||
enable_image_metadata_check() {
|
||||
case "$(board_name)" in
|
||||
apalis*)
|
||||
REQUIRE_IMAGE_METADATA=1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
enable_image_metadata_check
|
||||
|
||||
apalis_copy_config() {
|
||||
apalis_mount_boot
|
||||
cp -af "$UPGRADE_BACKUP" "/boot/$BACKUP_FILE"
|
||||
sync
|
||||
umount /boot
|
||||
}
|
||||
|
||||
apalis_do_upgrade() {
|
||||
local board_name=$(board_name)
|
||||
board_name=${board_name/,/_}
|
||||
|
||||
apalis_mount_boot
|
||||
get_image "$1" | tar Oxf - sysupgrade-${board_name}/kernel > /boot/uImage
|
||||
get_image "$1" | tar Oxf - sysupgrade-${board_name}/root > $(rootpart_from_uuid)
|
||||
sync
|
||||
umount /boot
|
||||
}
|
||||
|
||||
platform_check_image() {
|
||||
local board=$(board_name)
|
||||
|
||||
case "$board" in
|
||||
apalis*)
|
||||
return 0
|
||||
;;
|
||||
*gw5*)
|
||||
nand_do_platform_check $board $1
|
||||
return $?;
|
||||
;;
|
||||
esac
|
||||
|
||||
echo "Sysupgrade is not yet supported on $board."
|
||||
return 1
|
||||
}
|
||||
|
||||
platform_do_upgrade() {
|
||||
local board=$(board_name)
|
||||
|
||||
case "$board" in
|
||||
apalis*)
|
||||
apalis_do_upgrade "$1"
|
||||
;;
|
||||
*gw5*)
|
||||
nand_do_upgrade "$1"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
platform_copy_config() {
|
||||
local board=$(board_name)
|
||||
|
||||
case "$board" in
|
||||
apalis*)
|
||||
apalis_copy_config
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
platform_pre_upgrade() {
|
||||
local board=$(board_name)
|
||||
|
||||
case "$board" in
|
||||
apalis*)
|
||||
[ -z "$UPGRADE_BACKUP" ] && {
|
||||
jffs2reset -y
|
||||
umount /overlay
|
||||
}
|
||||
;;
|
||||
esac
|
||||
}
|
||||
Reference in New Issue
Block a user