Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
132 Views

What is the meaning of instance_id and how to use them in the 10Gbps Ethernet (10GbE) AFU design example on Intel PAC arria10gx

Hello Sir/Madam,

 

I am running the 10Gbps Ethernet

(10GbE) AFU design example on Intel PAC arria10gx, following the document 10Gbps

Ethernet Accelerator Functional Unit Design Example User Guide.

 

I am confused about several instance_id mentioned in the document.

For example ,on page 9, there is description about the instance_id as below

 

To configure the transceiver channel into 10G mode, write 10 to the following

sysfs entry:

$ sudo sh -c "echo 10 > /sys/class/fpga/intel-fpga-dev.<instance_id>\

/intel-fpga-fme.<instance_id>/intel-pac-hssi.<instance_id>.\

auto/hssi_mgmt/config"

<instance_id> represents the consecutive numbering of device, fme, and hssi

instances.

For example:

sudo sh -c "echo 10 > /sys/class/fpga/intel-fpga-dev.0\

/intel-fpga-fme.0/intel-pac-hssi.2.auto/hssi_mgmt/config"

 

For the instance_id relevant to intel-fpga-dev.<instance_id> and /intel-fpga-fme.<instance_id> , I know I can find them using below tcl

 

[root@fig01 bin]# fpgainfo fme

Board Management Controller, microconetroller FW version 26889

Last Power Down Cause: POK_CORE

Last Reset Cause: None

//****** FME ******//

Object Id                     : 0xED00001

PCIe s:b:d:f                  : 0000:D8:00:0

Device Id                     : 0x09C4

Socket Id                     : 0x00

Ports Num                     : 01

Bitstream Id                  : 0x123000200000185

Bitstream Version             : 0x562800030201

Pr Interface Id               : 69528db6-eb31-577a-8c36-68f9faa081f6

Board Management Controller, microcontroller FW version unavailable

Last Power Down Cause: unavailable

Last Reset Cause: unavailable (can't open)

//****** FME ******//

Object Id                     : 0xED00000

PCIe s:b:d:f                  : 0000:3B:00:0

Device Id                     : 0x09C4

Socket Id                     : 0x00

Ports Num                     : 01

Bitstream Id                  : 0x123000200000185

Bitstream Version             : 0x562800030201

Pr Interface Id               : 69528db6-eb31-577a-8c36-68f9faa081f6

 

root@fig01 sw]# ls /sys/class/fpga

intel-fpga-dev.0  intel-fpga-dev.1

[root@fig01 sw]# ls /sys/class/fpga/intel-fpga-dev.0/

device  intel-fpga-fme.0  intel-fpga-port.0  power  subsystem  uevent

[root@fig01 sw]# ls /sys/class/fpga/intel-fpga-dev.0/intel-fpga-fme.0/

altr-asmip2.0.auto  bitstream_id        cache_size  dperf   emif_mgmt  fpga_manager           modalias   power  revision   subsystem     uevent

avmmi-bmc.2.auto    bitstream_metadata  dev         driver  errors     intel-pac-hssi.1.auto  ports_num  pr     socket_id  thermal_mgmt  version

[root@fig01 sw]# ls /sys/class/fpga/intel-fpga-dev.1/

device  intel-fpga-fme.1  intel-fpga-port.1  power  subsystem  uevent

[root@fig01 sw]# ls /sys/class/fpga/intel-fpga-dev.1/intel-fpga-fme.1/

altr-asmip2.3.auto  bitstream_id        cache_size  dperf   emif_mgmt  fpga_manager           modalias   power  revision   subsystem     uevent

avmmi-bmc.5.auto    bitstream_metadata  dev         driver  errors     intel-pac-hssi.4.auto  ports_num  pr     socket_id  thermal_mgmt  version

 

based on above information can I understand

for the card 0000:3B:00:0 , the 4 instance_id can be copied from above printing information intel-fpga-dev.0, intel-fpga-fme.0 , intel-pac-hssi.1.auto, intel-fpga-port.0 

for the card 0000:d8:00:0 , the 4 instance_id can be copied from above printing information intel-fpga-dev.1, intel-fpga-fme.1 , intel-pac-hssi.4.auto, intel-fpga-port.1

 

does that mean

1,above intel-fpga-dev.0, intel-fpga-fme.0 , intel-pac-hssi.1.auto, intel-fpga-port.0  are fixed and do not need to change if the target card is  0000:3B:00:0 ?

2,intel-fpga-dev.1, intel-fpga-fme.1 , intel-pac-hssi.4.auto, intel-fpga-port.1 are fixed and do not need to change if the target card is  0000:d8:00:0?

 

The confused part is how to choose different channel since the example has 4*10G mode and has 4 10g channel (0,1,2,3) ?

I have only found  intel-pac-hssi.1.auto For card 0 , and , intel-pac-hssi.4.auto for card 1 from printing information.

 

Does that mean

1,intel-pac-hssi.1.auto intel-pac-hssi.2.auto , intel-pac-hssi.3.auto are not applicable for card 0?

2,intel-pac-hssi.0.auto intel-pac-hssi.2.auto , intel-pac-hssi.3.auto are not applicable for card 1?

 

If so, how can choose different channel(0,1,2,3) for the same card?

If those unsee parameters  are applicable , for example intel-pac-hssi.1.auto intel-pac-hssi.2.auto , intel-pac-hssi.3.auto are  applicable for card 0,

why I can not print them using above tcl, any other operation I can try please let me know.

 

Thanks

 

Jim

 

0 Kudos
2 Replies
Highlighted
24 Views

correct some wrong typing as below

 

Does that mean

1,intel-pac-hssi.0.auto intel-pac-hssi.2.auto , intel-pac-hssi.3.auto are not applicable for card 0?

2,intel-pac-hssi.0. intel-pac-hssi.1.auto ,auto intel-pac-hssi.2.auto , intel-pac-hssi.3.auto are not applicable for card 1?

 

If so, how can choose different channel(0,1,2,3) for the same card?

If those unsee parameters  are applicable , for example intel-pac-hssi.0.auto intel-pac-hssi.2.auto , intel-pac-hssi.3.auto are  applicable for card 0,

why I can not print them using above tcl, any other operation I can try please let me know.

0 Kudos
Highlighted
Employee
24 Views

Hi,

 

The HSSI.? numbering is already fixed based and enumerated in the OPAE. For Intel Arria 10 PAC card will only have 1 HSSI block as it only have 1 QSFP interface. So in order to run each of the ethernet port, you will need to define which channel to run.

 

Example on sending 0x1000 packet onto each of the channel

./pac_hssi_e10 -b 00 -d 0a -f 0b --channel=0 --action=pkt_send

./pac_hssi_e10 -b 00 -d 0a -f 0b --channel=1 --action=pkt_send

./pac_hssi_e10 -b 00 -d 0a -f 0b --channel=2 --action=pkt_send

./pac_hssi_e10 -b 00 -d 0a -f 0b --channel=3 --action=pkt_send

 

0 Kudos