Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ACPICA: Add SoundWire File Table (SWFT) signature

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®

Link: https://github.com/acpica/acpica/commit/18c96022
Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://patch.msgid.link/20250811134505.1162661-1-mstrozek@opensource.cirrus.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Maciej Strozek and committed by
Rafael J. Wysocki
ac46f5b6 1b237f19

+22 -1
+1 -1
drivers/acpi/tables.c
··· 408 408 ACPI_SIG_PSDT, ACPI_SIG_RSDT, ACPI_SIG_XSDT, ACPI_SIG_SSDT, 409 409 ACPI_SIG_IORT, ACPI_SIG_NFIT, ACPI_SIG_HMAT, ACPI_SIG_PPTT, 410 410 ACPI_SIG_NHLT, ACPI_SIG_AEST, ACPI_SIG_CEDT, ACPI_SIG_AGDI, 411 - ACPI_SIG_NBFT }; 411 + ACPI_SIG_NBFT, ACPI_SIG_SWFT}; 412 412 413 413 #define ACPI_HEADER_SIZE sizeof(struct acpi_table_header) 414 414
+21
include/acpi/actbl2.h
··· 57 57 #define ACPI_SIG_SDEI "SDEI" /* Software Delegated Exception Interface Table */ 58 58 #define ACPI_SIG_SDEV "SDEV" /* Secure Devices table */ 59 59 #define ACPI_SIG_SVKL "SVKL" /* Storage Volume Key Location Table */ 60 + #define ACPI_SIG_SWFT "SWFT" /* SoundWire File Table */ 60 61 #define ACPI_SIG_TDEL "TDEL" /* TD Event Log Table */ 61 62 62 63 /* ··· 3477 3476 enum acpi_svkl_format { 3478 3477 ACPI_SVKL_FORMAT_RAW_BINARY = 0, 3479 3478 ACPI_SVKL_FORMAT_RESERVED = 1 /* 1 and greater are reserved */ 3479 + }; 3480 + 3481 + /******************************************************************************* 3482 + * SWFT - SoundWire File Table 3483 + * 3484 + * Conforms to "Discovery and Configuration (DisCo) Specification for SoundWire" 3485 + * Version 2.1, 2 October 2023 3486 + * 3487 + ******************************************************************************/ 3488 + struct acpi_sw_file { 3489 + u16 vendor_id; 3490 + u32 file_id; 3491 + u16 file_version; 3492 + u32 file_length; 3493 + u8 data[]; 3494 + }; 3495 + 3496 + struct acpi_table_swft { 3497 + struct acpi_table_header header; 3498 + struct acpi_sw_file files[]; 3480 3499 }; 3481 3500 3482 3501 /*******************************************************************************