Added uboot-pogo

This commit is contained in:
Mike Staszel 2010-04-08 22:37:27 -05:00
parent 63e71a2a76
commit 0111f8460d
14 changed files with 504 additions and 0 deletions

View file

@ -0,0 +1,42 @@
From 36203d048e32f6f32937581e4d3676d23836c0a6 Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Thu, 4 Feb 2010 05:42:09 +0100
Subject: [PATCH 01/14] DockStar: Change RAM definitions to one bank (128 MB).
---
board/Marvell/sheevaplug/kwbimage.cfg | 10 ++++------
1 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/board/Marvell/sheevaplug/kwbimage.cfg b/board/Marvell/sheevaplug/kwbimage.cfg
index 3b9c53f..c8c7efe 100644
--- a/board/Marvell/sheevaplug/kwbimage.cfg
+++ b/board/Marvell/sheevaplug/kwbimage.cfg
@@ -74,11 +74,11 @@ DATA 0xFFD0140C 0x00000a33 # DDR Timing (High)
# bit12-11: TW2W
# bit31-13: zero required
-DATA 0xFFD01410 0x000000cc # DDR Address Control
+DATA 0xFFD01410 0x0000000d # DDR Address Control
# bit1-0: 00, Cs0width=x8
# bit3-2: 11, Cs0size=1Gb
-# bit5-4: 00, Cs1width=x8
-# bit7-6: 11, Cs1size=1Gb
+# bit5-4: 00, Cs1width=nonexistent
+# bit7-6: 00, Cs1size =nonexistent
# bit9-8: 00, Cs2width=nonexistent
# bit11-10: 00, Cs2size =nonexistent
# bit13-12: 00, Cs3width=nonexistent
@@ -142,9 +142,7 @@ DATA 0xFFD01504 0x0FFFFFF1 # CS[0]n Size
# bit23-4: ones, required
# bit31-24: 0x0F, Size (i.e. 256MB)
-DATA 0xFFD01508 0x10000000 # CS[1]n Base address to 256Mb
-DATA 0xFFD0150C 0x0FFFFFF5 # CS[1]n Size 256Mb Window enabled for CS1
-
+DATA 0xFFD0150C 0x00000000 # CS[1]n Size, window disabled
DATA 0xFFD01514 0x00000000 # CS[2]n Size, window disabled
DATA 0xFFD0151C 0x00000000 # CS[3]n Size, window disabled
--
1.6.4.4

View file

@ -0,0 +1,27 @@
From 933ca7c0f6f6c68d68d24373df3733eeb2efc974 Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Thu, 4 Feb 2010 06:14:55 +0100
Subject: [PATCH 02/14] DockStar: environment is at 0xa0000.
---
include/configs/sheevaplug.h | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index fc401a8..e020cb0 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -123,8 +123,8 @@
* it has to be rounded to sector size
*/
#define CONFIG_ENV_SIZE 0x20000 /* 128k */
-#define CONFIG_ENV_ADDR 0x40000
-#define CONFIG_ENV_OFFSET 0x40000 /* env starts here */
+#define CONFIG_ENV_ADDR 0xA0000
+#define CONFIG_ENV_OFFSET 0xA0000 /* env starts here */
/*
* Default environment variables
--
1.6.4.4

View file

@ -0,0 +1,27 @@
From ee152f0e659b69f46e52339c65996d5a0addfa4b Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Thu, 4 Feb 2010 06:29:43 +0100
Subject: [PATCH 03/14] DockStar: MTD partitions.
---
include/configs/sheevaplug.h | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index e020cb0..cccd142 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -133,8 +133,8 @@
"setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
"${x_bootcmd_usb}; bootm 0x6400000;"
-#define CONFIG_MTDPARTS "orion_nand:512k(uboot)," \
- "3m@1m(kernel),1m@4m(psm),13m@5m(rootfs) rw\0"
+#define CONFIG_MTDPARTS "orion_nand:1m(u-boot)," \
+ "4m@1m(uImage),32m@5m(root),219m@37m(data) rw\0"
#define CONFIG_EXTRA_ENV_SETTINGS "x_bootargs=console" \
"=ttyS0,115200 mtdparts="CONFIG_MTDPARTS \
--
1.6.4.4

View file

@ -0,0 +1,35 @@
From d378c5eb18b7c208307ad5aaafacf91c4f0d73bb Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Thu, 4 Feb 2010 05:50:06 +0100
Subject: [PATCH 04/14] DockStar: Change prompt and ident string.
It just looks better if the greeting reflects the actual used hardware. ;)
---
include/configs/sheevaplug.h | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index cccd142..ecb794c 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -28,7 +28,7 @@
/*
* Version number information
*/
-#define CONFIG_IDENT_STRING "\nMarvell-Sheevaplug"
+#define CONFIG_IDENT_STRING "\nPlugApps Pogoplug"
/*
* High Level Configuration Options (easy to change)
@@ -81,7 +81,7 @@
#define CONFIG_INITRD_TAG 1 /* enable INITRD tag */
#define CONFIG_SETUP_MEMORY_TAGS 1 /* enable memory tag */
-#define CONFIG_SYS_PROMPT "Marvell>> " /* Command Prompt */
+#define CONFIG_SYS_PROMPT "PlugApps>> " /* Command Prompt */
#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buff Size */
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE \
+sizeof(CONFIG_SYS_PROMPT) + 16) /* Print Buff */
--
1.6.4.4

View file

@ -0,0 +1,29 @@
From 854ad4382cfcb24a5f9225f19f924085305a71ce Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Thu, 4 Feb 2010 06:16:03 +0100
Subject: [PATCH 05/14] DockStar: Disable environment in NAND. We don't want to change that.
---
include/configs/sheevaplug.h | 5 -----
1 files changed, 0 insertions(+), 5 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index ecb794c..98c86b7 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -112,12 +112,7 @@
/*
* Environment variables configurations
*/
-#ifdef CONFIG_CMD_NAND
-#define CONFIG_ENV_IS_IN_NAND 1
-#define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K */
-#else
#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */
-#endif
/*
* max 4k env size is enough, but in case of nand
* it has to be rounded to sector size
--
1.6.4.4

View file

@ -0,0 +1,24 @@
From 185d555a1b8bf7d7c04047c966b5b0843c1520a4 Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Thu, 4 Feb 2010 06:36:08 +0100
Subject: [PATCH 06/14] DockStar: Add support for ext2.
---
include/configs/sheevaplug.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 98c86b7..6b56652 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -94,6 +94,7 @@
#define CONFIG_CMD_DHCP
#define CONFIG_CMD_ENV
#define CONFIG_CMD_FAT
+#define CONFIG_CMD_EXT2
#define CONFIG_CMD_NAND
#define CONFIG_CMD_PING
#define CONFIG_CMD_USB
--
1.6.4.4

View file

@ -0,0 +1,24 @@
From 21b28944090f61500787e6087e65d4d8c4a291ee Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Tue, 16 Feb 2010 21:11:57 +0100
Subject: [PATCH 07/14] DockStar: Include long help messages.
---
include/configs/sheevaplug.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 6b56652..4861f3a 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -98,6 +98,7 @@
#define CONFIG_CMD_NAND
#define CONFIG_CMD_PING
#define CONFIG_CMD_USB
+#define CONFIG_SYS_LONGHELP
/*
* NAND configuration
--
1.6.4.4

View file

@ -0,0 +1,25 @@
From bca0f450beeecc38fce940a1207d7b6ec7602dda Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Wed, 17 Feb 2010 13:40:14 +0100
Subject: [PATCH 08/14] DockStar: Change TEXT_BASE from 0x600000 to 0xc00000 for chainloading U-Boot.
---
board/Marvell/sheevaplug/config.mk | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/board/Marvell/sheevaplug/config.mk b/board/Marvell/sheevaplug/config.mk
index 2bd9f79..786dc17 100644
--- a/board/Marvell/sheevaplug/config.mk
+++ b/board/Marvell/sheevaplug/config.mk
@@ -22,7 +22,7 @@
# MA 02110-1301 USA
#
-TEXT_BASE = 0x00600000
+TEXT_BASE = 0x00c00000
# Kirkwood Boot Image configuration file
KWD_CONFIG = $(SRCTREE)/board/$(BOARDDIR)/kwbimage.cfg
--
1.6.4.4

View file

@ -0,0 +1,38 @@
From 435466179fff3dbd792456a7ab5aea2e36ac408f Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Wed, 17 Feb 2010 00:10:09 +0100
Subject: [PATCH 09/14] DockStar: Small build-script.
---
mkDockStar.sh | 19 +++++++++++++++++++
1 files changed, 19 insertions(+), 0 deletions(-)
create mode 100755 mkDockStar.sh
diff --git a/mkDockStar.sh b/mkDockStar.sh
new file mode 100755
index 0000000..a28b95c
--- /dev/null
+++ b/mkDockStar.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+die() {
+ echo "$1"
+ exit 1
+}
+grep 00:10:75:12:34:56 include/configs/sheevaplug.h && die "Please change the MAC in include/configs/sheevaplug.h"
+grep \\.ip\\. include/configs/sheevaplug.h && die "Please change the IPs in include/configs/sheevaplug.h"
+make mrproper
+make sheevaplug_config
+make u-boot.kwb
+echo "Building u-boot.bin.pagesize"
+# Slow but does the trick
+bytes=$(stat --format='%s' u-boot.bin)
+fillbytes=$[262144-$bytes]
+cp u-boot.bin u-boot.bin.pagesize
+while [ $fillbytes -ne 0 ]; do
+ printf "\xff" >>u-boot.bin.pagesize
+ fillbytes=$[$fillbytes-1]
+done
--
1.6.4.4

View file

@ -0,0 +1,27 @@
From 1ba6365d89537f2bcf389df971dc10d16cc6bc27 Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Thu, 4 Feb 2010 06:53:53 +0100
Subject: [PATCH 10/14] DockStar: Definition for the MAC. CHANGE THIS TO THE MAC OF YOUR DEVICE!
---
include/configs/sheevaplug.h | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 4861f3a..80d26d4 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -123,6 +123,10 @@
#define CONFIG_ENV_ADDR 0xA0000
#define CONFIG_ENV_OFFSET 0xA0000 /* env starts here */
+/* The MAC for the Ethernet interface */
+/* CHANGE THIS TO THE MAC FOUND ON THE BOTTOM OF YOUR DOCKSTAR! */
+#define CONFIG_ETHADDR 00:25:31:00:03:25
+
/*
* Default environment variables
*/
--
1.6.4.4

View file

@ -0,0 +1,24 @@
From 5c009c8ebd07699b95edce0f8e73cfbf88b19b20 Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Tue, 16 Feb 2010 22:03:57 +0100
Subject: [PATCH 11/14] DockStar: CONFIG_PREBOOT (kernel and netconsole) CHANGE THIS TO YOUR IPS!
---
include/configs/sheevaplug.h | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 80d26d4..127302d 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -99,6 +99,7 @@
#define CONFIG_CMD_PING
#define CONFIG_CMD_USB
#define CONFIG_SYS_LONGHELP
+#define CONFIG_PREBOOT "setenv arcNumber 2097;setenv mainlineLinux yes"
/*
--
1.6.4.4

View file

@ -0,0 +1,45 @@
From f0654fcc032176c18f0b45f985a79ffe53d191e2 Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Wed, 17 Feb 2010 00:02:04 +0100
Subject: [PATCH 12/14] DockStar: Boot from USB and netconsole. CHANGE THIS TO YOUR IPS!
---
include/configs/sheevaplug.h | 18 ++++++++++--------
1 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 127302d..42b873b 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -140,18 +140,20 @@
/*
* Default environment variables
*/
-#define CONFIG_BOOTCOMMAND "${x_bootcmd_kernel}; " \
- "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
- "${x_bootcmd_usb}; bootm 0x6400000;"
+#define CONFIG_BOOTCOMMAND \
+ "${x_bootcmd_usb}; " \
+ "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
+ "${x_bootload_kernel}; bootm 0x800000;"
#define CONFIG_MTDPARTS "orion_nand:1m(u-boot)," \
"4m@1m(uImage),32m@5m(root),219m@37m(data) rw\0"
-#define CONFIG_EXTRA_ENV_SETTINGS "x_bootargs=console" \
- "=ttyS0,115200 mtdparts="CONFIG_MTDPARTS \
- "x_bootcmd_kernel=nand read 0x6400000 0x100000 0x300000\0" \
- "x_bootcmd_usb=usb start\0" \
- "x_bootargs_root=root=/dev/mtdblock3 rw rootfstype=jffs2\0"
+/* CHANGE THIS TO THE IPS YOU WANT TO USE! */
+#define CONFIG_EXTRA_ENV_SETTINGS \
+ "x_bootargs=console=ttyS0,115200 / mtdparts="CONFIG_MTDPARTS \
+ "x_bootargs_root=root=/dev/sda1 rootdelay=5\0" \
+ "x_bootload_kernel=ext2load usb 0:1 0x800000 /boot/uImage\0" \
+ "x_bootcmd_usb=usb start\0"
/*
* Size of malloc() pool
--
1.6.4.4

View file

@ -0,0 +1,46 @@
From 01fcb98bc7fa9399752667a5b786c0e76f418795 Mon Sep 17 00:00:00 2001
From: Alexander Holler <holler@ahsoftware.de>
Date: Wed, 17 Feb 2010 00:07:47 +0100
Subject: [PATCH 13/14] DockStar: Workaround to get the kernel loaded after a reboot.
Rebooting here always failed with:
scanning bus for devices... 3 USB Device(s) found
scanning bus for storage devices... Device NOT ready
Request Sense returned 02 04 02
But I've found a workaround using CONFIG_EHCI_HCD_INIT_AFTER_RESET
and a reset if scanning failed. After the reset scanning works.
Fixing the problem would be better, but therefor I would have to dig into
the USB-stack/USB-driver of U-Boot.
---
include/configs/sheevaplug.h | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 42b873b..f89f795 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -143,7 +143,9 @@
#define CONFIG_BOOTCOMMAND \
"${x_bootcmd_usb}; " \
"setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
- "${x_bootload_kernel}; bootm 0x800000;"
+ "setenv x_startkernel 'bootm 0x800000';" \
+ "run x_bootload_kernel x_startkernel;" \
+ "reset" /* If loading from USB failed we just reset, my experience was that the second time the device will be found */
#define CONFIG_MTDPARTS "orion_nand:1m(u-boot)," \
"4m@1m(uImage),32m@5m(root),219m@37m(data) rw\0"
@@ -198,6 +200,7 @@
#ifdef CONFIG_CMD_USB
#define CONFIG_USB_EHCI /* Enable EHCI USB support */
#define CONFIG_USB_EHCI_KIRKWOOD /* on Kirkwood platform */
+#define CONFIG_EHCI_HCD_INIT_AFTER_RESET
#define CONFIG_EHCI_IS_TDI
#define CONFIG_USB_STORAGE
#define CONFIG_DOS_PARTITION
--
1.6.4.4

91
core/uboot-pogo/PKGBUILD Normal file
View file

@ -0,0 +1,91 @@
# Maintainer: Ian Botley <ianjb@pluapps.com>
pkgname=u-boot
pkgver=2010.03
pkgrel=1
pkgdesc=""
arch=('arm')
url="ftp://ftp.denx.de/pub/u-boot/"
license=('GPL')
groups=()
depends=()
makedepends=()
optdepends=()
provides=()
conflicts=()
replaces=()
backup=()
options=()
install=
source=(ftp://ftp.denx.de/pub/u-boot/$pkgname-$pkgver.tar.bz2
0001-DockStar-Change-RAM-definitions-to-one-bank-128-MB.patch
0002-DockStar-environment-is-at-0xa0000.patch
0003-DockStar-MTD-partitions.patch
0004-DockStar-Change-prompt-and-ident-string.patch
0005-DockStar-Disable-environment-in-NAND.-We-don-t-want-.patch
0006-DockStar-Add-support-for-ext2.patch
0007-DockStar-Include-long-help-messages.patch
0008-DockStar-Change-TEXT_BASE-from-0x600000-to-0xc00000-.patch
0009-DockStar-Small-build-script.patch
0010-DockStar-Definition-for-the-MAC.-CHANGE-THIS-TO-THE-.patch
0011-DockStar-CONFIG_PREBOOT-kernel-and-netconsole-CHANGE.patch
0012-DockStar-Boot-from-USB-and-netconsole.-CHANGE-THIS-T.patch
0013-DockStar-Workaround-to-get-the-kernel-loaded-after-a.patch
)
noextract=()
md5sums=('2bf5ebf497dddc52440b1ea386cc1332'
'ec91fd91674c43f87d8495bb6ecc60f3'
'2f1002f146b2bdf971ddac8de89136ad'
'8a99b74fe93a303320816f1b947dc793'
'196cd36aba108588bfd0954e7fe966c8'
'cc27674c73094fdaf79ecac15fe340f2'
'694570e1093416834e02e2a110b9ad87'
'030661be86bb7f811d0b2c66ee9ce3c6'
'd6aa5aa3713a7cea1cb2c5af6414fa2e'
'f06f2ec98531de780913e2ed388144f2'
'3b4b3cf8c327b16f92ded26e3d27136b'
'5c289aea0486daa8b969715dbb1367c7'
'a6b9b231c4e9e4eea2d24c5ed028844d'
'af964ca6d1a1456652b1463bd0db0052')
build() {
cd $srcdir/$pkgname-$pkgver
echo 1
patch -p1 -i $srcdir/0001-DockStar-Change-RAM-definitions-to-one-bank-128-MB.patch || return 1
echo 2
patch -p1 -i $srcdir/0002-DockStar-environment-is-at-0xa0000.patch || return 1
echo 3
patch -p1 -i $srcdir/0003-DockStar-MTD-partitions.patch || return 1
echo 4
patch -p1 -i $srcdir/0004-DockStar-Change-prompt-and-ident-string.patch || return 1
echo 5
patch -p1 -i $srcdir/0005-DockStar-Disable-environment-in-NAND.-We-don-t-want-.patch || return 1
echo 6
patch -p1 -i $srcdir/0006-DockStar-Add-support-for-ext2.patch || return 1
echo 7
patch -p1 -i $srcdir/0007-DockStar-Include-long-help-messages.patch || return 1
echo 8
patch -p1 -i $srcdir/0008-DockStar-Change-TEXT_BASE-from-0x600000-to-0xc00000-.patch || return 1
echo 9
patch -p1 -i $srcdir/0009-DockStar-Small-build-script.patch || return 1
echo 10
patch -p1 -i $srcdir/0010-DockStar-Definition-for-the-MAC.-CHANGE-THIS-TO-THE-.patch || return 1
echo 11
patch -p1 -i $srcdir/0011-DockStar-CONFIG_PREBOOT-kernel-and-netconsole-CHANGE.patch || return 1
echo 12
patch -p1 -i $srcdir/0012-DockStar-Boot-from-USB-and-netconsole.-CHANGE-THIS-T.patch || return 1
echo 13
patch -p1 -i $srcdir/0013-DockStar-Workaround-to-get-the-kernel-loaded-after-a.patch || return 1
make sheevaplug_config || return 1
make u-boot.kwb || return 1
echo "Building u-boot.bin.pagesize"
# Slow but does the trick
bytes=$(stat --format='%s' u-boot.bin)
fillbytes=$[262144-$bytes]
cp u-boot.bin u-boot.bin.pagesize
while [ $fillbytes -ne 0 ]; do
printf "\xff" >>u-boot.bin.pagesize
fillbytes=$[$fillbytes-1]
done
}