dt-bindings: net: Add Synopsys DW xPCS bindings
authorSerge Semin <fancer.lancer@gmail.com>
Mon, 1 Jul 2024 18:28:37 +0000 (21:28 +0300)
committerDavid S. Miller <davem@davemloft.net>
Fri, 5 Jul 2024 08:35:50 +0000 (09:35 +0100)
commit664690eb08f71290c2e67c5a1d234075077b4f5b
treef05a21ca84906cd6da86f8aaf5b1a7d55fad199f
parentbcac735cf653ef8dc6d7c08ed311e0a77f2665f0
dt-bindings: net: Add Synopsys DW xPCS bindings

Synopsys DesignWare XPCS IP-core is a Physical Coding Sublayer (PCS) layer
providing an interface between the Media Access Control (MAC) and Physical
Medium Attachment Sublayer (PMA) through a Media independent interface.
From software point of view it exposes IEEE std. Clause 45 CSR space and
can be accessible either by MDIO or MCI/APB3 bus interfaces. In the former
case the PCS device is supposed to be defined under the respective MDIO
bus DT-node. In the later case the DW xPCS will be just a normal IO
memory-mapped device.

Besides of that DW XPCS DT-nodes can have an interrupt signal and clock
source properties specified. The former one indicates the Clause 73/37
auto-negotiation events like: negotiation page received, AN is completed
or incompatible link partner. The clock DT-properties can describe up to
three clock sources: peripheral bus clock source, internal reference clock
and the externally connected reference clock.

Finally the DW XPCS IP-core can be optionally synthesized with a
vendor-specific interface connected to the Synopsys PMA (also called
DesignWare Consumer/Enterprise PHY). Alas that isn't auto-detectable in a
portable way. So if the DW XPCS device has the respective PMA attached
then it should be reflected in the DT-node compatible string so the driver
would be aware of the PMA-specific device capabilities (mainly connected
with CSRs available for the fine-tunings).

Signed-off-by: Serge Semin <fancer.lancer@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/devicetree/bindings/net/pcs/snps,dw-xpcs.yaml [new file with mode: 0644]