History

Merge branch 'acpica'

Merge ACPICA material for 5.19-rc1: - Add support for the Windows 11 _OSI string (Mario Limonciello) - Add the CFMWS subtable to the CEDT table (Lawrence Hileman). - iASL: NHLT: Treat Terminator as specific_config (Piotr Maziarz). - iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint Descriptor (Piotr Maziarz). - iASL: NHLT: Rename linux specific strucures to device_info (Piotr Maziarz). - Add new ACPI 6.4 semantics to Load() and LoadTable() (Bob Moore). - Clean up double word in comment (Tom Rix). - Update copyright notices to the year 2022 (Bob Moore). - Remove some tabs and // comments - automated cleanup (Bob Moore). - Replace zero-length array with flexible-array member (Gustavo A. R. Silva). - Interpreter: Add units to time variable names (Paul Menzel). - Add support for ARM Performance Monitoring Unit Table (Besar Wicaksono). - Inform users about ACPI spec violation related to sleep length (Paul Menzel). - iASL/MADT: Add OEM-defined subtable (Bob Moore). - Interpreter: Fix some typo mistakes (Selvarasu Ganesan). - Updates for revision E.d of IORT (Shameer Kolothum). - Use ACPI_FORMAT_UINT64 for 64-bit output (Bob Moore). - Update version to 20220331 (Bob Moore). * acpica: (21 commits) Revert "ACPICA: executer/exsystem: Warn about sleeps greater than 10 ms" ACPICA: Update version to 20220331 ACPICA: exsystem.c: Use ACPI_FORMAT_UINT64 for 64-bit output ACPICA: IORT: Updates for revision E.d ACPICA: executer/exsystem: Fix some typo mistakes ACPICA: iASL/MADT: Add OEM-defined subtable ACPICA: executer/exsystem: Warn about sleeps greater than 10 ms ACPICA: executer/exsystem: Inform users about ACPI spec violation ACPICA: Add support for ARM Performance Monitoring Unit Table. ACPICA: executer/exsystem: Add units to time variable names ACPICA: Headers: Replace zero-length array with flexible-array member ACPICA: Removed some tabs and // comments ACPICA: Update copyright notices to the year 2022 ACPICA: Clean up double word in comment ACPICA: Add new ACPI 6.4 semantics for LoadTable() operator ACPICA: Add new ACPI 6.4 semantics to the Load() operator ACPICA: iASL: NHLT: Rename linux specific strucures to device_info ACPICA: iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint Descriptor ACPICA: iASL: NHLT: Treat Terminator as specific_config ACPICA: Add the subtable CFMWS to the CEDT table ...

Rafael J. Wysocki committed 4 years ago

Commit ec1ff612 parents 06eb8dc c244dc1175 files · +411 −265Browse files

Showing the changes to include (22 of 175 files). Show all

Unified · Split

22 files
  1. include/acpi/acbuffer.h +1 −1
  2. include/acpi/acconfig.h +1 −1
  3. include/acpi/acexcep.h +1 −1
  4. include/acpi/acnames.h +1 −1
  5. include/acpi/acoutput.h +1 −1
  6. include/acpi/acpi.h +1 −1
  7. include/acpi/acpiosxf.h +1 −1
  8. include/acpi/acpixf.h +2 −2
  9. include/acpi/acrestyp.h +1 −1
  10. include/acpi/actbl.h +1 −1
  11. include/acpi/actbl1.h +11 −7
  12. include/acpi/actbl2.h +138 −37
  13. include/acpi/actbl3.h +1 −1
  14. include/acpi/actypes.h +10 −9
  15. include/acpi/acuuid.h +1 −1
  16. include/acpi/platform/acenv.h +1 −1
  17. include/acpi/platform/acenvex.h +1 −1
  18. include/acpi/platform/acgcc.h +1 −1
  19. include/acpi/platform/acgccex.h +1 −1
  20. include/acpi/platform/acintel.h +1 −1
  21. include/acpi/platform/aclinux.h +1 −1
  22. include/acpi/platform/aclinuxex.h +1 −1
include/acpi/acbuffer.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acbuffer.h - Support for buffers returned by ACPI predefined names4 * Name: acbuffer.h - Support for buffers returned by ACPI predefined names
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/acconfig.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acconfig.h - Global configuration constants4 * Name: acconfig.h - Global configuration constants
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/acexcep.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acexcep.h - Exception codes returned by the ACPI subsystem4 * Name: acexcep.h - Exception codes returned by the ACPI subsystem
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/acnames.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acnames.h - Global names and strings4 * Name: acnames.h - Global names and strings
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/acoutput.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acoutput.h -- debug output4 * Name: acoutput.h -- debug output
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/acpi.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acpi.h - Master public include file used to interface to ACPICA4 * Name: acpi.h - Master public include file used to interface to ACPICA
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/acpiosxf.h+1−1
@@ -5,7 +5,7 @@ · 4 unmodified lines
5 * interfaces must be implemented by OSL to interface the5 * interfaces must be implemented by OSL to interface the
6 * ACPI components to the host operating system.6 * ACPI components to the host operating system.
7 *7 *
8 * Copyright (C) 2000 - 2021, Intel Corp.8 * Copyright (C) 2000 - 2022, Intel Corp.
9 *9 *
10 *****************************************************************************/10 *****************************************************************************/
11 11
include/acpi/acpixf.h+2−2
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acpixf.h - External interfaces to the ACPI subsystem4 * Name: acpixf.h - External interfaces to the ACPI subsystem
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
@@ -12,7 +12,7 @@ · 2 unmodified lines
12 12
13/* Current ACPICA subsystem version in YYYYMMDD format */13/* Current ACPICA subsystem version in YYYYMMDD format */
14 14
15#define ACPI_CA_VERSION 0x2021121715#define ACPI_CA_VERSION 0x20220331
16 16
17#include <acpi/acconfig.h>17#include <acpi/acconfig.h>
18#include <acpi/actypes.h>18#include <acpi/actypes.h>
include/acpi/acrestyp.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acrestyp.h - Defines, types, and structures for resource descriptors4 * Name: acrestyp.h - Defines, types, and structures for resource descriptors
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/actbl.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: actbl.h - Basic ACPI Table Definitions4 * Name: actbl.h - Basic ACPI Table Definitions
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/actbl1.h+11−7
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: actbl1.h - Additional ACPI table definitions4 * Name: actbl1.h - Additional ACPI table definitions
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
@@ -373,17 +373,21 @@ struct acpi_cedt_cfmws { · 363 unmodified lines
373 u32 interleave_targets[];373 u32 interleave_targets[];
374};374};
375 375
376struct acpi_cedt_cfmws_target_element {
377 u32 interleave_target;
378};
379
376/* Values for Interleave Arithmetic field above */380/* Values for Interleave Arithmetic field above */
377 381
378#define ACPI_CEDT_CFMWS_ARITHMETIC_MODULO (0)382#define ACPI_CEDT_CFMWS_ARITHMETIC_MODULO (0)
379 383
380/* Values for Restrictions field above */384/* Values for Restrictions field above */
381 385
382#define ACPI_CEDT_CFMWS_RESTRICT_TYPE2 (1)386#define ACPI_CEDT_CFMWS_RESTRICT_TYPE2 (1)
383#define ACPI_CEDT_CFMWS_RESTRICT_TYPE3 (1<<1)387#define ACPI_CEDT_CFMWS_RESTRICT_TYPE3 (1<<1)
384#define ACPI_CEDT_CFMWS_RESTRICT_VOLATILE (1<<2)388#define ACPI_CEDT_CFMWS_RESTRICT_VOLATILE (1<<2)
385#define ACPI_CEDT_CFMWS_RESTRICT_PMEM (1<<3)389#define ACPI_CEDT_CFMWS_RESTRICT_PMEM (1<<3)
386#define ACPI_CEDT_CFMWS_RESTRICT_FIXED (1<<4)390#define ACPI_CEDT_CFMWS_RESTRICT_FIXED (1<<4)
387 391
388/*******************************************************************************392/*******************************************************************************
389 *393 *
include/acpi/actbl2.h+138−37
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: actbl2.h - ACPI Table Definitions (tables not in ACPI spec)4 * Name: actbl2.h - ACPI Table Definitions (tables not in ACPI spec)
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
@@ -25,6 +25,7 @@ · 15 unmodified lines
25 * the wrong signature.25 * the wrong signature.
26 */26 */
27#define ACPI_SIG_AGDI "AGDI" /* Arm Generic Diagnostic Dump and Reset Device Interface */27#define ACPI_SIG_AGDI "AGDI" /* Arm Generic Diagnostic Dump and Reset Device Interface */
28#define ACPI_SIG_APMT "APMT" /* Arm Performance Monitoring Unit table */
28#define ACPI_SIG_BDAT "BDAT" /* BIOS Data ACPI Table */29#define ACPI_SIG_BDAT "BDAT" /* BIOS Data ACPI Table */
29#define ACPI_SIG_IORT "IORT" /* IO Remapping Table */30#define ACPI_SIG_IORT "IORT" /* IO Remapping Table */
30#define ACPI_SIG_IVRS "IVRS" /* I/O Virtualization Reporting Structure */31#define ACPI_SIG_IVRS "IVRS" /* I/O Virtualization Reporting Structure */
@@ -258,6 +259,85 @@ struct acpi_table_agdi { · 227 unmodified lines
258 259
259#define ACPI_AGDI_SIGNALING_MODE (1)260#define ACPI_AGDI_SIGNALING_MODE (1)
260 261
262/*******************************************************************************
263 *
264 * APMT - ARM Performance Monitoring Unit Table
265 *
266 * Conforms to:
267 * ARM Performance Monitoring Unit Architecture 1.0 Platform Design Document
268 * ARM DEN0117 v1.0 November 25, 2021
269 *
270 ******************************************************************************/
271
272struct acpi_table_apmt {
273 struct acpi_table_header header; /* Common ACPI table header */
274};
275
276#define ACPI_APMT_NODE_ID_LENGTH 4
277
278/*
279 * APMT subtables
280 */
281struct acpi_apmt_node {
282 u16 length;
283 u8 flags;
284 u8 type;
285 u32 id;
286 u64 inst_primary;
287 u32 inst_secondary;
288 u64 base_address0;
289 u64 base_address1;
290 u32 ovflw_irq;
291 u32 reserved;
292 u32 ovflw_irq_flags;
293 u32 proc_affinity;
294 u32 impl_id;
295};
296
297/* Masks for Flags field above */
298
299#define ACPI_APMT_FLAGS_DUAL_PAGE (1<<0)
300#define ACPI_APMT_FLAGS_AFFINITY (1<<1)
301#define ACPI_APMT_FLAGS_ATOMIC (1<<2)
302
303/* Values for Flags dual page field above */
304
305#define ACPI_APMT_FLAGS_DUAL_PAGE_NSUPP (0<<0)
306#define ACPI_APMT_FLAGS_DUAL_PAGE_SUPP (1<<0)
307
308/* Values for Flags processor affinity field above */
309#define ACPI_APMT_FLAGS_AFFINITY_PROC (0<<1)
310#define ACPI_APMT_FLAGS_AFFINITY_PROC_CONTAINER (1<<1)
311
312/* Values for Flags 64-bit atomic field above */
313#define ACPI_APMT_FLAGS_ATOMIC_NSUPP (0<<2)
314#define ACPI_APMT_FLAGS_ATOMIC_SUPP (1<<2)
315
316/* Values for Type field above */
317
318enum acpi_apmt_node_type {
319 ACPI_APMT_NODE_TYPE_MC = 0x00,
320 ACPI_APMT_NODE_TYPE_SMMU = 0x01,
321 ACPI_APMT_NODE_TYPE_PCIE_ROOT = 0x02,
322 ACPI_APMT_NODE_TYPE_ACPI = 0x03,
323 ACPI_APMT_NODE_TYPE_CACHE = 0x04,
324 ACPI_APMT_NODE_TYPE_COUNT
325};
326
327/* Masks for ovflw_irq_flags field above */
328
329#define ACPI_APMT_OVFLW_IRQ_FLAGS_MODE (1<<0)
330#define ACPI_APMT_OVFLW_IRQ_FLAGS_TYPE (1<<1)
331
332/* Values for ovflw_irq_flags mode field above */
333
334#define ACPI_APMT_OVFLW_IRQ_FLAGS_MODE_LEVEL (0<<0)
335#define ACPI_APMT_OVFLW_IRQ_FLAGS_MODE_EDGE (1<<0)
336
337/* Values for ovflw_irq_flags type field above */
338
339#define ACPI_APMT_OVFLW_IRQ_FLAGS_TYPE_WIRED (0<<1)
340
261/*******************************************************************************341/*******************************************************************************
262 *342 *
263 * BDAT - BIOS Data ACPI Table343 * BDAT - BIOS Data ACPI Table
@@ -277,7 +357,7 @@ struct acpi_table_bdat { · 13 unmodified lines
277 * IORT - IO Remapping Table357 * IORT - IO Remapping Table
278 *358 *
279 * Conforms to "IO Remapping Table System Software on ARM Platforms",359 * Conforms to "IO Remapping Table System Software on ARM Platforms",
280 * Document number: ARM DEN 0049E.b, Feb 2021360 * Document number: ARM DEN 0049E.d, Feb 2022
281 *361 *
282 ******************************************************************************/362 ******************************************************************************/
283 363
@@ -374,7 +454,8 @@ struct acpi_iort_root_complex { · 90 unmodified lines
374 u32 ats_attribute;454 u32 ats_attribute;
375 u32 pci_segment_number;455 u32 pci_segment_number;
376 u8 memory_address_limit; /* Memory address size limit */456 u8 memory_address_limit; /* Memory address size limit */
377 u8 reserved[3]; /* Reserved, must be zero */457 u16 pasid_capabilities; /* PASID Capabilities */
458 u8 reserved[1]; /* Reserved, must be zero */
378};459};
379 460
380/* Masks for ats_attribute field above */461/* Masks for ats_attribute field above */
@@ -383,6 +464,9 @@ struct acpi_iort_root_complex { · 2 unmodified lines
383#define ACPI_IORT_PRI_SUPPORTED (1<<1) /* The root complex PRI support */464#define ACPI_IORT_PRI_SUPPORTED (1<<1) /* The root complex PRI support */
384#define ACPI_IORT_PASID_FWD_SUPPORTED (1<<2) /* The root complex PASID forward support */465#define ACPI_IORT_PASID_FWD_SUPPORTED (1<<2) /* The root complex PASID forward support */
385 466
467/* Masks for pasid_capabilities field above */
468#define ACPI_IORT_PASID_MAX_WIDTH (0x1F) /* Bits 0-4 */
469
386struct acpi_iort_smmu {470struct acpi_iort_smmu {
387 u64 base_address; /* SMMU base address */471 u64 base_address; /* SMMU base address */
388 u64 span; /* Length of memory range */472 u64 span; /* Length of memory range */
@@ -458,6 +542,25 @@ struct acpi_iort_rmr { · 69 unmodified lines
458 u32 rmr_offset;542 u32 rmr_offset;
459};543};
460 544
545/* Masks for Flags field above */
546#define ACPI_IORT_RMR_REMAP_PERMITTED (1)
547#define ACPI_IORT_RMR_ACCESS_PRIVILEGE (1<<1)
548
549/*
550 * Macro to access the Access Attributes in flags field above:
551 * Access Attributes is encoded in bits 9:2
552 */
553#define ACPI_IORT_RMR_ACCESS_ATTRIBUTES(flags) (((flags) >> 2) & 0xFF)
554
555/* Values for above Access Attributes */
556
557#define ACPI_IORT_RMR_ATTR_DEVICE_NGNRNE 0x00
558#define ACPI_IORT_RMR_ATTR_DEVICE_NGNRE 0x01
559#define ACPI_IORT_RMR_ATTR_DEVICE_NGRE 0x02
560#define ACPI_IORT_RMR_ATTR_DEVICE_GRE 0x03
561#define ACPI_IORT_RMR_ATTR_NORMAL_NC 0x04
562#define ACPI_IORT_RMR_ATTR_NORMAL_IWB_OWB 0x05
563
461struct acpi_iort_rmr_desc {564struct acpi_iort_rmr_desc {
462 u64 base_address;565 u64 base_address;
463 u64 length;566 u64 length;
@@ -762,7 +865,8 @@ enum acpi_madt_type { · 298 unmodified lines
762 ACPI_MADT_TYPE_GENERIC_REDISTRIBUTOR = 14,865 ACPI_MADT_TYPE_GENERIC_REDISTRIBUTOR = 14,
763 ACPI_MADT_TYPE_GENERIC_TRANSLATOR = 15,866 ACPI_MADT_TYPE_GENERIC_TRANSLATOR = 15,
764 ACPI_MADT_TYPE_MULTIPROC_WAKEUP = 16,867 ACPI_MADT_TYPE_MULTIPROC_WAKEUP = 16,
765 ACPI_MADT_TYPE_RESERVED = 17 /* 17 and greater are reserved */868 ACPI_MADT_TYPE_RESERVED = 17, /* 17 to 0x7F are reserved */
869 ACPI_MADT_TYPE_OEM_RESERVED = 0x80 /* 0x80 to 0xFF are reserved for OEM use */
766};870};
767 871
768/*872/*
@@ -978,8 +1082,8 @@ struct acpi_madt_multiproc_wakeup { · 209 unmodified lines
978 u64 base_address;1082 u64 base_address;
979};1083};
980 1084
981#define ACPI_MULTIPROC_WAKEUP_MB_OS_SIZE 20321085#define ACPI_MULTIPROC_WAKEUP_MB_OS_SIZE 2032
982#define ACPI_MULTIPROC_WAKEUP_MB_FIRMWARE_SIZE 20481086#define ACPI_MULTIPROC_WAKEUP_MB_FIRMWARE_SIZE 2048
983 1087
984struct acpi_madt_multiproc_wakeup_mailbox {1088struct acpi_madt_multiproc_wakeup_mailbox {
985 u16 command;1089 u16 command;
@@ -992,6 +1096,12 @@ struct acpi_madt_multiproc_wakeup_mailbox { · 6 unmodified lines
992 1096
993#define ACPI_MP_WAKE_COMMAND_WAKEUP 11097#define ACPI_MP_WAKE_COMMAND_WAKEUP 1
994 1098
1099/* 17: OEM data */
1100
1101struct acpi_madt_oem_data {
1102 u8 oem_data[0];
1103};
1104
995/*1105/*
996 * Common flags fields for MADT subtables1106 * Common flags fields for MADT subtables
997 */1107 */
@@ -1597,7 +1707,7 @@ struct acpi_nhlt_mic_device_specific_config { · 599 unmodified lines
1597 1707
1598/* Values for array_type_ext above */1708/* Values for array_type_ext above */
1599 1709
1600#define ACPI_NHLT_ARRAY_TYPE_RESERVED 0x09 // 9 and below are reserved1710#define ACPI_NHLT_ARRAY_TYPE_RESERVED 0x09 /* 9 and below are reserved */
1601#define ACPI_NHLT_SMALL_LINEAR_2ELEMENT 0x0A1711#define ACPI_NHLT_SMALL_LINEAR_2ELEMENT 0x0A
1602#define ACPI_NHLT_BIG_LINEAR_2ELEMENT 0x0B1712#define ACPI_NHLT_BIG_LINEAR_2ELEMENT 0x0B
1603#define ACPI_NHLT_FIRST_GEOMETRY_LINEAR_4ELEMENT 0x0C1713#define ACPI_NHLT_FIRST_GEOMETRY_LINEAR_4ELEMENT 0x0C
@@ -1617,17 +1727,17 @@ struct acpi_nhlt_vendor_mic_count { · 13 unmodified lines
1617struct acpi_nhlt_vendor_mic_config {1727struct acpi_nhlt_vendor_mic_config {
1618 u8 type;1728 u8 type;
1619 u8 panel;1729 u8 panel;
1620 u16 speaker_position_distance; // mm1730 u16 speaker_position_distance; /* mm */
1621 u16 horizontal_offset; // mm1731 u16 horizontal_offset; /* mm */
1622 u16 vertical_offset; // mm1732 u16 vertical_offset; /* mm */
1623 u8 frequency_low_band; // 5*hz1733 u8 frequency_low_band; /* 5*Hz */
1624 u8 frequency_high_band; // 500*hz1734 u8 frequency_high_band; /* 500*Hz */
1625 u16 direction_angle; // -180 - + 1801735 u16 direction_angle; /* -180 - + 180 */
1626 u16 elevation_angle; // -180 - + 1801736 u16 elevation_angle; /* -180 - + 180 */
1627 u16 work_vertical_angle_begin; // -180 - + 180 with 2 deg step1737 u16 work_vertical_angle_begin; /* -180 - + 180 with 2 deg step */
1628 u16 work_vertical_angle_end; // -180 - + 180 with 2 deg step1738 u16 work_vertical_angle_end; /* -180 - + 180 with 2 deg step */
1629 u16 work_horizontal_angle_begin; // -180 - + 180 with 2 deg step1739 u16 work_horizontal_angle_begin; /* -180 - + 180 with 2 deg step */
1630 u16 work_horizontal_angle_end; // -180 - + 180 with 2 deg step1740 u16 work_horizontal_angle_end; /* -180 - + 180 with 2 deg step */
1631};1741};
1632 1742
1633/* Values for Type field above */1743/* Values for Type field above */
@@ -1638,9 +1748,9 @@ struct acpi_nhlt_vendor_mic_config { · 4 unmodified lines
1638#define ACPI_NHLT_MIC_SUPER_CARDIOID 31748#define ACPI_NHLT_MIC_SUPER_CARDIOID 3
1639#define ACPI_NHLT_MIC_HYPER_CARDIOID 41749#define ACPI_NHLT_MIC_HYPER_CARDIOID 4
1640#define ACPI_NHLT_MIC_8_SHAPED 51750#define ACPI_NHLT_MIC_8_SHAPED 5
1641#define ACPI_NHLT_MIC_RESERVED6 6 // 6 is reserved1751#define ACPI_NHLT_MIC_RESERVED6 6 /* 6 is reserved */
1642#define ACPI_NHLT_MIC_VENDOR_DEFINED 71752#define ACPI_NHLT_MIC_VENDOR_DEFINED 7
1643#define ACPI_NHLT_MIC_RESERVED 8 // 8 and above are reserved1753#define ACPI_NHLT_MIC_RESERVED 8 /* 8 and above are reserved */
1644 1754
1645/* Values for Panel field above */1755/* Values for Panel field above */
1646 1756
@@ -1650,12 +1760,12 @@ struct acpi_nhlt_vendor_mic_config { · 3 unmodified lines
1650#define ACPI_NHLT_MIC_POSITION_RIGHT 31760#define ACPI_NHLT_MIC_POSITION_RIGHT 3
1651#define ACPI_NHLT_MIC_POSITION_FRONT 41761#define ACPI_NHLT_MIC_POSITION_FRONT 4
1652#define ACPI_NHLT_MIC_POSITION_BACK 51762#define ACPI_NHLT_MIC_POSITION_BACK 5
1653#define ACPI_NHLT_MIC_POSITION_RESERVED 6 // 6 and above are reserved1763#define ACPI_NHLT_MIC_POSITION_RESERVED 6 /* 6 and above are reserved */
1654 1764
1655struct acpi_nhlt_vendor_mic_device_specific_config {1765struct acpi_nhlt_vendor_mic_device_specific_config {
1656 struct acpi_nhlt_mic_device_specific_config mic_array_device_config;1766 struct acpi_nhlt_mic_device_specific_config mic_array_device_config;
1657 u8 number_of_microphones;1767 u8 number_of_microphones;
1658 struct acpi_nhlt_vendor_mic_config mic_config[]; // indexed by number_of_microphones1768 struct acpi_nhlt_vendor_mic_config mic_config[]; /* Indexed by number_of_microphones */
1659};1769};
1660 1770
1661/* Microphone SNR and Sensitivity extension */1771/* Microphone SNR and Sensitivity extension */
@@ -1668,32 +1778,23 @@ struct acpi_nhlt_mic_snr_sensitivity_extension { · 6 unmodified lines
1668/* Render device with feedback */1778/* Render device with feedback */
1669 1779
1670struct acpi_nhlt_render_feedback_device_specific_config {1780struct acpi_nhlt_render_feedback_device_specific_config {
1671 u8 feedback_virtual_slot; // render slot in case of capture1781 u8 feedback_virtual_slot; /* Render slot in case of capture */
1672 u16 feedback_channels; // informative only1782 u16 feedback_channels; /* Informative only */
1673 u16 feedback_valid_bits_per_sample;1783 u16 feedback_valid_bits_per_sample;
1674};1784};
1675 1785
1676/* Linux-specific structures */1786/* Non documented structures */
1677 1787
1678struct acpi_nhlt_linux_specific_count {1788struct acpi_nhlt_device_info_count {
1679 u8 structure_count;1789 u8 structure_count;
1680};1790};
1681 1791
1682struct acpi_nhlt_linux_specific_data {1792struct acpi_nhlt_device_info {
1683 u8 device_id[16];1793 u8 device_id[16];
1684 u8 device_instance_id;1794 u8 device_instance_id;
1685 u8 device_port_id;1795 u8 device_port_id;
1686};1796};
1687 1797
1688struct acpi_nhlt_linux_specific_data_b {
1689 u8 specific_data[18];
1690};
1691
1692struct acpi_nhlt_table_terminator {
1693 u32 terminator_value;
1694 u32 terminator_signature;
1695};
1696
1697/*******************************************************************************1798/*******************************************************************************
1698 *1799 *
1699 * PCCT - Platform Communications Channel Table (ACPI 5.0)1800 * PCCT - Platform Communications Channel Table (ACPI 5.0)
@@ -2319,7 +2420,7 @@ struct acpi_table_rgrt { · 619 unmodified lines
2319 u16 version;2420 u16 version;
2320 u8 image_type;2421 u8 image_type;
2321 u8 reserved;2422 u8 reserved;
2322 u8 image[0];2423 u8 image[];
2323};2424};
2324 2425
2325/* image_type values */2426/* image_type values */
include/acpi/actbl3.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: actbl3.h - ACPI Table Definitions4 * Name: actbl3.h - ACPI Table Definitions
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/actypes.h+10−9
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: actypes.h - Common data types for the entire ACPI subsystem4 * Name: actypes.h - Common data types for the entire ACPI subsystem
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
@@ -539,14 +539,14 @@ typedef u64 acpi_integer; · 529 unmodified lines
539 * Can be used with access_width of struct acpi_generic_address and access_size of539 * Can be used with access_width of struct acpi_generic_address and access_size of
540 * struct acpi_resource_generic_register.540 * struct acpi_resource_generic_register.
541 */541 */
542#define ACPI_ACCESS_BIT_SHIFT 2542#define ACPI_ACCESS_BIT_SHIFT 2
543#define ACPI_ACCESS_BYTE_SHIFT -1543#define ACPI_ACCESS_BYTE_SHIFT -1
544#define ACPI_ACCESS_BIT_MAX (31 - ACPI_ACCESS_BIT_SHIFT)544#define ACPI_ACCESS_BIT_MAX (31 - ACPI_ACCESS_BIT_SHIFT)
545#define ACPI_ACCESS_BYTE_MAX (31 - ACPI_ACCESS_BYTE_SHIFT)545#define ACPI_ACCESS_BYTE_MAX (31 - ACPI_ACCESS_BYTE_SHIFT)
546#define ACPI_ACCESS_BIT_DEFAULT (8 - ACPI_ACCESS_BIT_SHIFT)546#define ACPI_ACCESS_BIT_DEFAULT (8 - ACPI_ACCESS_BIT_SHIFT)
547#define ACPI_ACCESS_BYTE_DEFAULT (8 - ACPI_ACCESS_BYTE_SHIFT)547#define ACPI_ACCESS_BYTE_DEFAULT (8 - ACPI_ACCESS_BYTE_SHIFT)
548#define ACPI_ACCESS_BIT_WIDTH(size) (1 << ((size) + ACPI_ACCESS_BIT_SHIFT))548#define ACPI_ACCESS_BIT_WIDTH(size) (1 << ((size) + ACPI_ACCESS_BIT_SHIFT))
549#define ACPI_ACCESS_BYTE_WIDTH(size) (1 << ((size) + ACPI_ACCESS_BYTE_SHIFT))549#define ACPI_ACCESS_BYTE_WIDTH(size) (1 << ((size) + ACPI_ACCESS_BYTE_SHIFT))
550 550
551/*******************************************************************************551/*******************************************************************************
552 *552 *
@@ -1303,6 +1303,7 @@ typedef enum { · 750 unmodified lines
1303#define ACPI_OSI_WIN_10_RS5 0x131303#define ACPI_OSI_WIN_10_RS5 0x13
1304#define ACPI_OSI_WIN_10_19H1 0x141304#define ACPI_OSI_WIN_10_19H1 0x14
1305#define ACPI_OSI_WIN_10_20H1 0x151305#define ACPI_OSI_WIN_10_20H1 0x15
1306#define ACPI_OSI_WIN_11 0x16
1306 1307
1307/* Definitions of getopt */1308/* Definitions of getopt */
1308 1309
include/acpi/acuuid.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acuuid.h - ACPI-related UUID/GUID definitions4 * Name: acuuid.h - ACPI-related UUID/GUID definitions
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/platform/acenv.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acenv.h - Host and compiler configuration4 * Name: acenv.h - Host and compiler configuration
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/platform/acenvex.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acenvex.h - Extra host and compiler configuration4 * Name: acenvex.h - Extra host and compiler configuration
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/platform/acgcc.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acgcc.h - GCC specific defines, etc.4 * Name: acgcc.h - GCC specific defines, etc.
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/platform/acgccex.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acgccex.h - Extra GCC specific defines, etc.4 * Name: acgccex.h - Extra GCC specific defines, etc.
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/platform/acintel.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: acintel.h - VC specific defines, etc.4 * Name: acintel.h - VC specific defines, etc.
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/platform/aclinux.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: aclinux.h - OS specific defines, etc. for Linux4 * Name: aclinux.h - OS specific defines, etc. for Linux
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9
include/acpi/platform/aclinuxex.h+1−1
@@ -3,7 +3,7 @@ · 2 unmodified lines
3 *3 *
4 * Name: aclinuxex.h - Extra OS specific defines, etc. for Linux4 * Name: aclinuxex.h - Extra OS specific defines, etc. for Linux
5 *5 *
6 * Copyright (C) 2000 - 2021, Intel Corp.6 * Copyright (C) 2000 - 2022, Intel Corp.
7 *7 *
8 *****************************************************************************/8 *****************************************************************************/
9 9