This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

keystone II 1G support on XGE driver

Other Parts Discussed in Thread: 66AK2E05

Hello,

supports the XGE driver 1G or only 10G.

I ask because I set the link rate to 1 for K2SERDES_LINK_RATE_1P25G, but the driver message are

"XGE serdes invalid ref_clock code 1"

How I have to configure the cpswx part in the device tree to get 1G support?

Best regards,

Sebastian

  • Hi,

    Keystone II devices support 10G and 1G. Please provide your device part number.

    Take look at below link.
    e2e.ti.com/.../1388511

    Thanks,
  • Hi Sebastien,

    What is your MCSDK version ?
    What board are you using, custom or EVM ?
    What is your EVM board ?
    K2HK or K2E ?

    P.S: By default, ethernet 1G support has been enabled.

    For 10G support,

  • Hello Titus,

    I have a custom board with a X66AK2E CPU. I use the sdk version MCSDK 3.1.0.
    My custom board use a PHY on the XFI Channel Port0.
    At the moment the XGE driver is configured for 10G support.

    How can I configured the driver for 1G support?

    Best regards,
    Sebastian
  • Hello Titus,

    I give you additional information.

    The 10GbE Switch Subsystem supports 1G and 10G look on data sheet SPRUHJ5 February 2013 page 24.

    We want to now how we should configured the XGE driver in the device tree to get 1G mode.

    At the moment the XGE driver works only in 10G mode.

    Best regards,

    Sebastian

  • Hi Sebastian,

    Sorry for the delayed response.
    As I told you early, by default 1G support had been enabled in the following link and you may ned to change for 10G support if needed.

    linux-keystone/arch/arm/boot/dts/k2e-net.dtsi

    Please refer to the following post.

    e2e.ti.com/.../1388511
  • Hello Titus,

    I don't understand you.

    The keystone II (66AK2E05) has a 9 Port Gigabit Ethernet Switch Subsystem and a 3 Port 10 Gigabit Ethernet Switch Subsystem. The 10 Gigabit Ethernet Switch Subsystem can work in 10G Mode or in 1G Mode.

    In your link you told me the placement for the 9 Port Gigabit Ethernet Switch Subsystem, which use the cpsw driver.

    The 10 Gigabit Ethernet Switch Subsystem use the cpswx driver to support 10G. Now I want to use the 10 Gigabit Ethernet Switch Subsystem in 1G Mode. How I have to configure the device tree to get the 10 Gigabit Ethernet Switch Subsystem in 1G Mode.

    I make following changes in the device tree:

    cpswx: cpswx@2f00000 { ...

    serdes {
                link_rate = <1>; /* K2SERDES_LINK_RATE_1P25G */
                tx_ctrl_override = <2 0 2 12 4>; /* c1 c2 cm tx_att tx_vreg */
                equalizer_flags = <1 1 1>; /* vreg cdfe offset */
            };

    };

    But the driver tells me that the link rate of 1.25G isn't supported.

    This is the output:

    XGE serdes invalid link_rate code 1

    It seems to me that at the moment only 10G mode for the 10 Gigabit Ethernet Switch Subsystem is supported.

    Is that right or what do I wrong?

    Best regards,

    Sebastian

  • Hi Sebastian,
    Ah...got it.
    Thanks for your clarification.
  • Hi Sebastian,

    I've looked into the XGE driver.

    drivers/net/ethernet/ti/keystone_xgepcsr.c

        if (hw->ref_clock_rate != K2SERDES_REF_CLOCK_156P25M) {
            pr_err("XGE serdes invalid ref_clock code %d",
                hw->ref_clock_rate);
            return -EINVAL;
        }

        if (hw->link_rate != K2SERDES_LINK_RATE_10P3125G) {
            pr_err("XGE serdes invalid link_rate code %d", hw->link_rate);
            return -EINVAL;
        }

        if (!k2_xge_serdes_configured) {
            pr_info("XGE serdes config:\n");
            pr_info("  ref_clk=%s, link_rate=%s, lanes=%u\n",
                (hw->ref_clock_rate == K2SERDES_REF_CLOCK_156P25M) ?
                    "156.25MHz" : "not 156.25MHz",
                (hw->link_rate == K2SERDES_LINK_RATE_10P3125G) ?
                    "10.3125G" : "1.25G",
                hw->lanes);
            pr_info("  c1=%u, c2=%u, cm=%u, tx_att=%u, tx_vreg=%u\n",
                hw->c1, hw->c2, hw->cm, hw->tx_att, hw->tx_vreg);
            pr_info("  eq flags: vreg=%u, cdfe=%u, offset=%u\n",
                hw->eq_vreg_enable, hw->eq_cdfe_enable,
                hw->eq_offset_enable);
        }


    It seems to be, the 10G driver is not allowing to operate into 1G mode.

    Also I will check with my colleague and let me update.

  • Hi Sebastian,
    Its confirmed that 10GE is not supported in 1G mode.
    We raised this feature & auto-negotiation to dev team.

    e2e.ti.com/.../1459515

    We will inform you once we done.
  • Hello Titus,

    we have to inform our customer about the status of the 1G support.

    Please, can you give me a date for new infos.

    Best regards,

    Sebastian