[PATCH net-next 0/5] net: stmmac: fix PPS input indexing

From: Johannes Zink
Date: Thu Oct 12 2023 - 05:02:53 EST


The stmmac can have 0 to 4 auxiliary snapshot in channels, which can be
used for capturing external triggers with respect to the eqos PTP timer.

Previously when enabling the auxiliary snapshot, an invalid request was
written to the hardware register, except for the Intel variant of this
driver, where the only snapshot available was hardcoded.

Patch 1 of this series cleans up the debug netdev_dbg message indicating
the auxiliary snapshot being {en,dis}abled. No functional changes here

Patch 2 of this series fixes the PPS input indexing

Patch 3 of this series removes a field member from plat_stmmacnet_data
that is no longer needed

Patch 4 of this series prepares Patch 5 by protecting the snapshot
enabled flag by the aux_ts_lock mutex

Patch 5 of this series adds a temporary workaround, since at the moment
the driver can handle only one single auxiliary snapshot at a time.
Previously the driver silently dropped the previous configuration and
enabled the new one. Now, if a snapshot is already enabled and userspace
tries to enable another without previously disabling the snapshot currently
enabled: issue a netdev_err and return an errorcode indicating the device is
busy.

Best Regards
Johannes

To: Alexandre Torgue <alexandre.torgue@xxxxxxxxxxx>
To: Jose Abreu <joabreu@xxxxxxxxxxxx>
To: "David S. Miller" <davem@xxxxxxxxxxxxx>
To: Eric Dumazet <edumazet@xxxxxxxxxx>
To: Jakub Kicinski <kuba@xxxxxxxxxx>
To: Paolo Abeni <pabeni@xxxxxxxxxx>
To: Maxime Coquelin <mcoquelin.stm32@xxxxxxxxx>
To: Richard Cochran <richardcochran@xxxxxxxxx>
To: Kurt Kanzenbach <kurt@xxxxxxxxxxxxx>
Cc: patchwork-jzi@xxxxxxxxxxxxxx
Cc: netdev@xxxxxxxxxxxxxxx
Cc: linux-stm32@xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: kernel@xxxxxxxxxxxxxx

Signed-off-by: Johannes Zink <j.zink@xxxxxxxxxxxxxx>
---
Johannes Zink (5):
net: stmmac: simplify debug message on stmmac_enable()
net: stmmac: fix PPS capture input index
net: stmmac: intel: remove unnecessary field struct plat_stmmacenet_data::ext_snapshot_num
net: stmmac: ptp: stmmac_enable(): move change of plat->flags into mutex
net: stmmac: do not silently change auxiliary snapshot capture channel

drivers/net/ethernet/stmicro/stmmac/dwmac-intel.c | 1 -
drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c | 32 ++++++++++++++---------
drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.h | 2 +-
include/linux/stmmac.h | 1 -
4 files changed, 21 insertions(+), 15 deletions(-)
---
base-commit: 21b2e2624d2ec69b831cd2edd202ca30ac6beae1
change-id: 20231010-stmmac_fix_auxiliary_event_capture-eaf21ea9c9fe

Best regards,
--
Johannes Zink <j.zink@xxxxxxxxxxxxxx>