Post-bootloader EFL/SPI fixes. (#17661)
* Fixup read address for EFL driver. * Fixup sequencing of SPI. * Lock during init of EFL backing store.
This commit is contained in:
parent
2a0d490eb3
commit
dc70ba612a
@ -46,7 +46,6 @@ __attribute__((weak)) void spi_init(void) {
|
||||
palSetPadMode(PAL_PORT(SPI_MOSI_PIN), PAL_PAD(SPI_MOSI_PIN), SPI_MOSI_FLAGS);
|
||||
palSetPadMode(PAL_PORT(SPI_MISO_PIN), PAL_PAD(SPI_MISO_PIN), SPI_MISO_FLAGS);
|
||||
#endif
|
||||
spiUnselect(&SPI_DRIVER);
|
||||
spiStop(&SPI_DRIVER);
|
||||
currentSlavePin = NO_PIN;
|
||||
}
|
||||
|
@ -43,6 +43,9 @@ bool backing_store_init(void) {
|
||||
bs_dprintf("Init\n");
|
||||
flash = (BaseFlash *)&EFLD1;
|
||||
|
||||
// Need to re-lock the EFL, as if we've just had the bootloader executing it'll already be unlocked.
|
||||
backing_store_lock();
|
||||
|
||||
const flash_descriptor_t *desc = flashGetDescriptor(flash);
|
||||
uint32_t counter = 0;
|
||||
|
||||
@ -132,7 +135,7 @@ bool backing_store_lock(void) {
|
||||
|
||||
bool backing_store_read(uint32_t address, backing_store_int_t *value) {
|
||||
uint32_t offset = (base_offset + address);
|
||||
backing_store_int_t *loc = (backing_store_int_t *)offset;
|
||||
backing_store_int_t *loc = (backing_store_int_t *)flashGetOffsetAddress(flash, offset);
|
||||
*value = ~(*loc);
|
||||
bs_dprintf("Read ");
|
||||
wl_dump(offset, value, sizeof(backing_store_int_t));
|
||||
|
Loading…
Reference in New Issue
Block a user