Commit de9ccf22 authored by Ivan Vecera's avatar Ivan Vecera Committed by Jakub Kicinski
Browse files

devlink: Add new "clock_id" generic device param



Add a new device generic parameter to specify clock ID that should
be used by the device for registering DPLL devices and pins.

Signed-off-by: default avatarIvan Vecera <ivecera@redhat.com>
Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
Link: https://patch.msgid.link/20250704182202.1641943-5-ivecera@redhat.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent c0ef1446
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -140,3 +140,6 @@ own name.
   * - ``enable_phc``
     - Boolean
     - Enable PHC (PTP Hardware Clock) functionality in the device.
   * - ``clock_id``
     - u64
     - Clock ID used by the device for registering DPLL devices and pins.
+4 −0
Original line number Diff line number Diff line
@@ -525,6 +525,7 @@ enum devlink_param_generic_id {
	DEVLINK_PARAM_GENERIC_ID_IO_EQ_SIZE,
	DEVLINK_PARAM_GENERIC_ID_EVENT_EQ_SIZE,
	DEVLINK_PARAM_GENERIC_ID_ENABLE_PHC,
	DEVLINK_PARAM_GENERIC_ID_CLOCK_ID,

	/* add new param generic ids above here*/
	__DEVLINK_PARAM_GENERIC_ID_MAX,
@@ -586,6 +587,9 @@ enum devlink_param_generic_id {
#define DEVLINK_PARAM_GENERIC_ENABLE_PHC_NAME "enable_phc"
#define DEVLINK_PARAM_GENERIC_ENABLE_PHC_TYPE DEVLINK_PARAM_TYPE_BOOL

#define DEVLINK_PARAM_GENERIC_CLOCK_ID_NAME "clock_id"
#define DEVLINK_PARAM_GENERIC_CLOCK_ID_TYPE DEVLINK_PARAM_TYPE_U64

#define DEVLINK_PARAM_GENERIC(_id, _cmodes, _get, _set, _validate)	\
{									\
	.id = DEVLINK_PARAM_GENERIC_ID_##_id,				\
+5 −0
Original line number Diff line number Diff line
@@ -97,6 +97,11 @@ static const struct devlink_param devlink_param_generic[] = {
		.name = DEVLINK_PARAM_GENERIC_ENABLE_PHC_NAME,
		.type = DEVLINK_PARAM_GENERIC_ENABLE_PHC_TYPE,
	},
	{
		.id = DEVLINK_PARAM_GENERIC_ID_CLOCK_ID,
		.name = DEVLINK_PARAM_GENERIC_CLOCK_ID_NAME,
		.type = DEVLINK_PARAM_GENERIC_CLOCK_ID_TYPE,
	},
};

static int devlink_param_generic_verify(const struct devlink_param *param)