Add another level of procedures to LPC2xxx initialization - procedures for specific targets (setup_lpc<number>) 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 <freddie_chopin@op.pl>
This commit is contained in:
Freddie Chopin
2011-01-08 12:29:31 +01:00
committed by Øyvind Harboe
parent 7ec55eb863
commit 61e1e525c1
7 changed files with 105 additions and 21 deletions

View File

@@ -2,8 +2,20 @@
source [find target/lpc2xxx.cfg]
proc init_targets {} {
# 32kB flash and 8kB SRAM, clocked with 12MHz crystal
# 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_lpc2103 {core_freq_khz adapter_freq_khz} {
# 32kB flash and 8kB SRAM
# setup_lpc2xxx <chip_name> <cputapid> <flash_size> <flash_variant> <workarea_size> <core_freq_khz> <adapter_freq_khz>
setup_lpc2xxx lpc2103 0x4f1f0f0f 0x8000 lpc2000_v2 0x2000 12000 1500
setup_lpc2xxx lpc2103 0x4f1f0f0f 0x8000 lpc2000_v2 0x2000 $core_freq_khz $adapter_freq_khz
}
proc init_targets {} {
# default to core clocked with 12MHz crystal
echo "Warning - assuming default core clock 12MHz! Flashing may fail if actual core clock is different."
# setup_lpc2103 <core_freq_khz> <adapter_freq_khz>
setup_lpc2103 12000 1500
}