Dear Team,
We found the below situations.
- Clock : From Soc --> 954 --> 953 --> Dmic (Digital microphone),
can transfer, but clock became slow.
- Data: From Dmic --> 953 -> 954 --> Soc:
954 can't get 953 data.
Please help to check the following code for assigning GPIO register . Thanks!
Could you guide us how to resolve this issue?
954
i2cget -f -y 0 0x3d 0x00
# Soc Audio codec DMIC CLOCK --> TI 954 GPIO 1 (input)
# Soc Audio codec DMIC DATA <--- TI 954 GPIO 2 (output)
# for GPIO 1
#GPIO_INPUT_CTL (Address 0x0F)
# default all are input, and config GPIO 2 to output
i2cget -f -y 0 0x3d 0x0F
i2cset -f -y 0 0x3d 0x0F 0x7B
i2cget -f -y 0 0x3d 0x0F
# config 953 GPIO 1 connect to 954 GPIO 1 and controlled by 954
#BC_GPIO_CTL0 (Address 0x6E)
i2cget -f -y 0 0x3d 0x6E
i2cset -f -y 0 0x3d 0x6E 0x18
i2cget -f -y 0 0x3d 0x6E
# for GPIO 2
# GPIO2_PIN_CTL (Address 0x12), source for 953 GPIO 1
i2cget -f -y 0 0x3d 0x12
i2cset -f -y 0 0x3d 0x12 0x09
i2cget -f -y 0 0x3d 0x12
=======================
953
i2cget -f -y 0 0x18 0x00
# DMIC CLOCK <-- TI 953 GPIO 1 (output)
# DMIC DATA ---> TI 953 GPIO 2 (input)
# Config GPIO1 output, GPIO2 intput
#GPIO_INPUT_CTRL (Address 0x0E)
i2cget -f -y 0 0x18 0x0E
i2cset -f -y 0 0x18 0x0E 0x2D
i2cget -f -y 0 0x18 0x0E
# LOCAL_GPIO_DATA, GPIO 2 is input and GPIO 1 is controlled by 954
i2cget -f -y 0 0x18 0x0D
i2cset -f -y 0 0x18 0x0D 0xB0
i2cget -f -y 0 0x18 0x0D
Many Thanks,
Jimmy