From: Michael Schwingen <michael@schwingen.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 07/13] update/fix AcTux2 board
Date: Tue, 28 Dec 2010 13:43:25 +0100 [thread overview]
Message-ID: <1293540211-3684-8-git-send-email-michael@schwingen.org> (raw)
In-Reply-To: <1293540211-3684-1-git-send-email-michael@schwingen.org>
Signed-off-by: Michael Schwingen <michael@schwingen.org>
---
board/actux2/actux2.c | 26 ++++++++++++++------------
board/actux2/config.mk | 2 --
board/actux2/u-boot.lds | 45 ++++++++++++++++++++++++++++-----------------
include/configs/actux2.h | 21 ++++++++++++++++-----
4 files changed, 58 insertions(+), 36 deletions(-)
diff --git a/board/actux2/actux2.c b/board/actux2/actux2.c
index d6aaad6..634553f 100644
--- a/board/actux2/actux2.c
+++ b/board/actux2/actux2.c
@@ -43,6 +43,19 @@
DECLARE_GLOBAL_DATA_PTR;
+int board_early_init_f (void)
+{
+ /* CS1: IPAC-X */
+ *IXP425_EXP_CS1 = 0x94d10013;
+ /* CS5: Debug port */
+ *IXP425_EXP_CS5 = 0x9d520003;
+ /* CS6: HW release register */
+ *IXP425_EXP_CS6 = 0x81860001;
+ /* CS7: LEDs */
+ *IXP425_EXP_CS7 = 0x80900003;
+ return 0;
+}
+
int board_init (void)
{
gd->bd->bi_arch_number = MACH_TYPE_ACTUX2;
@@ -70,15 +83,6 @@ int board_init (void)
GPIO_OUTPUT_ENABLE (CONFIG_SYS_GPIO_EXTBUS_CLK);
*IXP425_GPIO_GPCLKR = 0x011001FF;
- /* CS1: IPAC-X */
- *IXP425_EXP_CS1 = 0x94d10013;
- /* CS5: Debug port */
- *IXP425_EXP_CS5 = 0x9d520003;
- /* CS6: HW release register */
- *IXP425_EXP_CS6 = 0x81860001;
- /* CS7: LEDs */
- *IXP425_EXP_CS7 = 0x80900003;
-
udelay (533);
GPIO_OUTPUT_SET (CONFIG_SYS_GPIO_IORST);
GPIO_OUTPUT_SET (CONFIG_SYS_GPIO_ETHRST);
@@ -112,9 +116,7 @@ int checkboard (void)
int dram_init (void)
{
- gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
- gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
-
+ gd->ram_size = PHYS_SDRAM_1_SIZE;
return (0);
}
diff --git a/board/actux2/config.mk b/board/actux2/config.mk
index 88634f7..b98b909 100644
--- a/board/actux2/config.mk
+++ b/board/actux2/config.mk
@@ -1,5 +1,3 @@
-CONFIG_SYS_TEXT_BASE = 0x00e00000
-
# include NPE ethernet driver
BOARDLIBS = arch/arm/cpu/ixp/npe/libnpe.o
diff --git a/board/actux2/u-boot.lds b/board/actux2/u-boot.lds
index 707c027..5f289a1 100644
--- a/board/actux2/u-boot.lds
+++ b/board/actux2/u-boot.lds
@@ -30,34 +30,29 @@ SECTIONS
. = ALIGN (4);
.text : {
- arch/arm/cpu/ixp/start.o(.text)
- lib/string.o(.text)
- lib/vsprintf.o(.text)
- arch/arm/lib/board.o(.text)
- common/dlmalloc.o(.text)
- arch/arm/cpu/ixp/cpu.o(.text)
+ arch/arm/cpu/ixp/start.o(.text*)
+ net/libnet.o(.text*)
+ board/actux2/libactux2.o(.text*)
+ arch/arm/cpu/ixp/libixp.o(.text*)
+ drivers/serial/libserial.o(.text*)
. = env_offset;
- common/env_embedded.o (.ppcenv)
-
- * (.text)
+ common/env_embedded.o(.ppcenv)
+ *(.text*)
}
. = ALIGN (4);
.rodata : {
*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
-
. = ALIGN (4);
.data : {
- *(.data)
+ *(.data*)
}
-
. = ALIGN (4);
.got : {
*(.got)
}
-
. =.;
__u_boot_cmd_start =.;
.u_boot_cmd : {
@@ -66,10 +61,26 @@ SECTIONS
__u_boot_cmd_end =.;
. = ALIGN (4);
- __bss_start =.;
- .bss (NOLOAD): {
+ .rel.dyn : {
+ __rel_dyn_start = .;
+ *(.rel*)
+ __rel_dyn_end = .;
+ }
+
+ .dynsym : {
+ __dynsym_start = .;
+ *(.dynsym)
+ }
+
+ .bss __rel_dyn_start (OVERLAY) : {
+ __bss_start = .;
*(.bss)
- . = ALIGN(4);
+ . = ALIGN(4);
+ _end = .;
}
- _end =.;
+ /DISCARD/ : { *(.dynstr*) }
+ /DISCARD/ : { *(.dynamic*) }
+ /DISCARD/ : { *(.plt*) }
+ /DISCARD/ : { *(.interp*) }
+ /DISCARD/ : { *(.gnu*) }
}
diff --git a/include/configs/actux2.h b/include/configs/actux2.h
index 756279e..4ba3ce0 100644
--- a/include/configs/actux2.h
+++ b/include/configs/actux2.h
@@ -37,6 +37,7 @@
#define CONFIG_BAUDRATE 115200
#define CONFIG_BOOTDELAY 5
#define CONFIG_ZERO_BOOTDELAY_CHECK /* check for keypress on bootdelay==0 */
+#define CONFIG_BOARD_EARLY_INIT_F 1
/***************************************************************
* U-boot generic defines start here.
@@ -45,7 +46,6 @@
/* Size of malloc() pool */
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 128*1024)
-/* size in bytes reserved for initial data */
/* allow to overwrite serial and ethaddr */
#define CONFIG_ENV_OVERWRITE
@@ -85,8 +85,9 @@
#define CONFIG_SYS_MEMTEST_START 0x00400000
#define CONFIG_SYS_MEMTEST_END 0x00800000
-/* spec says 66.666 MHz, but it appears to be 33 */
-#define CONFIG_SYS_HZ 3333333
+/* timer clock - 2* OSC_IN system clock */
+#define CONFIG_IXP425_TIMER_CLK 66666666
+#define CONFIG_SYS_HZ 1000
/* default load address */
#define CONFIG_SYS_LOAD_ADDR 0x00010000
@@ -112,7 +113,7 @@
/* SDRAM settings */
#define CONFIG_NR_DRAM_BANKS 1
#define PHYS_SDRAM_1 0x00000000
-#define CONFIG_SYS_DRAM_BASE 0x00000000
+#define CONFIG_SYS_SDRAM_BASE 0x00000000
/* 16MB SDRAM */
#define CONFIG_SYS_SDR_CONFIG 0x3A
@@ -122,6 +123,7 @@
#define CONFIG_SYS_DRAM_SIZE 0x01000000
/* FLASH organization */
+#define CONFIG_SYS_TEXT_BASE 0x50000000
#define CONFIG_SYS_MAX_FLASH_BANKS 1
/* max number of sectors on one chip */
#define CONFIG_SYS_MAX_FLASH_SECT 140
@@ -184,13 +186,15 @@
"npe_ucode=50040000\0" \
"mtd=IXP4XX-Flash.0:256k(uboot),64k(ucode),1152k(linux),-(root)\0" \
"kerneladdr=50050000\0" \
+ "kernelfile=actux2/uImage\0" \
+ "rootfile=actux2/rootfs\0" \
"rootaddr=50170000\0" \
"loadaddr=10000\0" \
"updateboot_ser=mw.b 10000 ff 40000;" \
" loady ${loadaddr};" \
" run eraseboot writeboot\0" \
"updateboot_net=mw.b 10000 ff 40000;" \
- " tftp ${loadaddr} u-boot.bin;" \
+ " tftp ${loadaddr} actux2/u-boot.bin;" \
" run eraseboot writeboot\0" \
"eraseboot=protect off 50000000 50003fff;" \
" protect off 50006000 5003ffff;" \
@@ -200,6 +204,9 @@
" cp.b 16000 50006000 3a000\0" \
"eraseenv=protect off 50004000 50005fff;" \
" erase 50004000 50005fff\0" \
+ "updateucode=loady;" \
+ " era ${npe_ucode} +${filesize};" \
+ " cp.b ${loadaddr} ${npe_ucode} ${filesize}\0" \
"updateroot=tftp ${loadaddr} ${rootfile};" \
" era ${rootaddr} +${filesize};" \
" cp.b ${loadaddr} ${rootaddr} ${filesize}\0" \
@@ -218,4 +225,8 @@
" tftpboot ${loadaddr} ${kernelfile};" \
" bootm\0"
+/* additions for new relocation code, must be added to all boards */
+#define CONFIG_SYS_INIT_SP_ADDR \
+ (CONFIG_SYS_SDRAM_BASE + 0x1000 - GENERATED_GBL_DATA_SIZE)
+
#endif /* __CONFIG_H */
--
1.7.2.3
next prev parent reply other threads:[~2010-12-28 12:43 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-28 12:43 [U-Boot] IXP42x patch series Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 01/13] add XScale sub architecture (IXP/PXA) to board list Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 02/13] add support for IXP42x Rev. B1 and newer Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 03/13] trigger hardware watchdog in IXP42x serial driver Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 04/13] Fix IXP code to work after relocation was added: - jump to real flash location after reset before turning off flash mirror - fix timer system to use HZ == 1000, remove broken interrupt-based code Michael Schwingen
2010-12-29 4:48 ` Mike Frysinger
2010-12-28 12:43 ` [U-Boot] [PATCH 05/13] fix "depend" target in npe directory Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 06/13] update/fix AcTux1 board Michael Schwingen
2010-12-28 12:43 ` Michael Schwingen [this message]
2010-12-28 12:43 ` [U-Boot] [PATCH 08/13] update/fix AcTux3 board Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 09/13] update/fix AcTux4 board Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 10/13] update/fix some more IXP42x boards (only compile tested) Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 11/13] add dvlhost (dLAN 200 AV Wireless G) board Michael Schwingen
2010-12-28 12:43 ` [U-Boot] [PATCH 12/13] add support for function-sections Michael Schwingen
2010-12-29 4:47 ` Mike Frysinger
2010-12-29 8:28 ` Michael Schwingen
2010-12-29 8:35 ` Mike Frysinger
2010-12-28 12:43 ` [U-Boot] [PATCH 13/13] add support for fixed-speed MII ports (no standard PHY registers) Michael Schwingen
2010-12-29 4:48 ` Mike Frysinger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1293540211-3684-8-git-send-email-michael@schwingen.org \
--to=michael@schwingen.org \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.