This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Packet Accelerator configuration from Linux



Hi

I have some questions about the Keystone II packet accelerator configuration using linux. Our goal is to configure the packet accelerator from linux in a single place and in a reliable way. So here are my questions.

1) Is there any plan to add the ability to configure the Packet Accelerator in linux by using either sysfs or some other mechanisms? Something similar to the way you are able to add ALE entries to the CPSW module by using sysfs files. What we need is a way of adding a filter that sends packets with a specific ip and port to a custom queue.

2) Is there any plan to add the ability to view the current Packet Accelerator configuration in linux, either by using sysfs or other mechanisms? The reason I'm asking for this is because it is quite hard today to debug any Packet Accelerator issues because I have no way of viewing the actual lookup tables that are in use.

Today I am compiling the linux kernel with debug enabled in the keystone_pa driver code to be able to see what entries the kernel puts into the Packet Accelerator.

Currently I am able to create a program using the Packet Accelerator Low-Level Drivers for linux to setup our desired configuration. Basically we have created a small program that adds a few entries to the packet accelerator lookup tables and hope that we don't write to the same entries that the linux kernel driver use, but this does not feel right since now both the kernel and my program are configuring the Packet Accelerator without knowing about each other.

  • Please refer to the network driver section of the Exploring Chapter in the Keystone II User's Guide to see if it meets your need. Specially the PA and QoS sections. The tc command mentioned in QoS may be helpful to add the filter for the packets to a particular queue.

    Rex

  • Hi Rex

    I am unfamiliar with the tc command, so I will have to read up on that. The tc command examples from the Keystone II User's Guide seems to only talk about setting up QoS filtering for transmit packets, however what I am trying to do is to set up an ip+port filter on received packets.

    If I add a ip+port filter using the tc command, who is actually doing the filter matching? Is it the linux kernel drivers or is it done using the packet accelerator firmware and it's lookup tables.

    --
    Kjetil