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,55 @@
#!/bin/sh
#
# Copyright (C) 2014-2016 OpenWrt.org
# Copyright (C) 2016 LEDE-Project.org
#
. /lib/functions/uci-defaults.sh
board_config_update
board=$(board_name)
case "$board" in
linksys,caiman)
ucidef_set_led_netdev "wan" "WAN" "pca963x:caiman:white:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "pca963x:caiman:white:usb2" "usb1-port1"
ucidef_set_led_usbport "usb2" "USB 2" "pca963x:caiman:white:usb3_1" "usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "pca963x:caiman:white:usb3_2" "usb3-port1"
;;
linksys,cobra)
ucidef_set_led_netdev "wan" "WAN" "pca963x:cobra:white:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "pca963x:cobra:white:usb2" "usb1-port1"
ucidef_set_led_usbport "usb2" "USB 2" "pca963x:cobra:white:usb3_1" "usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "pca963x:cobra:white:usb3_2" "usb3-port1"
;;
linksys,mamba)
ucidef_set_led_netdev "wan" "WAN" "mamba:white:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "mamba:white:usb2" "usb1-port1"
ucidef_set_led_usbport "usb2" "USB 2" "mamba:white:usb3_1" "usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "mamba:white:usb3_2" "usb3-port2"
;;
linksys,rango)
ucidef_set_led_netdev "wan" "WAN" "pca963x:rango:white:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "pca963x:rango:white:usb2" "usb1-port1"
ucidef_set_led_usbport "usb2" "USB 2" "pca963x:rango:white:usb3_1" "usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "pca963x:rango:white:usb3_2" "usb3-port1"
;;
linksys,shelby)
ucidef_set_led_netdev "wan" "WAN" "pca963x:shelby:white:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "pca963x:shelby:white:usb2" "usb1-port1"
ucidef_set_led_usbport "usb2" "USB 2" "pca963x:shelby:white:usb3_1" "usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "pca963x:shelby:white:usb3_2" "usb3-port1"
;;
linksys,venom)
ucidef_set_led_netdev "wan" "WAN" "pca963x:venom:blue:wan" "eth1"
ucidef_set_led_usbport "usb1" "USB 1" "pca963x:venom:blue:usb2" "usb1-port1"
ucidef_set_led_usbport "usb2" "USB 2" "pca963x:venom:blue:usb3_1" "usb2-port1" "usb3-port1"
ucidef_set_led_usbport "usb2_ss" "USB 2 SS" "pca963x:venom:blue:usb3_2" "usb3-port1"
;;
esac
board_config_flush
exit 0

View File

@@ -0,0 +1,71 @@
#!/bin/sh
#
# Copyright (C) 2014-2016 OpenWrt.org
# Copyright (C) 2016 LEDE-Project.org
#
. /lib/functions/uci-defaults.sh
board_config_update
board=$(board_name)
case "$board" in
cznic,turris-omnia)
ucidef_set_interface_lan "lan0 lan1 lan2 lan3 lan4"
ucidef_set_interface_wan "eth2"
;;
globalscale,espressobin|\
globalscale,espressobin-emmc|\
globalscale,espressobin-v7|\
globalscale,espressobin-v7-emmc)
ucidef_set_interfaces_lan_wan "lan0 lan1" "wan"
;;
linksys,caiman|\
linksys,cobra|\
linksys,mamba|\
linksys,rango|\
linksys,shelby|\
linksys,venom)
ucidef_set_interfaces_lan_wan "eth0.1" "eth1.2"
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5@eth0" "4:wan" "6@eth1"
;;
marvell,a385-db-ap)
ucidef_set_interfaces_lan_wan "eth0 eth1" "eth2"
;;
marvell,armada8040-mcbin)
ucidef_set_interfaces_lan_wan "eth0 eth1 eth3" "eth2"
;;
marvell,armada8040-db)
ucidef_set_interfaces_lan_wan "eth0 eth2 eth3" "eth1"
;;
marvell,armada7040-db)
ucidef_set_interfaces_lan_wan "eth0 eth2" "eth1"
;;
marvell,armada-3720-db)
ucidef_set_interfaces_lan_wan "eth1" "eth0"
;;
marvell,axp-gp)
ucidef_set_interface_lan "eth0 eth1 eth2 eth3"
;;
solidrun,clearfog*a1)
# eth2 is standalone ethernet
# eth0 is switch (-pro) or standalone ethernet (-base)
# eth1 is SFP
ucidef_set_interfaces_lan_wan "eth0" "eth2 eth1"
# if switch exists (clearfog-pro)
# switch port 5 is connected to eth0
swconfig list 2>&1 | grep -q switch0 && \
ucidef_add_switch "switch0" \
"0:lan:5" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5u@eth0" "6:lan:6"
;;
*)
ucidef_set_interface_lan "eth0"
;;
esac
board_config_flush
exit 0

View File

@@ -0,0 +1,48 @@
#!/bin/sh
# Copyright (C) 2014-2016 OpenWrt.org
# Copyright (C) 2016 LEDE-Project.org
. /lib/functions.sh
. /lib/functions/leds.sh
get_status_led() {
case $(board_name) in
linksys,caiman)
status_led="caiman:white:power"
;;
linksys,cobra)
status_led="cobra:white:power"
;;
linksys,mamba)
status_led="mamba:white:power"
;;
linksys,rango)
status_led="rango:white:power"
;;
linksys,shelby)
status_led="shelby:white:power"
;;
linksys,venom)
status_led="venom:blue:power"
;;
esac
}
set_state() {
get_status_led
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
}

View File

@@ -0,0 +1,41 @@
#!/bin/sh
# The pcie-controller device was renamed to pcie in Linux kernel 4.14
# commit 28fbb9c539e2 ("ARM: dts: marvell: fix PCI bus dtc warnings").
# This script migrates the path in the UCI configuration from the old
# name to the new name and also back, when am upgrade or downgrade is
# done. It checks if the name exists before changing the configuration.
# This has to be done before the 10-wifi-detect script from mac80211 is
# executed because this would add the devices again under the new path
# name.
. /lib/functions.sh
PATH_CHANGED=0
rename_wifi_path() {
local path_old=$(uci get wireless.${1}.path)
local path_new=$(echo ${path_old} | sed "${2}")
if [ -e "/sys/devices/platform/${path_new}" ] && [ ${path_old} != ${path_new} ]
then
uci set wireless.${1}.path=${path_new}
PATH_CHANGED=1
fi
}
rename_wifi_path_list() {
# migration from kernel 4.9 to 4.14
rename_wifi_path $1 "s/soc:pcie-controller/soc:pcie/"
# migration from kernel 4.14 to 4.9
rename_wifi_path $1 "s/soc:pcie/soc:pcie-controller/"
}
[ "${ACTION}" = "add" ] && {
[ ! -e /etc/config/wireless ] && return
config_load wireless
config_foreach rename_wifi_path_list wifi-device
[ "$PATH_CHANGED" = "1" ] && uci commit wireless
}

View File

@@ -0,0 +1,18 @@
#!/bin/sh /etc/rc.common
START=99
start() {
. /lib/functions.sh
case $(board_name) in
linksys,caiman |\
linksys,cobra |\
linksys,mamba |\
linksys,rango |\
linksys,shelby |\
linksys,venom)
mtd resetbc s_env || true
;;
esac
}

View File

@@ -0,0 +1,56 @@
#!/bin/sh
#
# Copyright (C) 2015 OpenWrt.org
#
[ ! -e /etc/config/wireless ] && exit 0
. /lib/functions.sh
. /lib/functions/system.sh
board=$(board_name)
case "$board" in
linksys,caiman|linksys,cobra|linksys,mamba|linksys,shelby|linksys,venom)
SKU=$(strings /dev/mtd3|sed -ne 's/^cert_region=//p')
WIFIMAC2G=$(macaddr_add $(cat /sys/class/net/eth0/address) +1)
WIFIMAC5G=$(macaddr_add $WIFIMAC2G +1)
case "$SKU" in
AP)
REGD=CN
;;
AU)
REGD=AU
;;
CA)
REGD=CA
;;
EU)
REGD=FR
;;
US)
REGD=US
;;
esac
case "$board" in
linksys,mamba)
WIFIMAC0=$WIFIMAC2G
WIFIMAC1=$WIFIMAC5G
;;
*)
WIFIMAC0=$WIFIMAC5G
WIFIMAC1=$WIFIMAC2G
;;
esac
uci get wireless.radio0.country || uci set wireless.radio0.country=$REGD
uci get wireless.@wifi-iface[0].macaddr || uci set wireless.@wifi-iface[0].macaddr=$WIFIMAC0
uci get wireless.radio1.country || uci set wireless.radio1.country=$REGD
uci get wireless.@wifi-iface[1].macaddr || uci set wireless.@wifi-iface[1].macaddr=$WIFIMAC1
;;
esac
uci commit wireless
exit 0

View File

@@ -0,0 +1,23 @@
#!/bin/sh
#
# Copyright (C) 2017 LEDE-Project.org
#
. /lib/functions.sh
board=$(board_name)
case "$board" in
linksys,mamba)
# Set fan script execution in crontab
grep -s -q fan_ctrl.sh /etc/crontabs/root && exit 0
echo "# mamba fan script runs every 5 minutes" >> /etc/crontabs/root
echo "*/5 * * * * /sbin/fan_ctrl.sh" >> /etc/crontabs/root
# Execute one time after initial flash (instead of waiting 5 min for cron)
/sbin/fan_ctrl.sh
;;
esac
exit 0

View File

@@ -0,0 +1,44 @@
# This must be sourced after 30_uboot-envtools
. /lib/functions.sh
board=$(board_name)
case "$board" in
cznic,turris-omnia)
# Do nothing if this is not the old U-Boot
grep -q 'U-Boot 2015.10-rc2' /dev/mtd0 || exit 0
# Do nothing if we already have distro_bootcmd
fw_printenv distro_bootcmd >/dev/null 2>/dev/null && exit 0
# Set the complete environment, since U-Boot does not merge the default environment from its own image!
fw_setenv -s - <<-"EOF"
baudrate 115200
bootdelay 3
ethact neta2
fdt_high 0x10000000
initrd_high 0x10000000
bootargs earlyprintk console=ttyS0,115200 rootfstype=btrfs rootdelay=2 root=b301 rootflags=subvol=@,commit=5 rw
bootcmd i2c dev 1; i2c read 0x2a 0x9 1 0x00FFFFF0; setexpr.b rescue *0x00FFFFF0; if test $rescue -ge 1; then echo BOOT RESCUE; run rescueboot; else echo BOOT eMMC FS; run mmcboot; setenv bootargs; run distro_bootcmd; fi
rescueboot i2c mw 0x2a.1 0x3 0x1c 1; i2c mw 0x2a.1 0x4 0x1c 1; mw.l 0x01000000 0x00ff000c; i2c write 0x01000000 0x2a.1 0x5 4 -s; setenv bootargs "$bootargs omniarescue=$rescue"; sf probe; sf read 0x1000000 0x100000 0x700000; bootz 0x1000000
mmcboot btrload mmc 0 ${kernel_addr_r} boot/zImage @ && btrload mmc 0 ${fdt_addr_r} boot/dtb @ && setenv bootargs ${bootargs} cfg80211.freg=${regdomain} && bootz ${kernel_addr_r} - ${fdt_addr_r}
kernel_addr_r 0x1000000
scriptaddr 0x1800000
fdt_addr_r 0x2000000
boot_targets mmc0 scsi0
boot_prefixes / /boot/
boot_scripts boot.scr
distro_bootcmd scsi_need_init=true; for target in ${boot_targets}; do run bootcmd_${target}; done
bootcmd_mmc0 devnum=0; run mmc_boot
mmc_boot if mmc dev ${devnum}; then devtype=mmc; run scan_dev_for_boot_part; fi
bootcmd_scsi0 devnum=0; run scsi_boot
scsi_boot run scsi_init; if scsi dev ${devnum}; then devtype=scsi; run scan_dev_for_boot_part; fi
scsi_init if ${scsi_need_init}; then scsi_need_init=false; scsi scan; fi
scan_dev_for_boot_part for distro_bootpart in 1; do if fstype ${devtype} ${devnum}:${distro_bootpart} bootfstype; then run scan_dev_for_boot; fi; done
scan_dev_for_boot echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_scripts; done
scan_dev_for_scripts for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_script; echo SCRIPT FAILED: continuing...; fi; done
boot_a_script load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
EOF
;;
esac
exit 0