Commit b47232e8 authored by Ulf Samuelsson's avatar Ulf Samuelsson
Browse files

Add AVR32 support for linux-2.6.28.2

parent d459b1bc
Loading
Loading
Loading
Loading
+7 −49
Original line number Diff line number Diff line
@@ -3,70 +3,28 @@ choice
	depends on BR2_KERNEL_ARCH_PATCH_ENABLED
	depends on BR2_avr32
	default BR2_ARCH_AVR32_2_6_27_6		if BR2_LINUX_2_6_27_6
	default BR2_ARCH_AVR32_2_6_25_10	if BR2_LINUX_2_6_25
	default BR2_ARCH_AVR32_2_6_24		if BR2_LINUX_2_6_24
	default BR2_ARCH_AVR32_2_6_23		if BR2_LINUX_2_6_23
	default BR2_ARCH_AVR32_2_6_22_10	if BR2_LINUX_2_6_22 || BR2_LINUX_2_6_22_10
	default BR2_ARCH_AVR32_2_6_22_1		if BR2_LINUX_2_6_22_1
	default BR2_ARCH_AVR32_2_6_21_5		if BR2_LINUX_2_6_21 || BR2_LINUX_2_6_21_5
	default BR2_ARCH_AVR32_2_6_20_4		if BR2_LINUX_2_6_20 || BR2_LINUX_2_6_20_4
	default BR2_ARCH_AVR32_2_6_24
	default BR2_ARCH_AVR32_2_6_28_2
	help
	  Select a patch to add to the Linux kernel

config	BR2_ARCH_AVR32_2_6_28_2
	bool "2.6.28.2"
	help
	  Apply the avr32 linux-2.6.28.2 patches

config	BR2_ARCH_AVR32_2_6_27_6
	bool "2.6.27.6"
	help
	  Apply the avr32 linux-2.6.27.6 patches

config	BR2_ARCH_AVR32_2_6_25_10
	bool "2.6.25.10"
	help
	  Apply the avr32 linux-2.6.25.10 patches

config	BR2_ARCH_AVR32_2_6_24
	bool "2.6.24"
	help
	  Apply the avr32 linux-2.6.24 patches

config	BR2_ARCH_AVR32_2_6_23
	bool "2.6.23"
	help
	  Apply the avr32 linux-2.6.23 patches

config	BR2_ARCH_AVR32_2_6_22_10
	bool "2.6.22.10"
	help
	  Apply the avr32 linux-2.6.22.10 patches

config	BR2_ARCH_AVR32_2_6_22_1
	bool "2.6.22.1"
	help
	  Apply the avr32 linux-2.6.22.1 patches

config	BR2_ARCH_AVR32_2_6_21_5
	bool "2.6.21.5"
	help
	  Apply the avr32 linux-2.6.21.5 patches

config	BR2_ARCH_AVR32_2_6_20_4
	bool "2.6.20.4"
	help
	  Apply the avr32 linux-2.6.20.4 patches

endchoice

config	BR2_KERNEL_ARCH_PATCH_VERSION
	string
	depends on BR2_KERNEL_ARCH_PATCH_ENABLED
	depends on BR2_avr32
	default "2.6.28.2"	if BR2_ARCH_AVR32_2_6_28_2
	default "2.6.27.6"	if BR2_ARCH_AVR32_2_6_27_6
	default "2.6.25.10"	if BR2_ARCH_AVR32_2_6_25_10
	default "2.6.24"	if BR2_ARCH_AVR32_2_6_24
	default "2.6.22.10"	if BR2_ARCH_AVR32_2_6_22_10
	default "2.6.22.1"	if BR2_ARCH_AVR32_2_6_22_1
	default "2.6.21.5"	if BR2_ARCH_AVR32_2_6_21_5
	default "2.6.20.4"	if BR2_ARCH_AVR32_2_6_20_4

config	BR2_KERNEL_ARCH_PATCH_DIR
	string
+16813 −0

File added.

Preview size limit exceeded, changes collapsed.

+23 −0
Original line number Diff line number Diff line
From f26e2224d46430ac4f6c0ddeb518f5766ba62b16 Mon Sep 17 00:00:00 2001
From: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Date: Wed, 26 Nov 2008 14:10:45 +0100
Subject: [PATCH 2/3] atmel_mpopfb: remove define DEBUG to disable debug output

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>

diff --git a/drivers/video/atmel_mpopfb.c b/drivers/video/atmel_mpopfb.c
index 0a07f7b..3b4b668 100644
--- a/drivers/video/atmel_mpopfb.c
+++ b/drivers/video/atmel_mpopfb.c
@@ -8,8 +8,6 @@
  * more details.
  */
 
-#define DEBUG
-
 #include <linux/clk.h>
 #include <linux/delay.h>
 #include <linux/dma-mapping.h>
-- 
1.5.6.3
+43 −0
Original line number Diff line number Diff line
diff -urN linux-2.6.28.2-0rig//drivers/video/atmel_mpopfb.c linux-2.6.28.2/drivers/video/atmel_mpopfb.c
--- linux-2.6.28.2-0rig//drivers/video/atmel_mpopfb.c	2009-01-29 09:41:04.000000000 +0100
+++ linux-2.6.28.2/drivers/video/atmel_mpopfb.c	2009-01-29 09:43:46.000000000 +0100
@@ -315,6 +315,10 @@
 static void atmel_mpopfb_start(struct atmel_mpopfb_info *sinfo)
 {
 	if (!sinfo->running) {
+		unsigned int line_cache_disable =
+			sinfo->baseimg_info.line_cache_disable ?
+			ATMEL_MPOP_CR_CACHEDIS_MASK : 0;
+
 		dev_dbg(sinfo->info->device, "  * Starting MPOP.\n");
 
 		/* Enable all error interrupts. */
@@ -325,9 +329,9 @@
 		 * reading from the slave interface it will start
 		 * generating a frame.
 		 */
-		mpop_writel(sinfo, ATMEL_MPOP_CR,
-			    ATMEL_MPOP_CR_EN_MASK
-			    /*| ATMEL_MPOP_CR_OUT_BGR_MASK */ );
+		mpop_writel(sinfo, ATMEL_MPOP_CR, ATMEL_MPOP_CR_EN_MASK
+				| line_cache_disable
+				| ATMEL_MPOP_CR_OUT_BGR_MASK);
 
 		sinfo->running = 1;
 	}
diff -urN linux-2.6.28.2-0rig//include/linux/atmel_mpopfb.h linux-2.6.28.2/include/linux/atmel_mpopfb.h
--- linux-2.6.28.2-0rig//include/linux/atmel_mpopfb.h	2009-01-29 09:41:04.000000000 +0100
+++ linux-2.6.28.2/include/linux/atmel_mpopfb.h	2009-01-29 09:43:46.000000000 +0100
@@ -42,9 +42,11 @@
 	unsigned xsize;
 	unsigned ysize;
 
-	/* Signal that we should flip the video. */
+	/* Signal for flipping the video. */
 	int flip;
 
+	/* Signal for disabling the line cache. */
+	int line_cache_disable;
 };
 
 enum atmel_mpopfb_overlay_type {
+35 −0
Original line number Diff line number Diff line
Index: linux-2.6.27.6/arch/avr32/include/asm/byteorder.h
===================================================================
--- linux-2.6.27.6.orig/arch/avr32/include/asm/byteorder.h	2008-11-28 16:47:15.000000000 +0100
+++ linux-2.6.27.6/arch/avr32/include/asm/byteorder.h	2008-11-28 16:47:31.000000000 +0100
@@ -7,8 +7,9 @@
 #include <asm/types.h>
 #include <linux/compiler.h>
 
-#define __BIG_ENDIAN
+#define __BIG_ENDIAN 4321
 #define __SWAB_64_THRU_32__
+#define __BYTEORDER_HAS_U64__
 
 #ifdef __CHECKER__
 extern unsigned long __builtin_bswap_32(unsigned long x);
@@ -33,5 +34,5 @@
 #define __arch_swab32 __arch_swab32
 #endif
 
-#include <linux/byteorder.h>
+#include <linux/byteorder/big_endian.h>
 #endif /* __ASM_AVR32_BYTEORDER_H */
Index: linux-2.6.27.6/arch/avr32/mach-at32ap/include/mach/io.h
===================================================================
--- linux-2.6.27.6.orig/arch/avr32/mach-at32ap/include/mach/io.h	2008-11-28 16:47:58.000000000 +0100
+++ linux-2.6.27.6/arch/avr32/mach-at32ap/include/mach/io.h	2008-11-28 16:48:15.000000000 +0100
@@ -1,7 +1,7 @@
 #ifndef __ASM_AVR32_ARCH_AT32AP_IO_H
 #define __ASM_AVR32_ARCH_AT32AP_IO_H
 
-#include <linux/swab.h>
+#include <linux/byteorder/swabb.h>
 
 #if defined(CONFIG_AP700X_32_BIT_SMC)
 # define __swizzle_addr_b(addr)	(addr ^ 3UL)
Loading