xref: /dpdk/drivers/raw/ifpga/base/osdep_rte/osdep_generic.h (revision fd51012de5369679e807be1d6a81d63ef15015ce)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2010-2018 Intel Corporation
3  */
4 
5 #ifndef _OSDEP_RTE_GENERIC_H
6 #define _OSDEP_RTE_GENERIC_H
7 
8 #include <stdlib.h>
9 
10 #include <rte_common.h>
11 #include <rte_cycles.h>
12 #include <rte_spinlock.h>
13 #include <rte_log.h>
14 #include <rte_io.h>
15 #include <rte_malloc.h>
16 #include <rte_byteorder.h>
17 #include <rte_memcpy.h>
18 
19 extern int ifpga_rawdev_logtype;
20 #define RTE_LOGTYPE_IFPGA_RAWDEV ifpga_rawdev_logtype
21 
22 #define dev_printf(level, fmt, ...) \
23 	RTE_LOG(level, IFPGA_RAWDEV, "osdep_rte: " fmt, ## __VA_ARGS__)
24 
25 #define osdep_panic(...) rte_panic(...)
26 
27 #define opae_udelay(x) rte_delay_us(x)
28 
29 #define opae_readb(addr) rte_read8(addr)
30 #define opae_readw(addr) rte_read16(addr)
31 #define opae_readl(addr) rte_read32(addr)
32 #define opae_readq(addr) rte_read64(addr)
33 #define opae_writeb(value, addr) rte_write8(value, addr)
34 #define opae_writew(value, addr) rte_write16(value, addr)
35 #define opae_writel(value, addr) rte_write32(value, addr)
36 #define opae_writeq(value, addr) rte_write64(value, addr)
37 
38 #define opae_malloc(size) rte_malloc(NULL, size, 0)
39 #define opae_zmalloc(size) rte_zmalloc(NULL, size, 0)
40 #define opae_free(addr) rte_free(addr)
41 
42 #define ARRAY_SIZE(arr) RTE_DIM(arr)
43 
44 #define min(a, b) RTE_MIN(a, b)
45 #define max(a, b) RTE_MAX(a, b)
46 
47 #define min_t(type, x, y) RTE_MIN_T(x, y, type)
48 #define max_t(type, x, y) RTE_MAX_T(x, y, type)
49 
50 #define spinlock_t rte_spinlock_t
51 #define spinlock_init(x) rte_spinlock_init(x)
52 #define spinlock_lock(x) rte_spinlock_lock(x)
53 #define spinlock_unlock(x) rte_spinlock_unlock(x)
54 
55 #define cpu_to_be16(o) rte_cpu_to_be_16(o)
56 #define cpu_to_be32(o) rte_cpu_to_be_32(o)
57 #define cpu_to_be64(o) rte_cpu_to_be_64(o)
58 #define cpu_to_le16(o) rte_cpu_to_le_16(o)
59 #define cpu_to_le32(o) rte_cpu_to_le_32(o)
60 #define cpu_to_le64(o) rte_cpu_to_le_64(o)
61 
62 #define opae_memcpy(a, b, c) rte_memcpy((a), (b), (c))
63 
64 static inline unsigned long msecs_to_timer_cycles(unsigned int m)
65 {
66 	return rte_get_timer_hz() * (m / 1000);
67 }
68 
69 #endif
70