Merge remote-tracking branch 'sherbszt/gfxboot32'
[profile/ivi/syslinux.git] / memdisk / acpi.h
1 /*
2  * Copyright (C) 2006 Michael Brown <mbrown@fensystems.co.uk>.
3  * This file derived almost in its entirety from gPXE.
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License as
7  * published by the Free Software Foundation; either version 2 of the
8  * License, or any later version.
9  *
10  * This program is distributed in the hope that it will be useful, but
11  * WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  */
19
20 /** @file
21  *
22  * ACPI data structures
23  *
24  */
25
26 #include <stdint.h>
27
28 /**
29  * An ACPI description header
30  *
31  * This is the structure common to the start of all ACPI system
32  * description tables.
33  */
34 MEMDISK_PACKED_PREFIX
35 struct acpi_description_header {
36         /** ACPI signature (4 ASCII characters) */
37         char signature[4];
38         /** Length of table, in bytes, including header */
39         uint32_t length;
40         /** ACPI Specification minor version number */
41         uint8_t revision;
42         /** To make sum of entire table == 0 */
43         uint8_t checksum;
44         /** OEM identification */
45         char oem_id[6];
46         /** OEM table identification */
47         char oem_table_id[8];
48         /** OEM revision number */
49         uint32_t oem_revision;
50         /** ASL compiler vendor ID */
51         char asl_compiler_id[4];
52         /** ASL compiler revision number */
53         uint32_t asl_compiler_revision;
54 } MEMDISK_PACKED_POSTFIX;
55