From: Aneesh Kumar K.V <aneesh.kumar@kernel.org>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
Greg KH <gregkh@linuxfoundation.org>,
Jeremy Linton <jeremy.linton@arm.com>,
Jonathan Cameron <jic23@kernel.org>,
Lorenzo Pieralisi <lpieralisi@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Sudeep Holla <sudeep.holla@arm.com>,
Will Deacon <will@kernel.org>,
Suzuki K Poulose <Suzuki.Poulose@arm.com>
Subject: Re: [PATCH v4 1/2] firmware: smccc: coco: Manage arm-smccc platform device and CCA auxiliary drivers
Date: Wed, 13 May 2026 12:26:13 +0530 [thread overview]
Message-ID: <yq5aa4u3u7aq.fsf@kernel.org> (raw)
In-Reply-To: <agM699d4KwdjnS39@arm.com>
Catalin Marinas <catalin.marinas@arm.com> writes:
> + Suzuki
>
> On Mon, Apr 27, 2026 at 11:46:14AM +0530, Aneesh Kumar K.V (Arm) wrote:
>> diff --git a/arch/arm64/include/asm/rsi.h b/arch/arm64/include/asm/rsi.h
>> index 88b50d660e85..2d2d363aaaee 100644
>> --- a/arch/arm64/include/asm/rsi.h
>> +++ b/arch/arm64/include/asm/rsi.h
>> @@ -10,7 +10,7 @@
>> #include <linux/jump_label.h>
>> #include <asm/rsi_cmds.h>
>>
>> -#define RSI_PDEV_NAME "arm-cca-dev"
>> +#define RSI_DEV_NAME "arm-rsi-dev"
> [...]
>> diff --git a/drivers/firmware/smccc/smccc.c b/drivers/firmware/smccc/smccc.c
>> index bdee057db2fd..fc9b44b7c687 100644
>> --- a/drivers/firmware/smccc/smccc.c
>> +++ b/drivers/firmware/smccc/smccc.c
>> @@ -12,6 +12,8 @@
>> #include <linux/platform_device.h>
>> #include <asm/archrandom.h>
>>
>> +#include "rmm.h"
>> +
>> static u32 smccc_version = ARM_SMCCC_VERSION_1_0;
>> static enum arm_smccc_conduit smccc_conduit = SMCCC_CONDUIT_NONE;
>>
>> @@ -85,6 +87,18 @@ static int __init smccc_devices_init(void)
>> {
>> struct platform_device *pdev;
>>
>> + pdev = platform_device_register_simple("arm-smccc",
>> + PLATFORM_DEVID_NONE, NULL, 0);
>> + if (IS_ERR(pdev)) {
>> + pr_err("arm-smccc: could not register device: %ld\n", PTR_ERR(pdev));
>> + } else {
>> + /*
>> + * Register the RMI and RSI devices only when firmware exposes
>> + * the required SMCCC function IDs at a supported revision.
>> + */
>> + register_rsi_device(pdev);
>> + }
>
> So as per the cover letter, instead of "arm-cca-dev" as a platform
> device, we get "arm-smccc" as a platform device with an auxiliary
> "arm-rsi-dev" child device. This does not get rid of the platform
> device, it just creates a synthetic platform device to represent the
> SMCCC firmware interface.
>
> Looking at the earlier discussion, I think this is what Greg/Jason were
> suggesting, except that we do not currently have an SMCCC platform
> device:
>
> https://lore.kernel.org/all/2025101534-frosty-shank-00b1@gregkh/
>
> If we go this route, shouldn't the platform device above be created only
> if !SMCCC_CONDUIT_NONE?
>
register_rsi_device() does check for
if (arm_smccc_1_1_get_conduit() != SMCCC_CONDUIT_SMC)
return;
>
> "smccc_trng" would also fit this model (together with the driver),
> assuming we don't break any user-space (searching the Debian codebase
> did not find any use).
Will switch smccc_trng to an auxiliary device in the next revision.
-aneesh
next prev parent reply other threads:[~2026-05-13 6:56 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-27 6:16 [PATCH v4 0/2] Switch Arm CCA to use an auxiliary device instead of a platform device Aneesh Kumar K.V (Arm)
2026-04-27 6:16 ` [PATCH v4 1/2] firmware: smccc: coco: Manage arm-smccc platform device and CCA auxiliary drivers Aneesh Kumar K.V (Arm)
2026-05-12 14:36 ` Catalin Marinas
2026-05-13 6:56 ` Aneesh Kumar K.V [this message]
2026-05-13 10:47 ` Catalin Marinas
2026-04-27 6:16 ` [PATCH v4 2/2] coco: guest: arm64: Drop dummy RSI platform device stub Aneesh Kumar K.V (Arm)
2026-05-12 14:38 ` Catalin Marinas
2026-05-13 6:58 ` Aneesh Kumar K.V
2026-05-13 7:11 ` Greg KH
2026-05-13 8:53 ` Aneesh Kumar K.V
2026-05-13 9:51 ` Aneesh Kumar K.V
2026-05-13 9:59 ` Greg KH
2026-05-13 16:53 ` Aneesh Kumar K.V
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=yq5aa4u3u7aq.fsf@kernel.org \
--to=aneesh.kumar@kernel.org \
--cc=Suzuki.Poulose@arm.com \
--cc=catalin.marinas@arm.com \
--cc=gregkh@linuxfoundation.org \
--cc=jeremy.linton@arm.com \
--cc=jic23@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mark.rutland@arm.com \
--cc=sudeep.holla@arm.com \
--cc=will@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.