From 552e027f6867059302267e4d52624a6da158844a Mon Sep 17 00:00:00 2001
From: Spencer Oliver <spen@spen-soft.co.uk>
Date: Thu, 6 Sep 2012 20:04:22 +0100
Subject: [PATCH] stlink: issue error for stm32 option writing

The stlink interface currently does not support 16bit read/writes.
Until a fix is included we issue a error that this is unsupported.

Change-Id: I4552cf2bd3b29e90ecc905325b743c08e2b92d67
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/808
Tested-by: jenkins
Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
---
 src/flash/nor/stm32f1x.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/flash/nor/stm32f1x.c b/src/flash/nor/stm32f1x.c
index baf6b2752..f077fe548 100644
--- a/src/flash/nor/stm32f1x.c
+++ b/src/flash/nor/stm32f1x.c
@@ -249,6 +249,14 @@ static int stm32x_erase_options(struct flash_bank *bank)
 
 	stm32x_info = bank->driver_priv;
 
+	/* stlink is currently does not support 16bit
+	 * read/writes. so we cannot write option bytes */
+	struct armv7m_common *armv7m = target_to_armv7m(target);
+	if (armv7m && armv7m->stlink) {
+		LOG_ERROR("Option bytes currently unsupported for stlink");
+		return ERROR_FAIL;
+	}
+
 	/* read current options */
 	stm32x_read_options(bank);
 
-- 
GitLab