LX2160A: DPDMUX questions

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LX2160A: DPDMUX questions

Jump to solution
1,911 Views
phoffmann
Contributor II

I'm working with a LX2160A RDB trying to use a DPDMUX. I'm using LSDK 19.09.

I've tried 2 things which can't get to work with a DPDMUX:

1. Connecting 2 DPDMUXes together (an uplink of 1 DPDMUX to one of the non-uplink interfaces on a different DPDMUX). I've seen several diagrams, so I believe this should be possible.

2. Using a DPDMUX with 14 interfaces. I see weird behavior past 9 or 10 interfaces, when I try to add a DPNI to the DPMUX.

I've shown an example session below, illustrating both these issues:

COMMAND> ls-addmux --num-ifs=2 dpmac.3
[ 4297.112643] iommu: Adding device dpmcp.38 to group 0
[ 4297.517968] iommu: Adding device dpdmux.2 to group 0
[ 4297.523487] dpaa2_evb dpdmux.2: Linked as a consumer to dpmcp.8
[ 4297.599852] dpaa2_evb dpdmux.2: probed evb device with 2 ports
Created EVB: evb0 (object: dpdmux.2, uplink: dpmac.3)
Do not forget to connect devices to downlink(s).

COMMAND> ls-addmux --num-ifs=2 dpmac.4
[ 4364.484897] iommu: Adding device dpmcp.39 to group 0
[ 4364.906712] iommu: Adding device dpdmux.3 to group 0
[ 4364.912233] dpaa2_evb dpdmux.3: Linked as a consumer to dpmcp.7
[ 4364.996543] dpaa2_evb dpdmux.3: probed evb device with 2 ports
Created EVB: evb1 (object: dpdmux.3, uplink: dpmac.4)
Do not forget to connect devices to downlink(s).

COMMAND> restool dprc disconnect dprc.1 --endpoint=dpmac.4

COMMAND> restool dprc connect dprc.1 --endpoint1=dpdmux.2.0 --endpoint2=dpdmux.3.1
MC error: Configuration error (status 0x6)

# Question: Why doesn't this work? How can I connect 1 dpmux to another?

COMMAND> ls-addni dpdmux.2.1
# works fine

COMMAND> ls-addmux --num-ifs=14 dpmac.4
[ 4739.510197] iommu: Adding device dpmcp.41 to group 0
[ 4740.079935] iommu: Adding device dpdmux.4 to group 0
[ 4740.085494] dpaa2_evb dpdmux.4: Linked as a consumer to dpmcp.5
[ 4740.397492] dpaa2_evb dpdmux.4: probed evb device with 14 ports
Created EVB: evb2 (object: dpdmux.4, uplink: dpmac.4)
Do not forget to connect devices to downlink(s).

COMMAND> ls-addni dpdmux.4.1
dpdmux.4.1 is already linked to none
none
none
none
none
none

# Question: Something seems wrong here given the output. Is it possible to have a dpdmux with 14 connections?

0 Kudos
1 Solution
1,778 Views
bpe
NXP Employee
NXP Employee


DPDMUX cascading is not supported by the current firmware.
From a HW perspective it might be possible but now the MC ( version *) does not implement this configuration.


Have a great day,
Platon

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

View solution in original post

2 Replies
1,778 Views
phoffmann
Contributor II

Update: I've upgraded to the latest LSDK 20.04, 290520.

  • The first part is still not resolved (connecting 2 DPMUXes together).
  • The second part may be resolved (it is at least not giving the error "dpdmux.4.1 is already linked to none") - from a git log of restool, it looks like this was a bug fixed in March 2020.

Output for the first question using the current LSDK:

COMMAND> uname -a

Linux DevelLinux 5.4.3-dirty #1 SMP PREEMPT Fri Jun 5 11:23:40 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
COMMAND>
restool -m
MC firmware version: 10.20.4 # Updated to latest MC firmware (LSDK 20.04 update 290520) on LX2160A RDB rev1 

COMMAND> ls-addmux --num-ifs=2 dpmac.3

[ 141.207807] dpaa2_evb dpdmux.0: Adding to iommu group 11
[ 141.331757] dpaa2_evb dpdmux.0: probed evb device with 2 ports
[ 141.338736] fsl_mc_allocator dpmcp.36: Adding to iommu group 11
Created EVB: evb0 (object: dpdmux.0, uplink: dpmac.3)
Do not forget to connect devices to downlink(s).
[ 146.036893] dpaa2_mac dpmac.3 (unnamed net_device) (uninitialized): Link is Up - 10Gbps/Full - flow control off

COMMAND> ls-addmux --num-ifs=2 dpmac.4

[ 210.396455] dpaa2_evb dpdmux.1: Adding to iommu group 11
[ 210.522446] dpaa2_evb dpdmux.1: probed evb device with 2 ports
[ 210.529685] fsl_mc_allocator dpmcp.37: Adding to iommu group 11
Created EVB: evb1 (object: dpdmux.1, uplink: dpmac.4)
Do not forget to connect devices to downlink(s).
[ 215.221777] dpaa2_mac dpmac.4 (unnamed net_device) (uninitialized): Link is Up - 10Gbps/Full - flow control off

COMMAND> restool dprc disconnect dprc.1 --endpoint=dpmac.4

COMMAND> restool dprc show dprc.1 | grep dpdmux
dpdmux.1 plugged
dpdmux.0 plugged
COMMAND> restool dpdmux info dpdmux.0
dpdmux version: 6.5
dpdmux id: 0
plugged state: plugged
endpoints:
   interface 0:  connection: dpmac.3  link state: up
   interface 1:  connection: none  link state: n/a
   interface 2:  connection: none  link state: n/a
dpdmux_attr.options value is: 0x2
DPDMUX_OPT_BRIDGE_EN
DPDMUX address table method: DPDMUX_METHOD_MAC
DPDMUX manipulation type: DPDMUX_MANIP_NONE
number of interfaces (excluding the uplink interface): 2
default interface: 0
frame storage memory size: 0

COMMAND> restool dpdmux info dpdmux.1

dpdmux version: 6.5
dpdmux id: 1
plugged state: plugged
endpoints:
   interface 0: connection: none  link state: n/a
   interface 1: connection: none  link state: n/a
   interface 2: connection: none  link state: n/a
dpdmux_attr.options value is: 0x2
DPDMUX_OPT_BRIDGE_EN
DPDMUX address table method: DPDMUX_METHOD_MAC
DPDMUX manipulation type: DPDMUX_MANIP_NONE
number of interfaces (excluding the uplink interface): 2
default interface: 0
frame storage memory size: 0

COMMAND> restool dprc connect dprc.1 --endpoint1=dpdmux.1.0 --endpoint2=dpdmux.0.1
MC error: Unsupported operation (status 0xb)

# Question: Why can't I connect these 2 endpoints? Is there a way to get more information on why this is an unsupported operation?

COMMAND> ls-addni dpdmux.0.1
# works fine

0 Kudos
1,779 Views
bpe
NXP Employee
NXP Employee


DPDMUX cascading is not supported by the current firmware.
From a HW perspective it might be possible but now the MC ( version *) does not implement this configuration.


Have a great day,
Platon

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------