[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0i24A5N5bwJE-zqw_afcPk2a3OvnPNDCTCCd2tRTy7zBA@mail.gmail.com>
Date: Wed, 16 Jul 2025 14:29:21 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Maciej Strozek <mstrozek@...nsource.cirrus.com>
Cc: "Rafael J . Wysocki" <rafael@...nel.org>, Len Brown <lenb@...nel.org>,
Robert Moore <robert.moore@...el.com>, linux-acpi@...r.kernel.org,
linux-kernel@...r.kernel.org, acpica-devel@...ts.linux.dev,
patches@...nsource.cirrus.com
Subject: Re: [PATCH v2] ACPICA: Add SoundWire File Table (SWFT) signature
On Wed, Jul 16, 2025 at 12:04 PM Maciej Strozek
<mstrozek@...nsource.cirrus.com> wrote:
>
> The File Download (FDL) process of SoundWire Class Audio (SDCA) driver,
> which provides code/data which may be required by an SDCA device,
> utilizes SWFT to obtain that code/data. There is a single SWFT for the
> system, and SWFT can contain multiple files (information about the file
> as well as its binary contents). The SWFT has a standard ACPI Descriptor
> Table Header, followed by SoundWire File definitions as described in
> Discovery and Configuration (DisCo) Specification for SoundWire®
>
> Signed-off-by: Maciej Strozek <mstrozek@...nsource.cirrus.com>
The canonical way to change ACPICA is to submit a PR to the upstream
ACPICA project on GitHub, wait until it is merged and then
(optionally) submit a Linux kernel patch based on it and pointing back
to the original upstream ACPICA commit.
Thanks!
> ---
> v2: Removed Change-Id line
> ---
> drivers/acpi/tables.c | 2 +-
> include/acpi/actbl2.h | 21 +++++++++++++++++++++
> 2 files changed, 22 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
> index 9e1b01c35070..beaef9a8fc02 100644
> --- a/drivers/acpi/tables.c
> +++ b/drivers/acpi/tables.c
> @@ -408,7 +408,7 @@ static const char table_sigs[][ACPI_NAMESEG_SIZE] __initconst = {
> ACPI_SIG_PSDT, ACPI_SIG_RSDT, ACPI_SIG_XSDT, ACPI_SIG_SSDT,
> ACPI_SIG_IORT, ACPI_SIG_NFIT, ACPI_SIG_HMAT, ACPI_SIG_PPTT,
> ACPI_SIG_NHLT, ACPI_SIG_AEST, ACPI_SIG_CEDT, ACPI_SIG_AGDI,
> - ACPI_SIG_NBFT };
> + ACPI_SIG_NBFT, ACPI_SIG_SWFT};
>
> #define ACPI_HEADER_SIZE sizeof(struct acpi_table_header)
>
> diff --git a/include/acpi/actbl2.h b/include/acpi/actbl2.h
> index 2e917a8f8bca..267ffabf3b7f 100644
> --- a/include/acpi/actbl2.h
> +++ b/include/acpi/actbl2.h
> @@ -54,6 +54,7 @@
> #define ACPI_SIG_SDEI "SDEI" /* Software Delegated Exception Interface Table */
> #define ACPI_SIG_SDEV "SDEV" /* Secure Devices table */
> #define ACPI_SIG_SVKL "SVKL" /* Storage Volume Key Location Table */
> +#define ACPI_SIG_SWFT "SWFT" /* SoundWire File Table */
> #define ACPI_SIG_TDEL "TDEL" /* TD Event Log Table */
>
> /*
> @@ -3163,6 +3164,26 @@ enum acpi_svkl_format {
> ACPI_SVKL_FORMAT_RESERVED = 1 /* 1 and greater are reserved */
> };
>
> +/*******************************************************************************
> + * SWFT - SoundWire File Table
> + *
> + * Conforms to "Discovery and Configuration (DisCo) Specification for SoundWire"
> + * Version 2.1, 2 October 2023
> + *
> + ******************************************************************************/
> +struct acpi_sw_file {
> + u16 vendor_id;
> + u32 file_id;
> + u16 file_version;
> + u32 file_length;
> + u8 data[];
> +};
> +
> +struct acpi_table_swft {
> + struct acpi_table_header header;
> + struct acpi_sw_file files[];
> +};
> +
> /*******************************************************************************
> *
> * TDEL - TD-Event Log
> --
> 2.39.5
>
>
Powered by blists - more mailing lists