Enable DFU

This commit is contained in:
me-no-dev 2023-04-20 01:06:02 +03:00
parent bdbfc45ce2
commit 16cee61dc8
33 changed files with 259 additions and 5 deletions

View file

@ -16,6 +16,17 @@ extern "C"
{
#endif
/**
@brief Enumeration of ESP Secure Certificate key types.
*/
typedef enum key_type {
ESP_SECURE_CERT_INVALID_KEY = -1, /* Invalid key */
ESP_SECURE_CERT_DEFAULT_FORMAT_KEY, /* Key type for the key in default format */
ESP_SECURE_CERT_HMAC_ENCRYPTED_KEY, /* Encrypted key type */
ESP_SECURE_CERT_HMAC_DERIVED_ECDSA_KEY, /* HMAC-derived ECDSA key type. */
ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY, /* ECDSA peripheral key type. */
} esp_secure_cert_key_type_t;
/* @info
* Init the esp_secure_cert nvs partition
*
@ -115,6 +126,8 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
* The esp_secure_cert_free_priv_key API needs to be called in order to free the memory.
* The API shall only free the memory if it has been dynamically allocated.
*
* The private key(buffer) shall be returned as NULL when private key type is ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY.
*
* @params
* - buffer(out) This value shall be filled with the private key address
* on successful completion
@ -128,6 +141,23 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
*/
esp_err_t esp_secure_cert_get_priv_key(char **buffer, uint32_t *len);
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the private key type from the esp_secure_cert partition
*
* @note
* The API is only supported for the TLV format
*
* @params
* - priv_key_type(in/out) Pointer to store the obtained key type
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_type(esp_secure_cert_key_type_t *priv_key_type);
#endif
/*
* Free any internally allocated resources for the priv key.
* @note
@ -157,9 +187,27 @@ esp_ds_data_ctx_t *esp_secure_cert_get_ds_ctx(void);
*@info
* Free the ds context
*/
void esp_secure_cert_free_ds_ctx(esp_ds_data_ctx_t *ds_ctx);
#endif /* CONFIG_ESP_SECURE_CERT_DS_PERIPHERAL */
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the efuse key block id in which the private key is stored.
* @note
* The API is only supported for the TLV format.
* For now only ECDSA type of private key can be stored in the eFuse key blocks
*
* @params
* - efuse_key_id(in/out) Pointer to store the obtained key id
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_efuse_id(uint8_t *efuse_key_id);
#endif
#ifdef __cplusplus
}
#endif

File diff suppressed because one or more lines are too long

Binary file not shown.

View file

@ -16,6 +16,17 @@ extern "C"
{
#endif
/**
@brief Enumeration of ESP Secure Certificate key types.
*/
typedef enum key_type {
ESP_SECURE_CERT_INVALID_KEY = -1, /* Invalid key */
ESP_SECURE_CERT_DEFAULT_FORMAT_KEY, /* Key type for the key in default format */
ESP_SECURE_CERT_HMAC_ENCRYPTED_KEY, /* Encrypted key type */
ESP_SECURE_CERT_HMAC_DERIVED_ECDSA_KEY, /* HMAC-derived ECDSA key type. */
ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY, /* ECDSA peripheral key type. */
} esp_secure_cert_key_type_t;
/* @info
* Init the esp_secure_cert nvs partition
*
@ -115,6 +126,8 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
* The esp_secure_cert_free_priv_key API needs to be called in order to free the memory.
* The API shall only free the memory if it has been dynamically allocated.
*
* The private key(buffer) shall be returned as NULL when private key type is ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY.
*
* @params
* - buffer(out) This value shall be filled with the private key address
* on successful completion
@ -128,6 +141,23 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
*/
esp_err_t esp_secure_cert_get_priv_key(char **buffer, uint32_t *len);
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the private key type from the esp_secure_cert partition
*
* @note
* The API is only supported for the TLV format
*
* @params
* - priv_key_type(in/out) Pointer to store the obtained key type
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_type(esp_secure_cert_key_type_t *priv_key_type);
#endif
/*
* Free any internally allocated resources for the priv key.
* @note
@ -157,9 +187,27 @@ esp_ds_data_ctx_t *esp_secure_cert_get_ds_ctx(void);
*@info
* Free the ds context
*/
void esp_secure_cert_free_ds_ctx(esp_ds_data_ctx_t *ds_ctx);
#endif /* CONFIG_ESP_SECURE_CERT_DS_PERIPHERAL */
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the efuse key block id in which the private key is stored.
* @note
* The API is only supported for the TLV format.
* For now only ECDSA type of private key can be stored in the eFuse key blocks
*
* @params
* - efuse_key_id(in/out) Pointer to store the obtained key id
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_efuse_id(uint8_t *efuse_key_id);
#endif
#ifdef __cplusplus
}
#endif

File diff suppressed because one or more lines are too long

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -64,6 +64,10 @@ extern "C" {
# define CONFIG_TINYUSB_DFU_RT_ENABLED 0
#endif
#ifndef CONFIG_TINYUSB_DFU_ENABLED
# define CONFIG_TINYUSB_DFU_ENABLED 0
#endif
#ifndef CONFIG_TINYUSB_VENDOR_ENABLED
# define CONFIG_TINYUSB_VENDOR_ENABLED 0
#endif
@ -106,6 +110,7 @@ extern "C" {
#define CFG_TUD_VIDEO CONFIG_TINYUSB_VIDEO_ENABLED
#define CFG_TUD_CUSTOM_CLASS CONFIG_TINYUSB_CUSTOM_CLASS_ENABLED
#define CFG_TUD_DFU_RUNTIME CONFIG_TINYUSB_DFU_RT_ENABLED
#define CFG_TUD_DFU CONFIG_TINYUSB_DFU_ENABLED
#define CFG_TUD_VENDOR CONFIG_TINYUSB_VENDOR_ENABLED
// CDC FIFO size of TX and RX
@ -126,6 +131,9 @@ extern "C" {
#define CFG_TUD_VIDEO_STREAMING CONFIG_TINYUSB_VIDEO_STREAMING_IFS
#define CFG_TUD_VIDEO_STREAMING_EP_BUFSIZE CONFIG_TINYUSB_VIDEO_STREAMING_BUFSIZE
// DFU buffer size
#define CFG_TUD_DFU_XFER_BUFSIZE CONFIG_TINYUSB_DFU_BUFSIZE
// VENDOR FIFO size of TX and RX
#define CFG_TUD_VENDOR_RX_BUFSIZE CONFIG_TINYUSB_VENDOR_RX_BUFSIZE
#define CFG_TUD_VENDOR_TX_BUFSIZE CONFIG_TINYUSB_VENDOR_TX_BUFSIZE

View file

@ -16,6 +16,17 @@ extern "C"
{
#endif
/**
@brief Enumeration of ESP Secure Certificate key types.
*/
typedef enum key_type {
ESP_SECURE_CERT_INVALID_KEY = -1, /* Invalid key */
ESP_SECURE_CERT_DEFAULT_FORMAT_KEY, /* Key type for the key in default format */
ESP_SECURE_CERT_HMAC_ENCRYPTED_KEY, /* Encrypted key type */
ESP_SECURE_CERT_HMAC_DERIVED_ECDSA_KEY, /* HMAC-derived ECDSA key type. */
ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY, /* ECDSA peripheral key type. */
} esp_secure_cert_key_type_t;
/* @info
* Init the esp_secure_cert nvs partition
*
@ -115,6 +126,8 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
* The esp_secure_cert_free_priv_key API needs to be called in order to free the memory.
* The API shall only free the memory if it has been dynamically allocated.
*
* The private key(buffer) shall be returned as NULL when private key type is ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY.
*
* @params
* - buffer(out) This value shall be filled with the private key address
* on successful completion
@ -128,6 +141,23 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
*/
esp_err_t esp_secure_cert_get_priv_key(char **buffer, uint32_t *len);
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the private key type from the esp_secure_cert partition
*
* @note
* The API is only supported for the TLV format
*
* @params
* - priv_key_type(in/out) Pointer to store the obtained key type
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_type(esp_secure_cert_key_type_t *priv_key_type);
#endif
/*
* Free any internally allocated resources for the priv key.
* @note
@ -157,9 +187,27 @@ esp_ds_data_ctx_t *esp_secure_cert_get_ds_ctx(void);
*@info
* Free the ds context
*/
void esp_secure_cert_free_ds_ctx(esp_ds_data_ctx_t *ds_ctx);
#endif /* CONFIG_ESP_SECURE_CERT_DS_PERIPHERAL */
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the efuse key block id in which the private key is stored.
* @note
* The API is only supported for the TLV format.
* For now only ECDSA type of private key can be stored in the eFuse key blocks
*
* @params
* - efuse_key_id(in/out) Pointer to store the obtained key id
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_efuse_id(uint8_t *efuse_key_id);
#endif
#ifdef __cplusplus
}
#endif

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -308,6 +308,14 @@ CONFIG_TINYUSB_DFU_RT_ENABLED=y
CONFIG_TINYUSB_DESC_DFU_RT_STRING="Espressif DFU_RT Device"
# end of DFU Runtime driver
#
# DFU driver
#
CONFIG_TINYUSB_DFU_ENABLED=y
CONFIG_TINYUSB_DESC_DFU_STRING="Espressif DFU Device"
CONFIG_TINYUSB_DFU_BUFSIZE=4096
# end of DFU driver
#
# VENDOR driver
#

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -64,6 +64,10 @@ extern "C" {
# define CONFIG_TINYUSB_DFU_RT_ENABLED 0
#endif
#ifndef CONFIG_TINYUSB_DFU_ENABLED
# define CONFIG_TINYUSB_DFU_ENABLED 0
#endif
#ifndef CONFIG_TINYUSB_VENDOR_ENABLED
# define CONFIG_TINYUSB_VENDOR_ENABLED 0
#endif
@ -106,6 +110,7 @@ extern "C" {
#define CFG_TUD_VIDEO CONFIG_TINYUSB_VIDEO_ENABLED
#define CFG_TUD_CUSTOM_CLASS CONFIG_TINYUSB_CUSTOM_CLASS_ENABLED
#define CFG_TUD_DFU_RUNTIME CONFIG_TINYUSB_DFU_RT_ENABLED
#define CFG_TUD_DFU CONFIG_TINYUSB_DFU_ENABLED
#define CFG_TUD_VENDOR CONFIG_TINYUSB_VENDOR_ENABLED
// CDC FIFO size of TX and RX
@ -126,6 +131,9 @@ extern "C" {
#define CFG_TUD_VIDEO_STREAMING CONFIG_TINYUSB_VIDEO_STREAMING_IFS
#define CFG_TUD_VIDEO_STREAMING_EP_BUFSIZE CONFIG_TINYUSB_VIDEO_STREAMING_BUFSIZE
// DFU buffer size
#define CFG_TUD_DFU_XFER_BUFSIZE CONFIG_TINYUSB_DFU_BUFSIZE
// VENDOR FIFO size of TX and RX
#define CFG_TUD_VENDOR_RX_BUFSIZE CONFIG_TINYUSB_VENDOR_RX_BUFSIZE
#define CFG_TUD_VENDOR_TX_BUFSIZE CONFIG_TINYUSB_VENDOR_TX_BUFSIZE

View file

@ -16,6 +16,17 @@ extern "C"
{
#endif
/**
@brief Enumeration of ESP Secure Certificate key types.
*/
typedef enum key_type {
ESP_SECURE_CERT_INVALID_KEY = -1, /* Invalid key */
ESP_SECURE_CERT_DEFAULT_FORMAT_KEY, /* Key type for the key in default format */
ESP_SECURE_CERT_HMAC_ENCRYPTED_KEY, /* Encrypted key type */
ESP_SECURE_CERT_HMAC_DERIVED_ECDSA_KEY, /* HMAC-derived ECDSA key type. */
ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY, /* ECDSA peripheral key type. */
} esp_secure_cert_key_type_t;
/* @info
* Init the esp_secure_cert nvs partition
*
@ -115,6 +126,8 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
* The esp_secure_cert_free_priv_key API needs to be called in order to free the memory.
* The API shall only free the memory if it has been dynamically allocated.
*
* The private key(buffer) shall be returned as NULL when private key type is ESP_SECURE_CERT_ECDSA_PERIPHERAL_KEY.
*
* @params
* - buffer(out) This value shall be filled with the private key address
* on successful completion
@ -128,6 +141,23 @@ esp_err_t esp_secure_cert_free_ca_cert(char *buffer);
*/
esp_err_t esp_secure_cert_get_priv_key(char **buffer, uint32_t *len);
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the private key type from the esp_secure_cert partition
*
* @note
* The API is only supported for the TLV format
*
* @params
* - priv_key_type(in/out) Pointer to store the obtained key type
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_type(esp_secure_cert_key_type_t *priv_key_type);
#endif
/*
* Free any internally allocated resources for the priv key.
* @note
@ -157,9 +187,27 @@ esp_ds_data_ctx_t *esp_secure_cert_get_ds_ctx(void);
*@info
* Free the ds context
*/
void esp_secure_cert_free_ds_ctx(esp_ds_data_ctx_t *ds_ctx);
#endif /* CONFIG_ESP_SECURE_CERT_DS_PERIPHERAL */
#ifndef CONFIG_ESP_SECURE_CERT_SUPPORT_LEGACY_FORMATS
/* @info
* Get the efuse key block id in which the private key is stored.
* @note
* The API is only supported for the TLV format.
* For now only ECDSA type of private key can be stored in the eFuse key blocks
*
* @params
* - efuse_key_id(in/out) Pointer to store the obtained key id
* @return
* - ESP_OK On success
* - ESP_FAIL/other relevant esp error code
* On failure
*/
esp_err_t esp_secure_cert_get_priv_key_efuse_id(uint8_t *efuse_key_id);
#endif
#ifdef __cplusplus
}
#endif

View file

@ -121,6 +121,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

File diff suppressed because one or more lines are too long

View file

@ -121,6 +121,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -120,6 +120,9 @@
#define CONFIG_TINYUSB_VIDEO_STREAMING_IFS 1
#define CONFIG_TINYUSB_DFU_RT_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_RT_STRING "Espressif DFU_RT Device"
#define CONFIG_TINYUSB_DFU_ENABLED 1
#define CONFIG_TINYUSB_DESC_DFU_STRING "Espressif DFU Device"
#define CONFIG_TINYUSB_DFU_BUFSIZE 4096
#define CONFIG_TINYUSB_VENDOR_ENABLED 1
#define CONFIG_TINYUSB_DESC_VENDOR_STRING "Espressif VENDOR Device"
#define CONFIG_TINYUSB_VENDOR_RX_BUFSIZE 64

View file

@ -366,8 +366,8 @@ SECTIONS
*(.ext_ram.bss*)
*(EXCLUDE_FILE(*libbt.a *libbtdm_app.a *libnimble.a) .bss EXCLUDE_FILE(*libbt.a *libbtdm_app.a *libnimble.a) .bss.*)
*(.ext_ram.bss .ext_ram.bss.*)
*(.dynbss .dynsbss .gnu.linkonce.b .gnu.linkonce.b.* .gnu.linkonce.sb .gnu.linkonce.sb.* .gnu.linkonce.sb2 .gnu.linkonce.sb2.* .sbss .sbss.* .sbss2 .sbss2.* .scommon .share.mem)
*(.ext_ram.bss .ext_ram.bss.*)
*(EXCLUDE_FILE(*libbt.a *libbtdm_app.a *libnimble.a) COMMON)
. = ALIGN(4);
_bt_bss_start = ABSOLUTE(.);

View file

@ -318,6 +318,14 @@ CONFIG_TINYUSB_DFU_RT_ENABLED=y
CONFIG_TINYUSB_DESC_DFU_RT_STRING="Espressif DFU_RT Device"
# end of DFU Runtime driver
#
# DFU driver
#
CONFIG_TINYUSB_DFU_ENABLED=y
CONFIG_TINYUSB_DESC_DFU_STRING="Espressif DFU Device"
CONFIG_TINYUSB_DFU_BUFSIZE=4096
# end of DFU driver
#
# VENDOR driver
#

View file

@ -1,5 +1,5 @@
esp-idf: v4.4.4 e8bdaf9198
arduino: release/v2.x 2d7218b8
arduino: release/v2.x bdbfc45c
esp-dl: master 0632d24
esp-insights: main d8b2dfc
esp-rainmaker: master cc861bf