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