#include <precomp.h>
#include <debug.h>
Go to the source code of this file.
◆ _COMPONENT
◆ NDEBUG
◆ PREFIX
◆ acpi_suspend()
acpi_suspend - OS-agnostic system suspend/resume support (S? states) @state: state we're entering
Definition at line 347 of file system.c.
349{
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
370
374
375
378
379
381
382
383
384
385
388
389
391
392
394
396}
#define ACPI_FLUSH_CPU_CACHE()
ACPI_STATUS acpi_system_restore_state(UINT32 state)
ACPI_STATUS acpi_system_suspend(UINT32 state)
ACPI_STATUS AcpiEnterSleepStatePrep(UINT8 SleepState)
ACPI_STATUS AcpiSetFirmwareWakingVector(ACPI_PHYSICAL_ADDRESS PhysicalAddress, ACPI_PHYSICAL_ADDRESS PhysicalAddress64)
ACPI_STATUS AcpiLeaveSleepState(UINT8 SleepState)
ACPI_STATUS AcpiEnterSleepState(UINT8 SleepState)
void __cdecl _disable(void)
void __cdecl _enable(void)
Referenced by Bus_FDO_Power().
◆ acpi_system_add()
Definition at line 65 of file system.c.
67{
71
73
76
81
86
87 DPRINT(
"%s [%s] (supports",
94 if (
95 0 != AcpiGbl_FADT.SmiCommand) {
98 }
99
100 default:
104 }
105 }
106 }
107
108
109
110
111
112
113
114
115
117}
#define ACPI_FUNCTION_TRACE(a)
#define acpi_device_bid(d)
#define acpi_driver_data(d)
#define acpi_device_class(d)
#define acpi_device_name(d)
#define ACPI_SYSTEM_CLASS
#define ACPI_SYSTEM_DEVICE_NAME
#define ACPI_S_STATE_COUNT
#define ExAllocatePoolWithTag(hernya, size, tag)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
ACPI_STATUS AcpiGetSleepTypeData(UINT8 SleepState, UINT8 *SleepTypeA, UINT8 *SleepTypeB)
#define sprintf(buf, format,...)
int __cdecl system(_In_opt_z_ const char *_Command)
◆ acpi_system_exit()
Definition at line 414 of file system.c.
415{
419}
void acpi_bus_unregister_driver(struct acpi_driver *driver)
static struct acpi_driver acpi_system_driver
Referenced by acpi_bus_exit().
◆ acpi_system_init()
Definition at line 399 of file system.c.
400{
402
404
408
410}
int acpi_bus_register_driver(struct acpi_driver *driver)
Referenced by acpi_init().
◆ acpi_system_remove()
Definition at line 120 of file system.c.
123{
125
127
130
132
133
134
135
136
137
138
139
140
141
143
144 return 0;
145}
#define ExFreePoolWithTag(_P, _T)
◆ acpi_system_restore_state()
acpi_system_restore_state - OS-specific restoration of state @state: sleep state we're exiting
Note that if we're coming back from S4, the memory image should have already been loaded from the disk and is already in place. (Otherwise how else would we be here?).
Definition at line 156 of file system.c.
158{
159
160
161
162
163
165
166
167
168
169
170
171
172
173#ifdef _X86_
174
175#endif
176
178
179 }
180
181
182
183
184
186
187
188
189
190
191
192
193
195}
#define KeStallExecutionProcessor(MicroSeconds)
Referenced by acpi_suspend().
◆ acpi_system_save_state()
acpi_system_save_state - save OS specific state and power down devices @state: sleep state we're entering.
This handles saving all context to memory, and possibly disk. First, we call to the device driver layer to save device state. Once we have that, we save whatevery processor and kernel state we need to memory. If we're entering S4, we then write the memory image to disk.
Only then it is safe for us to power down devices, since we may need the disks and upstream buses to write to.
Definition at line 212 of file system.c.
214{
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
245
246
249
250
251
252
253#if 0
255 error = acpi_save_state_disk();
256#endif
257
258
259
260
261 }
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
289}
◆ acpi_system_suspend()
Definition at line 313 of file system.c.
315{
317
318
319
320
321
325
327 break;
329
330 break;
331 }
332
333
334
335
337}
Referenced by acpi_suspend().
◆ acpi_system_driver
Initial value:= {
{0,0},
0,
0,
}
#define ACPI_SYSTEM_DRIVER_NAME
static int acpi_system_add(struct acpi_device *device)
static int acpi_system_remove(struct acpi_device *device, int type)
Definition at line 47 of file system.c.
Referenced by acpi_system_exit(), and acpi_system_init().