modules.d: get rid of "tr"
[platform/upstream/dracut.git] / modules.d / 95zfcp / zfcpconf.sh
1 #!/bin/sh
2 # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
3 # ex: ts=8 sw=4 sts=4 et filetype=sh
4
5 # config file syntax:
6 # deviceno   WWPN   FCPLUN
7 #
8 # Example:
9 # 0.0.4000 0x5005076300C213e9 0x5022000000000000
10 # 0.0.4001 0x5005076300c213e9 0x5023000000000000
11 #
12 #
13 # manual setup:
14 # modprobe zfcp
15 # echo 1    > /sys/bus/ccw/drivers/zfcp/0.0.4000/online
16 # echo LUN  > /sys/bus/ccw/drivers/zfcp/0.0.4000/WWPN/unit_add
17 #
18 # Example:
19 # modprobe zfcp
20 # echo 1                  > /sys/bus/ccw/drivers/zfcp/0.0.4000/online
21 # echo 0x5022000000000000 > /sys/bus/ccw/drivers/zfcp/0.0.4000/0x5005076300c213e9/unit_add
22
23 CONFIG=/etc/zfcp.conf
24 PATH=/usr/sbin:/usr/bin:/sbin:/bin
25
26 if [ -f "$CONFIG" ]; then
27     if [ ! -d /sys/bus/ccw/drivers/zfcp ]; then
28         modprobe zfcp
29     fi
30     if [ ! -d /sys/bus/ccw/drivers/zfcp ]; then
31         return
32     fi
33     sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/' < $CONFIG| while read line; do
34     case $line in
35         \#*) ;;
36         *)
37             [ -z "$line" ] && continue
38             set $line
39             if [ $# -eq 5 ]; then
40                 DEVICE=$1
41                 SCSIID=$2
42                 WWPN=$3
43                 SCSILUN=$4
44                 FCPLUN=$5
45                 echo "Warning: Deprecated values in /etc/zfcp.conf, ignoring SCSI ID $SCSIID and SCSI LUN $SCSILUN"
46             elif [ $# -eq 3 ]; then
47                 DEVICE=${1##*0x}
48                 WWPN=$2
49                 FCPLUN=$3
50             fi
51             echo 1 > /sys/bus/ccw/drivers/zfcp/${DEVICE}/online
52             [ ! -d /sys/bus/ccw/drivers/zfcp/${DEVICE}/${WWPN}/${FCPLUN} ] \
53                 && echo $FCPLUN > /sys/bus/ccw/drivers/zfcp/${DEVICE}/${WWPN}/unit_add
54             ;;
55     esac
56     done
57 fi