public inbox for intel-wired-lan@osuosl.org
 help / color / mirror / Atom feed
* [Intel-wired-lan] [PATCH net v6 0/2] ice: fix missing dpll notifications for SW pins
@ 2026-04-16 11:39 Petr Oros
  2026-04-16 11:39 ` [Intel-wired-lan] [PATCH net v6 1/2] dpll: export __dpll_pin_change_ntf() for use under dpll_lock Petr Oros
  2026-04-16 11:39 ` [Intel-wired-lan] [PATCH net v6 2/2] ice: fix missing dpll notifications for SW pins Petr Oros
  0 siblings, 2 replies; 6+ messages in thread
From: Petr Oros @ 2026-04-16 11:39 UTC (permalink / raw)
  To: netdev
  Cc: Ivan Vecera, Jiri Pirko, Rinitha S, Przemek Kitszel, Eric Dumazet,
	Arkadiusz Kubalewski, Aleksandr Loktionov, Andrew Lunn,
	Tony Nguyen, Simon Horman, Jakub Kicinski, Jacob Keller,
	Vadim Fedorenko, Paolo Abeni, David S. Miller, linux-kernel,
	intel-wired-lan

The SMA/U.FL pin redesign never propagated dpll notifications to the
software-controlled pin wrappers.  This series fixes that by adding
peer notification for paired SMA/U.FL pins and by wrapping
dpll_pin_change_ntf() calls in the periodic work to also cover SW pins.

Patch 1 exports __dpll_pin_change_ntf() so ice can send peer
notifications from callback context where dpll_lock is already held.

Patch 2 fixes the notification gaps: periodic work HW-to-SW
propagation, SW-to-SW peer notification on PCA9575 routing changes,
and SW pin phase offset reporting.

Ivan Vecera (1):
  dpll: export __dpll_pin_change_ntf() for use under dpll_lock

Petr Oros (1):
  ice: fix missing dpll notifications for SW pins

 drivers/dpll/dpll_netlink.c               | 10 +++
 drivers/dpll/dpll_netlink.h               |  2 -
 drivers/net/ethernet/intel/ice/ice_dpll.c | 80 +++++++++++++++++++----
 include/linux/dpll.h                      |  1 +
 4 files changed, 79 insertions(+), 14 deletions(-)

---
v6:
 - fix deadlock reported by Michal Schmidt: dpll_pin_change_ntf() in
   peer notification was called with dpll_lock held, causing deadlock.
   Move the peer notification calls out of ice_dpll_sma_direction_set()
   and ice_dpll_ufl_pin_state_set() into their dpll_pin_ops callback
   wrappers, after pf->dplls.lock is released, and use
   __dpll_pin_change_ntf() because dpll_lock is still held by the dpll
   netlink layer (dpll_pin_pre_doit).
v5: https://lore.kernel.org/all/20260409102501.1447628-1-poros@redhat.com/
v4: https://lore.kernel.org/all/20260319205256.998876-1-poros@redhat.com/
v3: https://lore.kernel.org/all/20260220140700.2910174-1-poros@redhat.com/
v2: https://lore.kernel.org/all/20260219131500.2271897-1-poros@redhat.com/
v1: https://lore.kernel.org/all/20260218211414.1411163-1-poros@redhat.com/


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-04-16 17:50 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-16 11:39 [Intel-wired-lan] [PATCH net v6 0/2] ice: fix missing dpll notifications for SW pins Petr Oros
2026-04-16 11:39 ` [Intel-wired-lan] [PATCH net v6 1/2] dpll: export __dpll_pin_change_ntf() for use under dpll_lock Petr Oros
2026-04-16 17:50   ` Vadim Fedorenko
2026-04-16 11:39 ` [Intel-wired-lan] [PATCH net v6 2/2] ice: fix missing dpll notifications for SW pins Petr Oros
2026-04-16 11:43   ` Jiri Pirko
2026-04-16 11:46   ` Jiri Pirko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox