armadeus-commitlog Mailing List for armadeus (Page 80)
Brought to you by:
sszy
You can subscribe to this list here.
| 2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(43) |
Feb
(8) |
Mar
(7) |
Apr
(8) |
May
(14) |
Jun
(6) |
Jul
(4) |
Aug
(17) |
Sep
(18) |
Oct
(19) |
Nov
(52) |
Dec
(30) |
| 2008 |
Jan
(6) |
Feb
(6) |
Mar
(15) |
Apr
(22) |
May
(13) |
Jun
(11) |
Jul
(41) |
Aug
(10) |
Sep
(14) |
Oct
(21) |
Nov
(4) |
Dec
(66) |
| 2009 |
Jan
(67) |
Feb
(57) |
Mar
(90) |
Apr
(54) |
May
(64) |
Jun
(76) |
Jul
(14) |
Aug
(18) |
Sep
(18) |
Oct
(20) |
Nov
(15) |
Dec
(36) |
| 2010 |
Jan
(28) |
Feb
(25) |
Mar
(32) |
Apr
(23) |
May
(22) |
Jun
(62) |
Jul
(36) |
Aug
(16) |
Sep
(12) |
Oct
(20) |
Nov
(44) |
Dec
(25) |
| 2011 |
Jan
(36) |
Feb
(49) |
Mar
(28) |
Apr
(38) |
May
(26) |
Jun
(52) |
Jul
(33) |
Aug
(32) |
Sep
(19) |
Oct
(26) |
Nov
(13) |
Dec
(32) |
| 2012 |
Jan
(38) |
Feb
(34) |
Mar
(91) |
Apr
(35) |
May
(31) |
Jun
(72) |
Jul
(23) |
Aug
(13) |
Sep
(33) |
Oct
(47) |
Nov
(18) |
Dec
(22) |
| 2013 |
Jan
(31) |
Feb
(22) |
Mar
(26) |
Apr
(11) |
May
(38) |
Jun
(15) |
Jul
(37) |
Aug
(68) |
Sep
(34) |
Oct
(11) |
Nov
(26) |
Dec
(31) |
| 2014 |
Jan
(60) |
Feb
(55) |
Mar
(21) |
Apr
(31) |
May
(17) |
Jun
(35) |
Jul
(24) |
Aug
(17) |
Sep
(11) |
Oct
(23) |
Nov
(10) |
Dec
(23) |
| 2015 |
Jan
(15) |
Feb
(34) |
Mar
(46) |
Apr
(23) |
May
(12) |
Jun
(14) |
Jul
(18) |
Aug
(22) |
Sep
(6) |
Oct
(2) |
Nov
(1) |
Dec
(6) |
| 2016 |
Jan
(5) |
Feb
(7) |
Mar
(10) |
Apr
(10) |
May
(17) |
Jun
(6) |
Jul
(4) |
Aug
(6) |
Sep
(22) |
Oct
(8) |
Nov
(9) |
Dec
(5) |
| 2017 |
Jan
(11) |
Feb
(12) |
Mar
(27) |
Apr
(9) |
May
(1) |
Jun
(5) |
Jul
(11) |
Aug
(10) |
Sep
(6) |
Oct
(10) |
Nov
(4) |
Dec
(6) |
| 2018 |
Jan
(6) |
Feb
(13) |
Mar
(9) |
Apr
(7) |
May
(10) |
Jun
(9) |
Jul
(21) |
Aug
(13) |
Sep
(10) |
Oct
(4) |
Nov
(6) |
Dec
(1) |
| 2019 |
Jan
(6) |
Feb
(2) |
Mar
(5) |
Apr
(6) |
May
(19) |
Jun
(14) |
Jul
(18) |
Aug
(3) |
Sep
(5) |
Oct
(7) |
Nov
(8) |
Dec
(4) |
| 2020 |
Jan
(10) |
Feb
(3) |
Mar
(9) |
Apr
(7) |
May
(2) |
Jun
(18) |
Jul
(3) |
Aug
|
Sep
|
Oct
(7) |
Nov
|
Dec
(1) |
| 2021 |
Jan
(9) |
Feb
(6) |
Mar
(4) |
Apr
(11) |
May
(7) |
Jun
(5) |
Jul
(2) |
Aug
(4) |
Sep
(10) |
Oct
(9) |
Nov
(5) |
Dec
|
| 2022 |
Jan
(2) |
Feb
(12) |
Mar
(3) |
Apr
(5) |
May
(1) |
Jun
(3) |
Jul
(2) |
Aug
(1) |
Sep
(4) |
Oct
(4) |
Nov
(1) |
Dec
(3) |
| 2023 |
Jan
(5) |
Feb
(3) |
Mar
(3) |
Apr
(2) |
May
(1) |
Jun
(3) |
Jul
(3) |
Aug
(2) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
(4) |
| 2024 |
Jan
(2) |
Feb
(3) |
Mar
(8) |
Apr
(4) |
May
(1) |
Jun
(13) |
Jul
(7) |
Aug
(1) |
Sep
(6) |
Oct
(5) |
Nov
(11) |
Dec
(7) |
| 2025 |
Jan
(3) |
Feb
(1) |
Mar
(6) |
Apr
(4) |
May
(4) |
Jun
(1) |
Jul
(1) |
Aug
(7) |
Sep
(4) |
Oct
(4) |
Nov
(4) |
Dec
(1) |
| 2026 |
Jan
(3) |
Feb
(7) |
Mar
(3) |
Apr
(1) |
May
(6) |
Jun
(3) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Julien B a. A. <ar...@us...> - 2012-03-19 10:11:33
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 7902a58ba7e963e15ebde5e5fae24ff0c22ab0cf (commit)
via 40c9073dd5ecd09e8621c6fe118c11cbb66294e7 (commit)
from a2b16e451944badef90965a5fd9112077009afe0 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 7902a58ba7e963e15ebde5e5fae24ff0c22ab0cf
Merge: 40c9073 a2b16e4
Author: Julien Boibessot <jul...@ar...>
Date: Mon Mar 19 11:06:47 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit 40c9073dd5ecd09e8621c6fe118c11cbb66294e7
Author: Julien Boibessot <jul...@ar...>
Date: Mon Mar 19 11:06:05 2012 +0100
[LINUX] APF28: add WiFi and Bluetooth back in default 2.6.35 configuration
-----------------------------------------------------------------------
Summary of changes:
.../armadeus/apf28/apf28-linux-2.6.35.config | 105 ++++++++++++++------
1 files changed, 74 insertions(+), 31 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config b/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config
index 7c4515a..9484aad 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config
+++ b/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.35.3
-# Wed Mar 14 00:03:55 2012
+# Mon Mar 19 10:50:08 2012
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -502,25 +502,55 @@ CONFIG_CAN_RAW=y
# CONFIG_CAN_DEBUG_DEVICES is not set
CONFIG_CAN_FLEXCAN=m
# CONFIG_IRDA is not set
-# CONFIG_BT is not set
+CONFIG_BT=m
+CONFIG_BT_L2CAP=m
+# CONFIG_BT_L2CAP_EXT_FEATURES is not set
+CONFIG_BT_SCO=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+# CONFIG_BT_BNEP is not set
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIBTUSB=m
+# CONFIG_BT_HCIBTSDIO is not set
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+# CONFIG_BT_HCIUART_BCSP is not set
+# CONFIG_BT_HCIUART_LL is not set
+# CONFIG_BT_HCIBCM203X is not set
+# CONFIG_BT_HCIBPA10X is not set
+# CONFIG_BT_HCIBFUSB is not set
+# CONFIG_BT_HCIVHCI is not set
+# CONFIG_BT_MRVL is not set
+# CONFIG_BT_ATH3K is not set
# CONFIG_AF_RXRPC is not set
CONFIG_WIRELESS=y
-CONFIG_WIRELESS_EXT=y
CONFIG_WEXT_CORE=y
CONFIG_WEXT_PROC=y
-CONFIG_WEXT_SPY=y
-CONFIG_WEXT_PRIV=y
-# CONFIG_CFG80211 is not set
+CONFIG_CFG80211=y
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_REG_DEBUG is not set
+CONFIG_CFG80211_DEFAULT_PS=y
+# CONFIG_CFG80211_DEBUGFS is not set
+# CONFIG_CFG80211_INTERNAL_REGDB is not set
+CONFIG_CFG80211_WEXT=y
CONFIG_WIRELESS_EXT_SYSFS=y
-# CONFIG_LIB80211 is not set
-
-#
-# CFG80211 needs to be enabled for MAC80211
-#
-
-#
-# Some wireless drivers require a rate control algorithm
-#
+CONFIG_LIB80211=y
+# CONFIG_LIB80211_DEBUG is not set
+CONFIG_MAC80211=y
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+# CONFIG_MAC80211_RC_DEFAULT_PID is not set
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel"
+# CONFIG_MAC80211_MESH is not set
+# CONFIG_MAC80211_LEDS is not set
+# CONFIG_MAC80211_DEBUGFS is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
# CONFIG_WIMAX is not set
CONFIG_RFKILL=y
CONFIG_RFKILL_INPUT=y
@@ -683,7 +713,7 @@ CONFIG_MXS_PERSISTENT=y
# CONFIG_EEPROM_AT25 is not set
# CONFIG_EEPROM_LEGACY is not set
# CONFIG_EEPROM_MAX6875 is not set
-# CONFIG_EEPROM_93CX6 is not set
+CONFIG_EEPROM_93CX6=m
# CONFIG_IWMC3200TOP is not set
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set
@@ -787,19 +817,33 @@ CONFIG_FEC=y
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set
CONFIG_WLAN=y
+# CONFIG_LIBERTAS_THINFIRM is not set
+# CONFIG_AT76C50X_USB is not set
# CONFIG_USB_ZD1201 is not set
+# CONFIG_USB_NET_RNDIS_WLAN is not set
+CONFIG_RTL8187=m
+# CONFIG_MAC80211_HWSIM is not set
+# CONFIG_ATH_COMMON is not set
+# CONFIG_B43 is not set
+# CONFIG_B43LEGACY is not set
# CONFIG_HOSTAP is not set
-CONFIG_ATH6K_LEGACY=m
-CONFIG_AR600x_SD31_XXX=y
-# CONFIG_AR600x_WB31_XXX is not set
-# CONFIG_AR600x_SD32_XXX is not set
-# CONFIG_AR600x_CUSTOM_XXX is not set
-# CONFIG_ATH6KL_ENABLE_COEXISTENCE is not set
-# CONFIG_ATH6KL_HCI_BRIDGE is not set
-# CONFIG_ATH6KL_CFG80211 is not set
-# CONFIG_ATH6KL_HTC_RAW_INTERFACE is not set
-# CONFIG_ATH6KL_VIRTUAL_SCATTER_GATHER is not set
-# CONFIG_ATH6KL_DEBUG is not set
+# CONFIG_IWM is not set
+# CONFIG_LIBERTAS is not set
+# CONFIG_P54_COMMON is not set
+CONFIG_RT2X00=m
+# CONFIG_RT2500USB is not set
+CONFIG_RT73USB=m
+# CONFIG_RT2800USB is not set
+CONFIG_RT2X00_LIB_USB=m
+CONFIG_RT2X00_LIB=m
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_CRYPTO=y
+CONFIG_RT2X00_LIB_LEDS=y
+# CONFIG_RT2X00_DEBUG is not set
+# CONFIG_WL12XX is not set
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+# CONFIG_ATH6K_LEGACY is not set
#
# Enable WiMAX (Networking options) to see the WiMAX drivers
@@ -1391,6 +1435,7 @@ CONFIG_HID_LOGITECH=y
# CONFIG_LOGITECH_FF is not set
# CONFIG_LOGIRUMBLEPAD2_FF is not set
# CONFIG_LOGIG940_FF is not set
+# CONFIG_HID_MAGICMOUSE is not set
CONFIG_HID_MICROSOFT=y
# CONFIG_HID_MOSART is not set
CONFIG_HID_MONTEREY=y
@@ -1414,6 +1459,7 @@ CONFIG_HID_SMARTJOYPLUS=y
CONFIG_HID_TOPSEED=y
CONFIG_HID_THRUSTMASTER=y
# CONFIG_THRUSTMASTER_FF is not set
+# CONFIG_HID_WACOM is not set
CONFIG_HID_ZEROPLUS=y
# CONFIG_ZEROPLUS_FF is not set
# CONFIG_HID_ZYDACRON is not set
@@ -1794,9 +1840,6 @@ CONFIG_UBIFS_FS_ZLIB=y
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_ROMFS_FS is not set
-# CONFIG_ROMFS_BACKED_BY_BLOCK is not set
-# CONFIG_ROMFS_BACKED_BY_MTD is not set
-# CONFIG_ROMFS_BACKED_BY_BOTH is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y
@@ -2016,7 +2059,7 @@ CONFIG_CRYPTO_SHA256=m
#
CONFIG_CRYPTO_AES=y
# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_ARC4 is not set
+CONFIG_CRYPTO_ARC4=y
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_CAST5 is not set
hooks/post-receive
--
armadeus
|
|
From: Nicolas <th...@us...> - 2012-03-19 08:15:20
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via a2b16e451944badef90965a5fd9112077009afe0 (commit)
from 836332cabfa1f1cef885c509afd18cc4f41b0130 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit a2b16e451944badef90965a5fd9112077009afe0
Author: nicolas <nicolas@nicolas-Studio-1558.(none)>
Date: Mon Mar 19 09:12:15 2012 +0100
[U-BOOT] fix partition size of APF28
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf28/apf28-u-boot-2011.12.h | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
index d0ca845..aeb6a1b 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
+++ b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
@@ -208,9 +208,9 @@
#define MTDIDS_DEFAULT "nand0=" CONFIG_MTDMAP
#define MTDPARTS_DEFAULT \
"mtdparts=" CONFIG_MTDMAP \
- ":3m(bootloader)ro," \
- "512k(environment)," \
- "512k(redundant-environment)," \
+ ":3M(bootloader)ro," \
+ "512K(environment)," \
+ "512K(redundant-environment)," \
"8M(kernel)," \
"-(rootfs)"
#endif
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2012-03-16 17:19:59
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 836332cabfa1f1cef885c509afd18cc4f41b0130 (commit)
from 4390180f144d377a829102c086ad2b7072b0d116 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 836332cabfa1f1cef885c509afd18cc4f41b0130
Author: Julien Boibessot <jul...@ar...>
Date: Fri Mar 16 18:19:25 2012 +0100
[BUILDROOT] 2012.02: Add patch to prevent lzo package configuration failure on 64bits Hosts
-----------------------------------------------------------------------
Summary of changes:
...che-force_ccache_to_use_its_internal_zlib.patch | 49 ++++++++++++++++++++
1 files changed, 49 insertions(+), 0 deletions(-)
create mode 100644 patches/buildroot/2012.02/180-ccache-force_ccache_to_use_its_internal_zlib.patch
diff --git a/patches/buildroot/2012.02/180-ccache-force_ccache_to_use_its_internal_zlib.patch b/patches/buildroot/2012.02/180-ccache-force_ccache_to_use_its_internal_zlib.patch
new file mode 100644
index 0000000..7d8fe1f
--- /dev/null
+++ b/patches/buildroot/2012.02/180-ccache-force_ccache_to_use_its_internal_zlib.patch
@@ -0,0 +1,49 @@
+From 7ea11dafff37c5403432f691cf3c46d1d5566e46 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <tho...@fr...>
+Date: Wed, 07 Mar 2012 19:26:49 +0000
+Subject: ccache: Force ccache to use its internal zlib
+
+The problem is that without this, ccache would link against the zlib
+of the build system, but we might build and install a different
+version of zlib in $(O)/host afterwards, which ccache will pick
+up. This might break if there is a version mismatch. A solution would
+be to add host-zlib has a dependency of ccache, but it would require
+tuning the zlib .mk file to use HOSTCC_NOCCACHE as the
+compiler. Instead, we take the easy path: tell ccache to use its
+internal copy of zlib, so that ccache has zero dependency besides the
+C library.
+
+Fixes bug #4808.
+
+Thanks to Raúl Sánchez Siles <rsa...@in...> for reporting
+the bug and testing the proposed solution.
+
+Signed-off-by: Thomas Petazzoni <tho...@fr...>
+Signed-off-by: Peter Korsgaard <ja...@su...>
+---
+(limited to 'package/ccache/ccache.mk')
+
+diff --git a/package/ccache/ccache.mk b/package/ccache/ccache.mk
+index 9155441..393989f 100644
+--- a/package/ccache/ccache.mk
++++ b/package/ccache/ccache.mk
+@@ -14,6 +14,17 @@ CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.bz2
+ HOST_CCACHE_CONF_ENV = \
+ CC="$(HOSTCC_NOCCACHE)"
+
++# Force ccache to use its internal zlib. The problem is that without
++# this, ccache would link against the zlib of the build system, but we
++# might build and install a different version of zlib in $(O)/host
++# afterwards, which ccache will pick up. This might break if there is
++# a version mismatch. A solution would be to add host-zlib has a
++# dependency of ccache, but it would require tuning the zlib .mk file
++# to use HOSTCC_NOCCACHE as the compiler. Instead, we take the easy
++# path: tell ccache to use its internal copy of zlib, so that ccache
++# has zero dependency besides the C library.
++HOST_CCACHE_CONF_OPT += ccache_cv_zlib_1_2_3=no
++
+ # We directly hardcode the cache location into the binary, as it is
+ # much easier to handle than passing an environment variable.
+ define HOST_CCACHE_FIX_CCACHE_DIR
+--
+cgit v0.9.0.1-2-gef13
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2012-03-16 17:04:32
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 4390180f144d377a829102c086ad2b7072b0d116 (commit)
via 82167cc51545b1442e7938ec200b5350323b4d82 (commit)
via e28b6ddb1e6dec7c7d346a9257dee890978176c7 (commit)
from 880ac84384eb614e4f25a9fbe27dcc16220c7f28 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 4390180f144d377a829102c086ad2b7072b0d116
Merge: 82167cc 880ac84
Author: Julien Boibessot <jul...@ar...>
Date: Fri Mar 16 17:50:33 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit 82167cc51545b1442e7938ec200b5350323b4d82
Author: Julien Boibessot <jul...@ar...>
Date: Fri Mar 16 17:39:07 2012 +0100
[BUILDROOT] 2012.02: Add patch to fix e2fsprogs build on old systems
commit e28b6ddb1e6dec7c7d346a9257dee890978176c7
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 15 22:37:53 2012 +0100
Makes scripts/quiltify.sh more error proof
-----------------------------------------------------------------------
Summary of changes:
...e4defrag_build_against_old_kernel_headers.patch | 81 ++++++++++++++++++++
patches/buildroot/2012.02/cleanup_buildroot.sh | 1 +
scripts/quiltify.sh | 4 +
3 files changed, 86 insertions(+), 0 deletions(-)
create mode 100644 patches/buildroot/2012.02/179-e2fsprog-allow_e4defrag_build_against_old_kernel_headers.patch
diff --git a/patches/buildroot/2012.02/179-e2fsprog-allow_e4defrag_build_against_old_kernel_headers.patch b/patches/buildroot/2012.02/179-e2fsprog-allow_e4defrag_build_against_old_kernel_headers.patch
new file mode 100644
index 0000000..4de6cb4
--- /dev/null
+++ b/patches/buildroot/2012.02/179-e2fsprog-allow_e4defrag_build_against_old_kernel_headers.patch
@@ -0,0 +1,81 @@
+Otherwise e2fsprogs package fails to build on old distributions.
+
+Signed-off-by: Julien Boibessot <jul...@ar...>
+
+Index: buildroot/package/e2fsprogs/e2fsprogs-allow-e4defrag-build-against-old-kernel-headers.patch
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/e2fsprogs/e2fsprogs-allow-e4defrag-build-against-old-kernel-headers.patch 2012-03-16 12:02:41.000000000 +0100
+@@ -0,0 +1,71 @@
++Building e2fsprogs with older userspace with old kernel headers may
++not define the __NR_fallocate and __NR_sync_file_range system calls,
++even if a newer kernel is installed on the system.
++
++Avoid e4defrag build failures for e2fsprogs on older systems, but may
++result in the e4defrag command failing at runtime due to the actual
++lack of these system calls, as opposed to just old kernel headers
++on a system running a new kernel.
++---
++ misc/e4defrag.c | 31 +++++++++++++++++++++++--------
++ 1 files changed, 23 insertions(+), 8 deletions(-)
++
++diff --git a/misc/e4defrag.c b/misc/e4defrag.c
++index 82e3868..d739da2 100644
++--- a/misc/e4defrag.c
+++++ b/misc/e4defrag.c
++@@ -304,12 +304,6 @@ static int posix_fadvise(int fd, loff_t offset, size_t len, int advise)
++ #ifndef HAVE_SYNC_FILE_RANGE
++ #warning Using locally defined sync_file_range interface.
++
++-#ifndef __NR_sync_file_range
++-#ifndef __NR_sync_file_range2 /* ppc */
++-#error Your kernel headers dont define __NR_sync_file_range
++-#endif
++-#endif
++-
++ /*
++ * sync_file_range() - Sync file region.
++ *
++@@ -322,8 +316,19 @@ int sync_file_range(int fd, loff_t offset, loff_t length, unsigned int flag)
++ {
++ #ifdef __NR_sync_file_range
++ return syscall(__NR_sync_file_range, fd, offset, length, flag);
++-#else
+++#elif defined(__NR_sync_file_range2)
++ return syscall(__NR_sync_file_range2, fd, flag, offset, length);
+++#else
+++ return fsync(fd);
+++#ifndef SYNC_FILE_RANGE_WAIT_BEFORE
+++#define SYNC_FILE_RANGE_WAIT_BEFORE 0
+++#endif
+++#ifndef SYNC_FILE_RANGE_WRITE
+++#define SYNC_FILE_RANGE_WRITE 0
+++#endif
+++#ifndef SYNC_FILE_RANGE_WAIT_AFTER
+++#define SYNC_FILE_RANGE_WAIT_AFTER 0
+++#endif
++ #endif
++ }
++ #endif /* ! HAVE_SYNC_FILE_RANGE */
++@@ -332,7 +337,17 @@ int sync_file_range(int fd, loff_t offset, loff_t length, unsigned int flag)
++ #warning Using locally defined fallocate syscall interface.
++
++ #ifndef __NR_fallocate
++-#error Your kernel headers dont define __NR_fallocate
+++# if defined(__x86_64__)
+++# define __NR_fallocate 285
+++# elif defined(__i386__)
+++# define __NR_fallocate 324
+++# elif defined(__powerpc__)
+++# define __NR_fallocate 309
+++# else
+++/* fallback position might be posix_fallocate(), but I suspect any kernel
+++ * that doesn't have fallocate will also not have EXT4_IOC_MOVE_EXT */
+++# error Your kernel headers dont define __NR_fallocate
+++# endif
++ #endif
++
++ /*
++--
++1.4.4.2
+\ No newline at end of file
diff --git a/patches/buildroot/2012.02/cleanup_buildroot.sh b/patches/buildroot/2012.02/cleanup_buildroot.sh
index 174cf55..1ce2d7c 100755
--- a/patches/buildroot/2012.02/cleanup_buildroot.sh
+++ b/patches/buildroot/2012.02/cleanup_buildroot.sh
@@ -65,3 +65,4 @@ rm -rf buildroot/package/python
rm -rf buildroot/package/gsmmux
rm -rf buildroot/package/imx-lib/
rm -rf buildroot/package/imx-test/
+rm -rf buildroot/package/e2fsprogs/
diff --git a/scripts/quiltify.sh b/scripts/quiltify.sh
index d0e6dd9..15af09b 100755
--- a/scripts/quiltify.sh
+++ b/scripts/quiltify.sh
@@ -149,6 +149,10 @@ fi
# Import patches
pushd $QUILT_TARGET_DIR
+if [ "$?" != 0 ]; then
+ echo "Please correct that ($QUILT_TARGET_DIR)"
+ exit 1
+fi
mkdir patches
if [ "$QUILT_PATCH_FILTER" != "" ]; then
PATCHES=`ls -ar $QUILT_TARGET_PATCH_DIR/*.patch | grep $QUILT_PATCH_FILTER`
hooks/post-receive
--
armadeus
|
|
From: jscheer <js...@us...> - 2012-03-16 16:43:01
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 880ac84384eb614e4f25a9fbe27dcc16220c7f28 (commit)
from 2f02a624997a86fe947bc40f842a69c3fa336e0a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 880ac84384eb614e4f25a9fbe27dcc16220c7f28
Author: Jeremie Scheer <jer...@ar...>
Date: Fri Mar 16 17:42:33 2012 +0100
[BUILDROOT] Fix patch passwd.expire.patch in OpenSSH package for BR 2012.02.
-----------------------------------------------------------------------
Summary of changes:
.../2012.02/045-openssh-add_passwd_expire.patch | 20 ++++++++++----------
1 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/patches/buildroot/2012.02/045-openssh-add_passwd_expire.patch b/patches/buildroot/2012.02/045-openssh-add_passwd_expire.patch
index 8d99ecb..939063e 100644
--- a/patches/buildroot/2012.02/045-openssh-add_passwd_expire.patch
+++ b/patches/buildroot/2012.02/045-openssh-add_passwd_expire.patch
@@ -1,18 +1,18 @@
Index: buildroot/package/openssh/openssh.passwdexpire.patch
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ buildroot/package/openssh/openssh.passwdexpire.patch 2012-02-21 16:44:21.000000000 +0100
++++ buildroot/package/openssh/openssh.passwdexpire.patch 2012-03-16 17:29:59.000000000 +0100
@@ -0,0 +1,13 @@
-+--- openssh-4.6p1/configure.ac.org 2007-10-21 12:42:09.000000000 +0200
-++++ openssh-4.6p1/configure.ac 2007-10-21 13:11:50.000000000 +0200
-+@@ -3437,8 +3437,8 @@ if test -z "$disable_shadow" ; then
-+
++--- openssh-4.6p1/configure.ac.org 2012-03-16 17:23:11.000000000 +0100
+++++ openssh-4.6p1/configure.ac 2012-03-16 17:23:40.000000000 +0100
++@@ -3714,8 +3714,8 @@ if test -z "$disable_shadow" ; then
++
+ if test "x$sp_expire_available" = "xyes" ; then
-+ AC_MSG_RESULT(yes)
-+- AC_DEFINE(HAS_SHADOW_EXPIRE, 1,
++ AC_MSG_RESULT([yes])
++- AC_DEFINE([HAS_SHADOW_EXPIRE], [1],
+- [Define if you want to use shadow password expire field])
-++// AC_DEFINE(HAS_SHADOW_EXPIRE, 1,
+++// AC_DEFINE([HAS_SHADOW_EXPIRE], [1],
++// [Define if you want to use shadow password expire field])
+ else
-+ AC_MSG_RESULT(no)
-+ fi
++ AC_MSG_RESULT([no])
++ fi
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2012-03-15 21:37:02
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 2f02a624997a86fe947bc40f842a69c3fa336e0a (commit)
via d2f8fd8cb4dd86cf8e76e8265f0e1e691ec6eea4 (commit)
from ee4261af589d4909987d3e569813c944dcc1ce8c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 2f02a624997a86fe947bc40f842a69c3fa336e0a
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 15 22:36:23 2012 +0100
[BUILD] Add Buildroot version to build infos
commit d2f8fd8cb4dd86cf8e76e8265f0e1e691ec6eea4
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 15 22:34:04 2012 +0100
Fixes recent bug in main Makefile preventing quiltify to work corectly
-----------------------------------------------------------------------
Summary of changes:
Makefile | 2 +-
scripts/show_build_infos.sh | 1 +
2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/Makefile b/Makefile
index ae1abc8..3b61d85 100644
--- a/Makefile
+++ b/Makefile
@@ -203,7 +203,7 @@ buildroot-dirclean:
# Generate shell's most useful variables:
shell_env:
@echo ARMADEUS_BUILDROOT_DIR=$(BUILDROOT_DIR) > $(ARMADEUS_ENV_FILE)
- @echo ARMADEUS_BUILDROOT_VERSION=$(BUILDROOT_VERSION) > $(ARMADEUS_ENV_FILE)
+ @echo ARMADEUS_BUILDROOT_VERSION=$(BUILDROOT_VERSION) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_BUILDROOT_PATCH_DIR=$(BUILDROOT_PATCH_DIR) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_LINUX_DIR=$(ARMADEUS_LINUX_DIR) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_LINUX_PATCH_DIR=$(ARMADEUS_LINUX_PATCH_DIR) >> $(ARMADEUS_ENV_FILE)
diff --git a/scripts/show_build_infos.sh b/scripts/show_build_infos.sh
index 93964d7..1c6fd8f 100755
--- a/scripts/show_build_infos.sh
+++ b/scripts/show_build_infos.sh
@@ -14,6 +14,7 @@ fi
echo -en "\033[1m"
echo ""
echo "Your Armadeus BSP (version "$ARMADEUS_BSP_VERSION" for "$ARMADEUS_BOARD_NAME") was successfully built !"
+echo " Buildroot: "$ARMADEUS_BUILDROOT_VERSION""
echo " gcc: "$ARMADEUS_GCC_VERSION""
echo " libc: "$ARMADEUS_LIBC_NAME $ARMADEUS_LIBC_VERSION""
echo " busybox: "$ARMADEUS_BUSYBOX_VERSION""
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2012-03-15 16:31:24
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via ee4261af589d4909987d3e569813c944dcc1ce8c (commit)
via 5846e1cdebf65f9c7565b9815e243d0d2ed611b4 (commit)
via 2fcb73de18864ef34c5c14ad52a0f83d086a9b41 (commit)
via 5947cf0dc68dc0cd64762fbc97d0440c2ff895e7 (commit)
from 45a0645d3fc32439f5467dd29586f039beeef4fa (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit ee4261af589d4909987d3e569813c944dcc1ce8c
Merge: 5846e1c 45a0645
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 15 17:30:41 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit 5846e1cdebf65f9c7565b9815e243d0d2ed611b4
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 15 17:28:38 2012 +0100
[BUILD] Make forced linux build work again on new BR
commit 2fcb73de18864ef34c5c14ad52a0f83d086a9b41
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 15 17:27:49 2012 +0100
Updates buildroot/.gitignore for new BR
commit 5947cf0dc68dc0cd64762fbc97d0440c2ff895e7
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 15 17:27:10 2012 +0100
[LINUX] APF51: Add IPUv3 base driver and updates VPU's one
-----------------------------------------------------------------------
Summary of changes:
Makefile | 7 +-
buildroot/.gitignore | 2 +
...00126692-3-add_hw-events_vpu_srtc_drivers.patch | 1076 +--
...ale-0034-ENGR00126692-3-add_hw-vpu_driver.patch | 1117 +++
...R00136875-1-Add-function-pgprot_writethru.patch | 27 +
...5-2-make-video-buffer-cacheable-to-improv.patch | 25 +
...45-armadeus-add_freescale_mxc_dvfs_driver.patch | 279 +
.../446-armadeus-add_freescale_ipu3_driver.patch |10343 ++++++++++++++++++++
8 files changed, 11811 insertions(+), 1065 deletions(-)
create mode 100644 patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-vpu_driver.patch
create mode 100644 patches/linux/2.6.38/442-freescale-0535-ENGR00136875-1-Add-function-pgprot_writethru.patch
create mode 100644 patches/linux/2.6.38/442-freescale-0536-ENGR00136875-2-make-video-buffer-cacheable-to-improv.patch
create mode 100644 patches/linux/2.6.38/445-armadeus-add_freescale_mxc_dvfs_driver.patch
create mode 100644 patches/linux/2.6.38/446-armadeus-add_freescale_ipu3_driver.patch
diff --git a/Makefile b/Makefile
index 20c4e1c..ae1abc8 100644
--- a/Makefile
+++ b/Makefile
@@ -135,8 +135,13 @@ buildauto: $(BUILDROOT_DIR)/.patched
$(MAKE) -C $(BUILDROOT_DIR)
linux26 linux: $(BUILDROOT_DIR)/.configured
- @-touch $(ARMADEUS_LINUX_DIR)/.config
+ifeq ($(BUILDROOT_VERSION),2011.05)
+ @-touch $(ARMADEUS_LINUX_DIR)/.config
@$(MAKE) -C $(BUILDROOT_DIR) $@
+else
+ @rm -f $(ARMADEUS_LINUX_DIR)/.stamp_built
+ @$(MAKE) -C $(BUILDROOT_DIR) linux
+endif
linux26-clean linux-clean: $(BUILDROOT_DIR)/.configured
ifneq (,$(filter $(BUILDROOT_VERSION),20081103 2010.05))
diff --git a/buildroot/.gitignore b/buildroot/.gitignore
index b742057..bf9a495 100644
--- a/buildroot/.gitignore
+++ b/buildroot/.gitignore
@@ -2,12 +2,14 @@
/boot/
/dl
/docs/
+/downloads
/fs/
/linux/
/output/
/project/
/toolchain
/scripts/
+/support
/.*
!/.gitignore
/Config.in
diff --git a/patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-events_vpu_srtc_drivers.patch b/patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-events_vpu_srtc_drivers.patch
index f90b18e..8e26798 100644
--- a/patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-events_vpu_srtc_drivers.patch
+++ b/patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-events_vpu_srtc_drivers.patch
@@ -17,10 +17,6 @@ Signed-off-by: Dinh Nguyen <Din...@fr...>
drivers/mxc/hw_event/Kconfig | 11 +
drivers/mxc/hw_event/Makefile | 1 +
drivers/mxc/hw_event/mxc_hw_event.c | 266 +
- drivers/mxc/vpu/Kconfig | 30 +
- drivers/mxc/vpu/Makefile | 10 +
- drivers/mxc/vpu/mxc_vl2cc.c | 124 +
- drivers/mxc/vpu/mxc_vpu.c | 862 ++
drivers/rtc/Kconfig | 46 +
drivers/rtc/Makefile | 5 +
drivers/rtc/rtc-mxc_v2.c | 766 ++
@@ -29,7 +25,7 @@ Signed-off-by: Dinh Nguyen <Din...@fr...>
Index: linux-2.6.38.8/drivers/mxc/hw_event/Kconfig
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/hw_event/Kconfig 2011-10-20 19:28:29.000000000 +0200
++++ linux-2.6.38.8/drivers/mxc/hw_event/Kconfig 2012-03-13 11:32:42.000000000 +0100
@@ -0,0 +1,11 @@
+menu "MXC HARDWARE EVENT"
+
@@ -45,13 +41,13 @@ Index: linux-2.6.38.8/drivers/mxc/hw_event/Kconfig
Index: linux-2.6.38.8/drivers/mxc/hw_event/Makefile
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/hw_event/Makefile 2011-10-20 19:28:29.000000000 +0200
++++ linux-2.6.38.8/drivers/mxc/hw_event/Makefile 2012-03-13 11:32:42.000000000 +0100
@@ -0,0 +1 @@
+obj-$(CONFIG_MXC_HWEVENT) += mxc_hw_event.o
Index: linux-2.6.38.8/drivers/mxc/hw_event/mxc_hw_event.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/hw_event/mxc_hw_event.c 2011-10-20 19:28:29.000000000 +0200
++++ linux-2.6.38.8/drivers/mxc/hw_event/mxc_hw_event.c 2012-03-13 11:32:42.000000000 +0100
@@ -0,0 +1,266 @@
+/*
+ * Copyright 2007-2010 Freescale Semiconductor, Inc. All Rights Reserved.
@@ -319,1056 +315,10 @@ Index: linux-2.6.38.8/drivers/mxc/hw_event/mxc_hw_event.c
+
+EXPORT_SYMBOL(hw_event_send);
+MODULE_LICENSE("GPL");
-Index: linux-2.6.38.8/drivers/mxc/vpu/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/vpu/Kconfig 2011-10-20 19:28:29.000000000 +0200
-@@ -0,0 +1,30 @@
-+#
-+# Codec configuration
-+#
-+
-+menu "MXC VPU(Video Processing Unit) support"
-+
-+config MXC_VPU
-+ tristate "Support for MXC VPU(Video Processing Unit)"
-+ depends on (ARCH_MX3 || ARCH_MX27 || ARCH_MX37 || ARCH_MX5)
-+ default y
-+ ---help---
-+ The VPU codec device provides codec function for H.264/MPEG4/H.263,
-+ as well as MPEG2/VC-1/DivX on some platforms.
-+
-+config MXC_VPU_IRAM
-+ tristate "Use IRAM as temporary buffer for VPU to enhance performace"
-+ depends on (ARCH_MX37 || ARCH_MX5)
-+ default y
-+ ---help---
-+ The VPU can use internal RAM as temporary buffer to save external
-+ memroy bandwith, thus to enhance video performance.
-+
-+config MXC_VPU_DEBUG
-+ bool "MXC VPU debugging"
-+ depends on MXC_VPU != n
-+ help
-+ This is an option for the developers; most people should
-+ say N here. This enables MXC VPU driver debugging.
-+
-+endmenu
-Index: linux-2.6.38.8/drivers/mxc/vpu/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/vpu/Makefile 2011-10-20 19:28:29.000000000 +0200
-@@ -0,0 +1,10 @@
-+#
-+# Makefile for the VPU drivers.
-+#
-+
-+obj-$(CONFIG_MXC_VPU) += vpu.o
-+vpu-objs := mxc_vpu.o mxc_vl2cc.o
-+
-+ifeq ($(CONFIG_MXC_VPU_DEBUG),y)
-+EXTRA_CFLAGS += -DDEBUG
-+endif
-Index: linux-2.6.38.8/drivers/mxc/vpu/mxc_vl2cc.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/vpu/mxc_vl2cc.c 2011-10-20 19:28:29.000000000 +0200
-@@ -0,0 +1,124 @@
-+/*
-+ * Copyright 2007-2010 Freescale Semiconductor, Inc. All Rights Reserved.
-+ */
-+
-+/*
-+ * The code contained herein is licensed under the GNU General Public
-+ * License. You may obtain a copy of the GNU General Public License
-+ * Version 2 or later at the following locations:
-+ *
-+ * http://www.opensource.org/licenses/gpl-license.html
-+ * http://www.gnu.org/copyleft/gpl.html
-+ */
-+
-+/*!
-+ * @file mxc_vl2cc.c
-+ *
-+ * @brief VL2CC initialization and flush operation implementation
-+ *
-+ * @ingroup VL2CC
-+ */
-+
-+#include <linux/module.h>
-+#include <linux/kernel.h>
-+#include <linux/init.h>
-+#include <linux/clk.h>
-+#include <linux/err.h>
-+#include <linux/io.h>
-+
-+#define VL2CC_CTRL_OFFSET (0x100)
-+#define VL2CC_AUXCTRL_OFFSET (0x104)
-+#define VL2CC_INVWAY_OFFSET (0x77C)
-+#define VL2CC_CLEANWAY_OFFSET (0x7BC)
-+
-+/*! VL2CC clock handle. */
-+static struct clk *vl2cc_clk;
-+static u32 *vl2cc_base;
-+
-+/*!
-+ * Initialization function of VL2CC. Remap the VL2CC base address.
-+ *
-+ * @return status 0 success.
-+ */
-+int vl2cc_init(u32 vl2cc_hw_base)
-+{
-+ vl2cc_base = ioremap(vl2cc_hw_base, SZ_8K - 1);
-+ if (vl2cc_base == NULL) {
-+ printk(KERN_INFO "vl2cc: Unable to ioremap\n");
-+ return -ENOMEM;
-+ }
-+
-+ vl2cc_clk = clk_get(NULL, "vl2cc_clk");
-+ if (IS_ERR(vl2cc_clk)) {
-+ printk(KERN_INFO "vl2cc: Unable to get clock\n");
-+ iounmap(vl2cc_base);
-+ return -EIO;
-+ }
-+
-+ printk(KERN_INFO "VL2CC initialized\n");
-+ return 0;
-+}
-+
-+/*!
-+ * Enable VL2CC hardware
-+ */
-+void vl2cc_enable(void)
-+{
-+ volatile u32 reg;
-+
-+ clk_enable(vl2cc_clk);
-+
-+ /* Disable VL2CC */
-+ reg = __raw_readl(vl2cc_base + VL2CC_CTRL_OFFSET);
-+ reg &= 0xFFFFFFFE;
-+ __raw_writel(reg, vl2cc_base + VL2CC_CTRL_OFFSET);
-+
-+ /* Set the latency for data RAM reads, data RAM writes, tag RAM and
-+ * dirty RAM to 1 cycle - write 0x0 to AUX CTRL [11:0] and also
-+ * configure the number of ways to 8 - write 8 to AUX CTRL [16:13]
-+ */
-+ reg = __raw_readl(vl2cc_base + VL2CC_AUXCTRL_OFFSET);
-+ reg &= 0xFFFE1000; /* Clear [16:13] too */
-+ reg |= (0x8 << 13); /* [16:13] = 8; */
-+ __raw_writel(reg, vl2cc_base + VL2CC_AUXCTRL_OFFSET);
-+
-+ /* Invalidate the VL2CC ways - write 0xff to INV BY WAY and poll the
-+ * register until its value is 0x0
-+ */
-+ __raw_writel(0xff, vl2cc_base + VL2CC_INVWAY_OFFSET);
-+ while (__raw_readl(vl2cc_base + VL2CC_INVWAY_OFFSET) != 0x0)
-+ ;
-+
-+ /* Enable VL2CC */
-+ reg = __raw_readl(vl2cc_base + VL2CC_CTRL_OFFSET);
-+ reg |= 0x1;
-+ __raw_writel(reg, vl2cc_base + VL2CC_CTRL_OFFSET);
-+}
-+
-+/*!
-+ * Flush VL2CC
-+ */
-+void vl2cc_flush(void)
-+{
-+ __raw_writel(0xff, vl2cc_base + VL2CC_CLEANWAY_OFFSET);
-+ while (__raw_readl(vl2cc_base + VL2CC_CLEANWAY_OFFSET) != 0x0)
-+ ;
-+}
-+
-+/*!
-+ * Disable VL2CC
-+ */
-+void vl2cc_disable(void)
-+{
-+ __raw_writel(0, vl2cc_base + VL2CC_CTRL_OFFSET);
-+ clk_disable(vl2cc_clk);
-+}
-+
-+/*!
-+ * Cleanup VL2CC
-+ */
-+void vl2cc_cleanup(void)
-+{
-+ clk_put(vl2cc_clk);
-+ iounmap(vl2cc_base);
-+}
-Index: linux-2.6.38.8/drivers/mxc/vpu/mxc_vpu.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/vpu/mxc_vpu.c 2011-10-20 19:28:29.000000000 +0200
-@@ -0,0 +1,862 @@
-+/*
-+ * Copyright 2006-2010 Freescale Semiconductor, Inc. All Rights Reserved.
-+ */
-+
-+/*
-+ * The code contained herein is licensed under the GNU General Public
-+ * License. You may obtain a copy of the GNU General Public License
-+ * Version 2 or later at the following locations:
-+ *
-+ * http://www.opensource.org/licenses/gpl-license.html
-+ * http://www.gnu.org/copyleft/gpl.html
-+ */
-+
-+/*!
-+ * @file mxc_vpu.c
-+ *
-+ * @brief VPU system initialization and file operation implementation
-+ *
-+ * @ingroup VPU
-+ */
-+
-+#include <linux/kernel.h>
-+#include <linux/mm.h>
-+#include <linux/interrupt.h>
-+#include <linux/ioport.h>
-+#include <linux/stat.h>
-+#include <linux/platform_device.h>
-+#include <linux/kdev_t.h>
-+#include <linux/dma-mapping.h>
-+#include <linux/iram_alloc.h>
-+#include <linux/wait.h>
-+#include <linux/list.h>
-+#include <linux/clk.h>
-+#include <linux/delay.h>
-+#include <linux/fsl_devices.h>
-+#include <linux/uaccess.h>
-+#include <linux/io.h>
-+#include <linux/slab.h>
-+
-+#include <asm/sizes.h>
-+#include <mach/clock.h>
-+#include <mach/hardware.h>
-+
-+#include <mach/mxc_vpu.h>
-+
-+struct vpu_priv {
-+ struct fasync_struct *async_queue;
-+};
-+
-+/* To track the allocated memory buffer */
-+typedef struct memalloc_record {
-+ struct list_head list;
-+ struct vpu_mem_desc mem;
-+} memalloc_record;
-+
-+struct iram_setting {
-+ u32 start;
-+ u32 end;
-+};
-+
-+static DEFINE_SPINLOCK(vpu_lock);
-+static LIST_HEAD(head);
-+
-+static int vpu_major;
-+static int vpu_clk_usercount;
-+static struct class *vpu_class;
-+static struct vpu_priv vpu_data;
-+static u8 open_count;
-+static struct clk *vpu_clk;
-+static struct vpu_mem_desc bitwork_mem = { 0 };
-+static struct vpu_mem_desc pic_para_mem = { 0 };
-+static struct vpu_mem_desc user_data_mem = { 0 };
-+static struct vpu_mem_desc share_mem = { 0 };
-+
-+static void __iomem *vpu_base;
-+static int vpu_irq;
-+static u32 phy_vpu_base_addr;
-+static struct mxc_vpu_platform_data *vpu_plat;
-+
-+/* IRAM setting */
-+static struct iram_setting iram;
-+
-+/* implement the blocking ioctl */
-+static int codec_done;
-+static wait_queue_head_t vpu_queue;
-+
-+static u32 workctrl_regsave[6];
-+static u32 rd_ptr_regsave[4];
-+static u32 wr_ptr_regsave[4];
-+static u32 dis_flag_regsave[4];
-+
-+#define READ_REG(x) __raw_readl(vpu_base + x)
-+#define WRITE_REG(val, x) __raw_writel(val, vpu_base + x)
-+#define SAVE_WORK_REGS do { \
-+ int i; \
-+ for (i = 0; i < ARRAY_SIZE(workctrl_regsave)/2; i++) \
-+ workctrl_regsave[i] = READ_REG(BIT_WORK_CTRL_BUF_REG(i));\
-+} while (0)
-+#define RESTORE_WORK_REGS do { \
-+ int i; \
-+ for (i = 0; i < ARRAY_SIZE(workctrl_regsave)/2; i++) \
-+ WRITE_REG(workctrl_regsave[i], BIT_WORK_CTRL_BUF_REG(i));\
-+} while (0)
-+#define SAVE_CTRL_REGS do { \
-+ int i; \
-+ for (i = ARRAY_SIZE(workctrl_regsave)/2; \
-+ i < ARRAY_SIZE(workctrl_regsave); i++) \
-+ workctrl_regsave[i] = READ_REG(BIT_WORK_CTRL_BUF_REG(i));\
-+} while (0)
-+#define RESTORE_CTRL_REGS do { \
-+ int i; \
-+ for (i = ARRAY_SIZE(workctrl_regsave)/2; \
-+ i < ARRAY_SIZE(workctrl_regsave); i++) \
-+ WRITE_REG(workctrl_regsave[i], BIT_WORK_CTRL_BUF_REG(i));\
-+} while (0)
-+#define SAVE_RDWR_PTR_REGS do { \
-+ int i; \
-+ for (i = 0; i < ARRAY_SIZE(rd_ptr_regsave); i++) \
-+ rd_ptr_regsave[i] = READ_REG(BIT_RD_PTR_REG(i)); \
-+ for (i = 0; i < ARRAY_SIZE(wr_ptr_regsave); i++) \
-+ wr_ptr_regsave[i] = READ_REG(BIT_WR_PTR_REG(i)); \
-+} while (0)
-+#define RESTORE_RDWR_PTR_REGS do { \
-+ int i; \
-+ for (i = 0; i < ARRAY_SIZE(rd_ptr_regsave); i++) \
-+ WRITE_REG(rd_ptr_regsave[i], BIT_RD_PTR_REG(i)); \
-+ for (i = 0; i < ARRAY_SIZE(wr_ptr_regsave); i++) \
-+ WRITE_REG(wr_ptr_regsave[i], BIT_WR_PTR_REG(i)); \
-+} while (0)
-+#define SAVE_DIS_FLAG_REGS do { \
-+ int i; \
-+ for (i = 0; i < ARRAY_SIZE(dis_flag_regsave); i++) \
-+ dis_flag_regsave[i] = READ_REG(BIT_FRM_DIS_FLG_REG(i)); \
-+} while (0)
-+#define RESTORE_DIS_FLAG_REGS do { \
-+ int i; \
-+ for (i = 0; i < ARRAY_SIZE(dis_flag_regsave); i++) \
-+ WRITE_REG(dis_flag_regsave[i], BIT_FRM_DIS_FLG_REG(i)); \
-+} while (0)
-+
-+/*!
-+ * Private function to alloc dma buffer
-+ * @return status 0 success.
-+ */
-+static int vpu_alloc_dma_buffer(struct vpu_mem_desc *mem)
-+{
-+ mem->cpu_addr = (unsigned long)
-+ dma_alloc_coherent(NULL, PAGE_ALIGN(mem->size),
-+ (dma_addr_t *) (&mem->phy_addr),
-+ GFP_DMA | GFP_KERNEL);
-+ pr_debug("[ALLOC] mem alloc cpu_addr = 0x%x\n", mem->cpu_addr);
-+ if ((void *)(mem->cpu_addr) == NULL) {
-+ printk(KERN_ERR "Physical memory allocation error!\n");
-+ return -1;
-+ }
-+ return 0;
-+}
-+
-+/*!
-+ * Private function to free dma buffer
-+ */
-+static void vpu_free_dma_buffer(struct vpu_mem_desc *mem)
-+{
-+ if (mem->cpu_addr != 0) {
-+ dma_free_coherent(0, PAGE_ALIGN(mem->size),
-+ (void *)mem->cpu_addr, mem->phy_addr);
-+ }
-+}
-+
-+/*!
-+ * Private function to free buffers
-+ * @return status 0 success.
-+ */
-+static int vpu_free_buffers(void)
-+{
-+ struct memalloc_record *rec, *n;
-+ struct vpu_mem_desc mem;
-+
-+ list_for_each_entry_safe(rec, n, &head, list) {
-+ mem = rec->mem;
-+ if (mem.cpu_addr != 0) {
-+ vpu_free_dma_buffer(&mem);
-+ pr_debug("[FREE] freed paddr=0x%08X\n", mem.phy_addr);
-+ /* delete from list */
-+ list_del(&rec->list);
-+ kfree(rec);
-+ }
-+ }
-+
-+ return 0;
-+}
-+
-+/*!
-+ * @brief vpu interrupt handler
-+ */
-+static irqreturn_t vpu_irq_handler(int irq, void *dev_id)
-+{
-+ struct vpu_priv *dev = dev_id;
-+
-+ READ_REG(BIT_INT_STATUS);
-+ WRITE_REG(0x1, BIT_INT_CLEAR);
-+
-+ if (dev->async_queue)
-+ kill_fasync(&dev->async_queue, SIGIO, POLL_IN);
-+
-+ /*
-+ * Clock is gated on when dec/enc started, gate it off when
-+ * interrupt is received.
-+ */
-+ clk_disable(vpu_clk);
-+
-+ codec_done = 1;
-+ wake_up_interruptible(&vpu_queue);
-+
-+ return IRQ_HANDLED;
-+}
-+
-+/*!
-+ * @brief open function for vpu file operation
-+ *
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_open(struct inode *inode, struct file *filp)
-+{
-+ spin_lock(&vpu_lock);
-+ if ((open_count++ == 0) && cpu_is_mx32())
-+ vl2cc_enable();
-+ filp->private_data = (void *)(&vpu_data);
-+ spin_unlock(&vpu_lock);
-+ return 0;
-+}
-+
-+/*!
-+ * @brief IO ctrl function for vpu file operation
-+ * @param cmd IO ctrl command
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_ioctl(struct inode *inode, struct file *filp, u_int cmd,
-+ u_long arg)
-+{
-+ int ret = 0;
-+
-+ switch (cmd) {
-+ case VPU_IOC_PHYMEM_ALLOC:
-+ {
-+ struct memalloc_record *rec;
-+
-+ rec = kzalloc(sizeof(*rec), GFP_KERNEL);
-+ if (!rec)
-+ return -ENOMEM;
-+
-+ ret = copy_from_user(&(rec->mem),
-+ (struct vpu_mem_desc *)arg,
-+ sizeof(struct vpu_mem_desc));
-+ if (ret) {
-+ kfree(rec);
-+ return -EFAULT;
-+ }
-+
-+ pr_debug("[ALLOC] mem alloc size = 0x%x\n",
-+ rec->mem.size);
-+
-+ ret = vpu_alloc_dma_buffer(&(rec->mem));
-+ if (ret == -1) {
-+ kfree(rec);
-+ printk(KERN_ERR
-+ "Physical memory allocation error!\n");
-+ break;
-+ }
-+ ret = copy_to_user((void __user *)arg, &(rec->mem),
-+ sizeof(struct vpu_mem_desc));
-+ if (ret) {
-+ kfree(rec);
-+ ret = -EFAULT;
-+ break;
-+ }
-+
-+ spin_lock(&vpu_lock);
-+ list_add(&rec->list, &head);
-+ spin_unlock(&vpu_lock);
-+
-+ break;
-+ }
-+ case VPU_IOC_PHYMEM_FREE:
-+ {
-+ struct memalloc_record *rec, *n;
-+ struct vpu_mem_desc vpu_mem;
-+
-+ ret = copy_from_user(&vpu_mem,
-+ (struct vpu_mem_desc *)arg,
-+ sizeof(struct vpu_mem_desc));
-+ if (ret)
-+ return -EACCES;
-+
-+ pr_debug("[FREE] mem freed cpu_addr = 0x%x\n",
-+ vpu_mem.cpu_addr);
-+ if ((void *)vpu_mem.cpu_addr != NULL) {
-+ vpu_free_dma_buffer(&vpu_mem);
-+ }
-+
-+ spin_lock(&vpu_lock);
-+ list_for_each_entry_safe(rec, n, &head, list) {
-+ if (rec->mem.cpu_addr == vpu_mem.cpu_addr) {
-+ /* delete from list */
-+ list_del(&rec->list);
-+ kfree(rec);
-+ break;
-+ }
-+ }
-+ spin_unlock(&vpu_lock);
-+
-+ break;
-+ }
-+ case VPU_IOC_WAIT4INT:
-+ {
-+ u_long timeout = (u_long) arg;
-+ if (!wait_event_interruptible_timeout
-+ (vpu_queue, codec_done != 0,
-+ msecs_to_jiffies(timeout))) {
-+ printk(KERN_WARNING "VPU blocking: timeout.\n");
-+ ret = -ETIME;
-+ } else if (signal_pending(current)) {
-+ printk(KERN_WARNING
-+ "VPU interrupt received.\n");
-+ ret = -ERESTARTSYS;
-+ } else
-+ codec_done = 0;
-+ break;
-+ }
-+ case VPU_IOC_VL2CC_FLUSH:
-+ if (cpu_is_mx32()) {
-+ vl2cc_flush();
-+ }
-+ break;
-+ case VPU_IOC_IRAM_SETTING:
-+ {
-+ ret = copy_to_user((void __user *)arg, &iram,
-+ sizeof(struct iram_setting));
-+ if (ret)
-+ ret = -EFAULT;
-+
-+ break;
-+ }
-+ case VPU_IOC_CLKGATE_SETTING:
-+ {
-+ u32 clkgate_en;
-+
-+ if (get_user(clkgate_en, (u32 __user *) arg))
-+ return -EFAULT;
-+
-+ if (clkgate_en) {
-+ clk_enable(vpu_clk);
-+ } else {
-+ clk_disable(vpu_clk);
-+ }
-+
-+ break;
-+ }
-+ case VPU_IOC_GET_SHARE_MEM:
-+ {
-+ spin_lock(&vpu_lock);
-+ if (share_mem.cpu_addr != 0) {
-+ ret = copy_to_user((void __user *)arg,
-+ &share_mem,
-+ sizeof(struct vpu_mem_desc));
-+ spin_unlock(&vpu_lock);
-+ break;
-+ } else {
-+ if (copy_from_user(&share_mem,
-+ (struct vpu_mem_desc *)arg,
-+ sizeof(struct vpu_mem_desc))) {
-+ spin_unlock(&vpu_lock);
-+ return -EFAULT;
-+ }
-+ if (vpu_alloc_dma_buffer(&share_mem) == -1)
-+ ret = -EFAULT;
-+ else {
-+ if (copy_to_user((void __user *)arg,
-+ &share_mem,
-+ sizeof(struct
-+ vpu_mem_desc)))
-+ ret = -EFAULT;
-+ }
-+ }
-+ spin_unlock(&vpu_lock);
-+ break;
-+ }
-+ case VPU_IOC_GET_WORK_ADDR:
-+ {
-+ if (bitwork_mem.cpu_addr != 0) {
-+ ret =
-+ copy_to_user((void __user *)arg,
-+ &bitwork_mem,
-+ sizeof(struct vpu_mem_desc));
-+ break;
-+ } else {
-+ if (copy_from_user(&bitwork_mem,
-+ (struct vpu_mem_desc *)arg,
-+ sizeof(struct vpu_mem_desc)))
-+ return -EFAULT;
-+
-+ if (vpu_alloc_dma_buffer(&bitwork_mem) == -1)
-+ ret = -EFAULT;
-+ else if (copy_to_user((void __user *)arg,
-+ &bitwork_mem,
-+ sizeof(struct
-+ vpu_mem_desc)))
-+ ret = -EFAULT;
-+ }
-+ break;
-+ }
-+ case VPU_IOC_GET_PIC_PARA_ADDR:
-+ {
-+ if (pic_para_mem.cpu_addr != 0) {
-+ ret =
-+ copy_to_user((void __user *)arg,
-+ &pic_para_mem,
-+ sizeof(struct vpu_mem_desc));
-+ break;
-+ } else {
-+ if (copy_from_user(&pic_para_mem,
-+ (struct vpu_mem_desc *)arg,
-+ sizeof(struct vpu_mem_desc)))
-+ return -EFAULT;
-+
-+ if (vpu_alloc_dma_buffer(&pic_para_mem) == -1)
-+ ret = -EFAULT;
-+ else if (copy_to_user((void __user *)arg,
-+ &pic_para_mem,
-+ sizeof(struct
-+ vpu_mem_desc)))
-+ ret = -EFAULT;
-+ }
-+ break;
-+ }
-+ case VPU_IOC_GET_USER_DATA_ADDR:
-+ {
-+ if (user_data_mem.cpu_addr != 0) {
-+ ret =
-+ copy_to_user((void __user *)arg,
-+ &user_data_mem,
-+ sizeof(struct vpu_mem_desc));
-+ break;
-+ } else {
-+ if (copy_from_user(&user_data_mem,
-+ (struct vpu_mem_desc *)arg,
-+ sizeof(struct vpu_mem_desc)))
-+ return -EFAULT;
-+
-+ if (vpu_alloc_dma_buffer(&user_data_mem) == -1)
-+ ret = -EFAULT;
-+ else if (copy_to_user((void __user *)arg,
-+ &user_data_mem,
-+ sizeof(struct
-+ vpu_mem_desc)))
-+ ret = -EFAULT;
-+ }
-+ break;
-+ }
-+ case VPU_IOC_SYS_SW_RESET:
-+ {
-+ if (vpu_plat->reset)
-+ vpu_plat->reset();
-+
-+ break;
-+ }
-+ case VPU_IOC_REG_DUMP:
-+ break;
-+ case VPU_IOC_PHYMEM_DUMP:
-+ break;
-+ default:
-+ {
-+ printk(KERN_ERR "No such IOCTL, cmd is %d\n", cmd);
-+ break;
-+ }
-+ }
-+ return ret;
-+}
-+
-+/*!
-+ * @brief Release function for vpu file operation
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_release(struct inode *inode, struct file *filp)
-+{
-+ spin_lock(&vpu_lock);
-+ if (open_count > 0 && !(--open_count)) {
-+ vpu_free_buffers();
-+
-+ if (cpu_is_mx32())
-+ vl2cc_disable();
-+
-+ /* Free shared memory when vpu device is idle */
-+ vpu_free_dma_buffer(&share_mem);
-+ share_mem.cpu_addr = 0;
-+ }
-+ spin_unlock(&vpu_lock);
-+
-+ return 0;
-+}
-+
-+/*!
-+ * @brief fasync function for vpu file operation
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_fasync(int fd, struct file *filp, int mode)
-+{
-+ struct vpu_priv *dev = (struct vpu_priv *)filp->private_data;
-+ return fasync_helper(fd, filp, mode, &dev->async_queue);
-+}
-+
-+/*!
-+ * @brief memory map function of harware registers for vpu file operation
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_map_hwregs(struct file *fp, struct vm_area_struct *vm)
-+{
-+ unsigned long pfn;
-+
-+ vm->vm_flags |= VM_IO | VM_RESERVED;
-+ vm->vm_page_prot = pgprot_noncached(vm->vm_page_prot);
-+ pfn = phy_vpu_base_addr >> PAGE_SHIFT;
-+ pr_debug("size=0x%x, page no.=0x%x\n",
-+ (int)(vm->vm_end - vm->vm_start), (int)pfn);
-+ return remap_pfn_range(vm, vm->vm_start, pfn, vm->vm_end - vm->vm_start,
-+ vm->vm_page_prot) ? -EAGAIN : 0;
-+}
-+
-+/*!
-+ * @brief memory map function of memory for vpu file operation
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_map_mem(struct file *fp, struct vm_area_struct *vm)
-+{
-+ int request_size;
-+ request_size = vm->vm_end - vm->vm_start;
-+
-+ pr_debug(" start=0x%x, pgoff=0x%x, size=0x%x\n",
-+ (unsigned int)(vm->vm_start), (unsigned int)(vm->vm_pgoff),
-+ request_size);
-+
-+ vm->vm_flags |= VM_IO | VM_RESERVED;
-+ vm->vm_page_prot = pgprot_noncached(vm->vm_page_prot);
-+
-+ return remap_pfn_range(vm, vm->vm_start, vm->vm_pgoff,
-+ request_size, vm->vm_page_prot) ? -EAGAIN : 0;
-+
-+}
-+
-+/*!
-+ * @brief memory map interface for vpu file operation
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_mmap(struct file *fp, struct vm_area_struct *vm)
-+{
-+ if (vm->vm_pgoff)
-+ return vpu_map_mem(fp, vm);
-+ else
-+ return vpu_map_hwregs(fp, vm);
-+}
-+
-+struct file_operations vpu_fops = {
-+ .owner = THIS_MODULE,
-+ .open = vpu_open,
-+ .ioctl = vpu_ioctl,
-+ .release = vpu_release,
-+ .fasync = vpu_fasync,
-+ .mmap = vpu_mmap,
-+};
-+
-+/*!
-+ * This function is called by the driver framework to initialize the vpu device.
-+ * @param dev The device structure for the vpu passed in by the framework.
-+ * @return 0 on success or negative error code on error
-+ */
-+static int vpu_dev_probe(struct platform_device *pdev)
-+{
-+ int err = 0;
-+ struct device *temp_class;
-+ struct resource *res;
-+ unsigned long addr = 0;
-+
-+ vpu_plat = pdev->dev.platform_data;
-+
-+ iram_alloc(VPU_IRAM_SIZE, &addr);
-+ if (addr == 0)
-+ iram.start = iram.end = 0;
-+ else {
-+ iram.start = addr;
-+ iram.end = addr + VPU_IRAM_SIZE - 1;
-+ }
-+
-+ if (cpu_is_mx32()) {
-+ err = vl2cc_init(iram.start);
-+ if (err != 0)
-+ return err;
-+ }
-+
-+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-+ if (!res) {
-+ printk(KERN_ERR "vpu: unable to get vpu base addr\n");
-+ return -ENODEV;
-+ }
-+ phy_vpu_base_addr = res->start;
-+ vpu_base = ioremap(res->start, res->end - res->start);
-+
-+ vpu_major = register_chrdev(vpu_major, "mxc_vpu", &vpu_fops);
-+ if (vpu_major < 0) {
-+ printk(KERN_ERR "vpu: unable to get a major for VPU\n");
-+ err = -EBUSY;
-+ goto error;
-+ }
-+
-+ vpu_class = class_create(THIS_MODULE, "mxc_vpu");
-+ if (IS_ERR(vpu_class)) {
-+ err = PTR_ERR(vpu_class);
-+ goto err_out_chrdev;
-+ }
-+
-+ temp_class = device_create(vpu_class, NULL, MKDEV(vpu_major, 0),
-+ NULL, "mxc_vpu");
-+ if (IS_ERR(temp_class)) {
-+ err = PTR_ERR(temp_class);
-+ goto err_out_class;
-+ }
-+
-+ vpu_clk = clk_get(&pdev->dev, "vpu_clk");
-+ if (IS_ERR(vpu_clk)) {
-+ err = -ENOENT;
-+ goto err_out_class;
-+ }
-+
-+ res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
-+ if (!res) {
-+ printk(KERN_ERR "vpu: unable to get vpu interrupt\n");
-+ err = -ENXIO;
-+ goto err_out_class;
-+ }
-+ vpu_irq = res->start;
-+
-+ err = request_irq(vpu_irq, vpu_irq_handler, 0, "VPU_CODEC_IRQ",
-+ (void *)(&vpu_data));
-+ if (err)
-+ goto err_out_class;
-+
-+ printk(KERN_INFO "VPU initialized\n");
-+ goto out;
-+
-+ err_out_class:
-+ device_destroy(vpu_class, MKDEV(vpu_major, 0));
-+ class_destroy(vpu_class);
-+ err_out_chrdev:
-+ unregister_chrdev(vpu_major, "mxc_vpu");
-+ error:
-+ iounmap(vpu_base);
-+ if (cpu_is_mx32()) {
-+ vl2cc_cleanup();
-+ }
-+ out:
-+ return err;
-+}
-+
-+static int vpu_dev_remove(struct platform_device *pdev)
-+{
-+ free_irq(vpu_irq, &vpu_data);
-+ iounmap(vpu_base);
-+ iram_free(iram.start, VPU_IRAM_SIZE);
-+
-+ return 0;
-+}
-+
-+#ifdef CONFIG_PM
-+static int vpu_suspend(struct platform_device *pdev, pm_message_t state)
-+{
-+ int i;
-+ unsigned long timeout;
-+
-+ /* Wait for vpu go to idle state, suspect vpu cannot be changed
-+ to idle state after about 1 sec */
-+ if (open_count > 0) {
-+ timeout = jiffies + HZ;
-+ clk_enable(vpu_clk);
-+ while (READ_REG(BIT_BUSY_FLAG)) {
-+ msleep(1);
-+ if (time_after(jiffies, timeout))
-+ goto out;
-+ }
-+ clk_disable(vpu_clk);
-+ }
-+
-+ /* Make sure clock is disabled before suspend */
-+ vpu_clk_usercount = clk_get_usecount(vpu_clk);
-+ for (i = 0; i < vpu_clk_usercount; i++)
-+ clk_disable(vpu_clk);
-+
-+ if (!cpu_is_mx53()) {
-+ clk_enable(vpu_clk);
-+ if (bitwork_mem.cpu_addr != 0) {
-+ SAVE_WORK_REGS;
-+ SAVE_CTRL_REGS;
-+ SAVE_RDWR_PTR_REGS;
-+ SAVE_DIS_FLAG_REGS;
-+
-+ WRITE_REG(0x1, BIT_BUSY_FLAG);
-+ WRITE_REG(VPU_SLEEP_REG_VALUE, BIT_RUN_COMMAND);
-+ while (READ_REG(BIT_BUSY_FLAG))
-+ ;
-+ }
-+ clk_disable(vpu_clk);
-+ }
-+
-+ if (cpu_is_mx37() || cpu_is_mx51())
-+ mxc_pg_enable(pdev);
-+
-+ return 0;
-+
-+out:
-+ clk_disable(vpu_clk);
-+ return -EAGAIN;
-+
-+}
-+
-+static int vpu_resume(struct platform_device *pdev)
-+{
-+ int i;
-+
-+ if (cpu_is_mx37() || cpu_is_mx51())
-+ mxc_pg_disable(pdev);
-+
-+ if (cpu_is_mx53())
-+ goto recover_clk;
-+
-+ clk_enable(vpu_clk);
-+ if (bitwork_mem.cpu_addr != 0) {
-+ u32 *p = (u32 *) bitwork_mem.cpu_addr;
-+ u32 data;
-+ u16 data_hi;
-+ u16 data_lo;
-+
-+ RESTORE_WORK_REGS;
-+
-+ WRITE_REG(0x0, BIT_RESET_CTRL);
-+ WRITE_REG(0x0, BIT_CODE_RUN);
-+
-+ /*
-+ * Re-load boot code, from the codebuffer in external RAM.
-+ * Thankfully, we only need 4096 bytes, same for all platforms.
-+ */
-+ if (cpu_is_mx51()) {
-+ for (i = 0; i < 2048; i += 4) {
-+ data = p[(i / 2) + 1];
-+ data_hi = (data >> 16) & 0xFFFF;
-+ data_lo = data & 0xFFFF;
-+ WRITE_REG((i << 16) | data_hi, BIT_CODE_DOWN);
-+ WRITE_REG(((i + 1) << 16) | data_lo,
-+ BIT_CODE_DOWN);
-+
-+ data = p[i / 2];
-+ data_hi = (data >> 16) & 0xFFFF;
-+ data_lo = data & 0xFFFF;
-+ WRITE_REG(((i + 2) << 16) | data_hi,
-+ BIT_CODE_DOWN);
-+ WRITE_REG(((i + 3) << 16) | data_lo,
-+ BIT_CODE_DOWN);
-+ }
-+ } else {
-+ for (i = 0; i < 2048; i += 2) {
-+ if (cpu_is_mx37())
-+ data = swab32(p[i / 2]);
-+ else
-+ data = p[i / 2];
-+ data_hi = (data >> 16) & 0xFFFF;
-+ data_lo = data & 0xFFFF;
-+
-+ WRITE_REG((i << 16) | data_hi, BIT_CODE_DOWN);
-+ WRITE_REG(((i + 1) << 16) | data_lo,
-+ BIT_CODE_DOWN);
-+ }
-+ }
-+
-+ RESTORE_CTRL_REGS;
-+
-+ WRITE_REG(BITVAL_PIC_RUN, BIT_INT_ENABLE);
-+
-+ WRITE_REG(0x1, BIT_BUSY_FLAG);
-+ WRITE_REG(0x1, BIT_CODE_RUN);
-+ while (READ_REG(BIT_BUSY_FLAG))
-+ ;
-+
-+ RESTORE_RDWR_PTR_REGS;
-+ RESTORE_DIS_FLAG_REGS;
-+
-+ WRITE_REG(0x1, BIT_BUSY_FLAG);
-+ WRITE_REG(VPU_WAKE_REG_VALUE, BIT_RUN_COMMAND);
-+ while (READ_REG(BIT_BUSY_FLAG))
-+ ;
-+ }
-+ clk_disable(vpu_clk);
-+
-+recover_clk:
-+ /* Recover vpu clock */
-+ for (i = 0; i < vpu_clk_usercount; i++)
-+ clk_enable(vpu_clk);
-+
-+ return 0;
-+}
-+#else
-+#define vpu_suspend NULL
-+#define vpu_resume NULL
-+#endif /* !CONFIG_PM */
-+
-+/*! Driver definition
-+ *
-+ */
-+static struct platform_driver mxcvpu_driver = {
-+ .driver = {
-+ .name = "mxc_vpu",
-+ },
-+ .probe = vpu_dev_probe,
-+ .remove = vpu_dev_remove,
-+ .suspend = vpu_suspend,
-+ .resume = vpu_resume,
-+};
-+
-+static int __init vpu_init(void)
-+{
-+ int ret = platform_driver_register(&mxcvpu_driver);
-+
-+ init_waitqueue_head(&vpu_queue);
-+
-+ return ret;
-+}
-+
-+static void __exit vpu_exit(void)
-+{
-+ if (vpu_major > 0) {
-+ device_destroy(vpu_class, MKDEV(vpu_major, 0));
-+ class_destroy(vpu_class);
-+ unregister_chrdev(vpu_major, "mxc_vpu");
-+ vpu_major = 0;
-+ }
-+
-+ if (cpu_is_mx32()) {
-+ vl2cc_cleanup();
-+ }
-+
-+ vpu_free_dma_buffer(&bitwork_mem);
-+ vpu_free_dma_buffer(&pic_para_mem);
-+ vpu_free_dma_buffer(&user_data_mem);
-+
-+ clk_put(vpu_clk);
-+
-+ platform_driver_unregister(&mxcvpu_driver);
-+ return;
-+}
-+
-+MODULE_AUTHOR("Freescale Semiconductor, Inc.");
-+MODULE_DESCRIPTION("Linux VPU driver for Freescale i.MX/MXC");
-+MODULE_LICENSE("GPL");
-+
-+module_init(vpu_init);
-+module_exit(vpu_exit);
Index: linux-2.6.38.8/drivers/rtc/Kconfig
===================================================================
--- linux-2.6.38.8.orig/drivers/rtc/Kconfig 2011-06-03 03:35:11.000000000 +0200
-+++ linux-2.6.38.8/drivers/rtc/Kconfig 2011-10-20 19:28:29.000000000 +0200
++++ linux-2.6.38.8/drivers/rtc/Kconfig 2012-03-13 11:32:42.000000000 +0100
@@ -600,6 +600,13 @@
This driver can also be built as a module, if so, the module
will be called "rtc-mxc".
@@ -1394,7 +344,7 @@ Index: linux-2.6.38.8/drivers/rtc/Kconfig
Index: linux-2.6.38.8/drivers/rtc/Makefile
===================================================================
--- linux-2.6.38.8.orig/drivers/rtc/Makefile 2011-06-03 03:35:11.000000000 +0200
-+++ linux-2.6.38.8/drivers/rtc/Makefile 2011-10-20 19:28:29.000000000 +0200
++++ linux-2.6.38.8/drivers/rtc/Makefile 2012-03-13 11:32:42.000000000 +0100
@@ -101,3 +101,4 @@
obj-$(CONFIG_RTC_DRV_WM831X) += rtc-wm831x.o
obj-$(CONFIG_RTC_DRV_WM8350) += rtc-wm8350.o
@@ -1403,7 +353,7 @@ Index: linux-2.6.38.8/drivers/rtc/Makefile
Index: linux-2.6.38.8/drivers/rtc/rtc-mxc_v2.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/rtc/rtc-mxc_v2.c 2011-10-20 19:28:29.000000000 +0200
++++ linux-2.6.38.8/drivers/rtc/rtc-mxc_v2.c 2012-03-13 11:32:42.000000000 +0100
@@ -0,0 +1,766 @@
+/*
+ * Copyright (C) 2004-2010 Freescale Semiconductor, Inc. All Rights Reserved.
@@ -2173,14 +1123,13 @@ Index: linux-2.6.38.8/drivers/rtc/rtc-mxc_v2.c
+MODULE_LICENSE("GPL");
Index: linux-2.6.38.8/drivers/mxc/Kconfig
===================================================================
---- linux-2.6.38.8.orig/drivers/mxc/Kconfig 2011-10-20 19:28:29.000000000 +0200
-+++ linux-2.6.38.8/drivers/mxc/Kconfig 2011-10-20 19:42:54.000000000 +0200
-@@ -4,6 +4,9 @@
+--- linux-2.6.38.8.orig/drivers/mxc/Kconfig 2012-03-13 11:32:42.000000000 +0100
++++ linux-2.6.38.8/drivers/mxc/Kconfig 2012-03-13 17:43:40.000000000 +0100
+@@ -4,6 +4,8 @@
menu "MXC support drivers"
+source "drivers/mxc/hw_event/Kconfig"
-+source "drivers/mxc/vpu/Kconfig"
+
endmenu
@@ -2188,14 +1137,13 @@ Index: linux-2.6.38.8/drivers/mxc/Kconfig
Index: linux-2.6.38.8/drivers/mxc/Makefile
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/drivers/mxc/Makefile 2011-10-20 19:42:54.000000000 +0200
-@@ -0,0 +1,2 @@
-+obj-$(CONFIG_MXC_VPU) += vpu/
++++ linux-2.6.38.8/drivers/mxc/Makefile 2012-03-13 17:43:40.000000000 +0100
+@@ -0,0 +1,1 @@
+obj-$(CONFIG_MXC_HWEVENT) += hw_event/
Index: linux-2.6.38.8/arch/arm/plat-mxc/include/mach/hw_events.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.38.8/arch/arm/plat-mxc/include/mach/hw_events.h 2011-10-20 19:45:54.000000000 +0200
++++ linux-2.6.38.8/arch/arm/plat-mxc/include/mach/hw_events.h 2012-03-13 11:32:42.000000000 +0100
@@ -0,0 +1,65 @@
+/*
+ * Copyright 2007-2010 Freescale Semiconductor, Inc. All Rights Reserved.
diff --git a/patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-vpu_driver.patch b/patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-vpu_driver.patch
new file mode 100644
index 0000000..e7855fe
--- /dev/null
+++ b/patches/linux/2.6.38/442-freescale-0034-ENGR00126692-3-add_hw-vpu_driver.patch
@@ -0,0 +1,1117 @@
+From 3eb9039c5392abaabd96d08c0006ea4066346a60 Mon Sep 17 00:00:00 2001
+From: Dinh Nguyen <Din...@fr...>
+Date: Tue, 17 Aug 2010 16:46:40 -0500
+Subject: [PATCH] ENGR00126692-3: Upgrade kernel to 2.6.35
+
+This patch contains changes to /drivers files
+Contains all checkpatch and copyright fixes.
+
+Acked-by: Rob Herring <r.h...@fr...>
+Signed-off-by: Dinh Nguyen <Din...@fr...>
+---
+ Changes by Armadeus systems:
+ - extracted from original patch
+
+ drivers/mxc/Kconfig | 39 +
+ drivers/mxc/Makefile | 17 +
+ drivers/mxc/vpu/Kconfig | 30 +
+ drivers/mxc/vpu/Makefile | 10 +
+ drivers/mxc/vpu/mxc_vl2cc.c | 124 +
+ drivers/mxc/vpu/mxc_vpu.c | 862 ++
+
+ - plus:
+ arch/arm/mach-mx5/system.c
+
+Index: linux-2.6.38.8/drivers/mxc/vpu/Kconfig
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.38.8/drivers/mxc/vpu/Kconfig 2012-03-15 15:50:48.000000000 +0100
+@@ -0,0 +1,22 @@
++#
++# Codec configuration
++#
++
++menu "MXC VPU(Video Processing Unit) support"
++
++config MXC_VPU
++ tristate "Support for MXC VPU(Video Processing Unit)"
++ depends on (ARCH_MX3 || ARCH_MX27 || ARCH_MX37 || ARCH_MX5)
++ default y
++ ---help---
++ The VPU codec device provides codec function for H.264/MPEG4/H.263,
++ as well as MPEG2/VC-1/DivX on some platforms.
++
++config MXC_VPU_DEBUG
++ bool "MXC VPU debugging"
++ depends on MXC_VPU != n
++ help
++ This is an option for the developers; most people should
++ say N here. This enables MXC VPU driver debugging.
++
++endmenu
+Index: linux-2.6.38.8/drivers/mxc/vpu/Makefile
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.38.8/drivers/mxc/vpu/Makefile 2012-03-14 22:37:24.000000000 +0100
+@@ -0,0 +1,9 @@
++#
++# Makefile for the VPU drivers.
++#
++
++obj-$(CONFIG_MXC_VPU) += mxc_vpu.o
++
++ifeq ($(CONFIG_MXC_VPU_DEBUG),y)
++EXTRA_CFLAGS += -DDEBUG
++endif
+Index: linux-2.6.38.8/drivers/mxc/vpu/mxc_vpu.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.38.8/drivers/mxc/vpu/mxc_vpu.c 2012-03-15 16:03:13.000000000 +0100
+@@ -0,0 +1,868 @@
++/*
++ * Copyright 2006-2011 Freescale Semiconductor, Inc. All Rights Reserved.
++ */
++
++/*
++ * The code contained herein is licensed under the GNU General Public
++ * License. You may obtain a copy of the GNU General Public License
++ * Version 2 or later at the following locations:
++ *
++ * http://www.opensource.org/licenses/gpl-license.html
++ * http://www.gnu.org/copyleft/gpl.html
++ */
++
++/*!
++ * @file mxc_vpu.c
++ *
++ * @brief VPU system initialization and file operation implementation
++ *
++ * @ingroup VPU
++ */
++
++#include <linux/kernel.h>
++#include <linux/mm.h>
++#include <linux/interrupt.h>
++#include <linux/ioport.h>
++#include <linux/stat.h>
++#include <linux/platform_device.h>
++#include <linux/kdev_t.h>
++#include <linux/dma-mapping.h>
++#include <linux/wait.h>
++#include <linux/list.h>
++#include <linux/clk.h>
++#include <linux/delay.h>
++#include <linux/fsl_devices.h>
++#include <linux/uaccess.h>
++#include <linux/io.h>
++#include <linux/slab.h>
++#include <linux/workqueue.h>
++#include <linux/sched.h>
++#include <linux/vmalloc.h>
++#include <asm/sizes.h>
++#include <mach/clock.h>
++#include <mach/hardware.h>
++#include <mach/iram.h>
++
++#include <mach/mxc_vpu.h>
++
++struct vpu_priv {
++ struct fasync_struct *async_queue;
++ struct work_struct work;
++ struct workqueue_struct *workqueue;
++};
++
++/* To track the allocated memory buffer */
++typedef struct memalloc_record {
++ struct list_head list;
++ struct vpu_mem_desc mem;
++} memalloc_record;
++
++struct iram_setting {
++ u32 start;
++ u32 end;
++};
++
++static DEFINE_SPINLOCK(vpu_lock);
++static LIST_HEAD(head);
++
++static int vpu_major;
++static int vpu_clk_usercount;
++static struct class *vpu_class;
++static struct vpu_priv vpu_data;
++static u8 open_count;
++static struct clk *vpu_clk;
++static struct vpu_mem_desc bitwork_mem = { 0 };
++static struct vpu_mem_desc pic_para_mem = { 0 };
++static struct vpu_mem_desc user_data_mem = { 0 };
++static struct vpu_mem_desc share_mem = { 0 };
++static struct vpu_mem_desc vshare_mem = { 0 };
++
++static void __iomem *vpu_base;
++static int vpu_irq;
++static u32 phy_vpu_base_addr;
++static struct mxc_vpu_platform_data *vpu_plat;
++
++/* IRAM setting */
++static struct iram_setting iram;
++
++/* implement the blocking ioctl */
++static int codec_done;
++static wait_queue_head_t vpu_queue;
++
++static u32 workctrl_regsave[6];
++static u32 rd_ptr_regsave[4];
++static u32 wr_ptr_regsave[4];
++static u32 dis_flag_regsave[4];
++
++#define READ_REG(x) __raw_readl(vpu_base + x)
++#define WRITE_REG(val, x) __raw_writel(val, vpu_base + x)
++#define SAVE_WORK_REGS do { \
++ int i; \
++ for (i = 0; i < ARRAY_SIZE(workctrl_regsave)/2; i++) \
++ workctrl_regsave[i] = READ_REG(BIT_WORK_CTRL_BUF_REG(i));\
++} while (0)
++#define RESTORE_WORK_REGS do { \
++ int i; \
++ for (i = 0; i < ARRAY_SIZE(workctrl_regsave)/2; i++) \
++ WRITE_REG(workctrl_regsave[i], BIT_WORK_CTRL_BUF_REG(i));\
++} while (0)
++#define SAVE_CTRL_REGS do { \
++ int i; \
++ for (i = ARRAY_SIZE(workctrl_regsave)/2; \
++ i < ARRAY_SIZE(workctrl_regsave); i++) \
++ workctrl_regsave[i] = READ_REG(BIT_WORK_CTRL_BUF_REG(i));\
++} while (0)
++#define RESTORE_CTRL_REGS do { \
++ int i; \
++ for (i = ARRAY_SIZE(workctrl_regsave)/2; \
++ i < ARRAY_SIZE(workctrl_regsave); i++) \
++ WRITE_REG(workctrl_regsave[i], BIT_WORK_CTRL_BUF_REG(i));\
++} while (0)
++#define SAVE_RDWR_PTR_REGS do { \
++ int i; \
++ for (i = 0; i < ARRAY_SIZE(rd_ptr_regsave); i++) \
++ rd_ptr_regsave[i] = READ_REG(BIT_RD_PTR_REG(i)); \
++ for (i = 0; i < ARRAY_SIZE(wr_ptr_regsave); i++) \
++ wr_ptr_regsave[i] = READ_REG(BIT_WR_PTR_REG(i)); \
++} while (0)
++#define RESTORE_RDWR_PTR_REGS do { \
++ int i; \
++ for (i = 0; i < ARRAY_SIZE(rd_ptr_regsave); i++) \
++ WRITE_REG(rd_ptr_regsave[i], BIT_RD_PTR_REG(i)); \
++ for (i = 0; i < ARRAY_SIZE(wr_ptr_regsave); i++) \
++ WRITE_REG(wr_ptr_regsave[i], BIT_WR_PTR_REG(i)); \
++} while (0)
++#define SAVE_DIS_FLAG_REGS do { \
++ int i; \
++ for (i = 0; i < ARRAY_SIZE(dis_flag_regsave); i++) \
++ dis_flag_regsave[i] = READ_REG(BIT_FRM_DIS_FLG_REG(i)); \
++} while (0)
++#define RESTORE_DIS_FLAG_REGS do { \
++ int i; \
++ for (i = 0; i < ARRAY_SIZE(dis_flag_regsave); i++) \
++ WRITE_REG(dis_flag_regsave[i], BIT_FRM_DIS_FLG_REG(i)); \
++} while (0)
++
++/*!
++ * Private function to alloc dma buffer
++ * @return status 0 success.
++ */
++static int vpu_alloc_dma_buffer(struct vpu_mem_desc *mem)
++{
++ mem->cpu_addr = (unsigned long)
++ dma_alloc_coherent(NULL, PAGE_ALIGN(mem->size),
++ (dma_addr_t *) (&mem->phy_addr),
++ GFP_DMA | GFP_KERNEL);
++ pr_debug("[ALLOC] mem alloc cpu_addr = 0x%x\n", mem->cpu_addr);
++ if ((void *)(mem->cpu_addr) == NULL) {
++ printk(KERN_ERR "Physical memory allocation error!\n");
++ return -1;
++ }
++ return 0;
++}
++
++/*!
++ * Private function to free dma buffer
++ */
++static void vpu_free_dma_buffer(struct vpu_mem_desc *mem)
++{
++ if (mem->cpu_addr != 0) {
++ dma_free_coherent(0, PAGE_ALIGN(mem->size),
++ (void *)mem->cpu_addr, mem->phy_addr);
++ }
++}
++
++/*!
++ * Private function to free buffers
++ * @return status 0 success.
++ */
++static int vpu_free_buffers(void)
++{
++ struct memalloc_record *rec, *n;
++ struct vpu_mem_desc mem;
++
++ list_for_each_entry_safe(rec, n, &head, list) {
++ mem = rec->mem;
++ if (mem.cpu_addr != 0) {
++ vpu_free_dma_buffer(&mem);
++ pr_debug("[FREE] freed paddr=0x%08X\n", mem.phy_addr);
++ /* delete from list */
++ list_del(&rec->list);
++ kfree(rec);
++ }
++ }
++
++ return 0;
++}
++
++static inline void vpu_worker_callback(struct work_struct *w)
++{
++ struct vpu_priv *dev = container_of(w, struct vpu_priv,
++ work);
++
++ if (dev->async_queue)
++ kill_fasync(&dev->async_queue, SIGIO, POLL_IN);
++
++ codec_done = 1;
++ wake_up_interruptible(&vpu_queue);
++
++ /*
++ * Clock is gated on when dec/enc started, gate it off when
++ * interrupt is received.
++ */
++ clk_disable(vpu_clk);
++}
++
++/*!
++ * @brief vpu interrupt handler
++ */
++static irqreturn_t vpu_irq_handler(int irq, void *dev_id)
++{
++ struct vpu_priv *dev = dev_id;
++
++ READ_REG(BIT_INT_STATUS);
++ WRITE_REG(0x1, BIT_INT_CLEAR);
++
++ queue_work(dev->workqueue, &dev->work);
++
++ return IRQ_HANDLED;
++}
++
++/*!
++ * @brief open function for vpu file operation
++ *
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_open(struct inode *inode, struct file *filp)
++{
++ spin_lock(&vpu_lock);
++ open_count++;
++ filp->private_data = (void *)(&vpu_data);
++ spin_unlock(&vpu_lock);
++ return 0;
++}
++
++/*!
++ * @brief IO ctrl function for vpu file operation
++ * @param cmd IO ctrl command
++ * @return 0 on success or negative error code on error
++ */
++static long vpu_ioctl(struct file *filp, u_int cmd, u_long arg)
++{
++ int ret = 0;
++
++ switch (cmd) {
++ case VPU_IOC_PHYMEM_ALLOC:
++ {
++ struct memalloc_record *rec;
++
++ rec = kzalloc(sizeof(*rec), GFP_KERNEL);
++ if (!rec)
++ return -ENOMEM;
++
++ ret = copy_from_user(&(rec->mem),
++ (struct vpu_mem_desc *)arg,
++ sizeof(struct vpu_mem_desc));
++ if (ret) {
++ kfree(rec);
++ return -EFAULT;
++ }
++
++ pr_debug("[ALLOC] mem alloc size = 0x%x\n",
++ rec->mem.size);
++
++ ret = vpu_alloc_dma_buffer(&(rec->mem));
++ if (ret == -1) {
++ kfree(rec);
++ printk(KERN_ERR
++ "Physical memory allocation error!\n");
++ break;
++ }
++ ret = copy_to_user((void __user *)arg, &(rec->mem),
++ sizeof(struct vpu_mem_desc));
++ if (ret) {
++ kfree(rec);
++ ret = -EFAULT;
++ break;
++ }
++
++ spin_lock(&vpu_lock);
++ list_add(&rec->list, &head);
++ spin_unlock(&vpu_lock);
++
++ break;
++ }
++ case VPU_IOC_PHYMEM_FREE:
++ {
++ struct memalloc_record *rec, *n;
++ struct vpu_mem_desc vpu_mem;
++
++ ret = copy_from_user(&vpu_mem,
++ (struct vpu_mem_desc *)arg,
++ sizeof(struct vpu_mem_desc));
++ if (ret)
++ return -EACCES;
++
++ pr_debug("[FREE] mem freed cpu_addr = 0x%x\n",
++ vpu_mem.cpu_addr);
++ if ((void *)vpu_mem.cpu_addr != NULL) {
++ vpu_free_dma_buffer(&vpu_mem);
++ }
++
++ spin_lock(&vpu_lock);
++ list_for_each_entry_safe(rec, n, &head, list) {
++ if (rec->mem.cpu_addr == vpu_mem.cpu_addr) {
++ /* delete from list */
++ list_del(&rec->list);
++ kfree(rec);
++ break;
++ }
++ }
++ spin_unlock(&vpu_lock);
++
++ break;
++ }
++ case VPU_IOC_WAIT4INT:
++ {
++ u_long timeout = (u_long) arg;
++ if (!wait_event_interruptible_timeout
++ (vpu_queue, codec_done != 0,
++ msecs_to_jiffies(timeout))) {
++ printk(KERN_WARNING "VPU blocking: timeout.\n");
++ ret = -ETIME;
++ } else if (signal_pending(current)) {
++ printk(KERN_WARNING
++ "VPU interrupt received.\n");
++ ret = -ERESTARTSYS;
++ } else
++ codec_done = 0;
++ break;
++ }
++ case VPU_IOC_IRAM_SETTING:
++ {
++ ret = copy_to_user((void __user *)arg, &iram,
++ sizeof(struct iram_setting));
++ if (ret)
++ ret = -EFAULT;
++
++ break;
++ }
++ case VPU_IOC_CLKGATE_SETTING:
++ {
++ u32 clkgate_en;
++
++ if (get_user(clkgate_en, (u32 __user *) arg))
++ return -EFAULT;
++
++ if (clkgate_en) {
++ clk_enable(vpu_clk);
++ } else {
++ clk_disable(vpu_clk);
++ }
++
++ break;
++ }
++ case VPU_IOC_GET_SHARE_MEM:
++ {
++ spin_lock(&vpu_lock);
++ if (share_mem.cpu_addr != 0) {
++ ret = copy_to_user((void __user *)arg,
++ &share_mem,
++ sizeof(struct vpu_mem_desc));
++ spin_unlock(&vpu_lock);
++ break;
++ } else {
++ if (copy_from_user(&share_mem,
++ (struct vpu_mem_desc *)arg,
++ sizeof(struct vpu_mem_desc))) {
++ spin_unlock(&vpu_lock);
++ return -EFAULT;
++ }
++ if (vpu_alloc_dma_buffer(&share_mem) == -1)
++ ret = -EFAULT;
++ else {
++ if (copy_to_user((void __user *)arg,
++ &share_mem,
++ sizeof(struct
++ vpu_mem_desc)))
++ ret = -EFAULT;
++ }
++ }
++ spin_unlock(&vpu_lock);
++ break;
++ }
++ case VPU_IOC_REQ_VSHARE_MEM:
++ {
++ spin_lock(&vpu_lock);
++ if (vshare_mem.cpu_addr != 0) {
++ ret = copy_to_user((void __user *)arg,
++ &vshare_mem,
++ sizeof(struct vpu_mem_desc));
++ spin_unlock(&vpu_lock);
++ break;
++ } else {
++ if (copy_from_user(&vshare_mem,
++ (struct vpu_mem_desc *)arg,
++ sizeof(struct
++ vpu_mem_desc))) {
++ spin_unlock(&vpu_lock);
++ return -EFAULT;
++ }
++ /* vmalloc shared memory if not allocated */
++ if (!vshare_mem.cpu_addr)
++ vshare_mem.cpu_addr =
++ (unsigned long)
++ vmalloc_user(vshare_mem.size);
++ if (copy_to_user
++ ((void __user *)arg, &vshare_mem,
++ sizeof(struct vpu_mem_desc)))
++ ret = -EFAULT;
++ }
++ spin_unlock(&vpu_lock);
++ break;
++ }
++ case VPU_IOC_GET_WORK_ADDR:
++ {
++ if (bitwork_mem.cpu_addr != 0) {
++ ret =
++ copy_to_user((void __user *)arg,
++ &bitwork_mem,
++ sizeof(struct vpu_mem_desc));
++ break;
++ } else {
++ if (copy_from_user(&bitwork_mem,
++ (struct vpu_mem_desc *)arg,
++ sizeof(struct vpu_mem_desc)))
++ return -EFAULT;
++
++ if (vpu_alloc_dma_buffer(&bitwork_mem) == -1)
++ ret = -EFAULT;
++ else if (copy_to_user((void __user *)arg,
++ &bitwork_mem,
++ sizeof(struct
++ vpu_mem_desc)))
++ ret = -EFAULT;
++ }
++ break;
++ }
++ /*
++ * The following two ioctl is used when user allocates working buffer
++ * and register it to vpu driver.
++ */
++ case VPU_IOC_QUERY_BITWORK_MEM:
++ {
++ if (copy_to_user((void __user *)arg,
++ &bitwork_mem,
++ sizeof(struct vpu_mem_desc)))
++ ret = -EFAULT;
++ break;
++ }
++ case VPU_IOC_SET_BITWORK_MEM:
++ {
++ if (copy_from_user(&bitwork_mem,
++ (struct vpu_mem_desc *)arg,
++ sizeof(struct vpu_mem_desc)))
++ ret = -EFAULT;
++ break;
++ }
++ case VPU_IOC_SYS_SW_RESET:
++ {
++ if (vpu_plat->reset)
++ vpu_plat->reset();
++
++ break;
++ }
++ case VPU_IOC_REG_DUMP:
++ break;
++ case VPU_IOC_PHYMEM_DUMP:
++ break;
++ default:
++ {
++ printk(KERN_ERR "No such IOCTL, cmd is %d\n", cmd);
++ break;
++ }
++ }
++ return ret;
++}
++
++/*!
++ * @brief Release function for vpu file operation
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_release(struct inode *inode, struct file *filp)
++{
++ spin_lock(&vpu_lock);
++ if (open_count > 0 && !(--open_count)) {
++ vpu_free_buffers();
++
++ /* Free shared memory when vpu device is idle */
++ vpu_free_dma_buffer(&share_mem);
++ share_mem.cpu_addr = 0;
++ vfree((void *)vshare_mem.cpu_addr);
++ vshare_mem.cpu_addr = 0;
++ }
++ spin_unlock(&vpu_lock);
++
++ return 0;
++}
++
++/*!
++ * @brief fasync function for vpu file operation
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_fasync(int fd, struct file *filp, int mode)
++{
++ struct vpu_priv *dev = (struct vpu_priv *)filp->private_data;
++ return fasync_helper(fd, filp, mode, &dev->async_queue);
++}
++
++/*!
++ * @brief memory map function of harware registers for vpu file operation
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_map_hwregs(struct file *fp, struct vm_area_struct *vm)
++{
++ unsigned long pfn;
++
++ vm->vm_flags |= VM_IO | VM_RESERVED;
++ vm->vm_page_prot = pgprot_noncached(vm->vm_page_prot);
++ pfn = phy_vpu_base_addr >> PAGE_SHIFT;
++ pr_debug("size=0x%x, page no.=0x%x\n",
++ (int)(vm->vm_end - vm->vm_start), (int)pfn);
++ return remap_pfn_range(vm, vm->vm_start, pfn, vm->vm_end - vm->vm_start,
++ vm->vm_page_prot) ? -EAGAIN : 0;
++}
++
++/*!
++ * @brief memory map function of memory for vpu file operation
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_map_dma_mem(struct file *fp, struct vm_area_struct *vm)
++{
++ int request_size;
++ request_size = vm->vm_end - vm->vm_start;
++
++ pr_debug(" start=0x%x, pgoff=0x%x, size=0x%x\n",
++ (unsigned int)(vm->vm_start), (unsigned int)(vm->vm_pgoff),
++ request_size);
++
++ vm->vm_flags |= VM_IO | VM_RESERVED;
++ vm->vm_page_prot = pgprot_writecombine(vm->vm_page_prot);
++
++ return remap_pfn_range(vm, vm->vm_start, vm->vm_pgoff,
++ request_size, vm->vm_page_prot) ? -EAGAIN : 0;
++
++}
++
++/* !
++ * @brief memory map function of vmalloced share memory
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_map_vshare_mem(struct file *fp, struct vm_area_struct *vm)
++{
++ int ret = -EINVAL;
++
++ spin_lock(&vpu_lock);
++ ret = remap_vmalloc_range(vm, (void *)(vm->vm_pgoff << PAGE_SHIFT), 0);
++ vm->vm_flags |= VM_IO;
++ spin_unlock(&vpu_lock);
++
++ return ret;
++}
++/*!
++ * @brief memory map interface for vpu file operation
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_mmap(struct file *fp, struct vm_area_struct *vm)
++{
++ unsigned long offset;
++
++ offset = vshare_mem.cpu_addr >> PAGE_SHIFT;
++
++ if (vm->vm_pgoff && (vm->vm_pgoff == offset))
++ return vpu_map_vshare_mem(fp, vm);
++ else if (vm->vm_pgoff)
++ return vpu_map_dma_mem(fp, vm);
++ else
++ return vpu_map_hwregs(fp, vm);
++}
++
++struct file_operations vpu_fops = {
++ .owner = THIS_MODULE,
++ .open = vpu_open,
++ .unlocked_ioctl = vpu_ioctl,
++ .release = vpu_release,
++ .fasync = vpu_fasync,
++ .mmap = vpu_mmap,
++};
++
++/*!
++ * This function is called by the driver framework to initialize the vpu device.
++ * @param dev The device structure for the vpu passed in by the framework.
++ * @return 0 on success or negative error code on error
++ */
++static int vpu_dev_probe(struct platform_device *pdev)
++{
++ int err = 0;
++ struct device *temp_class;
++ struct resource *res;
++ unsigned long addr = 0;
++
++ vpu_plat = pdev->dev.platform_data;
++
++ if (vpu_plat && vpu_plat->iram_enable && vpu_plat->iram_size)
++ iram_alloc(vpu_plat->iram_size, &addr);
++ if (addr == 0)
++ iram.start = iram.end = 0;
++ else {
++ iram.start = addr;
++ iram.end = addr + vpu_plat->iram_size - 1;
++ }
++
++ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
++ if (!res) {
++ printk(KERN_ERR "vpu: unable to get vpu base addr\n");
++ return -ENODEV;
++ }
++ phy_vpu_base_addr = res->start;
++ vpu_base = ioremap(res->start, res->end - res->start);
++
++ vpu_major = register_chrdev(vpu_major, "mxc_vpu", &vpu_fops);
++ if (vpu_major < 0) {
++ printk(KERN_ERR "vpu: unable to get a major for VPU\n");
++ err = -EBUSY;
++ goto error;
++ }
++
++ vpu_class = class_create(THIS_MODULE, "mxc_vpu");
++ if (IS_ERR(vpu_class)) {
++ err = PTR_ERR(vpu_class);
++ goto err_out_chrdev;
++ }
++
++ temp_class = device_create(vpu_class, NULL, MKDEV(vpu_major, 0),
++ NULL, "mxc_vpu");
++ if (IS_ERR(temp_class)) {
++ err = PTR_ERR(temp_class);
++ goto err_out_class;
++ }
++
++ vpu_clk = clk_get(&pdev->dev, "vpu_clk");
++ if (IS_ERR(vpu_clk)) {
++ err = -ENOENT;
++ goto err_out_class;
++ }
++
++ res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
++ if (!res) {
++ printk(KERN_ERR "vpu: unable to get vpu interrupt\n");
++ err = -ENXIO;
++ goto err_out_class;
++ }
++ vpu_irq = res->start;
++
++ err = request_irq(vpu_irq, vpu_irq_handler, 0, "VPU_CODEC_IRQ",
++ (void *)(&vpu_data));
++ if (err)
++ goto err_out_class;
++
++ vpu_data.workqueue = create_workqueue("vpu_wq");
++ INIT_WORK(&vpu_data.work, vpu_worker_callback);
++ printk(KERN_INFO "VPU initialized\n");
++ goto out;
++
++ err_out_class:
++ device_destroy(vpu_class, MKDEV(vpu_major, 0));
++ class_destroy(vpu_class);
++ err_out_chrdev:
++ unregister_chrdev(vpu_major, "mxc_vpu");
++ error:
++ iounmap(vpu_base);
++ out:
++ return err;
++}
++
++static int vpu_dev_remove(struct platform_device *pdev)
++{
++ free_irq(vpu_irq, &vpu_data);
++ cancel_work_sync(&vpu_data.work);
++ flush_workqueue(vpu_data.workqueue);
++ destroy_workqueue(vpu_data.workqueue);
++
++ iounmap(vpu_base);
++ if (vpu_plat && vpu_plat->iram_enable && vpu_plat->iram_size)
++ iram_free(iram.start, vpu_plat->iram_size);
++
++ return 0;
++}
++
++#ifdef CONFIG_PM
++static int vpu_suspend(struct platform_device *pdev, pm_message_t state)
++{
++ int i;
++ unsigned long timeout;
++
++ /* Wait for vpu go to idle state, suspect vpu cannot be changed
++ to idle state after about 1 sec */
++ if (open_count > 0) {
++ timeout = jiffies + HZ;
++ clk_enable(vpu_clk);
++ while (READ_REG(BIT_BUSY_FLAG)) {
++ msleep(1);
++ if (time_after(jiffies, timeout))
++ goto out;
++ }
++ clk_disable(vpu_clk);
++ }
++
++ /* Make sure clock is disabled before suspend */
++ vpu_clk_usercount = clk_get_usecount(vpu_clk);
++ for (i = 0; i < vpu_clk_usercount; i++)
++ clk_disable(vpu_clk);
++
++ if (cpu_is_mx51()) {
++ clk_enable(vpu_clk);
++ if (bitwork_mem.cpu_addr != 0) {
++ SAVE_WORK_REGS;
++ SAVE_CTRL_REGS;
++ SAVE_RDWR_PTR_REGS;
++ SAVE_DIS_FLAG_REGS;
++
++ WRITE_REG(0x1, BIT_BUSY_FLAG);
++ WRITE_REG(VPU_SLEEP_REG_VALUE, BIT_RUN_COMMAND);
++ while (READ_REG(BIT_BUSY_FLAG))
++ ;
++ }
++ clk_disable(vpu_clk);
++
++ mxc_pg_enable(pdev);
++ }
++
++ return 0;
++
++out:
++ clk_disable(vpu_clk);
++ return -EAGAIN;
++
++}
++
++static int vpu_resume(struct platform_device *pdev)
++{
++ int i;
++
++ if (cpu_is_mx53())
++ goto recover_clk;
++
++ mxc_pg_disable(pdev);
++
++ clk_enable(vpu_clk);
++ if (bitwork_mem.cpu_addr != 0) {
++ u32 *p = (u32 *) bitwork_mem.cpu_addr;
++ u32 data;
++ u16 data_hi;
++ u16 data_lo;
++
++ RESTORE_WORK_REGS;
++
++ WRITE_REG(0x0, BIT_RESET_CTRL);
++ WRITE_REG(0x0, BIT_CODE_RUN);
++
++ /*
++ * Re-load boot code, from the codebuffer in external RAM.
++ * Thankfully, we only need 4096 bytes, same for all platforms.
++ */
++ for (i = 0; i < 2048; i += 4) {
++ data = p[(i / 2) + 1];
++ data_hi = (data >> 16) & 0xFFFF;
++ data_lo = data & 0xFFFF;
++ WRITE_REG((i << 16) | data_hi, BIT_CODE_DOWN);
++ WRITE_REG(((i + 1) << 16) | data_lo,
++ BIT_CODE_DOWN);
++
++ data = p[i / 2];
++ data_hi = (data >> 16) & 0xFFFF;
++ data_lo = data & 0xFFFF;
++ WRITE_REG(((i + 2) << 16) | data_hi,
++ BIT_CODE_DOWN);
++ WRITE_REG(((i + 3) << 16) | data_lo,
++ BIT_CODE_DOWN);
++ }
++
++ RESTORE_CTRL_REGS;
++
++ WRITE_REG(BITVAL_PIC_RUN, BIT_INT_ENABLE);
++
++ WRITE_REG(0x1, BIT_BUSY_FLAG);
++ WRITE_REG(0x1, BIT_CODE_RUN);
++ while (READ_REG(BIT_BUSY_FLAG))
++ ;
++
++ RESTORE_RDWR_PTR_REGS;
++ RESTORE_DIS_FLAG_REGS;
++
++ WRITE_REG(0x1, BIT_BUSY_FLAG);
++ WRITE_REG(VPU_WAKE_REG_VALUE, BIT_RUN_COMMAND);
++ while (READ_REG(BIT_BUSY_FLAG))
++ ;
++ }
++ clk_disable(vpu_clk);
++
++recover_clk:
++ /* Recover vpu clock */
++ for (i = 0; i < vpu_clk_usercount; i++)
++ clk_enable(vpu_clk);
++
++ return 0;
++}
++#else
++#define vpu_suspend NULL
++#define vpu_resume NULL
++#endif /* !CONFIG_PM */
++
++/*! Driver definition
++ *
++ */
++static struct platform_driver mxcvpu_driver = {
++ .driver = {
++ .name = "mxc_vpu",
++ },
++ .probe = vpu_dev_probe,
++ .remove = vpu_dev_remove,
++ .suspend = vpu_suspend,
++ .resume = vpu_resume,
++};
++
++static int __init vpu_init(void)
++{
++ int ret = platform_driver_register(&mxcvpu_driver);
++
++ init_waitqueue_head(&vpu_queue);
++
++ return ret;
++}
++
++static void __exit vpu_exit(void)
++{
++ if (vpu_major > 0) {
++ device_destroy(vpu_class,...
[truncated message content] |
|
From: jorasse <jo...@us...> - 2012-03-15 14:26:04
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 45a0645d3fc32439f5467dd29586f039beeef4fa (commit)
from 36c79fd3b7b2b7a8b5d72f0e41b3b8e62d32f930 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 45a0645d3fc32439f5467dd29586f039beeef4fa
Author: Eric Jarrige <eri...@ar...>
Date: Thu Mar 15 15:25:26 2012 +0100
[BUILDROOT] fix uboot cleaning option
-----------------------------------------------------------------------
Summary of changes:
.../178-uboot-add-missing-UBOOT_CLEAN_CMDS.patch | 29 ++++++++++++++++++++
1 files changed, 29 insertions(+), 0 deletions(-)
create mode 100644 patches/buildroot/2012.02/178-uboot-add-missing-UBOOT_CLEAN_CMDS.patch
diff --git a/patches/buildroot/2012.02/178-uboot-add-missing-UBOOT_CLEAN_CMDS.patch b/patches/buildroot/2012.02/178-uboot-add-missing-UBOOT_CLEAN_CMDS.patch
new file mode 100644
index 0000000..afe7f82
--- /dev/null
+++ b/patches/buildroot/2012.02/178-uboot-add-missing-UBOOT_CLEAN_CMDS.patch
@@ -0,0 +1,29 @@
+uboot: add missing UBOOT_CLEAN_CMDS
+
+Signed-off-by: Eric Jarrige <eri...@ar...>
+---
+ boot/uboot/uboot.mk | 8 ++++++++
+ 1 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
+index db9de8d..0a0f762 100644
+--- a/boot/uboot/uboot.mk
++++ b/boot/uboot/uboot.mk
+@@ -90,6 +90,14 @@ define UBOOT_INSTALL_IMAGES_CMDS
+ cp -dpf $(@D)/$(UBOOT_BIN) $(BINARIES_DIR)/
+ endef
+
++define UBOOT_CLEAN_CMDS
++ $(TARGET_CONFIGURE_OPTS) $(UBOOT_CONFIGURE_OPTS) \
++ $(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) \
++ clean
++ rm -f $(@D)/$(UBOOT_BIN)
++
++endef
++
+ $(eval $(call GENTARGETS))
+
+ ifeq ($(BR2_TARGET_UBOOT),y)
+--
+1.7.0.4
+
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-15 11:30:57
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 36c79fd3b7b2b7a8b5d72f0e41b3b8e62d32f930 (commit)
from a0c9ab8569ac894c9d23f522081c9077c7cd5bb7 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 36c79fd3b7b2b7a8b5d72f0e41b3b8e62d32f930
Author: Eric Jarrige <eri...@ar...>
Date: Thu Mar 15 12:30:01 2012 +0100
[BUILDROOT] restore java packages into BR2012.02
-----------------------------------------------------------------------
Summary of changes:
...177-restore-java-packages-classpath-jamvm.patch | 1808 ++++++++++++++++++++
patches/buildroot/2012.02/cleanup_buildroot.sh | 1 +
2 files changed, 1809 insertions(+), 0 deletions(-)
create mode 100644 patches/buildroot/2012.02/177-restore-java-packages-classpath-jamvm.patch
diff --git a/patches/buildroot/2012.02/177-restore-java-packages-classpath-jamvm.patch b/patches/buildroot/2012.02/177-restore-java-packages-classpath-jamvm.patch
new file mode 100644
index 0000000..b9c8b50
--- /dev/null
+++ b/patches/buildroot/2012.02/177-restore-java-packages-classpath-jamvm.patch
@@ -0,0 +1,1808 @@
+This patch restores java packages (Classpath, Jamvm..) in Buildroot
+
+Signed-off-by: Eric Jarrige <eri...@ar...>
+---
+diff -purN buildroot.ori/package/Config.in buildroot/package/Config.in
+--- buildroot.ori/package/Config.in 2012-03-14 00:52:45.305734000 +0100
++++ buildroot/package/Config.in 2012-03-15 11:25:59.822589751 +0100
+@@ -253,6 +253,7 @@ endmenu
+
+ menu "Interpreter languages and scripting"
+ source "package/haserl/Config.in"
++source "package/java/jamvm/Config.in"
+ source "package/lua/Config.in"
+ if BR2_PACKAGE_LUA
+ menu "LUA libraries/modules"
+@@ -362,6 +363,11 @@ source "package/libusb-compat/Config.in"
+ source "package/libv4l/Config.in"
+ endmenu
+
++menu "Java"
++source "package/java/classpath/Config.in"
++source "package/java/concierge/Config.in"
++endmenu
++
+ menu "Javascript"
+ source "package/explorercanvas/Config.in"
+ source "package/flot/Config.in"
+diff -purN buildroot.ori/package/java/classpath/classpath.mk buildroot/package/java/classpath/classpath.mk
+--- buildroot.ori/package/java/classpath/classpath.mk 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/classpath/classpath.mk 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,86 @@
++#############################################################
++#
++# classpath 0.96.1
++#
++#############################################################
++CLASSPATH_VERSION = 0.98
++CLASSPATH_SOURCE = classpath-$(CLASSPATH_VERSION).tar.gz
++CLASSPATH_SITE = $(BR2_GNU_MIRROR)/classpath
++CLASSPATH_AUTORECONF = NO
++CLASSPATH_INSTALL_STAGING = YES
++CLASSPATH_INSTALL_TARGET = YES
++CLASSPATH_DIR_PREFIX = package/java
++
++CLASSPATH_CONF_ENV = ac_cv_func_posix_getpwuid_r=yes glib_cv_stack_grows=no \
++ glib_cv_uscore=no ac_cv_func_strtod=yes \
++ ac_fsusage_space=yes fu_cv_sys_stat_statfs2_bsize=yes \
++ ac_cv_func_closedir_void=no ac_cv_func_getloadavg=no \
++ ac_cv_lib_util_getloadavg=no ac_cv_lib_getloadavg_getloadavg=no \
++ ac_cv_func_getgroups=yes ac_cv_func_getgroups_works=yes \
++ ac_cv_func_chown_works=yes ac_cv_have_decl_euidaccess=no \
++ ac_cv_func_euidaccess=no ac_cv_have_decl_strnlen=yes \
++ ac_cv_func_strnlen_working=yes ac_cv_func_lstat_dereferences_slashed_symlink=yes \
++ ac_cv_func_lstat_empty_string_bug=no ac_cv_func_stat_empty_string_bug=no \
++ vb_cv_func_rename_trailing_slash_bug=no ac_cv_have_decl_nanosleep=yes \
++ jm_cv_func_nanosleep_works=yes gl_cv_func_working_utimes=yes \
++ ac_cv_func_utime_null=yes ac_cv_have_decl_strerror_r=yes \
++ ac_cv_func_strerror_r_char_p=no jm_cv_func_svid_putenv=yes \
++ ac_cv_func_getcwd_null=yes ac_cv_func_getdelim=yes \
++ ac_cv_func_mkstemp=yes utils_cv_func_mkstemp_limitations=no \
++ utils_cv_func_mkdir_trailing_slash_bug=no \
++ jm_cv_func_gettimeofday_clobber=no \
++ gl_cv_func_working_readdir=yes jm_ac_cv_func_link_follows_symlink=no \
++ utils_cv_localtime_cache=no ac_cv_struct_st_mtim_nsec=no \
++ gl_cv_func_tzset_clobber=no gl_cv_func_getcwd_null=yes \
++ gl_cv_func_getcwd_path_max=yes ac_cv_func_fnmatch_gnu=yes \
++ am_getline_needs_run_time_check=no am_cv_func_working_getline=yes \
++ gl_cv_func_mkdir_trailing_slash_bug=no gl_cv_func_mkstemp_limitations=no \
++ ac_cv_func_working_mktime=yes jm_cv_func_working_re_compile_pattern=yes \
++ ac_use_included_regex=no gl_cv_c_restrict=no \
++ ac_cv_path_GLIB_GENMARSHAL=$(LIBGLIB2_HOST_BINARY) \
++ ac_cv_prog_F77=no ac_cv_prog_CXX=no ac_cv_path_CUPS_CONFIG=no
++
++
++CLASSPATH_CONF_OPT = \
++ --libexecdir=/usr/lib --localstatedir=/var --mandir=/usr/man \
++ --infodir=/usr/info \
++ --disable-glibtest --enable-explicit-deps=no \
++ --disable-debug \
++ --disable-gconf-peer --disable-examples --disable-plugin \
++ --disable-Werror
++
++CLASSPATH_DEPENDENCIES = host-pkg-config libpng jpeg
++
++ifeq ($(BR2_PACKAGE_ALSA_LIB),y)
++ CLASSPATH_DEPENDENCIES+= alsa-lib
++ CLASSPATH_CONF_OPT+= --enable-alsa
++else
++ CLASSPATH_CONF_OPT+= --disable-alsa
++endif
++
++ifeq ($(BR2_PACKAGE_QT),y)
++ CLASSPATH_DEPENDENCIES+= qt
++ CLASSPATH_CONF_OPT+= --enable-qt-peer
++else
++ CLASSPATH_CONF_OPT+= --disable-qt-peer
++endif
++
++ifeq ($(BR2_PACKAGE_LIBGTK2),y)
++ CLASSPATH_DEPENDENCIES+= libgtk2
++ CLASSPATH_CONF_OPT+= --enable-gtk-peer
++else
++ CLASSPATH_CONF_OPT+= --disable-gtk-peer
++endif
++
++ifeq ($(BR2_PACKAGE_XORG7),y)
++ CLASSPATH_DEPENDENCIES+= xserver_xorg-server
++ CLASSPATH_CONF_OPT+= --with-x \
++ --x-includes=$(STAGING_DIR)/usr/include/X11 \
++ --x-libraries=$(STAGING_DIR)/usr/lib
++else
++ CLASSPATH_CONF_OPT+= --without-x
++endif
++
++
++
++$(eval $(call AUTOTARGETS))
+diff -purN buildroot.ori/package/java/classpath/Config.in buildroot/package/java/classpath/Config.in
+--- buildroot.ori/package/java/classpath/Config.in 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/classpath/Config.in 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,9 @@
++config BR2_PACKAGE_CLASSPATH
++ bool "classpath"
++ help
++ GNU Classpath, Essential Libraries for Java, is a GNU
++ project to create free core class libraries for use with
++ virtual machines and compilers for the java programming
++ language.
++
++ http://www.classpath.org/
+diff -purN buildroot.ori/package/java/concierge/concierge.mk buildroot/package/java/concierge/concierge.mk
+--- buildroot.ori/package/java/concierge/concierge.mk 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/concierge/concierge.mk 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,40 @@
++#############################################################
++#
++# concierge 1.0-RC2
++#
++#############################################################
++CONCIERGE_VERSION = 1.0_RC2
++CONCIERGE_SOURCE = concierge-$(CONCIERGE_VERSION).jar
++CONCIERGE_SITE = http://ovh.dl.sourceforge.net/sourceforge/concierge/
++CONCIERGE_DIR=$(BUILD_DIR)/concierge-$(CONCIERGE_VERSION)
++CONCIERGE_SITE_BUNDLES = http://concierge.sourceforge.net/bundles/
++
++$(DL_DIR)/concierge:
++ mkdir -p $(DL_DIR)/concierge/
++ $(call DOWNLOAD,$(CONCIERGE_SITE),concierge-$(CONCIERGE_VERSION).jar)
++ $(call DOWNLOAD,$(CONCIERGE_SITE_BUNDLES)shell-1.0.0.RC2.jar)
++ $(call DOWNLOAD,$(CONCIERGE_SITE_BUNDLES)service-tracker-1.0.0.RC2.jar)
++ $(call DOWNLOAD,$(CONCIERGE_SITE_BUNDLES)event-admin-1.0.0.RC2.jar)
++
++$(TARGET_DIR)/usr/lib/concierge/: $(DL_DIR)/concierge
++ mkdir -p $(TARGET_DIR)/usr/lib
++ mkdir -p $(TARGET_DIR)/usr/lib/concierge
++ cp -dpf $(DL_DIR)/concierge/* $(TARGET_DIR)/usr/lib/concierge/
++ cp -dpf package/java/concierge/files/init.xargs $(TARGET_DIR)/usr/lib/concierge/
++ touch -c $@
++
++$(TARGET_DIR)/usr/bin/concierge:
++ cp -dpf package/java/concierge/files/concierge $(TARGET_DIR)/usr/bin/
++ chmod +x $(TARGET_DIR)/usr/bin/concierge
++ touch -c $@
++
++concierge: $(TARGET_DIR)/usr/lib/concierge $(TARGET_DIR)/usr/bin/concierge
++
++#############################################################
++#
++# Toplevel Makefile options
++#
++#############################################################
++ifeq ($(BR2_PACKAGE_CONCIERGE),y)
++TARGETS+=concierge
++endif
+diff -purN buildroot.ori/package/java/concierge/Config.in buildroot/package/java/concierge/Config.in
+--- buildroot.ori/package/java/concierge/Config.in 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/concierge/Config.in 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,10 @@
++config BR2_PACKAGE_CONCIERGE
++ bool "concierge"
++ depends on BR2_PACKAGE_JAMVM
++
++ help
++ Concierge is an optimized OSGi R3 framework implementations
++ with a file footprint of about 80 kBytes. This makes it
++ ideal for mobile or embedded devices.
++
++ http://concierge.sourceforge.net/
+diff -purN buildroot.ori/package/java/concierge/files/concierge buildroot/package/java/concierge/files/concierge
+--- buildroot.ori/package/java/concierge/files/concierge 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/concierge/files/concierge 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,2 @@
++#!/bin/sh
++/usr/bin/jamvm -jar /usr/lib/concierge/concierge-1.0_RC2.jar
+diff -purN buildroot.ori/package/java/concierge/files/init.xargs buildroot/package/java/concierge/files/init.xargs
+--- buildroot.ori/package/java/concierge/files/init.xargs 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/concierge/files/init.xargs 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,10 @@
++-init
++-all
++-Dch.ethz.iks.concierge.debug=true
++-Dch.ethz.iks.concierge.log.enabled=true
++-Dch.ethz.iks.concierge.log.level=4
++
++
++#-istart shell-1.0.0.RC2.jar
++#-istart service-tracker-1.0.0.RC2.jar
++#-istart event-admin-1.0.0.RC2.jar
+diff -purN buildroot.ori/package/java/Config.in buildroot/package/java/Config.in
+--- buildroot.ori/package/java/Config.in 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/Config.in 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,5 @@
++menu "Java"
++source "package/java/classpath/Config.in"
++source "package/java/jamvm/Config.in"
++source "package/java/concierge/Config.in"
++endmenu
+diff -purN buildroot.ori/package/java/jamvm/Config.in buildroot/package/java/jamvm/Config.in
+--- buildroot.ori/package/java/jamvm/Config.in 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/jamvm/Config.in 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,8 @@
++config BR2_PACKAGE_JAMVM
++ bool "jamvm"
++ depends on BR2_PACKAGE_CLASSPATH
++ help
++ JamVM is a new Java Virtual Machine which conforms to
++ the JVM specification version 2 (blue book).
++
++ http://jamvm.sourceforge.net/
+diff -purN buildroot.ori/package/java/jamvm/jamvm-1.5.0.patch.avr32 buildroot/package/java/jamvm/jamvm-1.5.0.patch.avr32
+--- buildroot.ori/package/java/jamvm/jamvm-1.5.0.patch.avr32 1970-01-01 01:00:00.000000000 +0100
++++ buildroot/package/java/jamvm/jamvm-1.5.0.patch.avr32 2012-03-15 10:57:23.030243000 +0100
+@@ -0,0 +1,1473 @@
++diff -urpN jamvm-1.5.0/configure jamvm-1.5.0-avr32/configure
++--- jamvm-1.5.0/configure 2007-10-29 06:37:06.000000000 +0100
+++++ jamvm-1.5.0-avr32/configure 2008-02-08 09:20:37.000000000 +0100
++@@ -2550,6 +2550,7 @@ i386-*-openbsd*) host_os=bsd libdl_neede
++ i386-*-freebsd*) host_os=bsd libdl_needed=no ;;
++ x86_64-*-linux*) host_os=linux ;;
++ hppa*-*-linux*) host_cpu=parisc host_os=linux ;;
+++avr32*-*-linux*) host_cpu=avr32 host_os=linux ;;
++ mipsel-*-linux*) host_cpu=mips host_os=linux ;;
++ amd64-*-openbsd*) host_os=bsd libdl_needed=no ;;
++ amd64-*-freebsd*) host_os=bsd libdl_needed=no ;;
++@@ -22839,7 +22840,7 @@ fi
++ ac_config_links="$ac_config_links src/arch.h:src/arch/$arch.h"
++
++
++-ac_config_files="$ac_config_files Makefile src/Makefile src/interp/Makefile src/interp/engine/Makefile src/arch/Makefile src/os/Makefile src/os/linux/Makefile src/os/darwin/Makefile src/os/bsd/Makefile src/os/linux/powerpc/Makefile src/os/linux/arm/Makefile src/os/linux/i386/Makefile src/os/linux/x86_64/Makefile src/os/linux/parisc/Makefile src/os/linux/mips/Makefile src/os/darwin/i386/Makefile src/os/darwin/powerpc/Makefile src/os/bsd/powerpc/Makefile src/os/bsd/arm/Makefile src/os/bsd/i386/Makefile src/os/bsd/x86_64/Makefile lib/Makefile lib/java/Makefile lib/java/lang/Makefile lib/jamvm/Makefile lib/jamvm/java/Makefile lib/jamvm/java/lang/Makefile lib/java/lang/reflect/Makefile lib/java/security/Makefile lib/gnu/Makefile lib/sun/reflect/annotation/Makefile lib/sun/reflect//Makefile lib/sun/Makefile lib/gnu/classpath/Makefile"
+++ac_config_files="$ac_config_files Makefile src/Makefile src/interp/Makefile src/interp/engine/Makefile src/arch/Makefile src/os/Makefile src/os/linux/Makefile src/os/darwin/Makefile src/os/bsd/Makefile src/os/linux/powerpc/Makefile src/os/linux/arm/Makefile src/os/linux/i386/Makefile src/os/linux/x86_64/Makefile src/os/linux/avr32/Makefile src/os/linux/parisc/Makefile src/os/linux/mips/Makefile src/os/darwin/i386/Makefile src/os/darwin/powerpc/Makefile src/os/bsd/powerpc/Makefile src/os/bsd/arm/Makefile src/os/bsd/i386/Makefile src/os/bsd/x86_64/Makefile lib/Makefile lib/java/Makefile lib/java/lang/Makefile lib/jamvm/Makefile lib/jamvm/java/Makefile lib/jamvm/java/lang/Makefile lib/java/lang/reflect/Makefile lib/java/security/Makefile lib/gnu/Makefile lib/sun/reflect/annotation/Makefile lib/sun/reflect//Makefile lib/sun/Makefile lib/gnu/classpath/Makefile"
++
++
++ cat >confcache <<\_ACEOF
++@@ -23475,6 +23476,7 @@ do
++ "src/os/linux/i386/Makefile") CONFIG_FILES="$CONFIG_FILES src/os/linux/i386/Makefile" ;;
++ "src/os/linux/x86_64/Makefile") CONFIG_FILES="$CONFIG_FILES src/os/linux/x86_64/Makefile" ;;
++ "src/os/linux/parisc/Makefile") CONFIG_FILES="$CONFIG_FILES src/os/linux/parisc/Makefile" ;;
+++ "src/os/linux/avr32/Makefile") CONFIG_FILES="$CONFIG_FILES src/os/linux/avr32/Makefile" ;;
++ "src/os/linux/mips/Makefile") CONFIG_FILES="$CONFIG_FILES src/os/linux/mips/Makefile" ;;
++ "src/os/darwin/i386/Makefile") CONFIG_FILES="$CONFIG_FILES src/os/darwin/i386/Makefile" ;;
++ "src/os/darwin/powerpc/Makefile") CONFIG_FILES="$CONFIG_FILES src/os/darwin/powerpc/Makefile" ;;
++diff -urpN jamvm-1.5.0/src/alloc.c jamvm-1.5.0-avr32/src/alloc.c
++--- jamvm-1.5.0/src/alloc.c 2007-10-22 01:24:22.000000000 +0200
+++++ jamvm-1.5.0-avr32/src/alloc.c 2008-02-08 09:20:38.000000000 +0100
++@@ -274,6 +274,11 @@ void initialiseAlloc(InitArgs *args) {
++ #else
++ char *mem = (char*)mmap(0, args->max_heap, PROT_READ|PROT_WRITE,
++ MAP_PRIVATE|MAP_ANON, -1, 0);
+++// char *mem = (char*)mmap(0, 8196, PROT_READ|PROT_WRITE,
+++// MAP_PRIVATE|MAP_ANON, -1, 0);
+++//TODO: lto
+++//jam_printf("trying to mmap max:%lo min:%lo heap\n",args->max_heap , args->max_heap);
+++//jam_printf("mem: %d %d\n",mem,MAP_FAILED);
++ if(mem == MAP_FAILED) {
++ #endif
++ perror("Aborting the VM -- couldn't allocate the heap");
++@@ -2214,7 +2219,7 @@ void *sysMalloc(int size) {
++ int n = size < sizeof(void*) ? sizeof(void*) : size;
++ void *mem = malloc(n);
++
++- if(mem == NULL) {
+++ if(mem == NULL && n != 0) {
++ jam_fprintf(stderr, "Malloc failed - aborting VM...\n");
++ exitVM(1);
++ }
++diff -urpN jamvm-1.5.0/src/arch/avr32.h jamvm-1.5.0-avr32/src/arch/avr32.h
++--- jamvm-1.5.0/src/arch/avr32.h 1970-01-01 01:00:00.000000000 +0100
+++++ jamvm-1.5.0-avr32/src/arch/avr32.h 2008-02-08 09:20:41.000000000 +0100
++@@ -0,0 +1,109 @@
+++/*
+++ * Copyright (C) 2003, 2004, 2005, 2006, 2007
+++ * Robert Lougher <ro...@lo...>.
+++ *
+++ * This file is part of JamVM.
+++ *
+++ * 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,
+++ * 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+++ */
+++
+++#define OS_ARCH "avr32"
+++//#ifndef DEBUG
+++//#define DEBUG
+++//#endif
+++
+++/* Override default min and max heap sizes. AVR32 machines are
+++ usually embedded, and the standard defaults are too large. */
+++#define DEFAULT_MAX_HEAP 8*MB
+++#define DEFAULT_MIN_HEAP 1*MB
+++
+++#define HANDLER_TABLE_T static const void
+++#define DOUBLE_1_BITS 0x3ff0000000000000LL
+++
+++#define READ_DBL(v,p,l) v = ((u8)p[0]<<56)|((u8)p[1]<<48)|((u8)p[2]<<40) \
+++ |((u8)p[3]<<32)|((u8)p[4]<<24)|((u8)p[5]<<16) \
+++ |((u8)p[6]<<8)|(u8)p[7]; p+=8
+++
+++//extern void setDoublePrecision();
+++#define FPU_HACK
+++
+++//#define COMPARE_AND_SWAP(addr, old_val, new_val) ({char result;result;})
+++//static inline unsigned long __cmpxchg_u32(volatile int *m, unsigned int old,
+++// unsigned int new)
+++//{
+++// int ret;
+++// //printf("compare and swap %d %d %s:line%d\n",old,new,__FILE__,__LINE__);
+++// asm volatile(
+++// "1: ssrf 5\n"
+++// " ld.w %[ret], %[m]\n"
+++// " cp.w %[ret], %[old]\n"
+++// " brne 2f\n"
+++// " stcond %[m], %[new]\n"
+++// " brne 1b\n"
+++// "2:\n"
+++// : [ret] "=&r"(ret), [m] "=m"(*m)
+++// : "m"(*m), [new] "r"(new), [old] "r"(old)
+++// : "memory", "cc");
+++// return ret;
+++//}
+++
+++//see C:\Cygwin\usr\local\avr32-linux\include\bits\atomicity.h
+++//see http://www.avr32linux.org/twiki/bin/view/Main/AtomicOperations
+++//see http://www.mail-archive.com/uc...@uc.../msg00914.html
+++//http://www.avr32linux.org/twiki/pub/Main/MicroClibcPatches/uClibc-0.9.28-avr32-20060621.patch
+++//http://www.google.com/codesearch?hl=en&q=+cmpxchg+avr32+show:WwwDfOAAdbA:L2BlPHy6h_g:nY7RakaTOnE&sa=N&cd=1&ct=rc&cs_p=http://gobo.calica.com/packages/official/Linux--2.6.20.4-r1--i686.tar.bz2&cs_f=Linux/2.6.20.4/Resources/Unmanaged/Files/Compile/Sources/linux-2.6.20.4/include/asm-avr32/system.h#first
+++//#define COMPARE_AND_SWAP(p, oldval, newval)({ \
+++// printf("compare and swap %d %d %s:line%d\n",oldval,newval,__FILE__,__LINE__); \
+++// __cmpxchg_u32(p,oldval,newval);\
+++//})
+++
+++// printf("compare and swap %d %d %s:line %d\n",old_val,new_val,__FILE__,__LINE__);
+++#define COMPARE_AND_SWAP(addr, old_val, new_val) \
+++({ \
+++ int result; \
+++ __asm__ __volatile__ (" \
+++ 1: ssrf 5; \
+++ ld.w %[ret], %[m]; \
+++ cp.w %[ret], %[old]; \
+++ brne 2f; \
+++ stcond %[m], %[new]; \
+++ brne 1b; \
+++ 2:" \
+++ : [ret] "=&r" (result), [m] "=m" (*addr) \
+++ : "m" (*addr), [old] "r" (old_val), [new] "r" (new_val) \
+++ : "memory", "cc"); \
+++ result; \
+++})
+++
+++//ssrf 5 :set lock bit
+++//stcond :store param2 when lock is set
+++//sreq :If equal set register to true or false
+++//brne :Branch when not equal
+++//brne 1b :When the lock wasn't set anymore, try again
+++//label 1b 2f :first label named 1/2 before/after
+++#define FLUSH_CACHE(addr, length)
+++
+++#define LOCKWORD_READ(addr) *addr
+++#define LOCKWORD_WRITE(addr, value) *addr = value
+++#define LOCKWORD_COMPARE_AND_SWAP(addr, old_val, new_val) \
+++ COMPARE_AND_SWAP(addr, old_val, new_val)
+++
+++#define UNLOCK_MBARRIER() __asm__ __volatile__ ("" ::: "memory")
+++#define JMM_LOCK_MBARRIER() __asm__ __volatile__ ("" ::: "memory")
+++#define JMM_UNLOCK_MBARRIER() __asm__ __volatile__ ("" ::: "memory")
+++
+++//TODO: lto
+++#define MBARRIER() __asm__ __volatile__ ("" ::: "memory")
+++//#define MBARRIER() __asm__ __volatile__ ("lock; addl $0,0(%%esp)" ::: "memory")
++diff -urpN jamvm-1.5.0/src/arch/Makefile.am jamvm-1.5.0-avr32/src/arch/Makefile.am
++--- jamvm-1.5.0/src/arch/Makefile.am 2007-10-28 00:19:26.000000000 +0200
+++++ jamvm-1.5.0-avr32/src/arch/Makefile.am 2008-02-08 09:20:41.000000000 +0100
++@@ -19,4 +19,4 @@
++ ## Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ ##
++
++-EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h
+++EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h avr32.h
++diff -urpN jamvm-1.5.0/src/arch/Makefile.in jamvm-1.5.0-avr32/src/arch/Makefile.in
++--- jamvm-1.5.0/src/arch/Makefile.in 2007-10-29 07:02:36.000000000 +0100
+++++ jamvm-1.5.0-avr32/src/arch/Makefile.in 2008-02-08 09:20:41.000000000 +0100
++@@ -162,7 +162,7 @@ top_srcdir = @top_srcdir@
++ use_zip_no = @use_zip_no@
++ use_zip_yes = @use_zip_yes@
++ with_classpath_install_dir = @with_classpath_install_dir@
++-EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h
+++EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h avr32.h
++ all: all-am
++
++ .SUFFIXES:
++diff -urpN jamvm-1.5.0/src/class.c jamvm-1.5.0-avr32/src/class.c
++--- jamvm-1.5.0/src/class.c 2007-10-29 05:45:32.000000000 +0100
+++++ jamvm-1.5.0-avr32/src/class.c 2008-02-08 09:20:37.000000000 +0100
++@@ -40,6 +40,8 @@
++ #define SCAVENGE(ptr) FALSE
++ #define FOUND(ptr) ptr
++
+++#define TRACE(fmt, ...) jam_printf(fmt, ## __VA_ARGS__)
+++
++ static int verbose;
++ static char *bootpath;
++ static char *classpath;
++@@ -1273,6 +1275,9 @@ Class *findSystemClass0(char *classname)
++ }
++
++ Class *findSystemClass(char *classname) {
+++#ifdef DEBUG
+++ TRACE(">>>>>>finding class: %s\n", classname);
+++#endif
++ Class *class = findSystemClass0(classname);
++
++ if(!exceptionOccurred())
++@@ -1383,18 +1388,32 @@ Class *findClassFromClassLoader(char *cl
++ }
++
++ Object *getSystemClassLoader() {
+++#ifdef DEBUG
+++ printf("%s: %d: trying to find ClassLoader\n",__FILE__,__LINE__);
+++#endif
++ Class *class_loader = findSystemClass("java/lang/ClassLoader");
++
++ if(!exceptionOccurred()) {
+++#ifdef DEBUG
+++ printf("%s: %d: found ClassLoader\n",__FILE__,__LINE__);
+++#endif
++ MethodBlock *mb;
++
++ if((mb = findMethod(class_loader, "getSystemClassLoader",
++ "()Ljava/lang/ClassLoader;")) != NULL) {
+++#ifdef DEBUG
+++ printf("%s: %d: executing static SystemClassLoader",__FILE__,__LINE__);
+++#endif
+++
++ Object *system_loader = *(Object**)executeStaticMethod(class_loader, mb);
++
++ if(!exceptionOccurred())
++ return system_loader;
++ }
+++#ifdef DEBUG
+++ }else{
+++ printf("%s: %d: found ClassLoader WITH EXCEPTION\n",__FILE__,__LINE__);
+++#endif
++ }
++ return NULL;
++ }
++diff -urpN jamvm-1.5.0/src/interp/direct.c jamvm-1.5.0-avr32/src/interp/direct.c
++--- jamvm-1.5.0/src/interp/direct.c 2007-10-26 05:10:47.000000000 +0200
+++++ jamvm-1.5.0-avr32/src/interp/direct.c 2008-02-08 09:20:40.000000000 +0100
++@@ -31,7 +31,7 @@
++ #include "interp.h"
++
++ #ifdef TRACEDIRECT
++-#define TRACE(fmt, ...) jam_printf(fmt, ## __VA_ARGS__)
+++#define TRACE(fmt, ...) printf(fmt, ## __VA_ARGS__)
++ #else
++ #define TRACE(fmt, ...)
++ #endif
++Binary files jamvm-1.5.0/src/interp/engine/compute_relocatability and jamvm-1.5.0-avr32/src/interp/engine/compute_relocatability differ
++diff -urpN jamvm-1.5.0/src/os/linux/avr32/dll_md.c jamvm-1.5.0-avr32/src/os/linux/avr32/dll_md.c
++--- jamvm-1.5.0/src/os/linux/avr32/dll_md.c 1970-01-01 01:00:00.000000000 +0100
+++++ jamvm-1.5.0-avr32/src/os/linux/avr32/dll_md.c 2008-02-08 09:20:38.000000000 +0100
++@@ -0,0 +1,669 @@
+++/*
+++ * Copyright (C) 2003, 2004, 2005, 2006, 2007
+++ * Robert Lougher <ro...@lo...>.
+++ *
+++ * This file is part of JamVM.
+++ *
+++ * 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,
+++ * 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+++ */
+++
+++#include "../../../jam.h"
+++
+++#ifndef USE_FFI
+++#include <string.h>
+++#include "../../../sig.h"
+++
+++#define RET_VOID 0
+++#define RET_DOUBLE 1
+++#define RET_LONG 2
+++#define RET_FLOAT 3
+++#define RET_DFLT 4
+++
+++int nativeExtraArg(MethodBlock *mb) {
+++ //printf("!!!!!!!!!!nativeExtraArg (name=%s) (type=%s)!!!!!!!\n",mb->name,mb->type);
+++ int len = strlen(mb->type);
+++ if(mb->type[len-2] == ')')
+++ switch(mb->type[len-1]) {
+++ case 'V':
+++ return RET_VOID;
+++ case 'D':
+++ return RET_DOUBLE;
+++ case 'J':
+++ return RET_LONG;
+++ case 'F':
+++ return RET_FLOAT;
+++ }
+++
+++ return RET_DFLT;
+++}
+++
+++//calls the f function pointer and takes care of the return type
+++#define perform_f(label,...) \
+++ switch(ret_type) { \
+++ case RET_VOID: \
+++ (*(void (*)())f)(__VA_ARGS__); \
+++ goto label; \
+++ case RET_DOUBLE: \
+++ *(double*)ostack = (*(double (*)())f)(__VA_ARGS__); \
+++ ostack += 2; \
+++ goto label; \
+++ case RET_LONG: \
+++ *(long long*)ostack = (*(long long (*)())f)(__VA_ARGS__); \
+++ ostack += 2; \
+++ goto label; \
+++ case RET_FLOAT: \
+++ *(float*)ostack = (*(float (*)())f)(__VA_ARGS__); \
+++ ostack++; \
+++ goto label; \
+++ default: \
+++ *ostack++ = (*(u4 (*)())f)(__VA_ARGS__); \
+++ goto label; \
+++ }
+++
+++#define write_ops_to_stack(x) \
+++ /*write x operands to the stack */ \
+++ int i; \
+++ for(i=0; i < x; i++){ \
+++ __asm__ __volatile__( \
+++ "ld.w r11,%0 \n\t" \
+++ "st.w --sp,r11 " \
+++ :: "m"(*--opntr) \
+++ :"sp","r11"); \
+++ }
+++
+++u4 *callJNIMethod(void *env, Class *class, char *sig, int ret_type, u4 *ostack, unsigned char *f, int args) {
+++ u4 *opntr = ostack + args;
+++ int nrofopsonstack = 0;
+++ if(class && args > 3){
+++ nrofopsonstack = args - 3;
+++ }else if(class){
+++ nrofopsonstack = 0;
+++ }else if(args > 4){
+++ nrofopsonstack = args -4;
+++ }else{
+++ nrofopsonstack = 0;
+++ }
+++
+++ if(args == 0){
+++ if(class){
+++ perform_f(done,env,class);
+++ }else{
+++ perform_f(done,env);
+++ }
+++ }else if(args == 1){
+++ if(class){
+++ perform_f(done,env,class,*--opntr);
+++ }else{
+++ perform_f(done,env,*--opntr);
+++ }
+++ }else if(args == 2){
+++ if(class){
+++ perform_f(done,env,class,*--opntr,*--opntr);
+++ }else{
+++ perform_f(done,env,*--opntr,*--opntr);
+++ }
+++ }else if(args == 3){
+++ if(class){
+++ perform_f(done,env,class,*--opntr,*--opntr,*--opntr);
+++ }else{
+++ perform_f(done,env,*--opntr,*--opntr,*--opntr);
+++ }
+++ }else{
+++ write_ops_to_stack(nrofopsonstack)
+++ if(class){
+++ perform_f(empty_stack,env,class,*--opntr,*--opntr,*--opntr);
+++ }else{
+++ perform_f(empty_stack,env,*--opntr,*--opntr,*--opntr,*--opntr);
+++ }
+++ }
+++
+++ empty_stack:
+++ //Increment stack pointer to loose all operands we put there
+++ if(nrofopsonstack > 0) {
+++ __asm__ __volatile__("add sp,%0" ::"r"((nrofopsonstack) * sizeof(u4)): "sp");
+++ }
+++
+++ done:
+++ return ostack;
+++}
+++
+++/*
+++ int i;
+++ int nrofopsonstack,nrofopsinregister;
+++ u4 *opntr = ostack + args;
+++ register int *r5 asm ("r5");
+++ *r5 = *f;
+++
+++// register unsigned char *r6 asm ("r6");
+++// register int *r7 asm ("r7");
+++// register int *r8 asm ("r8");
+++// register int *r9 asm ("r9");
+++// register int *r10 asm ("r10");
+++// register int *r11 asm ("r11");
+++// register int *r12 asm ("r12");
+++
+++ if(class && args > 3){
+++ nrofopsonstack = args - 3;
+++ nrofopsinregister = 3;
+++ }else if(class){
+++ nrofopsonstack = 0;
+++ nrofopsinregister = args;
+++ }else if(args > 4){
+++ nrofopsonstack = args -4;
+++ nrofopsinregister = 4;
+++ }else{
+++ nrofopsonstack = 0;
+++ nrofopsinregister = args;
+++ }
+++
+++ //write all operands except 3 or 4 to the stack
+++ for(i=0; i < nrofopsonstack; i++){
+++ //printf("!!!!!writing arg %d to stack\n",i);
+++ __asm__ __volatile__(
+++ "ld.w r11,%0 \n\t"
+++ "st.w --sp,r11 "
+++ :: "m"(*--opntr)
+++ :"sp","r11");
+++ }
+++
+++
+++ //TODO: make sure none of the registers above have been changed
+++ switch(ret_type) {
+++ case RET_VOID:
+++ goto do_void_function;
+++ case RET_DOUBLE:
+++ goto do_double_function;
+++ case RET_LONG:
+++ goto do_longlong_function;
+++ case RET_FLOAT:
+++ goto do_float_function;
+++ default:
+++ goto do_default_function;
+++ }
+++
+++ do_void_function:
+++ WRITE_PARAMS(label_void)
+++ __asm__ __volatile__(
+++ "icall r5"
+++ ::"m"(f));
+++ label_void:
+++ (*(void (*)())f)();
+++ //printf("!!!!!!!!!!!!! called void JNIMethod %s!!!!!!!!!!\n",sig);
+++ goto empty_stack;
+++
+++ do_double_function:
+++ WRITE_PARAMS(label_double)
+++ label_double:
+++ *(double*)ostack = (*(double (*)())f)();
+++ ostack += 2;
+++ //printf("!!!!!!!!!!!!! called double JNIMethod %s %l!!!!!!!!!!\n",sig,*ostack);
+++ goto empty_stack;
+++
+++ do_longlong_function:
+++ WRITE_PARAMS(label_longlong)
+++ label_longlong:
+++ *(long long*)ostack = (*(long long (*)())f)();
+++ ostack += 2;
+++ //printf("!!!!!!!!!!!!! called long JNIMethod %s %l!!!!!!!!!!\n",sig,*ostack);
+++ goto empty_stack;
+++
+++ do_float_function:
+++ WRITE_PARAMS(label_float)
+++ label_float:
+++ *(float*)ostack = (*(float (*)())f)();
+++ ostack++;
+++ //printf("!!!!!!!!!!!!! called float JNIMethod %s %f!!!!!!!!!!\n",sig,*ostack);
+++ goto empty_stack;
+++
+++ do_default_function:
+++ WRITE_PARAMS(label_default)
+++ label_default:
+++ *ostack++ = (*(u4 (*)())f)();
+++ //printf("!!!!!!!!!!!!! called default JNIMethod %s!!!!!!!!!!\n",sig);
+++ goto empty_stack;
+++
+++ empty_stack:
+++
+++ //Get rid of the items on the stack
+++ if(nrofopsonstack > 0) {
+++ __asm__ __volatile__("add sp,%0" ::"r"(nrofopsonstack): "sp");
+++ }
+++ return ostack;*/
+++
+++
+++// r8 = (u4*)(*--opntr);
+++// r9 = (u4*)(*--opntr);
+++// r10 = (u4*)(*--opntr);
+++// r11 = (u4*)(*--opntr);
+++// r12 = env;
+++
+++
+++
+++/*
+++ //write all operands to register
+++ if(!class){
+++ switch(nrofopsinregister){
+++ case 4:
+++ __asm__ __volatile__(
+++ "ld.w r8,%[r8] \n\t"
+++ "ld.w r9,%[r9] \n\t"
+++ "ld.w r10,%[r10] \n\t"
+++ "ld.w r11,%[r11] \n\t"
+++ "ld.w r12,%[env]"
+++ :: [r8]"m"(*--opntr),[r9]"m"(*--opntr),[r10]"m"(*--opntr),[r11]"m"(*--opntr),[env]"m"(env)
+++ :"r8","r9","r10","r11","r12"
+++ );
+++ goto select_function;
+++ case 3:
+++ __asm__ __volatile__(
+++ "ld.w r9,%[r9] \n\t"
+++ "ld.w r10,%[r10] \n\t"
+++ "ld.w r11,%[r11] \n\t"
+++ "ld.w r12,%[env]"
+++ :: [r9]"m"(*--opntr),[r10]"m"(*--opntr),[r11]"m"(*--opntr),[env]"m"(env)
+++ :"r9","r10","r11","r12"
+++ );
+++ goto select_function;
+++ case 2:
+++ __asm__ __volatile__(
+++ "ld.w r10,%[r10] \n\t"
+++ "ld.w r11,%[r11] \n\t"
+++ "ld.w r12,%[env]"
+++ :: [r10]"m"(*--opntr),[r11]"m"(*--opntr),[env]"m"(env)
+++ :"r10","r11","r12"
+++ );
+++ goto select_function;
+++ case 1:
+++ __asm__ __volatile__(
+++ "ld.w r11,%[r11] \n\t"
+++ "ld.w r12,%[env]"
+++ ::[r11]"m"(*--opntr),[env]"m"(env)
+++ :"r11","r12"
+++ );
+++ goto select_function;
+++ case 0:
+++ __asm__ __volatile__(
+++ "ld.w r12,%[env]"
+++ ::[env]"m"(env)
+++ :"r12"
+++ );
+++ goto select_function;
+++ }
+++ }else{//class needs to be written to r11
+++ switch(nrofopsinregister){
+++ case 3:
+++ __asm__ __volatile__(
+++ "ld.w r8,%[r8] \n\t"
+++ "ld.w r9,%[r9] \n\t"
+++ "ld.w r10,%[r10] \n\t"
+++ "ld.w r11,%[class] \n\t"
+++ "ld.w r12,%[env]"
+++ :: [r8]"m"(*--opntr),[r9]"m"(*--opntr),[r10]"m"(*--opntr),[class]"m"(class),[env]"m"(env)
+++ :"r8","r9","r10","r11","r12"
+++ );
+++ goto select_function;
+++ case 2:
+++ __asm__ __volatile__(
+++ "ld.w r9,%[r9] \n\t"
+++ "ld.w r10,%[r10] \n\t"
+++ "ld.w r11,%[class] \n\t"
+++ "ld.w r12,%[env]"
+++ :: [r9]"m"(*--opntr),[r10]"m"(*--opntr),[class]"m"(class),[env]"m"(env)
+++ :"r9","r10","r11","r12"
+++ );
+++ goto select_function;
+++ case 1:
+++ __asm__ __volatile__(
+++ "ld.w r10,%[r10] \n\t"
+++ "ld.w r11,%[class] \n\t"
+++ "ld.w r12,%[env]"
+++ :: [r10]"m"(*--opntr),[class]"m"(class),[env]"m"(env)
+++ :"r10","r11","r12"
+++ );
+++ goto select_function;
+++ case 0:
+++ __asm__ __volatile__(
+++ "ld.w r11,%[class] \n\t"
+++ "ld.w r12,%[env]"
+++ :: [class]"m"(class),[env]"m"(env)
+++ :"r10","r11","r12"
+++ );
+++ goto select_function;
+++ }
+++ }
+++ select_function: //This label is put here to make some cleaner assembler jumps above
+++ */
+++
+++// int isstatic;
+++// if(class){
+++// isstatic = 1;
+++// }else{
+++// isstatic = 0;
+++// }
+++// printf("!!!!!!!!!!!!! calling JNIMethod (sig:%s) (type:%d) (argcount:%d) (static:%d)!!!!!!!!!!\n",sig,ret_type,args,isstatic);
+++
+++//Dit werkt!!!
+++// if(args == 3 && isstatic == 0 && ret_type == RET_DFLT){
+++// printf("I am here..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,*--opntr,*--opntr,*--opntr);
+++// return ostack;
+++// }
+++/*
+++ u4 *opntr = ostack + args;
+++ long long *result;
+++ if(class){
+++ //printf("I am static!!!!!!!\n");
+++ if(args == 0){
+++ //*ostack = (*(u4 (*)())f)(env,class);
+++ *result = (*(long long (*)())f)(env,class);
+++ }else if(args == 1){
+++ *result = (*(long long (*)())f)(env,class,*--opntr);
+++ }else if(args == 2){
+++ *result = (*(long long (*)())f)(env,class,*--opntr,*--opntr);
+++ }else if(args == 3){
+++ *result = (*(long long (*)())f)(env,class,*--opntr,*--opntr,*--opntr);
+++ }else if(args == 4){
+++ *result = (*(long long (*)())f)(env,class,*--opntr,*--opntr,*--opntr,*--opntr);
+++ }else if(args == 5){
+++ *result = (*(long long (*)())f)(env,class,*--opntr,*--opntr,*--opntr,*--opntr,*--opntr);
+++ }
+++ }else{
+++ //printf("I am not static!!!!!!!\n");
+++ if(args == 0){
+++ *result = (*(long long (*)())f)(env);
+++ }else if(args == 1){
+++ *result = (*(long long (*)())f)(env,*--opntr);
+++ }else if(args == 2){
+++ *result = (*(long long (*)())f)(env,*--opntr,*--opntr);
+++ }else if(args == 3){
+++ *result = (*(long long (*)())f)(env,*--opntr,*--opntr,*--opntr);
+++ }else if(args == 4){
+++ *result = (*(long long (*)())f)(env,*--opntr,*--opntr,*--opntr,*--opntr);
+++ }else if(args == 5){
+++ *result = (*(long long (*)())f)(env,*--opntr,*--opntr,*--opntr,*--opntr,*--opntr);
+++ }
+++ }
+++
+++ switch(ret_type) {
+++ case RET_VOID:
+++ printf("-------->Performed void function %s\n",sig);
+++ break;
+++
+++ case RET_DOUBLE:
+++ *(double*)ostack = *(double(*))result;
+++ ostack += 2;
+++ printf("-------->Performed double function %s,casting to %d\n",sig, ret_type);
+++ //printf("returned a double %f\n",*ostack);
+++ break;
+++
+++ case RET_LONG:
+++ *(long long*)ostack = *(long long(*))result;
+++ ostack += 2;
+++ printf("-------->Performed long function %s,casting to %d\n",sig, ret_type);
+++ //printf("returned a long %l\n",*ostack);
+++ break;
+++
+++ case RET_FLOAT:
+++ *(float*)ostack = *(float(*))result;
+++ ostack++;
+++ printf("-------->Performed float function %s,casting to %d\n",sig, ret_type);
+++ //printf("returned a float %f\n",*ostack);
+++ break;
+++
+++ default:
+++ *ostack++ = *(u4(*))result;
+++ //ostack++;
+++ printf("-------->Performed default function %s,casting to %d\n",sig, ret_type);
+++ //printf("returned a default %d\n",*ostack);
+++ break;
+++ }
+++ return ostack;
+++ */
+++
+++
+++
+++
+++// if(args == 3 && isstatic == 0 && ret_type == RET_DFLT){
+++// printf("I am here!!!!!!!\n");
+++// u4 *result = (*(u4 (*)())f)(env,*--opntr,*--opntr,*--opntr);
+++// *ostack++ = result;
+++// //*ostack++ = (*(u4 (*)())f)(env,*--opntr,*--opntr,*--opntr);
+++// return ostack;
+++// }
+++// if(args == 2 && isstatic == 0 && ret_type == RET_DFLT){
+++// printf("I am here..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,*--opntr,*--opntr);
+++// return ostack;
+++// }
+++// if(args == 1 && isstatic == 0 && ret_type == RET_DFLT){
+++// printf("I am here..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,*--opntr);
+++// return ostack;
+++// }
+++//
+++// if(args == 6 && isstatic == 1 && ret_type == RET_DFLT){
+++// printf("I am here for 7 args..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,class,*--opntr,*--opntr,*--opntr,*--opntr,*--opntr,*--opntr);
+++// return ostack;
+++// }
+++// if(args == 4 && isstatic == 1 && ret_type == RET_DFLT){
+++// printf("I am here for 5 args..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,class,*--opntr,*--opntr,*--opntr,*--opntr);
+++// return ostack;
+++// }
+++// if(args == 3 && isstatic == 1 && ret_type == RET_DFLT){
+++// printf("I am here..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,class,*--opntr,*--opntr,*--opntr);
+++// return ostack;
+++// }
+++// if(args == 2 && isstatic == 1 && ret_type == RET_DFLT){
+++// printf("I am here..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,class,*--opntr,*--opntr);
+++// return ostack;
+++// }
+++// if(args == 1 && isstatic == 1 && ret_type == RET_DFLT){
+++// printf("I am here..\n");
+++// *ostack++ = (*(u4 (*)())f)(env,class,*--opntr);
+++// return ostack;
+++// }
+++
+++ //int i;
+++
+++ //for(i = 0; i < args; i++){
+++ // printf("!!!!!should write arg %d\n",i);
+++ //__asm__ __volatile__("ld.w r11,%0" :: "m"(*--opntr):"r11");
+++ //__asm__ __volatile__("st.w --sp,r11" ::: "sp","r11");
+++ //}
+++
+++// int i=args;
+++// if(class) {
+++// for(i=args;i>3;i--){
+++// __asm__ __volatile__("ld.w r8,%0" :: "m"(*--opntr):"r8");
+++// __asm__ __volatile__("st.w --sp,r8" ::: "sp","r8");
+++// }
+++// if(args >= 3){
+++// __asm__ __volatile__("ld.w r8,%0" :: "m"(*--opntr):"r8");
+++// }
+++// if(args >= 2){
+++// __asm__ __volatile__("ld.w r9,%0" :: "m"(*--opntr):"r9");
+++// }
+++// if(args >= 1){
+++// __asm__ __volatile__("ld.w r10,%0" :: "m"(*--opntr):"r10");
+++// }
+++// __asm__ __volatile__("ld.w r11,%0" :: "m"(class):"r11");
+++// __asm__ __volatile__("ld.w r12,%0" :: "m"(env):"r12");
+++// }else{//static, don't add class variable
+++// for(i=args;i>4;i--){
+++// //r8 will be reused by the last register argument
+++// __asm__ __volatile__("ld.w r8,%0" :: "m"(*--opntr):"r8");
+++// __asm__ __volatile__("st.w --sp,r8" ::: "sp","r8");
+++// }
+++// if(args >= 4){
+++// __asm__ __volatile__("ld.w r8,%0" :: "m"(*--opntr):"r8");
+++// }
+++// if(args >= 3){
+++// __asm__ __volatile__("ld.w r9,%0" :: "m"(*--opntr):"r9");
+++// }
+++// if(args >= 2){
+++// __asm__ __volatile__("ld.w r10,%0" :: "m"(*--opntr):"r10");
+++// }
+++// if(args >= 1){
+++// __asm__ __volatile__("ld.w r11,%0" :: "m"(*--opntr):"r11");
+++// }
+++// __asm__ __volatile__("ld.w r12,%0" :: "m"(env):"r12");
+++// }
+++
+++// printf("!!!!!pushing environment to r12\n");
+++
+++ //printf("!!!!!!!!!!!!! switching ret_type %s %d ,nr of args: %d!!!!!!!!!!\n",sig, ret_type,args);
+++// switch(ret_type) {
+++// case RET_VOID:
+++// (*(void (*)())f)();
+++// //printf("!!!!!!!!!!!!! called void JNIMethod %s!!!!!!!!!!\n",sig);
+++// break;
+++//
+++// case RET_DOUBLE:
+++// *(double*)ostack = (*(double (*)())f)();
+++// ostack += 2;
+++// //printf("!!!!!!!!!!!!! called double JNIMethod %s %l!!!!!!!!!!\n",sig,*ostack);
+++// break;
+++//
+++// case RET_LONG:
+++// *(long long*)ostack = (*(long long (*)())f)();
+++// ostack += 2;
+++// //printf("!!!!!!!!!!!!! called long JNIMethod %s %l!!!!!!!!!!\n",sig,*ostack);
+++// break;
+++//
+++// case RET_FLOAT:
+++// *(float*)ostack = (*(float (*)())f)();
+++// ostack++;
+++// //printf("!!!!!!!!!!!!! called float JNIMethod %s %f!!!!!!!!!!\n",sig,*ostack);
+++// break;
+++//
+++// default:
+++// *ostack++ = (*(u4 (*)())f)();
+++// //printf("!!!!!!!!!!!!! called default JNIMethod %s!!!!!!!!!!\n",sig);
+++// break;
+++// }
+++//
+++// if(class && args > 3) {
+++// int to_add = args-3;
+++// __asm__ __volatile__("add sp,%0" ::"r"(to_add): "sp");
+++// }else if(!class && args > 4){
+++// int to_add = args-4;
+++// __asm__ __volatile__("add sp,%0" ::"r"(to_add): "sp");
+++// }
+++// //printf("!!!!!!!!!!!!! returning JNIMethod (sig:%s) (type:%d) (argcount:%d)!!!!!!!!!!\n",sig,ret_type,args);
+++// //printf("!!!!!!!!!!!!! returning %s %d ,nr of args: %d!!!!!!!!!!\n",sig, ret_type,args);
+++// //printf("!!!!!!!!!!!!! returning JNIMethod !!!!!!!!!!\n");
+++// //__asm__ __volatile__ ("addl %0,%%esp" :: "r" ((args + 1) * sizeof(u4)) : "cc", "sp");
+++//
+++// return ostack;
+++
+++
+++//write all operands, class and env to register
+++#define WRITE_PARAMS(label) \
+++ if(!class){ \
+++ switch(nrofopsinregister){ \
+++ case 4: \
+++ __asm__ __volatile__( \
+++ "ld.w r8,%[r8] \n\t" \
+++ "ld.w r9,%[r9] \n\t" \
+++ "ld.w r10,%[r10] \n\t" \
+++ "ld.w r11,%[r11] \n\t" \
+++ "ld.w r12,%[env]" \
+++ :: [r8]"m"(*--opntr),[r9]"m"(*--opntr),[r10]"m"(*--opntr),[r11]"m"(*--opntr),[env]"m"(env) \
+++ :"r8","r9","r10","r11","r12" \
+++ ); \
+++ goto label; \
+++ case 3: \
+++ __asm__ __volatile__( \
+++ "ld.w r9,%[r9] \n\t" \
+++ "ld.w r10,%[r10] \n\t" \
+++ "ld.w r11,%[r11] \n\t" \
+++ "ld.w r12,%[env]" \
+++ :: [r9]"m"(*--opntr),[r10]"m"(*--opntr),[r11]"m"(*--opntr),[env]"m"(env) \
+++ :"r9","r10","r11","r12" \
+++ ); \
+++ goto label; \
+++ case 2: \
+++ __asm__ __volatile__( \
+++ "ld.w r10,%[r10] \n\t" \
+++ "ld.w r11,%[r11] \n\t" \
+++ "ld.w r12,%[env]" \
+++ :: [r10]"m"(*--opntr),[r11]"m"(*--opntr),[env]"m"(env) \
+++ :"r10","r11","r12" \
+++ ); \
+++ goto label; \
+++ case 1: \
+++ __asm__ __volatile__( \
+++ "ld.w r11,%[r11] \n\t" \
+++ "ld.w r12,%[env]" \
+++ ::[r11]"m"(*--opntr),[env]"m"(env) \
+++ :"r11","r12" \
+++ ); \
+++ goto label; \
+++ case 0: \
+++ __asm__ __volatile__( \
+++ "ld.w r12,%[env]" \
+++ ::[env]"m"(env) \
+++ :"r12" \
+++ ); \
+++ goto label; \
+++ } \
+++ }else{ \
+++ switch(nrofopsinregister){ \
+++ case 3: \
+++ __asm__ __volatile__( \
+++ "ld.w r8,%[r8] \n\t" \
+++ "ld.w r9,%[r9] \n\t" \
+++ "ld.w r10,%[r10] \n\t" \
+++ "ld.w r11,%[class] \n\t" \
+++ "ld.w r12,%[env]" \
+++ :: [r8]"m"(*--opntr),[r9]"m"(*--opntr),[r10]"m"(*--opntr),[class]"m"(class),[env]"m"(env) \
+++ :"r8","r9","r10","r11","r12" \
+++ ); \
+++ goto label; \
+++ case 2: \
+++ __asm__ __volatile__( \
+++ "ld.w r9,%[r9] \n\t" \
+++ "ld.w r10,%[r10] \n\t" \
+++ "ld.w r11,%[class] \n\t" \
+++ "ld.w r12,%[env]" \
+++ :: [r9]"m"(*--opntr),[r10]"m"(*--opntr),[class]"m"(class),[env]"m"(env) \
+++ :"r9","r10","r11","r12" \
+++ ); \
+++ goto label; \
+++ case 1: \
+++ __asm__ __volatile__( \
+++ "ld.w r10,%[r10] \n\t" \
+++ "ld.w r11,%[class] \n\t" \
+++ "ld.w r12,%[env]" \
+++ :: [r10]"m"(*--opntr),[class]"m"(class),[env]"m"(env) \
+++ :"r10","r11","r12" \
+++ ); \
+++ goto label; \
+++ case 0: \
+++ __asm__ __volatile__( \
+++ "ld.w r11,%[class] \n\t" \
+++ "ld.w r12,%[env]" \
+++ :: [class]"m"(class),[env]"m"(env) \
+++ :"r10","r11","r12" \
+++ ); \
+++ goto label; \
+++ } \
+++ } \
+++ //This label is put here to make some cleaner assembler jumps above
+++#endif
++diff -urpN jamvm-1.5.0/src/os/linux/avr32/init.c jamvm-1.5.0-avr32/src/os/linux/avr32/init.c
++--- jamvm-1.5.0/src/os/linux/avr32/init.c 1970-01-01 01:00:00.000000000 +0100
+++++ jamvm-1.5.0-avr32/src/os/linux/avr32/init.c 2008-02-08 09:20:38.000000000 +0100
++@@ -0,0 +1,39 @@
+++/*
+++ * Copyright (C) 2003, 2004, 2006, 2007
+++ * Robert Lougher <ro...@lo...>.
+++ *
+++ * This file is part of JamVM.
+++ *
+++ * 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,
+++ * 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+++ */
+++
+++//#include <fpu_control.h>
+++//#include <stdio.h>
+++
+++/* Change floating point precision to double (64-bit) from
+++ * the extended (80-bit) Linux default. */
+++
+++//void setDoublePrecision() {
+++// fpu_control_t cw;
+++//
+++// _FPU_GETCW(cw);
+++// cw &= ~_FPU_EXTENDED;
+++// cw |= _FPU_DOUBLE;
+++// _FPU_SETCW(cw);
+++//}
+++
+++void initialisePlatform() {
+++ //TODO: is this needed for avr32? setDoublePrecision();
+++}
++diff -urpN jamvm-1.5.0/src/os/linux/avr32/Makefile.am jamvm-1.5.0-avr32/src/os/linux/avr32/Makefile.am
++--- jamvm-1.5.0/src/os/linux/avr32/Makefile.am 1970-01-01 01:00:00.000000000 +0100
+++++ jamvm-1.5.0-avr32/src/os/linux/avr32/Makefile.am 2008-02-08 09:20:38.000000000 +0100
++@@ -0,0 +1,25 @@
+++##
+++## Copyright (C) 2003, 2004, 2005, 2006, 2007
+++## Robert Lougher <ro...@lo...>.
+++##
+++## This file is part of JamVM.
+++##
+++## 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,
+++## 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+++##
+++
+++noinst_LTLIBRARIES = libnative.la
+++libnative_la_SOURCES = init.c dll_md.c
+++
+++AM_CPPFLAGS = -I$(top_builddir)/src
++diff -urpN jamvm-1.5.0/src/os/linux/avr32/Makefile.in jamvm-1.5.0-avr32/src/os/linux/avr32/Makefile.in
++--- jamvm-1.5.0/src/os/linux/avr32/Makefile.in 1970-01-01 01:00:00.000000000 +0100
+++++ jamvm-1.5.0-avr32/src/os/linux/avr32/Makefile.in 2008-02-08 09:20:38.000000000 +0100
++@@ -0,0 +1,446 @@
+++# Makefile.in generated by automake 1.10 from Makefile.am.
+++# @configure_input@
+++
+++# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+++# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+++# This Makefile.in is free software; the Free Software Foundation
+++# gives unlimited permission to copy and/or distribute it,
+++# with or without modifications, as long as this notice is preserved.
+++
+++# This program is distributed in the hope that it will be useful,
+++# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+++# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+++# PARTICULAR PURPOSE.
+++
+++@SET_MAKE@
+++
+++VPATH = @srcdir@
+++pkgdatadir = $(datadir)/@PACKAGE@
+++pkglibdir = $(libdir)/@PACKAGE@
+++pkgincludedir = $(includedir)/@PACKAGE@
+++am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+++install_sh_DATA = $(install_sh) -c -m 644
+++install_sh_PROGRAM = $(install_sh) -c
+++install_sh_SCRIPT = $(install_sh) -c
+++INSTALL_HEADER = $(INSTALL_DATA)
+++transform = $(program_transform_name)
+++NORMAL_INSTALL = :
+++PRE_INSTALL = :
+++POST_INSTALL = :
+++NORMAL_UNINSTALL = :
+++PRE_UNINSTALL = :
+++POST_UNINSTALL = :
+++build_triplet = @build@
+++host_triplet = @host@
+++subdir = src/os/linux/avr32
+++DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+++am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+++ $(top_srcdir)/configure.ac
+++am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+++ $(ACLOCAL_M4)
+++mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+++CONFIG_HEADER = $(top_builddir)/src/config.h
+++CONFIG_CLEAN_FILES =
+++LTLIBRARIES = $(noinst_LTLIBRARIES)
+++libnative_la_LIBADD =
+++am_libnative_la_OBJECTS = init.lo dll_md.lo
+++libnative_la_OBJECTS = $(am_libnative_la_OBJECTS)
+++DEFAULT_INCLUDES = -I. -I$(top_builddir)/src@am__isrc@
+++depcomp = $(SHELL) $(top_srcdir)/depcomp
+++am__depfiles_maybe = depfiles
+++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+++LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+++CCLD = $(CC)
+++LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+++ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+++ $(LDFLAGS) -o $@
+++SOURCES = $(libnative_la_SOURCES)
+++DIST_SOURCES = $(libnative_la_SOURCES)
+++ETAGS = etags
+++CTAGS = ctags
+++DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+++ACLOCAL = @ACLOCAL@
+++ALLOCA = @ALLOCA@
+++AMTAR = @AMTAR@
+++AR = @AR@
+++AUTOCONF = @AUTOCONF@
+++AUTOHEADER = @AUTOHEADER@
+++AUTOMAKE = @AUTOMAKE@
+++AWK = @AWK@
+++CC = @CC@
+++CCAS = @CCAS@
+++CCASDEPMODE = @CCASDEPMODE@
+++CCASFLAGS = @CCASFLAGS@
+++CCDEPMODE = @CCDEPMODE@
+++CFLAGS = @CFLAGS@
+++CPP = @CPP@
+++CPPFLAGS = @CPPFLAGS@
+++CXX = @CXX@
+++CXXCPP = @CXXCPP@
+++CXXDEPMODE = @CXXDEPMODE@
+++CXXFLAGS = @CXXFLAGS@
+++CYGPATH_W = @CYGPATH_W@
+++DEFS = @DEFS@
+++DEPDIR = @DEPDIR@
+++ECHO = @ECHO@
+++ECHO_C = @ECHO_C@
+++ECHO_N = @ECHO_N@
+++ECHO_T = @ECHO_T@
+++EGREP = @EGREP@
+++EXEEXT = @EXEEXT@
+++F77 = @F77@
+++FFLAGS = @FFLAGS@
+++GREP = @GREP@
+++INSTALL = @INSTALL@
+++INSTALL_DATA = @INSTALL_DATA@
+++INSTALL_PROGRAM = @INSTALL_PROGRAM@
+++INSTALL_SCRIPT = @INSTALL_SCRIPT@
+++INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+++JAVAC = @JAVAC@
+++LDFLAGS = @LDFLAGS@
+++LIBOBJS = @LIBOBJS@
+++LIBS = @LIBS@
+++LIBTOOL = @LIBTOOL@
+++LN_S = @LN_S@
+++LTLIBOBJS = @LTLIBOBJS@
+++MAINT = @MAINT@
+++MAKEINFO = @MAKEINFO@
+++MKDIR_P = @MKDIR_P@
+++OBJEXT = @OBJEXT@
+++PACKAGE = @PACKAGE@
+++PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+++PACKAGE_NAME = @PACKAGE_NAME@
+++PACKAGE_STRING = @PACKAGE_STRING@
+++PACKAGE_TARNAME = @PACKAGE_TARNAME@
+++PACKAGE_VERSION = @PACKAGE_VERSION@
+++PATH_SEPARATOR = @PATH_SEPARATOR@
+++RANLIB = @RANLIB@
+++SED = @SED@
+++SET_MAKE = @SET_MAKE@
+++SHELL = @SHELL@
+++STRIP = @STRIP@
+++VERSION = @VERSION@
+++abs_builddir = @abs_builddir@
+++abs_srcdir = @abs_srcdir@
+++abs_top_builddir = @abs_top_builddir@
+++abs_top_srcdir = @abs_top_srcdir@
+++ac_ct_CC = @ac_ct_CC@
+++ac_ct_CXX = @ac_ct_CXX@
+++ac_ct_F77 = @ac_ct_F77@
+++am__include = @am__include@
+++am__leading_dot = @am__leading_dot@
+++am__quote = @am__quote@
+++am__tar = @am__tar@
+++am__untar = @am__untar@
+++arch = @arch@
+++bindir = @bindir@
+++build = @build@
+++build_alias = @build_alias@
+++build_cpu = @build_cpu@
+++build_os = @build_os@
+++build_vendor = @build_vendor@
+++builddir = @builddir@
+++datadir = @datadir@
+++datarootdir = @datarootdir@
+++docdir = @docdir@
+++dvidir = @dvidir@
+++exec_prefix = @exec_prefix@
+++host = @host@
+++host_alias = @host_alias@
+++host_cpu = @host_cpu@
+++host_os = @host_os@
+++host_vendor = @host_vendor@
+++htmldir = @htmldir@
+++includedir = @includedir@
+++infodir = @infodir@
+++install_sh = @install_sh@
+++interp_cflags = @interp_cflags@
+++libdir = @libdir@
+++libexecdir = @libexecdir@
+++localedir = @localedir@
+++localstatedir = @localstatedir@
+++mandir = @mandir@
+++mkdir_p = @mkdir_p@
+++oldincludedir = @oldincludedir@
+++os = @os@
+++pdfdir = @pdfdir@
+++prefix = @prefix@
+++program_transform_name = @program_transform_name@
+++psdir = @psdir@
+++sbindir = @sbindir@
+++sharedstatedir = @sharedstatedir@
+++srcdir = @srcdir@
+++sysconfdir = @sysconfdir@
+++target_alias = @target_alias@
+++top_builddir = @top_builddir@
+++top_srcdir = @top_srcdir@
+++use_zip_no = @use_zip_no@
+++use_zip_yes = @use_zip_yes@
+++with_classpath_install_dir = @with_classpath_install_dir@
+++noinst_LTLIBRARIES = libnative.la
+++libnative_la_SOURCES = init.c dll_md.c
+++AM_CPPFLAGS = -I$(top_builddir)/src
+++all: all-am
+++
+++.SUFFIXES:
+++.SUFFIXES: .c .lo .o .obj
+++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+++ @for dep in $?; do \
+++ case '$(am__configure_deps)' in \
+++ *$$dep*) \
+++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+++ && exit 0; \
+++ exit 1;; \
+++ esac; \
+++ done; \
+++ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/os/linux/avr32/Makefile'; \
+++ cd $(top_srcdir) && \
+++ $(AUTOMAKE) --gnu src/os/linux/avr32/Makefile
+++.PRECIOUS: Makefile
+++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+++ @case '$?' in \
+++ *config.status*) \
+++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+++ *) \
+++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+++ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+++ esac;
+++
+++$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+++
+++$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+++$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+++
+++clean-noinstLTLIBRARIES:
+++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
+++ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
+++ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+++ test "$$dir" != "$$p" || dir=.; \
+++ echo "rm -f \"$${dir}/so_locations\""; \
+++ rm -f "$${dir}/so_locations"; \
+++ done
+++libnative.la: $(libnative_la_OBJECTS) $(libnative_la_DEPENDENCIES)
+++ $(LINK) $(libnative_la_OBJECTS) $(libnative_la_LIBADD) $(LIBS)
+++
+++mostlyclean-compile:
+++ -rm -f *.$(OBJEXT)
+++
+++distclean-compile:
+++ -rm -f *.tab.c
+++
+++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dll_md.Plo@am__quote@
+++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/init.Plo@am__quote@
+++
+++.c.o:
+++@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+++@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+++@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+++@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+++@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+++
+++.c.obj:
+++@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+++@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+++@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+++@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+++@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+++
+++.c.lo:
+++@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+++@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+++@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+++@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+++@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+++
+++mostlyclean-libtool:
+++ -rm -f *.lo
+++
+++clean-libtool:
+++ -rm -rf .libs _libs
+++
+++ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+++ unique=`for i in $$list; do \
+++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+++ done | \
+++ $(AWK) ' { files[$$0] = 1; } \
+++ END { for (i in files) print i; }'`; \
+++ mkid -fID $$unique
+++tags: TAGS
+++
+++TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+++ $(TAGS_FILES) $(LISP)
+++ tags=; \
+++ here=`pwd`; \
+++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+++ unique=`for i in $$list; do \
+++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+++ done | \
+++ $(AWK) ' { files[$$0] = 1; } \
+++ END { for (i in files) print i; }'`; \
+++ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+++ test -n "$$unique" || unique=$$empty_fix; \
+++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+++ $$tags $$unique; \
+++ fi
+++ctags: CTAGS
+++CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+++ $(TAGS_FILES) $(LISP)
+++ tags=; \
+++ here=`pwd`; \
+++ list=...
[truncated message content] |
|
From: Fabien M <fa...@us...> - 2012-03-15 09:08:38
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via a0c9ab8569ac894c9d23f522081c9077c7cd5bb7 (commit)
via df322cc8b405e0dc16f2829721d1ac911a86d2c0 (commit)
from 68d1c9ccd8222f200399922b5d1a1e7c3c2b53b7 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit a0c9ab8569ac894c9d23f522081c9077c7cd5bb7
Merge: df322cc 68d1c9c
Author: Fabien Marteau <fab...@ar...>
Date: Thu Mar 15 10:07:58 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit df322cc8b405e0dc16f2829721d1ac911a86d2c0
Author: Fabien Marteau <fab...@ar...>
Date: Thu Mar 15 10:07:17 2012 +0100
[FPGA] Clean spartan_loadsecond download driver
-----------------------------------------------------------------------
Summary of changes:
.../sploader/spartan_loadsecond.c | 107 +++-----------------
1 files changed, 13 insertions(+), 94 deletions(-)
diff --git a/target/linux/modules/fpga/virtual_components/sploader/spartan_loadsecond.c b/target/linux/modules/fpga/virtual_components/sploader/spartan_loadsecond.c
index 2e20238..9e1819c 100644
--- a/target/linux/modules/fpga/virtual_components/sploader/spartan_loadsecond.c
+++ b/target/linux/modules/fpga/virtual_components/sploader/spartan_loadsecond.c
@@ -28,7 +28,6 @@
Xilinx_desc *xil_desc;
-/* Timeout function */
static unsigned long get_timer(unsigned long initTime)
{
struct timeval tv;
@@ -42,21 +41,18 @@ static unsigned long get_timer(unsigned long initTime)
int fpga_spartan6_abort_fn(Xilinx_desc *desc, int cookie)
{
int config;
- //Xilinx_desc *desc = xil_desc; //apf27_fpga_get_desc(cookie);
- //config = ioread16(SELECTMAP_CONFIG_REG); /* read config */
+
config = readw(SELECTMAP_CONFIG_REG); /* read config */
config |= (1 << SELECTMAP_CONFIG_CLK); /* IP in clock mode */
- //iowrite16(config, SELECTMAP_CONFIG_REG); /* write config */
writew(config, SELECTMAP_CONFIG_REG); /* write config */
+
return cookie;
}
int fpga_spartan6_busy_fn(Xilinx_desc *desc, int cookie)
{
u16 status;
- //Xilinx_desc *desc = xil_desc; //apf27_fpga_get_desc(cookie);
- //status = ioread16(SELECTMAP_STATUS_REG); /* read config */
status = readw(SELECTMAP_STATUS_REG); /* read config */
return (((status & (1 << SELECTMAP_STATUS_BUSY)) != 0) ? 0 : 1);
@@ -65,7 +61,6 @@ int fpga_spartan6_busy_fn(Xilinx_desc *desc, int cookie)
int fpga_spartan6_post_fn(Xilinx_desc *desc, int cookie)
{
int config;
- //Xilinx_desc *desc = xil_desc; //apf27_fpga_get_desc(cookie);
config = readw(SELECTMAP_CONFIG_REG); /* read config */
config |= (1 << SELECTMAP_CONFIG_CLK); /* IP in clock mode */
@@ -83,35 +78,18 @@ int loadsecond(Xilinx_desc * desc)
fn = desc->iface_fns;
ret_val = FPGA_FAIL; /* assume the worst */
- //desc->ip_addr = ip_addr;
-
- printk("%s: start with interface functions @ 0x%p\n", __FUNCTION__, fn);
if (fn) {
int ret;
int cookie = desc->cookie; /* make a local copy */
unsigned long ts; /* timestamp */
-/* printk("%s: Function Table:\n"
- "ptr:\t0x%p\n struct: 0x%p\n pre: 0x%p\n"
- "pgm:\t0x%p\n init:\t0x%p\n err:\t0x%p\n"
- "clk:\t0x%p\n cs:\t0x%p\n wr:\t0x%p\n"
- "read data:\t0x%p\n write data:\t0x%p\n"
- "busy:\t0x%p\n abort:\t0x%p\n",
- "post:\t0x%p\n\n",
- __FUNCTION__, &fn, fn, fn->pre, fn->pgm, fn->init,
- fn->err, fn->clk, fn->cs, fn->wr, fn->rdata, fn->wdata,
- fn->busy, fn->abort, fn->post);
-*/
/*
* This code is designed to emulate the "Express Style"
* Continuous Data Loading in Slave Parallel Mode for
* the Spartan-VI Family.
- */
- printk("Loading FPGA Device %d...\n", cookie);
- /*
+ *
* Run the pre configuration function if there is one.
*/
- printk("Run pre function\n");
if (*fn->pre) {
ret = (*fn->pre) (desc, cookie);
if (ret < 0)
@@ -128,25 +106,18 @@ int loadsecond(Xilinx_desc * desc)
/* Wait for INIT_N low */
ts = get_timer(0); /* get current time */
- /* Now wait for INIT and BUSY to go high */
- printk("/* Now wait for INIT and BUSY to go high */\n");
do {
CONFIG_FPGA_DELAY();
if (get_timer(ts) > CONFIG_SYS_FPGA_WAIT) { /* check the time */
- printk
- ("** Timeout waiting for INIT to clear.\n");
+ printk ("** Timeout waiting for INIT to clear.\n");
(*fn->abort) (desc, cookie); /* abort the burn */
return FPGA_FAIL;
}
} while ((*fn->init) (desc, cookie) == FPGA_SUCCESS);
- printk("Assert write\n");
(*fn->wr) (desc, TRUE, TRUE, cookie); /* Assert write, commit */
-
- printk("ASSERT chip select\n");
(*fn->cs) (desc, TRUE, TRUE, cookie); /* Assert chip select, commit */
- printk("/* Load the data */\n");
}
return 0;
}
@@ -176,26 +147,22 @@ int end_load(Xilinx_desc * desc)
{
int ret_val = FPGA_FAIL; /* assume the worst */
Xilinx_Spartan6_Slave_SelectMap_fns *fn;
-// xil_desc = desc;
fn = desc->iface_fns;
ret_val = FPGA_FAIL; /* assume the worst */
if (fn) {
int cookie = desc->cookie; /* make a local copy */
- //size_t bytecount = 0;
- //unsigned char *data = (unsigned char *)buf;
unsigned long ts; /* timestamp */
+
/* now check for done signal */
- printk("/* now check for done signal */\n");
ts = get_timer(0); /* get current time */
ret_val = FPGA_SUCCESS;
while ((*fn->done) (desc, cookie) == FPGA_FAIL) {
/* XXX - we should have a check in here somewhere to
* make sure we aren't busy forever... */
- if (get_timer(ts) > 20000 /*CONFIG_SYS_FPGA_WAIT */ ) { /* check the time */
- printk
- ("** Timeout waiting for DONE to clear.\n");
+ if (get_timer(ts) > 20000 ) { /* check the time */
+ printk("** Timeout waiting for DONE to clear.\n");
(*fn->abort) (desc, cookie); /* abort the burn */
ret_val = FPGA_FAIL;
break;
@@ -203,9 +170,7 @@ int end_load(Xilinx_desc * desc)
}
CONFIG_FPGA_DELAY();
- printk("Deassert chip select\n");
(*fn->cs) (desc, FALSE, TRUE, cookie); /* Deassert the chip select */
- printk("Deassert write pin\n");
(*fn->wr) (desc, FALSE, TRUE, cookie); /* Deassert the write pin */
printk("\n"); /* terminate the dotted line */
@@ -230,40 +195,24 @@ int end_load(Xilinx_desc * desc)
int fpga_spartan6_init_fn(Xilinx_desc *desc, int cookie)
{
uint16_t status;
-// Xilinx_desc *desc = xil_desc;
status = readw(SELECTMAP_STATUS_REG);
- printk("%s:%d: INIT check", __FUNCTION__, __LINE__);
- printk("%d\n",
- (((status & (1 << SELECTMAP_STATUS_INIT_N)) == 0) ? 1 : 0));
- printk("\n");
-
return (((status & (1 << SELECTMAP_STATUS_INIT_N)) ==
0) ? FPGA_SUCCESS : FPGA_FAIL);
}
-/*
- * * Set the FPGA's active-high clock line to the specified level
- * */
+/* Set the FPGA's active-high clock line to the specified level */
int fpga_spartan6_clk_fn(Xilinx_desc *desc, int assert_clk, int flush, int cookie)
{
- printk("%s:%d: FPGA SET| CLOCK %s", __FUNCTION__, __LINE__,
- assert_clk ? "high" : "low");
- printk("\n");
-
/* clock pulse is generated when a data is wrote */
-
return assert_clk;
}
-/*
- * * Test the state of the active-high FPGA DONE pin
- * */
+/* Test the state of the active-high FPGA DONE pin */
int fpga_spartan6_done_fn(Xilinx_desc *desc, int cookie)
{
uint16_t status;
-// Xilinx_desc *desc = xil_desc;
status = readw(SELECTMAP_STATUS_REG);
return (((status & (1 << SELECTMAP_STATUS_DONE)) ==
@@ -273,8 +222,6 @@ int fpga_spartan6_done_fn(Xilinx_desc *desc, int cookie)
/* TODO: read/write in 16bits mode */
int fpga_spartan6_rdata_fn(Xilinx_desc *desc, unsigned char *data, int cookie)
{
-// Xilinx_desc *desc = xil_desc; //apf27_fpga_get_desc(cookie);
-
*data = (readw(SELECTMAP_DATA_REG) & 0xff);
printk(".");
@@ -285,26 +232,16 @@ int fpga_spartan6_wdata_fn(Xilinx_desc *desc, unsigned char data,
int flush, int cookie)
{
uint16_t val = data & 0x00ff;
-// Xilinx_desc *desc = xil_desc;
writew(val, SELECTMAP_DATA_REG);
return data;
}
-/* end of TODO */
-
-/*
- * * Set the FPGA's wr line to the specified level
- * */
+/* Set the FPGA's wr line to the specified level */
int fpga_spartan6_wr_fn(Xilinx_desc *desc, int assert_write, int flush, int cookie)
{
unsigned short config;
-// Xilinx_desc *desc = xil_desc;
-
- printk("%s:%d: FPGA SET| RW %s ", __FUNCTION__, __LINE__,
- assert_write ? "high" : "low");
- printk("\n");
config = readw(SELECTMAP_CONFIG_REG);
if (assert_write)
@@ -319,12 +256,6 @@ int fpga_spartan6_wr_fn(Xilinx_desc *desc, int assert_write, int flush, int cook
int fpga_spartan6_cs_fn(Xilinx_desc *desc, int assert_cs, int flush, int cookie)
{
int config;
-// Xilinx_desc *desc = xil_desc;
-
- printk("%s:%d: FPGA SET| CS %s ", __FUNCTION__, __LINE__,
- assert_cs ? "high" : "low");
- printk("\n");
-
config = readw(SELECTMAP_CONFIG_REG);
if (assert_cs)
config &= ~(1 << SELECTMAP_CONFIG_CSI_N);
@@ -335,16 +266,12 @@ int fpga_spartan6_cs_fn(Xilinx_desc *desc, int assert_cs, int flush, int cookie)
return assert_cs;
}
-/*
- * * Initialize FPGA before download
- * */
+/* Initialize FPGA before download */
int fpga_spartan6_pre_fn(Xilinx_desc *desc, int cookie)
{
int config;
-// Xilinx_desc *desc = xil_desc;
config = readw(SELECTMAP_CONFIG_REG);
- printk("config avant : %02x\n", config);
config &= ~(1 << SELECTMAP_CONFIG_CLK); /* IP in selectmap mode */
config |= (1 << SELECTMAP_CONFIG_OS); /* OS High */
config |= (1 << SELECTMAP_CONFIG_CSI_N); /* CSI_n High */
@@ -352,27 +279,19 @@ int fpga_spartan6_pre_fn(Xilinx_desc *desc, int cookie)
config |= (1 << SELECTMAP_CONFIG_RDWR_N); /* rdwr_n High */
writew(config, SELECTMAP_CONFIG_REG);
- printk("valeur a ecrire : %02x\n", config);
udelay(1); /*wait until supply started */
config = readw(SELECTMAP_CONFIG_REG);
- printk("valeur apres : %02x\n", config);
+
return cookie;
}
-/*
- * * Set the FPGA's active-low program line to the specified level
- * */
+/* Set the FPGA's active-low program line to the specified level */
int fpga_spartan6_pgm_fn(Xilinx_desc *desc, int assert, int flush, int cookie)
{
unsigned short config;
- //Xilinx_desc *desc = xil_desc;
config = readw(SELECTMAP_CONFIG_REG);
- printk("%s:%d: FPGA SET PROGRAM %s", __FUNCTION__, __LINE__,
- assert ? "high" : "low");
- printk("\n");
-
if (assert)
config &= ~(1 << SELECTMAP_CONFIG_PROGRAM_N);
else
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-14 22:03:56
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 68d1c9ccd8222f200399922b5d1a1e7c3c2b53b7 (commit)
via 32a5d86caa66f1acd4f656e3b3d59851d38be027 (commit)
via 2d14133536de2fc9bc3f6fecd6aff1dd273162b1 (commit)
from 3de55774b49d1b9b57a0af5c1c7c591c7a5e3cb8 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 68d1c9ccd8222f200399922b5d1a1e7c3c2b53b7
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 14 23:14:22 2012 +0100
[UBOOT] apf9328: enable dcache feature but not active no boot
commit 32a5d86caa66f1acd4f656e3b3d59851d38be027
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 14 22:29:54 2012 +0100
[UBOOT] apf9328: update and clean up for UBoot 2011.12
commit 2d14133536de2fc9bc3f6fecd6aff1dd273162b1
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 14 20:38:00 2012 +0100
[UBOOT] apf9328: fix DHCP and NFS timeout issue
-----------------------------------------------------------------------
Summary of changes:
.../armadeus/apf9328/apf9328-u-boot-2011.12.h | 30 +-
patches/u-boot/2011.12/03-apf9328.patch | 26 +-
patches/u-boot/2011.12/05-apf9328-config.patch | 1049 --------------------
.../u-boot/2011.12/10-apf9328_add-mach-types.patch | 10 -
patches/u-boot/2011.12/11-mx1-timer.patch | 16 +
5 files changed, 41 insertions(+), 1090 deletions(-)
delete mode 100644 patches/u-boot/2011.12/05-apf9328-config.patch
delete mode 100644 patches/u-boot/2011.12/10-apf9328_add-mach-types.patch
create mode 100644 patches/u-boot/2011.12/11-mx1-timer.patch
diff --git a/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h b/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h
index 198989f..2d0f70b 100644
--- a/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h
+++ b/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h
@@ -35,13 +35,12 @@
#define CONFIG_VERSION_VARIABLE
#define CONFIG_ENV_VERSION "4.0"
-#define CONFIG_IDENT_STRING " apf9328 patch 4.0"
+#define CONFIG_IDENT_STRING " apf9328 patch 4.1"
#define CONFIG_ARM920T 1 /* this is an ARM920T CPU */
#define CONFIG_IMX 1 /* in a Motorola MC9328MXL Chip */
#define CONFIG_apf9328 1 /* on a Armadeus project board */
#undef CONFIG_USE_IRQ /* don't need use IRQ/FIQ */
-#define CONFIG_SYS_DCACHE_OFF /* fix kernel 2.6.29 boot crash */
/*
* Enable the call to misc_init_r() for miscellaneous platform
* dependent initialization.
@@ -49,7 +48,6 @@
#define CONFIG_MISC_INIT_R
-#define CONFIG_NETCONSOLE 1
/*
* BOOTP options
*/
@@ -213,7 +211,7 @@
#define CONFIG_BOOTCOMMAND "run jffsboot"
#define CONFIG_SYS_AUTOLOAD "no"
-#define CONFIG_MACH_TYPE MACH_TYPE_APF9328
+#define CONFIG_MACH_TYPE 906
#define CONFIG_BOOT_PARAMS_ADDR 0x08000100
#undef CONFIG_SHOW_BOOT_PROGRESS
@@ -242,7 +240,7 @@
#define CONFIG_SYS_MEMTEST_START 0x08000000 /* memtest test area */
#define CONFIG_SYS_MEMTEST_END 0x08700000
-#define CONFIG_SYS_HZ 1000000l /* incrementer freq */
+#define CONFIG_SYS_HZ 1000 /* incrementer freq */
/*
* Definitions related to passing arguments to kernel.
@@ -333,6 +331,9 @@
#define CONFIG_SYS_SDRAM_MBYTE_SYZE 16
+#define PHYS_SDRAM_1 0x08000000 /* SDRAM bank #1 32bits */
+#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
+
/*
* CONFIG_SYS_SDRAM_NUM_COL 8, 9, 10 or 11 column address bits
* CONFIG_SYS_SDRAM_NUM_ROW 11, 12 or 13 row address bits
@@ -347,8 +348,7 @@
#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 8)
/* micron 8MB */
-#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-#define CONFIG_SYS_SDRAM_1_SIZE 0x00800000 /* 8 MB */
+#define PHYS_SDRAM_1_SIZE 0x00800000 /* 8 MB */
#define CONFIG_SYS_SDRAM_NUM_COL 8
#define CONFIG_SYS_SDRAM_NUM_ROW 11
#define CONFIG_SYS_SDRAM_REFRESH 2
@@ -362,8 +362,7 @@
#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 16)
/* micron 16MB */
-#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-#define CONFIG_SYS_SDRAM_1_SIZE 0x01000000 /* 16 MB */
+#define PHYS_SDRAM_1_SIZE 0x01000000 /* 16 MB */
#define CONFIG_SYS_SDRAM_NUM_COL 8
#define CONFIG_SYS_SDRAM_NUM_ROW 12
#define CONFIG_SYS_SDRAM_REFRESH 2
@@ -377,8 +376,7 @@
#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 32)
/* micron 32MB */
-#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-#define CONFIG_SYS_SDRAM_1_SIZE 0x02000000 /* 32 MB */
+#define PHYS_SDRAM_1_SIZE 0x02000000 /* 32 MB */
#define CONFIG_SYS_SDRAM_NUM_COL 9
#define CONFIG_SYS_SDRAM_NUM_ROW 12
#define CONFIG_SYS_SDRAM_REFRESH 2
@@ -392,8 +390,7 @@
#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 64)
/* micron 64MB */
-#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-#define CONFIG_SYS_SDRAM_1_SIZE 0x04000000 /* 64 MB */
+#define PHYS_SDRAM_1_SIZE 0x04000000 /* 64 MB */
#define CONFIG_SYS_SDRAM_NUM_COL 9
#define CONFIG_SYS_SDRAM_NUM_ROW 13
#define CONFIG_SYS_SDRAM_REFRESH 3
@@ -405,8 +402,6 @@
#define CONFIG_SYS_SDRAM_SINGLE_ACCESS 0
#endif
-#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_SDRAM_1_BASE
-
/* lowlevel_linit copy U-Boot at CONFIG_SYS_INIT_SP_ADDR (here in RAM) */
/* making u-boot runnable from flash and also RAM that is usefull to boot */
/* from serial port and from flash with only one version of U-Boot */
@@ -415,7 +410,7 @@
#endif
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE \
- + CONFIG_SYS_SDRAM_1_SIZE - 0x0100000)
+ + PHYS_SDRAM_1_SIZE - 0x0100000)
/*
* Configuration for a maximum 32MB of FLASH memory
@@ -481,8 +476,7 @@
#define CONFIG_DM9000_BASE 0x15C00000
#define DM9000_IO CONFIG_DM9000_BASE
#define DM9000_DATA (CONFIG_DM9000_BASE+2)
-#define CONFIG_NET_MULTI
-
+#define CONFIG_NETCONSOLE 1
/*-----------------------------------------------------------------------
* FPGA stuff
*/
diff --git a/patches/u-boot/2011.12/03-apf9328.patch b/patches/u-boot/2011.12/03-apf9328.patch
index fb5019d..d1abe33 100644
--- a/patches/u-boot/2011.12/03-apf9328.patch
+++ b/patches/u-boot/2011.12/03-apf9328.patch
@@ -120,8 +120,8 @@ Index: u-boot-custom/board/armadeus/apf9328/apf9328.c
+
+int board_init(void)
+{
-+ gd->bd->bi_arch_number = CONFIG_MACH_TYPE;
-+ gd->bd->bi_boot_params = CONFIG_BOOT_PARAMS_ADDR;
++
++ gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100;
+
+ return 0;
+}
@@ -129,18 +129,18 @@ Index: u-boot-custom/board/armadeus/apf9328/apf9328.c
+int dram_init(void)
+{
+ /* dram_init must store complete ramsize in gd->ram_size */
-+ gd->ram_size = get_ram_size((void *)CONFIG_SYS_SDRAM_1_BASE,
-+ CONFIG_SYS_SDRAM_1_SIZE);
++ gd->ram_size = get_ram_size((void *)PHYS_SDRAM_1,
++ PHYS_SDRAM_1_SIZE);
+ return 0;
+}
+
-+void dram_init_banksize(void)
++#ifndef CONFIG_SYS_DCACHE_OFF
++void enable_caches(void)
+{
-+#if (CONFIG_NR_DRAM_BANKS > 0)
-+ gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_1_BASE;
-+ gd->bd->bi_dram[0].size = CONFIG_SYS_SDRAM_1_SIZE;
-+#endif
++ /* Enable D-cache. I-cache is already enabled in start.S */
++ /*dcache_enable(); fix kernel 2.6.29 boot crash first*/
+}
++#endif
+
+/*
+ * Miscellaneous intialization
@@ -1265,7 +1265,7 @@ Index: u-boot-custom/board/armadeus/apf9328/lowlevel_init.S
+
+ adr r0, sdramsetup /* r0 <- current position of code */
+ /* test if we run from flash or RAM */
-+ ldr r1, =CONFIG_SYS_SDRAM_1_BASE
++ ldr r1, =PHYS_SDRAM_1
+ cmp r1, r0 /* don't reloc during debug*/
+ bhi sdramsetup
+ /* test if we run from flash or RAM */
@@ -1279,14 +1279,14 @@ Index: u-boot-custom/board/armadeus/apf9328/lowlevel_init.S
+ ldr r1, =CONFIG_SYS_PRECHARGE_CMD
+ str r1, [r0]
+
-+ ldr r1, =CONFIG_SYS_SDRAM_1_BASE \
++ ldr r1, =PHYS_SDRAM_1 \
+ +CONFIG_SYS_SDRAM_PRECHARGE_ALL_VAL
+ ldr r2, [r1]
+
+ ldr r1, =CONFIG_SYS_AUTOREFRESH_CMD
+ str r1, [r0]
+
-+ ldr r1, =CONFIG_SYS_SDRAM_1_BASE
++ ldr r1, =PHYS_SDRAM_1
+ ldr r2, [r1] /* Issue AutoRefresh Command */
+ ldr r2, [r1]
+ ldr r2, [r1]
@@ -1299,7 +1299,7 @@ Index: u-boot-custom/board/armadeus/apf9328/lowlevel_init.S
+ ldr r1, =CONFIG_SYS_SET_MODE_REG_CMD
+ str r1, [r0]
+
-+ ldr r1, =CONFIG_SYS_SDRAM_1_BASE \
++ ldr r1, =PHYS_SDRAM_1 \
+ +CONFIG_SYS_SDRAM_MODE_REGISTER_VAL
+ str r2, [r1]
+
diff --git a/patches/u-boot/2011.12/05-apf9328-config.patch b/patches/u-boot/2011.12/05-apf9328-config.patch
deleted file mode 100644
index 1a7fb27..0000000
--- a/patches/u-boot/2011.12/05-apf9328-config.patch
+++ /dev/null
@@ -1,1049 +0,0 @@
-apf9328: add default board configuration file
-
-
-Signed-off-by: Eric Jarrige <eri...@ar...>
----
- include/configs/apf9328.h | 1034 +++++++++++++++++++++++++++++++++++++++++++++
- 1 files changed, 1034 insertions(+), 0 deletions(-)
- create mode 100644 include/configs/apf9328.h
-
-diff --git a/include/configs/apf9328.h b/include/configs/apf9328.h
-new file mode 100644
-index 0000000..ef5e54a
---- /dev/null
-+++ b/include/configs/apf9328.h
-@@ -0,0 +1,1034 @@
-+/*
-+ * (C) Copyright 2005-2011 ej Armadeus Project <eri...@ar...>
-+ *
-+ * Configuration settings for the Armadeus Project motherboard 9328.
-+ *
-+ * See file CREDITS for list of people who contributed to this
-+ * project.
-+ *
-+ * 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
-+ *
-+ * 2005/01/14 Initial version taken from the scb9328 configuration file
-+ * 2005/03/10 apf9328 configuration file and trial to improve of
-+ * hardware register control.
-+ * 2005/08/16 added APF9328 fpgas and ethernet
-+ * 2005/12/02 added filesystem boot over NFS
-+ * 2006/11/26 added filesystem boot over NFS
-+ * 2010/03/28 U-Boot 2010.03 migration + change timer unit to ms (fixme)
-+ */
-+
-+#ifndef __CONFIG_H
-+#define __CONFIG_H
-+
-+#define CONFIG_VERSION_VARIABLE
-+#define CONFIG_ENV_VERSION "4.0"
-+#define CONFIG_IDENT_STRING " apf9328 patch 4.0"
-+
-+#define CONFIG_ARM920T 1 /* this is an ARM920T CPU */
-+#define CONFIG_IMX 1 /* in a Motorola MC9328MXL Chip */
-+#define CONFIG_apf9328 1 /* on a Armadeus project board */
-+#undef CONFIG_USE_IRQ /* don't need use IRQ/FIQ */
-+#define CONFIG_SYS_DCACHE_OFF /* fix kernel 2.6.29 boot crash */
-+/*
-+ * Enable the call to misc_init_r() for miscellaneous platform
-+ * dependent initialization.
-+ */
-+
-+#define CONFIG_MISC_INIT_R
-+
-+/*
-+ * BOOTP options
-+ */
-+#define CONFIG_BOOTP_BOOTFILESIZE
-+#define CONFIG_BOOTP_BOOTPATH
-+#define CONFIG_BOOTP_GATEWAY
-+#define CONFIG_BOOTP_HOSTNAME
-+
-+#define CONFIG_BOOTP_SUBNETMASK
-+#define CONFIG_BOOTP_DNS
-+#define CONFIG_BOOTP_DNS2
-+
-+/*
-+ * Select serial console configuration
-+ */
-+#define CONFIG_IMX_SERIAL
-+#define CONFIG_IMX_SERIAL1
-+#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200, 230400 }
-+#define CONFIG_BAUDRATE 115200
-+
-+/*
-+ * Definition of u-boot build in commands. Check out CONFIG_CMD_DFL if
-+ * neccessary in include/cmd_confdefs.h file. (Un)comment for getting
-+ * functionality or size of u-boot code.
-+ */
-+
-+#include <config_cmd_default.h>
-+
-+#define CONFIG_CMD_ASKENV /* ask for env variable */
-+#define CONFIG_CMD_BSP /* Board Specific functions */
-+#define CONFIG_CMD_CACHE /* icache, dcache */
-+#define CONFIG_CMD_DATE /* support for RTC, date/time.. */
-+#define CONFIG_CMD_DHCP /* DHCP Support */
-+#define CONFIG_CMD_DIAG /* Diagnostics */
-+#define CONFIG_CMD_EEPROM /* EEPROM read/write support */
-+#define CONFIG_CMD_FLASH /* flinfo, erase, protect */
-+#define CONFIG_CMD_I2C /* I2C serial bus support */
-+#define CONFIG_CMD_IMLS /* List all found images */
-+#define CONFIG_CMD_IMMAP /* IMMR dump support */
-+#define CONFIG_CMD_JFFS2 /* JFFS2 Support */
-+#define CONFIG_CMD_MTDPARTS /* MTD partition support */
-+#define CONFIG_CMD_PING /* ping support */
-+#define CONFIG_CMD_SAVES /* save S record dump */
-+#define CONFIG_CMD_SETEXPR /* setexpr support */
-+#define CONFIG_CMD_SNTP /* SNTP support */
-+#define CONFIG_CMD_NFS
-+#define CONFIG_CMD_DNS
-+
-+#undef CONFIG_DISPLAY_BOARDINFO
-+#undef CONFIG_DISPLAY_CPUINFO
-+
-+/*
-+ * Select some advanced features of the commande line parser
-+ */
-+#define CONFIG_AUTO_COMPLETE 1 /* Enable auto completion of */
-+ /* commands using TAB */
-+#define CONFIG_SYS_HUSH_PARSER 1 /* enable the "hush" shell */
-+#define CONFIG_SYS_PROMPT_HUSH_PS2 "> " /* secondary prompt string */
-+#define CONFIG_CMDLINE_EDITING 1
-+
-+#define CONFIG_MTD_DEVICE
-+#define CONFIG_MTD_PARTITIONS
-+/*
-+ * Boot options. Setting delay to -1 stops autostart count down.
-+ */
-+#define CONFIG_BOOTDELAY 20
-+#define CONFIG_ZERO_BOOTDELAY_CHECK
-+
-+#define CONFIG_BOOTARGS \
-+ CONFIG_CONSOLE " root=/dev/mtdblock4 rootfstype=jffs2 " MTDPARTS_DEFAULT
-+
-+#define CONFIG_CONSOLE "console=ttySMX0,"MK_STR(CONFIG_BAUDRATE)"n8"
-+#define CONFIG_MTDMAP "physmap-flash.0"
-+#define MTDIDS_DEFAULT "nor0=" CONFIG_MTDMAP
-+#define MTDPARTS_DEFAULT "mtdparts=" CONFIG_MTDMAP ":256k(U-boot)ro," \
-+ "128k(U-boot_env),256k(firmware),2048k(kernel),-(rootfs)"
-+
-+#define CONFIG_EXTRA_ENV_SETTINGS \
-+ "env_version=" CONFIG_ENV_VERSION "\0" \
-+ "fileaddr=" MK_STR(CONFIG_SYS_LOAD_ADDR) "\0" \
-+ "filesize=" MK_STR(CONFIG_SYS_MONITOR_LEN) "\0" \
-+ "console=" CONFIG_CONSOLE "\0" \
-+ "mtdparts=" MTDPARTS_DEFAULT "\0" \
-+ "partition=nor0,4\0" \
-+ "uboot_addr=" MK_STR(CONFIG_SYS_MONITOR_BASE) "\0" \
-+ "uboot_len=" MK_STR(CONFIG_SYS_MONITOR_LEN) "\0" \
-+ "env_addr=" MK_STR(CONFIG_ENV_ADDR) "\0" \
-+ "env_len=" MK_STR(CONFIG_ENV_SIZE) "\0" \
-+ "firmware_addr=" MK_STR(CONFIG_FIRMWARE_ADDR) "\0" \
-+ "firmware_len=" MK_STR(CONFIG_FIRMWARE_LEN) "\0" \
-+ "kernel_addr=" MK_STR(CONFIG_KERNEL_ADDR) "\0" \
-+ "kernel_len=" MK_STR(CONFIG_KERNEL_LEN) "\0" \
-+ "rootfs_addr=" MK_STR(CONFIG_ROOTFS_ADDR) "\0" \
-+ "board_name=" MK_STR(CONFIG_BOARD_NAME) "\0" \
-+ "serverpath=" MK_STR(CONFIG_SRV_PATH) "\0" \
-+ "ntpserverip=217.147.208.1\0" \
-+ "mmcroot=/dev/mmcblk0p1\0" \
-+ "mmcrootfstype=ext2\0" \
-+ "addnfsargs=setenv bootargs ${bootargs} " \
-+ "root=/dev/nfs rw nfsroot=${serverip}:${rootpath}\0" \
-+ "addjffsargs=setenv bootargs ${bootargs} " \
-+ "root=/dev/mtdblock4 rootfstype=jffs2\0" \
-+ "addubifsargs=setenv bootargs ${bootargs} " \
-+ "ubi.mtd=rootfs root=ubi0:rootfs rootfstype=ubifs\0" \
-+ "addmmcargs=setenv bootargs ${bootargs} " \
-+ "root=${mmcroot} rootfstype=${mmcrootfstype}\0" \
-+ "addipargs=setenv bootargs ${bootargs} " \
-+ "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:" \
-+ "${hostname}::off \0" \
-+ "nfsboot=setenv bootargs ${console} ${mtdparts};" \
-+ "run addnfsargs addipargs; bootm ${kernel_addr}\0" \
-+ "jffsboot=setenv bootargs ${console} ${mtdparts};" \
-+ "run addjffsargs addipargs; bootm ${kernel_addr}\0" \
-+ "ubifsboot=setenv bootargs ${console} ${mtdparts};" \
-+ "run addubifsargs addipargs; bootm ${kernel_addr}\0" \
-+ "mmcboot=setenv bootargs ${console} ${mtdparts};" \
-+ "run addmmcargs addipargs; bootm ${kernel_addr}\0" \
-+ "firmware_autoload=0\0" \
-+ "flash_uboot=protect off ${uboot_addr} +${uboot_len};" \
-+ "echo Erasing FLASH;" \
-+ "era ${uboot_addr} +${uboot_len};" \
-+ "if cp.b ${fileaddr} ${uboot_addr} ${filesize};" \
-+ "then protect on ${uboot_addr} +${uboot_len};" \
-+ "echo Flashing of uboot succeed;" \
-+ "else echo Flashing of uboot failed;" \
-+ "fi; \0" \
-+ "flash_firmware=echo Erasing FLASH;" \
-+ "era ${firmware_addr} +${firmware_len};" \
-+ "if cp.b ${fileaddr} ${firmware_addr} ${filesize} ;" \
-+ "then echo Flashing of Firmware succeed;" \
-+ "else echo Flashing of Firmware failed;" \
-+ "fi\0" \
-+ "flash_kernel=echo Erasing FLASH;" \
-+ "era ${kernel_addr} +${kernel_len};" \
-+ "if cp.b ${fileaddr} ${kernel_addr} ${filesize} ;" \
-+ "then echo Flashing of kernel succeed;" \
-+ "else echo Flashing of kernel failed;" \
-+ "fi\0" \
-+ "flash_rootfs=echo Erasing FLASH;" \
-+ "era nor0,4;" \
-+ "if cp.b ${fileaddr} ${rootfs_addr} ${filesize};" \
-+ "then echo Flashing of rootfs succeed;" \
-+ "else echo Flashing of rootfs failed;" \
-+ "fi\0" \
-+ "flash_reset_env=protect off ${env_addr} +${env_len};" \
-+ "era ${env_addr} +${env_len};" \
-+ "echo Erasing of flash environment variables done!\0" \
-+ "download_uboot=tftpboot ${loadaddr} " \
-+ " ${serverpath}${board_name}-u-boot.bin\0" \
-+ "download_kernel=tftpboot ${loadaddr} " \
-+ " ${serverpath}${board_name}-linux.bin\0" \
-+ "download_rootfs=tftpboot ${loadaddr} " \
-+ " ${serverpath}${board_name}-rootfs.jffs2\0" \
-+ "update_uboot=run download_uboot flash_uboot\0" \
-+ "update_kernel=run download_kernel flash_kernel\0" \
-+ "update_rootfs=run download_rootfs flash_rootfs\0" \
-+ "update_all=run download_kernel flash_kernel download_rootfs " \
-+ "flash_rootfs download_uboot flash_uboot\0" \
-+ "unlock_regs=mw 00200008 0; mw 00210008 0\0" \
-+
-+#define CONFIG_BOOTCOMMAND "run jffsboot"
-+#define CONFIG_SYS_AUTOLOAD "no"
-+
-+#define CONFIG_MACH_TYPE MACH_TYPE_APF9328
-+#define CONFIG_BOOT_PARAMS_ADDR 0x08000100
-+
-+#undef CONFIG_SHOW_BOOT_PROGRESS
-+
-+#define CONFIG_ETHADDR
-+#define CONFIG_NETMASK 255.255.255.0
-+#define CONFIG_IPADDR 192.168.000.10
-+#define CONFIG_BOARD_NAME "apf9328"
-+#define CONFIG_HOSTNAME "apf9328"
-+#define CONFIG_GATEWAYIP 192.168.000.1
-+#define CONFIG_SERVERIP 192.168.000.2
-+#define CONFIG_SRV_PATH ""
-+#define CONFIG_ROOTPATH "/tftpboot/apf9328-root"
-+
-+/*
-+ * General options for u-boot. Modify to save memory foot print
-+ */
-+
-+#define CONFIG_SYS_LONGHELP
-+#define CONFIG_SYS_PROMPT "BIOS> " /* prompt string */
-+#define CONFIG_SYS_CBSIZE 2048 /* console I/O buffer */
-+#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
-+#define CONFIG_SYS_MAXARGS 16 /* max command args */
-+#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* bootargs buf size*/
-+
-+#define CONFIG_SYS_MEMTEST_START 0x08000000 /* memtest test area */
-+#define CONFIG_SYS_MEMTEST_END 0x08700000
-+
-+#define CONFIG_SYS_HZ 1000000l /* incrementer freq */
-+
-+/*
-+ * Definitions related to passing arguments to kernel.
-+ */
-+
-+#define CONFIG_CMDLINE_TAG 1 /* send commandline to Kernel */
-+#define CONFIG_SETUP_MEMORY_TAGS 1 /* send memory definition to kernel */
-+#define CONFIG_INITRD_TAG 1 /* send initrd params */
-+
-+/*
-+ * Malloc pool need to host env + 128 Kb reserve for other allocations.
-+ */
-+#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (128<<10))
-+
-+#define CONFIG_STACKSIZE (120<<10) /* stack size */
-+
-+#ifdef CONFIG_USE_IRQ
-+#define CONFIG_STACKSIZE_IRQ (4<<10) /* IRQ stack */
-+#define CONFIG_STACKSIZE_FIQ (4<<10) /* FIQ stack */
-+#endif
-+
-+/*
-+* Clocks configuration
-+*/
-+/*
-+ * PLL configuration
-+ *
-+ * f_{dpll}=2*f{ref}*(MFI+MFN/(MFD+1))/(PD+1)
-+ * f_ref=16,777216MHz
-+ * 32768 Hz xtal
-+ * 0x07B32DA5: 192.0000173
-+ * 0x002a141f: 191,9944MHz
-+ * 0x040b2007: 144MHz
-+ * 0x0FB32DA5: 96.00000864 MHz
-+ * 0x042a141f: 96MHz
-+ * 0x0811140d: 64MHz
-+ * 0x040e200e: 150MHz
-+ * 0x00321431: 200MHz
-+ *
-+ *16 MHz xtal
-+ * 0x08001800: 64MHz mit 16er Quarz
-+ * 0x04001800: 96MHz mit 16er Quarz
-+ * 0x04002400: 144MHz mit 16er Quarz
-+ *
-+ * 31 |x x x x|x x x x|x x x x|x x x x|x x x x|x x x x|x x x x|x x x x| 0
-+ * |XXX|--PD---|-------MFD---------|XXX|--MFI--|-----MFN-----------|
-+ */
-+
-+#define CONFIG_SYS_OSC32 32768 /* 32768 or 32000 Hz crystal */
-+#undef CONFIG_SYS_OSC16 /* there is no external 16MHz external clock */
-+
-+/* MPU CLOCK source before PLL (should be named CONFIG_SYS_SYS_CLK_FREQ) */
-+#define CONFIG_SYS_CLK_FREQ (512*CONFIG_SYS_OSC32)
-+#define CONFIG_SYS_MPCTL0_VAL 0x07B32DA5 /* 192.000017 MHz */
-+#define CONFIG_SYS_MPCTL1_VAL 0
-+
-+/* system clock source before PLL (should be named CONFIG_SYS_SYSPLL_CLK_FREQ)*/
-+#ifndef CONFIG_SYS_OSC16
-+#define CONFIG_SYSPLL_CLK_FREQ (512*CONFIG_SYS_OSC32)
-+#if (CONFIG_SYS_OSC32 == 32000)
-+#define CONFIG_SYS_SPCTL0_VAL 0x043F1437 /* 96 MHz */
-+#define CONFIG_SYS_SPCTL1_VAL 0
-+#define CONFIG_SYS_FREQ 96 /* MHz */
-+#else /* CONFIG_SYS_OSC32 == 32768 */
-+#define CONFIG_SYS_SPCTL0_VAL 0x0FB32DA5 /* 96.000009 MHz */
-+#define CONFIG_SYS_SPCTL1_VAL 0
-+#define CONFIG_SYS_FREQ 96 /* MHz */
-+#endif /* CONFIG_SYS_OSC32 */
-+#else /* CONFIG_SYS_OSC16 in use */
-+#define CONFIG_SYSPLL_CLK_FREQ CONFIG_SYS_OSC16
-+#define CONFIG_SYS_SPCTL0_VAL 0x04001401 /* 96 MHz */
-+#define CONFIG_SYS_SPCTL1_VAL 0x0C000040
-+#define CONFIG_SYS_FREQ 96 /* MHz */
-+#endif /* CONFIG_SYS_OSC16 */
-+
-+/* external bus frequency (have to be a CONFIG_SYS_FREQ ratio) */
-+#define CONFIG_SYS_BUS_FREQ 96 /* 96|48... MHz (BCLOCK and HCLOCK) */
-+#define CONFIG_USB_FREQ 48 /* 48 MHz */
-+#define CONFIG_PERIF1_FREQ 16 /* 16 MHz UART, Timer PWM */
-+#define CONFIG_PERIF2_FREQ 48 /* 48 MHz LCD SD SPI */
-+#define CONFIG_PERIF3_FREQ 16 /* 16 MHz SSI */
-+
-+/*
-+ * SDRAM definition parameter
-+ */
-+/* we have and support only 1 bank of SDRAM */
-+#define CONFIG_NR_DRAM_BANKS 1
-+
-+#define CONFIG_SYS_SDRAM_MBYTE_SYZE 16
-+
-+/*
-+ * CONFIG_SYS_SDRAM_NUM_COL 8, 9, 10 or 11 column address bits
-+ * CONFIG_SYS_SDRAM_NUM_ROW 11, 12 or 13 row address bits
-+ * CONFIG_SYS_SDRAM_REFRESH 0=OFF 1=2048 2=4096 3=8192 refresh
-+ * CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1 X ns clock cycle time when CL=1
-+ * CONFIG_SYS_SDRAM_ROW_PRECHARGE_DELAY X ns SRP
-+ * CONFIG_SYS_SDRAM_ROW_2_COL_DELAY X ns SRCD
-+ * CONFIG_SYS_SDRAM_ROW_CYCLE_DELAY X ns SRC
-+ * CONFIG_SYS_SDRAM_BURST_LENGTH 2^N BYTES (N=0..3)
-+ * CONFIG_SYS_SDRAM_SINGLE_ACCESS 1= single access; 0 = Burst mode
-+ */
-+
-+#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 8)
-+/* micron 8MB */
-+#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-+#define CONFIG_SYS_SDRAM_1_SIZE 0x00800000 /* 8 MB */
-+#define CONFIG_SYS_SDRAM_NUM_COL 8
-+#define CONFIG_SYS_SDRAM_NUM_ROW 11
-+#define CONFIG_SYS_SDRAM_REFRESH 2
-+#define CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1 20
-+#define CONFIG_SYS_SDRAM_ROW_PRECHARGE_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_2_COL_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_CYCLE_DELAY 70
-+#define CONFIG_SYS_SDRAM_BURST_LENGTH 3
-+#define CONFIG_SYS_SDRAM_SINGLE_ACCESS 0
-+#endif
-+
-+#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 16)
-+/* micron 16MB */
-+#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-+#define CONFIG_SYS_SDRAM_1_SIZE 0x01000000 /* 16 MB */
-+#define CONFIG_SYS_SDRAM_NUM_COL 8
-+#define CONFIG_SYS_SDRAM_NUM_ROW 12
-+#define CONFIG_SYS_SDRAM_REFRESH 2
-+#define CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1 20
-+#define CONFIG_SYS_SDRAM_ROW_PRECHARGE_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_2_COL_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_CYCLE_DELAY 70
-+#define CONFIG_SYS_SDRAM_BURST_LENGTH 3
-+#define CONFIG_SYS_SDRAM_SINGLE_ACCESS 0
-+#endif
-+
-+#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 32)
-+/* micron 32MB */
-+#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-+#define CONFIG_SYS_SDRAM_1_SIZE 0x02000000 /* 32 MB */
-+#define CONFIG_SYS_SDRAM_NUM_COL 9
-+#define CONFIG_SYS_SDRAM_NUM_ROW 12
-+#define CONFIG_SYS_SDRAM_REFRESH 2
-+#define CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1 20
-+#define CONFIG_SYS_SDRAM_ROW_PRECHARGE_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_2_COL_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_CYCLE_DELAY 70
-+#define CONFIG_SYS_SDRAM_BURST_LENGTH 3
-+#define CONFIG_SYS_SDRAM_SINGLE_ACCESS 0
-+#endif
-+
-+#if (CONFIG_SYS_SDRAM_MBYTE_SYZE == 64)
-+/* micron 64MB */
-+#define CONFIG_SYS_SDRAM_1_BASE 0x08000000 /* SDRAM bank #1 32bits */
-+#define CONFIG_SYS_SDRAM_1_SIZE 0x04000000 /* 64 MB */
-+#define CONFIG_SYS_SDRAM_NUM_COL 9
-+#define CONFIG_SYS_SDRAM_NUM_ROW 13
-+#define CONFIG_SYS_SDRAM_REFRESH 3
-+#define CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1 20
-+#define CONFIG_SYS_SDRAM_ROW_PRECHARGE_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_2_COL_DELAY 20
-+#define CONFIG_SYS_SDRAM_ROW_CYCLE_DELAY 70
-+#define CONFIG_SYS_SDRAM_BURST_LENGTH 3
-+#define CONFIG_SYS_SDRAM_SINGLE_ACCESS 0
-+#endif
-+
-+#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_SDRAM_1_BASE
-+
-+/* lowlevel_linit copy U-Boot at CONFIG_SYS_INIT_SP_ADDR (here in RAM) */
-+/* making u-boot runnable from flash and also RAM that is usefull to boot */
-+/* from serial port and from flash with only one version of U-Boot */
-+#ifndef CONFIG_SYS_TEXT_BASE
-+#define CONFIG_SYS_TEXT_BASE 0x08000000
-+#endif
-+
-+#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE \
-+ + CONFIG_SYS_SDRAM_1_SIZE - 0x0100000)
-+
-+/*
-+ * Configuration for a maximum 32MB of FLASH memory
-+ */
-+#define CONFIG_SYS_MAX_FLASH_BANKS 1 /* FLASH banks count */
-+#define CONFIG_SYS_MAX_FLASH_SECT 256 /* number of sector in a bank */
-+#define CONFIG_SYS_FLASH_BASE 0x10000000 /* location of flash memory*/
-+
-+/* This should be defined if CFI FLASH device is present. */
-+#define CONFIG_SYS_FLASH_CFI 1
-+#define CONFIG_FLASH_CFI_DRIVER 1
-+#define CONFIG_FLASH_CFI_MTD
-+#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 1
-+#define CONFIG_SYS_FLASH_PROTECTION 1
-+#define CONFIG_SYS_DIRECT_FLASH_TFTP 1
-+#define CONFIG_FLASH_SHOW_PROGRESS 45
-+/*
-+ * This is setting for JFFS2 support in u-boot.
-+ * NOTE: Enable CONFIG_SYS_CMD_JFFS2 for JFFS2 support.
-+ */
-+#define CONFIG_SYS_JFFS_CUSTOM_PART
-+
-+/*
-+ * Environment setup. Definitions of monitor location and size with
-+ * definition of environment setup ends up in 2 possibilities.
-+ * 1. Embeded environment - in u-boot code is space for environment
-+ * 2. Environment is read from predefined sector of flash
-+ * Right now we support 2. possiblity, but expecting no env placed
-+ * on mentioned address right now. This also needs to provide whole
-+ * sector for it - for us 256Kb is really waste of memory. U-boot uses
-+ * default env. and until kernel parameters could be sent to kernel
-+ * env. has no sense to us.
-+ */
-+
-+#define CONFIG_SYS_MONITOR_BASE 0x10000000
-+#define CONFIG_SYS_MONITOR_LEN 0x00040000 /* 256kB ( 2 flash sector ) */
-+#define CONFIG_ENV_IS_IN_FLASH 1
-+#define CONFIG_ENV_ADDR 0x10040000 /* absolute address for now */
-+#define CONFIG_ENV_SIZE 0x00020000
-+#define CONFIG_ENV_SECT_SIZE 0x00020000
-+#define CONFIG_ENV_OVERWRITE 1 /* env is writable now */
-+#define CONFIG_FIRMWARE_ADDR 0x10060000
-+#define CONFIG_FIRMWARE_LEN 0x00040000 /* 256kB ( 2 flash sector ) */
-+#define CONFIG_KERNEL_ADDR 0x100A0000
-+#define CONFIG_KERNEL_LEN 0x00200000 /* 2MB */
-+#define CONFIG_ROOTFS_ADDR 0x102A0000
-+#define CONFIG_ROOTFS_LEN /* entire flash if not specified */
-+
-+/*
-+ * Default load address for user programs and kernel
-+ */
-+#define CONFIG_SYS_LOAD_ADDR 0x08000000
-+#define CONFIG_LOADADDR 0x08000000
-+#define CONFIG_SYS_TFTP_LOADADDR 0x08000000
-+/*
-+ * Hardware drivers
-+ */
-+
-+/* DM9000 ethernet chipset assigned to CS4 */
-+/* For the apf board DM9000 base is 0x15C00000 and data is base+2 */
-+/* For the apm board DM9000 base is 0x15C3FFFC and data is base+4 */
-+#define CONFIG_DRIVER_DM9000 1
-+#define CONFIG_DM9000_BASE 0x15C00000
-+#define DM9000_IO CONFIG_DM9000_BASE
-+#define DM9000_DATA (CONFIG_DM9000_BASE+2)
-+#define CONFIG_NET_MULTI
-+
-+/*-----------------------------------------------------------------------
-+ * FPGA stuff
-+ */
-+#define CONFIG_FPGA_COUNT 1
-+/* only digital value for CONFIG_FPGA is supported (investigation pending) */
-+#define CONFIG_FPGA 0x801 /* CONFIG_SYS_XILINX_SPARTAN3 */
-+#define CONFIG_FPGA_XILINX
-+#define CONFIG_FPGA_SPARTAN3
-+#define CONFIG_SYS_FPGA_WAIT 250
-+#define CONFIG_SYS_FPGA_PROG_FEEDBACK
-+#define CONFIG_SYS_FPGA_CHECK_CTRLC
-+#define CONFIG_SYS_FPGA_CHECK_ERROR
-+
-+/* FPGA program pin configuration */
-+#define CONFIG_SYS_FPGA_PRG (GPIO_PORTB | 18) /* prog pin (SSI output) */
-+#define CONFIG_SYS_FPGA_CLK (GPIO_PORTB | 19) /* clk pin (SSI output) */
-+#define CONFIG_SYS_FPGA_DATA (GPIO_PORTB | 17) /* data pin (SSI output) */
-+#define CONFIG_SYS_FPGA_INIT (GPIO_PORTB | 15) /* init pin (SSI input) */
-+#define CONFIG_SYS_FPGA_DONE (GPIO_PORTB | 16) /* done pin (SSI input) */
-+
-+/*
-+ * I2C bus
-+ */
-+
-+#define CONFIG_HARD_I2C 1 /* I2C with hardware support */
-+
-+#define CONFIG_SYS_I2C_SPEED 400000 /* 400 kHz */
-+#define CONFIG_SYS_I2C_SLAVE 0x7F
-+
-+#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 /* EEPROM 24LC256 */
-+#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2 /* bytes of address */
-+/* mask of address bits that overflow into the "EEPROM chip address" */
-+/*#define CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW 0x00*/
-+#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 6
-+#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10 /* takes up to 10 msec */
-+
-+#define CONFIG_RTC_DS1374
-+/*#define CONFIG_MMC 1
-+*/
-+/*
-+ * External interfaces module
-+ *
-+ * CSxU_VAL:
-+ * 63| x |x|x x|x x x x|x x| x | x |x x x x|48
-+ * |DTACK_SEL|0|BCD| BCS |PSZ|PME|SYNC| DOL |
-+ *
-+ * 47| x x | x x x x x x | x | x x x x | x x x x |32
-+ * | CNC | WSC | 0 | WWS | EDC |
-+ *
-+ * CSxL_VAL:
-+ * 31| x x x x | x x x x | x x x x | x x x x |24
-+ * | OEA | OEN | WEA | WEN |
-+ * 23|x x x x| x | x x x | x x x x |x x| x | x | 0
-+ * | CSA |EBC| DSZ | 0|SP|0|WP|0 0|PA |CSEN |
-+ */
-+
-+/* CS0 configuration for flash memory Micron MT28F128J3-150 */
-+#define CONFIG_SYS_CS0_CHIP_SELECT_ENABLE 1 /* 1 : enable CS0 */
-+#define CONFIG_SYS_CS0_DATA_PORT_SIZE 0x5 /* 5=16 bits on D[15:0] */
-+ /* 3=8bits on D[7:0] 6=32 bits..*/
-+#define CONFIG_SYS_CS0_SUPERVISOR_PROTECT 0 /* 1: user access prohibited*/
-+#define CONFIG_SYS_CS0_WRITE_PROTECT 0 /* 1: write prohibited*/
-+#define CONFIG_SYS_CS0_EB_SIGNAL_CONTROL_WRITE 1 /* 1 EB is as write signal */
-+#define CONFIG_SYS_CS0_READ_CYC_LGTH 150 /* ns */
-+#define CONFIG_SYS_CS0_OE_ASSERT_DLY 0 /* ns */
-+#define CONFIG_SYS_CS0_OE_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS0_CS_NEG_LGTH 0 /* ns CS HIGH to CS LOW : tCWH*/
-+#define CONFIG_SYS_CS0_XTRA_DEAD_CYC 35 /* ns from CS HIGH to tristate*/
-+
-+#define CONFIG_SYS_CS0_WRITE_XTRA_LGTH 0 /* ns */
-+#define CONFIG_SYS_CS0_EB_ASSERT_DLY 0 /* ns */
-+#define CONFIG_SYS_CS0_EB_NEG_DLY 0 /* ns */
-+#define CONFIG_SYS_CS0_CS_ASSERT_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS0_SYNC_ENABLE 1 /* enable sync burst mode */
-+#define CONFIG_SYS_CS0_SYNC_PAGE_MODE_EMUL 1 /* enable page mode emulation*/
-+#define CONFIG_SYS_CS0_SYNC_PAGE_SIZE 0 /* 4 words page size (8bytes)*/
-+#define CONFIG_SYS_CS0_SYNC_BURST_CLK_START 0 /* 0 ns burst clock delay */
-+#define CONFIG_SYS_CS0_SYNC_BURST_CLK_DIV 0 /* 0 : divider is 1 */
-+#define CONFIG_SYS_CS0_SYNC_DAT_OUT_LGTH 25 /* ns */
-+
-+/* CS1 configuration for */
-+#define CONFIG_SYS_CS1_CHIP_SELECT_ENABLE 1 /* 1 : enable CS0 peripherals */
-+#define CONFIG_SYS_CS1_PIN_ASSERT 0 /* chip select pin state when */
-+ /* chip select disabled */
-+#define CONFIG_SYS_CS1_DATA_PORT_SIZE 0x5 /* 5=16 bits on D[15:0] pins */
-+ /* 3=8bits on D[7:0] 6=32 bits.. */
-+#define CONFIG_SYS_CS1_SUPERVISOR_PROTECT 0 /* 1 : user mode access prohibited */
-+#define CONFIG_SYS_CS1_WRITE_PROTECT 0 /* 1 : write access prohibited */
-+#define CONFIG_SYS_CS1_EB_SIGNAL_CONTROL_WRITE 1 /* 1 when EB is used as write signal */
-+
-+#define CONFIG_SYS_CS1_READ_CYC_LGTH 50 /* ns */
-+#define CONFIG_SYS_CS1_OE_ASSERT_DLY 0 /* ns */
-+#define CONFIG_SYS_CS1_OE_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS1_CS_NEG_LGTH 0 /* max 30 ns CS HIGH to CS LOW at 100MHz */
-+#define CONFIG_SYS_CS1_XTRA_DEAD_CYC 0 /* ns from CS HIGH to tristate bus */
-+
-+#define CONFIG_SYS_CS1_WRITE_XTRA_LGTH 0 /* ns */
-+#define CONFIG_SYS_CS1_EB_ASSERT_DLY 0 /* ns */
-+#define CONFIG_SYS_CS1_EB_NEG_DLY 0 /* ns */
-+#define CONFIG_SYS_CS1_CS_ASSERT_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS1_SYNC_ENABLE 0 /* enable synchronous burst mode */
-+#define CONFIG_SYS_CS1_SYNC_PAGE_MODE_EMUL 0 /* enable page mode emulation */
-+#define CONFIG_SYS_CS1_SYNC_PAGE_SIZE 0 /* 4 words page size (8bytes) */
-+#define CONFIG_SYS_CS1_SYNC_BURST_CLK_START 0 /* 0 ns burst clock delay */
-+#define CONFIG_SYS_CS1_SYNC_BURST_CLK_DIV 0 /* 0 : divider is 1 */
-+#define CONFIG_SYS_CS1_SYNC_DAT_OUT_LGTH 0 /* ns */
-+
-+/* CS2 configuration for */
-+#define CONFIG_SYS_CS2_CHIP_SELECT_ENABLE 0 /* 1 : enable CS0 peripherals */
-+#define CONFIG_SYS_CS2_PIN_ASSERT 0 /* chip select pin state when */
-+ /*chip select disabled */
-+#define CONFIG_SYS_CS2_DATA_PORT_SIZE 0x5 /* 5=16 bits on D[15:0] pins */
-+ /* 3=8bits on D[7:0] 6=32 bits.. */
-+#define CONFIG_SYS_CS2_SUPERVISOR_PROTECT 0 /* 1 : user mode access prohibited */
-+#define CONFIG_SYS_CS2_WRITE_PROTECT 0 /* 1 : write access prohibited */
-+#define CONFIG_SYS_CS2_EB_SIGNAL_CONTROL_WRITE 1 /* 1 when EB is used as write signal */
-+
-+#define CONFIG_SYS_CS2_READ_CYC_LGTH 0 /* ns */
-+#define CONFIG_SYS_CS2_OE_ASSERT_DLY 0 /* ns */
-+#define CONFIG_SYS_CS2_OE_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS2_CS_NEG_LGTH 0 /* max 30 ns CS HIGH to CS LOW at 100MHz */
-+#define CONFIG_SYS_CS2_XTRA_DEAD_CYC 0 /* ns from CS HIGH to tristate bus */
-+
-+#define CONFIG_SYS_CS2_WRITE_XTRA_LGTH 0 /* ns */
-+#define CONFIG_SYS_CS2_EB_ASSERT_DLY 0 /* ns */
-+#define CONFIG_SYS_CS2_EB_NEG_DLY 0 /* ns */
-+#define CONFIG_SYS_CS2_CS_ASSERT_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS2_SYNC_ENABLE 0 /* enable synchronous burst mode */
-+#define CONFIG_SYS_CS2_SYNC_PAGE_MODE_EMUL 0 /* enable page mode emulation */
-+#define CONFIG_SYS_CS2_SYNC_PAGE_SIZE 0 /* 4 words page size (8bytes) */
-+#define CONFIG_SYS_CS2_SYNC_BURST_CLK_START 0 /* 0 ns burst clock delay */
-+#define CONFIG_SYS_CS2_SYNC_BURST_CLK_DIV 0 /* 0 : divider is 1 */
-+#define CONFIG_SYS_CS2_SYNC_DAT_OUT_LGTH 0 /* ns */
-+
-+/* CS3 configuration for ISP1760 */
-+#define CONFIG_SYS_CS3_CHIP_SELECT_ENABLE 1 /* 1 : enable CS0 peripherals */
-+#define CONFIG_SYS_CS3_PIN_ASSERT 0 /* chip select pin state when */
-+ /* chip select disabled */
-+#define CONFIG_SYS_CS3_DATA_PORT_SIZE 0x5 /* 5=16 bits on D[15:0] pins */
-+ /* 3=8bits on D[7:0] 6=32 bits.. */
-+#define CONFIG_SYS_CS3_SUPERVISOR_PROTECT 0 /* 1: user mode access prohibited */
-+#define CONFIG_SYS_CS3_WRITE_PROTECT 0 /* 1: write access prohibited */
-+#define CONFIG_SYS_CS3_EB_SIGNAL_CONTROL_WRITE 1 /* 1 when EB is used as write signal */
-+
-+#define CONFIG_SYS_CS3_READ_CYC_LGTH 110 /* ns */
-+#define CONFIG_SYS_CS3_OE_ASSERT_DLY 45 /* ns */
-+#define CONFIG_SYS_CS3_OE_NEG_DLY 40 /* ns */
-+
-+#define CONFIG_SYS_CS3_CS_NEG_LGTH 30 /* max 30 ns CS HIGH to CS LOW at 100MHz */
-+#define CONFIG_SYS_CS3_XTRA_DEAD_CYC 0 /* ns from CS HIGH to tristate bus */
-+
-+#define CONFIG_SYS_CS3_WRITE_XTRA_LGTH 0 /* ns */
-+#define CONFIG_SYS_CS3_EB_ASSERT_DLY 45 /* ns */
-+#define CONFIG_SYS_CS3_EB_NEG_DLY 45 /* ns */
-+#define CONFIG_SYS_CS3_CS_ASSERT_NEG_DLY 35 /* ns */
-+
-+#define CONFIG_SYS_CS3_SYNC_ENABLE 0 /* enable synchronous burst mode */
-+#define CONFIG_SYS_CS3_SYNC_PAGE_MODE_EMUL 0 /* enable page mode emulation */
-+#define CONFIG_SYS_CS3_SYNC_PAGE_SIZE 0 /* 4 words page size (8bytes) */
-+#define CONFIG_SYS_CS3_SYNC_BURST_CLK_START 0 /* 0 ns burst clock delay */
-+#define CONFIG_SYS_CS3_SYNC_BURST_CLK_DIV 0 /* 0 : divider is 1 */
-+#define CONFIG_SYS_CS3_SYNC_DAT_OUT_LGTH 0 /* ns */
-+
-+/* CS4 configuration for DM9000 ethernet chipset */
-+#define CONFIG_SYS_CS4_CHIP_SELECT_ENABLE 1 /* 1 : enable CS0 peripherals */
-+#define CONFIG_SYS_CS4_PIN_ASSERT 0 /* chip select pin state when */
-+ /* chip select disabled */
-+#define CONFIG_SYS_CS4_DATA_PORT_SIZE 0x5 /* 5=16 bits on D[15:0] pins */
-+ /* 3=8bits on D[7:0] 6=32 bits.. */
-+#define CONFIG_SYS_CS4_SUPERVISOR_PROTECT 0 /* 1 : user mode access prohibited */
-+#define CONFIG_SYS_CS4_WRITE_PROTECT 0 /* 1 : write access prohibited */
-+#define CONFIG_SYS_CS4_EB_SIGNAL_CONTROL_WRITE 1 /* 1 when EB is used as write signal */
-+
-+#define CONFIG_SYS_CS4_READ_CYC_LGTH 72 /* ns */
-+#define CONFIG_SYS_CS4_OE_ASSERT_DLY 5 /* ns */
-+#define CONFIG_SYS_CS4_OE_NEG_DLY 45 /* ns */
-+
-+#define CONFIG_SYS_CS4_CS_NEG_LGTH 30 /* max 30 ns CS HIGH to CS LOW at 100MHz */
-+#define CONFIG_SYS_CS4_XTRA_DEAD_CYC 0 /* ns from CS HIGH to tristate bus */
-+
-+#define CONFIG_SYS_CS4_WRITE_XTRA_LGTH 0 /* ns */
-+#define CONFIG_SYS_CS4_EB_ASSERT_DLY 5 /* ns */
-+#define CONFIG_SYS_CS4_EB_NEG_DLY 45 /* ns */
-+#define CONFIG_SYS_CS4_CS_ASSERT_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS4_SYNC_ENABLE 0 /* enable synchronous burst mode */
-+#define CONFIG_SYS_CS4_SYNC_PAGE_MODE_EMUL 0 /* enable page mode emulation */
-+#define CONFIG_SYS_CS4_SYNC_PAGE_SIZE 0 /* 4 words page size (8bytes) */
-+#define CONFIG_SYS_CS4_SYNC_BURST_CLK_START 0 /* 0 ns burst clock delay */
-+#define CONFIG_SYS_CS4_SYNC_BURST_CLK_DIV 0 /* 0 : divider is 1 */
-+#define CONFIG_SYS_CS4_SYNC_DAT_OUT_LGTH 0 /* ns */
-+
-+/* CS5 configuration for */
-+#define CONFIG_SYS_CS5_CHIP_SELECT_ENABLE 1 /* 1 : enable CS0 peripherals */
-+#define CONFIG_SYS_CS5_PIN_ASSERT 0 /* chip select pin state when */
-+ /* chip select disabled */
-+#define CONFIG_SYS_CS5_DATA_PORT_SIZE 0x5 /* 5=16 bits on D[15:0] pins */
-+ /* 3=8bits on D[7:0] 6=32 bits.. */
-+#define CONFIG_SYS_CS5_SUPERVISOR_PROTECT 0 /* 1: user mode access prohibited */
-+#define CONFIG_SYS_CS5_WRITE_PROTECT 0 /* 1 : write access prohibited */
-+#define CONFIG_SYS_CS5_EB_SIGNAL_CONTROL_WRITE 1 /* 1 when EB is used as write signal */
-+#define CONFIG_SYS_CS5_DTACK_SELECT 1 /* Activate DTACK fonction */
-+ /* (asynchrone bus) */
-+
-+#define CONFIG_SYS_CS5_READ_CYC_LGTH -1 /* ns or -1 to DTACK function */
-+#define CONFIG_SYS_CS5_OE_ASSERT_DLY 10 /* ns */
-+#define CONFIG_SYS_CS5_OE_NEG_DLY 10 /* ns */
-+
-+#define CONFIG_SYS_CS5_CS_NEG_LGTH 10 /* max 30 ns CS HIGH to CS LOW at 100MHz */
-+#define CONFIG_SYS_CS5_XTRA_DEAD_CYC 0 /* ns from CS HIGH to tristate bus */
-+
-+#define CONFIG_SYS_CS5_WRITE_XTRA_LGTH 0 /* ns */
-+#define CONFIG_SYS_CS5_EB_ASSERT_DLY 10 /* ns */
-+#define CONFIG_SYS_CS5_EB_NEG_DLY 10 /* ns */
-+#define CONFIG_SYS_CS5_CS_ASSERT_NEG_DLY 0 /* ns */
-+
-+#define CONFIG_SYS_CS5_SYNC_ENABLE 0 /* enable synchron burst mode */
-+#define CONFIG_SYS_CS5_SYNC_PAGE_MODE_EMUL 0 /* enable page mode emulation */
-+#define CONFIG_SYS_CS5_SYNC_PAGE_SIZE 0 /* 4 words page size (8bytes) */
-+#define CONFIG_SYS_CS5_SYNC_BURST_CLK_START 0 /* 0 ns burst clock delay */
-+#define CONFIG_SYS_CS5_SYNC_BURST_CLK_DIV 0 /* 0 : divider is 1 */
-+#define CONFIG_SYS_CS5_SYNC_DAT_OUT_LGTH 0 /* ns */
-+
-+/*
-+ * Default configuration for GPIOs and peripherals
-+ */
-+#define CONFIG_SYS_DDIR_A_VAL 0x00000000
-+#define CONFIG_SYS_OCR1_A_VAL 0x00000000
-+#define CONFIG_SYS_OCR2_A_VAL 0x00000000
-+#define CONFIG_SYS_ICFA1_A_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFA2_A_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB1_A_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB2_A_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_DR_A_VAL 0x00000000
-+
-+/* Setup for PA23 which is Reset Default PA23 but has to become CS5 */
-+#define CONFIG_SYS_GIUS_A_VAL 0x00007FF8
-+#define CONFIG_SYS_ICR1_A_VAL 0x00000000
-+#define CONFIG_SYS_ICR2_A_VAL 0x00000000
-+#define CONFIG_SYS_IMR_A_VAL 0x00000000
-+#define CONFIG_SYS_GPR_A_VAL 0x00000000
-+#define CONFIG_SYS_PUEN_A_VAL 0xFFFFFFFF
-+
-+#define CONFIG_SYS_DDIR_B_VAL 0x00000000
-+#define CONFIG_SYS_OCR1_B_VAL 0x00000000
-+#define CONFIG_SYS_OCR2_B_VAL 0x00000000
-+#define CONFIG_SYS_ICFA1_B_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFA2_B_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB1_B_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB2_B_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_DR_B_VAL 0x00000000
-+#define CONFIG_SYS_GIUS_B_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICR1_B_VAL 0x00000000
-+#define CONFIG_SYS_ICR2_B_VAL 0x00000000
-+#define CONFIG_SYS_IMR_B_VAL 0x00000000
-+#define CONFIG_SYS_GPR_B_VAL 0x00000000
-+#define CONFIG_SYS_PUEN_B_VAL 0xFFFFFFFF
-+
-+#define CONFIG_SYS_DDIR_C_VAL 0x00000000
-+#define CONFIG_SYS_OCR1_C_VAL 0x00000000
-+#define CONFIG_SYS_OCR2_C_VAL 0x00000000
-+#define CONFIG_SYS_ICFA1_C_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFA2_C_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB1_C_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB2_C_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_DR_C_VAL 0x00000000
-+#define CONFIG_SYS_GIUS_C_VAL 0x0007FFFF
-+#define CONFIG_SYS_ICR1_C_VAL 0x00000000
-+#define CONFIG_SYS_ICR2_C_VAL 0x00000000
-+#define CONFIG_SYS_IMR_C_VAL 0x00000000
-+#define CONFIG_SYS_GPR_C_VAL 0x00000000
-+#define CONFIG_SYS_PUEN_C_VAL 0xF913FFFF
-+
-+#define CONFIG_SYS_DDIR_D_VAL 0x00000000
-+#define CONFIG_SYS_OCR1_D_VAL 0x00000000
-+#define CONFIG_SYS_OCR2_D_VAL 0x00000000
-+#define CONFIG_SYS_ICFA1_D_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFA2_D_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB1_D_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICFB2_D_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_DR_D_VAL 0x00000000
-+#define CONFIG_SYS_GIUS_D_VAL 0xFFFFFFFF
-+#define CONFIG_SYS_ICR1_D_VAL 0x00000000
-+#define CONFIG_SYS_ICR2_D_VAL 0x00000000
-+#define CONFIG_SYS_IMR_D_VAL 0x00000000
-+#define CONFIG_SYS_GPR_D_VAL 0x00000000
-+#define CONFIG_SYS_PUEN_D_VAL 0xFFFFFFFF
-+
-+#define CONFIG_SYS_GPCR_VAL 0x000003AB
-+
-+/* FMCR Bit 1 becomes 0 to make CS3 if we have only one sdram bank*/
-+#if (CONFIG_NR_DRAM_BANKS == 1)
-+#define CONFIG_SYS_FMCR_VAL 0x00000001
-+#elif (CONFIG_NR_DRAM_BANKS == 2)
-+#define CONFIG_SYS_FMCR_VAL 0x00000003
-+#endif
-+
-+/*
-+ * FIXME: From here, there should not be any user configuration.
-+ * All Equations are automatic
-+ */
-+
-+#define CONFIG_SYS_HCLK_LGTH (1000/CONFIG_SYS_BUS_FREQ) /* ns */
-+
-+/* USB 48 MHz ; BUS 96MHz*/
-+#ifdef CONFIG_SYS_OSC16
-+#define CSCR_MASK 0x23030003
-+#else
-+#define CSCR_MASK 0x23000003
-+#endif
-+#define CONFIG_SYS_CSCR_VAL\
-+ (CSCR_MASK \
-+ |((((CONFIG_SYS_FREQ/CONFIG_USB_FREQ)-1)&0x07)<<26) \
-+ |((((CONFIG_SYS_FREQ/CONFIG_SYS_BUS_FREQ)-1)&0x0F)<<10))
-+
-+/* PERCLKx 16MHz */
-+#define CONFIG_SYS_PCDR_VAL\
-+ (((((CONFIG_SYS_FREQ/CONFIG_PERIF1_FREQ)-1)&0x0F)<<0) \
-+ |((((CONFIG_SYS_FREQ/CONFIG_PERIF2_FREQ)-1)&0x0F)<<4) \
-+ |((((CONFIG_SYS_FREQ/CONFIG_PERIF3_FREQ)-1)&0x7F)<<16))
-+
-+/* SDRAM controller programming Values */
-+#if ((CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1 > (3*CONFIG_SYS_HCLK_LGTH))\
-+ || (CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1 < 1))
-+#define REG_FIELD_SCL_VAL 3
-+#else
-+#define REG_FIELD_SCL_VAL\
-+ ((CONFIG_SYS_SDRAM_CLOCK_CYCLE_CL_1+CONFIG_SYS_HCLK_LGTH-1)\
-+ /CONFIG_SYS_HCLK_LGTH)
-+#endif
-+
-+#if ((CONFIG_SYS_SDRAM_ROW_PRECHARGE_DELAY > (2*CONFIG_SYS_HCLK_LGTH))\
-+ || (CONFIG_SYS_SDRAM_ROW_PRECHARGE_DELAY < 1))
-+#define REG_FIELD_SRP_VAL 0
-+#else
-+#define REG_FIELD_SRP_VAL 1
-+#endif
-+
-+#if (CONFIG_SYS_SDRAM_ROW_2_COL_DELAY > (3*CONFIG_SYS_HCLK_LGTH))
-+#define REG_FIELD_SRCD_VAL 0
-+#else
-+#define REG_FIELD_SRCD_VAL\
-+ ((CONFIG_SYS_SDRAM_ROW_2_COL_DELAY+CONFIG_SYS_HCLK_LGTH-1)\
-+ /CONFIG_SYS_HCLK_LGTH)
-+#endif
-+
-+#if (CONFIG_SYS_SDRAM_ROW_CYCLE_DELAY > (7*CONFIG_SYS_HCLK_LGTH))
-+#define REG_FIELD_SRC_VAL 0
-+#else
-+#define REG_FIELD_SRC_VAL\
-+ ((CONFIG_SYS_SDRAM_ROW_CYCLE_DELAY+CONFIG_SYS_HCLK_LGTH-1)\
-+ /CONFIG_SYS_HCLK_LGTH)
-+#endif
-+
-+#define REG_SDCTL_BASE_CONFIG (0x800a1000\
-+ | (((CONFIG_SYS_SDRAM_NUM_ROW-11)&0x3)<<24)\
-+ | (((CONFIG_SYS_SDRAM_NUM_COL-8)&0x3)<<20)\
-+ | (((CONFIG_SYS_SDRAM_REFRESH)&0x3)<<14)\
-+ | (((REG_FIELD_SCL_VAL)&0x3)<<8)\
-+ | (((REG_FIELD_SRP_VAL)&0x1)<<6)\
-+ | (((REG_FIELD_SRCD_VAL)&0x3)<<4)\
-+ | (((REG_FIELD_SRC_VAL)&0x7)<<0))
-+
-+#define CONFIG_SYS_NORMAL_RW_CMD ((0x0<<28)+REG_SDCTL_BASE_CONFIG)
-+#define CONFIG_SYS_PRECHARGE_CMD ((0x1<<28)+REG_SDCTL_BASE_CONFIG)
-+#define CONFIG_SYS_AUTOREFRESH_CMD ((0x2<<28)+REG_SDCTL_BASE_CONFIG)
-+#define CONFIG_SYS_SET_MODE_REG_CMD ((0x3<<28)+REG_SDCTL_BASE_CONFIG)
-+
-+/* Issue Mode register Command to SDRAM*/
-+#define CONFIG_SYS_SDRAM_MODE_REGISTER_VAL\
-+ ((((CONFIG_SYS_SDRAM_BURST_LENGTH)&0x7)<<(CONFIG_SYS_SDRAM_NUM_COL+4))\
-+ | (((REG_FIELD_SCL_VAL)&0x3)<<(CONFIG_SYS_SDRAM_NUM_COL+4+4))\
-+ | (((CONFIG_SYS_SDRAM_SINGLE_ACCESS)&0x1)\
-+ <<(CONFIG_SYS_SDRAM_NUM_COL+4+9)))
-+
-+/* Issue Precharge all Command to SDRAM*/
-+#define CONFIG_SYS_SDRAM_PRECHARGE_ALL_VAL\
-+ (((CONFIG_SYS_SDRAM_SINGLE_ACCESS)&0x1)<<(CONFIG_SYS_SDRAM_NUM_COL+4+9))
-+
-+/*
-+ * CSxU_VAL:
-+ * 63| x |x|x x|x x x x|x x| x | x |x x x x|48
-+ * |DTACK_SEL|0|BCD| BCS |PSZ|PME|SYNC| DOL |
-+ *
-+ * 47| x x | x x x x x x | x | x x x x | x x x x |32
-+ * | CNC | WSC | 0 | WWS | EDC |
-+ *
-+ * CSxL_VAL:
-+ * 31| x x x x | x x x x | x x x x | x x x x |24
-+ * | OEA | OEN | WEA | WEN |
-+ * 23|x x x x| x | x x x | x x x x |x x| x | x | 0
-+ * | CSA |EBC| DSZ | 0|SP|0|WP|0 0|PA |CSEN |
-+ */
-+#define CONFIG_SYS_CS0U_VAL\
-+ ((((CONFIG_SYS_CS0_XTRA_DEAD_CYC+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)\
-+ |((((CONFIG_SYS_CS0_WRITE_XTRA_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<4)\
-+ |(((((CONFIG_SYS_CS0_READ_CYC_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)-1)&0x3F)<<8)\
-+ |((((CONFIG_SYS_CS0_CS_NEG_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x03)<<14)\
-+ |((((CONFIG_SYS_CS0_SYNC_DAT_OUT_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |((CONFIG_SYS_CS0_SYNC_ENABLE&0x01)<<20)\
-+ |((CONFIG_SYS_CS0_SYNC_PAGE_MODE_EMUL&0x01)<<21)\
-+ |((CONFIG_SYS_CS0_SYNC_PAGE_SIZE&0x03)<<22)\
-+ |((((CONFIG_SYS_CS0_SYNC_BURST_CLK_START+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |((CONFIG_SYS_CS0_SYNC_BURST_CLK_DIV&0x03)<<28))
-+
-+#define CONFIG_SYS_CS0L_VAL\
-+ ((CONFIG_SYS_CS0_CHIP_SELECT_ENABLE&0x01)\
-+ |((CONFIG_SYS_CS0_WRITE_PROTECT&0x01)<<4)\
-+ |((CONFIG_SYS_CS0_SUPERVISOR_PROTECT&0x01)<<6)\
-+ |((CONFIG_SYS_CS0_DATA_PORT_SIZE&0x07)<<8)\
-+ |((CONFIG_SYS_CS0_EB_SIGNAL_CONTROL_WRITE&0x01)<<11)\
-+ |((((CONFIG_SYS_CS0_CS_ASSERT_NEG_DLY+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<12)\
-+ |(((((CONFIG_SYS_CS0_EB_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |(((((CONFIG_SYS_CS0_EB_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<20)\
-+ |(((((CONFIG_SYS_CS0_OE_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |(((((CONFIG_SYS_CS0_OE_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<28))
-+
-+#define CONFIG_SYS_CS1U_VAL\
-+ ((((CONFIG_SYS_CS1_XTRA_DEAD_CYC+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)\
-+ |((((CONFIG_SYS_CS1_WRITE_XTRA_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<4)\
-+ |(((((CONFIG_SYS_CS1_READ_CYC_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)-1)&0x3F)<<8)\
-+ |((((CONFIG_SYS_CS1_CS_NEG_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x03)<<14)\
-+ |((((CONFIG_SYS_CS1_SYNC_DAT_OUT_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |((CONFIG_SYS_CS1_SYNC_ENABLE&0x01)<<20)\
-+ |((CONFIG_SYS_CS1_SYNC_PAGE_MODE_EMUL&0x01)<<21)\
-+ |((CONFIG_SYS_CS1_SYNC_PAGE_SIZE&0x03)<<22)\
-+ |((((CONFIG_SYS_CS1_SYNC_BURST_CLK_START+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |((CONFIG_SYS_CS1_SYNC_BURST_CLK_DIV&0x03)<<28))
-+
-+#define CONFIG_SYS_CS1L_VAL\
-+ ((CONFIG_SYS_CS1_CHIP_SELECT_ENABLE&0x01)\
-+ |((CONFIG_SYS_CS1_PIN_ASSERT&0x01)<<1)\
-+ |((CONFIG_SYS_CS1_WRITE_PROTECT&0x01)<<4)\
-+ |((CONFIG_SYS_CS1_SUPERVISOR_PROTECT&0x01)<<6)\
-+ |((CONFIG_SYS_CS1_DATA_PORT_SIZE&0x07)<<8)\
-+ |((CONFIG_SYS_CS1_EB_SIGNAL_CONTROL_WRITE&0x01)<<11)\
-+ |((((CONFIG_SYS_CS1_CS_ASSERT_NEG_DLY+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<12)\
-+ |(((((CONFIG_SYS_CS1_EB_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |(((((CONFIG_SYS_CS1_EB_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<20)\
-+ |(((((CONFIG_SYS_CS1_OE_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |(((((CONFIG_SYS_CS1_OE_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<28))
-+
-+#define CONFIG_SYS_CS2U_VAL\
-+ (((((CONFIG_SYS_CS2_XTRA_DEAD_CYC+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)\
-+ |((((CONFIG_SYS_CS2_WRITE_XTRA_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<4)\
-+ |(((((CONFIG_SYS_CS2_READ_CYC_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)-1)&0x3F)<<8)\
-+ |((((CONFIG_SYS_CS2_CS_NEG_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x03)<<14)\
-+ |(((CONFIG_SYS_CS2_SYNC_DAT_OUT_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |((CONFIG_SYS_CS2_SYNC_ENABLE&0x01)<<20)\
-+ |((CONFIG_SYS_CS2_SYNC_PAGE_MODE_EMUL&0x01)<<21)\
-+ |((CONFIG_SYS_CS2_SYNC_PAGE_SIZE&0x03)<<22)\
-+ |((((CONFIG_SYS_CS2_SYNC_BURST_CLK_START+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |((CONFIG_SYS_CS2_SYNC_BURST_CLK_DIV&0x03)<<28))
-+
-+#define CONFIG_SYS_CS2L_VAL\
-+ ((CONFIG_SYS_CS2_CHIP_SELECT_ENABLE&0x01)\
-+ |((CONFIG_SYS_CS2_PIN_ASSERT&0x01)<<1)\
-+ |((CONFIG_SYS_CS2_WRITE_PROTECT&0x01)<<4)\
-+ |((CONFIG_SYS_CS2_SUPERVISOR_PROTECT&0x01)<<6)\
-+ |((CONFIG_SYS_CS2_DATA_PORT_SIZE&0x07)<<8)\
-+ |((CONFIG_SYS_CS2_EB_SIGNAL_CONTROL_WRITE&0x01)<<11)\
-+ |((((CONFIG_SYS_CS2_CS_ASSERT_NEG_DLY+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<12)\
-+ |(((((CONFIG_SYS_CS2_EB_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |(((((CONFIG_SYS_CS2_EB_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<20)\
-+ |(((((CONFIG_SYS_CS2_OE_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |(((((CONFIG_SYS_CS2_OE_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<28))
-+
-+#define CONFIG_SYS_CS3U_VAL\
-+ ((((CONFIG_SYS_CS3_XTRA_DEAD_CYC+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)\
-+ |((((CONFIG_SYS_CS3_WRITE_XTRA_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<4)\
-+ |(((((CONFIG_SYS_CS3_READ_CYC_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)-1)&0x3F)<<8)\
-+ |((((CONFIG_SYS_CS3_CS_NEG_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x03)<<14)\
-+ |((((CONFIG_SYS_CS3_SYNC_DAT_OUT_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |((CONFIG_SYS_CS3_SYNC_ENABLE&0x01)<<20)\
-+ |((CONFIG_SYS_CS3_SYNC_PAGE_MODE_EMUL&0x01)<<21)\
-+ |((CONFIG_SYS_CS3_SYNC_PAGE_SIZE&0x03)<<22)\
-+ |((((CONFIG_SYS_CS3_SYNC_BURST_CLK_START+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |((CONFIG_SYS_CS3_SYNC_BURST_CLK_DIV&0x03)<<28))
-+
-+#define CONFIG_SYS_CS3L_VAL\
-+ ((CONFIG_SYS_CS3_CHIP_SELECT_ENABLE&0x01)\
-+ |((CONFIG_SYS_CS3_PIN_ASSERT&0x01)<<1)\
-+ |((CONFIG_SYS_CS3_WRITE_PROTECT&0x01)<<4)\
-+ |((CONFIG_SYS_CS3_SUPERVISOR_PROTECT&0x01)<<6)\
-+ |((CONFIG_SYS_CS3_DATA_PORT_SIZE&0x07)<<8)\
-+ |((CONFIG_SYS_CS3_EB_SIGNAL_CONTROL_WRITE&0x01)<<11)\
-+ |((((CONFIG_SYS_CS3_CS_ASSERT_NEG_DLY+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<12)\
-+ |(((((CONFIG_SYS_CS3_EB_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |(((((CONFIG_SYS_CS3_EB_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<20)\
-+ |(((((CONFIG_SYS_CS3_OE_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |(((((CONFIG_SYS_CS3_OE_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<28))
-+
-+#define CONFIG_SYS_CS4U_VAL\
-+ (((((CONFIG_SYS_CS4_XTRA_DEAD_CYC+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)\
-+ |((((CONFIG_SYS_CS4_WRITE_XTRA_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<4)\
-+ |(((((CONFIG_SYS_CS4_READ_CYC_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)-1)&0x3F)<<8)\
-+ |((((CONFIG_SYS_CS4_CS_NEG_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x03)<<14)\
-+ |((((CONFIG_SYS_CS4_SYNC_DAT_OUT_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16))\
-+ |((CONFIG_SYS_CS4_SYNC_ENABLE&0x01)<<20)\
-+ |((CONFIG_SYS_CS4_SYNC_PAGE_MODE_EMUL&0x01)<<21)\
-+ |((CONFIG_SYS_CS4_SYNC_PAGE_SIZE&0x03)<<22)\
-+ |((((CONFIG_SYS_CS4_SYNC_BURST_CLK_START+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |((CONFIG_SYS_CS4_SYNC_BURST_CLK_DIV&0x03)<<28))
-+
-+#define CONFIG_SYS_CS4L_VAL\
-+ ((CONFIG_SYS_CS4_CHIP_SELECT_ENABLE&0x01)\
-+ |((CONFIG_SYS_CS4_PIN_ASSERT&0x01)<<1)\
-+ |((CONFIG_SYS_CS4_WRITE_PROTECT&0x01)<<4)\
-+ |((CONFIG_SYS_CS4_SUPERVISOR_PROTECT&0x01)<<6)\
-+ |((CONFIG_SYS_CS4_DATA_PORT_SIZE&0x07)<<8)\
-+ |((CONFIG_SYS_CS4_EB_SIGNAL_CONTROL_WRITE&0x01)<<11)\
-+ |((((CONFIG_SYS_CS4_CS_ASSERT_NEG_DLY+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<12)\
-+ |(((((CONFIG_SYS_CS4_EB_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |(((((CONFIG_SYS_CS4_EB_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<20)\
-+ |(((((CONFIG_SYS_CS4_OE_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |(((((CONFIG_SYS_CS4_OE_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<28))
-+
-+#define CONFIG_SYS_CS5U_VAL\
-+ ((((CONFIG_SYS_CS5_XTRA_DEAD_CYC+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)\
-+ |((((CONFIG_SYS_CS5_WRITE_XTRA_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<4)\
-+ |(((((CONFIG_SYS_CS5_READ_CYC_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)-1)&0x3F)<<8)\
-+ |((((CONFIG_SYS_CS5_CS_NEG_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x03)<<14)\
-+ |((((CONFIG_SYS_CS5_SYNC_DAT_OUT_LGTH+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |((CONFIG_SYS_CS5_SYNC_ENABLE&0x01)<<20)\
-+ |((CONFIG_SYS_CS5_SYNC_PAGE_MODE_EMUL&0x01)<<21)\
-+ |((CONFIG_SYS_CS5_SYNC_PAGE_SIZE&0x03)<<22)\
-+ |((((CONFIG_SYS_CS5_SYNC_BURST_CLK_START+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |((CONFIG_SYS_CS5_SYNC_BURST_CLK_DIV&0x03)<<28)\
-+ |((CONFIG_SYS_CS5_DTACK_SELECT&0x01)<<31))
-+
-+#define CONFIG_SYS_CS5L_VAL\
-+ ((CONFIG_SYS_CS5_CHIP_SELECT_ENABLE&0x01)\
-+ |((CONFIG_SYS_CS5_PIN_ASSERT&0x01)<<1)\
-+ |((CONFIG_SYS_CS5_WRITE_PROTECT&0x01)<<4)\
-+ |((CONFIG_SYS_CS5_SUPERVISOR_PROTECT&0x01)<<6)\
-+ |((CONFIG_SYS_CS5_DATA_PORT_SIZE&0x07)<<8)\
-+ |((CONFIG_SYS_CS5_EB_SIGNAL_CONTROL_WRITE&0x01)<<11)\
-+ |((((CONFIG_SYS_CS5_CS_ASSERT_NEG_DLY+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<12)\
-+ |(((((CONFIG_SYS_CS5_EB_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<16)\
-+ |(((((CONFIG_SYS_CS5_EB_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<20)\
-+ |(((((CONFIG_SYS_CS5_OE_NEG_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<24)\
-+ |(((((CONFIG_SYS_CS5_OE_ASSERT_DLY*2)+CONFIG_SYS_HCLK_LGTH-1)/CONFIG_SYS_HCLK_LGTH)&0x0F)<<28))
-+
-+#endif /* __CONFIG_H */
diff --git a/patches/u-boot/2011.12/10-apf9328_add-mach-types.patch b/patches/u-boot/2011.12/10-apf9328_add-mach-types.patch
deleted file mode 100644
index 486b9c3..0000000
--- a/patches/u-boot/2011.12/10-apf9328_add-mach-types.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/arch/arm/include/asm/mach-types.h 2012-02-29 19:04:28.000000000 +0100
-+++ b/arch/arm/include/asm/mach-types.h 2012-02-29 19:04:57.000000000 +0100
-@@ -179,6 +179,7 @@
- #define MACH_TYPE_DAVINCI_EVM 901
- #define MACH_TYPE_PALMZ72 904
- #define MACH_TYPE_NXDB500 905
-+#define MACH_TYPE_APF9328 906
- #define MACH_TYPE_PALMT5 917
- #define MACH_TYPE_PALMTC 918
- #define MACH_TYPE_OMAP_APOLLON 919
diff --git a/patches/u-boot/2011.12/11-mx1-timer.patch b/patches/u-boot/2011.12/11-mx1-timer.patch
new file mode 100644
index 0000000..27a9da5
--- /dev/null
+++ b/patches/u-boot/2011.12/11-mx1-timer.patch
@@ -0,0 +1,16 @@
+mx1: Fix function get_timer() to adjust frequency according to CONFIG_SYS_HZ
+
+Signed-off-by: Eric Jarrige <eri...@ar...>
+Cc: Stefano Babic <sb...@de...>
+---
+--- uboot-custom/arch/arm/cpu/arm920t/imx/timer.c 2011-12-23 20:25:35.000000000 +0100
++++ uboot-custom/arch/arm/cpu/arm920t/imx/timer.c 2012-03-14 20:04:28.000000000 +0100
+@@ -55,7 +55,7 @@ int timer_init (void)
+ */
+ ulong get_timer (ulong base)
+ {
+- return get_timer_masked() - base;
++ return get_timer_masked() / (1000000 / CONFIG_SYS_HZ) - base;
+ }
+
+ ulong get_timer_masked (void)
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-14 10:47:48
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 3de55774b49d1b9b57a0af5c1c7c591c7a5e3cb8 (commit)
from 55fcd8ac4eeafe2ebc2177843e43c49daa687315 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 3de55774b49d1b9b57a0af5c1c7c591c7a5e3cb8
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 14 11:57:49 2012 +0100
[UBOOT] apf28: enable mmcboot and net console
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf28/apf28-u-boot-2011.12.h | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
index 006da29..d0ca845 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
+++ b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
@@ -227,6 +227,7 @@
#define CONFIG_DISCOVER_PHY
#define CONFIG_FEC_XCV_TYPE RMII
#define CONFIG_M28_FEC_MAC_IN_OCOTP
+#define CONFIG_NETCONSOLE 1
#endif
#define ACFG_OUI 0x001EAC
@@ -273,10 +274,10 @@
/*
* OCOTP
*/
-/*
-#define CONFIG_IMX_OCOTP
+
+/*#define CONFIG_IMX_OCOTP*/
#define IMX_OCOTP_BASE MXS_OCOTP_BASE
-*/
+
/*
* Boot Linux
*/
@@ -313,6 +314,8 @@
"rootfs_len=" MK_STR(CONFIG_ROOTFS_LEN) "\0" \
"board_name=" MK_STR(CONFIG_BOARD_NAME) "\0" \
"serverpath=" MK_STR(CONFIG_SRV_PATH) "\0" \
+ "mmcroot=/dev/mmcblk0p1\0" \
+ "mmcrootfstype=ext2\0" \
"addnfsargs=setenv bootargs ${bootargs} " \
"root=/dev/nfs rw nfsroot=${serverip}:${rootpath}\0" \
"addubifsargs=setenv bootargs ${bootargs} " \
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-13 23:06:47
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 55fcd8ac4eeafe2ebc2177843e43c49daa687315 (commit)
via c0f4a11861c01b1965f32210586f9bfd61b69e2c (commit)
from 75466461cdf9e05993df84c602951acc04328421 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 55fcd8ac4eeafe2ebc2177843e43c49daa687315
Author: Eric Jarrige <eri...@ar...>
Date: Wed Mar 14 00:16:50 2012 +0100
[LINUX] apf28: update kernel config to support UBIFS/NAND
commit c0f4a11861c01b1965f32210586f9bfd61b69e2c
Author: Eric Jarrige <eri...@ar...>
Date: Tue Mar 13 23:43:51 2012 +0100
[LINUX] APF28: add support for NAND partitions
-----------------------------------------------------------------------
Summary of changes:
.../armadeus/apf28/apf28-linux-2.6.35.config | 50 +++++++------------
.../453-armadeus-disable-nand-boot-area.patch | 19 +++++++
2 files changed, 38 insertions(+), 31 deletions(-)
create mode 100644 patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch
diff --git a/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config b/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config
index e1d78c1..7c4515a 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config
+++ b/buildroot/target/device/armadeus/apf28/apf28-linux-2.6.35.config
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.35.3
-# Tue Feb 14 19:36:30 2012
+# Wed Mar 14 00:03:55 2012
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -547,7 +547,7 @@ CONFIG_EXTRA_FIRMWARE=""
CONFIG_MTD=y
# CONFIG_MTD_DEBUG is not set
# CONFIG_MTD_TESTS is not set
-CONFIG_MTD_CONCAT=y
+# CONFIG_MTD_CONCAT is not set
CONFIG_MTD_PARTITIONS=y
# CONFIG_MTD_REDBOOT_PARTS is not set
CONFIG_MTD_CMDLINE_PARTS=y
@@ -598,8 +598,7 @@ CONFIG_MTD_CFI_I2=y
#
# CONFIG_MTD_DATAFLASH is not set
# CONFIG_MTD_MXC_DATAFLASH is not set
-CONFIG_MTD_M25P80=m
-CONFIG_M25PXX_USE_FAST_READ=y
+# CONFIG_MTD_M25P80 is not set
# CONFIG_MTD_SST25L is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_PHRAM is not set
@@ -645,7 +644,7 @@ CONFIG_MTD_UBI_BEB_RESERVE=1
# UBI debugging options
#
# CONFIG_MTD_UBI_DEBUG is not set
-CONFIG_MTD_UBI_BLOCK=y
+# CONFIG_MTD_UBI_BLOCK is not set
# CONFIG_PARPORT is not set
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_COW_COMMON is not set
@@ -658,7 +657,7 @@ CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_COUNT=4
+CONFIG_BLK_DEV_RAM_COUNT=1
CONFIG_BLK_DEV_RAM_SIZE=16384
# CONFIG_BLK_DEV_XIP is not set
# CONFIG_CDROM_PKTCDVD is not set
@@ -1730,16 +1729,9 @@ CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y
# CONFIG_INOTIFY is not set
CONFIG_INOTIFY_USER=y
-CONFIG_QUOTA=y
-# CONFIG_QUOTA_NETLINK_INTERFACE is not set
-CONFIG_PRINT_QUOTA_WARNING=y
-# CONFIG_QUOTA_DEBUG is not set
-CONFIG_QUOTA_TREE=y
-# CONFIG_QFMT_V1 is not set
-CONFIG_QFMT_V2=y
-CONFIG_QUOTACTL=y
+# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
-CONFIG_AUTOFS4_FS=m
+CONFIG_AUTOFS4_FS=y
# CONFIG_FUSE_FS is not set
#
@@ -1753,7 +1745,7 @@ CONFIG_AUTOFS4_FS=m
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
-CONFIG_UDF_FS=m
+CONFIG_UDF_FS=y
CONFIG_UDF_NLS=y
#
@@ -1794,21 +1786,17 @@ CONFIG_UBIFS_FS_LZO=y
CONFIG_UBIFS_FS_ZLIB=y
# CONFIG_UBIFS_FS_DEBUG is not set
# CONFIG_LOGFS is not set
-CONFIG_CRAMFS=y
-CONFIG_SQUASHFS=y
-# CONFIG_SQUASHFS_XATTRS is not set
-# CONFIG_SQUASHFS_EMBEDDED is not set
-CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_CRAMFS is not set
+# CONFIG_SQUASHFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_OMFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
-CONFIG_ROMFS_FS=y
-CONFIG_ROMFS_BACKED_BY_BLOCK=y
+# CONFIG_ROMFS_FS is not set
+# CONFIG_ROMFS_BACKED_BY_BLOCK is not set
# CONFIG_ROMFS_BACKED_BY_MTD is not set
# CONFIG_ROMFS_BACKED_BY_BOTH is not set
-CONFIG_ROMFS_ON_BLOCK=y
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y
@@ -1836,19 +1824,19 @@ CONFIG_SUNRPC=y
#
CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not set
-CONFIG_OSF_PARTITION=y
+# CONFIG_OSF_PARTITION is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_ATARI_PARTITION is not set
CONFIG_MAC_PARTITION=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
-CONFIG_MINIX_SUBPARTITION=y
-CONFIG_SOLARIS_X86_PARTITION=y
-CONFIG_UNIXWARE_DISKLABEL=y
+# CONFIG_MINIX_SUBPARTITION is not set
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
# CONFIG_LDM_PARTITION is not set
-CONFIG_SGI_PARTITION=y
+# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set
-CONFIG_SUN_PARTITION=y
+# CONFIG_SUN_PARTITION is not set
# CONFIG_KARMA_PARTITION is not set
CONFIG_EFI_PARTITION=y
# CONFIG_SYSV68_PARTITION is not set
@@ -2065,7 +2053,7 @@ CONFIG_GENERIC_FIND_LAST_BIT=y
CONFIG_CRC_CCITT=m
CONFIG_CRC16=y
# CONFIG_CRC_T10DIF is not set
-CONFIG_CRC_ITU_T=m
+CONFIG_CRC_ITU_T=y
CONFIG_CRC32=y
# CONFIG_CRC7 is not set
CONFIG_LIBCRC32C=m
diff --git a/patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch b/patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch
new file mode 100644
index 0000000..1f2c55a
--- /dev/null
+++ b/patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch
@@ -0,0 +1,19 @@
+Quick fix to fully support NAND address space for board memory partitions -
+therefore this add support for any commandline partition.
+
+Signed-off-by: Eric Jarrige <eri...@ar...>
+---
+Index: linux-2.6.35.3/arch/arm/mach-mx28/device.c
+===================================================================
+--- linux-2.6.35.3/arch/arm/mach-mx28/device.c 2012-03-12 12:29:25.000000000 +0100
++++ linux-2.6.35.3/arch/arm/mach-mx28/device.c 2012-03-13 23:28:56.000000000 +0100
+@@ -357,7 +357,9 @@ static struct gpmi_nfc_platform_data gp
+ .min_prop_delay_in_ns = 5,
+ .max_prop_delay_in_ns = 9,
+ .max_chip_count = 2,
++#if defined(CONFIG_MACH_MX28EVK)
+ .boot_area_size_in_bytes = 20 * SZ_1M,
++#endif
+ .partition_source_types = gpmi_nfc_partition_source_types,
+ .partitions = 0,
+ .partition_count = 0,
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-13 21:25:29
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 75466461cdf9e05993df84c602951acc04328421 (commit)
from 5b3ee7e2148f36b0fe0e617b53cb9922182227c1 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 75466461cdf9e05993df84c602951acc04328421
Author: Eric Jarrige <eri...@ar...>
Date: Tue Mar 13 22:35:31 2012 +0100
[ROOTFS][APF28] Set UBIFS parameters to mount NAND rootfs
-----------------------------------------------------------------------
Summary of changes:
buildroot/configs/apf28_defconfig | 4 +++-
.../device/armadeus/apf28/apf28-u-boot-2011.12.h | 2 +-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/buildroot/configs/apf28_defconfig b/buildroot/configs/apf28_defconfig
index 939dcae..9878790 100644
--- a/buildroot/configs/apf28_defconfig
+++ b/buildroot/configs/apf28_defconfig
@@ -55,8 +55,10 @@ BR2_PACKAGE_UUCP=y
BR2_PACKAGE_WIRELESS_TOOLS=y
BR2_PACKAGE_NANO=y
BR2_TARGET_ROOTFS_UBIFS=y
-BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=2047
+BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
+BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=4227
BR2_TARGET_ROOTFS_UBI=y
+BR2_TARGET_ROOTFS_UBI_SUBSIZE=0
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_CONFIG_HEADER_FILE="$(BR2_BOARD_PATH)/$(BR2_BOARD_NAME)-u-boot-2011.12.h"
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
diff --git a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
index 7c2afcd..006da29 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
+++ b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
@@ -204,7 +204,7 @@
#define CONFIG_LZO
#define CONFIG_MTD_DEVICE
#define CONFIG_MTD_PARTITIONS
-#define CONFIG_MTDMAP "gpmi-nfc.0"
+#define CONFIG_MTDMAP "gpmi-nfc-main"
#define MTDIDS_DEFAULT "nand0=" CONFIG_MTDMAP
#define MTDPARTS_DEFAULT \
"mtdparts=" CONFIG_MTDMAP \
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-13 15:56:25
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 5b3ee7e2148f36b0fe0e617b53cb9922182227c1 (commit)
via d35dfd2bbff8e3943bec6f88052763257eaf074a (commit)
from 396badac15634e47e19abd37314e8f48bc5c698a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 5b3ee7e2148f36b0fe0e617b53cb9922182227c1
Merge: d35dfd2 396bada
Author: Eric Jarrige <eri...@ar...>
Date: Tue Mar 13 17:06:33 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit d35dfd2bbff8e3943bec6f88052763257eaf074a
Author: Eric Jarrige <eri...@ar...>
Date: Tue Mar 13 17:06:13 2012 +0100
[UBOOT] Update linux nand partition parameters
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf28/apf28-u-boot-2011.12.h | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
index 1e107a2..7c2afcd 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
+++ b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
@@ -204,11 +204,11 @@
#define CONFIG_LZO
#define CONFIG_MTD_DEVICE
#define CONFIG_MTD_PARTITIONS
-#define CONFIG_MTDMAP "gpmi-nand.0"
-#define MTDIDS_DEFAULT "nand0=gpmi-nand.0"
+#define CONFIG_MTDMAP "gpmi-nfc.0"
+#define MTDIDS_DEFAULT "nand0=" CONFIG_MTDMAP
#define MTDPARTS_DEFAULT \
- "mtdparts=gpmi-nand.0:" \
- "3m(bootloader)ro," \
+ "mtdparts=" CONFIG_MTDMAP \
+ ":3m(bootloader)ro," \
"512k(environment)," \
"512k(redundant-environment)," \
"8M(kernel)," \
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-13 15:49:30
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 396badac15634e47e19abd37314e8f48bc5c698a (commit)
from 2ca2fe309f3c961499059ec738a1b67663ecbbe9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 396badac15634e47e19abd37314e8f48bc5c698a
Author: Eric Jarrige <eri...@ar...>
Date: Tue Mar 13 16:59:24 2012 +0100
[BUILDROOT] update u-boot.sb file format and elftosb package
-----------------------------------------------------------------------
Summary of changes:
...support-for-Safe-Boot-file-format-this-fo.patch | 21 +++++++------------
.../165-Add-Freescale-elftosb-host-package.patch | 20 ++++++++++++------
2 files changed, 21 insertions(+), 20 deletions(-)
diff --git a/patches/buildroot/2012.02/051a-U-Boot-add-support-for-Safe-Boot-file-format-this-fo.patch b/patches/buildroot/2012.02/051a-U-Boot-add-support-for-Safe-Boot-file-format-this-fo.patch
index ecc0856..b5578e5 100644
--- a/patches/buildroot/2012.02/051a-U-Boot-add-support-for-Safe-Boot-file-format-this-fo.patch
+++ b/patches/buildroot/2012.02/051a-U-Boot-add-support-for-Safe-Boot-file-format-this-fo.patch
@@ -1,8 +1,10 @@
-From 4120ce0947982895eba6cea75615bac32e2c8e42 Mon Sep 17 00:00:00 2001
+From c6f5dc1ac36a8b01a732b972035a1ace5b97f790 Mon Sep 17 00:00:00 2001
From: Eric Jarrige <eri...@ar...>
-Date: Thu, 8 Mar 2012 13:28:29 +0100
-Subject: [PATCH] U-Boot: add support for Safe Boot file format - this format is used by some Freescale cpu
+Date: Tue, 13 Mar 2012 12:42:52 +0100
+Subject: [PATCH 2/2] u-boot: add support for u-boot.sb file format
+add u-boot.sb binary format in BR menuconfig - Safe Boot (.sb) file format
+have to be used with Freescale CPUs like imx23, imx28, stp37xx
Signed-off-by: Eric Jarrige <eri...@ar...>
---
@@ -25,22 +27,15 @@ index c8db9fb..5fd5258 100644
menuconfig BR2_TARGET_UBOOT_NETWORK
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
-index db9de8d..47a016f 100644
+index db9de8d..1394400 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
-@@ -7,6 +7,7 @@ UBOOT_VERSION = $(call qstrip,$(BR2_TARGET_UBOOT_VERSION))
- UBOOT_BOARD_NAME = $(call qstrip,$(BR2_TARGET_UBOOT_BOARDNAME))
-
- UBOOT_INSTALL_IMAGES = YES
-+UBOOT_DEPENDENCIES = $(ifeq ($(BR2_TARGET_UBOOT_FORMAT_SB),y)) host-elftosb
-
- ifeq ($(UBOOT_VERSION),custom)
- # Handle custom U-Boot tarballs as specified by the configuration
-@@ -29,6 +30,9 @@ else ifeq ($(BR2_TARGET_UBOOT_FORMAT_LDR),y)
+@@ -29,6 +29,10 @@ else ifeq ($(BR2_TARGET_UBOOT_FORMAT_LDR),y)
UBOOT_BIN = u-boot.ldr
else ifeq ($(BR2_TARGET_UBOOT_FORMAT_NAND_BIN),y)
UBOOT_BIN = u-boot-nand.bin
+else ifeq ($(BR2_TARGET_UBOOT_FORMAT_SB),y)
++UBOOT_DEPENDENCIES += host-elftosb
+UBOOT_BIN = u-boot.sb
+UBOOT_MAKE_TARGET = $(UBOOT_BIN)
else
diff --git a/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch b/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
index 6b69eb1..8fe5346 100644
--- a/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
+++ b/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
@@ -1,7 +1,7 @@
-From 25876250d2d0fe7fffa0855b65ea2b824618779e Mon Sep 17 00:00:00 2001
+From 20b9ebcb8f0b655a6954995982cd8a7182f9acc9 Mon Sep 17 00:00:00 2001
From: Eric Jarrige <eri...@ar...>
-Date: Mon, 12 Mar 2012 11:57:34 +0100
-Subject: [PATCH] Add (Freescale) elftosb host package
+Date: Tue, 13 Mar 2012 11:10:57 +0100
+Subject: [PATCH 1/2] Add (Freescale) elftosb host package
Elftosb is a Freescale toolset to build binary image files (like U-Boot.sb)
to be used with CPUs imx23, imx28, stp37xx
@@ -9,8 +9,8 @@ to be used with CPUs imx23, imx28, stp37xx
Signed-off-by: Eric Jarrige <eri...@ar...>
---
package/elftosb/elftosb.mk | 28 ++++++++++++++++++++
- .../elftosb/elftosb10.12.01-fixes_includes.patch | 13 +++++++++
- 2 files changed, 41 insertions(+), 0 deletions(-)
+ .../elftosb/elftosb10.12.01-fixes_includes.patch | 19 +++++++++++++
+ 2 files changed, 47 insertions(+), 0 deletions(-)
create mode 100644 package/elftosb/elftosb.mk
create mode 100644 package/elftosb/elftosb10.12.01-fixes_includes.patch
@@ -50,10 +50,16 @@ index 0000000..75b95a5
+
diff --git a/package/elftosb/elftosb10.12.01-fixes_includes.patch b/package/elftosb/elftosb10.12.01-fixes_includes.patch
new file mode 100644
-index 0000000..5e31233
+index 0000000..eaf8eba
--- /dev/null
+++ b/package/elftosb/elftosb10.12.01-fixes_includes.patch
-@@ -0,0 +1,13 @@
+@@ -0,0 +1,19 @@
++This patch uses system include files instead of a hard coded system path to fixe
++potential compilation failure on systems that do not populate system header
++files in /usr/include/..
++
++Signed-off-by: Eric Jarrige <eri...@ar...>
++---
+Index: host-elftosb-10.12.01/common/stdafx.h
+===================================================================
+--- host-elftosb-10.12.01.orig/common/stdafx.h 2012-01-30 12:43:35.000000000 +0100
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-13 14:24:43
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 2ca2fe309f3c961499059ec738a1b67663ecbbe9 (commit)
via 969dfa9286b44fee86c472b03fc8df0acb878ecd (commit)
from 090090fd216b8f31d03964b986005ceeb41eccfc (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 2ca2fe309f3c961499059ec738a1b67663ecbbe9
Merge: 969dfa9 090090f
Author: Eric Jarrige <eri...@ar...>
Date: Tue Mar 13 15:35:03 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit 969dfa9286b44fee86c472b03fc8df0acb878ecd
Author: Samuel MARTIN <s.m...@gm...>
Date: Mon Mar 12 22:41:03 2012 +0100
apf27-u-boot-1.3.4.h: add boot_nfs{, 2}_fallback_flash commands
This patch adds 3 new u-boot commands:
- nfsboot2: boot loading both kernel image and rootfs over NFS
(whereas the nfsboot command loads the kernel from the flash memory);
- boot_nfs{,2}_fallback_flash: run nfsboot/nfsboot2 if the NFS server
is alive, otherwise run ubifsboot.
Note that, running nfsboot or nfsboot2 may lead to an infinite pending
state of the booting if a host responds on the server address, but no
NFS server is running on it or the kernel image or/and the rootfs are
missing at the expected location.
Change since v1:
- commands renaming according to Eric Jarrige's suggestion:
boot_nfs{,2}_fallback_ubifs -> boot_nfs{,2}_fallback_flash
- misc. command fixes
Signed-off-by: Samuel MARTIN <s.m...@gm...>
Signed-off-by: Eric Jarrige <eri...@ar...>
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf27/apf27-u-boot-1.3.4.h | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf27/apf27-u-boot-1.3.4.h b/buildroot/target/device/armadeus/apf27/apf27-u-boot-1.3.4.h
index bfe6115..8b5caa1 100644
--- a/buildroot/target/device/armadeus/apf27/apf27-u-boot-1.3.4.h
+++ b/buildroot/target/device/armadeus/apf27/apf27-u-boot-1.3.4.h
@@ -160,6 +160,12 @@
"nfsboot=setenv bootargs ${console} ${mtdparts};" \
"run addnfsargs addipargs; setenv autostart yes;" \
"nboot.jffs2 A0000000 0 ${kernel_offset}\0" \
+ "nfsboot2=setenv bootargs ${console} ${mtdparts};" \
+ "run addnfsargs addipargs; setenv autostart yes;" \
+ "setenv kernel_image ${board_name}-linux.bin;" \
+ "nfs ${loadaddr} " \
+ "${serverip}:${rootpath}/${kernel_image};" \
+ "bootm\0" \
"jffsboot=setenv bootargs ${console} ${mtdparts};" \
"run addjffsargs addipargs; setenv autostart yes;" \
"nboot.jffs2 A0000000 0 ${kernel_offset}\0" \
@@ -169,6 +175,14 @@
"mmcboot=setenv bootargs ${console} ${mtdparts};" \
"run addmmcargs addipargs; setenv autostart yes;" \
"nboot.jffs2 A0000000 0 ${kernel_offset}\0" \
+ "boot_nfs_fallback_flash=if ping ${serverip};" \
+ "then echo Boot over NFS; run nfsboot;" \
+ "else echo Boot from the board; run ubifsboot;" \
+ "fi\0" \
+ "boot_nfs2_fallback_flash=if ping ${serverip};" \
+ "then echo Boot over NFS; run nfsboot2;" \
+ "else echo Boot from the board; run ubifsboot;" \
+ "fi\0" \
"firmware_autoload=0\0" \
"flash_uboot=nand unlock ${uboot_offset} ${uboot_len};" \
"nand erase ${uboot_offset} ${uboot_len};" \
hooks/post-receive
--
armadeus
|
|
From: Fabien M <fa...@us...> - 2012-03-13 10:59:54
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 090090fd216b8f31d03964b986005ceeb41eccfc (commit)
from fdf559115a8c3000a77352d9c2e2e4a2a5952f01 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 090090fd216b8f31d03964b986005ceeb41eccfc
Author: Fabien Marteau <fab...@ar...>
Date: Tue Mar 13 11:59:34 2012 +0100
[UBoot] Change download kernel file name in environment variables
-----------------------------------------------------------------------
Summary of changes:
.../device/armadeus/apf28/apf28-u-boot-2011.12.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
index a356c5d..1e107a2 100644
--- a/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
+++ b/buildroot/target/device/armadeus/apf28/apf28-u-boot-2011.12.h
@@ -357,7 +357,7 @@
"download_uboot=tftpboot ${loadaddr} " \
" ${serverpath}${board_name}-u-boot.sb\0" \
"download_kernel=tftpboot ${loadaddr} " \
- " ${serverpath}${bootfile}\0" \
+ " ${serverpath}${board_name}-linux.bin\0" \
"download_rootfs=tftpboot ${loadaddr} " \
" ${serverpath}${board_name}-rootfs.ubi\0" \
"update_uboot=run download_uboot flash_uboot\0" \
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-12 13:04:09
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via fdf559115a8c3000a77352d9c2e2e4a2a5952f01 (commit)
from 801af28ec24b76e609bd0029e38962a2e332411d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit fdf559115a8c3000a77352d9c2e2e4a2a5952f01
Author: Eric Jarrige <eri...@ar...>
Date: Mon Mar 12 14:13:43 2012 +0100
[BUILDROOT] Update patch header
-----------------------------------------------------------------------
Summary of changes:
.../165-Add-Freescale-elftosb-host-package.patch | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch b/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
index b2fbfb8..6b69eb1 100644
--- a/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
+++ b/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
@@ -3,6 +3,8 @@ From: Eric Jarrige <eri...@ar...>
Date: Mon, 12 Mar 2012 11:57:34 +0100
Subject: [PATCH] Add (Freescale) elftosb host package
+Elftosb is a Freescale toolset to build binary image files (like U-Boot.sb)
+to be used with CPUs imx23, imx28, stp37xx
Signed-off-by: Eric Jarrige <eri...@ar...>
---
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-12 11:13:04
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 801af28ec24b76e609bd0029e38962a2e332411d (commit)
via 4ed1e85ebfd61dac85a0457e31f8001332f16e43 (commit)
via 54487038760fb3beebe6706a8f0f3cc85699558c (commit)
from 1832d5f51bde806af48fd6f4bad4dba5184ce30d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 801af28ec24b76e609bd0029e38962a2e332411d
Merge: 4ed1e85 1832d5f
Author: Eric Jarrige <eri...@ar...>
Date: Mon Mar 12 12:22:54 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit 4ed1e85ebfd61dac85a0457e31f8001332f16e43
Author: Eric Jarrige <eri...@ar...>
Date: Mon Mar 12 12:21:00 2012 +0100
[BUILDROOT] update elftosb patch name
commit 54487038760fb3beebe6706a8f0f3cc85699558c
Author: Eric Jarrige <eri...@ar...>
Date: Mon Mar 12 12:15:38 2012 +0100
[BUILDROOT] Rework elftosb package for BR2012.02
-----------------------------------------------------------------------
Summary of changes:
.../165-Add-Freescale-elftosb-host-package.patch | 70 ++++++++++++++++++
.../2012.02/165-elftosb-add_host_tools.patch | 74 --------------------
2 files changed, 70 insertions(+), 74 deletions(-)
create mode 100644 patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
delete mode 100644 patches/buildroot/2012.02/165-elftosb-add_host_tools.patch
diff --git a/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch b/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
new file mode 100644
index 0000000..b2fbfb8
--- /dev/null
+++ b/patches/buildroot/2012.02/165-Add-Freescale-elftosb-host-package.patch
@@ -0,0 +1,70 @@
+From 25876250d2d0fe7fffa0855b65ea2b824618779e Mon Sep 17 00:00:00 2001
+From: Eric Jarrige <eri...@ar...>
+Date: Mon, 12 Mar 2012 11:57:34 +0100
+Subject: [PATCH] Add (Freescale) elftosb host package
+
+
+Signed-off-by: Eric Jarrige <eri...@ar...>
+---
+ package/elftosb/elftosb.mk | 28 ++++++++++++++++++++
+ .../elftosb/elftosb10.12.01-fixes_includes.patch | 13 +++++++++
+ 2 files changed, 41 insertions(+), 0 deletions(-)
+ create mode 100644 package/elftosb/elftosb.mk
+ create mode 100644 package/elftosb/elftosb10.12.01-fixes_includes.patch
+
+diff --git a/package/elftosb/elftosb.mk b/package/elftosb/elftosb.mk
+new file mode 100644
+index 0000000..75b95a5
+--- /dev/null
++++ b/package/elftosb/elftosb.mk
+@@ -0,0 +1,28 @@
++#############################################################
++#
++# elftosb
++#
++#############################################################
++ELFTOSB_VERSION = 10.12.01
++ELFTOSB_SOURCE = elftosb-$(ELFTOSB_VERSION).tar.gz
++ELFTOSB_SITE = http://repository.timesys.com/buildsources/e/elftosb/elftosb-$(ELFTOSB_VERSION)
++
++define HOST_ELFTOSB_BUILD_CMDS
++ $(HOST_MAKE_ENV) $(MAKE) -C $(@D) all
++endef
++
++define HOST_ELFTOSB_INSTALL_CMDS
++ $(INSTALL) -D $(@D)/bld/linux/elftosb $(HOST_DIR)/usr/bin/elftosb
++ $(INSTALL) -D $(@D)/bld/linux/keygen $(HOST_DIR)/usr/bin/keygen
++ $(INSTALL) -D $(@D)/bld/linux/sbtool $(HOST_DIR)/usr/bin/sbtool
++endef
++
++define HOST_ELFTOSB_CLEAN_CMDS
++ rm -rf $(@D)/bld/linux
++ rm -f $(HOST_DIR)/usr/bin/elftosb
++ rm -f $(HOST_DIR)/usr/bin/keygen
++ rm -f $(HOST_DIR)/usr/bin/sbtool
++endef
++
++$(eval $(call GENTARGETS,host))
++
+diff --git a/package/elftosb/elftosb10.12.01-fixes_includes.patch b/package/elftosb/elftosb10.12.01-fixes_includes.patch
+new file mode 100644
+index 0000000..5e31233
+--- /dev/null
++++ b/package/elftosb/elftosb10.12.01-fixes_includes.patch
+@@ -0,0 +1,13 @@
++Index: host-elftosb-10.12.01/common/stdafx.h
++===================================================================
++--- host-elftosb-10.12.01.orig/common/stdafx.h 2012-01-30 12:43:35.000000000 +0100
+++++ host-elftosb-10.12.01/common/stdafx.h 2012-01-30 12:43:54.000000000 +0100
++@@ -27,7 +27,7 @@
++ // For Linux systems only, types.h only defines the signed
++ // integer types. This is not professional code.
++ // Update: They are defined in the header files in the more recent version of redhat enterprise gcc.
++-#include "/usr/include/sys/types.h"
+++#include <sys/types.h>
++ #include <stdint.h>
++ //typedef unsigned long uint32_t;
++ //typedef unsigned short uint16_t;
+--
+1.7.2.5
+
diff --git a/patches/buildroot/2012.02/165-elftosb-add_host_tools.patch b/patches/buildroot/2012.02/165-elftosb-add_host_tools.patch
deleted file mode 100644
index 0f56591..0000000
--- a/patches/buildroot/2012.02/165-elftosb-add_host_tools.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-Add Freescale elftosb tools
-
-Signed-off-by: Eric Jarrige <eri...@ar...>
-
-Index: buildroot/package/elftosb/Config.in
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ buildroot/package/elftosb/Config.in 2012-02-21 16:46:11.000000000 +0100
-@@ -0,0 +1,7 @@
-+config BR2_PACKAGE_ELFTOSB
-+ bool "elftosb"
-+ depends on BR2_arm
-+ help
-+ Freescale host toolset to generate bootcode for some i.MX CPUs:
-+ iMX28...
-+
-Index: buildroot/package/elftosb/elftosb.mk
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ buildroot/package/elftosb/elftosb.mk 2012-02-21 16:46:11.000000000 +0100
-@@ -0,0 +1,35 @@
-+#############################################################
-+#
-+# elftosb
-+#
-+#############################################################
-+ELFTOSB_VERSION = 10.12.01
-+ELFTOSB_SOURCE = elftosb-$(ELFTOSB_VERSION).tar.gz
-+ELFTOSB_SITE = http://repository.timesys.com/buildsources/e/elftosb/elftosb-$(ELFTOSB_VERSION)
-+
-+ELFTOSB_HOST_CFLAGS = $(HOST_CFLAGS)
-+ELFTOSB_HOST_CFLAGS += -I${@D}/elftosb2 -I${@D}/keygen -I${@D}/sbtool -I${@D}/common
-+ELFTOSB_HOST_CFLAGS += -DLinux
-+
-+define HOST_ELFTOSB_BUILD_CMDS
-+ $(TARGET_MAKE_ENV) $(MAKE) \
-+ CFLAGS="$(ELFTOSB_HOST_CFLAGS)" \
-+ -C $(@D) all
-+endef
-+
-+define HOST_ELFTOSB_INSTALL_CMDS
-+ $(INSTALL) -D -m 0755 $(@D)/bld/linux/elftosb $(HOST_DIR)/usr/bin/elftosb
-+ $(INSTALL) -D -m 0755 $(@D)/bld/linux/keygen $(HOST_DIR)/usr/bin/keygen
-+ $(INSTALL) -D -m 0755 $(@D)/bld/linux/sbtool $(HOST_DIR)/usr/bin/sbtool
-+endef
-+
-+define HOST_ELFTOSB_CLEAN_CMDS
-+ rm -rf $(@D)/bld/linux
-+ rm -rf $(HOST_DIR)/usr/bin/elftosb
-+ rm -rf $(HOST_DIR)/usr/bin/keygen
-+ rm -rf $(HOST_DIR)/usr/bin/sbtool
-+endef
-+
-+$(eval $(call GENTARGETS))
-+$(eval $(call GENTARGETS,host))
-+
-Index: buildroot/package/elftosb/elftosb10.12.01-fixes_includes.patch
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ buildroot/package/elftosb/elftosb10.12.01-fixes_includes.patch 2012-02-21 16:46:11.000000000 +0100
-@@ -0,0 +1,13 @@
-+Index: host-elftosb-10.12.01/common/stdafx.h
-+===================================================================
-+--- host-elftosb-10.12.01.orig/common/stdafx.h 2012-01-30 12:43:35.000000000 +0100
-++++ host-elftosb-10.12.01/common/stdafx.h 2012-01-30 12:43:54.000000000 +0100
-+@@ -27,7 +27,7 @@
-+ // For Linux systems only, types.h only defines the signed
-+ // integer types. This is not professional code.
-+ // Update: They are defined in the header files in the more recent version of redhat enterprise gcc.
-+-#include "/usr/include/sys/types.h"
-++#include <sys/types.h>
-+ #include <stdint.h>
-+ //typedef unsigned long uint32_t;
-+ //typedef unsigned short uint16_t;
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2012-03-09 19:57:54
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 1832d5f51bde806af48fd6f4bad4dba5184ce30d (commit)
via df9b06754a5ee12be3a0eba1a8fbc5356473cc3b (commit)
from c0d1b01a67909bb68e19e2a680764fbb85ebc7ef (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 1832d5f51bde806af48fd6f4bad4dba5184ce30d
Merge: df9b067 c0d1b01
Author: Julien Boibessot <jul...@ar...>
Date: Fri Mar 9 20:48:21 2012 +0100
Merge branch 'master' of ssh://armadeus.git.sourceforge.net/gitroot/armadeus/armadeus
commit df9b06754a5ee12be3a0eba1a8fbc5356473cc3b
Author: Julien Boibessot <jul...@ar...>
Date: Fri Mar 9 20:35:05 2012 +0100
[BUILD] Updates build scripts for BR 2012.02
-----------------------------------------------------------------------
Summary of changes:
Makefile | 4 ++-
Makefile.in | 6 ++++-
.../051g-u-boot-add_u-boot-unpacked_target.patch | 15 -----------
...x-adds_linux26-patched_target_to_Makefile.patch | 15 -----------
scripts/quiltify.sh | 26 ++++++++++++++++----
scripts/show_build_infos.sh | 3 ++
6 files changed, 32 insertions(+), 37 deletions(-)
delete mode 100644 patches/buildroot/2012.02/051g-u-boot-add_u-boot-unpacked_target.patch
delete mode 100644 patches/buildroot/2012.02/052-linux-adds_linux26-patched_target_to_Makefile.patch
diff --git a/Makefile b/Makefile
index 42bdabd..20c4e1c 100644
--- a/Makefile
+++ b/Makefile
@@ -22,13 +22,13 @@
# You shouldn't need to mess with anything beyond this point...
#--------------------------------------------------------------
-include ./Makefile.in
ARMADEUS_TOPDIR:=$(shell pwd)
export ARMADEUS_TOPDIR
#--- User configurable stuff:
#BUILDROOT_VERSION:=2012.02
BUILDROOT_VERSION:=2011.05
+include ./Makefile.in
BUILDROOT_SITE:=http://buildroot.uclibc.org/downloads
BUILDROOT_PATCH_DIR:=$(ARMADEUS_TOPDIR)/patches/buildroot/$(BUILDROOT_VERSION)
ARMADEUS_CONFIG_DIR:=$(BUILDROOT_DIR)/configs
@@ -198,6 +198,7 @@ buildroot-dirclean:
# Generate shell's most useful variables:
shell_env:
@echo ARMADEUS_BUILDROOT_DIR=$(BUILDROOT_DIR) > $(ARMADEUS_ENV_FILE)
+ @echo ARMADEUS_BUILDROOT_VERSION=$(BUILDROOT_VERSION) > $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_BUILDROOT_PATCH_DIR=$(BUILDROOT_PATCH_DIR) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_LINUX_DIR=$(ARMADEUS_LINUX_DIR) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_LINUX_PATCH_DIR=$(ARMADEUS_LINUX_PATCH_DIR) >> $(ARMADEUS_ENV_FILE)
@@ -206,6 +207,7 @@ shell_env:
@echo ARMADEUS_LINUX_MAIN_VERSION=$(ARMADEUS_LINUX_MAIN_VERSION) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_U_BOOT_DIR=$(ARMADEUS_U_BOOT_DIR) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_U_BOOT_VERSION=$(ARMADEUS_U_BOOT_VERSION) >> $(ARMADEUS_ENV_FILE)
+ @echo ARMADEUS_U_BOOT_CUSTOM_VERSION=$(ARMADEUS_U_BOOT_CUSTOM_VERSION) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_ROOTFS_DIR=$(ARMADEUS_ROOTFS_DIR) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_BINARIES=$(ARMADEUS_BINARIES) >> $(ARMADEUS_ENV_FILE)
@echo ARMADEUS_ROOTFS_TAR=$(ARMADEUS_ROOTFS_TAR) >> $(ARMADEUS_ENV_FILE)
diff --git a/Makefile.in b/Makefile.in
index 73dbfa7..34cb796 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -4,7 +4,6 @@
# calling directory before including this file !!
#
-
ifeq ($(ARMADEUS_BASE_DIR),)
ARMADEUS_BASE_DIR:=$(shell pwd)
endif
@@ -15,6 +14,7 @@ BUILDROOT_DIR:=$(ARMADEUS_BASE_DIR)/buildroot
ARMADEUS_LINUX_VERSION:=$(shell echo $(BR2_LINUX_KERNEL_VERSION))
ARMADEUS_LINUX_MAIN_VERSION:=$(shell echo $(ARMADEUS_LINUX_VERSION) | cut -d . -f 1-3)
ARMADEUS_U_BOOT_VERSION:=$(shell echo $(BR2_TARGET_UBOOT_VERSION))
+ARMADEUS_U_BOOT_CUSTOM_VERSION = $(shell echo $(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR) | awk '{ print substr( $$0, length($$0) - 6, 7 ) }')
ARMADEUS_LIBC_NAME=unknown
ARMADEUS_LIBC_VERSION=X.Y
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
@@ -63,7 +63,11 @@ ARMADEUS_ROOTFS_TAR:=$(ARMADEUS_BINARIES)/$(ARMADEUS_BOARD_NAME)-rootfs.tar
ARMADEUS_LINUX_DIR:=$(BUILDROOT_PROJECT_BUILD_DIR)/linux-$(ARMADEUS_LINUX_VERSION)
ARMADEUS_LINUX_PATCH_DIR:=$(ARMADEUS_PATCH_DIR)/linux/$(ARMADEUS_LINUX_VERSION)
+ifeq ($(BUILDROOT_VERSION),2011.05)
ARMADEUS_U_BOOT_DIR:=$(BUILDROOT_PROJECT_BUILD_DIR)/u-boot-$(ARMADEUS_U_BOOT_VERSION)
+else
+ARMADEUS_U_BOOT_DIR:=$(BUILDROOT_PROJECT_BUILD_DIR)/uboot-$(ARMADEUS_U_BOOT_VERSION)
+endif
ARMADEUS_UCLIBC_DIR:=$(BUILDROOT_TOOLCHAIN_BUILD_DIR)/uClibc-$(ARMADEUS_UCLIBC_VERSION)
ARMADEUS_BOARD_DIR:=$(BUILDROOT_DIR)/target/device/armadeus/$(ARMADEUS_BOARD_NAME)
ARMADEUS_LINUX_CONFIG:=$(ARMADEUS_BOARD_DIR)/$(ARMADEUS_BOARD_NAME)-linux-$(ARMADEUS_LINUX_MAIN_VERSION).config
diff --git a/patches/buildroot/2012.02/051g-u-boot-add_u-boot-unpacked_target.patch b/patches/buildroot/2012.02/051g-u-boot-add_u-boot-unpacked_target.patch
deleted file mode 100644
index c358510..0000000
--- a/patches/buildroot/2012.02/051g-u-boot-add_u-boot-unpacked_target.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Specific for Armadeus (needed by quiltify.sh script).
-
-Index: buildroot/boot/uboot/uboot.mk
-===================================================================
---- buildroot.orig/boot/uboot/uboot.mk 2012-02-21 16:44:26.000000000 +0100
-+++ buildroot/boot/uboot/uboot.mk 2012-02-21 16:44:28.000000000 +0100
-@@ -58,6 +58,8 @@
- @echo '#define $(strip $(1)) $(call qstrip,$(2))' >> $(@D)/include/config.h)
- endef
-
-+u-boot-src-unpacked: $(@D)/.stamp_extracted
-+
- ifneq ($(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR)),)
- define UBOOT_APPLY_CUSTOM_PATCHES
- support/scripts/apply-patches.sh $(@D) $(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR) \
diff --git a/patches/buildroot/2012.02/052-linux-adds_linux26-patched_target_to_Makefile.patch b/patches/buildroot/2012.02/052-linux-adds_linux26-patched_target_to_Makefile.patch
deleted file mode 100644
index 105b111..0000000
--- a/patches/buildroot/2012.02/052-linux-adds_linux26-patched_target_to_Makefile.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Specific for Armadeus (needed by script/quiltify.sh)
-
-Index: buildroot/linux/linux.mk
-===================================================================
---- buildroot.orig/linux/linux.mk 2012-02-21 16:44:16.000000000 +0100
-+++ buildroot/linux/linux.mk 2012-02-21 16:44:30.000000000 +0100
-@@ -118,6 +118,8 @@
-
- LINUX_POST_PATCH_HOOKS += LINUX_APPLY_PATCHES
-
-+linux26-patched: $(@D)/.stamp_extracted
-+ touch $(@D)/.stamp_patched
-
- ifeq ($(BR2_LINUX_KERNEL_USE_DEFCONFIG),y)
- KERNEL_SOURCE_CONFIG = $(KERNEL_ARCH_PATH)/configs/$(call qstrip,$(BR2_LINUX_KERNEL_DEFCONFIG))_defconfig
diff --git a/scripts/quiltify.sh b/scripts/quiltify.sh
index 2cf7e2d..d0e6dd9 100755
--- a/scripts/quiltify.sh
+++ b/scripts/quiltify.sh
@@ -65,14 +65,29 @@ if [ "$answer" == "Buildroot" ]; then
QUILT_TARGET_PATCH_DIR=$ARMADEUS_BUILDROOT_PATCH_DIR
elif [ "$answer" == "U-Boot" ]; then
QUILT_TARGET_NAME="U-Boot"
- QUILT_MAKEFILE_TARGET="u-boot-src-unpacked"
- QUILT_MAKEFILE_TARGET_TOUCH=".unpacked .patched"
- QUILT_PATCH_FILTER="$ARMADEUS_U_BOOT_VERSION"
+ if [ "$ARMADEUS_BUILDROOT_VERSION" == "2011.05" ]; then
+ QUILT_MAKEFILE_TARGET="u-boot-src-unpacked"
+ QUILT_MAKEFILE_TARGET_TOUCH=".unpacked .patched"
+ else
+ QUILT_MAKEFILE_TARGET="uboot-extract"
+ QUILT_MAKEFILE_TARGET_TOUCH=".stamp_patched"
+ fi
QUILT_TARGET_DIR=$ARMADEUS_U_BOOT_DIR
- QUILT_TARGET_PATCH_DIR=$ARMADEUS_BUILDROOT_DIR/../patches/u-boot/$ARMADEUS_U_BOOT_VERSION
+ if [ "$ARMADEUS_U_BOOT_VERSION" == "custom" ]; then
+ QUILT_TARGET_PATCH_DIR=$ARMADEUS_BUILDROOT_DIR/../patches/u-boot/$ARMADEUS_U_BOOT_CUSTOM_VERSION
+ QUILT_PATCH_FILTER="$ARMADEUS_U_BOOT_CUSTOM_VERSION"
+ else
+ QUILT_TARGET_PATCH_DIR=$ARMADEUS_BUILDROOT_DIR/../patches/u-boot/$ARMADEUS_U_BOOT_VERSION
+ QUILT_PATCH_FILTER="$ARMADEUS_U_BOOT_VERSION"
+ fi
else
QUILT_TARGET_NAME="Linux kernel"
- QUILT_MAKEFILE_TARGET="linux26-patched"
+ if [ "$ARMADEUS_BUILDROOT_VERSION" == "2011.05" ]; then
+ QUILT_MAKEFILE_TARGET="linux26-patched"
+ else
+ QUILT_MAKEFILE_TARGET="linux-extract"
+ QUILT_MAKEFILE_TARGET_TOUCH=".stamp_patched"
+ fi
QUILT_TARGET_DIR=$ARMADEUS_LINUX_DIR
QUILT_TARGET_PATCH_DIR=$ARMADEUS_LINUX_PATCH_DIR
fi
@@ -129,6 +144,7 @@ echo "Getting sources... (make $QUILT_MAKEFILE_TARGET)"
make $QUILT_MAKEFILE_TARGET
if [ "$?" != 0 ]; then
echo "Failed to get sources, please check your view !!"
+ exit 1
fi
# Import patches
diff --git a/scripts/show_build_infos.sh b/scripts/show_build_infos.sh
index e5dd44b..93964d7 100755
--- a/scripts/show_build_infos.sh
+++ b/scripts/show_build_infos.sh
@@ -7,6 +7,9 @@ if [ ! -f "$MYDIR/../armadeus_env.sh" ]; then
fi
source $MYDIR/../armadeus_env.sh
+if [ "$ARMADEUS_U_BOOT_VERSION" == "custom" ]; then
+ ARMADEUS_U_BOOT_VERSION="custom ($ARMADEUS_U_BOOT_CUSTOM_VERSION)"
+fi
echo -en "\033[1m"
echo ""
hooks/post-receive
--
armadeus
|
|
From: Gwenhael Goavec-M. <gwe...@us...> - 2012-03-09 17:50:44
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via c0d1b01a67909bb68e19e2a680764fbb85ebc7ef (commit)
from 2912e6a0dbd65dfe203822d57adaebc599536fc1 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit c0d1b01a67909bb68e19e2a680764fbb85ebc7ef
Author: Gwenhael Goavec-Merou <gw...@tr...>
Date: Fri Mar 9 18:48:08 2012 +0100
[UBOOT] 2011.12 apf9328: Avoids message 'incorrect device type in ...' when erasing rootfs partition
-----------------------------------------------------------------------
Summary of changes:
.../armadeus/apf9328/apf9328-u-boot-2011.12.h | 3 ++-
patches/u-boot/2011.12/05-apf9328-config.patch | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h b/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h
index b609887..198989f 100644
--- a/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h
+++ b/buildroot/target/device/armadeus/apf9328/apf9328-u-boot-2011.12.h
@@ -49,6 +49,7 @@
#define CONFIG_MISC_INIT_R
+#define CONFIG_NETCONSOLE 1
/*
* BOOTP options
*/
@@ -132,7 +133,7 @@
"filesize=" MK_STR(CONFIG_SYS_MONITOR_LEN) "\0" \
"console=" CONFIG_CONSOLE "\0" \
"mtdparts=" MTDPARTS_DEFAULT "\0" \
- "partition= nor0,4\0" \
+ "partition=nor0,4\0" \
"uboot_addr=" MK_STR(CONFIG_SYS_MONITOR_BASE) "\0" \
"uboot_len=" MK_STR(CONFIG_SYS_MONITOR_LEN) "\0" \
"env_addr=" MK_STR(CONFIG_ENV_ADDR) "\0" \
diff --git a/patches/u-boot/2011.12/05-apf9328-config.patch b/patches/u-boot/2011.12/05-apf9328-config.patch
index c34e554..1a7fb27 100644
--- a/patches/u-boot/2011.12/05-apf9328-config.patch
+++ b/patches/u-boot/2011.12/05-apf9328-config.patch
@@ -147,7 +147,7 @@ index 0000000..ef5e54a
+ "filesize=" MK_STR(CONFIG_SYS_MONITOR_LEN) "\0" \
+ "console=" CONFIG_CONSOLE "\0" \
+ "mtdparts=" MTDPARTS_DEFAULT "\0" \
-+ "partition= nor0,4\0" \
++ "partition=nor0,4\0" \
+ "uboot_addr=" MK_STR(CONFIG_SYS_MONITOR_BASE) "\0" \
+ "uboot_len=" MK_STR(CONFIG_SYS_MONITOR_LEN) "\0" \
+ "env_addr=" MK_STR(CONFIG_ENV_ADDR) "\0" \
hooks/post-receive
--
armadeus
|
|
From: Julien B a. A. <ar...@us...> - 2012-03-08 18:24:06
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 2912e6a0dbd65dfe203822d57adaebc599536fc1 (commit)
via 55fd0a8cb93efcc9f2a6875ca294e81a89541fc6 (commit)
from 0b7beaafe992a2f71437bf540a503762b8cd5871 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 2912e6a0dbd65dfe203822d57adaebc599536fc1
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 8 19:22:54 2012 +0100
[BUILDROOT] Moves imx-test package as a BR patch (2)
commit 55fd0a8cb93efcc9f2a6875ca294e81a89541fc6
Author: Julien Boibessot <jul...@ar...>
Date: Thu Mar 8 19:22:18 2012 +0100
[BUILDROOT] Moves imx-test package as a BR patch
-----------------------------------------------------------------------
Summary of changes:
.../package/armadeus/freescale-tools/imx-test.mk | 43 ------
.../imx-test/imx-test-01_fixes.patch | 50 -------
.../imx-test-02-mxc_vpu_test_v4l2_fixes.patch | 16 --
.../2011.05/176-imx-test-add_package.patch | 148 ++++++++++++++++++++
patches/buildroot/2011.05/cleanup_buildroot.sh | 1 +
.../2012.02/176-imx-test-add_package.patch | 148 ++++++++++++++++++++
patches/buildroot/2012.02/cleanup_buildroot.sh | 1 +
7 files changed, 298 insertions(+), 109 deletions(-)
delete mode 100644 buildroot/package/armadeus/freescale-tools/imx-test.mk
delete mode 100644 buildroot/package/armadeus/freescale-tools/imx-test/imx-test-01_fixes.patch
delete mode 100644 buildroot/package/armadeus/freescale-tools/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch
create mode 100644 patches/buildroot/2011.05/176-imx-test-add_package.patch
create mode 100644 patches/buildroot/2012.02/176-imx-test-add_package.patch
diff --git a/buildroot/package/armadeus/freescale-tools/imx-test.mk b/buildroot/package/armadeus/freescale-tools/imx-test.mk
deleted file mode 100644
index d200c20..0000000
--- a/buildroot/package/armadeus/freescale-tools/imx-test.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-#############################################################
-#
-# imx-test (test tools from Freescale BSP)
-#
-#############################################################
-IMX_TEST_VERSION = 10.11.01
-IMX_TEST_SOURCE = imx-test-$(IMX_TEST_VERSION).tar.gz
-IMX_TEST_SITE = ftp://ftp2.armadeus.com/armadeusw/download/
-IMX_TEST_DEPENDENCIES = imx-lib
-
-ifeq ($(BR2_CPU_NAME),imx27)
-BUILD_PLATFORM = IMX27
-BUILD_CFLAGS = -DCONFIG_ARCH_MX2
-else
-BUILD_PLATFORM = IMX51
-BUILD_CFLAGS = -DCONFIG_ARCH_MX5
-endif
-
-define IMX_TEST_BUILD_CMDS
- $(MAKE) CC="$(TARGET_CC)" \
- VERBOSE="" \
- LINUXPATH=$(LINUX26_DIR) \
- CROSS_COMPILE="$(HOST_DIR)/usr/bin/arm-linux-" \
- PLATFORM=$(BUILD_PLATFORM) \
- DIRS="mxc_sahara_test mxc_scc2 mxc_spi_test mxc_vpu_test mxc_uart_test mxc_usb_test" \
- CFLAGS="$(BUILD_CFLAGS) -I$(LINUX26_DIR)/drivers/mxc/security/sahara2/include" \
- -C $(@D)
-endef
-
-define IMX_TEST_INSTALL_TARGET_CMDS
- $(MAKE) LINUXPATH=$(LINUX26_DIR) INSTALL_MOD_PATH=$(TARGET_DIR) install -C $(@D)/module_test
- $(MAKE) DESTDIR=$(TARGET_DIR)/unit_tests PLATFORM=IMX51 install -C $(@D)
-endef
-
-define IMX_TEST_UNINSTALL_TARGET_CMDS
- rm -rf $(TARGET_DIR)/unit_tests
-endef
-
-define IMX_TEST_CLEAN_CMDS
- -$(MAKE) -C $(@D) clean
-endef
-
-$(eval $(call GENTARGETS,package/armadeus/freescale-tools,imx-test))
diff --git a/buildroot/package/armadeus/freescale-tools/imx-test/imx-test-01_fixes.patch b/buildroot/package/armadeus/freescale-tools/imx-test/imx-test-01_fixes.patch
deleted file mode 100644
index a31cba3..0000000
--- a/buildroot/package/armadeus/freescale-tools/imx-test/imx-test-01_fixes.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-Add some fixes for imx-test. Some are temporary.
-
-Signed-off-by: Julien Boibessot <jul...@ar...>
-
-diff -urN -X buildroot/output/build/linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/module_test/Makefile imx-test-10.11.01.mod//module_test/Makefile
---- imx-test-10.11.01/module_test/Makefile 2010-11-02 21:53:40.000000000 +0100
-+++ imx-test-10.11.01.mod//module_test/Makefile 2011-10-17 19:29:23.000000000 +0200
-@@ -39,7 +39,8 @@
- $(SAHARA_TEST_SOURCE)user_wrap.o
-
-
--obj-m += $(module_list-y)
-+obj-m += $(module_list-m)
-+obj-y += $(module_list-y)
-
- EXTRA_CFLAGS := -DLINUX_KERNEL -DIMX_NEEDS_DEPRECATED_SYMBOLS
-
-@@ -51,7 +52,7 @@
-
- # Need to remove sahara objects because the test app uses same objects
- all:
-- $(MAKE) -C $(LINUXPATH) M=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules
-+ $(MAKE) -C $(LINUXPATH) SUBDIRS=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules
-
- install:
- $(MAKE) -C $(LINUXPATH) INSTALL_MOD_DIR=test M=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules_install
-diff -urN -X buildroot/output/build/linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/module_test/scc2_test_driver.c imx-test-10.11.01.mod//module_test/scc2_test_driver.c
---- imx-test-10.11.01/module_test/scc2_test_driver.c 2010-11-02 21:53:40.000000000 +0100
-+++ imx-test-10.11.01.mod//module_test/scc2_test_driver.c 2011-10-18 16:20:42.000000000 +0200
-@@ -26,6 +26,7 @@
-
- #include "../include/scc2_test_driver.h"
-
-+#define SCC2_DEBUG
-
- MODULE_AUTHOR("Freescale Semiconductor");
- MODULE_DESCRIPTION("Test Device Driver for SCC2 (SMN/SCM) Driver");
-@@ -263,9 +264,9 @@
- #ifdef SCC2_DEBUG
- printk("SCC2 TEST: Error in ioctl(): (0x%x) is an invalid "
- "command (0x%x,0x%x)\n", cmd, SCC2_TEST_GET_CONFIGURATION,
-- SCC2_TEST_ALLOC_SLOT);
-- printk("uint64 is %d, alloc is %d\n", sizeof(uint64_t),
-- sizeof(scc_alloc_slot_access));
-+ SCC2_TEST_RELEASE_PART);
-+/* printk("uint64 is %d, alloc is %d\n", sizeof(uint64_t),
-+ sizeof(scc_alloc_slot_access));*/
- #endif
- error_code = -IOCTL_SCC2_INVALID_CMD;
- break;
diff --git a/buildroot/package/armadeus/freescale-tools/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch b/buildroot/package/armadeus/freescale-tools/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch
deleted file mode 100644
index dd8f76d..0000000
--- a/buildroot/package/armadeus/freescale-tools/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-linux/videodev.h include doesn't exist anymore on V4L2 only (=recent kernels).
-
-Signed-off-by: Julien Boibessot <jul...@ar...>
-
-diff -urN -X linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/test/mxc_vpu_test/vpu_test.h imx-test-10.11.01.mod/test/mxc_vpu_test/vpu_test.h
---- imx-test-10.11.01/test/mxc_vpu_test/vpu_test.h 2010-11-02 21:53:40.000000000 +0100
-+++ imx-test-10.11.01.mod/test/mxc_vpu_test/vpu_test.h 2011-10-24 23:26:23.000000000 +0200
-@@ -16,7 +16,7 @@
- #ifndef _DEC_H
- #define _DEC_H
-
--#include <linux/videodev.h>
-+#include <linux/videodev2.h>
- #include <pthread.h>
- #include <errno.h>
- #include <stdint.h>
diff --git a/patches/buildroot/2011.05/176-imx-test-add_package.patch b/patches/buildroot/2011.05/176-imx-test-add_package.patch
new file mode 100644
index 0000000..5ea7140
--- /dev/null
+++ b/patches/buildroot/2011.05/176-imx-test-add_package.patch
@@ -0,0 +1,148 @@
+Signed-off-by: Julien Boibessot <jul...@ar...>
+
+Index: buildroot/package/imx-test/Config.in
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/Config.in 2012-03-08 18:04:57.000000000 +0100
+@@ -0,0 +1,5 @@
++config BR2_PACKAGE_IMX_TEST
++ bool "imx-test"
++ select BR2_PACKAGE_IMX_LIB
++ help
++ Freescale specific test utilities for i.MX processors family.
+Index: buildroot/package/imx-test/imx-test.mk
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/imx-test.mk 2012-03-08 18:10:12.000000000 +0100
+@@ -0,0 +1,43 @@
++#############################################################
++#
++# imx-test (test tools from Freescale BSP)
++#
++#############################################################
++IMX_TEST_VERSION = 10.11.01
++IMX_TEST_SOURCE = imx-test-$(IMX_TEST_VERSION).tar.gz
++IMX_TEST_SITE = ftp://ftp2.armadeus.com/armadeusw/download/
++IMX_TEST_DEPENDENCIES = imx-lib
++
++ifeq ($(BR2_CPU_NAME),imx27)
++BUILD_PLATFORM = IMX27
++BUILD_CFLAGS = -DCONFIG_ARCH_MX2
++else
++BUILD_PLATFORM = IMX51
++BUILD_CFLAGS = -DCONFIG_ARCH_MX5
++endif
++
++define IMX_TEST_BUILD_CMDS
++ $(MAKE) CC="$(TARGET_CC)" \
++ VERBOSE="" \
++ LINUXPATH=$(LINUX26_DIR) \
++ CROSS_COMPILE="$(HOST_DIR)/usr/bin/arm-linux-" \
++ PLATFORM=$(BUILD_PLATFORM) \
++ DIRS="mxc_sahara_test mxc_scc2 mxc_spi_test mxc_vpu_test mxc_uart_test mxc_usb_test" \
++ CFLAGS="$(BUILD_CFLAGS) -I$(LINUX26_DIR)/drivers/mxc/security/sahara2/include" \
++ -C $(@D)
++endef
++
++define IMX_TEST_INSTALL_TARGET_CMDS
++ $(MAKE) LINUXPATH=$(LINUX26_DIR) INSTALL_MOD_PATH=$(TARGET_DIR) install -C $(@D)/module_test
++ $(MAKE) DESTDIR=$(TARGET_DIR)/unit_tests PLATFORM=IMX51 install -C $(@D)
++endef
++
++define IMX_TEST_UNINSTALL_TARGET_CMDS
++ rm -rf $(TARGET_DIR)/unit_tests
++endef
++
++define IMX_TEST_CLEAN_CMDS
++ -$(MAKE) -C $(@D) clean
++endef
++
++$(eval $(call GENTARGETS,package/armadeus/freescale-tools,imx-test))
+Index: buildroot/package/imx-test/imx-test-01_fixes.patch
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/imx-test-01_fixes.patch 2012-03-08 18:15:45.000000000 +0100
+@@ -0,0 +1,50 @@
++Add some fixes for imx-test. Some are temporary.
++
++Signed-off-by: Julien Boibessot <jul...@ar...>
++
++diff -urN -X buildroot/output/build/linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/module_test/Makefile imx-test-10.11.01.mod//module_test/Makefile
++--- imx-test-10.11.01/module_test/Makefile 2010-11-02 21:53:40.000000000 +0100
+++++ imx-test-10.11.01.mod//module_test/Makefile 2011-10-17 19:29:23.000000000 +0200
++@@ -39,7 +39,8 @@
++ $(SAHARA_TEST_SOURCE)user_wrap.o
++
++
++-obj-m += $(module_list-y)
+++obj-m += $(module_list-m)
+++obj-y += $(module_list-y)
++
++ EXTRA_CFLAGS := -DLINUX_KERNEL -DIMX_NEEDS_DEPRECATED_SYMBOLS
++
++@@ -51,7 +52,7 @@
++
++ # Need to remove sahara objects because the test app uses same objects
++ all:
++- $(MAKE) -C $(LINUXPATH) M=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules
+++ $(MAKE) -C $(LINUXPATH) SUBDIRS=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules
++
++ install:
++ $(MAKE) -C $(LINUXPATH) INSTALL_MOD_DIR=test M=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules_install
++diff -urN -X buildroot/output/build/linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/module_test/scc2_test_driver.c imx-test-10.11.01.mod//module_test/scc2_test_driver.c
++--- imx-test-10.11.01/module_test/scc2_test_driver.c 2010-11-02 21:53:40.000000000 +0100
+++++ imx-test-10.11.01.mod//module_test/scc2_test_driver.c 2011-10-18 16:20:42.000000000 +0200
++@@ -26,6 +26,7 @@
++
++ #include "../include/scc2_test_driver.h"
++
+++#define SCC2_DEBUG
++
++ MODULE_AUTHOR("Freescale Semiconductor");
++ MODULE_DESCRIPTION("Test Device Driver for SCC2 (SMN/SCM) Driver");
++@@ -263,9 +264,9 @@
++ #ifdef SCC2_DEBUG
++ printk("SCC2 TEST: Error in ioctl(): (0x%x) is an invalid "
++ "command (0x%x,0x%x)\n", cmd, SCC2_TEST_GET_CONFIGURATION,
++- SCC2_TEST_ALLOC_SLOT);
++- printk("uint64 is %d, alloc is %d\n", sizeof(uint64_t),
++- sizeof(scc_alloc_slot_access));
+++ SCC2_TEST_RELEASE_PART);
+++/* printk("uint64 is %d, alloc is %d\n", sizeof(uint64_t),
+++ sizeof(scc_alloc_slot_access));*/
++ #endif
++ error_code = -IOCTL_SCC2_INVALID_CMD;
++ break;
+Index: buildroot/package/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch 2012-03-08 18:18:33.000000000 +0100
+@@ -0,0 +1,16 @@
++linux/videodev.h include doesn't exist anymore on V4L2 only (=recent kernels).
++
++Signed-off-by: Julien Boibessot <jul...@ar...>
++
++diff -urN -X linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/test/mxc_vpu_test/vpu_test.h imx-test-10.11.01.mod/test/mxc_vpu_test/vpu_test.h
++--- imx-test-10.11.01/test/mxc_vpu_test/vpu_test.h 2010-11-02 21:53:40.000000000 +0100
+++++ imx-test-10.11.01.mod/test/mxc_vpu_test/vpu_test.h 2011-10-24 23:26:23.000000000 +0200
++@@ -16,7 +16,7 @@
++ #ifndef _DEC_H
++ #define _DEC_H
++
++-#include <linux/videodev.h>
+++#include <linux/videodev2.h>
++ #include <pthread.h>
++ #include <errno.h>
++ #include <stdint.h>
+Index: buildroot/package/Config.in
+===================================================================
+--- buildroot.orig/package/Config.in 2012-03-08 18:19:14.000000000 +0100
++++ buildroot/package/Config.in 2012-03-08 18:22:31.000000000 +0100
+@@ -206,6 +206,7 @@
+ endif
+ source "package/hwdata/Config.in"
+ source "package/i2c-tools/Config.in"
++source "package/imx-test/Config.in"
+ source "package/input-event-daemon/Config.in"
+ source "package/input-tools/Config.in"
+ source "package/iostat/Config.in"
diff --git a/patches/buildroot/2011.05/cleanup_buildroot.sh b/patches/buildroot/2011.05/cleanup_buildroot.sh
index d65d274..9c97a15 100755
--- a/patches/buildroot/2011.05/cleanup_buildroot.sh
+++ b/patches/buildroot/2011.05/cleanup_buildroot.sh
@@ -64,3 +64,4 @@ rm -rf buildroot/package/libcanfestival
rm -rf buildroot/package/python
rm -rf buildroot/package/gsmmux
rm -rf buildroot/package/imx-lib/
+rm -rf buildroot/package/imx-test/
diff --git a/patches/buildroot/2012.02/176-imx-test-add_package.patch b/patches/buildroot/2012.02/176-imx-test-add_package.patch
new file mode 100644
index 0000000..7c61840
--- /dev/null
+++ b/patches/buildroot/2012.02/176-imx-test-add_package.patch
@@ -0,0 +1,148 @@
+Signed-off-by: Julien Boibessot <jul...@ar...>
+
+Index: buildroot/package/imx-test/Config.in
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/Config.in 2012-03-08 18:04:57.000000000 +0100
+@@ -0,0 +1,5 @@
++config BR2_PACKAGE_IMX_TEST
++ bool "imx-test"
++ select BR2_PACKAGE_IMX_LIB
++ help
++ Freescale specific test utilities for i.MX processors family.
+Index: buildroot/package/imx-test/imx-test.mk
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/imx-test.mk 2012-03-08 18:31:29.000000000 +0100
+@@ -0,0 +1,43 @@
++#############################################################
++#
++# imx-test (test tools from Freescale BSP)
++#
++#############################################################
++IMX_TEST_VERSION = 10.11.01
++IMX_TEST_SOURCE = imx-test-$(IMX_TEST_VERSION).tar.gz
++IMX_TEST_SITE = ftp://ftp2.armadeus.com/armadeusw/download/
++IMX_TEST_DEPENDENCIES = imx-lib
++
++ifeq ($(BR2_CPU_NAME),imx27)
++BUILD_PLATFORM = IMX27
++BUILD_CFLAGS = -DCONFIG_ARCH_MX2
++else
++BUILD_PLATFORM = IMX51
++BUILD_CFLAGS = -DCONFIG_ARCH_MX5
++endif
++
++define IMX_TEST_BUILD_CMDS
++ $(MAKE) CC="$(TARGET_CC)" \
++ VERBOSE="" \
++ LINUXPATH=$(LINUX26_DIR) \
++ CROSS_COMPILE="$(HOST_DIR)/usr/bin/arm-linux-" \
++ PLATFORM=$(BUILD_PLATFORM) \
++ DIRS="mxc_sahara_test mxc_scc2 mxc_spi_test mxc_vpu_test mxc_uart_test mxc_usb_test" \
++ CFLAGS="$(BUILD_CFLAGS) -I$(LINUX26_DIR)/drivers/mxc/security/sahara2/include" \
++ -C $(@D)
++endef
++
++define IMX_TEST_INSTALL_TARGET_CMDS
++ $(MAKE) LINUXPATH=$(LINUX26_DIR) INSTALL_MOD_PATH=$(TARGET_DIR) install -C $(@D)/module_test
++ $(MAKE) DESTDIR=$(TARGET_DIR)/unit_tests PLATFORM=IMX51 install -C $(@D)
++endef
++
++define IMX_TEST_UNINSTALL_TARGET_CMDS
++ rm -rf $(TARGET_DIR)/unit_tests
++endef
++
++define IMX_TEST_CLEAN_CMDS
++ -$(MAKE) -C $(@D) clean
++endef
++
++$(eval $(call GENTARGETS))
+Index: buildroot/package/imx-test/imx-test-01_fixes.patch
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/imx-test-01_fixes.patch 2012-03-08 18:15:45.000000000 +0100
+@@ -0,0 +1,50 @@
++Add some fixes for imx-test. Some are temporary.
++
++Signed-off-by: Julien Boibessot <jul...@ar...>
++
++diff -urN -X buildroot/output/build/linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/module_test/Makefile imx-test-10.11.01.mod//module_test/Makefile
++--- imx-test-10.11.01/module_test/Makefile 2010-11-02 21:53:40.000000000 +0100
+++++ imx-test-10.11.01.mod//module_test/Makefile 2011-10-17 19:29:23.000000000 +0200
++@@ -39,7 +39,8 @@
++ $(SAHARA_TEST_SOURCE)user_wrap.o
++
++
++-obj-m += $(module_list-y)
+++obj-m += $(module_list-m)
+++obj-y += $(module_list-y)
++
++ EXTRA_CFLAGS := -DLINUX_KERNEL -DIMX_NEEDS_DEPRECATED_SYMBOLS
++
++@@ -51,7 +52,7 @@
++
++ # Need to remove sahara objects because the test app uses same objects
++ all:
++- $(MAKE) -C $(LINUXPATH) M=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules
+++ $(MAKE) -C $(LINUXPATH) SUBDIRS=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules
++
++ install:
++ $(MAKE) -C $(LINUXPATH) INSTALL_MOD_DIR=test M=`pwd` KBUILD_OUTPUT=$(KBUILD_OUTPUT) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) modules_install
++diff -urN -X buildroot/output/build/linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/module_test/scc2_test_driver.c imx-test-10.11.01.mod//module_test/scc2_test_driver.c
++--- imx-test-10.11.01/module_test/scc2_test_driver.c 2010-11-02 21:53:40.000000000 +0100
+++++ imx-test-10.11.01.mod//module_test/scc2_test_driver.c 2011-10-18 16:20:42.000000000 +0200
++@@ -26,6 +26,7 @@
++
++ #include "../include/scc2_test_driver.h"
++
+++#define SCC2_DEBUG
++
++ MODULE_AUTHOR("Freescale Semiconductor");
++ MODULE_DESCRIPTION("Test Device Driver for SCC2 (SMN/SCM) Driver");
++@@ -263,9 +264,9 @@
++ #ifdef SCC2_DEBUG
++ printk("SCC2 TEST: Error in ioctl(): (0x%x) is an invalid "
++ "command (0x%x,0x%x)\n", cmd, SCC2_TEST_GET_CONFIGURATION,
++- SCC2_TEST_ALLOC_SLOT);
++- printk("uint64 is %d, alloc is %d\n", sizeof(uint64_t),
++- sizeof(scc_alloc_slot_access));
+++ SCC2_TEST_RELEASE_PART);
+++/* printk("uint64 is %d, alloc is %d\n", sizeof(uint64_t),
+++ sizeof(scc_alloc_slot_access));*/
++ #endif
++ error_code = -IOCTL_SCC2_INVALID_CMD;
++ break;
+Index: buildroot/package/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ buildroot/package/imx-test/imx-test-02-mxc_vpu_test_v4l2_fixes.patch 2012-03-08 18:18:33.000000000 +0100
+@@ -0,0 +1,16 @@
++linux/videodev.h include doesn't exist anymore on V4L2 only (=recent kernels).
++
++Signed-off-by: Julien Boibessot <jul...@ar...>
++
++diff -urN -X linux-2.6.38.8/Documentation/dontdiff imx-test-10.11.01/test/mxc_vpu_test/vpu_test.h imx-test-10.11.01.mod/test/mxc_vpu_test/vpu_test.h
++--- imx-test-10.11.01/test/mxc_vpu_test/vpu_test.h 2010-11-02 21:53:40.000000000 +0100
+++++ imx-test-10.11.01.mod/test/mxc_vpu_test/vpu_test.h 2011-10-24 23:26:23.000000000 +0200
++@@ -16,7 +16,7 @@
++ #ifndef _DEC_H
++ #define _DEC_H
++
++-#include <linux/videodev.h>
+++#include <linux/videodev2.h>
++ #include <pthread.h>
++ #include <errno.h>
++ #include <stdint.h>
+Index: buildroot/package/Config.in
+===================================================================
+--- buildroot.orig/package/Config.in 2012-03-08 18:19:14.000000000 +0100
++++ buildroot/package/Config.in 2012-03-08 18:22:31.000000000 +0100
+@@ -206,6 +206,7 @@
+ endif
+ source "package/hwdata/Config.in"
+ source "package/i2c-tools/Config.in"
++source "package/imx-test/Config.in"
+ source "package/input-event-daemon/Config.in"
+ source "package/input-tools/Config.in"
+ source "package/iostat/Config.in"
diff --git a/patches/buildroot/2012.02/cleanup_buildroot.sh b/patches/buildroot/2012.02/cleanup_buildroot.sh
index 3f58e0a..86375d2 100755
--- a/patches/buildroot/2012.02/cleanup_buildroot.sh
+++ b/patches/buildroot/2012.02/cleanup_buildroot.sh
@@ -63,3 +63,4 @@ rm -rf buildroot/package/libcanfestival
rm -rf buildroot/package/python
rm -rf buildroot/package/gsmmux
rm -rf buildroot/package/imx-lib/
+rm -rf buildroot/package/imx-test/
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-08 16:40:19
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 0b7beaafe992a2f71437bf540a503762b8cd5871 (commit)
from d79c9fa65e41b265983026dbef986aea0a860d27 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 0b7beaafe992a2f71437bf540a503762b8cd5871
Author: Eric Jarrige <eri...@ar...>
Date: Thu Mar 8 17:50:08 2012 +0100
[ARMADEUS] update imx28-usb-downloader package to BE2012.02
-----------------------------------------------------------------------
Summary of changes:
buildroot/package/armadeus/Config.in | 2 +-
.../Config.in | 0
.../imx28-usb-downloader.mk} | 6 +++++-
3 files changed, 6 insertions(+), 2 deletions(-)
rename buildroot/package/armadeus/{gnet-imx28-usb-downloader => imx28-usb-downloader}/Config.in (100%)
rename buildroot/package/armadeus/{gnet-imx28-usb-downloader/gnet-imx28-usb-downloader.mk => imx28-usb-downloader/imx28-usb-downloader.mk} (92%)
diff --git a/buildroot/package/armadeus/Config.in b/buildroot/package/armadeus/Config.in
index 285cd33..2dedd75 100644
--- a/buildroot/package/armadeus/Config.in
+++ b/buildroot/package/armadeus/Config.in
@@ -5,7 +5,7 @@ source package/armadeus/as_devices/Config.in
source package/armadeus/demos/Config.in
source package/armadeus/fpgaregs/Config.in
source package/armadeus/fpga_firmware/Config.in
-source package/armadeus/gnet-imx28-usb-downloader/Config.in
+source package/armadeus/imx28-usb-downloader/Config.in
source package/armadeus/imxregs/Config.in
source package/armadeus/imxssi/Config.in
source package/armadeus/max5821ctrl/Config.in
diff --git a/buildroot/package/armadeus/gnet-imx28-usb-downloader/Config.in b/buildroot/package/armadeus/imx28-usb-downloader/Config.in
similarity index 100%
rename from buildroot/package/armadeus/gnet-imx28-usb-downloader/Config.in
rename to buildroot/package/armadeus/imx28-usb-downloader/Config.in
diff --git a/buildroot/package/armadeus/gnet-imx28-usb-downloader/gnet-imx28-usb-downloader.mk b/buildroot/package/armadeus/imx28-usb-downloader/imx28-usb-downloader.mk
similarity index 92%
rename from buildroot/package/armadeus/gnet-imx28-usb-downloader/gnet-imx28-usb-downloader.mk
rename to buildroot/package/armadeus/imx28-usb-downloader/imx28-usb-downloader.mk
index 843c087..06f2f90 100644
--- a/buildroot/package/armadeus/gnet-imx28-usb-downloader/gnet-imx28-usb-downloader.mk
+++ b/buildroot/package/armadeus/imx28-usb-downloader/imx28-usb-downloader.mk
@@ -33,6 +33,10 @@ define IMX28_USB_DOWNLOADER_INSTALL_TARGET_CMDS
$(TARGET_DIR)/usr/bin/$(IMX28_USB_DOWNLOADER_BIN_NAME)
endef
+ifeq ($(BUILDROOT_VERSION),2011.05)
$(eval $(call GENTARGETS,package,imx28-usb-downloader))
$(eval $(call GENTARGETS,package,imx28-usb-downloader,host))
-
+else
+$(eval $(call GENTARGETS,))
+$(eval $(call GENTARGETS,host))
+endif
hooks/post-receive
--
armadeus
|
|
From: jorasse <jo...@us...> - 2012-03-08 16:17:07
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via d79c9fa65e41b265983026dbef986aea0a860d27 (commit)
from cb823d7a347f5cdae8450726e5a7d8be5f5c746b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit d79c9fa65e41b265983026dbef986aea0a860d27
Author: Eric Jarrige <eri...@ar...>
Date: Thu Mar 8 17:27:07 2012 +0100
[BUILDROOT] some macros depend on some updates - refactoring expect after the BR2012.02 migration
-----------------------------------------------------------------------
Summary of changes:
...madeus_specific_options_for_config_header.patch | 25 ++++++++++---------
1 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/patches/buildroot/2012.02/175-u-boot-handle_armadeus_specific_options_for_config_header.patch b/patches/buildroot/2012.02/175-u-boot-handle_armadeus_specific_options_for_config_header.patch
index 5447fc4..f8f8e3d 100644
--- a/patches/buildroot/2012.02/175-u-boot-handle_armadeus_specific_options_for_config_header.patch
+++ b/patches/buildroot/2012.02/175-u-boot-handle_armadeus_specific_options_for_config_header.patch
@@ -3,27 +3,28 @@ Armadeus APF modules require some special U-Boot config variables to be set.
Index: buildroot/boot/uboot/uboot.mk
===================================================================
--- buildroot/boot/uboot/uboot.mk 2012-03-02 17:43:02.634245000 +0100
-+++ buildroot/boot/uboot/uboot.mk 2012-03-02 17:58:45.761539865 +0100
-@@ -85,6 +85,22 @@ define UBOOT_CONFIGURE_CMDS
- $(call insert_define,CONFIG_SERVERIP,$(BR2_TARGET_UBOOT_SERVERIP))
++++ buildroot/boot/uboot/uboot.mk 2012-03-08 17:13:34.000000000 +0100
+@@ -90,6 +90,23 @@ define UBOOT_CONFIGURE_CMDS
$(call insert_define,CONFIG_ETHADDR,$(BR2_TARGET_UBOOT_ETHADDR))
$(call insert_define,CONFIG_ETH1ADDR,$(BR2_TARGET_UBOOT_ETH1ADDR))
-+$(ifneq ($(strip $(BOARD_NAME)),""))
-+ $(call insert_define, CONFIG_BOARD_NAME, $(BOARD_NAME))
-+$(endif)
+ @echo "#endif /* __BR2_ADDED_CONFIG_H */" >> $(@D)/include/config.h
++
++ $(SED) "s,^#define CONFIG_BOARD_NAME.*,#define CONFIG_BOARD_NAME $(UBOOT_BOARD_NAME),g;"\
++ $(@D)/include/configs/$(UBOOT_BOARD_NAME).h
+$(ifneq ($(BR2_TARGET_ARMADEUS_SDRAM_SIZE),))
+ $(SED) "s,^#define CFG_SDRAM_MBYTE_SYZE.*,#define CFG_SDRAM_MBYTE_SYZE $(BR2_TARGET_ARMADEUS_SDRAM_SIZE),g;"\
-+ $(@D)/include/config.h
++ $(@D)/include/configs/$(UBOOT_BOARD_NAME).h
+ $(SED) "s,^#define CONFIG_SYS_SDRAM_MBYTE_SYZE.*,#define CONFIG_SYS_SDRAM_MBYTE_SYZE $(BR2_TARGET_ARMADEUS_SDRAM_SIZE),g;"\
-+ $(@D)/include/config.h
++ $(@D)/include/configs/$(UBOOT_BOARD_NAME).h
+$(endif)
+$(ifneq ($(strip $(BR2_TARGET_ARMADEUS_NR_SDRAM)),"1"))
+ $(SED) "s,^#define CONFIG_NR_DRAM_BANKS.*,#define CONFIG_NR_DRAM_BANKS $(BR2_TARGET_ARMADEUS_NR_SDRAM),g;"\
-+ $(@D)/include/config.h
++ $(@D)/include/configs/$(UBOOT_BOARD_NAME).h
+ $(SED) "s,^#define CONFIG_SYS_NR_DRAM_BANKS.*,#define CONFIG_SYS_NR_DRAM_BANKS $(BR2_TARGET_ARMADEUS_NR_SDRAM),g;"\
-+ $(@D)/include/config.h
-+ $(call insert_define, CONFIG_NR_DRAM_POPULATED, $(BR2_TARGET_ARMADEUS_NR_SDRAM))
++ $(@D)/include/configs/$(UBOOT_BOARD_NAME).h
++ $(SED) "s,^#define CONFIG_NR_DRAM_POPULATED.*,#define CONFIG_NR_DRAM_POPULATED $(BR2_TARGET_ARMADEUS_NR_SDRAM),g;"\
++ $(@D)/include/configs/$(UBOOT_BOARD_NAME).h
+$(endif)
- @echo "#endif /* __BR2_ADDED_CONFIG_H */" >> $(@D)/include/config.h
endef
+ define UBOOT_BUILD_CMDS
hooks/post-receive
--
armadeus
|