1*4882a593Smuzhiyun# SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause) 2*4882a593Smuzhiyun# Copyright (C) 2019 Texas Instruments Incorporated 3*4882a593Smuzhiyun%YAML 1.2 4*4882a593Smuzhiyun--- 5*4882a593Smuzhiyun$id: "http://devicetree.org/schemas/net/ti,dp83867.yaml#" 6*4882a593Smuzhiyun$schema: "http://devicetree.org/meta-schemas/core.yaml#" 7*4882a593Smuzhiyun 8*4882a593Smuzhiyuntitle: TI DP83867 ethernet PHY 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunallOf: 11*4882a593Smuzhiyun - $ref: "ethernet-controller.yaml#" 12*4882a593Smuzhiyun 13*4882a593Smuzhiyunmaintainers: 14*4882a593Smuzhiyun - Dan Murphy <dmurphy@ti.com> 15*4882a593Smuzhiyun 16*4882a593Smuzhiyundescription: | 17*4882a593Smuzhiyun The DP83867 device is a robust, low power, fully featured Physical Layer 18*4882a593Smuzhiyun transceiver with integrated PMD sublayers to support 10BASE-Te, 100BASE-TX 19*4882a593Smuzhiyun and 1000BASE-T Ethernet protocols. 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun The DP83867 is designed for easy implementation of 10/100/1000 Mbps Ethernet 22*4882a593Smuzhiyun LANs. It interfaces directly to twisted pair media via an external 23*4882a593Smuzhiyun transformer. This device interfaces directly to the MAC layer through the 24*4882a593Smuzhiyun IEEE 802.3 Standard Media Independent Interface (MII), the IEEE 802.3 Gigabit 25*4882a593Smuzhiyun Media Independent Interface (GMII) or Reduced GMII (RGMII). 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun Specifications about the Ethernet PHY can be found at: 28*4882a593Smuzhiyun https://www.ti.com/lit/gpn/dp83867ir 29*4882a593Smuzhiyun 30*4882a593Smuzhiyunproperties: 31*4882a593Smuzhiyun reg: 32*4882a593Smuzhiyun maxItems: 1 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun ti,min-output-impedance: 35*4882a593Smuzhiyun type: boolean 36*4882a593Smuzhiyun description: | 37*4882a593Smuzhiyun MAC Interface Impedance control to set the programmable output impedance 38*4882a593Smuzhiyun to a minimum value (35 ohms). 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun ti,max-output-impedance: 41*4882a593Smuzhiyun type: boolean 42*4882a593Smuzhiyun description: | 43*4882a593Smuzhiyun MAC Interface Impedance control to set the programmable output impedance 44*4882a593Smuzhiyun to a maximum value (70 ohms). 45*4882a593Smuzhiyun Note: ti,min-output-impedance and ti,max-output-impedance are mutually 46*4882a593Smuzhiyun exclusive. When both properties are present ti,max-output-impedance 47*4882a593Smuzhiyun takes precedence. 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun tx-fifo-depth: 50*4882a593Smuzhiyun $ref: /schemas/types.yaml#definitions/uint32 51*4882a593Smuzhiyun description: | 52*4882a593Smuzhiyun Transmitt FIFO depth see dt-bindings/net/ti-dp83867.h for values 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun rx-fifo-depth: 55*4882a593Smuzhiyun $ref: /schemas/types.yaml#definitions/uint32 56*4882a593Smuzhiyun description: | 57*4882a593Smuzhiyun Receive FIFO depth see dt-bindings/net/ti-dp83867.h for values 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun ti,clk-output-sel: 60*4882a593Smuzhiyun $ref: /schemas/types.yaml#definitions/uint32 61*4882a593Smuzhiyun description: | 62*4882a593Smuzhiyun Muxing option for CLK_OUT pin. See dt-bindings/net/ti-dp83867.h 63*4882a593Smuzhiyun for applicable values. The CLK_OUT pin can also be disabled by this 64*4882a593Smuzhiyun property. When omitted, the PHY's default will be left as is. 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun ti,rx-internal-delay: 67*4882a593Smuzhiyun $ref: /schemas/types.yaml#definitions/uint32 68*4882a593Smuzhiyun description: | 69*4882a593Smuzhiyun RGMII Receive Clock Delay - see dt-bindings/net/ti-dp83867.h 70*4882a593Smuzhiyun for applicable values. Required only if interface type is 71*4882a593Smuzhiyun PHY_INTERFACE_MODE_RGMII_ID or PHY_INTERFACE_MODE_RGMII_RXID. 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun ti,tx-internal-delay: 74*4882a593Smuzhiyun $ref: /schemas/types.yaml#definitions/uint32 75*4882a593Smuzhiyun description: | 76*4882a593Smuzhiyun RGMII Transmit Clock Delay - see dt-bindings/net/ti-dp83867.h 77*4882a593Smuzhiyun for applicable values. Required only if interface type is 78*4882a593Smuzhiyun PHY_INTERFACE_MODE_RGMII_ID or PHY_INTERFACE_MODE_RGMII_TXID. 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun Note: If the interface type is PHY_INTERFACE_MODE_RGMII the TX/RX clock 81*4882a593Smuzhiyun delays will be left at their default values, as set by the PHY's pin 82*4882a593Smuzhiyun strapping. The default strapping will use a delay of 2.00 ns. Thus 83*4882a593Smuzhiyun PHY_INTERFACE_MODE_RGMII, by default, does not behave as RGMII with no 84*4882a593Smuzhiyun internal delay, but as PHY_INTERFACE_MODE_RGMII_ID. The device tree 85*4882a593Smuzhiyun should use "rgmii-id" if internal delays are desired as this may be 86*4882a593Smuzhiyun changed in future to cause "rgmii" mode to disable delays. 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun ti,dp83867-rxctrl-strap-quirk: 89*4882a593Smuzhiyun type: boolean 90*4882a593Smuzhiyun description: | 91*4882a593Smuzhiyun This denotes the fact that the board has RX_DV/RX_CTRL pin strapped in 92*4882a593Smuzhiyun mode 1 or 2. To ensure PHY operation, there are specific actions that 93*4882a593Smuzhiyun software needs to take when this pin is strapped in these modes. 94*4882a593Smuzhiyun See data manual for details. 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun ti,sgmii-ref-clock-output-enable: 97*4882a593Smuzhiyun type: boolean 98*4882a593Smuzhiyun description: | 99*4882a593Smuzhiyun This denotes which SGMII configuration is used (4 or 6-wire modes). 100*4882a593Smuzhiyun Some MACs work with differential SGMII clock. See data manual for details. 101*4882a593Smuzhiyun 102*4882a593Smuzhiyun ti,fifo-depth: 103*4882a593Smuzhiyun deprecated: true 104*4882a593Smuzhiyun $ref: /schemas/types.yaml#definitions/uint32 105*4882a593Smuzhiyun description: | 106*4882a593Smuzhiyun Transmitt FIFO depth- see dt-bindings/net/ti-dp83867.h for applicable 107*4882a593Smuzhiyun values. 108*4882a593Smuzhiyun 109*4882a593Smuzhiyunrequired: 110*4882a593Smuzhiyun - reg 111*4882a593Smuzhiyun 112*4882a593SmuzhiyununevaluatedProperties: false 113*4882a593Smuzhiyun 114*4882a593Smuzhiyunexamples: 115*4882a593Smuzhiyun - | 116*4882a593Smuzhiyun #include <dt-bindings/net/ti-dp83867.h> 117*4882a593Smuzhiyun mdio0 { 118*4882a593Smuzhiyun #address-cells = <1>; 119*4882a593Smuzhiyun #size-cells = <0>; 120*4882a593Smuzhiyun ethphy0: ethernet-phy@0 { 121*4882a593Smuzhiyun reg = <0>; 122*4882a593Smuzhiyun tx-fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 123*4882a593Smuzhiyun rx-fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 124*4882a593Smuzhiyun ti,max-output-impedance; 125*4882a593Smuzhiyun ti,clk-output-sel = <DP83867_CLK_O_SEL_CHN_A_RCLK>; 126*4882a593Smuzhiyun ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; 127*4882a593Smuzhiyun ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_75_NS>; 128*4882a593Smuzhiyun }; 129*4882a593Smuzhiyun }; 130