File indexing completed on 2025-05-11 08:23:41
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069
0070
0071
0072
0073
0074
0075
0076
0077
0078
0079
0080
0081
0082
0083
0084
0085
0086
0087
0088
0089
0090
0091
0092
0093
0094
0095
0096
0097
0098
0099
0100
0101
0102
0103
0104
0105
0106
0107
0108
0109
0110
0111
0112
0113
0114
0115
0116
0117
0118
0119
0120
0121
0122
0123
0124
0125
0126
0127
0128
0129
0130
0131
0132
0133
0134
0135
0136
0137
0138
0139
0140
0141
0142
0143
0144
0145
0146
0147
0148
0149
0150
0151
0152
0153
0154 #ifndef __ACPIOSXF_H__
0155 #define __ACPIOSXF_H__
0156
0157 #include "platform/acenv.h"
0158 #include "actypes.h"
0159
0160
0161
0162
0163 typedef enum
0164 {
0165 OSL_GLOBAL_LOCK_HANDLER,
0166 OSL_NOTIFY_HANDLER,
0167 OSL_GPE_HANDLER,
0168 OSL_DEBUGGER_MAIN_THREAD,
0169 OSL_DEBUGGER_EXEC_THREAD,
0170 OSL_EC_POLL_HANDLER,
0171 OSL_EC_BURST_HANDLER
0172
0173 } ACPI_EXECUTE_TYPE;
0174
0175 #define ACPI_NO_UNIT_LIMIT ((UINT32) -1)
0176 #define ACPI_MUTEX_SEM 1
0177
0178
0179
0180
0181 #define ACPI_SIGNAL_FATAL 0
0182 #define ACPI_SIGNAL_BREAKPOINT 1
0183
0184 typedef struct acpi_signal_fatal_info
0185 {
0186 UINT32 Type;
0187 UINT32 Code;
0188 UINT32 Argument;
0189
0190 } ACPI_SIGNAL_FATAL_INFO;
0191
0192
0193
0194
0195
0196 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsInitialize
0197 ACPI_STATUS
0198 AcpiOsInitialize (
0199 void);
0200 #endif
0201
0202 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsTerminate
0203 ACPI_STATUS
0204 AcpiOsTerminate (
0205 void);
0206 #endif
0207
0208
0209
0210
0211
0212 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetRootPointer
0213 ACPI_PHYSICAL_ADDRESS
0214 AcpiOsGetRootPointer (
0215 void);
0216 #endif
0217
0218 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsPredefinedOverride
0219 ACPI_STATUS
0220 AcpiOsPredefinedOverride (
0221 const ACPI_PREDEFINED_NAMES *InitVal,
0222 ACPI_STRING *NewVal);
0223 #endif
0224
0225 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsTableOverride
0226 ACPI_STATUS
0227 AcpiOsTableOverride (
0228 ACPI_TABLE_HEADER *ExistingTable,
0229 ACPI_TABLE_HEADER **NewTable);
0230 #endif
0231
0232 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsPhysicalTableOverride
0233 ACPI_STATUS
0234 AcpiOsPhysicalTableOverride (
0235 ACPI_TABLE_HEADER *ExistingTable,
0236 ACPI_PHYSICAL_ADDRESS *NewAddress,
0237 UINT32 *NewTableLength);
0238 #endif
0239
0240
0241
0242
0243
0244 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsCreateLock
0245 ACPI_STATUS
0246 AcpiOsCreateLock (
0247 ACPI_SPINLOCK *OutHandle);
0248 #endif
0249
0250 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsDeleteLock
0251 void
0252 AcpiOsDeleteLock (
0253 ACPI_SPINLOCK Handle);
0254 #endif
0255
0256 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsAcquireLock
0257 ACPI_CPU_FLAGS
0258 AcpiOsAcquireLock (
0259 ACPI_SPINLOCK Handle);
0260 #endif
0261
0262 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsReleaseLock
0263 void
0264 AcpiOsReleaseLock (
0265 ACPI_SPINLOCK Handle,
0266 ACPI_CPU_FLAGS Flags);
0267 #endif
0268
0269
0270
0271
0272
0273 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsCreateSemaphore
0274 ACPI_STATUS
0275 AcpiOsCreateSemaphore (
0276 UINT32 MaxUnits,
0277 UINT32 InitialUnits,
0278 ACPI_SEMAPHORE *OutHandle);
0279 #endif
0280
0281 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsDeleteSemaphore
0282 ACPI_STATUS
0283 AcpiOsDeleteSemaphore (
0284 ACPI_SEMAPHORE Handle);
0285 #endif
0286
0287 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsWaitSemaphore
0288 ACPI_STATUS
0289 AcpiOsWaitSemaphore (
0290 ACPI_SEMAPHORE Handle,
0291 UINT32 Units,
0292 UINT16 Timeout);
0293 #endif
0294
0295 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsSignalSemaphore
0296 ACPI_STATUS
0297 AcpiOsSignalSemaphore (
0298 ACPI_SEMAPHORE Handle,
0299 UINT32 Units);
0300 #endif
0301
0302
0303
0304
0305
0306
0307 #if (ACPI_MUTEX_TYPE != ACPI_BINARY_SEMAPHORE)
0308
0309 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsCreateMutex
0310 ACPI_STATUS
0311 AcpiOsCreateMutex (
0312 ACPI_MUTEX *OutHandle);
0313 #endif
0314
0315 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsDeleteMutex
0316 void
0317 AcpiOsDeleteMutex (
0318 ACPI_MUTEX Handle);
0319 #endif
0320
0321 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsAcquireMutex
0322 ACPI_STATUS
0323 AcpiOsAcquireMutex (
0324 ACPI_MUTEX Handle,
0325 UINT16 Timeout);
0326 #endif
0327
0328 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsReleaseMutex
0329 void
0330 AcpiOsReleaseMutex (
0331 ACPI_MUTEX Handle);
0332 #endif
0333
0334 #endif
0335
0336
0337
0338
0339
0340 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsAllocate
0341 void *
0342 AcpiOsAllocate (
0343 ACPI_SIZE Size);
0344 #endif
0345
0346 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsAllocateZeroed
0347 void *
0348 AcpiOsAllocateZeroed (
0349 ACPI_SIZE Size);
0350 #endif
0351
0352 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsFree
0353 void
0354 AcpiOsFree (
0355 void * Memory);
0356 #endif
0357
0358 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsMapMemory
0359 void *
0360 AcpiOsMapMemory (
0361 ACPI_PHYSICAL_ADDRESS Where,
0362 ACPI_SIZE Length);
0363 #endif
0364
0365 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsUnmapMemory
0366 void
0367 AcpiOsUnmapMemory (
0368 void *LogicalAddress,
0369 ACPI_SIZE Size);
0370 #endif
0371
0372 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetPhysicalAddress
0373 ACPI_STATUS
0374 AcpiOsGetPhysicalAddress (
0375 void *LogicalAddress,
0376 ACPI_PHYSICAL_ADDRESS *PhysicalAddress);
0377 #endif
0378
0379
0380
0381
0382
0383 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsCreateCache
0384 ACPI_STATUS
0385 AcpiOsCreateCache (
0386 char *CacheName,
0387 UINT16 ObjectSize,
0388 UINT16 MaxDepth,
0389 ACPI_CACHE_T **ReturnCache);
0390 #endif
0391
0392 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsDeleteCache
0393 ACPI_STATUS
0394 AcpiOsDeleteCache (
0395 ACPI_CACHE_T *Cache);
0396 #endif
0397
0398 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsPurgeCache
0399 ACPI_STATUS
0400 AcpiOsPurgeCache (
0401 ACPI_CACHE_T *Cache);
0402 #endif
0403
0404 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsAcquireObject
0405 void *
0406 AcpiOsAcquireObject (
0407 ACPI_CACHE_T *Cache);
0408 #endif
0409
0410 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsReleaseObject
0411 ACPI_STATUS
0412 AcpiOsReleaseObject (
0413 ACPI_CACHE_T *Cache,
0414 void *Object);
0415 #endif
0416
0417
0418
0419
0420
0421 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsInstallInterruptHandler
0422 ACPI_STATUS
0423 AcpiOsInstallInterruptHandler (
0424 UINT32 InterruptNumber,
0425 ACPI_OSD_HANDLER ServiceRoutine,
0426 void *Context);
0427 #endif
0428
0429 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsRemoveInterruptHandler
0430 ACPI_STATUS
0431 AcpiOsRemoveInterruptHandler (
0432 UINT32 InterruptNumber,
0433 ACPI_OSD_HANDLER ServiceRoutine);
0434 #endif
0435
0436
0437
0438
0439
0440 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetThreadId
0441 ACPI_THREAD_ID
0442 AcpiOsGetThreadId (
0443 void);
0444 #endif
0445
0446 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsExecute
0447 ACPI_STATUS
0448 AcpiOsExecute (
0449 ACPI_EXECUTE_TYPE Type,
0450 ACPI_OSD_EXEC_CALLBACK Function,
0451 void *Context);
0452 #endif
0453
0454 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsWaitEventsComplete
0455 void
0456 AcpiOsWaitEventsComplete (
0457 void);
0458 #endif
0459
0460 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsSleep
0461 void
0462 AcpiOsSleep (
0463 UINT64 Milliseconds);
0464 #endif
0465
0466 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsStall
0467 void
0468 AcpiOsStall (
0469 UINT32 Microseconds);
0470 #endif
0471
0472
0473
0474
0475
0476 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsReadPort
0477 ACPI_STATUS
0478 AcpiOsReadPort (
0479 ACPI_IO_ADDRESS Address,
0480 UINT32 *Value,
0481 UINT32 Width);
0482 #endif
0483
0484 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsWritePort
0485 ACPI_STATUS
0486 AcpiOsWritePort (
0487 ACPI_IO_ADDRESS Address,
0488 UINT32 Value,
0489 UINT32 Width);
0490 #endif
0491
0492
0493
0494
0495
0496 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsReadMemory
0497 ACPI_STATUS
0498 AcpiOsReadMemory (
0499 ACPI_PHYSICAL_ADDRESS Address,
0500 UINT64 *Value,
0501 UINT32 Width);
0502 #endif
0503
0504 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsWriteMemory
0505 ACPI_STATUS
0506 AcpiOsWriteMemory (
0507 ACPI_PHYSICAL_ADDRESS Address,
0508 UINT64 Value,
0509 UINT32 Width);
0510 #endif
0511
0512
0513
0514
0515
0516
0517
0518 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsReadPciConfiguration
0519 ACPI_STATUS
0520 AcpiOsReadPciConfiguration (
0521 ACPI_PCI_ID *PciId,
0522 UINT32 Reg,
0523 UINT64 *Value,
0524 UINT32 Width);
0525 #endif
0526
0527 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsWritePciConfiguration
0528 ACPI_STATUS
0529 AcpiOsWritePciConfiguration (
0530 ACPI_PCI_ID *PciId,
0531 UINT32 Reg,
0532 UINT64 Value,
0533 UINT32 Width);
0534 #endif
0535
0536
0537
0538
0539
0540 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsReadable
0541 BOOLEAN
0542 AcpiOsReadable (
0543 void *Pointer,
0544 ACPI_SIZE Length);
0545 #endif
0546
0547 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsWritable
0548 BOOLEAN
0549 AcpiOsWritable (
0550 void *Pointer,
0551 ACPI_SIZE Length);
0552 #endif
0553
0554 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetTimer
0555 UINT64
0556 AcpiOsGetTimer (
0557 void);
0558 #endif
0559
0560 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsSignal
0561 ACPI_STATUS
0562 AcpiOsSignal (
0563 UINT32 Function,
0564 void *Info);
0565 #endif
0566
0567 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsEnterSleep
0568 ACPI_STATUS
0569 AcpiOsEnterSleep (
0570 UINT8 SleepState,
0571 UINT32 RegaValue,
0572 UINT32 RegbValue);
0573 #endif
0574
0575
0576
0577
0578
0579 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsPrintf
0580 ACPI_PRINTF_LIKE (1)
0581 void ACPI_INTERNAL_VAR_XFACE
0582 AcpiOsPrintf (
0583 const char *Format,
0584 ...);
0585 #endif
0586
0587 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsVprintf
0588 void
0589 AcpiOsVprintf (
0590 const char *Format,
0591 va_list Args);
0592 #endif
0593
0594 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsRedirectOutput
0595 void
0596 AcpiOsRedirectOutput (
0597 void *Destination);
0598 #endif
0599
0600
0601
0602
0603
0604 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetLine
0605 ACPI_STATUS
0606 AcpiOsGetLine (
0607 char *Buffer,
0608 UINT32 BufferLength,
0609 UINT32 *BytesRead);
0610 #endif
0611
0612 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsInitializeDebugger
0613 ACPI_STATUS
0614 AcpiOsInitializeDebugger (
0615 void);
0616 #endif
0617
0618 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsTerminateDebugger
0619 void
0620 AcpiOsTerminateDebugger (
0621 void);
0622 #endif
0623
0624 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsWaitCommandReady
0625 ACPI_STATUS
0626 AcpiOsWaitCommandReady (
0627 void);
0628 #endif
0629
0630 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsNotifyCommandComplete
0631 ACPI_STATUS
0632 AcpiOsNotifyCommandComplete (
0633 void);
0634 #endif
0635
0636 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsTracePoint
0637 void
0638 AcpiOsTracePoint (
0639 ACPI_TRACE_EVENT_TYPE Type,
0640 BOOLEAN Begin,
0641 UINT8 *Aml,
0642 char *Pathname);
0643 #endif
0644
0645
0646
0647
0648
0649 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetTableByName
0650 ACPI_STATUS
0651 AcpiOsGetTableByName (
0652 char *Signature,
0653 UINT32 Instance,
0654 ACPI_TABLE_HEADER **Table,
0655 ACPI_PHYSICAL_ADDRESS *Address);
0656 #endif
0657
0658 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetTableByIndex
0659 ACPI_STATUS
0660 AcpiOsGetTableByIndex (
0661 UINT32 Index,
0662 ACPI_TABLE_HEADER **Table,
0663 UINT32 *Instance,
0664 ACPI_PHYSICAL_ADDRESS *Address);
0665 #endif
0666
0667 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetTableByAddress
0668 ACPI_STATUS
0669 AcpiOsGetTableByAddress (
0670 ACPI_PHYSICAL_ADDRESS Address,
0671 ACPI_TABLE_HEADER **Table);
0672 #endif
0673
0674
0675
0676
0677
0678 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsOpenDirectory
0679 void *
0680 AcpiOsOpenDirectory (
0681 char *Pathname,
0682 char *WildcardSpec,
0683 char RequestedFileType);
0684 #endif
0685
0686
0687
0688 #define REQUEST_FILE_ONLY 0
0689 #define REQUEST_DIR_ONLY 1
0690
0691
0692 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsGetNextFilename
0693 char *
0694 AcpiOsGetNextFilename (
0695 void *DirHandle);
0696 #endif
0697
0698 #ifndef ACPI_USE_ALTERNATE_PROTOTYPE_AcpiOsCloseDirectory
0699 void
0700 AcpiOsCloseDirectory (
0701 void *DirHandle);
0702 #endif
0703
0704
0705 #endif