]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: ethernet: renesas: rcar_gen4_ptp: Add helper to get clock index
authorNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Sun, 1 Feb 2026 18:37:43 +0000 (19:37 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 4 Feb 2026 03:35:38 +0000 (19:35 -0800)
Instead of accessing the Gen4 PTP specific structure directly in drivers
add a helper to read the clock index. This is done in preparation to
completely hide the Gen4 PTP specific structure from users.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Link: https://patch.msgid.link/20260201183745.1075399-3-niklas.soderlund+renesas@ragnatech.se
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/renesas/rcar_gen4_ptp.c
drivers/net/ethernet/renesas/rcar_gen4_ptp.h
drivers/net/ethernet/renesas/rswitch_main.c
drivers/net/ethernet/renesas/rtsn.c

index 3fd835128cc81833ef1ffd7c5aeff810c3664f1a..75bf7aac089bc4cca6ed579bfc3cc91e4dabce00 100644 (file)
@@ -185,6 +185,15 @@ struct rcar_gen4_ptp_private *rcar_gen4_ptp_alloc(struct platform_device *pdev,
 }
 EXPORT_SYMBOL_GPL(rcar_gen4_ptp_alloc);
 
+int rcar_gen4_ptp_clock_index(struct rcar_gen4_ptp_private *priv)
+{
+       if (!priv->initialized)
+               return -1;
+
+       return ptp_clock_index(priv->clock);
+}
+EXPORT_SYMBOL_GPL(rcar_gen4_ptp_clock_index);
+
 MODULE_AUTHOR("Yoshihiro Shimoda");
 MODULE_DESCRIPTION("Renesas R-Car Gen4 gPTP driver");
 MODULE_LICENSE("GPL");
index b71aba873795179d5e9ddfb5bbd9734cddef1ad6..c141cd38a40d663bdf1e15ec40b3df01b1cc1c50 100644 (file)
@@ -23,4 +23,6 @@ int rcar_gen4_ptp_unregister(struct rcar_gen4_ptp_private *ptp_priv);
 struct rcar_gen4_ptp_private *rcar_gen4_ptp_alloc(struct platform_device *pdev,
                                                  void __iomem *addr);
 
+int rcar_gen4_ptp_clock_index(struct rcar_gen4_ptp_private *priv);
+
 #endif /* #ifndef __RCAR_GEN4_PTP_H__ */
index ab0b40d4f4fbb6b55866c084f063ac2a9952b641..433eb2b00d10f580cee59f4ea56e82f8b2411c09 100644 (file)
@@ -1891,7 +1891,7 @@ static int rswitch_get_ts_info(struct net_device *ndev, struct kernel_ethtool_ts
 {
        struct rswitch_device *rdev = netdev_priv(ndev);
 
-       info->phc_index = ptp_clock_index(rdev->priv->ptp_priv->clock);
+       info->phc_index = rcar_gen4_ptp_clock_index(rdev->priv->ptp_priv);
        info->so_timestamping = SOF_TIMESTAMPING_TX_SOFTWARE |
                                SOF_TIMESTAMPING_TX_HARDWARE |
                                SOF_TIMESTAMPING_RX_HARDWARE |
index d4b955c87f1b6323d951d0ca7f33dd686eceabf2..ce1047743970c26fdbf6d3a88d49a7c214f9c005 100644 (file)
@@ -1197,7 +1197,7 @@ static int rtsn_get_ts_info(struct net_device *ndev,
 {
        struct rtsn_private *priv = netdev_priv(ndev);
 
-       info->phc_index = ptp_clock_index(priv->ptp_priv->clock);
+       info->phc_index = rcar_gen4_ptp_clock_index(priv->ptp_priv);
        info->so_timestamping = SOF_TIMESTAMPING_TX_SOFTWARE |
                SOF_TIMESTAMPING_TX_HARDWARE |
                SOF_TIMESTAMPING_RX_HARDWARE |