1 1.1 mbalmer #!/bin/sh 2 1.1 mbalmer # 3 1.2 brad # $NetBSD: gpio,v 1.2 2022/04/30 13:48:09 brad Exp $ 4 1.1 mbalmer # 5 1.1 mbalmer 6 1.1 mbalmer # PROVIDE: gpio 7 1.1 mbalmer # BEFORE: securelevel 8 1.1 mbalmer 9 1.1 mbalmer $_rc_subr_loaded . /etc/rc.subr 10 1.1 mbalmer 11 1.1 mbalmer name="gpio" 12 1.1 mbalmer rcvar=$name 13 1.1 mbalmer start_cmd="gpio_start" 14 1.1 mbalmer stop_cmd=":" 15 1.1 mbalmer 16 1.1 mbalmer gpio_start() 17 1.1 mbalmer { 18 1.1 mbalmer if [ -f /etc/gpio.conf ]; then 19 1.1 mbalmer echo "Configuring GPIO." 20 1.1 mbalmer cat /etc/gpio.conf | 21 1.2 brad collapse_backslash_newline | 22 1.1 mbalmer while read -r args; do 23 1.2 brad case "$args" in 24 1.2 brad "!"*) 25 1.2 brad # Run arbitrary command in a subshell. 26 1.2 brad ( eval "${args#*!}" ) 27 1.2 brad ;; 28 1.2 brad *) 29 1.2 brad ( 30 1.2 brad args=${args%%#*} # strip comments 31 1.2 brad test -z "$args" && continue 32 1.2 brad /usr/sbin/gpioctl -q $args 33 1.2 brad ) 34 1.2 brad ;; 35 1.2 brad esac 36 1.1 mbalmer done 37 1.1 mbalmer fi 38 1.1 mbalmer } 39 1.1 mbalmer 40 1.1 mbalmer load_rc_config $name 41 1.1 mbalmer run_rc_command "$1" 42