The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/net/microchip,lan966x-switch.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/net/microchip,lan966x-switch.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Microchip Lan966x Ethernet switch controller
    8 
    9 maintainers:
   10   - Horatiu Vultur <horatiu.vultur@microchip.com>
   11 
   12 description: |
   13   The lan966x switch is a multi-port Gigabit AVB/TSN Ethernet Switch with
   14   two integrated 10/100/1000Base-T PHYs. In addition to the integrated PHYs,
   15   it supports up to 2RGMII/RMII, up to 3BASE-X/SERDES/2.5GBASE-X and up to
   16   2 Quad-SGMII/Quad-USGMII interfaces.
   17 
   18 properties:
   19   $nodename:
   20     pattern: "^switch@[0-9a-f]+$"
   21 
   22   compatible:
   23     const: microchip,lan966x-switch
   24 
   25   reg:
   26     items:
   27       - description: cpu target
   28       - description: general control block target
   29 
   30   reg-names:
   31     items:
   32       - const: cpu
   33       - const: gcb
   34 
   35   interrupts:
   36     minItems: 1
   37     items:
   38       - description: register based extraction
   39       - description: frame dma based extraction
   40       - description: analyzer interrupt
   41       - description: ptp interrupt
   42       - description: ptp external interrupt
   43 
   44   interrupt-names:
   45     minItems: 1
   46     items:
   47       - const: xtr
   48       - const: fdma
   49       - const: ana
   50       - const: ptp
   51       - const: ptp-ext
   52 
   53   resets:
   54     items:
   55       - description: Reset controller used for switch core reset (soft reset)
   56 
   57   reset-names:
   58     items:
   59       - const: switch
   60 
   61   ethernet-ports:
   62     type: object
   63 
   64     properties:
   65       '#address-cells':
   66         const: 1
   67       '#size-cells':
   68         const: 0
   69 
   70     additionalProperties: false
   71 
   72     patternProperties:
   73       "^port@[0-9a-f]+$":
   74         type: object
   75 
   76         $ref: "/schemas/net/ethernet-controller.yaml#"
   77         unevaluatedProperties: false
   78 
   79         properties:
   80           '#address-cells':
   81             const: 1
   82           '#size-cells':
   83             const: 0
   84 
   85           reg:
   86             description:
   87               Switch port number
   88 
   89           phys:
   90             description:
   91               Phandle of a Ethernet SerDes PHY
   92 
   93           phy-mode:
   94             description:
   95               This specifies the interface used by the Ethernet SerDes towards
   96               the PHY or SFP.
   97             enum:
   98               - gmii
   99               - sgmii
  100               - qsgmii
  101               - 1000base-x
  102               - 2500base-x
  103 
  104           phy-handle:
  105             description:
  106               Phandle of a Ethernet PHY.
  107 
  108           sfp:
  109             description:
  110               Phandle of an SFP.
  111 
  112           managed: true
  113 
  114         required:
  115           - reg
  116           - phys
  117           - phy-mode
  118 
  119         oneOf:
  120           - required:
  121               - phy-handle
  122           - required:
  123               - sfp
  124               - managed
  125 
  126 required:
  127   - compatible
  128   - reg
  129   - reg-names
  130   - interrupts
  131   - interrupt-names
  132   - resets
  133   - reset-names
  134   - ethernet-ports
  135 
  136 additionalProperties: false
  137 
  138 examples:
  139   - |
  140     #include <dt-bindings/interrupt-controller/arm-gic.h>
  141     switch: switch@e0000000 {
  142       compatible = "microchip,lan966x-switch";
  143       reg =  <0xe0000000 0x0100000>,
  144              <0xe2000000 0x0800000>;
  145       reg-names = "cpu", "gcb";
  146       interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
  147       interrupt-names = "xtr";
  148       resets = <&switch_reset 0>;
  149       reset-names = "switch";
  150       ethernet-ports {
  151         #address-cells = <1>;
  152         #size-cells = <0>;
  153 
  154         port0: port@0 {
  155           reg = <0>;
  156           phy-handle = <&phy0>;
  157           phys = <&serdes 0 0>;
  158           phy-mode = "gmii";
  159         };
  160 
  161         port1: port@1 {
  162           reg = <1>;
  163           sfp = <&sfp_eth1>;
  164           managed = "in-band-status";
  165           phys = <&serdes 2 4>;
  166           phy-mode = "sgmii";
  167         };
  168       };
  169     };
  170 
  171 ...

Cache object: 587e5661db058f6061a8ba0a5b4a7307


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.