RTL8224 packages contain four PHYs at consecutive MDIO addresses, but
their first address need not be a multiple of four. The Hasivo
S1100WP-8GT-2S+ uses two such packages at addresses 1-4 and 5-8.
This series adds a dedicated realtek,rtl8224-package binding and extends
the driver to use the explicit package base when provided. The
package-relative port index selects the MDI pair order and polarity
fields. Existing configurations without a package node retain the
aligned-address assumption.
The package-addressing change was tested on a Hasivo S1100WP-8GT-2S+
using an OpenWrt kernel. The rebased net-next version has not been
runtime-tested.
Changes since v2:
- Replace the additions to the shared RTL82xx PHY binding with a
dedicated RTL8224 package binding. The example selects the package
schema while the child PHYs retain their Clause 45 compatible.
- Clarify that unaligned layouts require a package node and that
unused ports, including the first port, may be omitted.
- Limit the package base to 28 and each child address to the four-port
range starting at that base.
- Use devm_phy_package_join() for both DT-described and legacy packages,
avoiding mixed OF/non-OF package-node reference accounting.
- Share base-address parsing between probe and MDI configuration and
derive the port offset without allocating per-PHY private state.
Changes since v1:
- Target net-next, as suggested by Andrew Lunn.
- Remove the Fixes tag and describe the change as extending support
rather than fixing a regression.
- Rebase on net-next/main.
- Add a separate DT binding documentation patch with an unaligned
four-port package example, placed before the driver patch.
v2:
https://lore.kernel.org/netdev/20261005201540.913977-1-oskari@lemmela.net/ (local)
v1:
https://lore.kernel.org/netdev/20261004204637.721148-1-oskari@lemmela.net/ (local)
Manuel Stocker (1):
net: phy: realtek: support unaligned RTL8224 PHY packages
Oskari Lemmela (1):
dt-bindings: net: realtek: add RTL8224 package binding
.../bindings/net/realtek,rtl8224-package.yaml | 332 ++++++++++++++++++
drivers/net/phy/realtek/realtek_main.c | 56 ++-
2 files changed, 379 insertions(+), 9 deletions(-)
create mode 100644 Documentation/devicetree/bindings/net/realtek,rtl8224-package.yaml
base-commit: 8b4e7209c842d8cb9516f1f5ef0a88aa2d8831a6
--
2.55.0