-
Notifications
You must be signed in to change notification settings - Fork 0
/
acq2006b_init_gpio
executable file
·119 lines (91 loc) · 3.2 KB
/
acq2006b_init_gpio
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
#!/bin/sh
source /usr/local/bin/acq400_init_gpio_common.sh
common_begin
# i2c gpio
CHIP1=$(basename $(echo /sys/bus/i2c/devices/1-0022/gpio/gpiochip*))
CHIP2=$(basename $(echo /sys/bus/i2c/devices/1-0023/gpio/gpiochip*))
let pin00=${CHIP1#gpiochip*}
let pin10=${CHIP2#gpiochip*}
let pin01=$pin00+23
let pin11=$pin10+23
echo +++ gpiochip 1-0022 $CHIP1 gpio $pin00 $pin01
echo +++ gpiochip 1-0023 $CHIP2 gpio $pin10 $pin11
mkdir -p /dev/gpio/CHIP1
let ix=0
for pin in $(seq $pin00 $pin01)
do
PN=$(printf P%02o $ix)
export_gpio $pin
ln -s /sys/class/gpio/gpio$pin /dev/gpio/CHIP1/$PN
let ix=$ix+1
done
mkdir -p /dev/gpio/CHIP2
let ix=0
for pin in $(seq $pin10 $pin11)
do
PN=$(printf P%02o $ix)
export_gpio $pin
ln -s /sys/class/gpio/gpio$pin /dev/gpio/CHIP2/$PN
let ix=$ix+1
done
let pin_out00=$pin00 ;# P00
let pin_out01=$pin00+20 ;# P24
let pin_out10=$pin10+8 ;# P10
let pin_out11=$pin10+19 ;# P23
for pin in $(seq $pin_out00 $pin_out01) $(seq $pin_out10 $pin_out11)
do
setO gpio$pin
done
# i2c gpio
mkdir -p /dev/gpio/CLK/MB/RDW
lnAH /dev/gpio/CHIP1/P00 /dev/gpio/CLK/MB/RDW/R0
lnAH /dev/gpio/CHIP1/P01 /dev/gpio/CLK/MB/RDW/R1
lnAH /dev/gpio/CHIP1/P02 /dev/gpio/CLK/MB/RDW/R2
lnAH /dev/gpio/CHIP1/P03 /dev/gpio/CLK/MB/RDW/R3
lnAH /dev/gpio/CHIP1/P04 /dev/gpio/CLK/MB/RDW/R4
lnAH /dev/gpio/CHIP1/P05 /dev/gpio/CLK/MB/RDW/R5
lnAH /dev/gpio/CHIP1/P06 /dev/gpio/CLK/MB/RDW/R6
mkdir -p /dev/gpio/CLK/MB/FDW
lnAH /dev/gpio/CHIP1/P07 /dev/gpio/CLK/MB/FDW/F0
lnAH /dev/gpio/CHIP1/P10 /dev/gpio/CLK/MB/FDW/F1
lnAH /dev/gpio/CHIP1/P11 /dev/gpio/CLK/MB/FDW/F2
lnAH /dev/gpio/CHIP1/P12 /dev/gpio/CLK/MB/FDW/F3
lnAH /dev/gpio/CHIP1/P13 /dev/gpio/CLK/MB/FDW/F4
lnAH /dev/gpio/CHIP1/P14 /dev/gpio/CLK/MB/FDW/F5
lnAH /dev/gpio/CHIP1/P15 /dev/gpio/CLK/MB/FDW/F6
mkdir -p /dev/gpio/CLK/MB/ODW
lnAH /dev/gpio/CHIP1/P16 /dev/gpio/CLK/MB/ODW/S0
lnAH /dev/gpio/CHIP1/P17 /dev/gpio/CLK/MB/ODW/S1
lnAH /dev/gpio/CHIP1/P20 /dev/gpio/FP_TRIG_DIR_OUT
lnAH /dev/gpio/CHIP1/P21 /dev/gpio/FP_SYNC_DIR_OUT
lnAH /dev/gpio/CHIP1/P22 /dev/gpio/FP_IO_DIR_OUT
lnAH /dev/gpio/CHIP1/P23 /dev/gpio/SYNC_IN_GPIO_OUT
lnAH /dev/gpio/CHIP1/P24 /dev/gpio/SYNC_OUT_GPIO_OUT
echo 1 > /dev/gpio/SYNC_OUT_GPIO_OUT
lnAL /dev/gpio/CHIP1/P25 /dev/gpio/SYNC_CABLE_DET
for px in 0 1 2 3 4 5
do
pin=$(printf P%02d $px)
let site=$px+1
lnAL /dev/gpio/CHIP2/$pin /dev/gpio/fmc${site}_present
done
lnAL /dev/gpio/CHIP2/P06 /dev/gpio/15VP_PGD
lnAL /dev/gpio/CHIP2/P07 /dev/gpio/15VN_PGD
lnALO /dev/gpio/CHIP2/P10 /dev/gpio/CLK/ZCLK_OE
lnALO /dev/gpio/CHIP2/P11 /dev/gpio/CLK/MCLK2_OE
lnALO /dev/gpio/CHIP2/P12 /dev/gpio/CLK/OSC_X_OE
lnALO /dev/gpio/CHIP2/P13 /dev/gpio/CLK/OSC_X_CLK_OE
lnALO /dev/gpio/CHIP2/P14 /dev/gpio/CLK/FP_CLK_OE
lnALO /dev/gpio/CHIP2/P15 /dev/gpio/CLK/FP_OE
lnALO /dev/gpio/CHIP2/P16 /dev/gpio/CLK/Si570_OE
lnALO /dev/gpio/CHIP2/P17 /dev/gpio/15VA_EN
mkdir -p /dev/gpio/LED
lnALO /dev/gpio/CHIP2/P20 /dev/gpio/LED/CLK_G
lnALO /dev/gpio/CHIP2/P21 /dev/gpio/LED/CLK_R
lnALO /dev/gpio/CHIP2/P22 /dev/gpio/LED/TRG_G
lnALO /dev/gpio/CHIP2/P23 /dev/gpio/LED/TRG_R
lnAH /dev/gpio/CHIP2/P24/ /dev/gpio/IS_EE
lnAL /dev/gpio/CHIP2/P25 /dev/gpio/IS_REVB ;# REVA not likely
source /usr/local/bin/acq2006_init_gpio_common.sh
common_end
echo "++ acq2006b_init_gpio done"