[PATCH 0/8] i2c: rtl9300: support for RTL9607C I2C controller

Rustam Adilov posted 8 patches 3 weeks, 2 days ago
There is a newer version of this series
.../bindings/i2c/realtek,rtl9301-i2c.yaml     |  15 ++
drivers/i2c/busses/i2c-rtl9300.c              | 179 +++++++++++++++---
2 files changed, 165 insertions(+), 29 deletions(-)
[PATCH 0/8] i2c: rtl9300: support for RTL9607C I2C controller
Posted by Rustam Adilov 3 weeks, 2 days ago
This patch series for the RTL9300 I2C driver adds i2c support for
RTL9607C SoC. They are somewhat different to the RTL9300 and
RTL9310 but not enough to warrant a new whole driver.

The patch series was split into patches that add/change something in the
driver to smooth out the RTL9607C support addition in the end and for
ease of review. Because of that, the patch 8 depends on all the prior
patches before it.

RTL9607C primarly uses the i2c controller for communication with laser
driver over on i2c interface 1 or 2.

I have successfully tested the byte read operations on my RTL9607C board
which has GN25L95 laser driver in OpenWrt.

Rustam Adilov (8):
  i2c: rtl9300: split data_reg into read and write reg
  i2c: rtl9300: introduce max length property to driver data
  i2c: rtl9300: introduce F_BUSY to the reg_fields struct
  i2c: rtl9300: introduce a property for 8 bit width reg address
  i2c: rtl9300: introduce clk struct for upcoming rtl9607 support
  i2c: rtl9300: intoduce new function properties to driver data
  dt-bindings: i2c: realtek,rtl9301-i2c: extend for RTL9607C support
  i2c: rtl9300: add RTL9607C i2c controller support

 .../bindings/i2c/realtek,rtl9301-i2c.yaml     |  15 ++
 drivers/i2c/busses/i2c-rtl9300.c              | 179 +++++++++++++++---
 2 files changed, 165 insertions(+), 29 deletions(-)

-- 
2.53.0
Re: [PATCH 0/8] i2c: rtl9300: support for RTL9607C I2C controller
Posted by Chris Packham 3 weeks, 1 day ago
Hi Rustam,

On 14/03/2026 21:26, Rustam Adilov wrote:
> This patch series for the RTL9300 I2C driver adds i2c support for
> RTL9607C SoC. They are somewhat different to the RTL9300 and
> RTL9310 but not enough to warrant a new whole driver.
>
> The patch series was split into patches that add/change something in the
> driver to smooth out the RTL9607C support addition in the end and for
> ease of review. Because of that, the patch 8 depends on all the prior
> patches before it.
>
> RTL9607C primarly uses the i2c controller for communication with laser
> driver over on i2c interface 1 or 2.
>
> I have successfully tested the byte read operations on my RTL9607C board
> which has GN25L95 laser driver in OpenWrt.
>
> Rustam Adilov (8):
>    i2c: rtl9300: split data_reg into read and write reg
>    i2c: rtl9300: introduce max length property to driver data
>    i2c: rtl9300: introduce F_BUSY to the reg_fields struct
>    i2c: rtl9300: introduce a property for 8 bit width reg address
>    i2c: rtl9300: introduce clk struct for upcoming rtl9607 support
>    i2c: rtl9300: intoduce new function properties to driver data
>    dt-bindings: i2c: realtek,rtl9301-i2c: extend for RTL9607C support
>    i2c: rtl9300: add RTL9607C i2c controller support

Patches 1-5, 8

Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz>

There is a bit of a conflict with another topic that is either in-flight 
or lost for patch 6 (I replied to that one specifically) and I see you 
and Krzyztof are still discussion the dt-bindings changes.

>
>   .../bindings/i2c/realtek,rtl9301-i2c.yaml     |  15 ++
>   drivers/i2c/busses/i2c-rtl9300.c              | 179 +++++++++++++++---
>   2 files changed, 165 insertions(+), 29 deletions(-)
>