Under certain versions of cygwin it appears PAGE_SIZE is already defined.
So change name to stop any possible build issues.
Change-Id: I6f0e0c352c06bb6118ac3a5b884ae8e93194b570
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/1675
Tested-by: jenkins
#define MINI54 0x00205400
#define MINI51_APROM_BASE 0x00000000
#define MINI54 0x00205400
#define MINI51_APROM_BASE 0x00000000
-#define KB 1024
-#define PAGE_SIZE 512
-#define TIMEOUT 1000
+#define MINI51_KB 1024
+#define MINI51_PAGE_SIZE 512
+#define MINI51_TIMEOUT 1000
struct mini51_flash_bank {
bool probed;
struct mini51_flash_bank {
bool probed;
uint32_t isprtc1;
bool mini51_reboot = false;
int status;
uint32_t isprtc1;
bool mini51_reboot = false;
int status;
+ int timeout = MINI51_TIMEOUT;
/* Read current boot source */
struct target *target = bank->target;
/* Read current boot source */
struct target *target = bank->target;
switch (part_id & PART_ID_MAIN_MASK) {
case MINI51:
switch (part_id & PART_ID_MAIN_MASK) {
case MINI51:
+ *flash_size = 4 * MINI51_KB;
+ *flash_size = 8 * MINI51_KB;
+ *flash_size = 16 * MINI51_KB;
break;
default:
*flash_size = 0;
break;
default:
*flash_size = 0;
for (int page_start = first; page_start <= last; page_start++) {
/* Set up erase command */
for (int page_start = first; page_start <= last; page_start++) {
/* Set up erase command */
- status = target_write_u32(target, ISPADR, page_start*PAGE_SIZE);
+ status = target_write_u32(target, ISPADR, page_start*MINI51_PAGE_SIZE);
if (status != ERROR_OK)
return status;
status = target_write_u32(target, ISPCMD, ISPCMD_ERASE);
if (status != ERROR_OK)
return status;
status = target_write_u32(target, ISPCMD, ISPCMD_ERASE);
return status;
/* Wait for for command to finish executing */
return status;
/* Wait for for command to finish executing */
+ timeout = MINI51_TIMEOUT;
do {
target_read_u32(target, ISPTRG, &isptrg);
timeout--;
do {
target_read_u32(target, ISPTRG, &isptrg);
timeout--;
return status;
/* Wait for for command to finish executing */
return status;
/* Wait for for command to finish executing */
+ timeout = MINI51_TIMEOUT;
do {
target_read_u32(target, ISPTRG, &isptrg);
timeout--;
do {
target_read_u32(target, ISPTRG, &isptrg);
timeout--;
return ERROR_FLASH_OPERATION_FAILED;
}
return ERROR_FLASH_OPERATION_FAILED;
}
- num_pages = flash_size / PAGE_SIZE;
+ num_pages = flash_size / MINI51_PAGE_SIZE;
bank->base = MINI51_APROM_BASE;
bank->num_sectors = num_pages;
bank->base = MINI51_APROM_BASE;
bank->num_sectors = num_pages;
for (int i = 0; i < num_pages; i++) {
bank->sectors[i].offset = offset;
for (int i = 0; i < num_pages; i++) {
bank->sectors[i].offset = offset;
- bank->sectors[i].size = PAGE_SIZE;
+ bank->sectors[i].size = MINI51_PAGE_SIZE;
bank->sectors[i].is_erased = -1;
bank->sectors[i].is_protected = 0;
bank->sectors[i].is_erased = -1;
bank->sectors[i].is_protected = 0;
+ offset += MINI51_PAGE_SIZE;
}
struct mini51_flash_bank *mini51_info = bank->driver_priv;
}
struct mini51_flash_bank *mini51_info = bank->driver_priv;
Linking to existing account procedure
If you already have an account and want to add another login method
you
MUST first sign in with your existing account and
then change URL to read
https://review.openocd.org/login/?link
to get to this page again but this time it'll work for linking. Thank you.
SSH host keys fingerprints
1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=.. |
|+o.. . |
|*.o . . |
|+B . . . |
|Bo. = o S |
|Oo.+ + = |
|oB=.* = . o |
| =+=.+ + E |
|. .=o . o |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)