Tool/software: TI-RTOS
hi all,
our board is DRA76XP, SOC is TDA2PX, we use adv7182 as capture video decoder, i already add adv7182 driver in "ti_components\drivers\pdk_01_10_00_08\packages\ti\drv\vps\src\devices"
adv7182 use I2C instance 3 to communicate with SOC. Before access to adv7182 register i already power up this ship. but when i read this ship ID by read it's register I2C read fail!!
I2C instance 3, adv7182 I2C write address is 0x40, read address is 0x41, so the device I2C address is 0x20 = 0x40 >> 1;
log as following:
[HOST] [IPU2 ] 26.813517 s: Bsp_adv7182GetChipId() be Called!!!!
[HOST] [IPU2 ] 26.813639 s: Bsp_adv7182I2cRead8() be Called, I2C-3, addr = 0x20!!!!
[HOST] [IPU2 ] 31.814737 s: src/bsp_deviceI2c.c @ Line 350:
[HOST] [IPU2 ] 31.814860 s: I2C3: DEV 0x20: RD 0x11 ... ERROR !!!
[HOST] [IPU2 ] 31.815012 s: src/bsp_deviceI2c.c @ Line 416:
[HOST] [IPU2 ] 31.815104 s: I2C3: Error timeout 5001 ms!!!
[HOST] [IPU2 ] 31.815226 s: adv7182/src/bspdrv_adv7182I2c.c @ Line 899:
[HOST] [IPU2 ] 31.815317 s: I2C read failed
[HOST] [IPU2 ] 31.815378 s: Assertion @ Line: 218 in /home/abc/vision_sdk/apps/src/rtos/video_sensor/src/adv7182/video_decdr.c: retVal == 0 : failed !!!
and i call Bsp_deviceI2cProbeAll() function to dectect I2C instance3 bus:
[HOST] [IPU2 ] 22.876288 s: I2C3: Passed for address 0x2c !!!
[HOST] [IPU2 ] 23.015951 s: I2C4: Passed for address 0xe !!!
[HOST] [IPU2 ] 23.059659 s: I2C4: Passed for address 0x2c !!!
from the log 0x20 address is not detect on I2C instance 3 bus, i have check the adv7182 chip power pin, all setting is already.
can anyone help me figure out the investigation direction, so i can find out the problem?
what's more, as A15 and M4 can not use same I2C instance, so i disable I2C instance 3 on A15 size by add "DISABLE_COMPLETE(i2c4)" in dra76x-evm.dts.
best regards!!!