From 1d2f4f1463dd234a505ea51d03af12b8621735b4 Mon Sep 17 00:00:00 2001 From: mifi Date: Sat, 1 Mar 2008 16:31:52 +0000 Subject: - added at91r40008 test example, and test result git-svn-id: svn://svn.berlios.de/openocd/trunk@419 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- .../AT91R40008Test/prj/at91r40008_reset.script | 7 ++ .../AT91R40008Test/prj/at91r40008_turtle.cfg | 40 ++++++ .../examples/AT91R40008Test/prj/eclipse_ram.gdb | 14 +++ .../examples/AT91R40008Test/prj/ethernut3_ram.ld | 140 +++++++++++++++++++++ 4 files changed, 201 insertions(+) create mode 100644 testing/examples/AT91R40008Test/prj/at91r40008_reset.script create mode 100644 testing/examples/AT91R40008Test/prj/at91r40008_turtle.cfg create mode 100644 testing/examples/AT91R40008Test/prj/eclipse_ram.gdb create mode 100644 testing/examples/AT91R40008Test/prj/ethernut3_ram.ld (limited to 'testing/examples/AT91R40008Test/prj') diff --git a/testing/examples/AT91R40008Test/prj/at91r40008_reset.script b/testing/examples/AT91R40008Test/prj/at91r40008_reset.script new file mode 100644 index 00000000..f90cde79 --- /dev/null +++ b/testing/examples/AT91R40008Test/prj/at91r40008_reset.script @@ -0,0 +1,7 @@ +wait_halt +sleep 10 +poll +# Ethernut 3 remapping is required to access external flash memory. +mww 0xffe00000 0x1000213d +mww 0xffe00004 0x20003e3d +mww 0xffe00020 0x00000001 diff --git a/testing/examples/AT91R40008Test/prj/at91r40008_turtle.cfg b/testing/examples/AT91R40008Test/prj/at91r40008_turtle.cfg new file mode 100644 index 00000000..527e74b6 --- /dev/null +++ b/testing/examples/AT91R40008Test/prj/at91r40008_turtle.cfg @@ -0,0 +1,40 @@ +#daemon configuration +telnet_port 4444 +gdb_port 3333 + +# tell gdb our flash memory map +gdb_memory_map enable +# enable flash programming +gdb_flash_program enable + +#interface +interface ft2232 +ft2232_device_desc "Turtelizer JTAG/RS232 Adapter A" +ft2232_layout turtelizer2 +ft2232_vid_pid 0x0403 0xbdc8 +jtag_speed 0 +jtag_nsrst_delay 200 +jtag_ntrst_delay 200 + +#use combined on interfaces or targets that can't set TRST/SRST separately +reset_config srst_only + +#jtag scan chain +#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE) +jtag_device 4 0x1 0xf 0xe + +#target configuration +daemon_startup reset + +#target +#target arm7tdmi +target arm7tdmi little run_and_init 0 arm7tdmi +run_and_halt_time 0 30 + +target_script 0 reset .\prj\at91r40008_reset.script + +working_area 0 0x3C000 0x4000 nobackup +flash bank cfi 0x10000000 0x400000 2 2 0 + +# For more information about the configuration files, take a look at: +# http://openfacts.berlios.de/index-en.phtml?title=Open+On-Chip+Debugger diff --git a/testing/examples/AT91R40008Test/prj/eclipse_ram.gdb b/testing/examples/AT91R40008Test/prj/eclipse_ram.gdb new file mode 100644 index 00000000..d928ce28 --- /dev/null +++ b/testing/examples/AT91R40008Test/prj/eclipse_ram.gdb @@ -0,0 +1,14 @@ +target remote localhost:3333 +monitor reset +monitor sleep 500 +monitor poll +monitor soft_reset_halt +monitor arm7_9 sw_bkpts enable +monitor mww 0xFFE00000 0x1000213D +monitor mww 0xFFE00004 0x20003E3D +monitor mww 0xFFE00020 0x00000001 +monitor mdw 0xFFE00000 1 +monitor mdw 0xFFE00004 1 +load +break main +continue diff --git a/testing/examples/AT91R40008Test/prj/ethernut3_ram.ld b/testing/examples/AT91R40008Test/prj/ethernut3_ram.ld new file mode 100644 index 00000000..5e94195c --- /dev/null +++ b/testing/examples/AT91R40008Test/prj/ethernut3_ram.ld @@ -0,0 +1,140 @@ +/**************************************************************************** +* Copyright (c) 2006 by Michael Fischer. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions +* are met: +* +* 1. Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* 3. Neither the name of the author nor the names of its contributors may +* be used to endorse or promote products derived from this software +* without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +* THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF +* THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +* SUCH DAMAGE. +* +**************************************************************************** +* +* History: +* +* 09.04.06 mifi First Version +****************************************************************************/ + + +ENTRY(ResetHandler) +SEARCH_DIR(.) + +/* + * Define stack size here + */ +FIQ_STACK_SIZE = 0x0100; +IRQ_STACK_SIZE = 0x0100; +ABT_STACK_SIZE = 0x0100; +UND_STACK_SIZE = 0x0100; +SVC_STACK_SIZE = 0x0400; + +/* + * This file, ethernut3_ram.ld, locate the program in the internal + * ram of the AT91R40008. For more information about the memory of the + * AT91R40008 take a look in the AT91 ARM data sheet. + * Reference is made to Rev. 1354D-ATARM-08/02 + * + * Take a look at page 15, Memory Map, Figure 3 + */ + +MEMORY +{ + ram : org = 0x00000000, len = 256k +} + +/* + * Do not change the next code + */ +SECTIONS +{ + .text : + { + *(.vectors); + . = ALIGN(4); + *(.init); + . = ALIGN(4); + *(.text); + . = ALIGN(4); + *(.rodata); + . = ALIGN(4); + *(.rodata*); + . = ALIGN(4); + *(.glue_7t); + . = ALIGN(4); + *(.glue_7); + . = ALIGN(4); + etext = .; + } > ram + + .data : + { + PROVIDE (__data_start = .); + *(.data) + . = ALIGN(4); + edata = .; + _edata = .; + PROVIDE (__data_end = .); + } > ram + + .bss : + { + PROVIDE (__bss_start = .); + *(.bss) + *(COMMON) + . = ALIGN(4); + PROVIDE (__bss_end = .); + + . = ALIGN(256); + + PROVIDE (__stack_start = .); + + PROVIDE (__stack_fiq_start = .); + . += FIQ_STACK_SIZE; + . = ALIGN(4); + PROVIDE (__stack_fiq_end = .); + + PROVIDE (__stack_irq_start = .); + . += IRQ_STACK_SIZE; + . = ALIGN(4); + PROVIDE (__stack_irq_end = .); + + PROVIDE (__stack_abt_start = .); + . += ABT_STACK_SIZE; + . = ALIGN(4); + PROVIDE (__stack_abt_end = .); + + PROVIDE (__stack_und_start = .); + . += UND_STACK_SIZE; + . = ALIGN(4); + PROVIDE (__stack_und_end = .); + + PROVIDE (__stack_svc_start = .); + . += SVC_STACK_SIZE; + . = ALIGN(4); + PROVIDE (__stack_svc_end = .); + PROVIDE (__stack_end = .); + PROVIDE (__heap_start = .); + } > ram + +} +/*** EOF ***/ + -- cgit v1.2.3