1
0
mirror of https://github.com/esp8266/Arduino.git synced 2025-07-23 08:45:22 +03:00

XMC flash support - WIP (#6725)

* Move the spi vendor list from Esp.h to its own header in eboot.

* Fix ifdef issue with spi_vendors.h

* Add initFlashQuirks() for any chip specific flash initialization.

Called from user_init().

* namespace experimental for initFlashQuirks()

* Slow down flash access during eboot firmware copy

Part 1 - still some work to do

* Slow down flash access during eboot firmware copy on XMC chips

Part 2 - Identify the chip type.

Note: there may still be issues with the access speed change.
This is very much experimental.

* Commit eboot.elf

Co-authored-by: Develo <deveyes@gmail.com>
Co-authored-by: Earle F. Philhower, III <earlephilhower@yahoo.com>
This commit is contained in:
Mike Nix
2020-04-24 00:15:21 +08:00
committed by GitHub
parent 2de9242b1a
commit 9b41d9ac5e
10 changed files with 346 additions and 37 deletions

View File

@ -404,6 +404,8 @@ uint32_t EspClass::getFlashChipSizeByChipId(void) {
return (64_kB);
// Winbond
case 0x1840EF: // W25Q128
return (16_MB);
case 0x1640EF: // W25Q32
return (4_MB);
case 0x1540EF: // W25Q16
@ -423,6 +425,10 @@ uint32_t EspClass::getFlashChipSizeByChipId(void) {
case 0x1340E0: // BG25Q40
return (512_kB);
// XMC - Wuhan Xinxin Semiconductor Manufacturing Corp
case 0x164020: // XM25QH32B
return (4_MB);
default:
return 0;
}