1/* Public domain. */ 2 3#ifndef _LINUX_TYPES_H 4#define _LINUX_TYPES_H 5 6#include <sys/types.h> 7#include <sys/stdint.h> 8/* 9 * sparc64 bus.h needs _null.h (indirect via param.h) 10 * sparc64 busop.h needs machine/ctlreg.h (indirect via param.h) 11 */ 12#include <sys/param.h> 13#include <machine/bus.h> 14 15typedef int8_t __s8; 16typedef uint8_t __u8; 17typedef int16_t __s16; 18typedef uint16_t __u16; 19typedef int32_t __s32; 20typedef uint32_t __u32; 21typedef int64_t __s64; 22typedef uint64_t __u64; 23 24typedef int8_t s8; 25typedef uint8_t u8; 26typedef int16_t s16; 27typedef uint16_t u16; 28typedef int32_t s32; 29typedef uint32_t u32; 30typedef int64_t s64; 31typedef uint64_t u64; 32 33typedef uint16_t __le16; 34typedef uint16_t __be16; 35typedef uint32_t __le32; 36typedef uint32_t __be32; 37typedef uint64_t __le64; 38typedef uint64_t __be64; 39 40typedef uint64_t dma_addr_t; 41typedef paddr_t phys_addr_t; 42typedef paddr_t resource_size_t; 43 44typedef off_t loff_t; 45 46typedef __ptrdiff_t ptrdiff_t; 47 48typedef unsigned int gfp_t; 49 50typedef unsigned long pgoff_t; 51typedef int pgprot_t; 52 53typedef int atomic_t; 54 55struct list_head { 56 struct list_head *next, *prev; 57}; 58 59struct hlist_node { 60 struct hlist_node *next, **prev; 61}; 62 63struct hlist_head { 64 struct hlist_node *first; 65}; 66 67#define DECLARE_BITMAP(x, y) unsigned long x[BITS_TO_LONGS(y)]; 68 69#define LINUX_PAGE_MASK (~PAGE_MASK) 70 71#endif /* _LINUX_TYPES_H_ */ 72