stm32/h7: Implemented a function for getting back a bank's status flags
This commit is contained in:
committed by
Piotr Esden-Tempski
parent
3a1b9861c7
commit
48cc714746
@@ -206,6 +206,8 @@ bool flash_is_busy(enum flash_bank bank);
|
|||||||
void flash_clear_eop_flag(enum flash_bank bank);
|
void flash_clear_eop_flag(enum flash_bank bank);
|
||||||
/** Clear all status flags. */
|
/** Clear all status flags. */
|
||||||
void flash_clear_status_flags(enum flash_bank bank);
|
void flash_clear_status_flags(enum flash_bank bank);
|
||||||
|
/** Get back the status flags for a bank. */
|
||||||
|
uint32_t flash_get_status_flags(enum flash_bank bank);
|
||||||
/** Wait until Last Operation has Ended.
|
/** Wait until Last Operation has Ended.
|
||||||
* This loops indefinitely until an operation (write or erase) has completed by
|
* This loops indefinitely until an operation (write or erase) has completed by
|
||||||
* testing for EOP and nothing being left in the queue.
|
* testing for EOP and nothing being left in the queue.
|
||||||
|
|||||||
@@ -115,6 +115,12 @@ void flash_clear_status_flags(const enum flash_bank bank)
|
|||||||
REBASE(FLASH_CCR) = FLASH_SR_ERROR_MASK | FLASH_SR_EOP;
|
REBASE(FLASH_CCR) = FLASH_SR_ERROR_MASK | FLASH_SR_EOP;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint32_t flash_get_status_flags(enum flash_bank bank)
|
||||||
|
{
|
||||||
|
const uintptr_t bank_base_address = flash_bank_address(bank);
|
||||||
|
return REBASE(FLASH_SR) & FLASH_SR_ERROR_MASK;
|
||||||
|
}
|
||||||
|
|
||||||
bool flash_wait_for_last_operation(const enum flash_bank bank)
|
bool flash_wait_for_last_operation(const enum flash_bank bank)
|
||||||
{
|
{
|
||||||
const uintptr_t bank_base_address = flash_bank_address(bank);
|
const uintptr_t bank_base_address = flash_bank_address(bank);
|
||||||
|
|||||||
Reference in New Issue
Block a user