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.

TDA4VMXEVM: Two I2C BUS cannot be detected.

Part Number: TDA4VMXEVM
Other Parts Discussed in Thread: DS90UB913A-Q1

Hello Expert,

I'm using PSDKRA_07.00.00 with TDA4VMXEVM board and having the problem of not detecting two I2C BUS.\

Currently, 10 I2C buses are detected in U-BOOT, but only 8 I2C buses are detected when confirmed using i2c tools after Linux boot.

Is this a very big problem?
I must have to use DS90UB960 connected to the 9th I2C bus identified in u-boot.

In U-boot, the confirmed DS90UB960 module but could not be detected after using Linux I2C tools.

Please refer to the materials below for troubleshooting.
--------------------IN U-BOOT--------------------

=> i2c bus
Bus 0: i2c@42120000 (active 0)
51: generic_51, offset len 2, flags 0
54: generic_54, offset len 2, flags 0
Bus 1: i2c@40b00000
Bus 2: i2c@40b10000
Bus 3: i2c@2000000
20: gpio@20, offset len 1, flags 0
22: gpio@22, offset len 1, flags 0
Bus 4: i2c@2010000
Bus 5: i2c@2020000
Bus 6: i2c@2030000
Bus 7: i2c@2040000
Bus 8: i2c@2050000
Bus 9: i2c@2060000
=> i2c dev 9
Setting bus to 9
=> i2c probe
Valid chip addresses: 20 36 3D 50
=> i2c bus
Bus 0: i2c@42120000 (active 0)
51: generic_51, offset len 2, flags 0
54: generic_54, offset len 2, flags 0
Bus 1: i2c@40b00000
Bus 2: i2c@40b10000
Bus 3: i2c@2000000
20: gpio@20, offset len 1, flags 0
22: gpio@22, offset len 1, flags 0
Bus 4: i2c@2010000
Bus 5: i2c@2020000
Bus 6: i2c@2030000
Bus 7: i2c@2040000
Bus 8: i2c@2050000
Bus 9: i2c@2060000 (active 9)
20: generic_20, offset len 1, flags 0
36: generic_36, offset len 1, flags 0
3d: generic_3d, offset len 1, flags 0
50: generic_50, offset len 1, flags 0

--------------------IN LINUX--------------------

root@j7-evm:~# i2cdetect -l
i2c-3 i2c OMAP I2C adapter I2C adapter
i2c-1 i2c OMAP I2C adapter I2C adapter
i2c-6 i2c OMAP I2C adapter I2C adapter
i2c-4 i2c OMAP I2C adapter I2C adapter
i2c-2 i2c OMAP I2C adapter I2C adapter
i2c-0 i2c OMAP I2C adapter I2C adapter
i2c-7 i2c OMAP I2C adapter I2C adapter
i2c-5 i2c OMAP I2C adapter I2C adapter

Regards,
Kim
  • Hi Kim,

     i2c@2060000 is Bus-9 in uboot. Please check dmesg and check which i2c instance in Kernel
    corresponds to main_i2c6. Can you please double check that? Basically order of instances in u-boot & kernel
    are different.

    - Keerthy

  • Hi Keerthy,

    Thanks for your answer.


    I just checked and it seems that the order of instances in I2Ctools and U-boot are the same.


    Likewise, the BUS of i2c@2060000 cannot be found in I2C Tools.


    The main problem I think is that U-boot detects 10 buses, but I2C tools only detects 8.


    And the I2C bus that is not detected contains the DS90UB960 module that I should use.


    I hope you can help us solve the problem.

    Thanks,

    Regards

     - Kim

  • Kim,

    This is because PSDKRA includes: arch/arm64/boot/dts/ti/k3-j721e-vision-apps.dtbo
    Source file: board-support/linux-5.4.40+gitAUTOINC+66cf445b76-g66cf445b76arch/arm64/boot/dts/ti/k3-j721e-vision-apps.dtso

    That has:

    &main_i2c6 {
            status = "disabled";
    };

    Hence that never gets probed.

    In believe they are disabled in Linux so that they could be used by other cores.

    PSDKLA: http://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-jacinto7/latest/index_FDS.html
    Has main_i2c6 enabled.

    If you want to experiment something in Linux you could try the automotive Linux SDK.

    - Keerthy

  • Keerthy, 

    Thanks to the method you gave me, I can detect 10 I2C buses in I2C Tools.

    But if you don't excuse me, I have one question in your answer.

    I want to know what you mean by 'they are disabled in Linux so that they could be used by other cores.'

    I am using 'Fusion Application Rev3' board with 'TDA4EVMX' board.
    And, I am going to connect 4 LVDS cameras to the Fusion board. (This camera is using the 'DS90UB913A-Q1 serializer.')


    To use the camera, is the "disable i2c status in k3-j721e-vision-apps.dtso" correct?

    I apologize for bothering you when you are busy.

    Regrads,

    - Kim

  • Kim,

    "they are disabled in Linux so that they could be used by other cores.'"

    What i meant is if you are using i2c from R5f or any other core then it needs to be disabled
    in dtso as it is for A72 linux.

    If you are using that i2c from a72. you can surely enable like how you have done now.

    Hope i am clear now.

    - Keerthy

  • keerthy,


    It has been a great help in solving the problem.

    Thank you for the reply.

    regards,

    - Kim