xref: /freebsd/sys/contrib/device-tree/Bindings/net/marvell,prestera.yaml (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
18bab661aSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
28bab661aSEmmanuel Vadot%YAML 1.2
38bab661aSEmmanuel Vadot---
48bab661aSEmmanuel Vadot$id: http://devicetree.org/schemas/net/marvell,prestera.yaml#
58bab661aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
68bab661aSEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Marvell Prestera switch family
88bab661aSEmmanuel Vadot
98bab661aSEmmanuel Vadotmaintainers:
108bab661aSEmmanuel Vadot  - Miquel Raynal <miquel.raynal@bootlin.com>
118bab661aSEmmanuel Vadot
128bab661aSEmmanuel Vadotproperties:
138bab661aSEmmanuel Vadot  compatible:
148bab661aSEmmanuel Vadot    oneOf:
158bab661aSEmmanuel Vadot      - items:
168bab661aSEmmanuel Vadot          - enum:
178bab661aSEmmanuel Vadot              - marvell,prestera-98dx3236
188bab661aSEmmanuel Vadot              - marvell,prestera-98dx3336
198bab661aSEmmanuel Vadot              - marvell,prestera-98dx4251
208bab661aSEmmanuel Vadot          - const: marvell,prestera
218bab661aSEmmanuel Vadot      - enum:
228bab661aSEmmanuel Vadot          - pci11ab,c804
238bab661aSEmmanuel Vadot          - pci11ab,c80c
248bab661aSEmmanuel Vadot          - pci11ab,cc1e
258bab661aSEmmanuel Vadot
268bab661aSEmmanuel Vadot  reg:
278bab661aSEmmanuel Vadot    maxItems: 1
288bab661aSEmmanuel Vadot
298bab661aSEmmanuel Vadot  interrupts:
308bab661aSEmmanuel Vadot    maxItems: 3
318bab661aSEmmanuel Vadot
328bab661aSEmmanuel Vadot  dfx:
338bab661aSEmmanuel Vadot    description: Reference to the DFX Server bus node.
348bab661aSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
358bab661aSEmmanuel Vadot
368bab661aSEmmanuel Vadot  nvmem-cells: true
378bab661aSEmmanuel Vadot
388bab661aSEmmanuel Vadot  nvmem-cell-names: true
398bab661aSEmmanuel Vadot
408bab661aSEmmanuel Vadotif:
418bab661aSEmmanuel Vadot  properties:
428bab661aSEmmanuel Vadot    compatible:
438bab661aSEmmanuel Vadot      contains:
448bab661aSEmmanuel Vadot        const: marvell,prestera
458bab661aSEmmanuel Vadot
468bab661aSEmmanuel Vadot# Memory mapped AlleyCat3 family
478bab661aSEmmanuel Vadotthen:
488bab661aSEmmanuel Vadot  properties:
498bab661aSEmmanuel Vadot    nvmem-cells: false
508bab661aSEmmanuel Vadot    nvmem-cell-names: false
518bab661aSEmmanuel Vadot  required:
528bab661aSEmmanuel Vadot    - interrupts
538bab661aSEmmanuel Vadot
548bab661aSEmmanuel Vadot# PCI Aldrin family
558bab661aSEmmanuel Vadotelse:
568bab661aSEmmanuel Vadot  properties:
578bab661aSEmmanuel Vadot    interrupts: false
588bab661aSEmmanuel Vadot    dfx: false
598bab661aSEmmanuel Vadot
608bab661aSEmmanuel Vadotrequired:
618bab661aSEmmanuel Vadot  - compatible
628bab661aSEmmanuel Vadot  - reg
638bab661aSEmmanuel Vadot
648bab661aSEmmanuel Vadot# Ports can also be described
658bab661aSEmmanuel VadotadditionalProperties:
668bab661aSEmmanuel Vadot  type: object
678bab661aSEmmanuel Vadot
688bab661aSEmmanuel Vadotexamples:
698bab661aSEmmanuel Vadot  - |
708bab661aSEmmanuel Vadot    packet-processor@0 {
718bab661aSEmmanuel Vadot        compatible = "marvell,prestera-98dx3236", "marvell,prestera";
728bab661aSEmmanuel Vadot        reg = <0 0x4000000>;
738bab661aSEmmanuel Vadot        interrupts = <33>, <34>, <35>;
748bab661aSEmmanuel Vadot        dfx = <&dfx>;
758bab661aSEmmanuel Vadot    };
768bab661aSEmmanuel Vadot
778bab661aSEmmanuel Vadot  - |
788bab661aSEmmanuel Vadot    pcie@0 {
798bab661aSEmmanuel Vadot        #address-cells = <3>;
808bab661aSEmmanuel Vadot        #size-cells = <2>;
81*8d13bc63SEmmanuel Vadot        ranges = <0x02000000 0x0 0x100000 0x10000000 0x0 0x0>;
82*8d13bc63SEmmanuel Vadot        reg = <0x0 0x1000>;
838bab661aSEmmanuel Vadot        device_type = "pci";
848bab661aSEmmanuel Vadot
858bab661aSEmmanuel Vadot        switch@0,0 {
868bab661aSEmmanuel Vadot            reg = <0x0 0x0 0x0 0x0 0x0>;
878bab661aSEmmanuel Vadot            compatible = "pci11ab,c80c";
888bab661aSEmmanuel Vadot            nvmem-cells = <&mac_address 0>;
898bab661aSEmmanuel Vadot            nvmem-cell-names = "mac-address";
908bab661aSEmmanuel Vadot        };
918bab661aSEmmanuel Vadot    };
92