VIM3 - A311D - I2C AO Clock Questions

Lucas Tanure tanure at linux.com
Sun Mar 6 02:23:49 PST 2022


Hi,

I am trying to integrate an I2C device into VIM3 using the I2C_AO bus.
My device uses a 100000Hz clock, but after changing
meson-g12b-a311d-khadas-vim3.dts to add my I2C node the driver could
not properly read its registers.

It reads 0x9100, but the correct data should be 0xcb58.
The first thing I saw on the bus was that the frequency I requested by
the device tree was being set after the probe of my driver already
failed.
For that, I sent "i2c: meson: Fix wrong speed use from probe" which
fixes that issue.

But I still get the wrong data, so my next guess is that the clock
duty cycle is 30%, and I think should be 50%.
Here is an image of the signals of the bus:
https://pasteboard.co/TEoxQucsXUUD.png

I have tested other frequencies and all of them uses a 30% duty cycle,
where SCL is up 30% and low for 70% of the period.

Is possible to configure the clock to be 100000Hz, but with a 50% duty
cycle for this I2C bus on A3111D?

Thanks
Lucas Tanure



More information about the linux-amlogic mailing list