Commits
Murali Karicheri committed edbc999ebd0
net: ti: prueth_core: make tx irq use optional for Dual EMAC firmware Egress throughput with small size packet is better with tx irq removed along with reduction in CPU usage. With DUT-DUT test, a reduction in CPU usage of 7% is seen with iperf3 UDP test using payload size of 76 bytes. 41% before change vs 34% after the change on a RT kernel. CPU usage measured using mpstat -P ALL 3 50 command. iperf command used Server iperf3 -s -i5 Client iperf3 -c <server IP> -u -b18M -l76 -i5 -t60& DUT to PC test gives a higher throughput of 26-27 Mbits/sec at this payload size of 76 bytes. client side command is iperf3 -c <server IP> -u -b30M -l76 -i5 -t60& All tested on AM57x with ksoftirqd/0 & ksoftirqd/1 priority raised as chrt -f -p 40 9 chrt -f -p 40 20 With DUT to PC test, an improvement in effective throughput of 1.5Mbits/sec along with a reduction in CPU usage of ~1%. The offered traffic is at 30Mbits/sec. However with MTU size frames, a degradation in performance of about 7% seen based on testing with Tx IRQ removed. For industrial networks, it is important to have higher performance at small size packets since majority of the traffic is small sized. So make Tx IRQ use in the driver optional for Dual EMAC firmware so that users can add Tx IRQ entry in the DTS as needed if a specific application uses predominantly MTU or near MTU sized frames and thus get the benefit of higher throughput at that size. Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>