Hi Renata, On Fri, 1 Aug 2025, Renata Saiakhova wrote: > > Hi all, > > I’m trying to configure Layer 1 attributes (speed, duplex, and autonegotiation) for Intel i225 interfaces in both kernel and DPDK modes, and I’ve run into some issues. > > In kernel driver mode, I normally use: “ethtool -s eth5 speed 100 duplex half autoneg off”. > > However, this results in the kernel message: “igc 0000:04:00.0 eth5: Force mode currently not supported”. > >   > > When the interface is bound to DPDK and connected to an OVS bridge, I configure it like this: > > ovs-vsctl set Interface 1.extra2 \ > >   type=dpdk \ > >   options:dpdk-devargs=0000:04:00.0 \ > >   options:dpdk-speed=100 \ > >   options:dpdk-autoneg=false \ > >   options:dpdk-duplex=half > > This should pass the speed/autoneg/duplex settings to the igc DPDK driver via devargs. Should it? Even if these were on the list of supported devargs for the PMD in question, they would belong in comma-separated tokens after '0000:04:00.0'. I don't see these to be parsed in the OvS, neither do I see such in the PMD. Or are you looking at some custom OvS version? > > However, it appears these options are not applied — the interface continues to negotiate its settings as usual, and I can’t find any code in the igc DPDK driver that processes these > devargs parameters. If these were passed via 'dpdk-devargs', the PMD would've complained perhaps. Being passed as OvS's own options, they're likely just ignored by the OvS. > > Is support for forced speed/duplex/autoneg available at all for i225 in DPDK (or even kernel) mode? Or is this a hardware limitation? As per [1], 'forced' mode may not be supported in the DPDK PMD. But the code suggests one can possibly try to pass, say, 'RTE_ETH_LINK_SPEED_100M_HD', without being accompanied by neither 'AUTONEG' nor 'FIXED', but that would still come as 'advertised' mode, not a 'forced' one. I may be wrong, though. [1] https://github.com/DPDK/dpdk/blob/1b3bf1128d9bda5595861814792f74b8f57160c8/drivers/net/igc/igc_ethdev.c#L1088 > > Any insight, documentation pointers, or confirmation of support status especially in case of DPDK mode would be greatly appreciated. I take it OvS most likely needs to be augmented with extra code to recognise such options and translate those into DPDK link settings. For an example of how a DPDK application can do that, one should refer to 'test-pmd' implementation. Thank you. > > Best regards, > >   > >   > > Renata Saiakhova > SW ARCHITECT > renata.saiakhova@ekinops.com > Tel: +32 16 799 970 > > [logo_96dpi.gif] > > [current.png] > >   > > >