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.

add iptables1.8.5 to the rootfs

Hello,

I am trying to use the Switch of the AM64x Sitara board running the linux kernel and rootfs provided by the following processor sdk:

 https://software-dl.ti.com/processor-sdk-linux/esd/AM64X/07_03_01_006/exports/docs/devices/AM64X/Overview.html

 

In our project we are exchanging vlan-tagged raw ethernet packets. I could successfully define the bridge and forward packets to their destination address using the AM64x switch. Next step now would

be using the TAS (time aware scheduler) in order to define time windows for each class of packets. 

I will use the tc tool in order to map each priority to its time window:

tc qdisc replace dev enp2s0f1 parent root handle 100 taprio \
num_tc 2 \
map 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \
queues 1@0 1@1 \
base-time 1554445635681310809 \
sched-entry S 01 800000 sched-entry S 02 200000 \
clockid CLOCK_TAI

Then in order to classify the packets I will use the iptables linux tool. Since we are working with vlan-tagged raw ethernet
packets I have to use the PCP bits of the ethernet frame for the classification. the version 1.8.5 of the iptables tool can
do this thank to its match parameter u32. This can be done using the following
command:
iptables -t mangle -A POSTROUTING -m u32 --u32 "12&0x0000E000=0x0000200" -j CLASSIFY --set-class 0:1

This command maps each packet with PCP=001 to the priority value 1.

The problem that I am facing is the following: on the provided rootfs, the version 1.8.4 of iptables is installed. This version
is not able to use the match parameteru32. It's defined in the version 1.8.5. So the solution for my problem will be to install
iptables1.8.5 on the rootfs.
How can I install a new package on the rootfs before copying it on the SD card ?

Best Regards
Iheb