* Re: [PATCH] ixgbe: E610: do not fill EEE lp_advertised from local PHY caps [not found] <20260504062257.77460-1-devnexen@gmail.com> @ 2026-05-04 12:56 ` Andrew Lunn 2026-05-04 14:05 ` David CARLIER 0 siblings, 1 reply; 5+ messages in thread From: Andrew Lunn @ 2026-05-04 12:56 UTC (permalink / raw) To: David Carlier Cc: Tony Nguyen, Przemek Kitszel, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Jedrzej Jagielski, Aleksandr Loktionov, Jacob Keller, intel-wired-lan, netdev, linux-kernel On Mon, May 04, 2026 at 07:22:57AM +0100, David Carlier wrote: > ixgbe_get_eee_e610() fills kedata->lp_advertised from pcaps.eee_cap > returned by ixgbe_aci_get_phy_caps() with IXGBE_ACI_REPORT_ACTIVE_CFG. > That report mode (and the other IXGBE_ACI_REPORT_* modes) describe the > local PHY only, not the link partner. The X550 path uses a separate > FW_PHY_ACT_UD_2 activity for partner data; the E610 ACI has no > equivalent. > > Leave lp_advertised zeroed via the existing linkmode_zero() and drop > the now-unused ixgbe_eee_cap_map[]. eee_active/eee_enabled are > unaffected (sourced from link.eee_status). Hi David Did you test the EEE autoneg capabilities? Is just lp_advertise wrong, or is the negotiation itself also broken? Andrew ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] ixgbe: E610: do not fill EEE lp_advertised from local PHY caps 2026-05-04 12:56 ` [PATCH] ixgbe: E610: do not fill EEE lp_advertised from local PHY caps Andrew Lunn @ 2026-05-04 14:05 ` David CARLIER 2026-05-04 22:12 ` Jacob Keller 0 siblings, 1 reply; 5+ messages in thread From: David CARLIER @ 2026-05-04 14:05 UTC (permalink / raw) To: Andrew Lunn Cc: Tony Nguyen, Przemek Kitszel, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Jedrzej Jagielski, Aleksandr Loktionov, Jacob Keller, intel-wired-lan, netdev, linux-kernel Hi Andrew, No E610 here, found it by reading the code - the X550 path (ixgbe_get_eee_fw) uses a separate FW_PHY_ACT_UD_2 activity and ixgbe_lp_map[] for partner data, the E610 path just feeds pcaps.eee_cap from REPORT_ACTIVE_CFG into lp_advertised. None of the IXGBE_ACI_REPORT_* modes return partner info so that field can't be right. The set path goes hw->mac.ops.setup_eee() -> ixgbe_aci_set_phy_cfg(), so negotiation is in the firmware. eee_active / eee_enabled come from link.eee_status from the same FW, if those bits are right then negotiation works. Can't say more without hardware, Jedrzej or Aleksandr would know. Cheers ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] ixgbe: E610: do not fill EEE lp_advertised from local PHY caps 2026-05-04 14:05 ` David CARLIER @ 2026-05-04 22:12 ` Jacob Keller 2026-05-07 9:50 ` Jagielski, Jedrzej 0 siblings, 1 reply; 5+ messages in thread From: Jacob Keller @ 2026-05-04 22:12 UTC (permalink / raw) To: David CARLIER, Andrew Lunn, Jagielski, Jedrzej Cc: Tony Nguyen, Przemek Kitszel, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Jedrzej Jagielski, Aleksandr Loktionov, intel-wired-lan, netdev, linux-kernel On 5/4/2026 7:05 AM, David CARLIER wrote: > Hi Andrew, > > No E610 here, found it by reading the code - the X550 path > (ixgbe_get_eee_fw) uses a separate FW_PHY_ACT_UD_2 activity and > ixgbe_lp_map[] for partner data, the E610 path just feeds > pcaps.eee_cap from REPORT_ACTIVE_CFG into lp_advertised. None of > the IXGBE_ACI_REPORT_* modes return partner info so that field > can't be right. > > The set path goes hw->mac.ops.setup_eee() -> > ixgbe_aci_set_phy_cfg(), > so negotiation is in the firmware. eee_active / eee_enabled come > from link.eee_status from the same FW, if those bits are right then > negotiation works. Can't say more without hardware, Jedrzej or > Aleksandr would know. > > Cheers Hi David, Thanks for the report and possible patch. The EEE support just merged, and I believe the series has undergone testing. It is possible E610 is significantly different from X550. @Jedrzej, Could you please look at this patch and the report from David and confirm if we need this (or a different?) fix or if the code is correct for E610 and explain why in that case? Thanks, Jake ^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [PATCH] ixgbe: E610: do not fill EEE lp_advertised from local PHY caps 2026-05-04 22:12 ` Jacob Keller @ 2026-05-07 9:50 ` Jagielski, Jedrzej 2026-05-07 23:27 ` Jacob Keller 0 siblings, 1 reply; 5+ messages in thread From: Jagielski, Jedrzej @ 2026-05-07 9:50 UTC (permalink / raw) To: Keller, Jacob E, David CARLIER, Andrew Lunn Cc: Nguyen, Anthony L, Kitszel, Przemyslaw, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Loktionov, Aleksandr, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org >From: Keller, Jacob E <jacob.e.keller@intel.com> >Sent: Tuesday, May 5, 2026 12:13 AM >On 5/4/2026 7:05 AM, David CARLIER wrote: >> Hi Andrew, >> >> No E610 here, found it by reading the code - the X550 path >> (ixgbe_get_eee_fw) uses a separate FW_PHY_ACT_UD_2 activity and >> ixgbe_lp_map[] for partner data, the E610 path just feeds >> pcaps.eee_cap from REPORT_ACTIVE_CFG into lp_advertised. None of >> the IXGBE_ACI_REPORT_* modes return partner info so that field >> can't be right. >> >> The set path goes hw->mac.ops.setup_eee() -> >> ixgbe_aci_set_phy_cfg(), >> so negotiation is in the firmware. eee_active / eee_enabled come >> from link.eee_status from the same FW, if those bits are right then >> negotiation works. Can't say more without hardware, Jedrzej or >> Aleksandr would know. >> >> Cheers > >Hi David, > >Thanks for the report and possible patch. The EEE support just merged, >and I believe the series has undergone testing. It is possible E610 is >significantly different from X550. > >@Jedrzej, > >Could you please look at this patch and the report from David and >confirm if we need this (or a different?) fix or if the code is correct >for E610 and explain why in that case? > >Thanks, >Jake Sorry for the delay in responding, i just came back to the office an i didn't have access to my mailbox. After looking into documentation once again and checking it on my setup i see that David is right. What a catch, thanks! And sorry for my oversight, i was convinced that negotiated speeds are reported via that field and it somehow has not been exposed during my tests. Moreover, looks like E610 currently doesn't report such. So i believe we would like to have this fix, thank you once again. Reviewed-by: Jedrzej Jagielski <jedrzej.jagielski@intel.com> Jedrek ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] ixgbe: E610: do not fill EEE lp_advertised from local PHY caps 2026-05-07 9:50 ` Jagielski, Jedrzej @ 2026-05-07 23:27 ` Jacob Keller 0 siblings, 0 replies; 5+ messages in thread From: Jacob Keller @ 2026-05-07 23:27 UTC (permalink / raw) To: Jagielski, Jedrzej, David CARLIER, Andrew Lunn Cc: Nguyen, Anthony L, Kitszel, Przemyslaw, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Loktionov, Aleksandr, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org On 5/7/2026 2:50 AM, Jagielski, Jedrzej wrote: >> From: Keller, Jacob E <jacob.e.keller@intel.com> >> Sent: Tuesday, May 5, 2026 12:13 AM >> On 5/4/2026 7:05 AM, David CARLIER wrote: >>> Hi Andrew, >>> >>> No E610 here, found it by reading the code - the X550 path >>> (ixgbe_get_eee_fw) uses a separate FW_PHY_ACT_UD_2 activity and >>> ixgbe_lp_map[] for partner data, the E610 path just feeds >>> pcaps.eee_cap from REPORT_ACTIVE_CFG into lp_advertised. None of >>> the IXGBE_ACI_REPORT_* modes return partner info so that field >>> can't be right. >>> >>> The set path goes hw->mac.ops.setup_eee() -> >>> ixgbe_aci_set_phy_cfg(), >>> so negotiation is in the firmware. eee_active / eee_enabled come >>> from link.eee_status from the same FW, if those bits are right then >>> negotiation works. Can't say more without hardware, Jedrzej or >>> Aleksandr would know. >>> >>> Cheers >> >> Hi David, >> >> Thanks for the report and possible patch. The EEE support just merged, >> and I believe the series has undergone testing. It is possible E610 is >> significantly different from X550. >> >> @Jedrzej, >> >> Could you please look at this patch and the report from David and >> confirm if we need this (or a different?) fix or if the code is correct >> for E610 and explain why in that case? >> >> Thanks, >> Jake > > Sorry for the delay in responding, i just came back to the office an > i didn't have access to my mailbox. > > After looking into documentation once again and checking it on my setup > i see that David is right. What a catch, thanks! And sorry for my oversight, > i was convinced that negotiated speeds are reported via that field and > it somehow has not been exposed during my tests. > > Moreover, looks like E610 currently doesn't report such. > > So i believe we would like to have this fix, thank you once again. > > Reviewed-by: Jedrzej Jagielski <jedrzej.jagielski@intel.com> > > Jedrek Great, thanks! ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-05-07 23:27 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20260504062257.77460-1-devnexen@gmail.com>
2026-05-04 12:56 ` [PATCH] ixgbe: E610: do not fill EEE lp_advertised from local PHY caps Andrew Lunn
2026-05-04 14:05 ` David CARLIER
2026-05-04 22:12 ` Jacob Keller
2026-05-07 9:50 ` Jagielski, Jedrzej
2026-05-07 23:27 ` Jacob Keller
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox