~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/net/pcs/snps,dw-xpcs.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/net/pcs/snps,dw-xpcs.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Synopsys DesignWare Ethernet PCS
  8 
  9 maintainers:
 10   - Serge Semin <fancer.lancer@gmail.com>
 11 
 12 description:
 13   Synopsys DesignWare Ethernet Physical Coding Sublayer provides an interface
 14   between Media Access Control and Physical Medium Attachment Sublayer through
 15   the Media Independent Interface (XGMII, USXGMII, XLGMII, GMII, etc)
 16   controlled by means of the IEEE std. Clause 45 registers set. The PCS can be
 17   optionally synthesized with a vendor-specific interface connected to
 18   Synopsys PMA (also called DesignWare Consumer/Enterprise PHY) although in
 19   general it can be used to communicate with any compatible PHY.
 20 
 21   The PCS CSRs can be accessible either over the Ethernet MDIO bus or directly
 22   by means of the APB3/MCI interfaces. In the later case the XPCS can be mapped
 23   right to the system IO memory space.
 24 
 25 properties:
 26   compatible:
 27     oneOf:
 28       - description: Synopsys DesignWare XPCS with none or unknown PMA
 29         const: snps,dw-xpcs
 30       - description: Synopsys DesignWare XPCS with Consumer Gen1 3G PMA
 31         const: snps,dw-xpcs-gen1-3g
 32       - description: Synopsys DesignWare XPCS with Consumer Gen2 3G PMA
 33         const: snps,dw-xpcs-gen2-3g
 34       - description: Synopsys DesignWare XPCS with Consumer Gen2 6G PMA
 35         const: snps,dw-xpcs-gen2-6g
 36       - description: Synopsys DesignWare XPCS with Consumer Gen4 3G PMA
 37         const: snps,dw-xpcs-gen4-3g
 38       - description: Synopsys DesignWare XPCS with Consumer Gen4 6G PMA
 39         const: snps,dw-xpcs-gen4-6g
 40       - description: Synopsys DesignWare XPCS with Consumer Gen5 10G PMA
 41         const: snps,dw-xpcs-gen5-10g
 42       - description: Synopsys DesignWare XPCS with Consumer Gen5 12G PMA
 43         const: snps,dw-xpcs-gen5-12g
 44 
 45   reg:
 46     items:
 47       - description:
 48           In case of the MDIO management interface this just a 5-bits ID
 49           of the MDIO bus device. If DW XPCS CSRs space is accessed over the
 50           MCI or APB3 management interfaces, then the space mapping can be
 51           either 'direct' or 'indirect'. In the former case all Clause 45
 52           registers are contiguously mapped within the address space
 53           MMD '[20:16]', Reg '[15:0]'. In the later case the space is divided
 54           to the multiple 256 register sets. There is a special viewport CSR
 55           which is responsible for the set selection. The upper part of
 56           the CSR address MMD+REG[20:8] is supposed to be written in there
 57           so the corresponding subset would be mapped to the lowest 255 CSRs.
 58 
 59   reg-names:
 60     items:
 61       - enum: [ direct, indirect ]
 62 
 63   reg-io-width:
 64     description:
 65       The way the CSRs are mapped to the memory is platform depended. Since
 66       each Clause 45 CSR is of 16-bits wide the access instructions must be
 67       two bytes aligned at least.
 68     default: 2
 69     enum: [ 2, 4 ]
 70 
 71   interrupts:
 72     description:
 73       System interface interrupt output (sbd_intr_o) indicating Clause 73/37
 74       auto-negotiation events':' Page received, AN is completed or incompatible
 75       link partner.
 76     maxItems: 1
 77 
 78   clocks:
 79     description:
 80       The MCI and APB3 interfaces are supposed to be equipped with a clock
 81       source connected to the clk_csr_i line.
 82 
 83       PCS/PMA layer can be clocked by an internal reference clock source
 84       (phyN_core_refclk) or by an externally connected (phyN_pad_refclk) clock
 85       generator. Both clocks can be supplied at a time.
 86     minItems: 1
 87     maxItems: 3
 88 
 89   clock-names:
 90     oneOf:
 91       - minItems: 1
 92         items: # MDIO
 93           - enum: [core, pad]
 94           - const: pad
 95       - minItems: 1
 96         items: # MCI or APB
 97           - const: csr
 98           - enum: [core, pad]
 99           - const: pad
100 
101 required:
102   - compatible
103   - reg
104 
105 additionalProperties: false
106 
107 examples:
108   - |
109     #include <dt-bindings/interrupt-controller/irq.h>
110 
111     ethernet-pcs@1f05d000 {
112       compatible = "snps,dw-xpcs";
113       reg = <0x1f05d000 0x1000>;
114       reg-names = "indirect";
115 
116       reg-io-width = <4>;
117 
118       interrupts = <79 IRQ_TYPE_LEVEL_HIGH>;
119 
120       clocks = <&ccu_pclk>, <&ccu_core>, <&ccu_pad>;
121       clock-names = "csr", "core", "pad";
122     };
123   - |
124     mdio-bus {
125       #address-cells = <1>;
126       #size-cells = <0>;
127 
128       ethernet-pcs@0 {
129         compatible = "snps,dw-xpcs";
130         reg = <0>;
131 
132         clocks = <&ccu_core>, <&ccu_pad>;
133         clock-names = "core", "pad";
134       };
135     };
136 ...

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php