|
REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
|
Loading...
Searching...
No Matches
flasher.cpp File Reference
#include "protocol/transport.h"#include <Arduino.h>#include <malloc.h>#include <stdint.h>#include <string.h>#include <cstring>#include <imxrt.h>#include <ota/flasher.h>#include <utils/etl_base64.h>#include <utils/logging.h>#include <utils/reboot.h>#include "QNEthernet.h"#include "redac/calibration.h"#include "utils/timer.h"
Include dependency graph for flasher.cpp:

Go to the source code of this file.
Namespaces | |
| namespace | loader |
Macros | |
| #define | CPU_RESTART_VAL (0x5FA0004) |
| #define | REBOOT (SCB_AIRCR = CPU_RESTART_VAL) |
Functions | |
| void | flash_write (void *addr, const void *data, uint32_t len) |
| void | flash_erase_sector (void *addr) |
| void | flash_erase_32K_block (void *addr) |
| void | flash_erase_64K_block (void *addr) |
| static FASTRUN void | loader::make_ack (pb_UpdateResponse &res) |
| static FASTRUN void | loader::make_success (pb_UpdateResponse &res) |
| static FASTRUN void | loader::make_failure (pb_UpdateResponse &res, const char *reason) |
| FASTRUN | loader::__attribute__ ((always_inline, unused)) static inline void flush(void *addr |
| asm | loader::volatile ("":::"memory") |
| loader::asm ("dsb") | |
| loader::while (location< end_addr) | |
| loader::asm ("isb") | |
| FASTRUN void | loader::erase_region (uint8_t *base, uint32_t size) |
| FASTRUN void | loader::flash_write_32 (uint32_t *dst, const uint32_t *src, uint32_t size) |
| FASTRUN void | loader::flash_copy (uint32_t *dst, const uint32_t *src, uint32_t size) |
Variables | |
| FASTRUN uint32_t | loader::size |
| uint32_t | loader::end_addr = (uint32_t)addr + size |
| loader::do | |
| loader::location = 32 | |
Macro Definition Documentation
◆ CPU_RESTART_VAL
| #define CPU_RESTART_VAL (0x5FA0004) |
Definition at line 40 of file flasher.cpp.
◆ REBOOT
| #define REBOOT (SCB_AIRCR = CPU_RESTART_VAL) |
Definition at line 41 of file flasher.cpp.
Function Documentation
◆ flash_erase_32K_block()
| void flash_erase_32K_block | ( | void * | addr | ) |
Definition at line 163 of file eeprom.cpp.
References ADDR_SDR, CMD_SDR, flash_wait(), LUT0, LUT1, and PINS1.
Referenced by loader::erase_region().
◆ flash_erase_64K_block()
| void flash_erase_64K_block | ( | void * | addr | ) |
Definition at line 187 of file eeprom.cpp.
References ADDR_SDR, CMD_SDR, flash_wait(), LUT0, LUT1, and PINS1.
Referenced by loader::erase_region().
◆ flash_erase_sector()
| void flash_erase_sector | ( | void * | addr | ) |
Definition at line 139 of file eeprom.cpp.
References ADDR_SDR, CMD_SDR, flash_wait(), LUT0, LUT1, and PINS1.
Referenced by loader::erase_region().
◆ flash_write()
| void flash_write | ( | void * | addr, |
| const void * | data, | ||
| uint32_t | len ) |
Definition at line 99 of file eeprom.cpp.
References ADDR_SDR, CMD_SDR, flash_wait(), LUT0, LUT1, PINS1, PINS4, and WRITE_SDR.
Referenced by loader::flash_write_32().