Go to the documentation of this file.
48 #ifndef __GR55XX_DFU_H__
49 #define __GR55XX_DFU_H__
56 #define DFU_ADV_MAX_LENGTH 18
57 #define HEADER_MAX_LEN 20
58 #define RECEIVE_MAX_LEN (1024 * 8 + HEADER_MAX_LEN)
62 #define DFU_WRITE_RAM_DISABLE 0x0001
63 #define DFU_READ_RAM_DISABLE 0x0002
64 #define DFU_DUMP_FLASH_DISABLE 0x0004
65 #define DFU_ERASE_FLASH_DISABLE 0x0008
66 #define DFU_UPDAE_FLASH_DISABLE 0x0010
67 #define DFU_OPERATE_SYSTEM_INFO_DISABLE 0x0020
68 #define DFU_OPERATE_NVDS_DISABLE 0x0040
69 #define DFU_OPERATE_EFUSE_DISABLE 0x0080
70 #define DFU_CONFIG_SPI_FLASH_DISABLE 0x0100
71 #define DFU_OPERATE_REG_DISABLE 0x0200
198 void (*dfu_ble_send_data)(uint8_t *p_data, uint16_t length);
199 void (*dfu_uart_send_data)(uint8_t *p_data, uint16_t length);
200 uint32_t (*dfu_flash_read)(
const uint32_t addr, uint8_t *p_buf,
const uint32_t size);
201 uint32_t (*dfu_flash_write)(
const uint32_t addr,
const uint8_t *p_buf,
const uint32_t size);
202 bool (*dfu_flash_erase)(
const uint32_t addr,
const uint32_t size);
203 bool (*dfu_flash_erase_chip)(void);
204 void (*dfu_flash_set_security)(
bool enable);
205 bool (*dfu_flash_get_security)(void);
206 void (*dfu_flash_get_info)(uint32_t *id, uint32_t *size);
207 uint32_t (*dfu_flash_feat_enable)(uint32_t feature);
221 void (*dfu_spi_flash_init)(uint8_t *p_data);
222 uint32_t (*dfu_spi_flash_read)(uint32_t addr, uint8_t *buf, uint32_t size);
223 uint32_t (*dfu_spi_flash_write)(uint32_t addr, uint8_t *buf, uint32_t size);
224 bool (*dfu_spi_flash_erase)(uint32_t addr, uint32_t size);
225 bool (*dfu_spi_flash_erase_chip)(void);
226 void (*dfu_spi_flash_get_info)(uint32_t *id, uint32_t *size);
233 void (*dfu_program_start_callback)(void);
234 void (*dfu_programing_callback)(uint8_t pro);
235 void (*dfu_program_end_callback)(uint8_t status);
dfu_uart_pin_group_t pin_group
#define DFU_ADV_MAX_LENGTH
void dfu_set_disable_cmd(uint16_t disable_cmd_bit_map)
Function for set DFU disable cmd.
DFU used functions config definition.
void dfu_ble_receive_data_process(uint8_t *p_data, uint16_t length)
This function should be called when BLE receives data.
DFU uart config definition.
void dfu_uart_receive_data_process(uint8_t *p_data, uint16_t length)
This function should be called when UART receives data.
void dfu_start_jump(uint32_t start_addr)
Function for jumping to address to run.
uint16_t rec_data_buffer_size
DFU NVDS init info definition.
dfu_uart_parity_bit_t parity
dfu_uart_data_bit_t data_bit
void dfu_ble_set_mtu_size(uint16_t mtu_size)
Function for setting the BLE MTU size.
uint16_t flash_op_buffer_size
@ DFU_UART_BAUDRATE_921600
void dfu_ble_send_data_cmpl_process(void)
This function should be called when BLE stack sends data completely.
dfu_uart_stop_bit_t
UART stop bit definition.
dfu_uart_parity_bit_t
UART parity definition.
@ DFU_UART_BAUDRATE_230400
@ DFU_UART_BAUDRATE_19200
dfu_uart_stop_bit_t stop_bits
dfu_info_state
DFU informatica status.
void dfu_schedule(void)
Function for checking DFU cmd.
@ DFU_UART_BAUDRATE_115200
uint8_t * flash_op_buffer
void dfu_init(dfu_func_t *p_app_dfu_func, dfu_buffer_t *dfu_buffer, dfu_pro_callback_t *p_dfu_callback)
Function for initializing the DFU Used and Program State Callback.
@ DFU_UART_BAUDRATE_38400
void dfu_start_address(boot_info_t *p_boot_info)
Function for changing the boot info and reseting device.
dfu_uart_pin_group_t
UART pin group definition.
dfu_uart_data_bit_t
UART data bit definition.
dfu_uart_baudrate_t
UART baudrate definition.
void dfu_spi_flash_func_config(dfu_spi_flash_func_t *spi_flash_func)
Function for initializing the DFU SPI Flash Callback.
dfu_uart_baudrate_t baud_rate
BootLoader information definition.
uint8_t * rec_data_buffer
DFU Advertisement name config definition.
SPI used functions config definition.
@ DFU_UART_BAUDRATE_57600
DFU program state callback definition.
void dfu_cmd_parse_state_reset(void)
Function for reset the DFU cmd parse state.
DFU cmd disable info definition.