acpixf.h revision 237412
1
2/******************************************************************************
3 *
4 * Name: acpixf.h - External interfaces to the ACPI subsystem
5 *
6 *****************************************************************************/
7
8/*
9 * Copyright (C) 2000 - 2012, Intel Corp.
10 * All rights reserved.
11 *
12 * Redistribution and use in source and binary forms, with or without
13 * modification, are permitted provided that the following conditions
14 * are met:
15 * 1. Redistributions of source code must retain the above copyright
16 *    notice, this list of conditions, and the following disclaimer,
17 *    without modification.
18 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
19 *    substantially similar to the "NO WARRANTY" disclaimer below
20 *    ("Disclaimer") and any redistribution must be conditioned upon
21 *    including a substantially similar Disclaimer requirement for further
22 *    binary redistribution.
23 * 3. Neither the names of the above-listed copyright holders nor the names
24 *    of any contributors may be used to endorse or promote products derived
25 *    from this software without specific prior written permission.
26 *
27 * Alternatively, this software may be distributed under the terms of the
28 * GNU General Public License ("GPL") version 2 as published by the Free
29 * Software Foundation.
30 *
31 * NO WARRANTY
32 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
35 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
36 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
37 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
38 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
39 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
40 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
41 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
42 * POSSIBILITY OF SUCH DAMAGES.
43 */
44
45
46#ifndef __ACXFACE_H__
47#define __ACXFACE_H__
48
49/* Current ACPICA subsystem version in YYYYMMDD format */
50
51#define ACPI_CA_VERSION                 0x20120620
52
53#include <contrib/dev/acpica/include/acconfig.h>
54#include <contrib/dev/acpica/include/actypes.h>
55#include <contrib/dev/acpica/include/actbl.h>
56
57/*
58 * Globals that are publically available
59 */
60extern UINT32               AcpiCurrentGpeCount;
61extern ACPI_TABLE_FADT      AcpiGbl_FADT;
62extern BOOLEAN              AcpiGbl_SystemAwakeAndRunning;
63extern BOOLEAN              AcpiGbl_ReducedHardware;        /* ACPI 5.0 */
64
65/* Runtime configuration of debug print levels */
66
67extern UINT32               AcpiDbgLevel;
68extern UINT32               AcpiDbgLayer;
69
70/* ACPICA runtime options */
71
72extern UINT8                AcpiGbl_EnableInterpreterSlack;
73extern UINT8                AcpiGbl_AllMethodsSerialized;
74extern UINT8                AcpiGbl_CreateOsiMethod;
75extern UINT8                AcpiGbl_UseDefaultRegisterWidths;
76extern ACPI_NAME            AcpiGbl_TraceMethodName;
77extern UINT32               AcpiGbl_TraceFlags;
78extern UINT8                AcpiGbl_EnableAmlDebugObject;
79extern UINT8                AcpiGbl_CopyDsdtLocally;
80extern UINT8                AcpiGbl_TruncateIoAddresses;
81extern UINT8                AcpiGbl_DisableAutoRepair;
82
83
84/*
85 * Hardware-reduced prototypes. All interfaces that use these macros will
86 * be configured out of the ACPICA build if the ACPI_REDUCED_HARDWARE flag
87 * is set to TRUE.
88 */
89#if (!ACPI_REDUCED_HARDWARE)
90#define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
91    Prototype;
92
93#define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
94    Prototype;
95
96#define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
97    Prototype;
98
99#else
100#define ACPI_HW_DEPENDENT_RETURN_STATUS(Prototype) \
101    static ACPI_INLINE Prototype {return(AE_NOT_CONFIGURED);}
102
103#define ACPI_HW_DEPENDENT_RETURN_OK(Prototype) \
104    static ACPI_INLINE Prototype {return(AE_OK);}
105
106#define ACPI_HW_DEPENDENT_RETURN_VOID(Prototype) \
107    static ACPI_INLINE Prototype {}
108
109#endif /* !ACPI_REDUCED_HARDWARE */
110
111
112/*
113 * Initialization
114 */
115ACPI_STATUS
116AcpiInitializeTables (
117    ACPI_TABLE_DESC         *InitialStorage,
118    UINT32                  InitialTableCount,
119    BOOLEAN                 AllowResize);
120
121ACPI_STATUS
122AcpiInitializeSubsystem (
123    void);
124
125ACPI_STATUS
126AcpiEnableSubsystem (
127    UINT32                  Flags);
128
129ACPI_STATUS
130AcpiInitializeObjects (
131    UINT32                  Flags);
132
133ACPI_STATUS
134AcpiTerminate (
135    void);
136
137
138/*
139 * Miscellaneous global interfaces
140 */
141ACPI_HW_DEPENDENT_RETURN_STATUS (
142ACPI_STATUS
143AcpiEnable (
144    void))
145
146ACPI_HW_DEPENDENT_RETURN_STATUS (
147ACPI_STATUS
148AcpiDisable (
149    void))
150
151ACPI_STATUS
152AcpiSubsystemStatus (
153    void);
154
155ACPI_STATUS
156AcpiGetSystemInfo (
157    ACPI_BUFFER             *RetBuffer);
158
159ACPI_STATUS
160AcpiGetStatistics (
161    ACPI_STATISTICS         *Stats);
162
163const char *
164AcpiFormatException (
165    ACPI_STATUS             Exception);
166
167ACPI_STATUS
168AcpiPurgeCachedObjects (
169    void);
170
171ACPI_STATUS
172AcpiInstallInterface (
173    ACPI_STRING             InterfaceName);
174
175ACPI_STATUS
176AcpiRemoveInterface (
177    ACPI_STRING             InterfaceName);
178
179UINT32
180AcpiCheckAddressRange (
181    ACPI_ADR_SPACE_TYPE     SpaceId,
182    ACPI_PHYSICAL_ADDRESS   Address,
183    ACPI_SIZE               Length,
184    BOOLEAN                 Warn);
185
186
187/*
188 * ACPI Memory management
189 */
190void *
191AcpiAllocate (
192    UINT32                  Size);
193
194void *
195AcpiCallocate (
196    UINT32                  Size);
197
198void
199AcpiFree (
200    void                    *Address);
201
202
203/*
204 * ACPI table manipulation interfaces
205 */
206ACPI_STATUS
207AcpiReallocateRootTable (
208    void);
209
210ACPI_STATUS
211AcpiFindRootPointer (
212    ACPI_SIZE               *RsdpAddress);
213
214ACPI_STATUS
215AcpiLoadTables (
216    void);
217
218ACPI_STATUS
219AcpiGetTableHeader (
220    ACPI_STRING             Signature,
221    UINT32                  Instance,
222    ACPI_TABLE_HEADER       *OutTableHeader);
223
224ACPI_STATUS
225AcpiGetTable (
226    ACPI_STRING             Signature,
227    UINT32                  Instance,
228    ACPI_TABLE_HEADER       **OutTable);
229
230ACPI_STATUS
231AcpiGetTableByIndex (
232    UINT32                  TableIndex,
233    ACPI_TABLE_HEADER       **OutTable);
234
235ACPI_STATUS
236AcpiInstallTableHandler (
237    ACPI_TABLE_HANDLER      Handler,
238    void                    *Context);
239
240ACPI_STATUS
241AcpiRemoveTableHandler (
242    ACPI_TABLE_HANDLER      Handler);
243
244
245/*
246 * Namespace and name interfaces
247 */
248ACPI_STATUS
249AcpiWalkNamespace (
250    ACPI_OBJECT_TYPE        Type,
251    ACPI_HANDLE             StartObject,
252    UINT32                  MaxDepth,
253    ACPI_WALK_CALLBACK      PreOrderVisit,
254    ACPI_WALK_CALLBACK      PostOrderVisit,
255    void                    *Context,
256    void                    **ReturnValue);
257
258ACPI_STATUS
259AcpiGetDevices (
260    char                    *HID,
261    ACPI_WALK_CALLBACK      UserFunction,
262    void                    *Context,
263    void                    **ReturnValue);
264
265ACPI_STATUS
266AcpiGetName (
267    ACPI_HANDLE             Object,
268    UINT32                  NameType,
269    ACPI_BUFFER             *RetPathPtr);
270
271ACPI_STATUS
272AcpiGetHandle (
273    ACPI_HANDLE             Parent,
274    ACPI_STRING             Pathname,
275    ACPI_HANDLE             *RetHandle);
276
277ACPI_STATUS
278AcpiAttachData (
279    ACPI_HANDLE             Object,
280    ACPI_OBJECT_HANDLER     Handler,
281    void                    *Data);
282
283ACPI_STATUS
284AcpiDetachData (
285    ACPI_HANDLE             Object,
286    ACPI_OBJECT_HANDLER     Handler);
287
288ACPI_STATUS
289AcpiGetData (
290    ACPI_HANDLE             Object,
291    ACPI_OBJECT_HANDLER     Handler,
292    void                    **Data);
293
294ACPI_STATUS
295AcpiDebugTrace (
296    char                    *Name,
297    UINT32                  DebugLevel,
298    UINT32                  DebugLayer,
299    UINT32                  Flags);
300
301
302/*
303 * Object manipulation and enumeration
304 */
305ACPI_STATUS
306AcpiEvaluateObject (
307    ACPI_HANDLE             Object,
308    ACPI_STRING             Pathname,
309    ACPI_OBJECT_LIST        *ParameterObjects,
310    ACPI_BUFFER             *ReturnObjectBuffer);
311
312ACPI_STATUS
313AcpiEvaluateObjectTyped (
314    ACPI_HANDLE             Object,
315    ACPI_STRING             Pathname,
316    ACPI_OBJECT_LIST        *ExternalParams,
317    ACPI_BUFFER             *ReturnBuffer,
318    ACPI_OBJECT_TYPE        ReturnType);
319
320ACPI_STATUS
321AcpiGetObjectInfo (
322    ACPI_HANDLE             Object,
323    ACPI_DEVICE_INFO        **ReturnBuffer);
324
325ACPI_STATUS
326AcpiInstallMethod (
327    UINT8                   *Buffer);
328
329ACPI_STATUS
330AcpiGetNextObject (
331    ACPI_OBJECT_TYPE        Type,
332    ACPI_HANDLE             Parent,
333    ACPI_HANDLE             Child,
334    ACPI_HANDLE             *OutHandle);
335
336ACPI_STATUS
337AcpiGetType (
338    ACPI_HANDLE             Object,
339    ACPI_OBJECT_TYPE        *OutType);
340
341ACPI_STATUS
342AcpiGetParent (
343    ACPI_HANDLE             Object,
344    ACPI_HANDLE             *OutHandle);
345
346
347/*
348 * Handler interfaces
349 */
350ACPI_STATUS
351AcpiInstallInitializationHandler (
352    ACPI_INIT_HANDLER       Handler,
353    UINT32                  Function);
354
355ACPI_HW_DEPENDENT_RETURN_STATUS (
356ACPI_STATUS
357AcpiInstallGlobalEventHandler (
358    ACPI_GBL_EVENT_HANDLER  Handler,
359    void                    *Context))
360
361ACPI_HW_DEPENDENT_RETURN_STATUS (
362ACPI_STATUS
363AcpiInstallFixedEventHandler (
364    UINT32                  AcpiEvent,
365    ACPI_EVENT_HANDLER      Handler,
366    void                    *Context))
367
368ACPI_HW_DEPENDENT_RETURN_STATUS (
369ACPI_STATUS
370AcpiRemoveFixedEventHandler (
371    UINT32                  AcpiEvent,
372    ACPI_EVENT_HANDLER      Handler))
373
374ACPI_HW_DEPENDENT_RETURN_STATUS (
375ACPI_STATUS
376AcpiInstallGpeHandler (
377    ACPI_HANDLE             GpeDevice,
378    UINT32                  GpeNumber,
379    UINT32                  Type,
380    ACPI_GPE_HANDLER        Address,
381    void                    *Context))
382
383ACPI_HW_DEPENDENT_RETURN_STATUS (
384ACPI_STATUS
385AcpiRemoveGpeHandler (
386    ACPI_HANDLE             GpeDevice,
387    UINT32                  GpeNumber,
388    ACPI_GPE_HANDLER        Address))
389
390ACPI_STATUS
391AcpiInstallNotifyHandler (
392    ACPI_HANDLE             Device,
393    UINT32                  HandlerType,
394    ACPI_NOTIFY_HANDLER     Handler,
395    void                    *Context);
396
397ACPI_STATUS
398AcpiRemoveNotifyHandler (
399    ACPI_HANDLE             Device,
400    UINT32                  HandlerType,
401    ACPI_NOTIFY_HANDLER     Handler);
402
403ACPI_STATUS
404AcpiInstallAddressSpaceHandler (
405    ACPI_HANDLE             Device,
406    ACPI_ADR_SPACE_TYPE     SpaceId,
407    ACPI_ADR_SPACE_HANDLER  Handler,
408    ACPI_ADR_SPACE_SETUP    Setup,
409    void                    *Context);
410
411ACPI_STATUS
412AcpiRemoveAddressSpaceHandler (
413    ACPI_HANDLE             Device,
414    ACPI_ADR_SPACE_TYPE     SpaceId,
415    ACPI_ADR_SPACE_HANDLER  Handler);
416
417ACPI_STATUS
418AcpiInstallExceptionHandler (
419    ACPI_EXCEPTION_HANDLER  Handler);
420
421ACPI_STATUS
422AcpiInstallInterfaceHandler (
423    ACPI_INTERFACE_HANDLER  Handler);
424
425
426/*
427 * Global Lock interfaces
428 */
429ACPI_HW_DEPENDENT_RETURN_STATUS (
430ACPI_STATUS
431AcpiAcquireGlobalLock (
432    UINT16                  Timeout,
433    UINT32                  *Handle))
434
435ACPI_HW_DEPENDENT_RETURN_STATUS (
436ACPI_STATUS
437AcpiReleaseGlobalLock (
438    UINT32                  Handle))
439
440
441/*
442 * Interfaces to AML mutex objects
443 */
444ACPI_STATUS
445AcpiAcquireMutex (
446    ACPI_HANDLE             Handle,
447    ACPI_STRING             Pathname,
448    UINT16                  Timeout);
449
450ACPI_STATUS
451AcpiReleaseMutex (
452    ACPI_HANDLE             Handle,
453    ACPI_STRING             Pathname);
454
455
456/*
457 * Fixed Event interfaces
458 */
459ACPI_HW_DEPENDENT_RETURN_STATUS (
460ACPI_STATUS
461AcpiEnableEvent (
462    UINT32                  Event,
463    UINT32                  Flags))
464
465ACPI_HW_DEPENDENT_RETURN_STATUS (
466ACPI_STATUS
467AcpiDisableEvent (
468    UINT32                  Event,
469    UINT32                  Flags))
470
471ACPI_HW_DEPENDENT_RETURN_STATUS (
472ACPI_STATUS
473AcpiClearEvent (
474    UINT32                  Event))
475
476ACPI_HW_DEPENDENT_RETURN_STATUS (
477ACPI_STATUS
478AcpiGetEventStatus (
479    UINT32                  Event,
480    ACPI_EVENT_STATUS       *EventStatus))
481
482
483/*
484 * General Purpose Event (GPE) Interfaces
485 */
486ACPI_HW_DEPENDENT_RETURN_STATUS (
487ACPI_STATUS
488AcpiUpdateAllGpes (
489    void))
490
491ACPI_HW_DEPENDENT_RETURN_STATUS (
492ACPI_STATUS
493AcpiEnableGpe (
494    ACPI_HANDLE             GpeDevice,
495    UINT32                  GpeNumber))
496
497ACPI_HW_DEPENDENT_RETURN_STATUS (
498ACPI_STATUS
499AcpiDisableGpe (
500    ACPI_HANDLE             GpeDevice,
501    UINT32                  GpeNumber))
502
503ACPI_HW_DEPENDENT_RETURN_STATUS (
504ACPI_STATUS
505AcpiClearGpe (
506    ACPI_HANDLE             GpeDevice,
507    UINT32                  GpeNumber))
508
509ACPI_HW_DEPENDENT_RETURN_STATUS (
510ACPI_STATUS
511AcpiSetGpe (
512    ACPI_HANDLE             GpeDevice,
513    UINT32                  GpeNumber,
514    UINT8                   Action))
515
516ACPI_HW_DEPENDENT_RETURN_STATUS (
517ACPI_STATUS
518AcpiFinishGpe (
519    ACPI_HANDLE             GpeDevice,
520    UINT32                  GpeNumber))
521
522ACPI_HW_DEPENDENT_RETURN_STATUS (
523ACPI_STATUS
524AcpiSetupGpeForWake (
525    ACPI_HANDLE             ParentDevice,
526    ACPI_HANDLE             GpeDevice,
527    UINT32                  GpeNumber))
528
529ACPI_HW_DEPENDENT_RETURN_STATUS (
530ACPI_STATUS
531AcpiSetGpeWakeMask (
532    ACPI_HANDLE             GpeDevice,
533    UINT32                  GpeNumber,
534    UINT8                   Action))
535
536ACPI_HW_DEPENDENT_RETURN_STATUS (
537ACPI_STATUS
538AcpiGetGpeStatus (
539    ACPI_HANDLE             GpeDevice,
540    UINT32                  GpeNumber,
541    ACPI_EVENT_STATUS       *EventStatus))
542
543ACPI_HW_DEPENDENT_RETURN_STATUS (
544ACPI_STATUS
545AcpiDisableAllGpes (
546    void))
547
548ACPI_HW_DEPENDENT_RETURN_STATUS (
549ACPI_STATUS
550AcpiEnableAllRuntimeGpes (
551    void))
552
553ACPI_HW_DEPENDENT_RETURN_STATUS (
554ACPI_STATUS
555AcpiGetGpeDevice (
556    UINT32                  GpeIndex,
557    ACPI_HANDLE             *GpeDevice))
558
559ACPI_HW_DEPENDENT_RETURN_STATUS (
560ACPI_STATUS
561AcpiInstallGpeBlock (
562    ACPI_HANDLE             GpeDevice,
563    ACPI_GENERIC_ADDRESS    *GpeBlockAddress,
564    UINT32                  RegisterCount,
565    UINT32                  InterruptNumber))
566
567ACPI_HW_DEPENDENT_RETURN_STATUS (
568ACPI_STATUS
569AcpiRemoveGpeBlock (
570    ACPI_HANDLE             GpeDevice))
571
572
573/*
574 * Resource interfaces
575 */
576typedef
577ACPI_STATUS (*ACPI_WALK_RESOURCE_CALLBACK) (
578    ACPI_RESOURCE           *Resource,
579    void                    *Context);
580
581ACPI_STATUS
582AcpiGetVendorResource (
583    ACPI_HANDLE             Device,
584    char                    *Name,
585    ACPI_VENDOR_UUID        *Uuid,
586    ACPI_BUFFER             *RetBuffer);
587
588ACPI_STATUS
589AcpiGetCurrentResources (
590    ACPI_HANDLE             Device,
591    ACPI_BUFFER             *RetBuffer);
592
593ACPI_STATUS
594AcpiGetPossibleResources (
595    ACPI_HANDLE             Device,
596    ACPI_BUFFER             *RetBuffer);
597
598ACPI_STATUS
599AcpiGetEventResources (
600    ACPI_HANDLE             DeviceHandle,
601    ACPI_BUFFER             *RetBuffer);
602
603ACPI_STATUS
604AcpiWalkResources (
605    ACPI_HANDLE                 Device,
606    char                        *Name,
607    ACPI_WALK_RESOURCE_CALLBACK UserFunction,
608    void                        *Context);
609
610ACPI_STATUS
611AcpiSetCurrentResources (
612    ACPI_HANDLE             Device,
613    ACPI_BUFFER             *InBuffer);
614
615ACPI_STATUS
616AcpiGetIrqRoutingTable (
617    ACPI_HANDLE             Device,
618    ACPI_BUFFER             *RetBuffer);
619
620ACPI_STATUS
621AcpiResourceToAddress64 (
622    ACPI_RESOURCE           *Resource,
623    ACPI_RESOURCE_ADDRESS64 *Out);
624
625ACPI_STATUS
626AcpiBufferToResource (
627    UINT8                   *AmlBuffer,
628    UINT16                  AmlBufferLength,
629    ACPI_RESOURCE           **ResourcePtr);
630
631
632/*
633 * Hardware (ACPI device) interfaces
634 */
635ACPI_STATUS
636AcpiReset (
637    void);
638
639ACPI_STATUS
640AcpiRead (
641    UINT64                  *Value,
642    ACPI_GENERIC_ADDRESS    *Reg);
643
644ACPI_STATUS
645AcpiWrite (
646    UINT64                  Value,
647    ACPI_GENERIC_ADDRESS    *Reg);
648
649ACPI_HW_DEPENDENT_RETURN_STATUS (
650ACPI_STATUS
651AcpiReadBitRegister (
652    UINT32                  RegisterId,
653    UINT32                  *ReturnValue))
654
655ACPI_HW_DEPENDENT_RETURN_STATUS (
656ACPI_STATUS
657AcpiWriteBitRegister (
658    UINT32                  RegisterId,
659    UINT32                  Value))
660
661
662/*
663 * Sleep/Wake interfaces
664 */
665ACPI_STATUS
666AcpiGetSleepTypeData (
667    UINT8                   SleepState,
668    UINT8                   *Slp_TypA,
669    UINT8                   *Slp_TypB);
670
671ACPI_STATUS
672AcpiEnterSleepStatePrep (
673    UINT8                   SleepState);
674
675ACPI_STATUS
676AcpiEnterSleepState (
677    UINT8                   SleepState,
678    UINT8                   Flags);
679
680ACPI_HW_DEPENDENT_RETURN_STATUS (
681ACPI_STATUS
682AcpiEnterSleepStateS4bios (
683    void))
684
685ACPI_STATUS
686AcpiLeaveSleepStatePrep (
687    UINT8                   SleepState,
688    UINT8                   Flags);
689
690ACPI_STATUS
691AcpiLeaveSleepState (
692    UINT8                   SleepState);
693
694ACPI_HW_DEPENDENT_RETURN_STATUS (
695ACPI_STATUS
696AcpiSetFirmwareWakingVector (
697    UINT32                  PhysicalAddress))
698
699#if ACPI_MACHINE_WIDTH == 64
700ACPI_HW_DEPENDENT_RETURN_STATUS (
701ACPI_STATUS
702AcpiSetFirmwareWakingVector64 (
703    UINT64                  PhysicalAddress))
704#endif
705
706
707/*
708 * ACPI Timer interfaces
709 */
710ACPI_HW_DEPENDENT_RETURN_STATUS (
711ACPI_STATUS
712AcpiGetTimerResolution (
713    UINT32                  *Resolution))
714
715ACPI_HW_DEPENDENT_RETURN_STATUS (
716ACPI_STATUS
717AcpiGetTimer (
718    UINT32                  *Ticks))
719
720ACPI_HW_DEPENDENT_RETURN_STATUS (
721ACPI_STATUS
722AcpiGetTimerDuration (
723    UINT32                  StartTicks,
724    UINT32                  EndTicks,
725    UINT32                  *TimeElapsed))
726
727
728/*
729 * Error/Warning output
730 */
731void ACPI_INTERNAL_VAR_XFACE
732AcpiError (
733    const char              *ModuleName,
734    UINT32                  LineNumber,
735    const char              *Format,
736    ...) ACPI_PRINTF_LIKE(3);
737
738void  ACPI_INTERNAL_VAR_XFACE
739AcpiException (
740    const char              *ModuleName,
741    UINT32                  LineNumber,
742    ACPI_STATUS             Status,
743    const char              *Format,
744    ...) ACPI_PRINTF_LIKE(4);
745
746void ACPI_INTERNAL_VAR_XFACE
747AcpiWarning (
748    const char              *ModuleName,
749    UINT32                  LineNumber,
750    const char              *Format,
751    ...) ACPI_PRINTF_LIKE(3);
752
753void ACPI_INTERNAL_VAR_XFACE
754AcpiInfo (
755    const char              *ModuleName,
756    UINT32                  LineNumber,
757    const char              *Format,
758    ...) ACPI_PRINTF_LIKE(3);
759
760
761/*
762 * Debug output
763 */
764#ifdef ACPI_DEBUG_OUTPUT
765
766void ACPI_INTERNAL_VAR_XFACE
767AcpiDebugPrint (
768    UINT32                  RequestedDebugLevel,
769    UINT32                  LineNumber,
770    const char              *FunctionName,
771    const char              *ModuleName,
772    UINT32                  ComponentId,
773    const char              *Format,
774    ...) ACPI_PRINTF_LIKE(6);
775
776void ACPI_INTERNAL_VAR_XFACE
777AcpiDebugPrintRaw (
778    UINT32                  RequestedDebugLevel,
779    UINT32                  LineNumber,
780    const char              *FunctionName,
781    const char              *ModuleName,
782    UINT32                  ComponentId,
783    const char              *Format,
784    ...) ACPI_PRINTF_LIKE(6);
785#endif
786
787#endif /* __ACXFACE_H__ */
788