Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
byteorder.h
Go to the documentation of this file.
1
4
5/*
6 * Copyright (c) 2023 Nordic Semiconductor ASA
7 *
8 * SPDX-License-Identifier: Apache-2.0
9 */
10
11#ifndef ZEPHYR_INCLUDE_BLUETOOTH_BYTEORDER_H_
12#define ZEPHYR_INCLUDE_BLUETOOTH_BYTEORDER_H_
13
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27
38#define BT_BYTES_LIST_LE16(_v) \
39 (((_v) >> 0) & 0xFFU), \
40 (((_v) >> 8) & 0xFFU) \
41
42
52#define BT_BYTES_LIST_LE24(_v) \
53 BT_BYTES_LIST_LE16(_v), \
54 (((_v) >> 16) & 0xFFU) \
55
56
66#define BT_BYTES_LIST_LE32(_v) \
67 BT_BYTES_LIST_LE24(_v), \
68 (((_v) >> 24) & 0xFFU) \
69
70
80#define BT_BYTES_LIST_LE40(_v) \
81 BT_BYTES_LIST_LE24(_v), \
82 BT_BYTES_LIST_LE16((_v) >> 24) \
83
84
94#define BT_BYTES_LIST_LE48(_v) \
95 BT_BYTES_LIST_LE32(_v), \
96 BT_BYTES_LIST_LE16((_v) >> 32) \
97
98
108#define BT_BYTES_LIST_LE64(_v) \
109 BT_BYTES_LIST_LE32(_v), \
110 BT_BYTES_LIST_LE32((_v) >> 32) \
111
112
122#define BT_BYTES_LIST_BE16(_v) (((_v) >> 8) & 0xFFU), (((_v) >> 0) & 0xFFU)
123
134#define BT_BYTES_LIST_BE24(_v) (((_v) >> 16) & 0xFFU), BT_BYTES_LIST_BE16(_v)
135
146#define BT_BYTES_LIST_BE32(_v) (((_v) >> 24) & 0xFFU), BT_BYTES_LIST_BE24(_v)
147
158#define BT_BYTES_LIST_BE40(_v) BT_BYTES_LIST_BE16((_v) >> 24), BT_BYTES_LIST_BE24(_v)
159
170#define BT_BYTES_LIST_BE48(_v) BT_BYTES_LIST_BE16((_v) >> 32), BT_BYTES_LIST_BE32(_v)
171
182#define BT_BYTES_LIST_BE64(_v) BT_BYTES_LIST_BE32((_v) >> 32), BT_BYTES_LIST_BE32(_v)
183
187
188#ifdef __cplusplus
189}
190#endif
191
192#endif /* ZEPHYR_INCLUDE_BLUETOOTH_BYTEORDER_H_ */