Initial commit

This commit is contained in:
domenico
2025-06-24 16:03:39 +02:00
commit f3256cdaf2
6949 changed files with 1441681 additions and 0 deletions

View 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
}

View File

@@ -0,0 +1,9 @@
#!/bin/sh
do_sysinfo_imx6() {
. /lib/imx6.sh
imx6_board_detect
}
boot_hook_add preinit_main do_sysinfo_imx6

View 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

View 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
}