On Friday, April 14, 2023 12:29 AM, Wolfram Sang wrote: > > > > Implement I2C bus driver to send and receive I2C messages. > > > > > > > > This I2C license the IP of Synopsys Designware, but without interrupt > > > > support on the hardware design. It seems that polling mode needs to be > > > > added in Synopsys Designware I2C driver. But currently it can only be > > > > driven by this I2C bus master driver. > > > > > > > > Signed-off-by: Jiawen Wu <jiawenwu@xxxxxxxxxxxxxx> > > > > --- > > > > drivers/net/ethernet/wangxun/Kconfig | 1 + > > > > .../net/ethernet/wangxun/txgbe/txgbe_phy.c | 153 > > > > ++++++++++++++++++ > > > > .../net/ethernet/wangxun/txgbe/txgbe_type.h | 23 +++ > > > > 3 files changed, 177 insertions(+) > > > > > > Looks like your use case has similarities with the commit 17631e8ca2d3 > > ("i2c: designware: Add driver support for AMD NAVI GPU"). > > Yes, can you please check if you can't use the current i2c designware > driver? Hi Jarkko & Wolfram, I read the i2c designware driver code, and found that 'dev->ss_hcnt' can only be obtained by i2c_dw_acpi_configure() or calculated by clock rate. I don't quite understand how to get the clock rate. I tried to add a software node of clock with property ("clock-frequency", 100000) and referenced by I2C node. But it didn't work. Can I deliver 'dev->ss_hcnt' via platform data? Or how should I fill in the software node?