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.

DS280DF810: DS280DF810 serdes mode usage.

Part Number: DS280DF810

Hi Ti team

I have a project use DS280DF810 x2 for 2x QSFP28 port.

So I have 8 Tx serdes and 8 Rx serdes.

One DS280DF810 connect with all of TX signal , another one DS280DSF810 connect with all of RX signal .

We had already verified the 2 port working in 40G mode and 100G mode.

Now we want to support 1 port with 40G mode and 1 port with 100 mode.

In other words , DS280DF810 need support 4 lanes with 10.3125Gbps and 4 lanes with 25.78125Gnps.

Can DS280DF810 support different rate in each channel ?

If yes , how can I config this usage ?

thanks

PEter

  • HI Peter,

    Yes, each channel operates independently, so it's not a problem to configure 4 channels to 10.3125 Gbps, and 4 channels to 25.78125 Gbps.

    Information on data rate configuration can be found in the device programming guide.  If you don't already have access to the DS280DF810 mysecure folder (which has the programming guide), you can request access from the product page.

    For example, to configure channel 0 to 10.3125 Gbps, follow the procedure below.

    Register Address Register Value Write Mask Comment
    0xFF 0x01 0x01 Enables SMBus access to channel registers
    0xFC 0x01 0xFF Select channel 0
    0x2F 0x00 0xF0 Select 10.3125 Gbps
    0x0A 0x0C 0x0C Assert CDR reset
    0x0A 0x00 0x0C Release CDR reset

    Thanks,

    Drew

  • Hi Drew

    Thanks your feedback. I try it with above sequence.

    0x18 , 0x19 as my system DS280 I2C address ,

    DS280_A : Ch0-3 as 10G , CH4-7 for 25G

    root@(none):/# i2cset -y 0 0x18 0xfc 0x0F
    root@(none):/# i2cset -y 0 0x18 0xff 0x01
    root@(none):/# i2cset -y 0 0x18 0x00 0x04
    root@(none):/# i2cset -y 0 0x18 0x2f 0x04
    root@(none):/# i2cset -y 0 0x18 0x0a 0x0c
    root@(none):/# i2cset -y 0 0x18 0x31 0x40
    root@(none):/# i2cset -y 0 0x18 0x1e 0xe3
    root@(none):/# i2cset -y 0 0x18 0x0a 0x00
    root@(none):/#
    root@(none):/# i2cset -y 0 0x18 0xfc 0xF0
    root@(none):/# i2cset -y 0 0x18 0xff 0x01
    root@(none):/# i2cset -y 0 0x18 0x00 0x04
    root@(none):/# i2cset -y 0 0x18 0x2f 0x54
    root@(none):/# i2cset -y 0 0x18 0x0a 0x0c
    root@(none):/# i2cset -y 0 0x18 0x31 0x40
    root@(none):/# i2cset -y 0 0x18 0x1e 0xe3
    root@(none):/# i2cset -y 0 0x18 0x0a 0x00

    DS280_B : Ch0-3 as 10G , CH4-7 for 25G

    root@(none):/# i2cset -y 0 0x19 0xfc 0x0F
    root@(none):/# i2cset -y 0 0x19 0xff 0x09
    root@(none):/# i2cset -y 0 0x19 0x00 0x04
    root@(none):/# i2cset -y 0 0x19 0x0a 0x0c
    root@(none):/# i2cset -y 0 0x19 0x2f 0x04
    root@(none):/# i2cset -y 0 0x19 0x31 0x40
    root@(none):/# i2cset -y 0 0x19 0x1e 0xe3
    root@(none):/# i2cset -y 0 0x19 0x0a 0x00
    root@(none):/#
    root@(none):/# i2cset -y 0 0x19 0xfc 0xF0
    root@(none):/# i2cset -y 0 0x19 0xff 0x09
    root@(none):/# i2cset -y 0 0x19 0x00 0x04
    root@(none):/# i2cset -y 0 0x19 0x0a 0x0c
    root@(none):/# i2cset -y 0 0x19 0x2f 0x54
    root@(none):/# i2cset -y 0 0x19 0x31 0x40
    root@(none):/# i2cset -y 0 0x19 0x1e 0xe3
    root@(none):/# i2cset -y 0 0x19 0x0a 0x00

    And my ethernet port link up when I change speed form 100G to 40G .

    ///////////////////////////////////

    ce0( 29) down 4 100G FD SW No Forward TX RX None FA CAUI4 12284
    ce1( 30) up     4 100G FD SW No Forward TX RX None FA CAUI4 12284

    ----------------------------

    xe12( 29)   up 4 40G FD SW No Forward TX RX None FA XLAUI 12284
    ce0  ( 30)   up 4 100G FD SW No Forward TX RX None FA CAUI4 12284

    ///////////////////////////////////

    If yes , Please also help to review my command sequence , if there exist something missing.

    thanks your help.

    PEter

  • Hi Peter,

    For DS280DF810 with I2C address 0x19, it's not clear to me why you're writing 0x09 to 0xFF instead of 0x01.  Can you clarify?

    Besides this, your sequence looks good.

    It sounds like this configuration sequence is working in your system.  Is this correct?

    Thanks,

    Drew

  • Hi Drew

    Yes , as your mention , 0xFF should be 0x01 not 0x09. it was my typo.

    After change to 0x01 , my system ethernet port still workable.

    thanks

    Peter