|
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