18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/phy/intel,combo-phy.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: Intel ComboPhy Subsystem 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Dilip Kota <eswara.kota@linux.intel.com> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cidescription: | 138c2ecf20Sopenharmony_ci Intel Combophy subsystem supports PHYs for PCIe, EMAC and SATA 148c2ecf20Sopenharmony_ci controllers. A single Combophy provides two PHY instances. 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciproperties: 178c2ecf20Sopenharmony_ci $nodename: 188c2ecf20Sopenharmony_ci pattern: "combophy(@.*|-[0-9a-f])*$" 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci compatible: 218c2ecf20Sopenharmony_ci items: 228c2ecf20Sopenharmony_ci - const: intel,combophy-lgm 238c2ecf20Sopenharmony_ci - const: intel,combo-phy 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci clocks: 268c2ecf20Sopenharmony_ci maxItems: 1 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci reg: 298c2ecf20Sopenharmony_ci items: 308c2ecf20Sopenharmony_ci - description: ComboPhy core registers 318c2ecf20Sopenharmony_ci - description: PCIe app core control registers 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci reg-names: 348c2ecf20Sopenharmony_ci items: 358c2ecf20Sopenharmony_ci - const: core 368c2ecf20Sopenharmony_ci - const: app 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci resets: 398c2ecf20Sopenharmony_ci maxItems: 4 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci reset-names: 428c2ecf20Sopenharmony_ci items: 438c2ecf20Sopenharmony_ci - const: phy 448c2ecf20Sopenharmony_ci - const: core 458c2ecf20Sopenharmony_ci - const: iphy0 468c2ecf20Sopenharmony_ci - const: iphy1 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci intel,syscfg: 498c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle-array 508c2ecf20Sopenharmony_ci description: Chip configuration registers handle and ComboPhy instance id 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci intel,hsio: 538c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle-array 548c2ecf20Sopenharmony_ci description: HSIO registers handle and ComboPhy instance id on NOC 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci intel,aggregation: 578c2ecf20Sopenharmony_ci type: boolean 588c2ecf20Sopenharmony_ci description: | 598c2ecf20Sopenharmony_ci Specify the flag to configure ComboPHY in dual lane mode. 608c2ecf20Sopenharmony_ci 618c2ecf20Sopenharmony_ci intel,phy-mode: 628c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 638c2ecf20Sopenharmony_ci description: | 648c2ecf20Sopenharmony_ci Mode of the two phys in ComboPhy. 658c2ecf20Sopenharmony_ci See dt-bindings/phy/phy.h for values. 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci "#phy-cells": 688c2ecf20Sopenharmony_ci const: 1 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_cirequired: 718c2ecf20Sopenharmony_ci - compatible 728c2ecf20Sopenharmony_ci - clocks 738c2ecf20Sopenharmony_ci - reg 748c2ecf20Sopenharmony_ci - reg-names 758c2ecf20Sopenharmony_ci - intel,syscfg 768c2ecf20Sopenharmony_ci - intel,hsio 778c2ecf20Sopenharmony_ci - intel,phy-mode 788c2ecf20Sopenharmony_ci - "#phy-cells" 798c2ecf20Sopenharmony_ci 808c2ecf20Sopenharmony_ciadditionalProperties: false 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ciexamples: 838c2ecf20Sopenharmony_ci - | 848c2ecf20Sopenharmony_ci #include <dt-bindings/phy/phy.h> 858c2ecf20Sopenharmony_ci combophy@d0a00000 { 868c2ecf20Sopenharmony_ci compatible = "intel,combophy-lgm", "intel,combo-phy"; 878c2ecf20Sopenharmony_ci clocks = <&cgu0 1>; 888c2ecf20Sopenharmony_ci #phy-cells = <1>; 898c2ecf20Sopenharmony_ci reg = <0xd0a00000 0x40000>, 908c2ecf20Sopenharmony_ci <0xd0a40000 0x1000>; 918c2ecf20Sopenharmony_ci reg-names = "core", "app"; 928c2ecf20Sopenharmony_ci resets = <&rcu0 0x50 6>, 938c2ecf20Sopenharmony_ci <&rcu0 0x50 17>, 948c2ecf20Sopenharmony_ci <&rcu0 0x50 23>, 958c2ecf20Sopenharmony_ci <&rcu0 0x50 24>; 968c2ecf20Sopenharmony_ci reset-names = "phy", "core", "iphy0", "iphy1"; 978c2ecf20Sopenharmony_ci intel,syscfg = <&sysconf 0>; 988c2ecf20Sopenharmony_ci intel,hsio = <&hsiol 0>; 998c2ecf20Sopenharmony_ci intel,phy-mode = <PHY_TYPE_PCIE>; 1008c2ecf20Sopenharmony_ci intel,aggregation; 1018c2ecf20Sopenharmony_ci }; 102