From c628ebaf33fb1054b391c96225565a43df0b375b Mon Sep 17 00:00:00 2001
From: slapin <slapin@builder.iar.darktech.org>
Date: Sun, 10 May 2009 02:16:44 +0400
Subject: [PATCH] AFEB9260 support / thumb support
---
Config.in | 5 +-
Makefile | 2 +-
board/Config.in | 47 +++++-
board/afeb9260/afeb9260.c | 251 +++++++++++++++++++++++++++++
board/afeb9260/afeb9260.h | 126 +++++++++++++++
board/afeb9260/afeb9260_defconfig | 94 +++++++++++
board/afeb9260/old/afeb9260.c | 240 +++++++++++++++++++++++++++
board/afeb9260/old/afeb9260.mk | 8 +
board/afeb9260/old/dataflash/afeb9260.h | 127 +++++++++++++++
board/afeb9260/old/nandflash/afeb9260ek.h | 151 +++++++++++++++++
board/afeb9260/old/pll.h | 35 ++++
board/at91cap9adk/at91cap9adk.c | 6 +-
board/at91sam9260ek/at91sam9260ek.c | 5 +
board/at91sam9261ek/at91sam9261ek.c | 5 +
board/at91sam9263ek/at91sam9263ek.c | 5 +
board/at91sam9g20ek/at91sam9g20ek.c | 6 +-
board/at91sam9rlek/at91sam9rlek.c | 5 +
board/at91sam9xeek/at91sam9xeek.c | 5 +
board/board_cpp.mk | 25 +++
crt0_gnu.S | 12 ++
driver/Config.in.dataflash | 2 +-
driver/dataflash.c | 2 +-
include/part.h | 6 +
23 files changed, 1157 insertions(+), 13 deletions(-)
create mode 100644 board/afeb9260/afeb9260.c
create mode 100644 board/afeb9260/afeb9260.h
create mode 100644 board/afeb9260/afeb9260_defconfig
create mode 100644 board/afeb9260/old/afeb9260.c
create mode 100644 board/afeb9260/old/afeb9260.mk
create mode 100644 board/afeb9260/old/dataflash/afeb9260.h
create mode 100644 board/afeb9260/old/nandflash/afeb9260ek.h
create mode 100644 board/afeb9260/old/pll.h
diff --git a/Config.in b/Config.in
index e187a27..d7f7a3b 100644
--- a/Config.in
+++ b/Config.in
@@ -109,4 +109,7 @@ config CONFIG_USER_HW_INIT
help
Initialize Hardware
-
+config CONFIG_THUMB
+ bool "Build in thumb mode"
+ help
+ Build code in thumb mode
diff --git a/Makefile b/Makefile
index 32bd556..8a53e94 100644
--- a/Makefile
+++ b/Makefile
@@ -189,7 +189,7 @@ include driver/driver_cpp.mk
# -lgcc : tells the linker to tie in newlib
LDFLAGS+=-nostartfiles -Map=result/$(BOOT_NAME).map --cref
#LDFLAGS+=-lc -lgcc
-LDFLAGS+=-T elf32-littlearm.lds -Ttext $(LINK_ADDR)
+LDFLAGS+=-T elf32-littlearm.lds --gc-sections -Ttext $(LINK_ADDR)
all: $(obj) $(AT91BOOTSTRAP) .config filesize
diff --git a/board/Config.in b/board/Config.in
index 074018a..1c2168b 100644
--- a/board/Config.in
+++ b/board/Config.in
@@ -92,6 +92,17 @@ config CONFIG_AT91CAP9ADK
help
Use the AT91CAP9ADK Development board
+config CONFIG_AFEB9260
+ bool "afeb9260"
+ select CONFIG_SDRAM
+ select ALLOW_DATAFLASH
+ select ALLOW_NANDFLASH
+ select ALLOW_CPU_CLK_166MHZ
+ select ALLOW_CPU_CLK_180MHZ
+ select ALLOW_CRYSTAL_18_432MHZ
+ help
+ Use the AFEB9260 Development board
+
endchoice
config CONFIG_CHIP
@@ -103,6 +114,7 @@ config CONFIG_CHIP
default "AT91SAM9XE" if CONFIG_AT91SAM9XEEK
default "AT91SAM9G20" if CONFIG_AT91SAM9G20EK
default "AT91CAP9" if CONFIG_AT91CAP9ADK
+ default "AT91SAM9260" if CONFIG_AFEB9260
help
Name of the board, A Board Support package
(BSP) must be available.
@@ -116,6 +128,7 @@ config CONFIG_BOARD
default "at91sam9xeek" if CONFIG_AT91SAM9XEEK
default "at91sam9g20ek" if CONFIG_AT91SAM9G20EK
default "at91cap9adk" if CONFIG_AT91CAP9ADK
+ default "afeb9260" if CONFIG_AFEB9260
help
Name of the board, A Board Support package
(BSP) must be available.
@@ -129,6 +142,7 @@ config CONFIG_MACH_TYPE
default "0x44B" if CONFIG_AT91SAM9XEEK
default "0x658" if CONFIG_AT91SAM9G20EK
default "1442" if CONFIG_AT91CAP9ADK
+ default "1859" if CONFIG_AFEB9260
help
config CONFIG_LINK_ADDR
@@ -141,6 +155,7 @@ config CONFIG_LINK_ADDR
default "0x200000" if CONFIG_AT91SAM9G20EK
default "0x000000" if CONFIG_AT91CAP9ADK && CONFIG_DATAFLASH
default "0x100000" if CONFIG_AT91CAP9ADK && CONFIG_FLASH
+ default "0x200000" if CONFIG_AFEB9260
default "0x200000"
help
@@ -153,11 +168,13 @@ config CONFIG_TOP_OF_MEMORY
default "0x301000" if CONFIG_AT91SAM9XEEK
default "0x301000" if CONFIG_AT91SAM9G20EK
default "0x108000" if CONFIG_AT91CAP9ADK
+ default "0x301000" if CONFIG_AFEB9260
help
config CONFIG_BOOTSTRAP_MAXSIZE
string
default "4096" if CONFIG_AT91SAM9260EK
+ default "4096" if CONFIG_AFEB9260
default "16384"
choice
@@ -212,6 +229,14 @@ choice
prompt "CPU clock"
default CONFIG_CPU_CLK_200MHZ
+config CONFIG_CPU_CLK_166MHZ
+ bool "166 MHz"
+ depends on ALLOW_CPU_CLK_166MHZ
+
+config CONFIG_CPU_CLK_180MHZ
+ bool "180 MHz"
+ depends on ALLOW_CPU_CLK_180MHZ
+
config CONFIG_CPU_CLK_200MHZ
bool "200 MHz"
depends on ALLOW_CPU_CLK_200MHZ
@@ -231,6 +256,12 @@ config CONFIG_CPU_CLK_400MHZ
endchoice
+config ALLOW_CPU_CLK_166MHZ
+ bool
+
+config ALLOW_CPU_CLK_180MHZ
+ bool
+
config ALLOW_CPU_CLK_200MHZ
bool
@@ -251,10 +282,18 @@ config DISABLE_CPU_CLK_240MHZ
choice
prompt "Bus Speed"
default CONFIG_BUS_SPEED_133MHZ
- depends on CONFIG_AT91SAM9G20EK
+ depends
|