[PATCH 2/3] ptp: Add clock name to uevent

From: Sven Schnelle
Date: Tue Oct 15 2024 - 04:48:10 EST


To allow users to have stable device names with the help of udev,
add the name to the udev event that is sent when a new PtP clock
is available. The key is called 'PTP_CLOCK_NAME'.

Signed-off-by: Sven Schnelle <svens@xxxxxxxxxxxxx>
---
drivers/ptp/ptp_clock.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
index c56cd0f63909..15937acb79c6 100644
--- a/drivers/ptp/ptp_clock.c
+++ b/drivers/ptp/ptp_clock.c
@@ -25,9 +25,11 @@
#define PTP_PPS_EVENT PPS_CAPTUREASSERT
#define PTP_PPS_MODE (PTP_PPS_DEFAULTS | PPS_CANWAIT | PPS_TSFMT_TSPEC)

+static int ptp_udev_uevent(const struct device *dev, struct kobj_uevent_env *env);
const struct class ptp_class = {
.name = "ptp",
- .dev_groups = ptp_groups
+ .dev_groups = ptp_groups,
+ .dev_uevent = ptp_udev_uevent
};

/* private globals */
@@ -514,6 +516,13 @@ EXPORT_SYMBOL(ptp_cancel_worker_sync);

/* module operations */

+static int ptp_udev_uevent(const struct device *dev, struct kobj_uevent_env *env)
+{
+ struct ptp_clock *ptp = container_of(dev, struct ptp_clock, dev);
+
+ return add_uevent_var(env, "PTP_CLOCK_NAME=%s", ptp->info->name);
+}
+
static void __exit ptp_exit(void)
{
class_unregister(&ptp_class);
--
2.43.0