|
104 | 104 | #define ISR_START_ADDR (SD_FLASH_START_ADDR + SD_FLASH_SIZE)
|
105 | 105 | #define ISR_SIZE (0x1000) // 4kiB
|
106 | 106 |
|
| 107 | +// Smallest unit of flash that can be erased. |
| 108 | +#define FLASH_ERASE_SIZE FLASH_PAGE_SIZE |
| 109 | + |
107 | 110 | #define CIRCUITPY_FIRMWARE_START_ADDR (ISR_START_ADDR + ISR_SIZE)
|
108 | 111 |
|
109 | 112 | // Define these regions starting down from the bootloader:
|
|
129 | 132 | // The firmware space is the space left over between the fixed lower and upper regions.
|
130 | 133 | #define CIRCUITPY_FIRMWARE_SIZE (CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_START_ADDR - CIRCUITPY_FIRMWARE_START_ADDR)
|
131 | 134 |
|
132 |
| -#if BOOTLOADER_START_ADDR % FLASH_PAGE_SIZE != 0 |
133 |
| -#error BOOTLOADER_START_ADDR must be on a flash page boundary. |
| 135 | +#if BOOTLOADER_START_ADDR % FLASH_ERASE_SIZE != 0 |
| 136 | +#error BOOTLOADER_START_ADDR must be on a flash erase boundary. |
134 | 137 | #endif
|
135 | 138 |
|
136 |
| -#if CIRCUITPY_INTERNAL_NVM_START_ADDR % FLASH_PAGE_SIZE != 0 |
137 |
| -#error CIRCUITPY_INTERNAL_NVM_START_ADDR must be on a flash page boundary. |
| 139 | +#if CIRCUITPY_INTERNAL_NVM_START_ADDR % FLASH_ERASE_SIZE != 0 |
| 140 | +#error CIRCUITPY_INTERNAL_NVM_START_ADDR must be on a flash erase boundary. |
138 | 141 | #endif
|
139 |
| -#if CIRCUITPY_INTERNAL_NVM_SIZE % FLASH_PAGE_SIZE != 0 |
140 |
| -#error CIRCUITPY_INTERNAL_NVM_SIZE must be a multiple of FLASH_PAGE_SIZE. |
| 142 | +#if CIRCUITPY_INTERNAL_NVM_SIZE % FLASH_ERASE_SIZE != 0 |
| 143 | +#error CIRCUITPY_INTERNAL_NVM_SIZE must be a multiple of FLASH_ERASE_SIZE. |
141 | 144 | #endif
|
142 | 145 |
|
143 |
| -#if CIRCUITPY_BLE_CONFIG_START_ADDR % FLASH_PAGE_SIZE != 0 |
144 |
| -#error CIRCUITPY_BLE_CONFIG_SIZE must be on a flash page boundary. |
| 146 | +#if CIRCUITPY_BLE_CONFIG_START_ADDR % FLASH_ERASE_SIZE != 0 |
| 147 | +#error CIRCUITPY_BLE_CONFIG_SIZE must be on a flash erase boundary. |
145 | 148 | #endif
|
146 |
| -#if CIRCUITPY_BLE_CONFIG_SIZE % FLASH_PAGE_SIZE != 0 |
147 |
| -#error CIRCUITPY_BLE_CONFIG_SIZE must be a multiple of FLASH_PAGE_SIZE. |
| 149 | +#if CIRCUITPY_BLE_CONFIG_SIZE % FLASH_ERASE_SIZE != 0 |
| 150 | +#error CIRCUITPY_BLE_CONFIG_SIZE must be a multiple of FLASH_ERASE_SIZE. |
148 | 151 | #endif
|
149 | 152 |
|
150 |
| -#if CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_START_ADDR % FLASH_PAGE_SIZE != 0 |
151 |
| -#error CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE must be on a flash page boundary. |
| 153 | +#if CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_START_ADDR % FLASH_ERASE_SIZE != 0 |
| 154 | +#error CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE must be on a flash erase boundary. |
152 | 155 | #endif
|
153 |
| -#if CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE % FLASH_PAGE_SIZE != 0 |
154 |
| -#error CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE must be a multiple of FLASH_PAGE_SIZE. |
| 156 | +#if CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE % FLASH_ERASE_SIZE != 0 |
| 157 | +#error CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE must be a multiple of FLASH_ERASE_SIZE. |
155 | 158 | #endif
|
156 | 159 |
|
157 | 160 | #if CIRCUITPY_FIRMWARE_SIZE < 0
|
|
0 commit comments