From 61e1e525c174eaf09debebcdc4ef50ce6f46a8c1 Mon Sep 17 00:00:00 2001 From: Freddie Chopin Date: Sat, 8 Jan 2011 12:29:31 +0100 Subject: Add another level of procedures to LPC2xxx initialization - procedures for specific targets (setup_lpc) take core clock and adapter clock as parameters. This way "constant" parameters (flash size and type, CPUTAPID, etc.) do not need to be copied if one wishes to change the "variable" parameters - like the core clock or adapter clock - in a board config file or somewhere else. Signed-off-by: Freddie Chopin --- tcl/target/lpc2378.cfg | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'tcl/target/lpc2378.cfg') diff --git a/tcl/target/lpc2378.cfg b/tcl/target/lpc2378.cfg index 30c71aa..0b66b82 100644 --- a/tcl/target/lpc2378.cfg +++ b/tcl/target/lpc2378.cfg @@ -2,8 +2,20 @@ source [find target/lpc2xxx.cfg] -proc init_targets {} { - # 504kB flash and 32kB SRAM, clocked with 4MHz internal oscillator +# parameters: +# - core_freq_khz - frequency of core in kHz during flashing, usually equal to connected crystal or internal oscillator, e.g. 12000 +# - adapter_freq_khz - frequency of debug adapter in kHz, should be 8x slower than core_freq_khz, e.g. 1000 + +proc setup_lpc2378 {core_freq_khz adapter_freq_khz} { + # 504kB flash and 32kB SRAM # setup_lpc2xxx - setup_lpc2xxx lpc2378 0x4f1f0f0f 0x7e000 lpc2000_v2 0x8000 4000 500 + setup_lpc2xxx lpc2378 0x4f1f0f0f 0x7e000 lpc2000_v2 0x8000 $core_freq_khz $adapter_freq_khz +} + +proc init_targets {} { + # default to core clocked with 4MHz internal oscillator + echo "Warning - assuming default core clock 4MHz! Flashing may fail if actual core clock is different." + + # setup_lpc2378 + setup_lpc2378 4000 500 } -- cgit v1.1