diff --git a/general/overlay/usr/sbin/gpio b/general/overlay/usr/sbin/gpio new file mode 100755 index 00000000..03a5de5e --- /dev/null +++ b/general/overlay/usr/sbin/gpio @@ -0,0 +1,107 @@ +#!/bin/sh + +soc=$(fw_printenv -n soc) || (>&2 echo "SOC not defined in U-Boot ENV"; exit 1) +vendor=$(fw_printenv -n vendor) || (>&2 echo "Vendor not defined in U-Boot ENV"; exit 1) +# devid=$(fw_printenv -n devid) || (>&2 echo "Device ID not defined in U-Boot ENV"; exit 1) + +case ${vendor} in + anjoy) + case ${soc} in + ssc335|ssc337|ssc337de) + gpio="ircut1=78 ircut2=79 light=61" + ;; + esac + ;; + camhi|hichip|xin) + case ${soc} in + hi3516ev200|gk7205v200) + gpio="usb_ena=-9" + ;; + hi3516ev300|gk7205v300) + gpio="ircut1=10 ircut2=11 usb_ena=-7" + ;; + hi3518ev200) + gpio="ircut1=1 ircut2=2 light=48" + ;; + esac + ;; + herospeed|longsee|cantonk) + case ${soc} in + hi3516ev200|gk7205v200) + gpio="ircut1=12 ircut2=13 irctl=4 alm_in=15 alm_out=14" + ;; + hi3518ev200) + gpio="ircut1=64 ircut2=65" + ;; + hi3516av300) + gpio="ircut1=5 ircut2=6" + ;; + esac + ;; + jabsco) + case ${soc} in + hi3516ev200|gk7205v200) + gpio="ircut1=52 ircut2=53 irstatus=9" + ;; + esac + ;; + jvt) + case ${soc} in + hi3516cv200) + gpio="ircut1=64 ircut2=65 light=62" + ;; + hi3518ev200) + gpio="ircut1=64 ircut2=65 light=47" + ;; + esac + ;; + juan|sannce) + case ${soc} in + hi3518ev200) + gpio="ircut1=65 ircut2=64 irstatus=-62" + ;; + esac + ;; + tiandy) + case ${soc} in + hi3518ev200) + gpio="ircut1=78 ircut2=79 irctl=37" + ;; + esac + ;; + uniview) + case ${soc} in + hi3516ev300|gk7205v300) + gpio="ircut1=63 ircut2=67 reset=" + ;; + esac + ;; + xm) + case ${soc} in + hi3516ev200|gk7205v200) + gpio="ircut1=8 ircut=29 irstatus=15 irctl=16 alm_in=4,53 alm_out=55 eth_act=14 eth_sta=12 reset=0" + ;; + hi3516ev300|gk7205v300) + gpio="ircut1=10 ircut2=11 irstatus=66 irctl=52 alm_in=4,67 alm_out=65 eth_act=30 eth_sta=31 reset=0" + ;; + hi3516dv100) + gpio="ircut1=14 ircut2=15" + ;; + hi3516cv300) + gpio="ircut1=53 ircut2=54 irstatus=64 irctl=66 alm_in=55 alm_out=1 reset=2 usb_ena=63" + ;; + hi3518ev200) + gpio="ircut1=33 ircut2=34 alm_in=61 alm_out=35" + ;; + esac + ;; + zenotech|videopark) + case ${soc} in + hi3516ev300|gk7205v300) + gpio="ircut1=40 ircut2=41 irctl=65" + ;; + esac + ;; +esac + +echo ${gpio}