From: "M K, Muralidhara" <muralimk@amd.com>
To: Mario Limonciello <superm1@kernel.org>,
Muralidhara M K <muralidhara.mk@amd.com>,
ilpo.jarvinen@linux.intel.com
Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 0/4] platform/x86/amd/hsmp: Family 1Ah client support
Date: Mon, 24 Aug 2026 10:49:43 +0530 [thread overview]
Message-ID: <bae5dff7-5bf1-4b47-9cb8-a1266c313f2c@amd.com> (raw)
In-Reply-To: <df08c3c2-665c-46b9-a495-1ff0818be6f3@kernel.org>
On 8/19/2026 10:17 PM, Mario Limonciello wrote:
> Caution: This message originated from an External Source. Use proper
> caution when opening attachments, clicking links, or responding.
>
>
> On 8/19/26 02:31, Muralidhara M K wrote:
>> This series enables the HSMP driver on the Family 1Ah client platforms,
>> Models 80h-8Fh and E0h-E3h.
>>
>> The client parts drive a different mailbox from the server HSMP
>> interface, but the latest BIOS describes it through ACPI _CRS/_DSD the
>> same way a server socket's mailbox is described, and the parts speak
>> the Ryzen Master SMC message set instead of the server message IDs.
>> Patches 1-3 teach the driver the message set and let the client reach
>> its mailbox through the existing _CRS/_DSD-driven MMIO path, leaving
>> server behaviour unchanged, and patch 4 includes the telemetry table
>> those parts return. Only the ACPI driver probes them.
>>
>> Changes in v3:
>>
>> - is_client_platform() now tells client and server apart through the
>> ACPI-reported PM profile (FADT preferred_profile: PM_DESKTOP,
>> PM_MOBILE, PM_WORKSTATION, PM_TABLET) instead of a hardcoded Family
>> 1Ah model range, the same signal amd-pstate already keys off of.
>> Future client generations are recognised as long as firmware
>> reports the right PM profile, with no driver update needed.
>> - hsmp_desc() now resolves the running platform's descriptor once and
>> caches the pointer behind READ_ONCE()/WRITE_ONCE() instead of
>> recomputing it on every call. Concurrent first callers are benign,
>> since every one of them computes and stores that same pointer, so
>> the pair only needs to keep the load/store from being torn or
>> reordered by the compiler, not order it against anything else.
>> - The client message enum in amd_hsmp.h is now documented with
>> kernel-doc, one @member entry per message describing its inputs
>> and outputs, rather than a block comment plus a same-line comment
>> per enumerator. Noted there that not every platform supports every
>> message and that an unsupported one returns -ENOMSG.
>> - Patch 4: the Telemetry Table RM layout moved out of the .rst and
>> into amd_hsmp.h as real kernel-doc'd struct/enum declarations,
>> giving userspace one authoritative definition of the byte layout.
>> The .rst now just points at struct hsmp_telemetry_table_rm. The
>> structs are now also packed to a 4-byte boundary to match
>> firmware's actual layout, and the trailing NPU/PMF counters and
>> spare padding firmware carries after the overclocking fields are
>> no longer missing. Verified field-by-field against AMD's internal
>> metrics table header and end-to-end against a live snapshot off
>> Family 1Ah client hardware.
>>
>> Each patch builds individually at W=1 and is clean under
>> checkpatch.pl --strict, kernel-doc, codespell and the htmldocs build.
>>
>> Muralidhara M K (4):
>> platform/x86/amd/hsmp: Add HSMP client support for Family 1Ah
>> platform/x86/amd/hsmp: Route metric table through the client messages
>> platform/x86/amd/hsmp: Add ACPI client support for Family 1Ah
>> platform/x86/amd/hsmp: Document the client telemetry table
>>
>> Documentation/arch/x86/amd_hsmp.rst | 24 ++-
>> arch/x86/include/uapi/asm/amd_hsmp.h | 398 +++++++++++++++++++++++++
>> ++++++++++
>> drivers/platform/x86/amd/hsmp/acpi.c | 2 +-
>> drivers/platform/x86/amd/hsmp/hsmp.c | 273 +++++++++++++++++++++---
>> drivers/platform/x86/amd/hsmp/hsmp.h | 25 +++
>> 5 files changed, 688 insertions(+), 34 deletions(-)
>>
>>
>> base-commit: 775f2078b38ff2121410a35302497a1e81b8e459
>
> Thank you very much for the changes you did in v3, I'm happy now with
> the changes.
>
> Reviewed-by: Mario Limonciello (AMD) <superm1@kernel.org>
Thanks Mario.
Hi Ilpo,
Could you please take a look at this series and share your feedback ?
prev parent reply other threads:[~2026-08-24 5:19 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-19 7:31 [PATCH v3 0/4] platform/x86/amd/hsmp: Family 1Ah client support Muralidhara M K
2026-08-19 7:31 ` [PATCH v3 1/4] platform/x86/amd/hsmp: Add HSMP client support for Family 1Ah Muralidhara M K
2026-08-19 7:31 ` [PATCH v3 2/4] platform/x86/amd/hsmp: Route metric table through the client messages Muralidhara M K
2026-08-19 7:31 ` [PATCH v3 3/4] platform/x86/amd/hsmp: Add ACPI client support for Family 1Ah Muralidhara M K
2026-08-19 16:46 ` Mario Limonciello
2026-08-19 7:31 ` [PATCH v3 4/4] platform/x86/amd/hsmp: Document and expose client telemetry table in UAPI Muralidhara M K
2026-08-19 16:47 ` [PATCH v3 0/4] platform/x86/amd/hsmp: Family 1Ah client support Mario Limonciello
2026-08-24 5:19 ` M K, Muralidhara [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=bae5dff7-5bf1-4b47-9cb8-a1266c313f2c@amd.com \
--to=muralimk@amd.com \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=muralidhara.mk@amd.com \
--cc=platform-driver-x86@vger.kernel.org \
--cc=superm1@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.