Annotation of embedaddon/pciutils/lib/types.h, revision 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>