DPAA pool channel

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

DPAA pool channel

1,665 Views
sedat_altun
Contributor III

Hi community,

I have aquestion about the pool-channels used in  DPAA architecture on T4240 SoC. ANy help will be appreciated. 

In SDK 2.0 documentation it is stated that there are 15 pool channels and each can be used for dequeuing packets by the cores , I need to distribute the ingress packets receiving from one FMAN MAC to more than one pool channel, but I couldn't understand the relation between the pool channels and FMAN MACs to make this change.

In conclusion  is it possible to use more than one pool channel for each FMAN MAC to distribute the ingress packets  coming from one MAC to more than one pool channel?

Best regards.

Tags (2)
0 Kudos
Reply
5 Replies

1,561 Views
sedat_altun
Contributor III

Indeed I am trying to put frames coming from one MAC to more than one pool channel. For example frames coming from fm2-mac9 are inserted to FQ number with number 163, and this FQ is assigned to  a single pool channel , but I am trying to distribute the frames in FQ  163  that belongs to fm2-mac9  to more than one pool channel.

After reading the links you have sent If I understand correctly it is not possible to put the related frames (frames from the same flow) coming from a MAC to more than one pool channel because it is stated in Good questions documentation that "Each interface uses by default one pool channel ". 

0 Kudos
Reply

1,561 Views
bpe
NXP Employee
NXP Employee

QMAN may run different scheduling algorithms over different channels.
Obviously, there is no logic in using more than one scheduling discipline
over a single packet flow. For this reason, a single FQ can only be
linked to one WQ/channel. See T4240DPAARM, Section 3.3.8.2.5 for details
on how QMAN handles channels.


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.
-------------------------------------------------------------------------------

0 Kudos
Reply

1,561 Views
bpe
NXP Employee
NXP Employee


Channels are a mechanism related to dequeueing rather than enqueueing.
Ingress packets are enqueued to   Frame Queues, not directly to channels.

The target Frame Queue is determined by FMAN PCD rules controlled by FMC.
See the documentation at the links below for more information:

https://docs.nxp.com/bundle/GUID-39A0A446-70E5-4ED7-A580-E7508B61A5F1/page/GUID-CBEAF56F-8C02-4E7E-9...

https://docs.nxp.com/bundle/GUID-39A0A446-70E5-4ED7-A580-E7508B61A5F1/page/GUID-57CF55BE-CC1D-444B-9...

Hope this helps,
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.
-------------------------------------------------------------------------------

0 Kudos
Reply

1,561 Views
sedat_altun
Contributor III

Thank you very much.

I am confused about the dedicated and pool channel while using FMAN PCD.

As I know we can not steer the frames to pool channels  if we use FMC , the packets are steered to a dedicated channel and that dedicated channel can be dequeued only by a single core. So is it possible to steer the packets to pool channels by using FMC?

And also I don't want to use a single pool channel and multiple cpus which is the default case,  If it is possible, I want to steer the ingress packets from a FMAN MAC to more than one pool channel, I don't know how to initialize the FQs coming from a single MAC to for putting them to more than one pool channel.

0 Kudos
Reply

1,561 Views
bpe
NXP Employee
NXP Employee


Sorry but there is too much confusion in your recent post.
PCD (and, more generally, FMAN) is totally not aware of any channel.   Channels
are handled at QMAN and control how frames are dequeued. At PCD level, you can
only define a target Frame Queue.  The channel the FQ is assigned is a don't care for PCD.

The relationship between FQ/WQ/Channel is
explained here. If you are wokring with Linux Ethernet, FQs are allocated at
the initialization time in the way described here. There are no configuration
options to  alter it. For USDPAA, FQs can be created and asociated to a channel
in runtime by using QMAN API. An FQ can only be served by a signle channel, pool or

dedicated.

Regards,

Platon

0 Kudos
Reply