[PATCH net-next 1/8] net: stmmac: add IP-specific callbacks for auxiliary snapshot

From: alexis . lothore
Date: Fri Jun 16 2023 - 06:05:42 EST


From: Alexis Lothoré <alexis.lothore@xxxxxxxxxxx>

Since auxiliary snapshots configuration registers may be different
depending the DWMAC IP, we need a specific set of callbacks to
- configure timestamp snapshot triggers
- clear the snapshots FIFO

Signed-off-by: Alexis Lothoré <alexis.lothore@xxxxxxxxxxx>
---
drivers/net/ethernet/stmicro/stmmac/hwif.h | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/drivers/net/ethernet/stmicro/stmmac/hwif.h b/drivers/net/ethernet/stmicro/stmmac/hwif.h
index 6ee7cf07cfd7..d0b2f13510aa 100644
--- a/drivers/net/ethernet/stmicro/stmmac/hwif.h
+++ b/drivers/net/ethernet/stmicro/stmmac/hwif.h
@@ -419,6 +419,10 @@ struct stmmac_ops {
void (*fpe_send_mpacket)(void __iomem *ioaddr,
enum stmmac_mpacket_type type);
int (*fpe_irq_status)(void __iomem *ioaddr, struct net_device *dev);
+ /* Auxiliary snapshots */
+ void (*extts_configure)(void __iomem *ioaddr, int ext_snapshot_num,
+ bool on, struct net_device *dev);
+ int (*clear_snapshot_fifo)(void __iomem *ioaddr);
};

#define stmmac_core_init(__priv, __args...) \
@@ -523,6 +527,10 @@ struct stmmac_ops {
stmmac_do_void_callback(__priv, mac, fpe_send_mpacket, __args)
#define stmmac_fpe_irq_status(__priv, __args...) \
stmmac_do_callback(__priv, mac, fpe_irq_status, __args)
+#define stmmac_extts_configure(__priv, __args...) \
+ stmmac_do_void_callback(__priv, mac, extts_configure, __args)
+#define stmmac_clear_snapshot_fifo(__priv, __args...) \
+ stmmac_do_callback(__priv, mac, clear_snapshot_fifo, __args)

/* PTP and HW Timer helpers */
struct stmmac_hwtimestamp {
--
2.41.0