Thread (1 message) 1 message, 1 author, 2020-10-19

Re: Dts for eth network based on marvell's mv88e6390x crashes Xilinx's linux-kernel v5.4

From: Andrew Lunn <andrew@lunn.ch>
Date: 2020-10-19 14:26:20
Also in: lkml

On Mon, Oct 19, 2020 at 05:05:08PM +0300, michael alayev wrote:
Hello Andrew,


    > Please fix your email client and


    > post the DT file for review. I will

    > then point out some of the errors.



    &gem0 {
        status = "okay";
        phy-mode = "rgmii-id";
        phy-handle = <&phy0>;
The diagram you showed had gem0 connected directly to the switch. So
this phy-handle is wrong. Or the diagram is wrong.
        mdio {
            #address-cells = <1>;
            #size-cells = <0>;

            phy0: ethernet-phy@0 {
                compatible = "marvell";
                reg = <0>;
                device_type = "ethernet-phy";
                fixed-link {
                    speed = <1000>;
                    full-duplex;
                };
            };

            debug_phy: ethernet-phy@1 {
            compatible = "marvell";
            reg = <1>;
            device_type = "ethernet-phy";
            label = "debug-phy";
        };
indentation is all wrong here.
        switch0: switch@2 {
            compatible = "marvell,mv88e6190";
            #address-cells = <1>;
            #size-cells = <0>;
            reg = <2>;

            dsa,member = <0 0>;

            ports {
                #address-cells = <1>;
                #size-cells = <0>;

                switch0phy1: port@0 {
                    reg = <0>;
                    label = "uid208-cpu";
                    ethernet = <&gem0>;
                    phy-mode = "rgmii-id";
You have gem0 using gphy-mode = "rgmii-id" as well. Both doing delays
will not work. You should drop the one in gem0.
                    fixed-link {
                        speed = <1000>;
                        full-duplex;
                    };
                };


                port@1 {
                    reg = <1>;
                    label = "uid201-1A";
                };

                port@2 {
                    reg = <2>;
                    label = "uid202-2A-p9-1A";
                    phy-mode = "1000base-x";
                    fixed-link {
                        speed = <1000>;
                        full-duplex;
                    };
Why both 1000base-x and fixed link? Do you have an SFP connected? If
so, describe the SFP in DT.
                };

                switch0port10: port@10 {
                    reg = <10>;
                    label = "dsa";
                    link = <&switch1port10>;
                    phy-mode = "1000base-x";
                    fixed-link {
                        speed = <1000>;
                        full-duplex;
                    };
                };
This is a 6390X right? Why limit it to 1000base-X when it could be
doing 10G?

      Andrew
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help