--- /dev/null
+From d4e4a1aad559e35d84b445d1379be94ad036984e Mon Sep 17 00:00:00 2001
+From: Alexandre Belloni <alexandre.belloni@piout.net>
+Date: Thu, 25 Oct 2012 22:57:14 +0200
+Subject: [PATCH] u-boot relocation fix
+
+Every AT91SAM plaforms were broken between 2010.12 and 2011.03 because
+of the relocation changes.
+
+We have to get JUMP_ADDR consistant with what is used by u-boot
+(CONFIG_SYS_TEXT_BASE).
+
+I didn't know what to do with at91sam9m10g45ek as it doesn't seems to be
+converted yet. But anyway, that means that it is either not working or
+doesn't care so changing it here shouldn't harm.
+
+We also have to increase the IMG_SIZE as u-boot as grown larger than the
+default value. As requested on the u-boot ML, we assume that it could
+be up to 495kB big.
+
+It means that now, you have to flash your kernel at 0x00084000 instead
+of 0x00042000. And so you also have to load it from that adress from
+u-boot.
+
+Then, remember that you could decrease IMG_SIZE to boot faster.
+
+Signed-off-by: Alexandre Belloni <alexandre.belloni@piout.net>
+---
+ board/at91sam9260ek/dataflash/at91sam9260ek.h | 4 ++--
+ board/at91sam9260ek/nandflash/at91sam9260ek.h | 2 +-
+ board/at91sam9261ek/dataflash/at91sam9261ek.h | 4 ++--
+ board/at91sam9261ek/nandflash/at91sam9261ek.h | 2 +-
+ board/at91sam9263ek/dataflash/at91sam9263ek.h | 4 ++--
+ board/at91sam9263ek/nandflash/at91sam9263ek.h | 2 +-
+ board/at91sam9g10ek/dataflash/at91sam9g10ek.h | 4 ++--
+ board/at91sam9g10ek/nandflash/at91sam9g10ek.h | 2 +-
+ board/at91sam9g20ek/dataflash/at91sam9g20ek.h | 4 ++--
+ board/at91sam9g20ek/nandflash/at91sam9g20ek.h | 2 +-
+ board/at91sam9m10ekes/dataflash/at91sam9m10ekes.h | 2 +-
+ .../at91sam9m10g45ek/dataflash/at91sam9m10g45ek.h | 2 +-
+ board/at91sam9rlek/dataflash/at91sam9rlek.h | 4 ++--
+ board/at91sam9rlek/nandflash/at91sam9rlek.h | 2 +-
+ board/at91sam9xeek/dataflash/at91sam9xeek.h | 4 ++--
+ board/at91sam9xeek/nandflash/at91sam9xeek.h | 2 +-
+ 16 files changed, 23 insertions(+), 23 deletions(-)
+
+diff --git a/board/at91sam9260ek/dataflash/at91sam9260ek.h b/board/at91sam9260ek/dataflash/at91sam9260ek.h
+index 1834246..91081a1 100644
+--- a/board/at91sam9260ek/dataflash/at91sam9260ek.h
++++ b/board/at91sam9260ek/dataflash/at91sam9260ek.h
+@@ -74,10 +74,10 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS1_DATAFLASH /* Boot on SPI NCS0 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x44B /* AT91SAM9260-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9260ek/nandflash/at91sam9260ek.h b/board/at91sam9260ek/nandflash/at91sam9260ek.h
+index 2cac601..f8fdff2 100644
+--- a/board/at91sam9260ek/nandflash/at91sam9260ek.h
++++ b/board/at91sam9260ek/nandflash/at91sam9260ek.h
+@@ -92,7 +92,7 @@
+ #define IMG_SIZE 0x40000 /* Image Size in NandFlash */
+
+ #define MACH_TYPE 0x44B /* AT91SAM9260-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9261ek/dataflash/at91sam9261ek.h b/board/at91sam9261ek/dataflash/at91sam9261ek.h
+index 8ce30e9..276ba3d 100644
+--- a/board/at91sam9261ek/dataflash/at91sam9261ek.h
++++ b/board/at91sam9261ek/dataflash/at91sam9261ek.h
+@@ -97,10 +97,10 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS0_DATAFLASH /* Boot on SPI NCS0 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x350 /* AT91SAM9261-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9261ek/nandflash/at91sam9261ek.h b/board/at91sam9261ek/nandflash/at91sam9261ek.h
+index badc3ac..e628c97 100644
+--- a/board/at91sam9261ek/nandflash/at91sam9261ek.h
++++ b/board/at91sam9261ek/nandflash/at91sam9261ek.h
+@@ -114,7 +114,7 @@
+ #define IMG_SIZE 0x40000 /* Image Size in NandFlash */
+
+ #define MACH_TYPE 0x350 /* AT91SAM9261-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9263ek/dataflash/at91sam9263ek.h b/board/at91sam9263ek/dataflash/at91sam9263ek.h
+index 5c9da4b..870f9e2 100644
+--- a/board/at91sam9263ek/dataflash/at91sam9263ek.h
++++ b/board/at91sam9263ek/dataflash/at91sam9263ek.h
+@@ -96,10 +96,10 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS0_DATAFLASH /* Boot on SPI NCS0 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x4B2 /* AT91SAM9263-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9263ek/nandflash/at91sam9263ek.h b/board/at91sam9263ek/nandflash/at91sam9263ek.h
+index 505afc7..8ab4f46 100644
+--- a/board/at91sam9263ek/nandflash/at91sam9263ek.h
++++ b/board/at91sam9263ek/nandflash/at91sam9263ek.h
+@@ -108,7 +108,7 @@
+ #define IMG_SIZE 0x40000 /* Image Size in NandFlash */
+
+ #define MACH_TYPE 1202 /* AT91SAM9263-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9g10ek/dataflash/at91sam9g10ek.h b/board/at91sam9g10ek/dataflash/at91sam9g10ek.h
+index b2faf44..f4f556b 100644
+--- a/board/at91sam9g10ek/dataflash/at91sam9g10ek.h
++++ b/board/at91sam9g10ek/dataflash/at91sam9g10ek.h
+@@ -98,10 +98,10 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS0_DATAFLASH /* Boot on SPI NCS0 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x350 /* AT91SAM9261-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9g10ek/nandflash/at91sam9g10ek.h b/board/at91sam9g10ek/nandflash/at91sam9g10ek.h
+index 66c40a3..6c3ecda 100644
+--- a/board/at91sam9g10ek/nandflash/at91sam9g10ek.h
++++ b/board/at91sam9g10ek/nandflash/at91sam9g10ek.h
+@@ -115,7 +115,7 @@
+ #define IMG_SIZE 0x40000 /* Image Size in NandFlash */
+
+ #define MACH_TYPE 0x350 /* AT91SAM9G10-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9g20ek/dataflash/at91sam9g20ek.h b/board/at91sam9g20ek/dataflash/at91sam9g20ek.h
+index eea0439..7fc70d6 100644
+--- a/board/at91sam9g20ek/dataflash/at91sam9g20ek.h
++++ b/board/at91sam9g20ek/dataflash/at91sam9g20ek.h
+@@ -75,10 +75,10 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS1_DATAFLASH /* Boot on SPI NCS1 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x658 /* AT91SAM9G20-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9g20ek/nandflash/at91sam9g20ek.h b/board/at91sam9g20ek/nandflash/at91sam9g20ek.h
+index 31bd499..e797e4d 100644
+--- a/board/at91sam9g20ek/nandflash/at91sam9g20ek.h
++++ b/board/at91sam9g20ek/nandflash/at91sam9g20ek.h
+@@ -93,7 +93,7 @@
+ #define IMG_SIZE 0x40000 /* Image Size in NandFlash */
+
+ #define MACH_TYPE 0x658 /* AT91SAM9G20-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9m10ekes/dataflash/at91sam9m10ekes.h b/board/at91sam9m10ekes/dataflash/at91sam9m10ekes.h
+index a60fd41..5587a00 100644
+--- a/board/at91sam9m10ekes/dataflash/at91sam9m10ekes.h
++++ b/board/at91sam9m10ekes/dataflash/at91sam9m10ekes.h
+@@ -89,7 +89,7 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS0_DATAFLASH /* Boot on SPI NCS0 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x9CD /* AT91SAM9M10-EKES */
+ #define JUMP_ADDR 0x73F00000 /* Final Jump Address */
+diff --git a/board/at91sam9m10g45ek/dataflash/at91sam9m10g45ek.h b/board/at91sam9m10g45ek/dataflash/at91sam9m10g45ek.h
+index 5c726b5..9090097 100644
+--- a/board/at91sam9m10g45ek/dataflash/at91sam9m10g45ek.h
++++ b/board/at91sam9m10g45ek/dataflash/at91sam9m10g45ek.h
+@@ -85,7 +85,7 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS0_DATAFLASH /* Boot on SPI NCS0 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x726 /* AT91SAM9M10G45-EK */
+ #define JUMP_ADDR 0x73F00000 /* Final Jump Address */
+diff --git a/board/at91sam9rlek/dataflash/at91sam9rlek.h b/board/at91sam9rlek/dataflash/at91sam9rlek.h
+index 05c42dc..150f17e 100644
+--- a/board/at91sam9rlek/dataflash/at91sam9rlek.h
++++ b/board/at91sam9rlek/dataflash/at91sam9rlek.h
+@@ -89,10 +89,10 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS0_DATAFLASH /* Boot on SPI NCS0 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 1326 /* AT91SAM9RL-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9rlek/nandflash/at91sam9rlek.h b/board/at91sam9rlek/nandflash/at91sam9rlek.h
+index 656b4ba..594db8f 100644
+--- a/board/at91sam9rlek/nandflash/at91sam9rlek.h
++++ b/board/at91sam9rlek/nandflash/at91sam9rlek.h
+@@ -112,7 +112,7 @@
+ #define IMG_SIZE 0x40000 /* Image Size in NandFlash */
+
+ #define MACH_TYPE 1326 /* AT91SAM9RL-EK */
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9xeek/dataflash/at91sam9xeek.h b/board/at91sam9xeek/dataflash/at91sam9xeek.h
+index 27d1822..08e515d 100644
+--- a/board/at91sam9xeek/dataflash/at91sam9xeek.h
++++ b/board/at91sam9xeek/dataflash/at91sam9xeek.h
+@@ -74,10 +74,10 @@
+ #define AT91C_SPI_PCS_DATAFLASH AT91C_SPI_PCS1_DATAFLASH /* Boot on SPI NCS1 */
+
+ #define IMG_ADDRESS 0x8400 /* Image Address in DataFlash */
+-#define IMG_SIZE 0x33900 /* Image Size in DataFlash */
++#define IMG_SIZE 0x7BC00 /* Image Size in DataFlash */
+
+ #define MACH_TYPE 0x44B /* AT91SAM9XE-EK same id as AT91SAM9260-EK*/
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+diff --git a/board/at91sam9xeek/nandflash/at91sam9xeek.h b/board/at91sam9xeek/nandflash/at91sam9xeek.h
+index 5dbc63e..9fac7cb 100644
+--- a/board/at91sam9xeek/nandflash/at91sam9xeek.h
++++ b/board/at91sam9xeek/nandflash/at91sam9xeek.h
+@@ -94,7 +94,7 @@
+ #define IMG_SIZE 0x40000 /* Image Size in NandFlash */
+
+ #define MACH_TYPE 0x44B /* AT91SAM9XE-EK same id as AT91SAM9260-EK*/
+-#define JUMP_ADDR 0x23F00000 /* Final Jump Address */
++#define JUMP_ADDR 0x21F00000 /* Final Jump Address */
+
+ /* ******************************************************************* */
+ /* Application Settings */
+--
+1.7.9.5
+