Based on kernel version 7.2. Page generated on 2026-08-20 08:41 EST.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/net/dsa/smsc,lan9303.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: SMSC/MicroChip LAN9303 three port ethernet switch maintainers: - Frank Li <Frank.Li@nxp.com> description: The LAN9303 is a three port ethernet switch with integrated PHYs for the two external ports. The third port is an RMII/MII interface to a host processor. The device can be managed via I2C or MDIO. Note - always use 'reg = <0/1/2>;' for the three DSA ports, even if the device is configured to use 1/2/3 instead. This hardware configuration will be auto-detected and mapped accordingly. properties: compatible: enum: - smsc,lan9303-i2c - smsc,lan9303-mdio reg: maxItems: 1 reset-gpios: description: GPIO to be used to reset the whole device maxItems: 1 reset-duration: description: Reset duration in milliseconds default: 200 $ref: /schemas/types.yaml#/definitions/uint32 required: - compatible - reg unevaluatedProperties: false allOf: - $ref: dsa.yaml# examples: - | #include <dt-bindings/gpio/gpio.h> /* I2C managed mode */ i2c { #address-cells = <1>; #size-cells = <0>; switch@a { compatible = "smsc,lan9303-i2c"; reg = <0xa>; reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>; reset-duration = <200>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; label = "cpu"; ethernet = <&master>; }; port@1 { reg = <1>; label = "lan1"; }; port@2 { reg = <2>; label = "lan2"; }; }; }; }; - | #include <dt-bindings/gpio/gpio.h> /* MDIO managed mode */ mdio { #address-cells = <1>; #size-cells = <0>; switch@0 { compatible = "smsc,lan9303-mdio"; reg = <0>; reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>; reset-duration = <100>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; label = "cpu"; ethernet = <&master>; }; port@1 { reg = <1>; label = "lan1"; }; port@2 { reg = <2>; label = "lan2"; }; }; }; }; |