From a890edbd2fc420723ef13e4ed257b87f97228ec1 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 15 Nov 2023 19:27:03 -0800 Subject: [PATCH] (files/imanager-init) handle rhel9+, with no /sys/class/gpio --- files/imanager-init | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/files/imanager-init b/files/imanager-init index 8394d10..eb019fd 100755 --- a/files/imanager-init +++ b/files/imanager-init @@ -9,16 +9,25 @@ groups ccs | grep -q gpio || usermod -a -G gpio ccs modprobe imanager-core modprobe gpio-imanager -[ -e /sys/class/gpio/export ] || exit 1 +if [ -e /sys/class/gpio ]; then # <= rhel8 -for ((n=504;n<=511;n++)); do - echo "$n" > /sys/class/gpio/export -done + [ -e /sys/class/gpio/export ] || exit 1 -chmod g+w /sys/class/gpio/gpio{508..511}/value -chmod og+w /sys/class/gpio/gpio50*/value + for ((n=504;n<=511;n++)); do + echo "$n" > /sys/class/gpio/export + done + + ## These partially overlap, and it is not clear to me exactly what + ## was wanted. + chmod g+w /sys/class/gpio/gpio{508..511}/value + chmod og+w /sys/class/gpio/gpio50*/value + + chgrp -R gpio /sys/class/gpio +else # >= rhel9 + ## In rhel9+, ownership is handled by a udev rule. + : +fi -chgrp -R gpio /sys/class/gpio chgrp -R gpio /sys/devices/platform/imanager/imanager-gpio exit 0