|
@@ -0,0 +1,27 @@
|
|
|
+http://lists.infradead.org/pipermail/linux-arm-kernel/2013-September/198444.html
|
|
|
+
|
|
|
+diff -Nur linux-3.9.11.orig/arch/arm/common/sharpsl_param.c linux-3.9.11/arch/arm/common/sharpsl_param.c
|
|
|
+--- linux-3.9.11.orig/arch/arm/common/sharpsl_param.c 2013-07-21 02:16:17.000000000 +0200
|
|
|
++++ linux-3.9.11/arch/arm/common/sharpsl_param.c 2013-09-18 16:27:10.000000000 +0200
|
|
|
+@@ -26,6 +26,7 @@
|
|
|
+ #ifdef CONFIG_ARCH_SA1100
|
|
|
+ #define PARAM_BASE 0xe8ffc000
|
|
|
+ #else
|
|
|
++#include <asm/memory.h>
|
|
|
+ #define PARAM_BASE 0xa0000a00
|
|
|
+ #endif
|
|
|
+ #define MAGIC_CHG(a,b,c,d) ( ( d << 24 ) | ( c << 16 ) | ( b << 8 ) | a )
|
|
|
+@@ -41,7 +42,12 @@
|
|
|
+
|
|
|
+ void sharpsl_save_param(void)
|
|
|
+ {
|
|
|
+- memcpy(&sharpsl_param, (void *)PARAM_BASE, sizeof(struct sharpsl_param_info));
|
|
|
++#ifdef CONFIG_ARCH_SA1100
|
|
|
++ void *param_start = (void *)PARAM_BASE;
|
|
|
++#else
|
|
|
++ void *param_start = phys_to_virt(PARAM_BASE);
|
|
|
++#endif
|
|
|
++ memcpy(&sharpsl_param, param_start, sizeof(struct sharpsl_param_info));
|
|
|
+
|
|
|
+ if (sharpsl_param.comadj_keyword != COMADJ_MAGIC)
|
|
|
+ sharpsl_param.comadj=-1;
|