|
|
@@ -92,23 +92,241 @@
|
|
|
|
|
|
&EMAC0 {
|
|
|
status = "okay";
|
|
|
- phy-handle = <&phy0>;
|
|
|
+
|
|
|
+ fixed-link {
|
|
|
+ speed = <1000>;
|
|
|
+ full-duplex;
|
|
|
+ };
|
|
|
|
|
|
mdio {
|
|
|
#address-cells = <1>;
|
|
|
#size-cells = <0>;
|
|
|
- phy0: ethernet-phy@0 {
|
|
|
+
|
|
|
+ phy_port1: phy@0 {
|
|
|
compatible = "ethernet-phy-id004d.d034";
|
|
|
reg = <0>;
|
|
|
- qca,mib-poll-interval = <500>;
|
|
|
-
|
|
|
- qca,ar8327-initvals = <
|
|
|
- 0x0010 0x40000000
|
|
|
- 0x0624 0x007f7f7f
|
|
|
- 0x0004 0x07a00000 /* PAD0_MODE */
|
|
|
- 0x000c 0x01000000 /* PAD6_MODE */
|
|
|
- 0x007c 0x0000007e /* PORT0_STATUS */
|
|
|
- >;
|
|
|
+ };
|
|
|
+
|
|
|
+ phy_port2: phy@1 {
|
|
|
+ compatible = "ethernet-phy-id004d.d034";
|
|
|
+ reg = <1>;
|
|
|
+ };
|
|
|
+
|
|
|
+ phy_port3: phy@2 {
|
|
|
+ compatible = "ethernet-phy-id004d.d034";
|
|
|
+ reg = <2>;
|
|
|
+ };
|
|
|
+
|
|
|
+ phy_port4: phy@3 {
|
|
|
+ compatible = "ethernet-phy-id004d.d034";
|
|
|
+ reg = <3>;
|
|
|
+ };
|
|
|
+
|
|
|
+ phy_port5: phy@4 {
|
|
|
+ compatible = "ethernet-phy-id004d.d034";
|
|
|
+ reg = <4>;
|
|
|
+ };
|
|
|
+
|
|
|
+ switch0@10 {
|
|
|
+ compatible = "qca,qca8327";
|
|
|
+ reg = <0x10>;
|
|
|
+
|
|
|
+ ports {
|
|
|
+ #address-cells = <1>;
|
|
|
+ #size-cells = <0>;
|
|
|
+
|
|
|
+ port@0 {
|
|
|
+ reg = <0>;
|
|
|
+ ethernet = <&EMAC0>;
|
|
|
+ phy-mode = "rgmii-id";
|
|
|
+ tx-internal-delay-ps = <2000>;
|
|
|
+
|
|
|
+ fixed-link {
|
|
|
+ speed = <1000>;
|
|
|
+ full-duplex;
|
|
|
+ };
|
|
|
+ };
|
|
|
+
|
|
|
+ port@1 {
|
|
|
+ reg = <1>;
|
|
|
+ label = "lan4";
|
|
|
+ phy-mode = "internal";
|
|
|
+ phy-handle = <&phy_port1>;
|
|
|
+
|
|
|
+ leds {
|
|
|
+ #address-cells = <1>;
|
|
|
+ #size-cells = <0>;
|
|
|
+
|
|
|
+ led@0 {
|
|
|
+ reg = <0>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <0>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@1 {
|
|
|
+ reg = <1>;
|
|
|
+ color = <LED_COLOR_ID_ORANGE>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <1>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@2 {
|
|
|
+ reg = <2>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <2>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
+
|
|
|
+ port@2 {
|
|
|
+ reg = <2>;
|
|
|
+ label = "lan3";
|
|
|
+ phy-mode = "internal";
|
|
|
+ phy-handle = <&phy_port2>;
|
|
|
+
|
|
|
+ leds {
|
|
|
+ #address-cells = <1>;
|
|
|
+ #size-cells = <0>;
|
|
|
+
|
|
|
+ led@0 {
|
|
|
+ reg = <0>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <0>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@1 {
|
|
|
+ reg = <1>;
|
|
|
+ color = <LED_COLOR_ID_ORANGE>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <1>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@2 {
|
|
|
+ reg = <2>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <2>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
+
|
|
|
+ port@3 {
|
|
|
+ reg = <3>;
|
|
|
+ label = "lan2";
|
|
|
+ phy-mode = "internal";
|
|
|
+ phy-handle = <&phy_port3>;
|
|
|
+
|
|
|
+ leds {
|
|
|
+ #address-cells = <1>;
|
|
|
+ #size-cells = <0>;
|
|
|
+
|
|
|
+ led@0 {
|
|
|
+ reg = <0>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <0>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@1 {
|
|
|
+ reg = <1>;
|
|
|
+ color = <LED_COLOR_ID_ORANGE>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <1>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@2 {
|
|
|
+ reg = <2>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <2>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
+
|
|
|
+ port@4 {
|
|
|
+ reg = <4>;
|
|
|
+ label = "lan1";
|
|
|
+ phy-mode = "internal";
|
|
|
+ phy-handle = <&phy_port4>;
|
|
|
+
|
|
|
+ leds {
|
|
|
+ #address-cells = <1>;
|
|
|
+ #size-cells = <0>;
|
|
|
+
|
|
|
+ led@0 {
|
|
|
+ reg = <0>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <0>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@1 {
|
|
|
+ reg = <1>;
|
|
|
+ color = <LED_COLOR_ID_ORANGE>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <1>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@2 {
|
|
|
+ reg = <2>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_LAN;
|
|
|
+ function-enumerator = <2>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
+
|
|
|
+ port@5 {
|
|
|
+ reg = <5>;
|
|
|
+ label = "wan";
|
|
|
+ phy-mode = "internal";
|
|
|
+ phy-handle = <&phy_port5>;
|
|
|
+
|
|
|
+ leds {
|
|
|
+ #address-cells = <1>;
|
|
|
+ #size-cells = <0>;
|
|
|
+
|
|
|
+ led@0 {
|
|
|
+ reg = <0>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_WAN;
|
|
|
+ function-enumerator = <0>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@1 {
|
|
|
+ reg = <1>;
|
|
|
+ color = <LED_COLOR_ID_ORANGE>;
|
|
|
+ function = LED_FUNCTION_WAN;
|
|
|
+ function-enumerator = <1>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+
|
|
|
+ led@2 {
|
|
|
+ reg = <2>;
|
|
|
+ color = <LED_COLOR_ID_GREEN>;
|
|
|
+ function = LED_FUNCTION_WAN;
|
|
|
+ function-enumerator = <2>;
|
|
|
+ default-state = "keep";
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
};
|
|
|
};
|
|
|
};
|