nrfxlib API
3.4.99
Toggle main menu visibility
Loading...
Searching...
No Matches
osal_packed.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2018-2021 T2 Software, Inc. All rights reserved.
3
*
4
* SPDX-License-Identifier: LicenseRef-T2-LC3
5
*/
6
7
#ifndef __OSAL_PACKED_H__
8
#define __OSAL_PACKED_H__
9
10
#include "
osal.h
"
11
12
#define READ_LE_8(_x) (((uint8_t )(((uint8_t *)(_x))[0] << 0x00)))
13
#define READ_LE_16(_x) (((uint16_t)(((uint8_t *)(_x))[0] << 0x00)) | \
14
((uint16_t)(((uint8_t *)(_x))[1] << 0x08)))
15
#define READ_LE_32(_x) (((uint32_t)(((uint8_t *)(_x))[0] << 0x00)) | \
16
((uint32_t)(((uint8_t *)(_x))[1] << 0x08)) | \
17
((uint32_t)(((uint8_t *)(_x))[2] << 0x10)) | \
18
((uint32_t)(((uint8_t *)(_x))[3] << 0x18)))
19
#define READ_LE_64(_x) (((uint64_t)(((uint8_t *)(_x))[0] << 0x00)) | \
20
((uint64_t)(((uint8_t *)(_x))[1] << 0x08)) | \
21
((uint64_t)(((uint8_t *)(_x))[2] << 0x10)) | \
22
((uint64_t)(((uint8_t *)(_x))[3] << 0x18)) | \
23
((uint64_t)(((uint8_t *)(_x))[4] << 0x20)) | \
24
((uint64_t)(((uint8_t *)(_x))[5] << 0x28)) | \
25
((uint64_t)(((uint8_t *)(_x))[6] << 0x30)) | \
26
((uint64_t)(((uint8_t *)(_x))[7] << 0x38)))
27
28
#define WRITE_LE_8(_x, _y) do { \
29
((uint8_t *)(_x))[0] = (((uint8_t )(_y)) >> 0x00) & 0xFF; \
30
} while(0)
31
#define WRITE_LE_16(_x, _y) do { \
32
((uint8_t *)(_x))[0] = (((uint16_t)(_y)) >> 0x00) & 0xFF; \
33
((uint8_t *)(_x))[1] = (((uint16_t)(_y)) >> 0x08) & 0xFF; \
34
} while(0)
35
#define WRITE_LE_32(_x, _y) do { \
36
((uint8_t *)(_x))[0] = (((uint32_t)(_y)) >> 0x00) & 0xFF; \
37
((uint8_t *)(_x))[1] = (((uint32_t)(_y)) >> 0x08) & 0xFF; \
38
((uint8_t *)(_x))[2] = (((uint32_t)(_y)) >> 0x10) & 0xFF; \
39
((uint8_t *)(_x))[3] = (((uint32_t)(_y)) >> 0x18) & 0xFF; \
40
} while(0)
41
#define WRITE_LE_64(_x, _y) do { \
42
((uint8_t *)(_x))[0] = (((uint32_t)(_y)) >> 0x00) & 0xFF; \
43
((uint8_t *)(_x))[1] = (((uint32_t)(_y)) >> 0x08) & 0xFF; \
44
((uint8_t *)(_x))[2] = (((uint32_t)(_y)) >> 0x10) & 0xFF; \
45
((uint8_t *)(_x))[3] = (((uint32_t)(_y)) >> 0x18) & 0xFF; \
46
((uint8_t *)(_x))[4] = (((uint32_t)(_y)) >> 0x20) & 0xFF; \
47
((uint8_t *)(_x))[5] = (((uint32_t)(_y)) >> 0x28) & 0xFF; \
48
((uint8_t *)(_x))[6] = (((uint32_t)(_y)) >> 0x30) & 0xFF; \
49
((uint8_t *)(_x))[7] = (((uint32_t)(_y)) >> 0x38) & 0xFF; \
50
} while(0)
51
52
#endif
// __OSAL_PACKED_H__
osal.h
lc3
platform
os
inc
osal_packed.h
Generated on
for nrfxlib API by
1.17.0