On a non-AR816X card, the RXQ_CFG_ENB bit is cleared, and nothing ever
sets it again. Widen the check to also set this master enable bit on the
CCR2004-1G-2XS-PCIe card.
This allows traffic to flow from the card to the host system.
Differential D59316
alc(4): don't disable the RX queue on CCR2004-1G-2XS-PCIe Authored by ryan_krammer.me on Tue, Sep 1, 11:05 PM. Tags None Referenced Files
Subscribers
Details On a non-AR816X card, the RXQ_CFG_ENB bit is cleared, and nothing ever This allows traffic to flow from the card to the host system. These changes have been tested against FreeBSD 15.1-STABLE. The hardware configuration is an HP ProDesk SFF desktop computer, with an Intel Core i5-4570 CPU, 8 gigabytes of DDR3 RAM, and the CCR2004-1G-2XS-PCIe card under test running RouterOS 7.24, installed in the first PCI express slot. Note that I have not tested these changes in a system with a real alc(4) card; I don't own one. However, all changes here simply widen existing code to also run in the presence of the Mikrotik card. These changes have only been tested on top of D59315, and not in isolation. Before the changes, no traffic at all flows from the Mikrotik card to the host system. These changes allow traffic to flow, tested by connecting the first 25G port of the card to another system, assigning both ends an IPv4 address in the same subnet, and then successfully pinging between both systems. However, under a high-load iperf test, the card can sometimes encounter a watchdog timeout, and stop passing traffic until it is reset by said watchdog timeout. The cause of this has been isolated, and will be fixed in a follow-up patch.
Diff Detail
|