This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA2eg about Error=> i2cMdSubmitChan: i2c transfer Timeout IRQ not received

Dear all, 

I met a problem

can see this problem from the Log

==============================================

[IPU1-0] 39.111877 s: src/bsp_deviceI2c.c @ Line 409:
[IPU1-0] 39.111968 s: Nrtos I2C3: DEV 0x3d: RD 0xf5 ... ERROR !!!
[IPU1-0] 39.112060 s: src/bsp_deviceI2c.c @ Line 466:
[IPU1-0] 39.112212 s: src/bsp_deviceI2c.c @ Line 477:
[IPU1-0] 39.112304 s: I2C3: Error timeout 5007 ms!!!

[IPU1-0]     44.116452 s:  i2cMdSubmitChan: i2c transfer Timeout IRQ not received

[IPU1-0] 44.118068 s: src/bsp_deviceI2c.c @ Line 645:
[IPU1-0] 44.118190 s: I2C3: DEV 0x3d: WR 0x01 = 0x03 ... ERROR !!!
[IPU1-0] 44.118282 s: src/bsp_deviceI2c.c @ Line 667:
[IPU1-0] 44.118343 s: I2C3: Error timeout 5006 ms!!!
[IPU1-0] 44.118434 s: src/bsputils_ub960.c @ Line 1320:
[IPU1-0] 44.118495 s: Could not configure UB960 !!!

===============================================

I guess it may be due to the following reasons

I want to ask if my statement is correct

Because I want to communicate with ub962

It uses I2c4 to communicate with tda board and My core is to use ipu1

Q1 : So is it the way to look at IRQ? For this function  =>> BspOsal_irqXbarConnect(CSL_XBAR_INST_IPU1_IRQ_44, CSL_XBAR_I2C4_IRQ);  is it right?????

--------------------------------------------------------

If Q1 is right, then the second question

Q2 : But The program is running this place =>> BspOsal_irqXbarConnect(CSL_XBAR_INST_IPU1_IRQ_44, CSL_XBAR_UART1_IRQ);

If I change CSL_XBAR_UART1_IRQ to I2c4, then the log will not be displayed

But CSL_XBAR_INST_IPU1_IRQ_44 cannot be shared

How to do this???? 

-----------------------------------------------------------------------------------------

Q3: By the way

Is there any information related to this function or how to understand it?

about Bsp_i2cdrv.c 

status =
(Int32) Semaphore_pend((Semaphore_Handle) hsi2cTransfersem[
instNum],
(UInt32) I2C_IRQ_TIME_OUT);

-------------------------------------------------------------------------------------------------------

Because it looks like the IRQ between TDA Board and Ub962 can’t communicate

So are there other possible errors that I haven't noticed?

Thanks all !!!