From: ntfreak Date: Sun, 10 Feb 2008 15:46:14 +0000 (+0000) Subject: - stm32 flash driver now checks for correct target X-Git-Tag: v0.1.0~1001 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=fb74f48b53a035a4bcbffba4057a5bf2e4e50d1f;p=openocd - stm32 flash driver now checks for correct target git-svn-id: svn://svn.berlios.de/openocd/trunk@288 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- diff --git a/src/flash/stm32x.c b/src/flash/stm32x.c index 5b16f57a..7039a3d4 100644 --- a/src/flash/stm32x.c +++ b/src/flash/stm32x.c @@ -644,9 +644,20 @@ int stm32x_probe(struct flash_bank_s *bank) stm32x_flash_bank_t *stm32x_info = bank->driver_priv; int i; u16 num_sectors; + u32 device_id; stm32x_info->probed = 0; + /* read stm32 device id register */ + target_read_u32(target, 0xE0042000, &device_id); + INFO( "device id = 0x%08x", device_id ); + + if (!(device_id & 0x410)) + { + WARNING( "Cannot identify target as a STM32 family." ); + return ERROR_FLASH_OPERATION_FAILED; + } + /* get flash size from target */ target_read_u16(target, 0x1FFFF7E0, &num_sectors); INFO( "flash size = %dkbytes", num_sectors );