장치 트리에서 이더넷 포트 수정

장치 트리에서 이더넷 포트 수정

mpc8308erdb의 vitesse 스위치를 ks8999 스위치로 변경하고 싶습니다. 그리고 eTSEC0과 eTSEC1을 두 개의 독립적인 ks8999 스위치에 연결하세요.

나는 이 새로운 조건에서 리눅스가 작동하도록 하려면 어떤 파일을 변경해야 하는지 알고 싶습니다. 이 스위치는 고속 이더넷 스위치이며 MII 인터페이스를 통해 마더보드에 연결됩니다. (mdio 인터페이스가 없습니다)

이렇게 장치 트리를 변경하고 다른 포트를 확인하여 스위치 기능을 확인했는데 네트워크가 작동하지 않습니다. 변경되지 않은 장치 트리:

        enet0: ethernet@24000 {
            cell-index = <0>;
            device_type = "network";
            model = "eTSEC";
            compatible = "gianfar";
            reg = <0x24000 0x1000>;
            local-mac-address = [ 00 00 00 00 00 00 ];
            interrupts = <32 0x8 33 0x8 34 0x8>;
            interrupt-parent = <&ipic>;
            tbi-handle = <&tbi0>;
            phy-handle = < &phy0 >;
/*          sleep = <&pmc 0xc0000000>;  */
            fsl,magic-packet;
            fsl,lossless-flow-ctrl = <0>;
            ptimer-handle = < &ptp_timer >;
        };

        enet1: ethernet@25000 {
            cell-index = <1>;
            device_type = "network";
            model = "eTSEC";
            compatible = "gianfar";
            reg = <0x25000 0x1000>;
            local-mac-address = [ 00 00 00 00 00 00 ];
            interrupts = <35 0x8 36 0x8 37 0x8>;
            interrupt-parent = <&ipic>;
            /* tbi-handle = <&tbi1>; */
            /* phy-handle = < &phy1 >; */
            /* Vitesse 7385 isn't on the MDIO bus */
            fixed-link = <1 1 1000 0 0>;
/*          sleep = <&pmc 0x30000000>;  */
            fsl,magic-packet;
            fsl,lossless-flow-ctrl = <0>;
            ptimer-handle = < &ptp_timer >;
            phy-connection-type = "rgmii-id";
        };

변경된 장치 트리:

        enet0: ethernet@24000 {
            cell-index = <0>;
            device_type = "network";
            model = "eTSEC";
            compatible = "gianfar";
            reg = <0x24000 0x1000>;
            local-mac-address = [ 00 00 00 00 00 00 ];
            interrupts = <32 0x8 33 0x8 34 0x8>;
            interrupt-parent = <&ipic>;
            fixed-link = <2 1 100 0 0>;         
/*          sleep = <&pmc 0xc0000000>;  */
            fsl,magic-packet;
            fsl,lossless-flow-ctrl = <0>;
            ptimer-handle = < &ptp_timer >;
            phy-connection-type = "mii";
        };

        enet1: ethernet@25000 {
            cell-index = <1>;
            device_type = "network";
            model = "eTSEC";
            compatible = "gianfar";
            reg = <0x25000 0x1000>;
            local-mac-address = [ 00 00 00 00 00 00 ];
            interrupts = <35 0x8 36 0x8 37 0x8>;
            interrupt-parent = <&ipic>;
            fixed-link = <1 1 100 0 0>;
/*          sleep = <&pmc 0x30000000>;  */
            fsl,magic-packet;
            fsl,lossless-flow-ctrl = <0>;
            ptimer-handle = < &ptp_timer >;
            phy-connection-type = "mii";
        };

레퍼런스 보드에서 eTSEC 하나는 phy에 연결되고 다른 eTSEC는 기가비트 이더넷 스위치에 연결됩니다.

관련 정보