[BACK]Return to types.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / arch / i386 / include

Annotation of src/sys/arch/i386/include/types.h, Revision 1.45.16.9

1.45.16.9! yamt        1: /*     $NetBSD: types.h,v 1.45.16.8 2008/02/11 14:42:15 yamt Exp $     */
1.8       cgd         2:
1.1       cgd         3: /*-
                      4:  * Copyright (c) 1990 The Regents of the University of California.
                      5:  * All rights reserved.
                      6:  *
                      7:  * Redistribution and use in source and binary forms, with or without
                      8:  * modification, are permitted provided that the following conditions
                      9:  * are met:
                     10:  * 1. Redistributions of source code must retain the above copyright
                     11:  *    notice, this list of conditions and the following disclaimer.
                     12:  * 2. Redistributions in binary form must reproduce the above copyright
                     13:  *    notice, this list of conditions and the following disclaimer in the
                     14:  *    documentation and/or other materials provided with the distribution.
1.43      agc        15:  * 3. Neither the name of the University nor the names of its contributors
1.1       cgd        16:  *    may be used to endorse or promote products derived from this software
                     17:  *    without specific prior written permission.
                     18:  *
                     19:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     20:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     21:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     22:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     23:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     24:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     25:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     26:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     27:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     28:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     29:  * SUCH DAMAGE.
                     30:  *
1.8       cgd        31:  *     @(#)types.h     7.5 (Berkeley) 3/9/91
1.1       cgd        32:  */
                     33:
                     34: #ifndef        _MACHTYPES_H_
                     35: #define        _MACHTYPES_H_
1.9       christos   36:
1.45.16.6  yamt       37: #ifdef _KERNEL_OPT
                     38: #include "opt_xen.h"
                     39: #endif
1.9       christos   40: #include <sys/cdefs.h>
1.42      bjh21      41: #include <sys/featuretest.h>
1.26      takemura   42: #include <machine/int_types.h>
1.1       cgd        43:
1.17      kleink     44: #if defined(_KERNEL)
1.1       cgd        45: typedef struct label_t {
                     46:        int val[6];
                     47: } label_t;
1.11      cgd        48: #endif
1.1       cgd        49:
1.18      eeh        50: /* NB: This should probably be if defined(_KERNEL) */
1.42      bjh21      51: #if defined(_NETBSD_SOURCE)
1.45.16.7  yamt       52: #ifdef PAE
                     53: typedef unsigned long long paddr_t;
                     54: typedef unsigned long long psize_t;
                     55: #else
1.19      thorpej    56: typedef unsigned long  paddr_t;
                     57: typedef unsigned long  psize_t;
1.45.16.7  yamt       58: #endif /* PAE */
1.19      thorpej    59: typedef unsigned long  vaddr_t;
                     60: typedef unsigned long  vsize_t;
1.18      eeh        61: #endif
1.3       cgd        62:
1.31      briggs     63: typedef int            pmc_evid_t;
1.32      tron       64: typedef __uint64_t     pmc_ctr_t;
1.29      kleink     65: typedef int            register_t;
1.44      nathanw    66:
1.45.16.4  yamt       67: typedef        volatile unsigned char          __cpu_simple_lock_t;
                     68:
                     69: /* __cpu_simple_lock_t used to be a full word. */
                     70: #define        __CPU_SIMPLE_LOCK_PAD
1.44      nathanw    71:
                     72: #define        __SIMPLELOCK_LOCKED     1
                     73: #define        __SIMPLELOCK_UNLOCKED   0
1.1       cgd        74:
1.20      thorpej    75: /* The x86 does not have strict alignment requirements. */
                     76: #define        __NO_STRICT_ALIGNMENT
1.21      danw       77:
1.30      simonb     78: #define        __HAVE_DEVICE_REGISTER
                     79: #define        __HAVE_CPU_COUNTER
1.45.16.6  yamt       80: #define        __HAVE_MD_CPU_OFFLINE
1.25      mycroft    81: #define        __HAVE_SYSCALL_INTERN
                     82: #define        __HAVE_MINIMAL_EMUL
1.30      simonb     83: #define        __HAVE_OLD_DISKLABEL
1.45.16.6  yamt       84: #define        __HAVE_ATOMIC64_OPS
1.45.16.9! yamt       85: #define        __HAVE_ATOMIC_AS_MEMBAR
1.45      martin     86:
                     87: #if defined(_KERNEL)
1.39      fvdl       88: #define __HAVE_RAS
1.45      martin     89: #endif
1.16      drochner   90:
1.1       cgd        91: #endif /* _MACHTYPES_H_ */

CVSweb <webmaster@jp.NetBSD.org>