mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-11-04 07:12:33 +01:00 
			
		
		
		
	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…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user