1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/net/marvell,prestera.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Marvell Prestera switch family 8 9maintainers: 10 - Miquel Raynal <miquel.raynal@bootlin.com> 11 12properties: 13 compatible: 14 oneOf: 15 - items: 16 - enum: 17 - marvell,prestera-98dx3236 18 - marvell,prestera-98dx3336 19 - marvell,prestera-98dx4251 20 - const: marvell,prestera 21 - enum: 22 - pci11ab,c804 23 - pci11ab,c80c 24 - pci11ab,cc1e 25 26 reg: 27 maxItems: 1 28 29 interrupts: 30 maxItems: 3 31 32 dfx: 33 description: Reference to the DFX Server bus node. 34 $ref: /schemas/types.yaml#/definitions/phandle 35 36 nvmem-cells: true 37 38 nvmem-cell-names: true 39 40if: 41 properties: 42 compatible: 43 contains: 44 const: marvell,prestera 45 46# Memory mapped AlleyCat3 family 47then: 48 properties: 49 nvmem-cells: false 50 nvmem-cell-names: false 51 required: 52 - interrupts 53 54# PCI Aldrin family 55else: 56 properties: 57 interrupts: false 58 dfx: false 59 60required: 61 - compatible 62 - reg 63 64# Ports can also be described 65additionalProperties: 66 type: object 67 68examples: 69 - | 70 packet-processor@0 { 71 compatible = "marvell,prestera-98dx3236", "marvell,prestera"; 72 reg = <0 0x4000000>; 73 interrupts = <33>, <34>, <35>; 74 dfx = <&dfx>; 75 }; 76 77 - | 78 pcie@0 { 79 #address-cells = <3>; 80 #size-cells = <2>; 81 ranges = <0x0 0x0 0x0 0x0 0x0 0x0>; 82 reg = <0x0 0x0 0x0 0x0 0x0 0x0>; 83 device_type = "pci"; 84 85 switch@0,0 { 86 reg = <0x0 0x0 0x0 0x0 0x0>; 87 compatible = "pci11ab,c80c"; 88 nvmem-cells = <&mac_address 0>; 89 nvmem-cell-names = "mac-address"; 90 }; 91 }; 92