armbian-build/packages/bsp/jethub/jethubj200/libjethubconfig.sh

59 lines
1.4 KiB
Bash

#!/bin/bash
# shellcheck disable=SC2034
GPIO_DIRECTION_OUTPUT=0
GPIO_DIRECTION_INPUT=1
GPIO_ACTIVE_LOW=0
GPIO_ACTIVE_HIGH=1
GPIOS=(
# Discrete inputs: 1, 2, 3
"2 8 ${GPIO_DIRECTION_INPUT} ${GPIO_ACTIVE_HIGH}"
"2 9 ${GPIO_DIRECTION_INPUT} ${GPIO_ACTIVE_HIGH}"
"2 10 ${GPIO_DIRECTION_INPUT} ${GPIO_ACTIVE_HIGH}"
# Relays: 1, 2
"2 0 ${GPIO_DIRECTION_OUTPUT} ${GPIO_ACTIVE_HIGH}"
"2 1 ${GPIO_DIRECTION_OUTPUT} ${GPIO_ACTIVE_HIGH}"
# UXM1 module: RESET, BOOT
"2 4 ${GPIO_DIRECTION_OUTPUT} ${GPIO_ACTIVE_HIGH}"
"2 5 ${GPIO_DIRECTION_OUTPUT} ${GPIO_ACTIVE_HIGH}"
# UXM2 module: RESET, BOOT
"2 6 ${GPIO_DIRECTION_OUTPUT} ${GPIO_ACTIVE_HIGH}"
"2 7 ${GPIO_DIRECTION_OUTPUT} ${GPIO_ACTIVE_HIGH}"
# Button
"1 10 ${GPIO_DIRECTION_INPUT} ${GPIO_ACTIVE_LOW}"
)
# Set LED states
LEDS=(
)
reset_uxm1() {
echo "${0}: Reset UXM1 module ..."
gpio_set 2 5 1 ${GPIO_ACTIVE_HIGH}
gpio_set 2 6 1 ${GPIO_ACTIVE_HIGH}
sleep 1
gpio_set 2 6 0 ${GPIO_ACTIVE_HIGH}
}
reset_uxm2() {
echo "${0}: Reset UXM2 module ..."
gpio_set 2 7 1 ${GPIO_ACTIVE_HIGH}
gpio_set 2 6 1 ${GPIO_ACTIVE_HIGH}
sleep 1
gpio_set 2 6 0 ${GPIO_ACTIVE_HIGH}
}
config_1wire() {
echo "${0}: Configure 1-Wire ..."
if ! modprobe ds2482; then
echo "${0}: *** Error: Failed to load DS2482 kernel module"
exit 1
fi
}
ADDITIONALFUNC="reset_uxm1 reset_uxm2 config_1wire"