]>
Commit | Line | Data |
---|---|---|
27c9188f PMD |
1 | # -*- Mode: Python -*- |
2 | # vim: filetype=python | |
3 | # | |
4 | # This work is licensed under the terms of the GNU GPL, version 2 or later. | |
5 | # See the COPYING file in the top-level directory. | |
6 | # SPDX-License-Identifier: GPL-2.0-or-later | |
7 | ||
8 | ## | |
9 | # = ACPI | |
10 | ## | |
11 | ||
12 | ## | |
13 | # @AcpiTableOptions: | |
14 | # | |
15 | # Specify an ACPI table on the command line to load. | |
16 | # | |
a937b6aa MA |
17 | # At most one of @file and @data can be specified. The list of files |
18 | # specified by any one of them is loaded and concatenated in order. | |
19 | # If both are omitted, @data is implied. | |
27c9188f | 20 | # |
a937b6aa MA |
21 | # Other fields / optargs can be used to override fields of the generic |
22 | # ACPI table header; refer to the ACPI specification 5.0, section | |
23 | # 5.2.6 System Description Table Header. If a header field is not | |
24 | # overridden, then the corresponding value from the concatenated blob | |
25 | # is used (in case of @file), or it is filled in with a hard-coded | |
26 | # value (in case of @data). | |
27c9188f | 27 | # |
a937b6aa MA |
28 | # String fields are copied into the matching ACPI member from lowest |
29 | # address upwards, and silently truncated / NUL-padded to length. | |
27c9188f PMD |
30 | # |
31 | # @sig: table signature / identifier (4 bytes) | |
32 | # | |
33 | # @rev: table revision number (dependent on signature, 1 byte) | |
34 | # | |
35 | # @oem_id: OEM identifier (6 bytes) | |
36 | # | |
37 | # @oem_table_id: OEM table identifier (8 bytes) | |
38 | # | |
39 | # @oem_rev: OEM-supplied revision number (4 bytes) | |
40 | # | |
41 | # @asl_compiler_id: identifier of the utility that created the table | |
a937b6aa | 42 | # (4 bytes) |
27c9188f PMD |
43 | # |
44 | # @asl_compiler_rev: revision number of the utility that created the | |
a937b6aa | 45 | # table (4 bytes) |
27c9188f | 46 | # |
a937b6aa MA |
47 | # @file: colon (:) separated list of pathnames to load and concatenate |
48 | # as table data. The resultant binary blob is expected to have an | |
49 | # ACPI table header. At least one file is required. This field | |
50 | # excludes @data. | |
27c9188f | 51 | # |
a937b6aa MA |
52 | # @data: colon (:) separated list of pathnames to load and concatenate |
53 | # as table data. The resultant binary blob must not have an ACPI | |
54 | # table header. At least one file is required. This field | |
55 | # excludes @file. | |
27c9188f PMD |
56 | # |
57 | # Since: 1.5 | |
58 | ## | |
59 | { 'struct': 'AcpiTableOptions', | |
60 | 'data': { | |
61 | '*sig': 'str', | |
62 | '*rev': 'uint8', | |
63 | '*oem_id': 'str', | |
64 | '*oem_table_id': 'str', | |
65 | '*oem_rev': 'uint32', | |
66 | '*asl_compiler_id': 'str', | |
67 | '*asl_compiler_rev': 'uint32', | |
68 | '*file': 'str', | |
69 | '*data': 'str' }} | |
70 | ||
71 | ## | |
72 | # @ACPISlotType: | |
73 | # | |
74 | # @DIMM: memory slot | |
a937b6aa | 75 | # |
27c9188f PMD |
76 | # @CPU: logical CPU slot (since 2.7) |
77 | ## | |
78 | { 'enum': 'ACPISlotType', 'data': [ 'DIMM', 'CPU' ] } | |
79 | ||
80 | ## | |
81 | # @ACPIOSTInfo: | |
82 | # | |
a937b6aa MA |
83 | # OSPM Status Indication for a device For description of possible |
84 | # values of @source and @status fields see "_OST (OSPM Status | |
85 | # Indication)" chapter of ACPI5.0 spec. | |
27c9188f PMD |
86 | # |
87 | # @device: device ID associated with slot | |
88 | # | |
89 | # @slot: slot ID, unique per slot of a given @slot-type | |
90 | # | |
91 | # @slot-type: type of the slot | |
92 | # | |
93 | # @source: an integer containing the source event | |
94 | # | |
95 | # @status: an integer containing the status code | |
96 | # | |
97 | # Since: 2.1 | |
98 | ## | |
99 | { 'struct': 'ACPIOSTInfo', | |
100 | 'data' : { '*device': 'str', | |
101 | 'slot': 'str', | |
102 | 'slot-type': 'ACPISlotType', | |
103 | 'source': 'int', | |
104 | 'status': 'int' } } | |
105 | ||
106 | ## | |
107 | # @query-acpi-ospm-status: | |
108 | # | |
109 | # Return a list of ACPIOSTInfo for devices that support status | |
110 | # reporting via ACPI _OST method. | |
111 | # | |
112 | # Since: 2.1 | |
113 | # | |
114 | # Example: | |
115 | # | |
116 | # -> { "execute": "query-acpi-ospm-status" } | |
117 | # <- { "return": [ { "device": "d1", "slot": "0", "slot-type": "DIMM", "source": 1, "status": 0}, | |
118 | # { "slot": "1", "slot-type": "DIMM", "source": 0, "status": 0}, | |
119 | # { "slot": "2", "slot-type": "DIMM", "source": 0, "status": 0}, | |
120 | # { "slot": "3", "slot-type": "DIMM", "source": 0, "status": 0} | |
121 | # ]} | |
27c9188f PMD |
122 | ## |
123 | { 'command': 'query-acpi-ospm-status', 'returns': ['ACPIOSTInfo'] } | |
124 | ||
125 | ## | |
126 | # @ACPI_DEVICE_OST: | |
127 | # | |
128 | # Emitted when guest executes ACPI _OST method. | |
129 | # | |
130 | # @info: OSPM Status Indication | |
131 | # | |
132 | # Since: 2.1 | |
133 | # | |
134 | # Example: | |
135 | # | |
136 | # <- { "event": "ACPI_DEVICE_OST", | |
69bd6cb8 VT |
137 | # "data": { "info": { "device": "d1", "slot": "0", |
138 | # "slot-type": "DIMM", "source": 1, "status": 0 } }, | |
139 | # "timestamp": { "seconds": 1265044230, "microseconds": 450486 } } | |
27c9188f PMD |
140 | ## |
141 | { 'event': 'ACPI_DEVICE_OST', | |
142 | 'data': { 'info': 'ACPIOSTInfo' } } |