|
OpenOCD
|

Go to the source code of this file.
Data Structures | |
| struct | stm32h7_flash_bank |
| struct | stm32h7_part_info |
| struct | stm32h7_rev |
Macros | |
| #define | DBGMCU_IDCODE_REGISTER 0x5C001000 |
| #define | DEVID_STM32H72_H73XX 0x483 |
| #define | DEVID_STM32H74_H75XX 0x450 |
| #define | DEVID_STM32H7A_H7BXX 0x480 |
| #define | DEVID_STM32H7R_H7SXX 0x485 |
| #define | FLASH_BANK0_ADDRESS 0x08000000 |
| #define | FLASH_BANK1_ADDRESS 0x08100000 |
| #define | FLASH_BER BIT(3) |
| #define | FLASH_BSY BIT(0) /* Operation in progress */ |
| #define | FLASH_CRCENDF BIT(27) /* CRC end flag */ |
| #define | FLASH_CRCRDERRF BIT(28) /* CRC read error flag */ |
| #define | FLASH_DBECCERR BIT(26) /* Double ECC error */ |
| #define | FLASH_DBECCERRF BIT(26) /* ECC double error flag */ |
| #define | FLASH_EOPF BIT(16) /* End-of-program flag */ |
| #define | FLASH_ERASE_TIMEOUT 10000 |
| #define | FLASH_ERROR |
| #define | FLASH_ERROR_H7RS |
| #define | FLASH_FW BIT(6) |
| #define | FLASH_INCERR BIT(21) /* Inconsistency error */ |
| #define | FLASH_INCERRF BIT(21) /* Inconsistency error flag */ |
| #define | FLASH_LOCK BIT(0) |
| #define | FLASH_OBLERRF BIT(20) /* Option byte loading error flag */ |
| #define | FLASH_OPERR BIT(22) /* Operation error */ |
| #define | FLASH_PG BIT(1) |
| #define | FLASH_PGSERR BIT(18) /* Programming sequence error */ |
| #define | FLASH_PGSERRF BIT(18) /* Programming sequence error flag */ |
| #define | FLASH_PSIZE_16 (1 << 4) |
| #define | FLASH_PSIZE_32 (2 << 4) |
| #define | FLASH_PSIZE_64 (3 << 4) |
| #define | FLASH_PSIZE_8 (0 << 4) |
| #define | FLASH_QW BIT(2) /* Operation queue in progress */ |
| #define | FLASH_RDPERR BIT(23) /* Read Protection error */ |
| #define | FLASH_RDSERR BIT(24) /* Secure Protection error */ |
| #define | FLASH_RDSERRF BIT(24) /* Read security error flag */ |
| #define | FLASH_REG_BASE_B0 0x52002000 |
| #define | FLASH_REG_BASE_B1 0x52002100 |
| #define | FLASH_SER BIT(2) |
| #define | FLASH_SNECCERR BIT(25) /* Single ECC error */ |
| #define | FLASH_SNECCERRF BIT(25) /* ECC single error flag */ |
| #define | FLASH_START BIT(7) |
| #define | FLASH_STRBERR BIT(19) /* Strobe error */ |
| #define | FLASH_STRBERRF BIT(19) /* Strobe error flag */ |
| #define | FLASH_WRITE_TIMEOUT 5 |
| #define | FLASH_WRPERR BIT(17) /* Write protection error */ |
| #define | FLASH_WRPERRF BIT(17) /* Write protection error flag */ |
| #define | KEY1 0x45670123 |
| #define | KEY2 0xCDEF89AB |
| #define | MASS_ERASE_TIMEOUT 30000 |
| #define | OPT_BSY BIT(0) |
| #define | OPT_CLR_OPTCHANGEERR BIT(30) |
| #define | OPT_LOCK BIT(0) |
| #define | OPT_OPTCHANGEERR BIT(30) |
| #define | OPT_RDP_MASK (0xff << OPT_RDP_POS) |
| #define | OPT_RDP_POS 8 |
| #define | OPT_START BIT(1) |
| #define | OPTKEY1 0x08192A3B |
| #define | OPTKEY2 0x4C5D6E7F |
Functions | |
| COMMAND_HANDLER (stm32h7_handle_lock_command) | |
| COMMAND_HANDLER (stm32h7_handle_mass_erase_command) | |
| COMMAND_HANDLER (stm32h7_handle_option_read_command) | |
| COMMAND_HANDLER (stm32h7_handle_option_write_command) | |
| COMMAND_HANDLER (stm32h7_handle_unlock_command) | |
| FLASH_BANK_COMMAND_HANDLER (stm32h7_flash_bank_command) | |
| static uint32_t | stm32h74_h75xx_compute_flash_cr (uint32_t cmd, int snb) |
| static int | stm32h7_auto_probe (struct flash_bank *bank) |
| static int | stm32h7_erase (struct flash_bank *bank, unsigned int first, unsigned int last) |
| static uint32_t | stm32h7_get_flash_reg (struct flash_bank *bank, uint32_t reg_offset) |
| static int | stm32h7_get_flash_status (struct flash_bank *bank, uint32_t *status) |
| static int | stm32h7_get_info (struct flash_bank *bank, struct command_invocation *cmd) |
| static int | stm32h7_lock_option_reg (struct flash_bank *bank) |
| static int | stm32h7_lock_reg (struct flash_bank *bank) |
| static int | stm32h7_mass_erase (struct flash_bank *bank) |
| static int | stm32h7_modify_option (struct flash_bank *bank, uint32_t reg_offset, uint32_t value, uint32_t mask) |
| static int | stm32h7_probe (struct flash_bank *bank) |
| static int | stm32h7_protect (struct flash_bank *bank, int set, unsigned int first, unsigned int last) |
| static int | stm32h7_protect_check (struct flash_bank *bank) |
| static int | stm32h7_read_flash_reg (struct flash_bank *bank, uint32_t reg_offset, uint32_t *value) |
| static int | stm32h7_read_flash_reg_by_index (struct flash_bank *bank, enum stm32h7_flash_reg_index reg_index, uint32_t *value) |
| static int | stm32h7_read_id_code (struct flash_bank *bank, uint32_t *id) |
| static int | stm32h7_set_rdp (struct flash_bank *bank, enum stm32h7_opt_rdp new_rdp) |
| static int | stm32h7_unlock_option_reg (struct flash_bank *bank) |
| static int | stm32h7_unlock_reg (struct flash_bank *bank) |
| static int | stm32h7_wait_flash_op_queue (struct flash_bank *bank, int timeout) |
| static int | stm32h7_write (struct flash_bank *bank, const uint8_t *buffer, uint32_t offset, uint32_t count) |
| static int | stm32h7_write_block (struct flash_bank *bank, const uint8_t *buffer, uint32_t offset, uint32_t count) |
| static int | stm32h7_write_flash_reg (struct flash_bank *bank, uint32_t reg_offset, uint32_t value) |
| static int | stm32h7_write_flash_reg_by_index (struct flash_bank *bank, enum stm32h7_flash_reg_index reg_index, uint32_t value) |
| static int | stm32h7_write_option (struct flash_bank *bank, uint32_t reg_offset, uint32_t value) |
| static uint32_t | stm32h7a_h7b_h7r_h7sxx_compute_flash_cr (uint32_t cmd, int snb) |
| static int | stm32h7rs_get_flash_status (struct flash_bank *bank, uint32_t *status) |
Variables | |
| static const struct stm32h7_rev | stm32h72_h73xx_revs [] |
| static const struct stm32h7_rev | stm32h74_h75xx_revs [] |
| static const struct command_registration | stm32h7_command_handlers [] |
| static const struct command_registration | stm32h7_exec_command_handlers [] |
| static const uint32_t | stm32h7_flash_regs [STM32_FLASH_REG_INDEX_NUM] |
| static const uint8_t | stm32h7_flash_write_code [] |
| static const struct stm32h7_part_info | stm32h7_parts [] |
| static const struct stm32h7_rev | stm32h7a_h7bxx_revs [] |
| static const struct stm32h7_rev | stm32h7r_h7sxx_revs [] |
| static const uint32_t | stm32h7rs_flash_regs [STM32_FLASH_REG_INDEX_NUM] |
| static const uint8_t | stm32h7rs_flash_write_code [] |
| const struct flash_driver | stm32h7x_flash |
| #define DBGMCU_IDCODE_REGISTER 0x5C001000 |
Definition at line 142 of file stm32h7x.c.
| #define DEVID_STM32H72_H73XX 0x483 |
Definition at line 151 of file stm32h7x.c.
| #define DEVID_STM32H74_H75XX 0x450 |
Definition at line 149 of file stm32h7x.c.
| #define DEVID_STM32H7A_H7BXX 0x480 |
Definition at line 150 of file stm32h7x.c.
| #define DEVID_STM32H7R_H7SXX 0x485 |
Definition at line 152 of file stm32h7x.c.
| #define FLASH_BANK0_ADDRESS 0x08000000 |
Definition at line 143 of file stm32h7x.c.
| #define FLASH_BANK1_ADDRESS 0x08100000 |
Definition at line 144 of file stm32h7x.c.
| #define FLASH_BER BIT(3) |
Definition at line 81 of file stm32h7x.c.
| #define FLASH_BSY BIT(0) /* Operation in progress */ |
Definition at line 103 of file stm32h7x.c.
Definition at line 91 of file stm32h7x.c.
Definition at line 90 of file stm32h7x.c.
| #define FLASH_DBECCERR BIT(26) /* Double ECC error */ |
Definition at line 113 of file stm32h7x.c.
Definition at line 92 of file stm32h7x.c.
Definition at line 100 of file stm32h7x.c.
| #define FLASH_ERASE_TIMEOUT 10000 |
Definition at line 17 of file stm32h7x.c.
| #define FLASH_ERROR |
Definition at line 115 of file stm32h7x.c.
| #define FLASH_ERROR_H7RS |
Definition at line 118 of file stm32h7x.c.
| #define FLASH_FW BIT(6) |
Definition at line 86 of file stm32h7x.c.
| #define FLASH_INCERR BIT(21) /* Inconsistency error */ |
Definition at line 108 of file stm32h7x.c.
Definition at line 95 of file stm32h7x.c.
| #define FLASH_LOCK BIT(0) |
Definition at line 78 of file stm32h7x.c.
Definition at line 96 of file stm32h7x.c.
| #define FLASH_OPERR BIT(22) /* Operation error */ |
Definition at line 109 of file stm32h7x.c.
| #define FLASH_PG BIT(1) |
Definition at line 79 of file stm32h7x.c.
Definition at line 106 of file stm32h7x.c.
Definition at line 98 of file stm32h7x.c.
| #define FLASH_PSIZE_16 (1 << 4) |
Definition at line 83 of file stm32h7x.c.
| #define FLASH_PSIZE_32 (2 << 4) |
Definition at line 84 of file stm32h7x.c.
| #define FLASH_PSIZE_64 (3 << 4) |
Definition at line 85 of file stm32h7x.c.
| #define FLASH_PSIZE_8 (0 << 4) |
Definition at line 82 of file stm32h7x.c.
Definition at line 104 of file stm32h7x.c.
| #define FLASH_RDPERR BIT(23) /* Read Protection error */ |
Definition at line 110 of file stm32h7x.c.
| #define FLASH_RDSERR BIT(24) /* Secure Protection error */ |
Definition at line 111 of file stm32h7x.c.
Definition at line 94 of file stm32h7x.c.
| #define FLASH_REG_BASE_B0 0x52002000 |
Definition at line 145 of file stm32h7x.c.
| #define FLASH_REG_BASE_B1 0x52002100 |
Definition at line 146 of file stm32h7x.c.
| #define FLASH_SER BIT(2) |
Definition at line 80 of file stm32h7x.c.
| #define FLASH_SNECCERR BIT(25) /* Single ECC error */ |
Definition at line 112 of file stm32h7x.c.
Definition at line 93 of file stm32h7x.c.
| #define FLASH_START BIT(7) |
Definition at line 87 of file stm32h7x.c.
| #define FLASH_STRBERR BIT(19) /* Strobe error */ |
Definition at line 107 of file stm32h7x.c.
Definition at line 97 of file stm32h7x.c.
| #define FLASH_WRITE_TIMEOUT 5 |
Definition at line 18 of file stm32h7x.c.
| #define FLASH_WRPERR BIT(17) /* Write protection error */ |
Definition at line 105 of file stm32h7x.c.
| #define FLASH_WRPERRF BIT(17) /* Write protection error flag */ |
Definition at line 99 of file stm32h7x.c.
| #define KEY1 0x45670123 |
Definition at line 135 of file stm32h7x.c.
| #define KEY2 0xCDEF89AB |
Definition at line 136 of file stm32h7x.c.
| #define MASS_ERASE_TIMEOUT 30000 |
Definition at line 19 of file stm32h7x.c.
| #define OPT_BSY BIT(0) |
Definition at line 126 of file stm32h7x.c.
| #define OPT_CLR_OPTCHANGEERR BIT(30) |
Definition at line 132 of file stm32h7x.c.
| #define OPT_LOCK BIT(0) |
Definition at line 122 of file stm32h7x.c.
| #define OPT_OPTCHANGEERR BIT(30) |
Definition at line 129 of file stm32h7x.c.
| #define OPT_RDP_MASK (0xff << OPT_RDP_POS) |
Definition at line 128 of file stm32h7x.c.
| #define OPT_RDP_POS 8 |
Definition at line 127 of file stm32h7x.c.
| #define OPT_START BIT(1) |
Definition at line 123 of file stm32h7x.c.
| #define OPTKEY1 0x08192A3B |
Definition at line 139 of file stm32h7x.c.
| #define OPTKEY2 0x4C5D6E7F |
Definition at line 140 of file stm32h7x.c.
Definition at line 29 of file stm32h7x.c.
| enum stm32h7_opt_rdp |
| Enumerator | |
|---|---|
| OPT_RDP_L0 | |
| OPT_RDP_L1 | |
| OPT_RDP_L2 | |
Definition at line 192 of file stm32h7x.c.
| COMMAND_HANDLER | ( | stm32h7_handle_lock_command | ) |
Definition at line 1126 of file stm32h7x.c.
References bank, CALL_COMMAND_HANDLER, CMD, CMD_ARGC, command_print(), ERROR_COMMAND_SYNTAX_ERROR, ERROR_OK, OPT_RDP_L1, and stm32h7_set_rdp().
| COMMAND_HANDLER | ( | stm32h7_handle_mass_erase_command | ) |
Definition at line 1204 of file stm32h7x.c.
References bank, CALL_COMMAND_HANDLER, CMD, CMD_ARGC, command_print(), ERROR_COMMAND_SYNTAX_ERROR, ERROR_OK, and stm32h7_mass_erase().
| COMMAND_HANDLER | ( | stm32h7_handle_option_read_command | ) |
Definition at line 1223 of file stm32h7x.c.
References bank, CALL_COMMAND_HANDLER, CMD, CMD_ARGC, CMD_ARGV, COMMAND_PARSE_NUMBER, command_print(), ERROR_COMMAND_SYNTAX_ERROR, ERROR_OK, stm32h7_get_flash_reg(), and stm32h7_read_flash_reg_by_index().
| COMMAND_HANDLER | ( | stm32h7_handle_option_write_command | ) |
Definition at line 1246 of file stm32h7x.c.
References bank, CALL_COMMAND_HANDLER, CMD_ARGC, CMD_ARGV, COMMAND_PARSE_NUMBER, ERROR_COMMAND_SYNTAX_ERROR, ERROR_OK, mask, and stm32h7_modify_option().
| COMMAND_HANDLER | ( | stm32h7_handle_unlock_command | ) |
Definition at line 1146 of file stm32h7x.c.
References bank, CALL_COMMAND_HANDLER, CMD, CMD_ARGC, command_print(), ERROR_COMMAND_SYNTAX_ERROR, ERROR_OK, OPT_RDP_L0, and stm32h7_set_rdp().
| FLASH_BANK_COMMAND_HANDLER | ( | stm32h7_flash_bank_command | ) |
Definition at line 314 of file stm32h7x.c.
References bank, CMD_ARGC, ERROR_COMMAND_SYNTAX_ERROR, ERROR_OK, stm32h7_flash_bank::probed, and stm32h7_flash_bank::user_bank_size.
|
static |
Definition at line 214 of file stm32h7x.c.
References cmd.
|
static |
Definition at line 1035 of file stm32h7x.c.
References bank, ERROR_OK, stm32h7_flash_bank::probed, and stm32h7_probe().
|
static |
Definition at line 583 of file stm32h7x.c.
References bank, stm32h7_part_info::compute_flash_cr, ERROR_OK, ERROR_TARGET_NOT_HALTED, FLASH_ERASE_TIMEOUT, FLASH_PSIZE_64, FLASH_SER, FLASH_START, LOG_DEBUG, LOG_ERROR, stm32h7_flash_bank::part_info, STM32_FLASH_CR_INDEX, stm32h7_lock_reg(), stm32h7_unlock_reg(), stm32h7_wait_flash_op_queue(), stm32h7_write_flash_reg_by_index(), and TARGET_HALTED.
|
inlinestatic |
Definition at line 330 of file stm32h7x.c.
References bank, and stm32h7_flash_bank::flash_regs_base.
Referenced by COMMAND_HANDLER(), stm32h7_read_flash_reg(), and stm32h7_write_flash_reg().
|
static |
Definition at line 372 of file stm32h7x.c.
References bank, status, STM32_FLASH_SR_INDEX, and stm32h7_read_flash_reg_by_index().
Referenced by stm32h7_wait_flash_op_queue().
|
static |
Definition at line 1046 of file stm32h7x.c.
References bank, cmd, command_print_sameline(), stm32h7_part_info::device_str, ERROR_FAIL, ERROR_OK, stm32h7_flash_bank::idcode, info, NULL, stm32h7_flash_bank::part_info, stm32h7_flash_bank::probed, and stm32h7_probe().
|
inlinestatic |
Definition at line 490 of file stm32h7x.c.
References bank, OPT_LOCK, STM32_FLASH_OPTCR_INDEX, and stm32h7_write_flash_reg_by_index().
Referenced by stm32h7_write_option().
|
inlinestatic |
Definition at line 485 of file stm32h7x.c.
References bank, FLASH_LOCK, STM32_FLASH_CR_INDEX, and stm32h7_write_flash_reg_by_index().
Referenced by stm32h7_erase(), stm32h7_mass_erase(), and stm32h7_write().
|
static |
Definition at line 1166 of file stm32h7x.c.
References bank, stm32h7_part_info::compute_flash_cr, ERROR_OK, ERROR_TARGET_NOT_HALTED, FLASH_BER, FLASH_PSIZE_64, FLASH_START, LOG_ERROR, MASS_ERASE_TIMEOUT, stm32h7_flash_bank::part_info, target::state, STM32_FLASH_CR_INDEX, stm32h7_lock_reg(), stm32h7_unlock_reg(), stm32h7_wait_flash_op_queue(), stm32h7_write_flash_reg_by_index(), and TARGET_HALTED.
Referenced by COMMAND_HANDLER().
|
static |
Definition at line 553 of file stm32h7x.c.
References bank, ERROR_OK, mask, stm32h7_read_flash_reg_by_index(), and stm32h7_write_option().
Referenced by COMMAND_HANDLER().
|
static |
Definition at line 866 of file stm32h7x.c.
References alloc_block_array(), ARRAY_SIZE, bank, stm32h7_part_info::block_size, CORTEX_M4_PARTNO, cortex_m_get_impl_part(), stm32h7_part_info::device_str, DEVID_STM32H72_H73XX, DEVID_STM32H74_H75XX, DEVID_STM32H7A_H7BXX, DEVID_STM32H7R_H7SXX, ERROR_FAIL, ERROR_OK, ERROR_TARGET_NOT_EXAMINED, FLASH_BANK0_ADDRESS, FLASH_BANK1_ADDRESS, FLASH_REG_BASE_B0, FLASH_REG_BASE_B1, stm32h7_flash_bank::flash_regs, stm32h7_flash_bank::flash_regs_base, stm32h7_part_info::fsize_addr, stm32h7_part_info::has_dual_bank, stm32h7_flash_bank::idcode, LOG_DEBUG, LOG_ERROR, LOG_INFO, LOG_WARNING, stm32h7_part_info::max_bank_size_kb, stm32h7_part_info::max_flash_size_kb, NULL, stm32h7_part_info::page_size_kb, stm32h7_flash_bank::part_info, stm32h7_flash_bank::probed, stm32h7_flash_regs, stm32h7_parts, stm32h7_read_id_code(), stm32h7rs_flash_regs, TARGET_ADDR_FMT, target_name(), target_read_u16(), target_was_examined(), stm32h7_flash_bank::user_bank_size, and stm32h7_part_info::wps_group_size.
Referenced by stm32h7_auto_probe(), and stm32h7_get_info().
|
static |
Definition at line 639 of file stm32h7x.c.
References bank, ERROR_OK, ERROR_TARGET_NOT_HALTED, LOG_DEBUG, LOG_ERROR, stm32h7_flash_bank::part_info, protection, target::state, STM32_FLASH_WPSN_CUR_INDEX, STM32_FLASH_WPSN_PRG_INDEX, stm32h7_read_flash_reg_by_index(), stm32h7_write_option(), TARGET_HALTED, and stm32h7_part_info::wps_mask.
|
static |
Definition at line 566 of file stm32h7x.c.
References bank, ERROR_OK, LOG_DEBUG, protection, STM32_FLASH_WPSN_CUR_INDEX, and stm32h7_read_flash_reg_by_index().
|
static |
Definition at line 336 of file stm32h7x.c.
References bank, ERROR_OK, LOG_ERROR, stm32h7_get_flash_reg(), and target_read_u32().
Referenced by stm32h7_read_flash_reg_by_index().
|
inlinestatic |
Definition at line 347 of file stm32h7x.c.
References bank, stm32h7_flash_bank::flash_regs, and stm32h7_read_flash_reg().
Referenced by COMMAND_HANDLER(), stm32h7_get_flash_status(), stm32h7_modify_option(), stm32h7_protect(), stm32h7_protect_check(), stm32h7_set_rdp(), stm32h7_unlock_option_reg(), stm32h7_unlock_reg(), stm32h7_write_option(), and stm32h7rs_get_flash_status().
|
static |
Definition at line 857 of file stm32h7x.c.
References bank, DBGMCU_IDCODE_REGISTER, ERROR_OK, and target_read_u32().
Referenced by stm32h7_probe().
|
static |
Definition at line 1082 of file stm32h7x.c.
References bank, ERROR_OK, ERROR_TARGET_NOT_HALTED, LOG_DEBUG, LOG_ERROR, LOG_INFO, LOG_WARNING, OPT_RDP_L0, OPT_RDP_L1, OPT_RDP_L2, OPT_RDP_MASK, OPT_RDP_POS, target::state, STM32_FLASH_OPTSR_PRG_INDEX, stm32h7_read_flash_reg_by_index(), stm32h7_write_option(), and TARGET_HALTED.
Referenced by COMMAND_HANDLER().
|
static |
Definition at line 453 of file stm32h7x.c.
References bank, ctrl, ERROR_OK, ERROR_TARGET_FAILURE, LOG_ERROR, OPT_LOCK, OPTKEY1, OPTKEY2, STM32_FLASH_OPTCR_INDEX, STM32_FLASH_OPTKEYR_INDEX, stm32h7_read_flash_reg_by_index(), and stm32h7_write_flash_reg_by_index().
Referenced by stm32h7_write_option().
|
static |
Definition at line 419 of file stm32h7x.c.
References bank, ctrl, ERROR_OK, ERROR_TARGET_FAILURE, FLASH_LOCK, KEY1, KEY2, LOG_ERROR, STM32_FLASH_CR_INDEX, STM32_FLASH_KEYR_INDEX, stm32h7_read_flash_reg_by_index(), and stm32h7_write_flash_reg_by_index().
Referenced by stm32h7_erase(), stm32h7_mass_erase(), and stm32h7_write().
|
static |
Definition at line 382 of file stm32h7x.c.
References alive_sleep(), bank, ERROR_FAIL, ERROR_OK, stm32h7_part_info::flash_error, FLASH_QW, FLASH_WRPERR, LOG_ERROR, stm32h7_flash_bank::part_info, status, STM32_FLASH_ICR_CCR_INDEX, stm32h7_get_flash_status(), and stm32h7_write_flash_reg_by_index().
Referenced by stm32h7_erase(), stm32h7_mass_erase(), and stm32h7_write().
|
static |
Definition at line 778 of file stm32h7x.c.
References address, bank, stm32h7_part_info::block_size, buffer, stm32h7_part_info::compute_flash_cr, count, ERROR_OK, ERROR_TARGET_NOT_HALTED, ERROR_TARGET_RESOURCE_NOT_AVAILABLE, FLASH_PG, FLASH_PSIZE_64, FLASH_WRITE_TIMEOUT, LOG_ERROR, LOG_WARNING, offset, stm32h7_flash_bank::part_info, STM32_FLASH_CR_INDEX, stm32h7_lock_reg(), stm32h7_unlock_reg(), stm32h7_wait_flash_op_queue(), stm32h7_write_block(), stm32h7_write_flash_reg_by_index(), TARGET_HALTED, and target_write_buffer().
|
static |
Definition at line 674 of file stm32h7x.c.
References address, working_area::address, ARM_MODE_THREAD, ARMV7M_COMMON_MAGIC, ARRAY_SIZE, bank, stm32h7_part_info::block_size, buf_get_u32(), buf_set_u32(), buffer, buffer_size, armv7m_algorithm::common_magic, armv7m_algorithm::core_mode, count, destroy_reg_param(), ERROR_FAIL, ERROR_FLASH_OPERATION_FAILED, ERROR_OK, ERROR_TARGET_RESOURCE_NOT_AVAILABLE, stm32h7_part_info::flash_error, stm32h7_flash_bank::flash_regs_base, FLASH_WRPERR, init_reg_param(), LOG_DEBUG, LOG_ERROR, LOG_WARNING, NULL, offset, PARAM_IN_OUT, PARAM_OUT, stm32h7_flash_bank::part_info, source, STM32_FLASH_ICR_CCR_INDEX, stm32h7_write_flash_reg_by_index(), target_alloc_working_area(), target_alloc_working_area_try(), target_free_working_area(), target_run_flash_async_algorithm(), target_write_buffer(), stm32h7_part_info::write_code, and stm32h7_part_info::write_code_size.
Referenced by stm32h7_write().
|
static |
Definition at line 354 of file stm32h7x.c.
References bank, ERROR_OK, LOG_ERROR, stm32h7_get_flash_reg(), and target_write_u32().
Referenced by stm32h7_write_flash_reg_by_index().
|
inlinestatic |
Definition at line 365 of file stm32h7x.c.
References bank, stm32h7_flash_bank::flash_regs, and stm32h7_write_flash_reg().
Referenced by stm32h7_erase(), stm32h7_lock_option_reg(), stm32h7_lock_reg(), stm32h7_mass_erase(), stm32h7_unlock_option_reg(), stm32h7_unlock_reg(), stm32h7_wait_flash_op_queue(), stm32h7_write(), stm32h7_write_block(), and stm32h7_write_option().
|
static |
Definition at line 495 of file stm32h7x.c.
References alive_sleep(), bank, ERROR_FAIL, ERROR_FLASH_OPERATION_FAILED, ERROR_OK, FLASH_ERASE_TIMEOUT, LOG_ERROR, OPT_BSY, OPT_CLR_OPTCHANGEERR, OPT_OPTCHANGEERR, OPT_START, status, STM32_FLASH_OPTCCR_INDEX, STM32_FLASH_OPTCR_INDEX, STM32_FLASH_OPTSR_CUR_INDEX, stm32h7_lock_option_reg(), stm32h7_read_flash_reg_by_index(), stm32h7_unlock_option_reg(), and stm32h7_write_flash_reg_by_index().
Referenced by stm32h7_modify_option(), stm32h7_protect(), and stm32h7_set_rdp().
|
static |
Definition at line 219 of file stm32h7x.c.
References cmd, FLASH_FW, FLASH_PSIZE_64, and FLASH_START.
|
static |
Definition at line 377 of file stm32h7x.c.
References bank, status, STM32_FLASH_ISR_INDEX, and stm32h7_read_flash_reg_by_index().
|
static |
Definition at line 65 of file stm32h7x.c.
|
static |
Definition at line 65 of file stm32h7x.c.
|
static |
Definition at line 1246 of file stm32h7x.c.
|
static |
Definition at line 1246 of file stm32h7x.c.
|
static |
Definition at line 50 of file stm32h7x.c.
Referenced by stm32h7_probe().
|
static |
Definition at line 21 of file stm32h7x.c.
|
static |
Definition at line 231 of file stm32h7x.c.
Referenced by stm32h7_probe().
|
static |
Definition at line 65 of file stm32h7x.c.
|
static |
Definition at line 65 of file stm32h7x.c.
|
static |
Definition at line 65 of file stm32h7x.c.
Referenced by stm32h7_probe().
|
static |
Definition at line 25 of file stm32h7x.c.
| const struct flash_driver stm32h7x_flash |
Definition at line 1246 of file stm32h7x.c.