Annotation of embedaddon/pciutils/lib/types.h, revision 1.1.1.1

1.1       misho       1: /*
                      2:  *     The PCI Library -- Types and Format Strings
                      3:  *
                      4:  *     Copyright (c) 1997--2008 Martin Mares <mj@ucw.cz>
                      5:  *
                      6:  *     Can be freely distributed and used under the terms of the GNU GPL.
                      7:  */
                      8: 
                      9: #include <sys/types.h>
                     10: 
                     11: #ifndef PCI_HAVE_Uxx_TYPES
                     12: 
                     13: #ifdef PCI_OS_WINDOWS
                     14: #include <windef.h>
                     15: typedef BYTE u8;
                     16: typedef WORD u16;
                     17: typedef DWORD u32;
                     18: #elif defined(PCI_HAVE_STDINT_H) || (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L)
                     19: #include <stdint.h>
                     20: typedef uint8_t u8;
                     21: typedef uint16_t u16;
                     22: typedef uint32_t u32;
                     23: #else
                     24: typedef u_int8_t u8;
                     25: typedef u_int16_t u16;
                     26: typedef u_int32_t u32;
                     27: #endif
                     28: 
                     29: #ifdef PCI_HAVE_64BIT_ADDRESS
                     30: #include <limits.h>
                     31: #if ULONG_MAX > 0xffffffff
                     32: typedef unsigned long u64;
                     33: #define PCI_U64_FMT "l"
                     34: #else
                     35: typedef unsigned long long u64;
                     36: #define PCI_U64_FMT "ll"
                     37: #endif
                     38: #endif
                     39: 
                     40: #endif /* PCI_HAVE_Uxx_TYPES */
                     41: 
                     42: #ifdef PCI_HAVE_64BIT_ADDRESS
                     43: typedef u64 pciaddr_t;
                     44: #define PCIADDR_T_FMT "%08" PCI_U64_FMT "x"
                     45: #define PCIADDR_PORT_FMT "%04" PCI_U64_FMT "x"
                     46: #else
                     47: typedef u32 pciaddr_t;
                     48: #define PCIADDR_T_FMT "%08x"
                     49: #define PCIADDR_PORT_FMT "%04x"
                     50: #endif
                     51: 
                     52: #ifdef PCI_ARCH_SPARC64
                     53: /* On sparc64 Linux the kernel reports remapped port addresses and IRQ numbers */
                     54: #undef PCIADDR_PORT_FMT
                     55: #define PCIADDR_PORT_FMT PCIADDR_T_FMT
                     56: #define PCIIRQ_FMT "%08x"
                     57: #else
                     58: #define PCIIRQ_FMT "%d"
                     59: #endif
                     60: 
                     61: #if defined(__GNUC__) && __GNUC__ > 2
                     62: #define PCI_PRINTF(x,y) __attribute__((format(printf, x, y)))
                     63: #else
                     64: #define PCI_PRINTF(x,y)
                     65: #endif

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>