Message ID | 20210422214930.716596-1-sathyanarayanan.kuppuswamy@linux.intel.com |
---|---|
State | Superseded |
Headers | show |
Series | [v2,1/1] ACPICA: Add SVKL table headers | expand |
On Thu, Apr 22, 2021 at 11:49 PM Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> wrote: > > ACPICA commit b5e6bcf69dbb9877481992d5ce86008cfb94f5b8 Evidently, this is ACPICA material, so I'm expecting to receive this patch from Erik within the normal ACPICA development process, so I'm not sure what the purpose of this submission is. Has this patch been posted here for reference only? > SVKL (Storage Volume Key Location Table) is used by BIOS/Firmware > to share storage volume encryption key's with OS. It will be used > by userspace to decrypt and mount encrypted drives. > > So add SVKL table signature and add it to known signatures array > support SVKL. > > You can find details about the SVKL table in TDX specfication > titled "Guest-Host-Communication Interface (GHCI) for Intel > Trust Domain Extensions (IntelĀ® TDX)", sec 4.4 and in ACPI > specification r6.4, sec 5.2.6. > > https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-guest-hypervisor-communication-interface.pdf > > Cc: Robert Moore <robert.moore@intel.com> > Cc: Erik Kaneda <erik.kaneda@intel.com> > Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com> > Link: https://github.com/acpica/acpica/commit/b5e6bcf6 > Signed-off-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> > --- > include/acpi/actbl2.h | 30 ++++++++++++++++++++++++++++++ > 1 file changed, 30 insertions(+) > > diff --git a/include/acpi/actbl2.h b/include/acpi/actbl2.h > index d6478c430c99..83a9d8b68e3a 100644 > --- a/include/acpi/actbl2.h > +++ b/include/acpi/actbl2.h > @@ -43,6 +43,7 @@ > #define ACPI_SIG_SDEI "SDEI" /* Software Delegated Exception Interface Table */ > #define ACPI_SIG_SDEV "SDEV" /* Secure Devices table */ > #define ACPI_SIG_NHLT "NHLT" /* Non-HDAudio Link Table */ > +#define ACPI_SIG_SVKL "SVKL" /* Storage Volume Key Location Table */ > > /* > * All tables must be byte-packed to match the ACPI specification, since > @@ -1713,6 +1714,35 @@ struct acpi_sdev_pcie_path { > u8 function; > }; > > +/******************************************************************************* > + * > + * SVKL - Storage Volume Key Location Table (ACPI 6.4) > + * Version 1 > + * > + ******************************************************************************/ > + > +struct acpi_table_svkl { > + struct acpi_table_header header; /* Common ACPI table header */ > + u32 count; > +}; > + > +struct acpi_svkl_header { > + u16 type; > + u16 format; > + u32 size; > + u64 address; > +}; > + > +enum acpi_svkl_type { > + ACPI_SVKL_TYPE_MAIN_STORAGE = 0, > + ACPI_SVKL_TYPE_RESERVED = 1 /* 1 and greater are reserved */ > +}; > + > +enum acpi_svkl_format { > + ACPI_SVKL_FORMAT_RAW_BINARY = 0, > + ACPI_SVKL_FORMAT_RESERVED = 1 /* 1 and greater are reserved */ > +}; > + > /* Reset to default packing */ > > #pragma pack() > -- > 2.25.1 >
On 4/23/21 5:36 AM, Rafael J. Wysocki wrote: > Evidently, this is ACPICA material, so I'm expecting to receive this > patch from Erik within the normal ACPICA development process, so I'm > not sure what the purpose of this submission is. > Erik already sent a pull request to merge this patch to ACPICA repo. After he updated the ACPICA commit ID, he sent it to me for Linux submission. I am not sure whether there is a special process for ACPICA related submission to Linux kernel. But if I had to guess, since I have sent both SVKL and MADT patches at the same time, Erik might have assumed that it should be merged in the same patch set and hence sent to me for upstream submission. > Has this patch been posted here for reference only? If this submission is incorrect, I can request Erik to submit it again for upstream merge. -- Sathyanarayanan Kuppuswamy Linux Kernel Developer
On Fri, Apr 23, 2021 at 6:52 PM Kuppuswamy, Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> wrote: > > > > On 4/23/21 5:36 AM, Rafael J. Wysocki wrote: > > Evidently, this is ACPICA material, so I'm expecting to receive this > > patch from Erik within the normal ACPICA development process, so I'm > > not sure what the purpose of this submission is. > > > > Erik already sent a pull request to merge this patch to ACPICA repo. > > After he updated the ACPICA commit ID, he sent it to me for Linux > submission. > > I am not sure whether there is a special process for ACPICA related > submission to Linux kernel. But if I had to guess, since I have sent > both SVKL and MADT patches at the same time, Erik might have assumed > that it should be merged in the same patch set and hence sent to me > for upstream submission. > > > Has this patch been posted here for reference only? > > If this submission is incorrect, I can request Erik to submit it again > for upstream merge. All of the sign-offs under the original ACPICA commit should have been preserved, then.
diff --git a/include/acpi/actbl2.h b/include/acpi/actbl2.h index d6478c430c99..83a9d8b68e3a 100644 --- a/include/acpi/actbl2.h +++ b/include/acpi/actbl2.h @@ -43,6 +43,7 @@ #define ACPI_SIG_SDEI "SDEI" /* Software Delegated Exception Interface Table */ #define ACPI_SIG_SDEV "SDEV" /* Secure Devices table */ #define ACPI_SIG_NHLT "NHLT" /* Non-HDAudio Link Table */ +#define ACPI_SIG_SVKL "SVKL" /* Storage Volume Key Location Table */ /* * All tables must be byte-packed to match the ACPI specification, since @@ -1713,6 +1714,35 @@ struct acpi_sdev_pcie_path { u8 function; }; +/******************************************************************************* + * + * SVKL - Storage Volume Key Location Table (ACPI 6.4) + * Version 1 + * + ******************************************************************************/ + +struct acpi_table_svkl { + struct acpi_table_header header; /* Common ACPI table header */ + u32 count; +}; + +struct acpi_svkl_header { + u16 type; + u16 format; + u32 size; + u64 address; +}; + +enum acpi_svkl_type { + ACPI_SVKL_TYPE_MAIN_STORAGE = 0, + ACPI_SVKL_TYPE_RESERVED = 1 /* 1 and greater are reserved */ +}; + +enum acpi_svkl_format { + ACPI_SVKL_FORMAT_RAW_BINARY = 0, + ACPI_SVKL_FORMAT_RESERVED = 1 /* 1 and greater are reserved */ +}; + /* Reset to default packing */ #pragma pack()
ACPICA commit b5e6bcf69dbb9877481992d5ce86008cfb94f5b8 SVKL (Storage Volume Key Location Table) is used by BIOS/Firmware to share storage volume encryption key's with OS. It will be used by userspace to decrypt and mount encrypted drives. So add SVKL table signature and add it to known signatures array support SVKL. You can find details about the SVKL table in TDX specfication titled "Guest-Host-Communication Interface (GHCI) for Intel Trust Domain Extensions (IntelĀ® TDX)", sec 4.4 and in ACPI specification r6.4, sec 5.2.6. https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-guest-hypervisor-communication-interface.pdf Cc: Robert Moore <robert.moore@intel.com> Cc: Erik Kaneda <erik.kaneda@intel.com> Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Link: https://github.com/acpica/acpica/commit/b5e6bcf6 Signed-off-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> --- include/acpi/actbl2.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+)