04-02-2019 06:13 AM
Hi, I'm using petalinux 2018.3 and I want to upgrade my design from 1G(using the PHY present on my custom board with virtex ultrascale+ (XCVU9P)) to 10G Ethernet(Using Xilinx 10G ethernet subsystem + SFP) but I didn't find any information about the Linux kernel. Does petalinux 2018.3, support to 10G Ethernet as primary ethernet?
04-14-2019 11:13 PM
04-03-2019 04:07 AM
Yes, this is supported in Linux. Are you seeing any issues?
04-03-2019 04:26 AM
@stephenmYes. We are unable to find the XXV_ethernet_0 entry in the petalinx-config -> ethernet settings option. The hdf file and dts has entries for it.
04-03-2019 07:04 AM
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842485/Linux+AXI+Ethernet+driver
CONFIG_ETHERNET
CONFIG_NET_VENDOR_XILINX
CONFIG_XILINX_AXI_EMAC
CONFIG_AXIENET_HAS_MCDMA (Select this option In the design if Axi Ethernet is configured with Axi MCDMA)
CONFIG_XILINX_PHY (For testing SGMII/1000Base-x Configuration with PCS/PMA Core)
What IP are you using with this; the mcdma, dma or fifo?
04-03-2019 09:30 PM
CONFIG_ETHERNET =y
CONFIG_NET_VENDOR_XILINX =y
CONFIG_XILINX_AXI_EMAC =y
CONFIG_AXIENET_HAS_MCDMA N/A we are not using it right now. (Select this option In the design if Axi Ethernet is configured with Axi MCDMA)
CONFIG_XILINX_PHY =y
I have configured 10G the following way. When I added it to the design I dont see the XXV_ethernet (10G). See the screenshot. I want to set my primary ethernet as 10G.
Even when I proceed I run into this problem: https://forums.xilinx.com/t5/Evaluation-Boards/Petalinux-2018-3-runs-into-error-after-adding-10G-ethernet/td-p/957827
10G design
No 10G ethernet. Only 1G ethernet
Petalinux-config
04-04-2019 01:49 AM
This looks fine. In the resulting device tree, is the alias setup correctly?
Open system-top.dts, and the ethernet0 should be set to your axi ethernet node (you can see this in the pl.dtsi)
Ill respond to other thread seperately.
04-04-2019 03:43 AM
Looks like alias is set properly.
System-top.dts:
/dts-v1/;
#include "pl.dtsi"
/ {
chosen {
bootargs = "earlycon";
stdout-path = "serial0:115200n8";
};
aliases {
ethernet0 = &axi_ethernet;
ethernet1 = &xxv_ethernet_0;
i2c0 = &iic_main;
serial0 = &rs232_uart;
spi0 = &axi_qspi;
};
memory@80000000 {
device_type = "memory";
reg = <0x80000000 0x80000000>;
};
};
#include "system-user.dtsi"
Also please see the pl.dtsi entry:
xxv_ethernet_0: ethernet@44a20000 {
axistream-connected = <&xxv_ethernet_0_dma_0>;
axistream-control-connected = <&xxv_ethernet_0_dma_0>;
clock-frequency = <100000000>;
compatible = "xlnx,xxv-ethernet-2.5", "xlnx,xxv-ethernet-1.0";
device_type = "network";
local-mac-address = [00 0a 35 00 00 01];
phy-mode = "base-r";
reg = <0x44a20000 0x10000>;
xlnx = <0x0>;
xlnx,add-gt-cntrl-sts-ports = <0x0>;
xlnx,anlt-clk-in-mhz = <0x64>;
xlnx,axis-tdata-width = <0x40>;
xlnx,axis-tkeep-width = <0x7>;
xlnx,base-r-kr = "BASE-R";
xlnx,clocking = "Asynchronous";
xlnx,core = "Ethernet MAC+PCS/PMA 64-bit";
xlnx,data-path-interface = "AXI Stream";
xlnx,enable-datapath-parity = <0x0>;
xlnx,enable-pipeline-reg = <0x0>;
xlnx,enable-preemption = <0x0>;
xlnx,enable-preemption-fifo = <0x0>;
xlnx,enable-rx-flow-control-logic = <0x0>;
xlnx,enable-time-stamping = <0x0>;
xlnx,enable-tx-flow-control-logic = <0x0>;
xlnx,enable-vlane-adjust-mode = <0x0>;
xlnx,family-chk = "kintexu";
xlnx,fast-sim-mode = <0x0>;
xlnx,gt-diffctrl-width = <0x3>;
xlnx,gt-drp-clk = "100.00";
xlnx,gt-group-select = "Quad X0Y0";
xlnx,gt-location = <0x1>;
xlnx,gt-ref-clk-freq = "156.25";
xlnx,gt-type = "GTH";
xlnx,include-auto-neg-lt-logic = "None";
xlnx,include-axi4-interface = <0x1>;
xlnx,include-dre ;
xlnx,include-fec-logic = <0x0>;
xlnx,include-rsfec-logic = <0x0>;
xlnx,include-shared-logic = <0x1>;
xlnx,include-user-fifo = <0x1>;
xlnx,lane1-gt-loc = "X0Y8";
xlnx,lane2-gt-loc = "NA";
xlnx,lane3-gt-loc = "NA";
xlnx,lane4-gt-loc = "NA";
xlnx,line-rate = <0xa>;
xlnx,mii-ctrl-width = <0x4>;
xlnx,mii-data-width = <0x20>;
xlnx,num-of-cores = <0x1>;
xlnx,ptp-clocking-mode = <0x0>;
xlnx,ptp-operation-mode = <0x2>;
xlnx,runtime-switch = <0x0>;
xlnx,rxmem = <0x20000>;
xlnx,switch-1-10-25g = <0x0>;
xlnx,tx-latency-adjust = <0x0>;
xlnx,tx-total-bytes-width = <0x4>;
xlnx,xgmii-interface = <0x1>;
xxv_ethernet_0_mdio: mdio {
#address-cells = <1>;
#size-cells = <0>;
};
};
04-04-2019 03:58 AM - edited 04-04-2019 03:59 AM
you can update the alias if you want to make this primary in the system-user.dtsi:
&aliases {
ethernet0 = &xxv_ethernet_0;
ethernet1 = &axi_ethernet;
};
04-14-2019 11:13 PM
05-13-2019 10:52 AM
05-14-2019 02:31 AM
Can you try petalinux-config -> Subsystem AUTO Hardware Settings -> Ethernet Settings -> Primary Ethernet
If using xxvethernet, you should see this here
05-14-2019 10:59 AM
I'm using 10G ethernet subsystem(PG157)