Zephyr Project API  3.4.0
A Scalable Open Source RTOS
dfu.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2020 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_INCLUDE_BLUETOOTH_MESH_DFU_H__
8#define ZEPHYR_INCLUDE_BLUETOOTH_MESH_DFU_H__
9
10#include <sys/types.h>
11
12#include <zephyr/kernel.h>
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
25#ifndef CONFIG_BT_MESH_DFU_FWID_MAXLEN
26#define CONFIG_BT_MESH_DFU_FWID_MAXLEN 0
27#endif
28
29#ifndef CONFIG_BT_MESH_DFU_METADATA_MAXLEN
30#define CONFIG_BT_MESH_DFU_METADATA_MAXLEN 0
31#endif
32
33#ifndef CONFIG_BT_MESH_DFU_URI_MAXLEN
34#define CONFIG_BT_MESH_DFU_URI_MAXLEN 0
35#endif
36
41
44
47
50
53
56
59
62
65
68
75};
76
77
82
85
90
93
96
99
102
105};
106
111
116
122
125};
126
131
134};
135
142 const void *fwid;
143
145 size_t fwid_len;
146
151 const char *uri;
152};
153
157 size_t size;
159 size_t fwid_len;
163 size_t uri_len;
170};
171
174#ifdef __cplusplus
175}
176#endif
177
178#endif /* ZEPHYR_INCLUDE_BLUETOOTH_MESH_DFU_H__ */
bt_mesh_dfu_iter
Definition: dfu.h:128
#define CONFIG_BT_MESH_DFU_METADATA_MAXLEN
Definition: dfu.h:30
bt_mesh_dfu_phase
Definition: dfu.h:38
bt_mesh_dfu_status
Definition: dfu.h:79
#define CONFIG_BT_MESH_DFU_URI_MAXLEN
Definition: dfu.h:34
#define CONFIG_BT_MESH_DFU_FWID_MAXLEN
Definition: dfu.h:26
bt_mesh_dfu_effect
Definition: dfu.h:108
@ BT_MESH_DFU_ITER_CONTINUE
Definition: dfu.h:133
@ BT_MESH_DFU_ITER_STOP
Definition: dfu.h:130
@ BT_MESH_DFU_PHASE_TRANSFER_ACTIVE
Definition: dfu.h:46
@ BT_MESH_DFU_PHASE_UNKNOWN
Definition: dfu.h:74
@ BT_MESH_DFU_PHASE_VERIFY
Definition: dfu.h:49
@ BT_MESH_DFU_PHASE_IDLE
Definition: dfu.h:40
@ BT_MESH_DFU_PHASE_TRANSFER_ERR
Definition: dfu.h:43
@ BT_MESH_DFU_PHASE_APPLY_FAIL
Definition: dfu.h:67
@ BT_MESH_DFU_PHASE_APPLY_SUCCESS
Definition: dfu.h:64
@ BT_MESH_DFU_PHASE_VERIFY_OK
Definition: dfu.h:52
@ BT_MESH_DFU_PHASE_APPLYING
Definition: dfu.h:58
@ BT_MESH_DFU_PHASE_VERIFY_FAIL
Definition: dfu.h:55
@ BT_MESH_DFU_PHASE_TRANSFER_CANCELED
Definition: dfu.h:61
@ BT_MESH_DFU_ERR_WRONG_PHASE
Definition: dfu.h:89
@ BT_MESH_DFU_ERR_FW_IDX
Definition: dfu.h:95
@ BT_MESH_DFU_ERR_INTERNAL
Definition: dfu.h:92
@ BT_MESH_DFU_ERR_TEMPORARILY_UNAVAILABLE
Definition: dfu.h:101
@ BT_MESH_DFU_ERR_METADATA
Definition: dfu.h:98
@ BT_MESH_DFU_ERR_RESOURCES
Definition: dfu.h:84
@ BT_MESH_DFU_ERR_BLOB_XFER_BUSY
Definition: dfu.h:104
@ BT_MESH_DFU_SUCCESS
Definition: dfu.h:81
@ BT_MESH_DFU_EFFECT_COMP_CHANGE
Definition: dfu.h:121
@ BT_MESH_DFU_EFFECT_UNPROV
Definition: dfu.h:124
@ BT_MESH_DFU_EFFECT_COMP_CHANGE_NO_RPR
Definition: dfu.h:115
@ BT_MESH_DFU_EFFECT_NONE
Definition: dfu.h:110
Public kernel APIs.
__UINT8_TYPE__ uint8_t
Definition: stdint.h:88
Definition: dfu.h:140
const char * uri
Definition: dfu.h:151
size_t fwid_len
Definition: dfu.h:145
const void * fwid
Definition: dfu.h:142
Definition: dfu.h:155
char uri[0]
Definition: dfu.h:169
size_t size
Definition: dfu.h:157
size_t fwid_len
Definition: dfu.h:159
size_t uri_len
Definition: dfu.h:163
uint8_t fwid[0]
Definition: dfu.h:165
uint8_t metadata[0]
Definition: dfu.h:167
size_t metadata_len
Definition: dfu.h:161