17c478bd9Sstevel@tonic-gate /****************************************************************************** 27c478bd9Sstevel@tonic-gate * 37c478bd9Sstevel@tonic-gate * Name: acfreebsd.h - OS specific defines, etc. 47c478bd9Sstevel@tonic-gate * 57c478bd9Sstevel@tonic-gate *****************************************************************************/ 67c478bd9Sstevel@tonic-gate 7*26f3cdf0SGordon Ross /* 8*26f3cdf0SGordon Ross * Copyright (C) 2000 - 2011, Intel Corp. 97c478bd9Sstevel@tonic-gate * All rights reserved. 107c478bd9Sstevel@tonic-gate * 11*26f3cdf0SGordon Ross * Redistribution and use in source and binary forms, with or without 12*26f3cdf0SGordon Ross * modification, are permitted provided that the following conditions 13*26f3cdf0SGordon Ross * are met: 14*26f3cdf0SGordon Ross * 1. Redistributions of source code must retain the above copyright 15*26f3cdf0SGordon Ross * notice, this list of conditions, and the following disclaimer, 16*26f3cdf0SGordon Ross * without modification. 17*26f3cdf0SGordon Ross * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18*26f3cdf0SGordon Ross * substantially similar to the "NO WARRANTY" disclaimer below 19*26f3cdf0SGordon Ross * ("Disclaimer") and any redistribution must be conditioned upon 20*26f3cdf0SGordon Ross * including a substantially similar Disclaimer requirement for further 21*26f3cdf0SGordon Ross * binary redistribution. 22*26f3cdf0SGordon Ross * 3. Neither the names of the above-listed copyright holders nor the names 23*26f3cdf0SGordon Ross * of any contributors may be used to endorse or promote products derived 24*26f3cdf0SGordon Ross * from this software without specific prior written permission. 25*26f3cdf0SGordon Ross * 26*26f3cdf0SGordon Ross * Alternatively, this software may be distributed under the terms of the 27*26f3cdf0SGordon Ross * GNU General Public License ("GPL") version 2 as published by the Free 28*26f3cdf0SGordon Ross * Software Foundation. 29*26f3cdf0SGordon Ross * 30*26f3cdf0SGordon Ross * NO WARRANTY 31*26f3cdf0SGordon Ross * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32*26f3cdf0SGordon Ross * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33*26f3cdf0SGordon Ross * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 34*26f3cdf0SGordon Ross * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35*26f3cdf0SGordon Ross * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36*26f3cdf0SGordon Ross * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37*26f3cdf0SGordon Ross * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38*26f3cdf0SGordon Ross * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39*26f3cdf0SGordon Ross * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40*26f3cdf0SGordon Ross * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41*26f3cdf0SGordon Ross * POSSIBILITY OF SUCH DAMAGES. 42*26f3cdf0SGordon Ross */ 437c478bd9Sstevel@tonic-gate 447c478bd9Sstevel@tonic-gate #ifndef __ACFREEBSD_H__ 45*26f3cdf0SGordon Ross #define __ACFREEBSD_H__ 467c478bd9Sstevel@tonic-gate 477c478bd9Sstevel@tonic-gate 487c478bd9Sstevel@tonic-gate /* FreeBSD uses GCC */ 497c478bd9Sstevel@tonic-gate 507c478bd9Sstevel@tonic-gate #include "acgcc.h" 517c478bd9Sstevel@tonic-gate #include <sys/types.h> 527c478bd9Sstevel@tonic-gate #include <machine/acpica_machdep.h> 537c478bd9Sstevel@tonic-gate 54*26f3cdf0SGordon Ross #define ACPI_UINTPTR_T uintptr_t 557c478bd9Sstevel@tonic-gate 56*26f3cdf0SGordon Ross #define ACPI_USE_DO_WHILE_0 57*26f3cdf0SGordon Ross #define ACPI_USE_LOCAL_CACHE 58*26f3cdf0SGordon Ross #define ACPI_USE_SYSTEM_CLIBRARY 597c478bd9Sstevel@tonic-gate 607c478bd9Sstevel@tonic-gate #ifdef _KERNEL 61aa2aa9a6SDana Myers 627c478bd9Sstevel@tonic-gate #include <sys/ctype.h> 637c478bd9Sstevel@tonic-gate #include <sys/param.h> 647c478bd9Sstevel@tonic-gate #include <sys/systm.h> 657c478bd9Sstevel@tonic-gate #include <sys/libkern.h> 667c478bd9Sstevel@tonic-gate #include <machine/stdarg.h> 677c478bd9Sstevel@tonic-gate 68aa2aa9a6SDana Myers #include "opt_acpi.h" 6930082d0cSmyers 70*26f3cdf0SGordon Ross #define ACPI_MUTEX_TYPE ACPI_OSL_MUTEX 71aa2aa9a6SDana Myers 72aa2aa9a6SDana Myers #ifdef ACPI_DEBUG 73*26f3cdf0SGordon Ross #define ACPI_DEBUG_OUTPUT /* for backward compatibility */ 74*26f3cdf0SGordon Ross #define ACPI_DISASSEMBLER 75aa2aa9a6SDana Myers #endif 7630082d0cSmyers 777c478bd9Sstevel@tonic-gate #ifdef ACPI_DEBUG_OUTPUT 787c478bd9Sstevel@tonic-gate #include "opt_ddb.h" 797c478bd9Sstevel@tonic-gate #ifdef DDB 80*26f3cdf0SGordon Ross #define ACPI_DEBUGGER 817c478bd9Sstevel@tonic-gate #endif /* DDB */ 827c478bd9Sstevel@tonic-gate #endif /* ACPI_DEBUG_OUTPUT */ 837c478bd9Sstevel@tonic-gate 84aa2aa9a6SDana Myers #ifdef DEBUGGER_THREADING 85aa2aa9a6SDana Myers #undef DEBUGGER_THREADING 86aa2aa9a6SDana Myers #endif /* DEBUGGER_THREADING */ 877c478bd9Sstevel@tonic-gate 88*26f3cdf0SGordon Ross #define DEBUGGER_THREADING 0 /* integrated with DDB */ 89aa2aa9a6SDana Myers 90aa2aa9a6SDana Myers #else /* _KERNEL */ 917c478bd9Sstevel@tonic-gate 927c478bd9Sstevel@tonic-gate #if __STDC_HOSTED__ 937c478bd9Sstevel@tonic-gate #include <ctype.h> 947c478bd9Sstevel@tonic-gate #endif 957c478bd9Sstevel@tonic-gate 96*26f3cdf0SGordon Ross #define ACPI_CAST_PTHREAD_T(pthread) ((ACPI_THREAD_ID) ACPI_TO_INTEGER (pthread)) 977c478bd9Sstevel@tonic-gate 98*26f3cdf0SGordon Ross #define ACPI_USE_STANDARD_HEADERS 99aa2aa9a6SDana Myers 100*26f3cdf0SGordon Ross #define ACPI_FLUSH_CPU_CACHE() 101*26f3cdf0SGordon Ross #define __cdecl 1027c478bd9Sstevel@tonic-gate 1037c478bd9Sstevel@tonic-gate #endif /* _KERNEL */ 1047c478bd9Sstevel@tonic-gate 1057c478bd9Sstevel@tonic-gate #endif /* __ACFREEBSD_H__ */ 106