X86 platform drivers
 help / color / mirror / Atom feed
From: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
To: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Cc: Hans de Goede <hansg@kernel.org>,
	platform-driver-x86@vger.kernel.org, mario.limonciello@amd.com,
	Sanket.Goswami@amd.com
Subject: Re: [PATCH v5 8/8] Documentation/ABI: add testing entry for AMD PMF character device interface
Date: Wed, 27 May 2026 15:05:22 +0530	[thread overview]
Message-ID: <16c4b3eb-4e14-4c6c-9571-d3417676e453@amd.com> (raw)
In-Reply-To: <ae0ebb59-cd50-73fd-db35-6797117e8d1d@linux.intel.com>



On 5/21/2026 16:37, Ilpo Järvinen wrote:
> On Thu, 21 May 2026, Shyam Sundar S K wrote:
> 
>> Add a Documentation/ABI/testing entry describing the AMD PMF util layer
>> character device (/dev/amdpmf_interface) and the initial ioctls used to
>> query feature support and metrics data information. This interface is
>> available when CONFIG_AMD_PMF_UTIL_SUPPORT=y.
>>
>> Also update the MAINTAINERS record with the new UAPI header.
>>
>> Signed-off-by: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
>> ---
>>  Documentation/ABI/testing/amdpmf-interface | 74 ++++++++++++++++++++++
>>  MAINTAINERS                                |  1 +
>>  2 files changed, 75 insertions(+)
>>  create mode 100644 Documentation/ABI/testing/amdpmf-interface
>>
>> diff --git a/Documentation/ABI/testing/amdpmf-interface b/Documentation/ABI/testing/amdpmf-interface
>> new file mode 100644
>> index 000000000000..45606907f7e6
>> --- /dev/null
>> +++ b/Documentation/ABI/testing/amdpmf-interface
>> @@ -0,0 +1,74 @@
>> +What:		/dev/amdpmf_interface
>> +Date:		June 2026
>> +KernelVersion:	7.2
>> +Contact:	Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
>> +Description:
>> +		The AMD Platform Management Framework (PMF) util layer exposes a
>> +		minimal user-space interface via a character device for feature
>> +		discovery and metrics monitoring.
>> +
>> +		When CONFIG_AMD_PMF_UTIL_SUPPORT is enabled, the driver creates
>> +		a character device:
>> +
>> +		======================
>> +		/dev/amdpmf_interface
>> +		======================
>> +
>> +		The interface supports a single ioctl:
>> +
>> +		============================ =======================================
>> +		IOCTL			     Usage
>> +		IOCTL_AMD_PMF_POPULATE_DATA  User passes a struct amd_pmf_info with
>> +					     the size field set to sizeof(struct
>> +					     amd_pmf_info). The driver returns all
>> +					     available metrics and feature status
>> +					     in the structure.
>> +		============================ =======================================
>> +
>> +		struct amd_pmf_info layout:
>> +
>> +		======================= ========== ================================
>> +		Field			Type	   Description
>> +		size			__u64	   Structure size for versioning
>> +		features_version	__u32	   IOCTL interface version
> 
> Where does this come from?

Nice catch! Will update in v6.

Thanks,
Shyam

> 
>> +		features_supported	__u32	   Bitmask of supported features
>> +		platform_type		__u32	   Platform form factor orientation
>> +		power_source		__u32	   AC/DC power source
>> +		laptop_placement	__u32	   Device placement state
>> +		lid_state		__u32	   Lid open/closed status
>> +		user_presence		__u32	   User presence detection
>> +		slider_position		__u32	   Current power slider position
>> +		skin_temp		__s32	   Skin temperature (centidegrees)
>> +		gfx_busy		__u32	   Graphics workload percentage
>> +		ambient_light		__s32	   Ambient light sensor reading
>> +		avg_c0_residency	__u32	   Average C0 state residency
>> +		max_c0_residency	__u32	   Maximum C0 state residency
>> +		socket_power		__u32	   Socket power consumption
>> +		bios_input[10]		__u32	   Custom BIOS input parameters
>> +		bios_output[10]		__u32	   Custom BIOS output parameters
>> +		======================= ========== ================================
>> +
>> +		Feature Support Flags (features_supported bitmask):
>> +
>> +		=====================================    ====  =============================
>> +		Flag				         Bit   Description
>> +		AMD_PMF_FEAT_AUTO_MODE		         0     Auto Mode feature support
>> +		AMD_PMF_FEAT_STATIC_POWER_SLIDER         1     Static Power Slider support
>> +		AMD_PMF_FEAT_POLICY_BUILDER	         2     Policy Builder (Smart PC)
>> +		AMD_PMF_FEAT_DYNAMIC_POWER_SLIDER_AC     3     Dynamic slider on AC
>> +		AMD_PMF_FEAT_DYNAMIC_POWER_SLIDER_DC     4     Dynamic slider on DC
>> +		=====================================    ====  =============================
>> +
>> +		Return codes:
>> +
>> +		============= ============================================================
>> +		Return code   Description
>> +		0	      Success
>> +		EINVAL	      Invalid size or parameter
>> +		EFAULT	      copy_to_user/copy_from_user failures
>> +		ENODEV	      PMF device not available
>> +		ENOTTY	      Unknown ioctl command
>> +		============= ============================================================
>> +
>> +		User-space tools integrating with AMD PMF to discover capabilities and
>> +		monitor real-time metrics for thermal and power management validation.
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 839e39825455..ec061cd127b2 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -1216,6 +1216,7 @@ L:	platform-driver-x86@vger.kernel.org
>>  S:	Supported
>>  F:	Documentation/ABI/testing/sysfs-amd-pmf
>>  F:	drivers/platform/x86/amd/pmf/
>> +F:	include/uapi/linux/amd-pmf.h
>>  
>>  AMD POWERPLAY AND SWSMU
>>  M:	Kenneth Feng <kenneth.feng@amd.com>
>>
> 


      reply	other threads:[~2026-05-27  9:35 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-20 18:54 [PATCH v5 0/8] platform/x86/amd/pmf: Introduce PMF util layer with userspace interface Shyam Sundar S K
2026-05-20 18:54 ` [PATCH v5 1/8] platform/x86/amd/pmf: Add util layer and userspace character device interface Shyam Sundar S K
2026-05-22 13:21   ` Ilpo Järvinen
2026-05-20 18:54 ` [PATCH v5 2/8] platform/x86/amd/pmf: store BIOS output values for user-space metrics via util IOCTL Shyam Sundar S K
2026-05-22 13:28   ` Ilpo Järvinen
2026-05-20 18:54 ` [PATCH v5 3/8] platform/x86/amd/pmf: Add feature discovery support to util interface Shyam Sundar S K
2026-05-22 13:29   ` Ilpo Järvinen
2026-05-20 18:54 ` [PATCH v5 4/8] platform/x86/amd/pmf: Store commonly used enums in the header file Shyam Sundar S K
2026-05-22 13:31   ` Ilpo Järvinen
2026-05-20 18:54 ` [PATCH v5 5/8] platform/x86/amd/pmf: Move debug helper functions to UAPI header Shyam Sundar S K
2026-05-21 11:02   ` Ilpo Järvinen
2026-05-27  9:37     ` Shyam Sundar S K
2026-05-22 13:35   ` Ilpo Järvinen
2026-05-20 18:54 ` [PATCH v5 6/8] platform/x86/amd/pmf: Implement util layer ioctl handler Shyam Sundar S K
2026-05-21 10:58   ` Ilpo Järvinen
2026-05-27 10:15     ` Shyam Sundar S K
2026-05-27 11:09       ` Ilpo Järvinen
2026-05-22 13:44   ` Ilpo Järvinen
2026-05-20 18:54 ` [PATCH v5 7/8] platform/x86/amd/pmf: Introduce AMD PMF testing tool for driver metrics and features Shyam Sundar S K
2026-05-20 18:54 ` [PATCH v5 8/8] Documentation/ABI: add testing entry for AMD PMF character device interface Shyam Sundar S K
2026-05-21 11:07   ` Ilpo Järvinen
2026-05-27  9:35     ` Shyam Sundar S K [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=16c4b3eb-4e14-4c6c-9571-d3417676e453@amd.com \
    --to=shyam-sundar.s-k@amd.com \
    --cc=Sanket.Goswami@amd.com \
    --cc=hansg@kernel.org \
    --cc=ilpo.jarvinen@linux.intel.com \
    --cc=mario.limonciello@amd.com \
    --cc=platform-driver-x86@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox