Add description to support Axis, ARTPEC-8 SoC. ARTPEC-8 is the SoC platform of Axis Communications and PCIe PHY is designed based on Samsung PHY. Signed-off-by: Wangseok Lee <wangseok.lee@xxxxxxxxxxx> --- v3->v4 : -Add "fsys-sysreg" to properties -Modify the "lcpll-ref-clk" and "clocks" in properties "lcpll-ref-clk" is custom properties, so add 'vendor', type(enum), description Add the maxItem in clocks, add clock-names in properties v2->v3 : -Modify version history to fit the linux commit rule -Remove 'Device Tree Bindings' on title -Remove clock-names entries -Change node name to soc from artpec8 on excamples v1->v2 : -'make dt_binding_check' result improvement -Add the missing property list -Align the indentation of continued lines/entries --- .../bindings/phy/axis,artpec8-pcie-phy.yaml | 85 ++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 Documentation/devicetree/bindings/phy/axis,artpec8-pcie-phy.yaml diff --git a/Documentation/devicetree/bindings/phy/axis,artpec8-pcie-phy.yaml b/Documentation/devicetree/bindings/phy/axis,artpec8-pcie-phy.yaml new file mode 100644 index 0000000..9db39ef --- /dev/null +++ b/Documentation/devicetree/bindings/phy/axis,artpec8-pcie-phy.yaml @@ -0,0 +1,85 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/phy/axis,artpec8-pcie-phy.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ARTPEC-8 SoC PCIe PHY + +maintainers: + - Jesper Nilsson <jesper.nilsson@xxxxxxxx> + +properties: + compatible: + const: axis,artpec8-pcie-phy + + reg: + items: + - description: PHY registers. + - description: PHY coding sublayer registers. + + reg-names: + items: + - const: phy + - const: pcs + + "#phy-cells": + const: 0 + + clocks: + maxItems: 1 + + clock-names: + items: + - const: ref + + samsung,fsys-sysreg: + description: + Phandle to system register of fsys block. + $ref: /schemas/types.yaml#/definitions/phandle + + num-lanes: + const: 2 + + axis,lcpll-ref-clk: + description: + select the reference clock of phy and initialization is performed + with the reference clock according to the selected value. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [ 0, 1, 2, 3, 4 ] + +required: + - compatible + - reg + - reg-names + - "#phy-cells" + - clocks + - clock-names + - samsung,fsys-sysreg + - num-lanes + - axis,lcpll-ref-clk + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + + soc { + #address-cells = <2>; + #size-cells = <2>; + pcie_phy: pcie-phy@16c80000 { + compatible = "axis,artpec8-pcie-phy"; + reg = <0x0 0x16c80000 0x0 0x2000>, + <0x0 0x16c90000 0x0 0x1000>; + reg-names = "phy", "pcs"; + #phy-cells = <0>; + clocks = <&clock_cmu_fsys 53>; + clock-names = "ref"; + samsung,fsys-sysreg = <&syscon_fsys>; + num-lanes = <2>; + axis,lcpll-ref-clk = <1>; + }; + }; +... -- 2.9.5