From d3c77fdbb20042c9305dbf18a3ba73cfd65f67b6 Mon Sep 17 00:00:00 2001
From: oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Date: Tue, 30 Jun 2009 11:50:04 +0000
Subject: [PATCH] freddie_chopin@op.pl fix handling of workarea

git-svn-id: svn://svn.berlios.de/openocd/trunk@2431 b42882b7-edfa-0310-969c-e2dbd0fdcd60
---
 tcl/board/olimex_stm32_h103.cfg | 8 ++------
 tcl/target/stm32.cfg            | 8 ++++----
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/tcl/board/olimex_stm32_h103.cfg b/tcl/board/olimex_stm32_h103.cfg
index de1fa8bf3..98b0b658d 100644
--- a/tcl/board/olimex_stm32_h103.cfg
+++ b/tcl/board/olimex_stm32_h103.cfg
@@ -1,11 +1,7 @@
-#
 # Olimex STM32-H103 eval board
-#
 # http://olimex.com/dev/stm32-h103.html
-#
 
-#Set flash size to 128k for STM32103RB device
-set WORKAREASIZE 0x20000
+# Work-area size (RAM size) = 20kB for STM32F103RB device
+set WORKAREASIZE 0x5000
 
 source [find target/stm32.cfg]
-
diff --git a/tcl/target/stm32.cfg b/tcl/target/stm32.cfg
index 61ae562f0..d3f60feb3 100644
--- a/tcl/target/stm32.cfg
+++ b/tcl/target/stm32.cfg
@@ -12,16 +12,16 @@ if { [info exists ENDIAN] } {
    set  _ENDIAN little
 }
 
-#Checking if user had set the work-area-size for the chip
-#If not, the value will be set to 16k
+# Work-area is a space in RAM used for flash programming
+# By default use 16kB
 if { [info exists WORKAREASIZE] } {
    set  _WORKAREASIZE $WORKAREASIZE
 } else {
    set  _WORKAREASIZE 0x4000
 }
 
-# jtag speed
-jtag_khz 500
+# JTAG speed should be <= F_CPU/6. F_CPU after reset is 8MHz, so use F_JTAG = 1MHz
+jtag_khz 1000
 
 jtag_nsrst_delay 100
 jtag_ntrst_delay 100
-- 
GitLab