xref: /dpdk/drivers/common/ionic/ionic_osdep.h (revision 484027bf9452e784b2680ac4c2af3bb920ff6521)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright 2018-2024 Advanced Micro Devices, Inc.
3  */
4 
5 #ifndef _IONIC_OSDEP_
6 #define _IONIC_OSDEP_
7 
8 #include <stdint.h>
9 #include <stdarg.h>
10 
11 #include <rte_common.h>
12 #include <rte_io.h>
13 #include <rte_byteorder.h>
14 
15 #define BIT(nr)		(1UL << (nr))
16 #define BIT_ULL(nr)	(1ULL << (nr))
17 
18 #define __iomem
19 
20 typedef uint8_t  u8;
21 typedef uint16_t u16;
22 typedef uint32_t u32;
23 typedef uint64_t u64;
24 
25 #ifndef __le16
26 #define __le16 uint16_t
27 #endif
28 #ifndef __le32
29 #define __le32 uint32_t
30 #endif
31 #ifndef __le64
32 #define __le64 uint64_t
33 #endif
34 
35 #define ioread8(reg)		rte_read8(reg)
36 #define ioread32(reg)		rte_read32(rte_le_to_cpu_32(reg))
37 #define iowrite8(value, reg)	rte_write8(value, reg)
38 #define iowrite32(value, reg)	rte_write32(rte_cpu_to_le_32(value), reg)
39 
40 #endif /* _IONIC_OSDEP_ */
41