Print this page
update to acpica-unix2-20131218
acpica-unix2-20130823
PANKOVs restructure
   1 /******************************************************************************
   2  *
   3  * Name: acenv.h - Host and compiler configuration
   4  *
   5  *****************************************************************************/
   6 
   7 /*
   8  * Copyright (C) 2000 - 2011, Intel Corp.
   9  * All rights reserved.
  10  *
  11  * Redistribution and use in source and binary forms, with or without
  12  * modification, are permitted provided that the following conditions
  13  * are met:
  14  * 1. Redistributions of source code must retain the above copyright
  15  *    notice, this list of conditions, and the following disclaimer,
  16  *    without modification.
  17  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
  18  *    substantially similar to the "NO WARRANTY" disclaimer below
  19  *    ("Disclaimer") and any redistribution must be conditioned upon
  20  *    including a substantially similar Disclaimer requirement for further
  21  *    binary redistribution.
  22  * 3. Neither the names of the above-listed copyright holders nor the names
  23  *    of any contributors may be used to endorse or promote products derived
  24  *    from this software without specific prior written permission.
  25  *
  26  * Alternatively, this software may be distributed under the terms of the
  27  * GNU General Public License ("GPL") version 2 as published by the Free
  28  * Software Foundation.


  62 
  63 
  64 /******************************************************************************
  65  *
  66  * Configuration for ACPI tools and utilities
  67  *
  68  *****************************************************************************/
  69 
  70 /* iASL configuration */
  71 
  72 #ifdef ACPI_ASL_COMPILER
  73 #define ACPI_APPLICATION
  74 #define ACPI_DISASSEMBLER
  75 #define ACPI_DEBUG_OUTPUT
  76 #define ACPI_CONSTANT_EVAL_ONLY
  77 #define ACPI_LARGE_NAMESPACE_NODE
  78 #define ACPI_DATA_TABLE_DISASSEMBLY
  79 #define ACPI_SINGLE_THREADED
  80 #endif
  81 
  82 /* AcpiExec and AcpiBin configuration */
  83 
  84 #ifdef ACPI_EXEC_APP
  85 #define ACPI_APPLICATION
  86 #define ACPI_FULL_DEBUG
  87 #define ACPI_MUTEX_DEBUG
  88 #define ACPI_DBG_TRACK_ALLOCATIONS
  89 #endif
  90 
  91 #ifdef ACPI_BIN_APP



  92 #define ACPI_APPLICATION
  93 #define ACPI_SINGLE_THREADED
  94 #endif
  95 



















  96 /* Linkable ACPICA library */
  97 
  98 #ifdef ACPI_LIBRARY
  99 #define ACPI_USE_LOCAL_CACHE
 100 #endif
 101 
 102 /* Common for all ACPICA applications */
 103 
 104 #ifdef ACPI_APPLICATION
 105 #define ACPI_USE_SYSTEM_CLIBRARY
 106 #define ACPI_USE_LOCAL_CACHE
 107 #endif
 108 
 109 /* Common debug support */
 110 
 111 #ifdef ACPI_FULL_DEBUG
 112 #define ACPI_DEBUGGER
 113 #define ACPI_DEBUG_OUTPUT
 114 #define ACPI_DISASSEMBLER
 115 #endif
 116 
 117 
 118 /*! [Begin] no source code translation */
 119 
 120 /******************************************************************************
 121  *
 122  * Host configuration files. The compiler configuration files are included
 123  * by the host files.
 124  *
 125  *****************************************************************************/
 126 
 127 #if defined(_LINUX) || defined(__linux__)
 128 #include "aclinux.h"
 129 



 130 #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
 131 #include "acfreebsd.h"
 132 
 133 #elif defined(__NetBSD__)
 134 #include "acnetbsd.h"
 135 
 136 #elif defined(__sun)
 137 #include "acsolaris.h"
 138 
 139 #elif defined(MODESTO)
 140 #include "acmodesto.h"
 141 
 142 #elif defined(NETWARE)
 143 #include "acnetware.h"
 144 
 145 #elif defined(_CYGWIN)
 146 #include "accygwin.h"
 147 
 148 #elif defined(WIN32)
 149 #include "acwin.h"
 150 
 151 #elif defined(WIN64)
 152 #include "acwin64.h"
 153 
 154 #elif defined(_WRS_LIB_BUILD)
 155 #include "acvxworks.h"
 156 
 157 #elif defined(__OS2__)
 158 #include "acos2.h"
 159 
 160 #elif defined(_AED_EFI)
 161 #include "acefi.h"
 162 



 163 #else
 164 
 165 /* Unknown environment */
 166 
 167 #error Unknown target environment
 168 #endif
 169 
 170 /*! [End] no source code translation !*/
 171 
 172 
 173 /******************************************************************************
 174  *
 175  * Setup defaults for the required symbols that were not defined in one of
 176  * the host/compiler files above.
 177  *
 178  *****************************************************************************/
 179 
 180 /* 64-bit data types */
 181 
 182 #ifndef COMPILER_DEPENDENT_INT64


 260 /******************************************************************************
 261  *
 262  * C library configuration
 263  *
 264  *****************************************************************************/
 265 
 266 /*
 267  * ACPI_USE_SYSTEM_CLIBRARY - Define this if linking to an actual C library.
 268  *      Otherwise, local versions of string/memory functions will be used.
 269  * ACPI_USE_STANDARD_HEADERS - Define this if linking to a C library and
 270  *      the standard header files may be used.
 271  *
 272  * The ACPICA subsystem only uses low level C library functions that do not call
 273  * operating system services and may therefore be inlined in the code.
 274  *
 275  * It may be necessary to tailor these include files to the target
 276  * generation environment.
 277  */
 278 #ifdef ACPI_USE_SYSTEM_CLIBRARY
 279 
 280 /* Use the standard C library headers. We want to keep these to a minimum */
 281 
 282 #ifdef ACPI_USE_STANDARD_HEADERS
 283 
 284 /* Use the standard headers from the standard locations */
 285 
 286 #include <stdarg.h>
 287 #include <stdlib.h>
 288 #include <string.h>
 289 #include <ctype.h>
 290 
 291 #endif /* ACPI_USE_STANDARD_HEADERS */
 292 
 293 /* We will be linking to the standard Clib functions */
 294 
 295 #define ACPI_STRSTR(s1,s2)      strstr((s1), (s2))
 296 #define ACPI_STRCHR(s1,c)       strchr((s1), (c))
 297 #define ACPI_STRLEN(s)          (ACPI_SIZE) strlen((s))
 298 #define ACPI_STRCPY(d,s)        (void) strcpy((d), (s))
 299 #define ACPI_STRNCPY(d,s,n)     (void) strncpy((d), (s), (ACPI_SIZE)(n))
 300 #define ACPI_STRNCMP(d,s,n)     strncmp((d), (s), (ACPI_SIZE)(n))


 327  * implementations may not be as efficient as an inline or assembly code
 328  * implementation provided by a native C library, but they are functionally
 329  * equivalent.
 330  */
 331 #ifndef va_arg
 332 
 333 #ifndef _VALIST
 334 #define _VALIST
 335 typedef char *va_list;
 336 #endif /* _VALIST */
 337 
 338 /* Storage alignment properties */
 339 
 340 #define  _AUPBND                (sizeof (ACPI_NATIVE_INT) - 1)
 341 #define  _ADNBND                (sizeof (ACPI_NATIVE_INT) - 1)
 342 
 343 /* Variable argument list macro definitions */
 344 
 345 #define _Bnd(X, bnd)            (((sizeof (X)) + (bnd)) & (~(bnd)))
 346 #define va_arg(ap, T)           (*(T *)(((ap) += (_Bnd (T, _AUPBND))) - (_Bnd (T,_ADNBND))))
 347 #define va_end(ap)              (void) 0
 348 #define va_start(ap, A)         (void) ((ap) = (((char *) &(A)) + (_Bnd (A,_AUPBND))))
 349 
 350 #endif /* va_arg */
 351 
 352 /* Use the local (ACPICA) definitions of the clib functions */
 353 
 354 #define ACPI_STRSTR(s1,s2)      AcpiUtStrstr ((s1), (s2))
 355 #define ACPI_STRCHR(s1,c)       AcpiUtStrchr ((s1), (c))
 356 #define ACPI_STRLEN(s)          (ACPI_SIZE) AcpiUtStrlen ((s))
 357 #define ACPI_STRCPY(d,s)        (void) AcpiUtStrcpy ((d), (s))
 358 #define ACPI_STRNCPY(d,s,n)     (void) AcpiUtStrncpy ((d), (s), (ACPI_SIZE)(n))
 359 #define ACPI_STRNCMP(d,s,n)     AcpiUtStrncmp ((d), (s), (ACPI_SIZE)(n))
 360 #define ACPI_STRCMP(d,s)        AcpiUtStrcmp ((d), (s))
 361 #define ACPI_STRCAT(d,s)        (void) AcpiUtStrcat ((d), (s))
 362 #define ACPI_STRNCAT(d,s,n)     AcpiUtStrncat ((d), (s), (ACPI_SIZE)(n))
 363 #define ACPI_STRTOUL(d,s,n)     AcpiUtStrtoul ((d), (s), (ACPI_SIZE)(n))
 364 #define ACPI_MEMCMP(s1,s2,n)    AcpiUtMemcmp((const char *)(s1), (const char *)(s2), (ACPI_SIZE)(n))
 365 #define ACPI_MEMCPY(d,s,n)      (void) AcpiUtMemcpy ((d), (s), (ACPI_SIZE)(n))
 366 #define ACPI_MEMSET(d,v,n)      (void) AcpiUtMemset ((d), (v), (ACPI_SIZE)(n))
 367 #define ACPI_TOUPPER(c)         AcpiUtToUpper ((int) (c))
 368 #define ACPI_TOLOWER(c)         AcpiUtToLower ((int) (c))
 369 
 370 #endif /* ACPI_USE_SYSTEM_CLIBRARY */
 371 









 372 #endif /* __ACENV_H__ */
   1 /******************************************************************************
   2  *
   3  * Name: acenv.h - Host and compiler configuration
   4  *
   5  *****************************************************************************/
   6 
   7 /*
   8  * Copyright (C) 2000 - 2013, Intel Corp.
   9  * All rights reserved.
  10  *
  11  * Redistribution and use in source and binary forms, with or without
  12  * modification, are permitted provided that the following conditions
  13  * are met:
  14  * 1. Redistributions of source code must retain the above copyright
  15  *    notice, this list of conditions, and the following disclaimer,
  16  *    without modification.
  17  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
  18  *    substantially similar to the "NO WARRANTY" disclaimer below
  19  *    ("Disclaimer") and any redistribution must be conditioned upon
  20  *    including a substantially similar Disclaimer requirement for further
  21  *    binary redistribution.
  22  * 3. Neither the names of the above-listed copyright holders nor the names
  23  *    of any contributors may be used to endorse or promote products derived
  24  *    from this software without specific prior written permission.
  25  *
  26  * Alternatively, this software may be distributed under the terms of the
  27  * GNU General Public License ("GPL") version 2 as published by the Free
  28  * Software Foundation.


  62 
  63 
  64 /******************************************************************************
  65  *
  66  * Configuration for ACPI tools and utilities
  67  *
  68  *****************************************************************************/
  69 
  70 /* iASL configuration */
  71 
  72 #ifdef ACPI_ASL_COMPILER
  73 #define ACPI_APPLICATION
  74 #define ACPI_DISASSEMBLER
  75 #define ACPI_DEBUG_OUTPUT
  76 #define ACPI_CONSTANT_EVAL_ONLY
  77 #define ACPI_LARGE_NAMESPACE_NODE
  78 #define ACPI_DATA_TABLE_DISASSEMBLY
  79 #define ACPI_SINGLE_THREADED
  80 #endif
  81 
  82 /* AcpiExec configuration. Multithreaded with full AML debugger */
  83 
  84 #ifdef ACPI_EXEC_APP
  85 #define ACPI_APPLICATION
  86 #define ACPI_FULL_DEBUG
  87 #define ACPI_MUTEX_DEBUG
  88 #define ACPI_DBG_TRACK_ALLOCATIONS
  89 #endif
  90 
  91 /* AcpiNames configuration. Single threaded with debugger output enabled. */
  92 
  93 #ifdef ACPI_NAMES_APP
  94 #define ACPI_DEBUGGER
  95 #define ACPI_APPLICATION
  96 #define ACPI_SINGLE_THREADED
  97 #endif
  98 
  99 /*
 100  * AcpiBin/AcpiDump/AcpiSrc/AcpiXtract/Example configuration. All single
 101  * threaded, with no debug output.
 102  */
 103 #if (defined ACPI_BIN_APP)      || \
 104     (defined ACPI_DUMP_APP)     || \
 105     (defined ACPI_SRC_APP)      || \
 106     (defined ACPI_XTRACT_APP)   || \
 107     (defined ACPI_EXAMPLE_APP)
 108 #define ACPI_APPLICATION
 109 #define ACPI_SINGLE_THREADED
 110 #endif
 111 
 112 #ifdef ACPI_HELP_APP
 113 #define ACPI_APPLICATION
 114 #define ACPI_SINGLE_THREADED
 115 #define ACPI_NO_ERROR_MESSAGES
 116 #endif
 117 
 118 /* Linkable ACPICA library */
 119 
 120 #ifdef ACPI_LIBRARY
 121 #define ACPI_USE_LOCAL_CACHE
 122 #endif
 123 
 124 /* Common for all ACPICA applications */
 125 
 126 #ifdef ACPI_APPLICATION
 127 #define ACPI_USE_SYSTEM_CLIBRARY
 128 #define ACPI_USE_LOCAL_CACHE
 129 #endif
 130 
 131 /* Common debug support */
 132 
 133 #ifdef ACPI_FULL_DEBUG
 134 #define ACPI_DEBUGGER
 135 #define ACPI_DEBUG_OUTPUT
 136 #define ACPI_DISASSEMBLER
 137 #endif
 138 
 139 
 140 /*! [Begin] no source code translation */
 141 
 142 /******************************************************************************
 143  *
 144  * Host configuration files. The compiler configuration files are included
 145  * by the host files.
 146  *
 147  *****************************************************************************/
 148 
 149 #if defined(_LINUX) || defined(__linux__)
 150 #include "aclinux.h"
 151 
 152 #elif defined(_APPLE) || defined(__APPLE__)
 153 #include "acmacosx.h"
 154 
 155 #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
 156 #include "acfreebsd.h"
 157 
 158 #elif defined(__NetBSD__)
 159 #include "acnetbsd.h"
 160 
 161 #elif defined(__sun)
 162 #include "acsolaris.h"
 163 
 164 #elif defined(MODESTO)
 165 #include "acmodesto.h"
 166 
 167 #elif defined(NETWARE)
 168 #include "acnetware.h"
 169 
 170 #elif defined(_CYGWIN)
 171 #include "accygwin.h"
 172 
 173 #elif defined(WIN32)
 174 #include "acwin.h"
 175 
 176 #elif defined(WIN64)
 177 #include "acwin64.h"
 178 
 179 #elif defined(_WRS_LIB_BUILD)
 180 #include "acvxworks.h"
 181 
 182 #elif defined(__OS2__)
 183 #include "acos2.h"
 184 
 185 #elif defined(_AED_EFI)
 186 #include "acefi.h"
 187 
 188 #elif defined(__HAIKU__)
 189 #include "achaiku.h"
 190 
 191 #else
 192 
 193 /* Unknown environment */
 194 
 195 #error Unknown target environment
 196 #endif
 197 
 198 /*! [End] no source code translation !*/
 199 
 200 
 201 /******************************************************************************
 202  *
 203  * Setup defaults for the required symbols that were not defined in one of
 204  * the host/compiler files above.
 205  *
 206  *****************************************************************************/
 207 
 208 /* 64-bit data types */
 209 
 210 #ifndef COMPILER_DEPENDENT_INT64


 288 /******************************************************************************
 289  *
 290  * C library configuration
 291  *
 292  *****************************************************************************/
 293 
 294 /*
 295  * ACPI_USE_SYSTEM_CLIBRARY - Define this if linking to an actual C library.
 296  *      Otherwise, local versions of string/memory functions will be used.
 297  * ACPI_USE_STANDARD_HEADERS - Define this if linking to a C library and
 298  *      the standard header files may be used.
 299  *
 300  * The ACPICA subsystem only uses low level C library functions that do not call
 301  * operating system services and may therefore be inlined in the code.
 302  *
 303  * It may be necessary to tailor these include files to the target
 304  * generation environment.
 305  */
 306 #ifdef ACPI_USE_SYSTEM_CLIBRARY
 307 
 308 /* Use the standard C library headers. We want to keep these to a minimum. */
 309 
 310 #ifdef ACPI_USE_STANDARD_HEADERS
 311 
 312 /* Use the standard headers from the standard locations */
 313 
 314 #include <stdarg.h>
 315 #include <stdlib.h>
 316 #include <string.h>
 317 #include <ctype.h>
 318 
 319 #endif /* ACPI_USE_STANDARD_HEADERS */
 320 
 321 /* We will be linking to the standard Clib functions */
 322 
 323 #define ACPI_STRSTR(s1,s2)      strstr((s1), (s2))
 324 #define ACPI_STRCHR(s1,c)       strchr((s1), (c))
 325 #define ACPI_STRLEN(s)          (ACPI_SIZE) strlen((s))
 326 #define ACPI_STRCPY(d,s)        (void) strcpy((d), (s))
 327 #define ACPI_STRNCPY(d,s,n)     (void) strncpy((d), (s), (ACPI_SIZE)(n))
 328 #define ACPI_STRNCMP(d,s,n)     strncmp((d), (s), (ACPI_SIZE)(n))


 355  * implementations may not be as efficient as an inline or assembly code
 356  * implementation provided by a native C library, but they are functionally
 357  * equivalent.
 358  */
 359 #ifndef va_arg
 360 
 361 #ifndef _VALIST
 362 #define _VALIST
 363 typedef char *va_list;
 364 #endif /* _VALIST */
 365 
 366 /* Storage alignment properties */
 367 
 368 #define  _AUPBND                (sizeof (ACPI_NATIVE_INT) - 1)
 369 #define  _ADNBND                (sizeof (ACPI_NATIVE_INT) - 1)
 370 
 371 /* Variable argument list macro definitions */
 372 
 373 #define _Bnd(X, bnd)            (((sizeof (X)) + (bnd)) & (~(bnd)))
 374 #define va_arg(ap, T)           (*(T *)(((ap) += (_Bnd (T, _AUPBND))) - (_Bnd (T,_ADNBND))))
 375 #define va_end(ap)              (ap = (va_list) NULL)
 376 #define va_start(ap, A)         (void) ((ap) = (((char *) &(A)) + (_Bnd (A,_AUPBND))))
 377 
 378 #endif /* va_arg */
 379 
 380 /* Use the local (ACPICA) definitions of the clib functions */
 381 
 382 #define ACPI_STRSTR(s1,s2)      AcpiUtStrstr ((s1), (s2))
 383 #define ACPI_STRCHR(s1,c)       AcpiUtStrchr ((s1), (c))
 384 #define ACPI_STRLEN(s)          (ACPI_SIZE) AcpiUtStrlen ((s))
 385 #define ACPI_STRCPY(d,s)        (void) AcpiUtStrcpy ((d), (s))
 386 #define ACPI_STRNCPY(d,s,n)     (void) AcpiUtStrncpy ((d), (s), (ACPI_SIZE)(n))
 387 #define ACPI_STRNCMP(d,s,n)     AcpiUtStrncmp ((d), (s), (ACPI_SIZE)(n))
 388 #define ACPI_STRCMP(d,s)        AcpiUtStrcmp ((d), (s))
 389 #define ACPI_STRCAT(d,s)        (void) AcpiUtStrcat ((d), (s))
 390 #define ACPI_STRNCAT(d,s,n)     AcpiUtStrncat ((d), (s), (ACPI_SIZE)(n))
 391 #define ACPI_STRTOUL(d,s,n)     AcpiUtStrtoul ((d), (s), (ACPI_SIZE)(n))
 392 #define ACPI_MEMCMP(s1,s2,n)    AcpiUtMemcmp((const char *)(s1), (const char *)(s2), (ACPI_SIZE)(n))
 393 #define ACPI_MEMCPY(d,s,n)      (void) AcpiUtMemcpy ((d), (s), (ACPI_SIZE)(n))
 394 #define ACPI_MEMSET(d,v,n)      (void) AcpiUtMemset ((d), (v), (ACPI_SIZE)(n))
 395 #define ACPI_TOUPPER(c)         AcpiUtToUpper ((int) (c))
 396 #define ACPI_TOLOWER(c)         AcpiUtToLower ((int) (c))
 397 
 398 #endif /* ACPI_USE_SYSTEM_CLIBRARY */
 399 
 400 #ifndef ACPI_FILE
 401 #ifdef ACPI_APPLICATION
 402 #include <stdio.h>
 403 #define ACPI_FILE              FILE *
 404 #else
 405 #define ACPI_FILE              void *
 406 #endif /* ACPI_APPLICATION */
 407 #endif /* ACPI_FILE */
 408 
 409 #endif /* __ACENV_H__ */