Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
byteorder.h
Go to the documentation of this file.
1
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
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25
36#define BT_BYTES_LIST_LE16(_v) \
37 (((_v) >> 0) & 0xFFU), \
38 (((_v) >> 8) & 0xFFU) \
39
50#define BT_BYTES_LIST_LE24(_v) \
51 BT_BYTES_LIST_LE16(_v), \
52 (((_v) >> 16) & 0xFFU) \
53
64#define BT_BYTES_LIST_LE32(_v) \
65 BT_BYTES_LIST_LE24(_v), \
66 (((_v) >> 24) & 0xFFU) \
67
78#define BT_BYTES_LIST_LE40(_v) \
79 BT_BYTES_LIST_LE24(_v), \
80 BT_BYTES_LIST_LE16((_v) >> 24) \
81
92#define BT_BYTES_LIST_LE48(_v) \
93 BT_BYTES_LIST_LE32(_v), \
94 BT_BYTES_LIST_LE16((_v) >> 32) \
95
106#define BT_BYTES_LIST_LE64(_v) \
107 BT_BYTES_LIST_LE32(_v), \
108 BT_BYTES_LIST_LE32((_v) >> 32) \
109
120#define BT_BYTES_LIST_BE16(_v) (((_v) >> 8) & 0xFFU), (((_v) >> 0) & 0xFFU)
121
132#define BT_BYTES_LIST_BE24(_v) (((_v) >> 16) & 0xFFU), BT_BYTES_LIST_BE16(_v)
133
144#define BT_BYTES_LIST_BE32(_v) (((_v) >> 24) & 0xFFU), BT_BYTES_LIST_BE24(_v)
145
156#define BT_BYTES_LIST_BE40(_v) BT_BYTES_LIST_BE16((_v) >> 24), BT_BYTES_LIST_BE24(_v)
157
168#define BT_BYTES_LIST_BE48(_v) BT_BYTES_LIST_BE16((_v) >> 32), BT_BYTES_LIST_BE32(_v)
169
180#define BT_BYTES_LIST_BE64(_v) BT_BYTES_LIST_BE32((_v) >> 32), BT_BYTES_LIST_BE32(_v)
181
186#ifdef __cplusplus
187}
188#endif
189
190#endif /* ZEPHYR_INCLUDE_BLUETOOTH_BYTEORDER_H_ */