Commit cea465a9 authored by David Arinzon's avatar David Arinzon Committed by Jakub Kicinski
Browse files

devlink: Add new "enable_phc" generic device param



Add a new device generic parameter to enable/disable the
PHC (PTP Hardware Clock) functionality in the device associated
with the devlink instance.

Signed-off-by: default avatarDavid Arinzon <darinzon@amazon.com>
Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
Link: https://patch.msgid.link/20250617110545.5659-6-darinzon@amazon.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 9d67d534
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -137,3 +137,6 @@ own name.
   * - ``event_eq_size``
     - u32
     - Control the size of asynchronous control events EQ.
   * - ``enable_phc``
     - Boolean
     - Enable PHC (PTP Hardware Clock) functionality in the device.
+4 −0
Original line number Diff line number Diff line
@@ -520,6 +520,7 @@ enum devlink_param_generic_id {
	DEVLINK_PARAM_GENERIC_ID_ENABLE_IWARP,
	DEVLINK_PARAM_GENERIC_ID_IO_EQ_SIZE,
	DEVLINK_PARAM_GENERIC_ID_EVENT_EQ_SIZE,
	DEVLINK_PARAM_GENERIC_ID_ENABLE_PHC,

	/* add new param generic ids above here*/
	__DEVLINK_PARAM_GENERIC_ID_MAX,
@@ -578,6 +579,9 @@ enum devlink_param_generic_id {
#define DEVLINK_PARAM_GENERIC_EVENT_EQ_SIZE_NAME "event_eq_size"
#define DEVLINK_PARAM_GENERIC_EVENT_EQ_SIZE_TYPE DEVLINK_PARAM_TYPE_U32

#define DEVLINK_PARAM_GENERIC_ENABLE_PHC_NAME "enable_phc"
#define DEVLINK_PARAM_GENERIC_ENABLE_PHC_TYPE DEVLINK_PARAM_TYPE_BOOL

#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
@@ -92,6 +92,11 @@ static const struct devlink_param devlink_param_generic[] = {
		.name = DEVLINK_PARAM_GENERIC_EVENT_EQ_SIZE_NAME,
		.type = DEVLINK_PARAM_GENERIC_EVENT_EQ_SIZE_TYPE,
	},
	{
		.id = DEVLINK_PARAM_GENERIC_ID_ENABLE_PHC,
		.name = DEVLINK_PARAM_GENERIC_ENABLE_PHC_NAME,
		.type = DEVLINK_PARAM_GENERIC_ENABLE_PHC_TYPE,
	},
};

static int devlink_param_generic_verify(const struct devlink_param *param)