lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1f1a4185-0995-4bee-a45b-2e9d329cc90f@gmail.com>
Date: Mon, 4 Aug 2025 11:02:17 +0200
From: Jonas Jelonek <jelonek.jonas@...il.com>
To: linux-i2c@...r.kernel.org,
 Chris Packham <chris.packham@...iedtelesis.co.nz>,
 Andi Shyti <andi.shyti@...nel.org>, Rob Herring <robh@...nel.org>,
 Krzysztof Kozlowski <krzk+dt@...nel.org>
Cc: Markus Stockhausen <markus.stockhausen@....de>,
 Conor Dooley <conor+dt@...nel.org>, linux-kernel@...r.kernel.org,
 devicetree@...r.kernel.org, Sven Eckelmann <sven@...fation.org>
Subject: Re: [PATCH v4 0/3] i2c: rework and extend RTL9300 I2C driver

Hi all,

On 29.07.2025 09:51, Jonas Jelonek wrote:
> This patch series reworks the current implementation of the driver for
> I2C controller integrated into RTL9300 SoCs to simplify support
> extension, and adds support for the RTL9310 series.
> Goal of this is to have RTL9310 support upstream in a proper
> implementation to be able to drop downstream versions of this driver.
>
> The first patch reworks the driver to use more of the regmap API.
> Instead of using macros, all registers are defined as reg_field and
> operations on these registers are performed using regmap_field and the
> corresponding API. This simplifies adding support for further chip
> families and avoids potential redundant code by just providing
> chip-specific functions for every chip family.
>
> The second patch extends the existing dt-bindings of RTL9300 for RTL9310
> support.
>
> The third patch makes use of previous changes by adding support for the
> RTL9310 series, providing the correct register definitions and a few
> specifics. This also uses a new vendor dt-property which was added by
> the second patch to properly manage the I2C controllers. Having this
> property is necessary to properly describe the hardware and allow the
> driver to correctly work with the I2C controllers.
>
> Both has been tested successfully on RTL9302B-based Zyxel XGS1210-12
> and RTL9313-based Netgear MS510TXM.
>
> Compile-tested with Linux, run-tested as backport in OpenWrt on the
> aforementioned devices.
>
> --
> Changelog
>
> v4: - fixed an incorrect check for number of channels which was already
>       present in original code
>
> v3: - narrowed vendor property per variant to be required only
>       for RTL9310
>     - narrowed usable child-node i2c addresses per variant
>     - no changes to driver patches
>
> v2: - Patch 1:
>         - adjusted commit message
>         - retained Tested-By and Reviewed-By from Chris Packham
>     - Patch 2:
>         - simplified check as suggested by Markus Stockhausen
>         - fixed commit message
>     - Patch 3 (all requested by Krzysztof):
>         - use vendor property instead of generic
>         - add front compatibles to make binding complete
>         - fix commit message
>     - reordered patches, dt-bindings patch now comes before its 'user'
>     - properly add device-tree list and relevant maintainers to To/Cc
>
> --
>
> Jonas Jelonek (3):
>   i2c: rework RTL9300 I2C controller driver
>   dt-bindings: i2c: realtek,rtl9301-i2c: extend for RTL9310 support
>   i2c: add RTL9310 support to RTL9300 I2C controller driver
>
>  .../bindings/i2c/realtek,rtl9301-i2c.yaml     |  58 ++++-
>  drivers/i2c/busses/i2c-rtl9300.c              | 231 +++++++++++++-----
>  2 files changed, 218 insertions(+), 71 deletions(-)
>

If accepted, this should be merged AFTER the recent patchset from Sven [1].

I'll rebase this on top of [1], fix outstanding issues and probably propose some
more cleanup in the next version (because I'm not satisfied with how the code is
currently structured).

Best regards,
Jonas

[1] https://lore.kernel.org/linux-i2c/20250803-i2c-rtl9300-multi-byte-v2-0-9b7b759fe2b6@narfation.org/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ