New upstream version 18.08
[deb_dpdk.git] / drivers / raw / ifpga_rawdev / base / opae_osdep.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2010-2018 Intel Corporation
3  */
4
5 #ifndef _OPAE_OSDEP_H
6 #define _OPAE_OSDEP_H
7
8 #include <string.h>
9 #include <stdbool.h>
10
11 #ifdef RTE_LIBRTE_EAL
12 #include "osdep_rte/osdep_generic.h"
13 #else
14 #include "osdep_raw/osdep_generic.h"
15 #endif
16
17 #define __iomem
18
19 typedef uint8_t         u8;
20 typedef int8_t          s8;
21 typedef uint16_t        u16;
22 typedef uint32_t        u32;
23 typedef int32_t         s32;
24 typedef uint64_t        u64;
25 typedef uint64_t        dma_addr_t;
26
27 struct uuid {
28         u8 b[16];
29 };
30
31 #ifndef LINUX_MACROS
32 #ifndef BITS_PER_LONG
33 #define BITS_PER_LONG   (__SIZEOF_LONG__ * 8)
34 #endif
35 #ifndef BIT
36 #define BIT(a) (1UL << (a))
37 #endif /* BIT */
38 #ifndef BIT_ULL
39 #define BIT_ULL(a) (1ULL << (a))
40 #endif /* BIT_ULL */
41 #ifndef GENMASK
42 #define GENMASK(h, l)   (((~0UL) << (l)) & (~0UL >> (BITS_PER_LONG - 1 - (h))))
43 #endif /* GENMASK */
44 #ifndef GENMASK_ULL
45 #define GENMASK_ULL(h, l) (((U64_C(1) << ((h) - (l) + 1)) - 1) << (l))
46 #endif /* GENMASK_ULL */
47 #endif /* LINUX_MACROS */
48
49 #define SET_FIELD(m, v) (((v) << (__builtin_ffsll(m) - 1)) & (m))
50 #define GET_FIELD(m, v) (((v) & (m)) >> (__builtin_ffsll(m) - 1))
51
52 #define dev_err(x, args...) dev_printf(ERR, args)
53 #define dev_info(x, args...) dev_printf(INFO, args)
54 #define dev_warn(x, args...) dev_printf(WARNING, args)
55
56 #ifdef OPAE_DEBUG
57 #define dev_debug(x, args...) dev_printf(DEBUG, args)
58 #else
59 #define dev_debug(x, args...) do { } while (0)
60 #endif
61
62 #define pr_err(y, args...) dev_err(0, y, ##args)
63 #define pr_warn(y, args...) dev_warn(0, y, ##args)
64 #define pr_info(y, args...) dev_info(0, y, ##args)
65
66 #ifndef WARN_ON
67 #define WARN_ON(x) do { \
68         int ret = !!(x); \
69         if (unlikely(ret)) \
70                 pr_warn("WARN_ON: \"" #x "\" at %s:%d\n", __func__, __LINE__); \
71 } while (0)
72 #endif
73
74 #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
75 #define udelay(x) opae_udelay(x)
76 #define msleep(x) opae_udelay(1000 * (x))
77 #define usleep_range(min, max) msleep(DIV_ROUND_UP(min, 1000))
78
79 #endif