T2080RDB XFI (10.3125 Gbaud) baudwidth perform badly.

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

T2080RDB XFI (10.3125 Gbaud) baudwidth perform badly.

6,846 次查看
Rainight
Contributor III

hello, I have customized a board with T2080RDB , and used XFI (10.3125 Gbaud, fm1-mac9) , Serdes1 CLK 156.25 Mhz.

but when I connect 10G ethernent line directly to PC's intel 10G net card and test this board 's baudwidth using TCP and UDP ,

its show that this board's baudwidth(multipale socket, multiple thread) about 5Gbps in send data mode, and about 1Gbps in receive data mode. and be worse under single socket,single thread.

my board use SFP+ Connector.

addtion when I test 1G Ethernet fm1-mac3 in local net, its baudwidth about 800Mbps (send), 200Mbps (receive). how to deal it ?

标记 (3)
0 项奖励
回复
11 回复数

6,769 次查看
Rainight
Contributor III

@yipingwang   hi, I tried add "fixed-link = <0 1 10000 0 0>;" but it's useless. 

And recent days, I tried linux 4.9, 4.19, and  5.4,  in https://source.codeaurora.org/external/qoriq/qoriq-components/linux , my board's 10G eth (ethernet@f0000) also not work , it only receive bytes when PC ping it's port,  but not send any bytes out.   Addtion, any version of linux above (4.9, 4.19, and  5.4) I build , my 1G eth (ethernet@e4000)  baudwidth performs good (up to 1Gbps). 

And especially that when I build QorIQ sdk 2.0's linux (v4.1), my board's 1G eth (ethernet@e4000) and 10G eth (ethernet@f0000) could work, but both baudwidth perform very badly.

 

0 项奖励
回复

6,766 次查看
Rainight
Contributor III

I  add a line "q->enqueue = NULL;"  in function __dev_queue_xmit    (net/core/dev.c)(linux 5.4), my 10G eth (ethernet@f0000) could work,  but baudwidth only 2Gbps.

    q->enqueue = NULL;

    if (q->enqueue) {
		rc = __dev_xmit_skb(skb, q, dev, txq);
		goto out;
	}

 

and report error like this:

fsl_dpaa_mac ffe4f0000.ethernet eth4: Err FD status = 0x00080000

 

0.png

0 项奖励
回复

6,754 次查看
yipingwang
NXP TechSupport
NXP TechSupport

Please refer to the attached uImage, which I generated from Yocto 3.1 release.

I have verified it on T2080RDB board, the 10G port (ethernet@f0000) works normally.

0 项奖励
回复

6,749 次查看
Rainight
Contributor III

thx, but my boards have not usb, so that uImage could not start.

AND SPECIALLY, my board's 10G eth have not PHY,  two boards connectted with MAC to MAC mode.

0.png

0 项奖励
回复

6,743 次查看
Rainight
Contributor III

here is my linux config (v 5.11)

0 项奖励
回复

6,714 次查看
yipingwang
NXP TechSupport
NXP TechSupport

I didn't find problem in your Kernel configuration file.

In dts file arch/powerpc/boot/dts/fsl/t2080rdb.dts, please do the following modification, then check the 10G port performance with SDK 2.0 images.

fm1mac9: ethernet@f0000 { /* 10GEC1 */
phy-handle = <&xg_cs4315_phy1>;
phy-connection-type = "xgmii";
};

Modify to

fm1mac9: ethernet@f0000 { /* 10GEC1 */
               fixed-link = <0 1 10000 0 0>;
               phy-connection-type = "xgmii";
};

 

0 项奖励
回复

6,793 次查看
Rainight
Contributor III

@yipingwang hi, days I build linux kernel 5.11 in my board, and almost check every DPAA configures in kernel's config, and use new kernel's dts file.

Finally, I found my board's 1G net (fm1-mac3) perform good, both send and receive mode has 1Gbps baudwidth.

But my 10G net (fm-mac9) did not work, when my PC ping it's 10G net port, My board could receive bytes ,but not send any bytes out .

what should i do ?

0 项奖励
回复

6,783 次查看
yipingwang
NXP TechSupport
NXP TechSupport

Probably there is defect in Linux kernel 5.11.

The latest Yocto SDK release for T2080RDB from NXP is https://source.codeaurora.org/external/qoriq/qoriq-components/yocto-sdk/tree/readme?h=dunfell, The Kernel version is 5.4.3. You could use this version SDK, if you prefer higher version Linux Kernel.

0 项奖励
回复

6,817 次查看
yipingwang
NXP TechSupport
NXP TechSupport

Which version Linux SDK are you using? QorIQ Linux SDK 2.0? Do you use the default Linux Kernel configuration?

Do you have T2080RDB demo board? If yes, please run the same images on T2080RDB as your custom board and put T2080RDB in your test environment to check the performance data.

In addition, please disable CONFIG_NETFILTER and CONFIG_CPU_FREQ in your Linux Kernel configuration file to rebuild Linux Kernel to do performance test.

Do you use iperf to do performance test? Please refer to the following command.

Sever: iperf  -s

Client: iperf -c 10.10.10.2 -P 10 -t 30

Please try to connect two target boards together to do performance test.

 

0 项奖励
回复

6,804 次查看
Rainight
Contributor III

I use sdk2.0 and update to 1703,and not change anything config, and fman,uboot, linux-kernel,rootfs keep original. CONFIG_NETFILTER and CONFIG_CPU_FREQ also be disabled .

I tried to connect two boards with XFI 10G eth, but their baudwidth also perform badly (iperf with -P 10 -t 0), only about 1Gbps baudwidth  what ever in send mode and receive mode.

I not use cs4315 through EMI2,  but config SerDes1 Lane1 directly connet a SFP + optics with I2C
, should I change the t2080rdb.dts config for fm-mac9, or make some change for linux kernel config when build?

0 项奖励
回复

6,799 次查看
yipingwang
NXP TechSupport
NXP TechSupport

Please configure fm1mac9 as the following in arch/powerpc/boot/dts/fsl/t2080rdb.dts.

ethernet@f0000 { /* 10GEC2 */
               fixed-link = <0 1 10000 0 0>;
               phy-connection-type = "xgmii";
};

0 项奖励
回复