From: Catalin Marinas <catalin.marinas@arm.com>
To: "Aneesh Kumar K.V (Arm)" <aneesh.kumar@kernel.org>
Cc: linux-coco@lists.linux.dev, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Jason Gunthorpe <jgg@nvidia.com>,
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>,
Steven Price <steven.price@arm.com>,
Suzuki K Poulose <Suzuki.Poulose@arm.com>,
Andre Przywara <andre.przywara@arm.com>,
Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
Subject: Re: [PATCH v12 7/7] coco: guest: arm64: Replace dummy CCA device with sysfs ABI
Date: Mon, 21 Sep 2026 10:00:27 +0100 [thread overview]
Message-ID: <arDyK8QDtCEc5SzU@arm.com> (raw)
In-Reply-To: <20260921053807.354802-8-aneesh.kumar@kernel.org>
On Mon, Sep 21, 2026 at 11:08:07AM +0530, Aneesh Kumar K.V (Arm) wrote:
> diff --git a/Documentation/ABI/testing/sysfs-firmware-cca b/Documentation/ABI/testing/sysfs-firmware-cca
> new file mode 100644
> index 000000000000..9cc355724f94
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-firmware-cca
> @@ -0,0 +1,7 @@
> +What: /sys/firmware/cca/realm_guest
> +Date: May 2026
Still May?
> +Contact: Linux ARM Kernel Mailing list <linux-arm-kernel@lists.infradead.org>
> +Description: Read-only. Present only when the kernel is running as an
> + Arm Confidential Compute Architecture (CCA) Realm guest, in
> + which case it reads 1. If the file does not exist, the kernel
> + is not running as a Realm guest.
> diff --git a/drivers/firmware/arm_rmm/rsi.c b/drivers/firmware/arm_rmm/rsi.c
> index 2dd69febedbd..425b27c0cad4 100644
> --- a/drivers/firmware/arm_rmm/rsi.c
> +++ b/drivers/firmware/arm_rmm/rsi.c
> @@ -7,14 +7,16 @@
> #include <linux/memblock.h>
> #include <linux/psci.h>
> #include <linux/swiotlb.h>
> -#include <linux/platform_device.h>
> #include <linux/arm-rsi-cmds.h>
> +#include <linux/kobject.h>
> +#include <linux/sysfs.h>
>
> #include <asm/io.h>
> #include <asm/mem_encrypt.h>
> #include <asm/pgtable.h>
>
> static struct realm_config config;
> +static struct kobject *cca_kobj;
Nit: do we need this static cca_kobj? Can you not just use a local
variable in realm_sysfs_init()?
>
> unsigned long prot_ns_shared;
> EXPORT_SYMBOL(prot_ns_shared);
> @@ -182,17 +184,36 @@ void __init arm64_rsi_init(void)
> static_branch_enable(&rsi_present);
> }
>
> -static struct platform_device rsi_dev = {
> - .name = "arm-cca-dev",
> - .id = PLATFORM_DEVID_NONE
> +static ssize_t realm_guest_show(struct kobject *kobj,
> + struct kobj_attribute *attr, char *buf)
> +{
> + return sysfs_emit(buf, "1\n");
> +}
> +
> +static struct kobj_attribute cca_realm_guest =
> + __ATTR(realm_guest, 0444, realm_guest_show, NULL);
Nit: __ATTR_RO,
> +
> +static const struct attribute *cca_realm_attrs[] = {
> + &cca_realm_guest.attr,
> + NULL
> };
>
> -static int __init arm64_create_dummy_rsi_dev(void)
> +static int __init realm_sysfs_init(void)
> {
> - if (is_realm_world() &&
> - platform_device_register(&rsi_dev))
> - pr_err("failed to register rsi platform device\n");
> - return 0;
> -}
> + int ret;
>
> -arch_initcall(arm64_create_dummy_rsi_dev)
> + if (!is_realm_world())
> + return 0;
> +
> + cca_kobj = kobject_create_and_add("cca", firmware_kobj);
> + if (!cca_kobj)
> + return -ENOMEM;
> +
> + ret = sysfs_create_files(cca_kobj, cca_realm_attrs);
> + if (!ret)
> + return 0;
> +
> + kobject_put(cca_kobj);
> + return ret;
> +}
> +device_initcall(realm_sysfs_init);
If you make it to here ;), I'd also split this patch in two as per
Jonathan's suggestion on the previous version.
--
Catalin
prev parent reply other threads:[~2026-09-21 9:00 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-21 5:38 [PATCH v12 0/7] Switch Arm SMCCC firmware services to an SMCCC bus Aneesh Kumar K.V (Arm)
2026-09-21 5:38 ` [PATCH v12 1/7] firmware: smccc: Add an Arm " Aneesh Kumar K.V (Arm)
2026-09-21 8:39 ` Catalin Marinas
2026-09-21 9:03 ` Aneesh Kumar K.V
2026-09-21 5:38 ` [PATCH v12 2/7] firmware: hwrng: arm_smccc_trng: Register as an SMCCC device Aneesh Kumar K.V (Arm)
2026-09-21 8:45 ` Catalin Marinas
2026-09-21 9:01 ` Aneesh Kumar K.V
2026-09-21 5:38 ` [PATCH v12 3/7] firmware: arm_rmm: Move RSI support out of arch/arm64 Aneesh Kumar K.V (Arm)
2026-09-21 8:50 ` Catalin Marinas
2026-09-21 5:38 ` [PATCH v12 4/7] arm64: realm: Move Realm memory encryption ops to RSI code Aneesh Kumar K.V (Arm)
2026-09-21 8:52 ` Catalin Marinas
2026-09-21 9:05 ` Aneesh Kumar K.V
2026-09-21 10:00 ` Suzuki K Poulose
2026-09-21 22:24 ` Jonathan Cameron
2026-09-21 5:38 ` [PATCH v12 5/7] virt: coco: arm-cca-guest: Rename TSM report source file Aneesh Kumar K.V (Arm)
2026-09-21 22:25 ` Jonathan Cameron
2026-09-21 5:38 ` [PATCH v12 6/7] firmware: smccc: arm-cca-guest: Bind the TSM provider to an SMCCC device Aneesh Kumar K.V (Arm)
2026-09-21 5:38 ` [PATCH v12 7/7] coco: guest: arm64: Replace dummy CCA device with sysfs ABI Aneesh Kumar K.V (Arm)
2026-09-21 9:00 ` Catalin Marinas [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=arDyK8QDtCEc5SzU@arm.com \
--to=catalin.marinas@arm.com \
--cc=Suzuki.Poulose@arm.com \
--cc=andre.przywara@arm.com \
--cc=aneesh.kumar@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=jeremy.linton@arm.com \
--cc=jgg@nvidia.com \
--cc=jic23@kernel.org \
--cc=jonathan.cameron@oss.qualcomm.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-coco@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mark.rutland@arm.com \
--cc=steven.price@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®