1*7ef62cebSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*7ef62cebSEmmanuel Vadot%YAML 1.2 3*7ef62cebSEmmanuel Vadot--- 4*7ef62cebSEmmanuel Vadot$id: http://devicetree.org/schemas/phy/rockchip,pcie3-phy.yaml# 5*7ef62cebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*7ef62cebSEmmanuel Vadot 7*7ef62cebSEmmanuel Vadottitle: Rockchip PCIe v3 phy 8*7ef62cebSEmmanuel Vadot 9*7ef62cebSEmmanuel Vadotmaintainers: 10*7ef62cebSEmmanuel Vadot - Heiko Stuebner <heiko@sntech.de> 11*7ef62cebSEmmanuel Vadot 12*7ef62cebSEmmanuel Vadotproperties: 13*7ef62cebSEmmanuel Vadot compatible: 14*7ef62cebSEmmanuel Vadot enum: 15*7ef62cebSEmmanuel Vadot - rockchip,rk3568-pcie3-phy 16*7ef62cebSEmmanuel Vadot 17*7ef62cebSEmmanuel Vadot reg: 18*7ef62cebSEmmanuel Vadot maxItems: 1 19*7ef62cebSEmmanuel Vadot 20*7ef62cebSEmmanuel Vadot clocks: 21*7ef62cebSEmmanuel Vadot minItems: 3 22*7ef62cebSEmmanuel Vadot maxItems: 3 23*7ef62cebSEmmanuel Vadot 24*7ef62cebSEmmanuel Vadot clock-names: 25*7ef62cebSEmmanuel Vadot items: 26*7ef62cebSEmmanuel Vadot - const: refclk_m 27*7ef62cebSEmmanuel Vadot - const: refclk_n 28*7ef62cebSEmmanuel Vadot - const: pclk 29*7ef62cebSEmmanuel Vadot 30*7ef62cebSEmmanuel Vadot data-lanes: 31*7ef62cebSEmmanuel Vadot description: which lanes (by position) should be mapped to which 32*7ef62cebSEmmanuel Vadot controller (value). 0 means lane disabled, higher value means used. 33*7ef62cebSEmmanuel Vadot (controller-number +1 ) 34*7ef62cebSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 35*7ef62cebSEmmanuel Vadot minItems: 2 36*7ef62cebSEmmanuel Vadot maxItems: 16 37*7ef62cebSEmmanuel Vadot items: 38*7ef62cebSEmmanuel Vadot minimum: 0 39*7ef62cebSEmmanuel Vadot maximum: 16 40*7ef62cebSEmmanuel Vadot 41*7ef62cebSEmmanuel Vadot "#phy-cells": 42*7ef62cebSEmmanuel Vadot const: 0 43*7ef62cebSEmmanuel Vadot 44*7ef62cebSEmmanuel Vadot resets: 45*7ef62cebSEmmanuel Vadot maxItems: 1 46*7ef62cebSEmmanuel Vadot 47*7ef62cebSEmmanuel Vadot reset-names: 48*7ef62cebSEmmanuel Vadot const: phy 49*7ef62cebSEmmanuel Vadot 50*7ef62cebSEmmanuel Vadot rockchip,phy-grf: 51*7ef62cebSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 52*7ef62cebSEmmanuel Vadot description: phandle to the syscon managing the phy "general register files" 53*7ef62cebSEmmanuel Vadot 54*7ef62cebSEmmanuel Vadot rockchip,pipe-grf: 55*7ef62cebSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 56*7ef62cebSEmmanuel Vadot description: phandle to the syscon managing the pipe "general register files" 57*7ef62cebSEmmanuel Vadot 58*7ef62cebSEmmanuel Vadotrequired: 59*7ef62cebSEmmanuel Vadot - compatible 60*7ef62cebSEmmanuel Vadot - reg 61*7ef62cebSEmmanuel Vadot - rockchip,phy-grf 62*7ef62cebSEmmanuel Vadot - "#phy-cells" 63*7ef62cebSEmmanuel Vadot 64*7ef62cebSEmmanuel VadotadditionalProperties: false 65*7ef62cebSEmmanuel Vadot 66*7ef62cebSEmmanuel Vadotexamples: 67*7ef62cebSEmmanuel Vadot - | 68*7ef62cebSEmmanuel Vadot #include <dt-bindings/clock/rk3568-cru.h> 69*7ef62cebSEmmanuel Vadot pcie30phy: phy@fe8c0000 { 70*7ef62cebSEmmanuel Vadot compatible = "rockchip,rk3568-pcie3-phy"; 71*7ef62cebSEmmanuel Vadot reg = <0xfe8c0000 0x20000>; 72*7ef62cebSEmmanuel Vadot #phy-cells = <0>; 73*7ef62cebSEmmanuel Vadot clocks = <&pmucru CLK_PCIE30PHY_REF_M>, 74*7ef62cebSEmmanuel Vadot <&pmucru CLK_PCIE30PHY_REF_N>, 75*7ef62cebSEmmanuel Vadot <&cru PCLK_PCIE30PHY>; 76*7ef62cebSEmmanuel Vadot clock-names = "refclk_m", "refclk_n", "pclk"; 77*7ef62cebSEmmanuel Vadot resets = <&cru SRST_PCIE30PHY>; 78*7ef62cebSEmmanuel Vadot reset-names = "phy"; 79*7ef62cebSEmmanuel Vadot rockchip,phy-grf = <&pcie30_phy_grf>; 80*7ef62cebSEmmanuel Vadot }; 81