Browse Source

- add missing svn props from 1323 commit

git-svn-id: svn://svn.berlios.de/openocd/trunk@1324 b42882b7-edfa-0310-969c-e2dbd0fdcd60
tags/v0.1.0
ntfreak 12 years ago
parent
commit
cb3f970b6c
7 changed files with 305 additions and 305 deletions
  1. +101
    -101
      src/target/board/imx31pdk.cfg
  2. +42
    -42
      testing/examples/ledtest-imx27ads/Makefile
  3. +47
    -47
      testing/examples/ledtest-imx27ads/crt0.S
  4. +36
    -36
      testing/examples/ledtest-imx27ads/gdbinit-imx27ads
  5. +18
    -18
      testing/examples/ledtest-imx27ads/ldscript
  6. +60
    -60
      testing/examples/ledtest-imx27ads/test.c
  7. +1
    -1
      testing/examples/ledtest-imx31pdk/test.c

+ 101
- 101
src/target/board/imx31pdk.cfg View File

@@ -1,101 +1,101 @@
# The IMX31PDK eval board has a single IMX31 chip
source [find target/imx31.cfg]
$_TARGETNAME configure -event gdb-attach { reset init }
$_TARGETNAME configure -event reset-init { imx31pdk_init }
proc imx31pdk_init { } {
# This setup puts RAM at 0x80000000
# reset the board correctly
reset run
reset halt
# ========================================
# Init CCM
# ========================================
mww 0x53FC0000 0x040
mww 0x53F80000 0x074B0B7D
sleep 100
# ========================================
# 399MHz - 26MHz input, PD=1,MFI=7, MFN=27, MFD=40
# ========================================
mww 0x53F80004 0xFF871D50
mww 0x53F80010 0x00271C1B
# ========================================
# Configure CPLD on CS5
# ========================================
mww 0xb8002050 0x0000DCF6
mww 0xb8002054 0x444A4541
mww 0xb8002058 0x44443302
# ========================================
# SDCLK
# ========================================
mww 0x43FAC26C 0
# ========================================
# CAS
# ========================================
mww 0x43FAC270 0
# ========================================
# RAS
# ========================================
mww 0x43FAC274 0
# ========================================
# CS2 (CSD0)
# ========================================
mww 0x43FAC27C 0x1000
# ========================================
# DQM3
# ========================================
mww 0x43FAC284 0
# ========================================
# DQM2, DQM1, DQM0, SD31-SD0, A25-A0, MA10 (0x288..0x2DC)
# ========================================
mww 0x43FAC288 0
mww 0x43FAC28C 0
mww 0x43FAC290 0
mww 0x43FAC294 0
mww 0x43FAC298 0
mww 0x43FAC29C 0
mww 0x43FAC2A0 0
mww 0x43FAC2A4 0
mww 0x43FAC2A8 0
mww 0x43FAC2AC 0
mww 0x43FAC2B0 0
mww 0x43FAC2B4 0
mww 0x43FAC2B8 0
mww 0x43FAC2BC 0
mww 0x43FAC2C0 0
mww 0x43FAC2C4 0
mww 0x43FAC2C8 0
mww 0x43FAC2CC 0
mww 0x43FAC2D0 0
mww 0x43FAC2D4 0
mww 0x43FAC2D8 0
mww 0x43FAC2DC 0
# ========================================
# Initialization script for 32 bit DDR on MX31 PDK
# ========================================
mww 0xB8001010 0x00000004
mww 0xB8001004 0x006ac73a
mww 0xB8001000 0x92100000
mww 0x80000f00 0x12344321
mww 0xB8001000 0xa2100000
mww 0x80000000 0x12344321
mww 0x80000000 0x12344321
mww 0xB8001000 0xb2100000
mwb 0x80000033 0xda
mwb 0x81000000 0xff
mww 0xB8001000 0x82226080
mww 0x80000000 0xDEADBEEF
mww 0xB8001010 0x0000000c
}
# The IMX31PDK eval board has a single IMX31 chip
source [find target/imx31.cfg]
$_TARGETNAME configure -event gdb-attach { reset init }
$_TARGETNAME configure -event reset-init { imx31pdk_init }
proc imx31pdk_init { } {
# This setup puts RAM at 0x80000000
# reset the board correctly
reset run
reset halt
# ========================================
# Init CCM
# ========================================
mww 0x53FC0000 0x040
mww 0x53F80000 0x074B0B7D
sleep 100
# ========================================
# 399MHz - 26MHz input, PD=1,MFI=7, MFN=27, MFD=40
# ========================================
mww 0x53F80004 0xFF871D50
mww 0x53F80010 0x00271C1B
# ========================================
# Configure CPLD on CS5
# ========================================
mww 0xb8002050 0x0000DCF6
mww 0xb8002054 0x444A4541
mww 0xb8002058 0x44443302
# ========================================
# SDCLK
# ========================================
mww 0x43FAC26C 0
# ========================================
# CAS
# ========================================
mww 0x43FAC270 0
# ========================================
# RAS
# ========================================
mww 0x43FAC274 0
# ========================================
# CS2 (CSD0)
# ========================================
mww 0x43FAC27C 0x1000
# ========================================
# DQM3
# ========================================
mww 0x43FAC284 0
# ========================================
# DQM2, DQM1, DQM0, SD31-SD0, A25-A0, MA10 (0x288..0x2DC)
# ========================================
mww 0x43FAC288 0
mww 0x43FAC28C 0
mww 0x43FAC290 0
mww 0x43FAC294 0
mww 0x43FAC298 0
mww 0x43FAC29C 0
mww 0x43FAC2A0 0
mww 0x43FAC2A4 0
mww 0x43FAC2A8 0
mww 0x43FAC2AC 0
mww 0x43FAC2B0 0
mww 0x43FAC2B4 0
mww 0x43FAC2B8 0
mww 0x43FAC2BC 0
mww 0x43FAC2C0 0
mww 0x43FAC2C4 0
mww 0x43FAC2C8 0
mww 0x43FAC2CC 0
mww 0x43FAC2D0 0
mww 0x43FAC2D4 0
mww 0x43FAC2D8 0
mww 0x43FAC2DC 0
# ========================================
# Initialization script for 32 bit DDR on MX31 PDK
# ========================================
mww 0xB8001010 0x00000004
mww 0xB8001004 0x006ac73a
mww 0xB8001000 0x92100000
mww 0x80000f00 0x12344321
mww 0xB8001000 0xa2100000
mww 0x80000000 0x12344321
mww 0x80000000 0x12344321
mww 0xB8001000 0xb2100000
mwb 0x80000033 0xda
mwb 0x81000000 0xff
mww 0xB8001000 0x82226080
mww 0x80000000 0xDEADBEEF
mww 0xB8001010 0x0000000c
}

+ 42
- 42
testing/examples/ledtest-imx27ads/Makefile View File

@@ -1,42 +1,42 @@
# This will make the test program for a Freescale iMX27 ADS Board with a
# FreeScale iMX27 CPU
PROC=arm
TYPE=926ejs-linux
LDSCRIPT=ldscript
PATH:=/opt/freescale/usr/local/gcc-4.1.1-glibc-2.4-nptl-sf-1/arm-926ejs-linux/bin/:$(PATH)
CC=$(PROC)-$(TYPE)-gcc
AS=$(PROC)-$(TYPE)-as
AR=$(PROC)-$(TYPE)-ar
LD=$(PROC)-$(TYPE)-ld
NM=$(PROC)-$(TYPE)-nm
OBJDUMP=$(PROC)-$(TYPE)-objdump
CFLAGS= -g -c -mcpu=arm920t
all: test.elf
# Make a little endian image:
# In Eclipse, add the line :
# source gdbinit
# to : Run -> Debug... (menu) -> Commands (tab): Commands (listbox)
# To start gdb from a window use : arm-elf-gdb --command=gdbinit
test.elf: test.c Makefile ldscript crt0.S
$(CC) $(CFLAGS) -o crt0.o crt0.S
$(CC) $(CFLAGS) -o test.o test.c
$(LD) -g -v -T$(LDSCRIPT) -o test.elf crt0.o test.o
$(NM) test.elf
dump:
$(OBJDUMP) --all-headers test.elf
dump_test:
$(OBJDUMP) --disassemble test.elf
dump_full:
$(OBJDUMP) --full-contents test.elf
clean:
-/bin/rm -f *.o *~ test.elf
# This will make the test program for a Freescale iMX27 ADS Board with a
# FreeScale iMX27 CPU
PROC=arm
TYPE=926ejs-linux
LDSCRIPT=ldscript
PATH:=/opt/freescale/usr/local/gcc-4.1.1-glibc-2.4-nptl-sf-1/arm-926ejs-linux/bin/:$(PATH)
CC=$(PROC)-$(TYPE)-gcc
AS=$(PROC)-$(TYPE)-as
AR=$(PROC)-$(TYPE)-ar
LD=$(PROC)-$(TYPE)-ld
NM=$(PROC)-$(TYPE)-nm
OBJDUMP=$(PROC)-$(TYPE)-objdump
CFLAGS= -g -c -mcpu=arm920t
all: test.elf
# Make a little endian image:
# In Eclipse, add the line :
# source gdbinit
# to : Run -> Debug... (menu) -> Commands (tab): Commands (listbox)
# To start gdb from a window use : arm-elf-gdb --command=gdbinit
test.elf: test.c Makefile ldscript crt0.S
$(CC) $(CFLAGS) -o crt0.o crt0.S
$(CC) $(CFLAGS) -o test.o test.c
$(LD) -g -v -T$(LDSCRIPT) -o test.elf crt0.o test.o
$(NM) test.elf
dump:
$(OBJDUMP) --all-headers test.elf
dump_test:
$(OBJDUMP) --disassemble test.elf
dump_full:
$(OBJDUMP) --full-contents test.elf
clean:
-/bin/rm -f *.o *~ test.elf

+ 47
- 47
testing/examples/ledtest-imx27ads/crt0.S View File

@@ -1,47 +1,47 @@
/* Sample initialization file */
.extern main
.extern exit
/* .text is used instead of .section .text so it works with arm-aout too. */
.text
.code 32
.align 0
.global _mainCRTStartup
.global _start
.global start
start:
_start:
_mainCRTStartup:
/* Start by setting up a stack */
/* Set up the stack pointer to end of bss */
ldr r3, .LC2
mov sp, r3
sub sl, sp, #512 /* Still assumes 512 bytes below sl */
mov a2, #0 /* Second arg: fill value */
mov fp, a2 /* Null frame pointer */
mov r7, a2 /* Null frame pointer for Thumb */
ldr a1, .LC1 /* First arg: start of memory block */
ldr a3, .LC2 /* Second arg: end of memory block */
sub a3, a3, a1 /* Third arg: length of block */
mov r0, #0 /* no arguments */
mov r1, #0 /* no argv either */
bl main
bl exit /* Should not return */
/* For Thumb, constants must be after the code since only
positive offsets are supported for PC relative addresses. */
.align 0
.LC1:
.word __bss_start__
.LC2:
.word __bss_end__
/* Sample initialization file */
.extern main
.extern exit
/* .text is used instead of .section .text so it works with arm-aout too. */
.text
.code 32
.align 0
.global _mainCRTStartup
.global _start
.global start
start:
_start:
_mainCRTStartup:
/* Start by setting up a stack */
/* Set up the stack pointer to end of bss */
ldr r3, .LC2
mov sp, r3
sub sl, sp, #512 /* Still assumes 512 bytes below sl */
mov a2, #0 /* Second arg: fill value */
mov fp, a2 /* Null frame pointer */
mov r7, a2 /* Null frame pointer for Thumb */
ldr a1, .LC1 /* First arg: start of memory block */
ldr a3, .LC2 /* Second arg: end of memory block */
sub a3, a3, a1 /* Third arg: length of block */
mov r0, #0 /* no arguments */
mov r1, #0 /* no argv either */
bl main
bl exit /* Should not return */
/* For Thumb, constants must be after the code since only
positive offsets are supported for PC relative addresses. */
.align 0
.LC1:
.word __bss_start__
.LC2:
.word __bss_end__

+ 36
- 36
testing/examples/ledtest-imx27ads/gdbinit-imx27ads View File

@@ -1,36 +1,36 @@
echo Script to load ledtest on iMX27ADS.\n
# Note: you need to startup openocd with "-f board/imx27ads.cfg"
# in order to it initialize RAM memory.
# SETUP GDB :
#
# Common gdb setup for ARM CPUs
set complaints 1
set output-radix 10
set input-radix 10
set prompt (arm-gdb)
set endian little
dir .
# CONNECT TO TARGET :
target remote 127.0.0.1:3333
# LOAD IMAGE :
#
# Load the program executable called "u-boot"
load test.elf
# Load the symbols for the program.
symbol-file test.elf
# RUN TO MAIN :
#
# Set a breakpoint at main().
#b reset
b main
# Run to the breakpoint.
c
echo Script to load ledtest on iMX27ADS.\n
# Note: you need to startup openocd with "-f board/imx27ads.cfg"
# in order to it initialize RAM memory.
# SETUP GDB :
#
# Common gdb setup for ARM CPUs
set complaints 1
set output-radix 10
set input-radix 10
set prompt (arm-gdb)
set endian little
dir .
# CONNECT TO TARGET :
target remote 127.0.0.1:3333
# LOAD IMAGE :
#
# Load the program executable called "u-boot"
load test.elf
# Load the symbols for the program.
symbol-file test.elf
# RUN TO MAIN :
#
# Set a breakpoint at main().
#b reset
b main
# Run to the breakpoint.
c

+ 18
- 18
testing/examples/ledtest-imx27ads/ldscript View File

@@ -1,18 +1,18 @@
SECTIONS
{
. = 0xA0000000;
.text : { *(.text) }
.data ALIGN(0x10): { *(.data) }
.bss ALIGN(0x10): {
__bss_start__ = ABSOLUTE(.);
*(.bss)
. += 0x100;
}
__bss_end__ = .;
PROVIDE (__stack = .);
_end = .;
.debug_info 0 : { *(.debug_info) }
.debug_abbrev 0 : { *(.debug_abbrev) }
.debug_line 0 : { *(.debug_line) }
.debug_frame 0 : { *(.debug_frame) }
}
SECTIONS
{
. = 0xA0000000;
.text : { *(.text) }
.data ALIGN(0x10): { *(.data) }
.bss ALIGN(0x10): {
__bss_start__ = ABSOLUTE(.);
*(.bss)
. += 0x100;
}
__bss_end__ = .;
PROVIDE (__stack = .);
_end = .;
.debug_info 0 : { *(.debug_info) }
.debug_abbrev 0 : { *(.debug_abbrev) }
.debug_line 0 : { *(.debug_line) }
.debug_frame 0 : { *(.debug_frame) }
}

+ 60
- 60
testing/examples/ledtest-imx27ads/test.c View File

@@ -1,60 +1,60 @@
/***************************************************************************
* Copyright (C) 2009 by Alan Carvalho de Assis *
* acassis@gmail.com *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
void delay()
{
int i;
for (i = 0; i < 500000; i++);
}
/* MAIN ARM FUNTION */
int main (void)
{
int i;
volatile unsigned char *ledoff = ((volatile unsigned char *)0xD4000008);
volatile unsigned char *ledon = ((volatile unsigned char *)0xD400000C);
for (i = 0; i < 10000; i++)
{
*ledon = 0x30;
delay();
*ledoff = 0x30;
delay();
} /* FOR */
} /* MAIN */
__gccmain()
{
} /* GCCMAIN */
void exit(int exit_code)
{
while(1);
} /* EXIT */
atexit()
{
while(1);
} /* ATEXIT */
/***************************************************************************
* Copyright (C) 2009 by Alan Carvalho de Assis *
* acassis@gmail.com *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
void delay()
{
int i;
for (i = 0; i < 500000; i++);
}
/* MAIN ARM FUNTION */
int main (void)
{
int i;
volatile unsigned char *ledoff = ((volatile unsigned char *)0xD4000008);
volatile unsigned char *ledon = ((volatile unsigned char *)0xD400000C);
for (i = 0; i < 10000; i++)
{
*ledon = 0x30;
delay();
*ledoff = 0x30;
delay();
} /* FOR */
} /* MAIN */
__gccmain()
{
} /* GCCMAIN */
void exit(int exit_code)
{
while(1);
} /* EXIT */
atexit()
{
while(1);
} /* ATEXIT */

+ 1
- 1
testing/examples/ledtest-imx31pdk/test.c View File

@@ -1,5 +1,5 @@
/***************************************************************************
* Copyright (C) 2009 by Alan Carvalho de Assis *
* Copyright (C) 2009 by Alan Carvalho de Assis *
* acassis@gmail.com *
* *
* This program is free software; you can redistribute it and/or modify *


Loading…
Cancel
Save