stm32f2x.c: Add more F4 devices.

Taken from git://git.ac6.fr/openocd commit e8ed67c42227b7072
STM32F446 (0x434) now is's own case.

Change-Id: I5061db7102b4c923c9f39d3d2f0cc69d29fca0a4
Signed-off-by: Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Reviewed-on: http://openocd.zylin.com/3375
Tested-by: jenkins
Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
This commit is contained in:
Uwe Bonnes 2016-03-02 13:11:48 +01:00 committed by Freddie Chopin
parent 0a432e42aa
commit b200dea387
1 changed files with 15 additions and 1 deletions

View File

@ -787,6 +787,7 @@ static int stm32x_probe(struct flash_bank *bank)
switch (device_id & 0xfff) { switch (device_id & 0xfff) {
case 0x411: case 0x411:
case 0x413: case 0x413:
case 0x441:
max_flash_size_in_kb = 1024; max_flash_size_in_kb = 1024;
break; break;
case 0x419: case 0x419:
@ -801,6 +802,9 @@ static int stm32x_probe(struct flash_bank *bank)
case 0x421: case 0x421:
max_flash_size_in_kb = 512; max_flash_size_in_kb = 512;
break; break;
case 0x458:
max_flash_size_in_kb = 128;
break;
case 0x449: case 0x449:
max_flash_size_in_kb = 1024; max_flash_size_in_kb = 1024;
max_sector_size_in_kb = 256; max_sector_size_in_kb = 256;
@ -953,7 +957,6 @@ static int get_stm32x_info(struct flash_bank *bank, char *buf, int buf_size)
case 0x413: case 0x413:
case 0x419: case 0x419:
case 0x434:
device_str = "STM32F4xx"; device_str = "STM32F4xx";
switch (rev_id) { switch (rev_id) {
@ -990,6 +993,8 @@ static int get_stm32x_info(struct flash_bank *bank, char *buf, int buf_size)
case 0x423: case 0x423:
case 0x431: case 0x431:
case 0x433: case 0x433:
case 0x458:
case 0x441:
device_str = "STM32F4xx (Low Power)"; device_str = "STM32F4xx (Low Power)";
switch (rev_id) { switch (rev_id) {
@ -1016,6 +1021,15 @@ static int get_stm32x_info(struct flash_bank *bank, char *buf, int buf_size)
break; break;
} }
break; break;
case 0x434:
device_str = "STM32F46x/F47x";
switch (rev_id) {
case 0x1000:
rev_str = "A";
break;
}
break;
default: default:
snprintf(buf, buf_size, "Cannot identify target as a STM32F2/4/7\n"); snprintf(buf, buf_size, "Cannot identify target as a STM32F2/4/7\n");