1a29401beSFlorian Fainelli# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2a29401beSFlorian Fainelli%YAML 1.2 3a29401beSFlorian Fainelli--- 4a29401beSFlorian Fainelli$id: http://devicetree.org/schemas/net/brcm,asp-v2.0.yaml# 5a29401beSFlorian Fainelli$schema: http://devicetree.org/meta-schemas/core.yaml# 6a29401beSFlorian Fainelli 7a29401beSFlorian Fainellititle: Broadcom ASP 2.0 Ethernet controller 8a29401beSFlorian Fainelli 9a29401beSFlorian Fainellimaintainers: 10a29401beSFlorian Fainelli - Justin Chen <justin.chen@broadcom.com> 11a29401beSFlorian Fainelli - Florian Fainelli <florian.fainelli@broadcom.com> 12a29401beSFlorian Fainelli 13a29401beSFlorian Fainellidescription: Broadcom Ethernet controller first introduced with 72165 14a29401beSFlorian Fainelli 15a29401beSFlorian Fainelliproperties: 16a29401beSFlorian Fainelli compatible: 17a29401beSFlorian Fainelli oneOf: 18a29401beSFlorian Fainelli - items: 19a29401beSFlorian Fainelli - enum: 20*5682a878SJustin Chen - brcm,bcm74165b0-asp 21*5682a878SJustin Chen - const: brcm,asp-v2.2 22*5682a878SJustin Chen - items: 23*5682a878SJustin Chen - enum: 24a29401beSFlorian Fainelli - brcm,bcm74165-asp 25a29401beSFlorian Fainelli - const: brcm,asp-v2.1 26a29401beSFlorian Fainelli - items: 27a29401beSFlorian Fainelli - enum: 28a29401beSFlorian Fainelli - brcm,bcm72165-asp 29a29401beSFlorian Fainelli - const: brcm,asp-v2.0 30a29401beSFlorian Fainelli 31a29401beSFlorian Fainelli "#address-cells": 32a29401beSFlorian Fainelli const: 1 33a29401beSFlorian Fainelli "#size-cells": 34a29401beSFlorian Fainelli const: 1 35a29401beSFlorian Fainelli 36a29401beSFlorian Fainelli reg: 37a29401beSFlorian Fainelli maxItems: 1 38a29401beSFlorian Fainelli 39a29401beSFlorian Fainelli ranges: true 40a29401beSFlorian Fainelli 41a29401beSFlorian Fainelli interrupts: 42a29401beSFlorian Fainelli minItems: 1 43a29401beSFlorian Fainelli items: 44a29401beSFlorian Fainelli - description: RX/TX interrupt 45a29401beSFlorian Fainelli - description: Port 0 Wake-on-LAN 46a29401beSFlorian Fainelli - description: Port 1 Wake-on-LAN 47a29401beSFlorian Fainelli 48a29401beSFlorian Fainelli clocks: 49a29401beSFlorian Fainelli maxItems: 1 50a29401beSFlorian Fainelli 51a29401beSFlorian Fainelli ethernet-ports: 52a29401beSFlorian Fainelli type: object 53a29401beSFlorian Fainelli properties: 54a29401beSFlorian Fainelli "#address-cells": 55a29401beSFlorian Fainelli const: 1 56a29401beSFlorian Fainelli "#size-cells": 57a29401beSFlorian Fainelli const: 0 58a29401beSFlorian Fainelli 59a29401beSFlorian Fainelli patternProperties: 6051ff5150SRob Herring "^port@[0-9a-f]+$": 61a29401beSFlorian Fainelli type: object 62a29401beSFlorian Fainelli 63a29401beSFlorian Fainelli $ref: ethernet-controller.yaml# 64a29401beSFlorian Fainelli 65a29401beSFlorian Fainelli unevaluatedProperties: false 66a29401beSFlorian Fainelli 67a29401beSFlorian Fainelli properties: 68a29401beSFlorian Fainelli reg: 69a29401beSFlorian Fainelli maxItems: 1 70a29401beSFlorian Fainelli description: Port number 71a29401beSFlorian Fainelli 72a29401beSFlorian Fainelli brcm,channel: 73a29401beSFlorian Fainelli $ref: /schemas/types.yaml#/definitions/uint32 74a29401beSFlorian Fainelli description: | 75a29401beSFlorian Fainelli ASP Channel Number 76a29401beSFlorian Fainelli 77a29401beSFlorian Fainelli The depacketizer channel that consumes packets from 78a29401beSFlorian Fainelli the unimac/port. 79a29401beSFlorian Fainelli 80a29401beSFlorian Fainelli required: 81a29401beSFlorian Fainelli - reg 82a29401beSFlorian Fainelli - brcm,channel 83a29401beSFlorian Fainelli 84a29401beSFlorian Fainelli additionalProperties: false 85a29401beSFlorian Fainelli 86a29401beSFlorian FainellipatternProperties: 87a29401beSFlorian Fainelli "^mdio@[0-9a-f]+$": 88a29401beSFlorian Fainelli type: object 89a29401beSFlorian Fainelli $ref: brcm,unimac-mdio.yaml 90a29401beSFlorian Fainelli 91a29401beSFlorian Fainelli description: 92a29401beSFlorian Fainelli ASP internal UniMAC MDIO bus 93a29401beSFlorian Fainelli 94a29401beSFlorian Fainellirequired: 95a29401beSFlorian Fainelli - compatible 96a29401beSFlorian Fainelli - reg 97a29401beSFlorian Fainelli - interrupts 98a29401beSFlorian Fainelli - clocks 99a29401beSFlorian Fainelli - ranges 100a29401beSFlorian Fainelli 101a29401beSFlorian FainelliadditionalProperties: false 102a29401beSFlorian Fainelli 103a29401beSFlorian Fainelliexamples: 104a29401beSFlorian Fainelli - | 105a29401beSFlorian Fainelli #include <dt-bindings/interrupt-controller/irq.h> 106a29401beSFlorian Fainelli #include <dt-bindings/interrupt-controller/arm-gic.h> 107a29401beSFlorian Fainelli 108a29401beSFlorian Fainelli ethernet@9c00000 { 109a29401beSFlorian Fainelli compatible = "brcm,bcm72165-asp", "brcm,asp-v2.0"; 110a29401beSFlorian Fainelli reg = <0x9c00000 0x1fff14>; 111a29401beSFlorian Fainelli interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 112a29401beSFlorian Fainelli ranges = <0x0 0x9c00000 0x1fff14>; 113a29401beSFlorian Fainelli clocks = <&scmi 14>; 114a29401beSFlorian Fainelli #address-cells = <1>; 115a29401beSFlorian Fainelli #size-cells = <1>; 116a29401beSFlorian Fainelli 117a29401beSFlorian Fainelli mdio@c614 { 118a29401beSFlorian Fainelli compatible = "brcm,asp-v2.0-mdio"; 119a29401beSFlorian Fainelli reg = <0xc614 0x8>; 120a29401beSFlorian Fainelli reg-names = "mdio"; 121a29401beSFlorian Fainelli #address-cells = <1>; 122a29401beSFlorian Fainelli #size-cells = <0>; 123a29401beSFlorian Fainelli 124a29401beSFlorian Fainelli phy0: ethernet-phy@1 { 125a29401beSFlorian Fainelli reg = <1>; 126a29401beSFlorian Fainelli }; 127a29401beSFlorian Fainelli }; 128a29401beSFlorian Fainelli 129a29401beSFlorian Fainelli mdio@ce14 { 130a29401beSFlorian Fainelli compatible = "brcm,asp-v2.0-mdio"; 131a29401beSFlorian Fainelli reg = <0xce14 0x8>; 132a29401beSFlorian Fainelli reg-names = "mdio"; 133a29401beSFlorian Fainelli #address-cells = <1>; 134a29401beSFlorian Fainelli #size-cells = <0>; 135a29401beSFlorian Fainelli 136a29401beSFlorian Fainelli phy1: ethernet-phy@1 { 137a29401beSFlorian Fainelli reg = <1>; 138a29401beSFlorian Fainelli }; 139a29401beSFlorian Fainelli }; 140a29401beSFlorian Fainelli 141a29401beSFlorian Fainelli ethernet-ports { 142a29401beSFlorian Fainelli #address-cells = <1>; 143a29401beSFlorian Fainelli #size-cells = <0>; 144a29401beSFlorian Fainelli 145a29401beSFlorian Fainelli port@0 { 146a29401beSFlorian Fainelli reg = <0>; 147a29401beSFlorian Fainelli brcm,channel = <8>; 148a29401beSFlorian Fainelli phy-mode = "rgmii"; 149a29401beSFlorian Fainelli phy-handle = <&phy0>; 150a29401beSFlorian Fainelli }; 151a29401beSFlorian Fainelli 152a29401beSFlorian Fainelli port@1 { 153a29401beSFlorian Fainelli reg = <1>; 154a29401beSFlorian Fainelli brcm,channel = <9>; 155a29401beSFlorian Fainelli phy-mode = "rgmii"; 156a29401beSFlorian Fainelli phy-handle = <&phy1>; 157a29401beSFlorian Fainelli }; 158a29401beSFlorian Fainelli }; 159a29401beSFlorian Fainelli }; 160