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

ACPICA: Header support for SLIC table

We finally have the definition for this table.

Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>

authored by

Bob Moore and committed by
Len Brown
5cf4d733 589c7a39

+63 -1
+63 -1
include/acpi/actbl2.h
··· 1 1 /****************************************************************************** 2 2 * 3 - * Name: actbl2.h - ACPI Specification Revision 2.0 Tables 3 + * Name: actbl2.h - ACPI Table Definitions (tables not in ACPI spec) 4 4 * 5 5 *****************************************************************************/ 6 6 ··· 712 712 u8 pci_bus; 713 713 u8 pci_device; 714 714 u8 pci_function; 715 + }; 716 + 717 + /******************************************************************************* 718 + * 719 + * SLIC - Software Licensing Description Table 720 + * Version 1 721 + * 722 + * Conforms to "OEM Activation 2.0 for Windows Vista Operating Systems", 723 + * Copyright 2006 724 + * 725 + ******************************************************************************/ 726 + 727 + /* Basic SLIC table is only the common ACPI header */ 728 + 729 + struct acpi_table_slic { 730 + struct acpi_table_header header; /* Common ACPI table header */ 731 + }; 732 + 733 + /* Common SLIC subtable header */ 734 + 735 + struct acpi_slic_header { 736 + u32 type; 737 + u32 length; 738 + }; 739 + 740 + /* Values for Type field above */ 741 + 742 + enum acpi_slic_type { 743 + ACPI_SLIC_TYPE_PUBLIC_KEY = 0, 744 + ACPI_SLIC_TYPE_WINDOWS_MARKER = 1, 745 + ACPI_SLIC_TYPE_RESERVED = 2 /* 2 and greater are reserved */ 746 + }; 747 + 748 + /* 749 + * SLIC Sub-tables, correspond to Type in struct acpi_slic_header 750 + */ 751 + 752 + /* 0: Public Key Structure */ 753 + 754 + struct acpi_slic_key { 755 + struct acpi_slic_header header; 756 + u8 key_type; 757 + u8 version; 758 + u16 reserved; 759 + u32 algorithm; 760 + char magic[4]; 761 + u32 bit_length; 762 + u32 exponent; 763 + u8 modulus[128]; 764 + }; 765 + 766 + /* 1: Windows Marker Structure */ 767 + 768 + struct acpi_slic_marker { 769 + struct acpi_slic_header header; 770 + u32 version; 771 + char oem_id[ACPI_OEM_ID_SIZE]; /* ASCII OEM identification */ 772 + char oem_table_id[ACPI_OEM_TABLE_ID_SIZE]; /* ASCII OEM table identification */ 773 + char windows_flag[8]; 774 + u32 slic_version; 775 + u8 reserved[16]; 776 + u8 signature[128]; 715 777 }; 716 778 717 779 /*******************************************************************************