LX2160ARDB, rev.2: How to directly assign a DPAA2 network interface to several VMs

cancel
Showing results for 
Search instead for 
Did you mean: 

LX2160ARDB, rev.2: How to directly assign a DPAA2 network interface to several VMs

466 Views
sevseev
Contributor I

Hello, we're trying to use direct DPAA2 networking assignment on LX2160ARDB rev.2 board. We are using 21.08 LSDK.

We successfully assigned dpmac.4 by following the procedures described in LSDK User Guide, sections 10.1.3.7 and 10.1.3.8.  Subsequent attempts to create another dprc with all necessary objects worked. However, command "restool dprc connect dprc.1 --endpoint1=dpni.3 --endpoint=dpmac.4" failed with the error:

"/home/user# MC error: Configuration error (status 0x6)"

I guess, it was because dpmac.4 interface was already monopolized by previous assignment. So, we needed dpsw or dpdmux, as far as I understand. Restool commands to create any of them failed with the error:

"/home/user# MC error: Unsupported operation (status 0xb)"

Is there any way to use a network interface direct assignment to a few VMs simultaneously? Isn't it the whole purpose of having DPAA2 direct assignment?

Our dts file for direct assignment is attached (extension was changed to txt). We also tried to accomplish the same task using restool dynamically, running all commands individually. Result was the same.

Thanks,

Serguei Evseev

Embedded software engineer Thales, Canada 

 

Tags (1)
0 Kudos
5 Replies

449 Views
yipingwang
NXP TechSupport
NXP TechSupport

In your dts  file vm_1_core.txt, the following connection has already been defined.

connections {
connection@1{
endpoint1 = "dpni@1";
endpoint2 = "dpmac@4";
};
};

After executing command "ls-append-dpl vm_1_core", the connection between dpni@1 and dpmac@4 has already been set up.

Why do you execute the following command to set up the connection between dpni.3  and dpmac.4?

restool dprc connect dprc.1 --endpoint1=dpni.3 --endpoint2=dpmac.4

If you want to create DPDMUX with two DPNI connections and one DPMAC connection, you could delete the connections node in file vm_1_core.txt, and run the following command:

restool dpdmux create --default-if=1 --num-ifs=2 --method DPDMUX_METHOD_CUSTOM --

manip=DPDMUX_MANIP_NONE --option=DPDMUX_OPT_CLS_MASK_SUPPORT --container=dprc.1

# Create DPDMUX with two DPNI connections and one DPMAC connection

restool dprc connect dprc.1 --endpoint1=dpdmux.0.0 --endpoint2=dpmac.4

restool dprc connect dprc.1 --endpoint1=dpdmux.0.1 --endpoint2=dpni.3

restool dprc connect dprc.1 --endpoint1=dpdmux.0.2 --endpoint2=dpni.1

 

0 Kudos

439 Views
sevseev
Contributor I

Hi yipingwang,

Thank you for the answer, it provides some important details.

My original post had some unnecessary details that only mudded the water, my bad.

The real problem is that when I try to create dpdmux or dpsw, restool returns "MC error: Unsupported operation (status 0xb)"

For example, below is the log of running the command that you suggested:

~# restool dpdmux create --default-if=1 --num-ifs=2 --method DPDMUX_METHOD_CUSTOM --manip=DPDMUX_MANIP_NONE --option=DPDMUX_OPT_CLS_MASK_SUPPORT --container=dprc.1

MC error: Unsupported operation (status 0xb)

~#

Serguei

 

0 Kudos

426 Views
yipingwang
NXP TechSupport
NXP TechSupport

Please make sure MC firmware, Linux Kernel and rootfs(restool) are all from LSDK 21.08.

If your problem persists, please send your console log including u-boot and Linux Kernel booting up.

0 Kudos

360 Views
sevseev
Contributor I

Hi yipingwang,

it worked! Thanks

 

0 Kudos

406 Views
sevseev
Contributor I

Hi yipingwang,

Thank you. I'll need a few days before I can do the check. I'll let you know what I discovered once I'm done.

Again, thank you for your continuous help.

Regards,

Serguei

 

0 Kudos