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.
Tool/software:
We are upgrading kernel from 3.2 version to 6.1 version. Board has some old components like TPS65910A31A1RSLR for PMIC.
This IC is connected to AM335x using i2c interface. When we try to configure it using DTS, it is not able to communicate over selected i2c1.
Same problem we have found for other slaves connected to i2c interface.
Is there any modification in properties when we migrate from version 3.12 to 6.1 related to i2c driver.
Below is the i2c configuration with old 3.12 kernel
And below is snapshot of configuration we did for tps using i2c1 with kernel 6.1
We have checked clock frequency and other details are correct as communication is working correctly on board with kernel 3.12 version.
Please let me know if I anything is missing in i2c device configuration from my side.
Thanks.
Hello,
A kernel change to 3.2 to 6.1 is almost 10 years gap, so there will be significant differences.
The first place to start is the checking the Kernel Config: https://software-dl.ti.com/processor-sdk-linux/esd/AM335X/09_01_00_001/exports/docs/linux/Foundational_Components_Kernel_Users_Guide.html#configuring-the-kernel
Can you make sure that all the required kernel modules are enabled?
Next you can look at the device tree bindings. This is for the PMIC: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/Documentation/devicetree/bindings/mfd/tps65910.txt?h=ti-linux-6.1.y
You can follow the AM335x nodes from the Starter Kit and EVM:
Here are some other example device tree that use this PMIC:
Best Regards,
Anshu