We’ve also configured them Bidirectional as you suggested.
Please refer to the following test results.
// check pinmux
$ sudo su
# busybox devmem 0x02430068
0x00000040
# busybox devmem 0x02430070
0x00000040
// Test 1: Control PQ.05 and Read PQ.06
# gpioinfo|grep -iE "PQ.05|PQ.06"
line 105: "PQ.05" unused output active-high
line 106: "PQ.06" unused output active-high
# gpioget `gpiofind "PQ.06"`
0
# gpioinfo|grep -iE "PQ.05|PQ.06"
line 105: "PQ.05" unused output active-high
line 106: "PQ.06" unused input active-high
# gpioset --mode=wait `gpiofind "PQ.05"`=1
(open another terminal)
# gpioget `gpiofind "PQ.06"`
1
(terminate gpioset process in previous terminal)
// Test 2: Control PQ.06 and Read PQ.05
# gpioget `gpiofind "PQ.05"`
1
# gpioget `gpiofind "PQ.06"`
1
# gpioinfo|grep -iE "PQ.05|PQ.06"
line 105: "PQ.05" unused input active-high
line 106: "PQ.06" unused input active-high
# gpioset --mode=wait `gpiofind "PQ.06"`=0
(open another terminal)
# gpioget `gpiofind "PQ.05"`
0
(terminate gpioset process in previous terminal)
# gpioinfo|grep -iE "PQ.05|PQ.06"
line 105: "PQ.05" unused input active-high
line 106: "PQ.06" unused output active-high
You would find that gpioget command will configure the direction as Input while gpioset command will configure the direction as Output.