summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2008-09-16 09:13:06 +0000
committerKoen Kooi <koen@openembedded.org>2008-09-16 09:13:06 +0000
commit19c3e7433301c85c65b48080f6929eda0cca8818 (patch)
tree7e82b4efe6b9b4b09632a4078646d294b140a7a9
parent8ba68cd0307c3029df332f01116e2e9b1b06a759 (diff)
linux-omap git: refresh patchset
-rw-r--r--packages/linux/linux-omap/000-mru-make-video-mode-selcatable.diff155
-rw-r--r--packages/linux/linux-omap/002-mru-set-default-800x600.diff61
-rw-r--r--packages/linux/linux-omap/004-mru-export-omapfb-register-panel.diff25
-rw-r--r--packages/linux/linux-omap/005-mru-add-omapfb-unregister-panel.diff67
-rw-r--r--packages/linux/linux-omap/006-mru-lcd-as-modules.diff174
-rw-r--r--packages/linux/linux-omap/007-mru-omapfb-as-module.diff50
-rw-r--r--packages/linux/linux-omap/008-mru-lcd-omap3beagle-license.diff22
-rw-r--r--packages/linux/linux-omap/009-mru-unregister-beagle-lcd.diff24
-rw-r--r--packages/linux/linux-omap/03-enable-overlay-opt.diff27
-rw-r--r--packages/linux/linux-omap/06-ensure-fclk.diff31
-rw-r--r--packages/linux/linux-omap/07-set-burst-size.diff21
-rw-r--r--packages/linux/linux-omap/beagleboard/defconfig2
-rw-r--r--packages/linux/linux-omap/mru-add-clk-get-parent.diff (renamed from packages/linux/linux-omap/mru-clocks2.diff)24
-rw-r--r--packages/linux/linux-omap/mru-enable-overlay-optimalization.diff (renamed from packages/linux/linux-omap/001-mru-enable-overlay.diff)22
-rw-r--r--packages/linux/linux-omap/mru-fix-display-panning.diff (renamed from packages/linux/linux-omap/05-fix-display-panning.diff)22
-rw-r--r--packages/linux/linux-omap/mru-fix-timings.diff (renamed from packages/linux/linux-omap/01-fix-timing-print.diff)17
-rw-r--r--packages/linux/linux-omap/mru-improve-pixclock-config.diff (renamed from packages/linux/linux-omap/mru-clocks3.diff)23
-rw-r--r--packages/linux/linux-omap/mru-make-dpll4-m4-ck-programmable.diff (renamed from packages/linux/linux-omap/mru-clocks1.diff)16
-rw-r--r--packages/linux/linux-omap/mru-make-video-timings-selectable.diff (renamed from packages/linux/linux-omap/003-mru-omapfb-more-video-modes.diff)217
-rw-r--r--packages/linux/linux-omap/no-cortex-deadlock.patch68
-rw-r--r--packages/linux/linux-omap/omap3evm/defconfig24
-rw-r--r--packages/linux/linux-omap/strongly-ordered-memory.diff18
-rw-r--r--packages/linux/linux-omap_git.bb31
23 files changed, 250 insertions, 891 deletions
diff --git a/packages/linux/linux-omap/000-mru-make-video-mode-selcatable.diff b/packages/linux/linux-omap/000-mru-make-video-mode-selcatable.diff
deleted file mode 100644
index e36aeb5cff..0000000000
--- a/packages/linux/linux-omap/000-mru-make-video-mode-selcatable.diff
+++ /dev/null
@@ -1,155 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Mon, 18 Aug 2008 22:55:09 +0000 (+0100)
-Subject: OMAP: Make video mode commandline-selectable from pre-defined list
-X-Git-Tag: beagle-9
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=c76a61167997a1dc680c421b1cdb753dfd492b0a
-
-OMAP: Make video mode commandline-selectable from pre-defined list
-
-This adds a (small) list of video modes and allows one to be
-selected with video=omapfb:mode:name on the command line,
-overriding the defaults from lcd_*.c.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/arch/arm/plat-omap/include/mach/omapfb.h b/arch/arm/plat-omap/include/mach/omapfb.h
-index a4a84f3..92e9ffd 100644
---- a/arch/arm/plat-omap/include/mach/omapfb.h
-+++ b/arch/arm/plat-omap/include/mach/omapfb.h
-@@ -192,6 +192,20 @@ enum omapfb_update_mode {
-
- struct omapfb_device;
-
-+struct video_mode {
-+ const char *name;
-+ int x_res, y_res;
-+ int pixel_clock; /* In kHz */
-+ int hsw; /* Horizontal synchronization
-+ pulse width */
-+ int hfp; /* Horizontal front porch */
-+ int hbp; /* Horizontal back porch */
-+ int vsw; /* Vertical synchronization
-+ pulse width */
-+ int vfp; /* Vertical front porch */
-+ int vbp; /* Vertical back porch */
-+};
-+
- struct lcd_panel {
- const char *name;
- int config; /* TFT/STN, signal inversion */
-diff --git a/drivers/video/omap/omapfb_main.c b/drivers/video/omap/omapfb_main.c
-index 24242b9..f2229b1 100644
---- a/drivers/video/omap/omapfb_main.c
-+++ b/drivers/video/omap/omapfb_main.c
-@@ -40,6 +40,7 @@ static unsigned long def_vxres;
- static unsigned long def_vyres;
- static unsigned int def_rotate;
- static unsigned int def_mirror;
-+static int def_mode = -1;
-
- #ifdef CONFIG_FB_OMAP_MANUAL_UPDATE
- static int manual_update = 1;
-@@ -80,6 +81,57 @@ static struct caps_table_struct color_caps[] = {
- { 1 << OMAPFB_COLOR_YUY422, "YUY422", },
- };
-
-+static const struct video_mode video_modes[] = {
-+ {
-+ .name = "1280x720@50",
-+ .x_res = 1280,
-+ .y_res = 720,
-+ .hfp = 440,
-+ .hsw = 40,
-+ .hbp = 220,
-+ .vfp = 20,
-+ .vsw = 5,
-+ .vbp = 5,
-+ .pixel_clock = 74250,
-+ },
-+ {
-+ .name = "1280x720@60",
-+ .x_res = 1280,
-+ .y_res = 720,
-+ .hfp = 110,
-+ .hsw = 40,
-+ .hbp = 220,
-+ .vfp = 20,
-+ .vsw = 5,
-+ .vbp = 5,
-+ .pixel_clock = 74250,
-+ },
-+ {
-+ .name = "1920x1080@24",
-+ .x_res = 1920,
-+ .y_res = 1080,
-+ .hfp = 148,
-+ .hsw = 44,
-+ .hbp = 638,
-+ .vfp = 36,
-+ .vsw = 5,
-+ .vbp = 4,
-+ .pixel_clock = 74160,
-+ },
-+ {
-+ .name = "1920x1080@25",
-+ .x_res = 1920,
-+ .y_res = 1080,
-+ .hfp = 148,
-+ .hsw = 44,
-+ .hbp = 528,
-+ .vfp = 36,
-+ .vsw = 5,
-+ .vbp = 4,
-+ .pixel_clock = 74250,
-+ }
-+};
-+
- /*
- * ---------------------------------------------------------------------------
- * LCD panel
-@@ -1711,6 +1763,18 @@ static int omapfb_do_probe(struct platform_device *pdev,
- goto cleanup;
- }
-
-+ if (def_mode != -1) {
-+ fbdev->panel->x_res = video_modes[def_mode].x_res;
-+ fbdev->panel->y_res = video_modes[def_mode].y_res;
-+ fbdev->panel->pixel_clock = video_modes[def_mode].pixel_clock;
-+ fbdev->panel->hsw = video_modes[def_mode].hsw;
-+ fbdev->panel->hfp = video_modes[def_mode].hfp;
-+ fbdev->panel->hbp = video_modes[def_mode].hbp;
-+ fbdev->panel->vsw = video_modes[def_mode].vsw;
-+ fbdev->panel->vfp = video_modes[def_mode].vfp;
-+ fbdev->panel->vbp = video_modes[def_mode].vbp;
-+ }
-+
- r = fbdev->panel->init(fbdev->panel, fbdev);
- if (r)
- goto cleanup;
-@@ -1867,6 +1931,16 @@ static struct platform_driver omapfb_driver = {
- },
- };
-
-+static int __init omapfb_find_mode(char *mode)
-+{
-+ int i;
-+
-+ for (i = 0; i < sizeof(video_modes)/sizeof(video_modes[0]); i++)
-+ if (!strcmp(mode, video_modes[i].name))
-+ return i;
-+ return -1;
-+}
-+
- #ifndef MODULE
-
- /* Process kernel command line parameters */
-@@ -1915,6 +1989,8 @@ static int __init omapfb_setup(char *options)
- def_mirror = (simple_strtoul(this_opt + 7, NULL, 0));
- else if (!strncmp(this_opt, "manual_update", 13))
- manual_update = 1;
-+ else if (!strncmp(this_opt, "mode:", 5))
-+ def_mode = omapfb_find_mode(this_opt + 5);
- else {
- pr_debug("omapfb: invalid option\n");
- r = -1;
diff --git a/packages/linux/linux-omap/002-mru-set-default-800x600.diff b/packages/linux/linux-omap/002-mru-set-default-800x600.diff
deleted file mode 100644
index b45f849ba4..0000000000
--- a/packages/linux/linux-omap/002-mru-set-default-800x600.diff
+++ /dev/null
@@ -1,61 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Fri, 29 Aug 2008 00:42:02 +0000 (+0100)
-Subject: OMAP: Set Beagleboard default video mode to 800x600 60Hz
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=17b546e6d65aee124a2b691727cdb2c1dcadaec5
-
-OMAP: Set Beagleboard default video mode to 800x600 60Hz
-
-This sets the default video mode on the Beagleboard to
-800x600 60Hz VESA CVT 0.48M3-R, 16bpp. This is compatible
-with a wider range of monitors than the old default values.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/drivers/video/omap/lcd_omap3beagle.c b/drivers/video/omap/lcd_omap3beagle.c
-index 9637735..f2861ec 100644
---- a/drivers/video/omap/lcd_omap3beagle.c
-+++ b/drivers/video/omap/lcd_omap3beagle.c
-@@ -31,10 +31,6 @@
-
- #define LCD_PANEL_ENABLE_GPIO 170
-
--#define LCD_XRES 1024
--#define LCD_YRES 768
--#define LCD_PIXCLOCK 64000 /* in kHz */
--
- static int omap3beagle_panel_init(struct lcd_panel *panel,
- struct omapfb_device *fbdev)
- {
-@@ -65,19 +61,19 @@ static unsigned long omap3beagle_panel_get_caps(struct lcd_panel *panel)
- struct lcd_panel omap3beagle_panel = {
- .name = "omap3beagle",
- .config = OMAP_LCDC_PANEL_TFT,
--
-- .bpp = 24,
-+ .bpp = 16,
- .data_lines = 24,
-- .x_res = LCD_XRES,
-- .y_res = LCD_YRES,
-- .hsw = 3, /* hsync_len (4) - 1 */
-- .hfp = 3, /* right_margin (4) - 1 */
-- .hbp = 39, /* left_margin (40) - 1 */
-- .vsw = 1, /* vsync_len (2) - 1 */
-- .vfp = 2, /* lower_margin */
-- .vbp = 7, /* upper_margin (8) - 1 */
--
-- .pixel_clock = LCD_PIXCLOCK,
-+
-+ /* 800 x 600 @ 60 Hz Reduced blanking VESA CVT 0.48M3-R */
-+ .x_res = 800,
-+ .y_res = 600,
-+ .hfp = 48,
-+ .hsw = 32,
-+ .hbp = 80,
-+ .vfp = 3,
-+ .vsw = 4,
-+ .vbp = 11,
-+ .pixel_clock = 35500,
-
- .init = omap3beagle_panel_init,
- .cleanup = omap3beagle_panel_cleanup,
diff --git a/packages/linux/linux-omap/004-mru-export-omapfb-register-panel.diff b/packages/linux/linux-omap/004-mru-export-omapfb-register-panel.diff
deleted file mode 100644
index 24ebcdea52..0000000000
--- a/packages/linux/linux-omap/004-mru-export-omapfb-register-panel.diff
+++ /dev/null
@@ -1,25 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 3 Sep 2008 20:56:03 +0000 (+0100)
-Subject: OMAP: Export omapfb_register_panel()
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=44811584aded9e47a83d69ad31002a6bb94730dc
-
-OMAP: Export omapfb_register_panel()
-
-This exports omapfb_register_panel() for use by LCD drivers built
-as modules.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/drivers/video/omap/omapfb_main.c b/drivers/video/omap/omapfb_main.c
-index 2e53d8f..912cb0c 100644
---- a/drivers/video/omap/omapfb_main.c
-+++ b/drivers/video/omap/omapfb_main.c
-@@ -1997,6 +1997,7 @@ void omapfb_register_panel(struct lcd_panel *panel)
- if (fbdev_pdev != NULL)
- omapfb_do_probe(fbdev_pdev, fbdev_panel);
- }
-+EXPORT_SYMBOL(omapfb_register_panel);
-
- /* Called when the device is being detached from the driver */
- static int omapfb_remove(struct platform_device *pdev)
diff --git a/packages/linux/linux-omap/005-mru-add-omapfb-unregister-panel.diff b/packages/linux/linux-omap/005-mru-add-omapfb-unregister-panel.diff
deleted file mode 100644
index faee384e74..0000000000
--- a/packages/linux/linux-omap/005-mru-add-omapfb-unregister-panel.diff
+++ /dev/null
@@ -1,67 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 3 Sep 2008 20:57:59 +0000 (+0100)
-Subject: OMAP: Add omapfb_unregister_panel() function
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=85b5d3ba7221193cb2315256b69e97f34d2ae3b7
-
-OMAP: Add omapfb_unregister_panel() function
-
-This adds the function omapfb_unregister_panel() for use by LCD
-drivers built as modules.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/arch/arm/plat-omap/include/mach/omapfb.h b/arch/arm/plat-omap/include/mach/omapfb.h
-index a4a84f3..3ccb076 100644
---- a/arch/arm/plat-omap/include/mach/omapfb.h
-+++ b/arch/arm/plat-omap/include/mach/omapfb.h
-@@ -378,6 +378,7 @@ extern struct lcd_ctrl omap2_disp_ctrl;
-
- extern void omapfb_reserve_sdram(void);
- extern void omapfb_register_panel(struct lcd_panel *panel);
-+extern void omapfb_unregister_panel(struct lcd_panel *panel);
- extern void omapfb_write_first_pixel(struct omapfb_device *fbdev, u16 pixval);
- extern void omapfb_notify_clients(struct omapfb_device *fbdev,
- unsigned long event);
-diff --git a/drivers/video/omap/omapfb_main.c b/drivers/video/omap/omapfb_main.c
-index 912cb0c..6d09e03 100644
---- a/drivers/video/omap/omapfb_main.c
-+++ b/drivers/video/omap/omapfb_main.c
-@@ -1736,7 +1736,8 @@ static void omapfb_free_resources(struct omapfb_device *fbdev, int state)
- case 7:
- omapfb_unregister_sysfs(fbdev);
- case 6:
-- fbdev->panel->disable(fbdev->panel);
-+ if (fbdev->panel)
-+ fbdev->panel->disable(fbdev->panel);
- case 5:
- omapfb_set_update_mode(fbdev, OMAPFB_UPDATE_DISABLED);
- case 4:
-@@ -1744,7 +1745,8 @@ static void omapfb_free_resources(struct omapfb_device *fbdev, int state)
- case 3:
- ctrl_cleanup(fbdev);
- case 2:
-- fbdev->panel->cleanup(fbdev->panel);
-+ if (fbdev->panel)
-+ fbdev->panel->cleanup(fbdev->panel);
- case 1:
- dev_set_drvdata(fbdev->dev, NULL);
- kfree(fbdev);
-@@ -1999,6 +2001,17 @@ void omapfb_register_panel(struct lcd_panel *panel)
- }
- EXPORT_SYMBOL(omapfb_register_panel);
-
-+void omapfb_unregister_panel(struct lcd_panel *panel)
-+{
-+ BUG_ON(fbdev_panel != panel);
-+
-+ panel->disable(panel);
-+
-+ omapfb_dev->panel = NULL;
-+ fbdev_panel = NULL;
-+}
-+EXPORT_SYMBOL(omapfb_unregister_panel);
-+
- /* Called when the device is being detached from the driver */
- static int omapfb_remove(struct platform_device *pdev)
- {
diff --git a/packages/linux/linux-omap/006-mru-lcd-as-modules.diff b/packages/linux/linux-omap/006-mru-lcd-as-modules.diff
deleted file mode 100644
index e522b3f7bf..0000000000
--- a/packages/linux/linux-omap/006-mru-lcd-as-modules.diff
+++ /dev/null
@@ -1,174 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 3 Sep 2008 23:05:33 +0000 (+0100)
-Subject: OMAP: Build LCD drivers as separate modules
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=127dc3100fe9d25ed2b6c0a056e4160cc05db653
-
-OMAP: Build LCD drivers as separate modules
-
-This enables building the various LCD drivers as modules separate
-from omapfb.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/drivers/video/omap/Kconfig b/drivers/video/omap/Kconfig
-index 9977e80..93cd760 100644
---- a/drivers/video/omap/Kconfig
-+++ b/drivers/video/omap/Kconfig
-@@ -53,6 +53,70 @@ config FB_OMAP_LCD_MIPID
- the Mobile Industry Processor Interface DBI-C/DCS
- specification. (Supported LCDs: Philips LPH8923, Sharp LS041Y3)
-
-+config OMAP_FB_LCD_AMS_DELTA
-+ tristate "AMS DELTA LCD support"
-+ depends on FB_OMAP && MACH_AMS_DELTA
-+
-+config OMAP_FB_LCD_H2
-+ tristate "H2 LCD support"
-+ depends on FB_OMAP && MACH_OMAP_H2
-+
-+config OMAP_FB_LCD_H3
-+ tristate "H3 LCD support"
-+ depends on FB_OMAP && MACH_OMAP_H3
-+
-+config OMAP_FB_LCD_H4
-+ tristate "OMAP 2420 H4 LCD support"
-+ depends on FB_OMAP && MACH_OMAP_H4
-+
-+config OMAP_FB_LCD_PALMTE
-+ tristate "PALMTE LCD support"
-+ depends on FB_OMAP && MACH_OMAP_PALMTE
-+
-+config OMAP_FB_LCD_PALMTT
-+ tristate "PALMTT LCD support"
-+ depends on FB_OMAP && MACH_OMAP_PALMTT
-+
-+config OMAP_FB_LCD_PALMZ71
-+ tristate "PALMZ71 LCD support"
-+ depends on FB_OMAP && MACH_OMAP_PALMZ71
-+
-+config OMAP_FB_LCD_INN1610
-+ tristate "INN1610 LCD support"
-+ depends on FB_OMAP && ARCH_OMAP16XX && MACH_OMAP_INNOVATOR
-+
-+config OMAP_FB_LCD_INN1510
-+ tristate "INN1510 LCD support"
-+ depends on FB_OMAP && ARCH_OMAP15XX && MACH_OMAP_INNOVATOR
-+
-+config OMAP_FB_LCD_OSK
-+ tristate "OSK LCD support"
-+ depends on FB_OMAP && MACH_OMAP_OSK
-+
-+config OMAP_FB_LCD_SX1
-+ tristate "SX1 LCD support"
-+ depends on FB_OMAP && MACH_SX1
-+
-+config OMAP_FB_LCD_APOLLON
-+ tristate "OMAP 2420 Apollon LCD support"
-+ depends on FB_OMAP && MACH_OMAP_APOLLON
-+
-+config OMAP_FB_LCD_2430SDP
-+ tristate "OMAP 2430/3430 SDP LCD support"
-+ depends on FB_OMAP && (MACH_OMAP_2430SDP || MACH_OMAP_3430SDP)
-+
-+config OMAP_FB_LCD_OMAP2EVM
-+ tristate "OMAP 2530 EVM LCD support"
-+ depends on FB_OMAP && MACH_OMAP2EVM
-+
-+config OMAP_FB_LCD_OMAP3EVM
-+ tristate "OMAP 3530 EVM LCD support"
-+ depends on FB_OMAP && MACH_OMAP3EVM
-+
-+config OMAP_FB_LCD_OMAP3BEAGLE
-+ tristate "Beagle board DVI port support"
-+ depends on FB_OMAP && MACH_OMAP3_BEAGLE
-+
- config FB_OMAP_BOOTLOADER_INIT
- bool "Check bootloader initialization"
- depends on FB_OMAP
-diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile
-dissimilarity index 64%
-index f9b5cd4..dbdcd67 100644
---- a/drivers/video/omap/Makefile
-+++ b/drivers/video/omap/Makefile
-@@ -1,40 +1,40 @@
--#
--# Makefile for the new OMAP framebuffer device driver
--#
--
--obj-$(CONFIG_FB_OMAP) += omapfb.o
--
--objs-yy := omapfb_main.o
--
--objs-y$(CONFIG_ARCH_OMAP1) += lcdc.o
--objs-y$(CONFIG_ARCH_OMAP2) += dispc.o
--objs-y$(CONFIG_ARCH_OMAP3) += dispc.o
--
--objs-$(CONFIG_ARCH_OMAP1)$(CONFIG_FB_OMAP_LCDC_EXTERNAL) += sossi.o
--objs-$(CONFIG_ARCH_OMAP2)$(CONFIG_FB_OMAP_LCDC_EXTERNAL) += rfbi.o
--
--objs-y$(CONFIG_FB_OMAP_LCDC_HWA742) += hwa742.o
--objs-y$(CONFIG_FB_OMAP_LCDC_BLIZZARD) += blizzard.o
--
--objs-y$(CONFIG_MACH_AMS_DELTA) += lcd_ams_delta.o
--objs-y$(CONFIG_MACH_OMAP_H4) += lcd_h4.o
--objs-y$(CONFIG_MACH_OMAP_H3) += lcd_h3.o
--objs-y$(CONFIG_MACH_OMAP_H2) += lcd_h2.o
--objs-y$(CONFIG_MACH_OMAP_PALMTE) += lcd_palmte.o
--objs-y$(CONFIG_MACH_OMAP_PALMTT) += lcd_palmtt.o
--objs-y$(CONFIG_MACH_OMAP_PALMZ71) += lcd_palmz71.o
--objs-$(CONFIG_ARCH_OMAP16XX)$(CONFIG_MACH_OMAP_INNOVATOR) += lcd_inn1610.o
--objs-$(CONFIG_ARCH_OMAP15XX)$(CONFIG_MACH_OMAP_INNOVATOR) += lcd_inn1510.o
--objs-y$(CONFIG_MACH_OMAP_OSK) += lcd_osk.o
--objs-y$(CONFIG_MACH_SX1) += lcd_sx1.o
--
--objs-y$(CONFIG_MACH_OMAP_APOLLON) += lcd_apollon.o
--objs-y$(CONFIG_MACH_OMAP_2430SDP) += lcd_2430sdp.o
--objs-y$(CONFIG_MACH_OMAP_3430SDP) += lcd_2430sdp.o
--objs-y$(CONFIG_MACH_OMAP2EVM) += lcd_omap2evm.o
--objs-y$(CONFIG_MACH_OMAP3EVM) += lcd_omap3evm.o
--objs-y$(CONFIG_MACH_OMAP3_BEAGLE) += lcd_omap3beagle.o
--objs-y$(CONFIG_FB_OMAP_LCD_MIPID) += lcd_mipid.o
--
--omapfb-objs := $(objs-yy)
--
-+#
-+# Makefile for the new OMAP framebuffer device driver
-+#
-+
-+obj-$(CONFIG_FB_OMAP) += omapfb.o
-+
-+objs-yy := omapfb_main.o
-+
-+objs-y$(CONFIG_ARCH_OMAP1) += lcdc.o
-+objs-y$(CONFIG_ARCH_OMAP2) += dispc.o
-+objs-y$(CONFIG_ARCH_OMAP3) += dispc.o
-+
-+objs-$(CONFIG_ARCH_OMAP1)$(CONFIG_FB_OMAP_LCDC_EXTERNAL) += sossi.o
-+objs-$(CONFIG_ARCH_OMAP2)$(CONFIG_FB_OMAP_LCDC_EXTERNAL) += rfbi.o
-+
-+objs-y$(CONFIG_FB_OMAP_LCDC_HWA742) += hwa742.o
-+objs-y$(CONFIG_FB_OMAP_LCDC_BLIZZARD) += blizzard.o
-+
-+obj-$(CONFIG_OMAP_FB_LCD_AMS_DELTA) += lcd_ams_delta.o
-+obj-$(CONFIG_OMAP_FB_LCD_H4) += lcd_h4.o
-+obj-$(CONFIG_OMAP_FB_LCD_H3) += lcd_h3.o
-+obj-$(CONFIG_OMAP_FB_LCD_H2) += lcd_h2.o
-+obj-$(CONFIG_OMAP_FB_LCD_PALMTE) += lcd_palmte.o
-+obj-$(CONFIG_OMAP_FB_LCD_PALMTT) += lcd_palmtt.o
-+obj-$(CONFIG_OMAP_FB_LCD_PALMZ71) += lcd_palmz71.o
-+obj-$(CONFIG_OMAP_FB_LCD_INN1610) += lcd_inn1610.o
-+obj-$(CONFIG_OMAP_FB_LCD_INN1510) += lcd_inn1510.o
-+obj-$(CONFIG_OMAP_FB_LCD_OSK) += lcd_osk.o
-+obj-$(CONFIG_OMAP_FB_LCD_SX1) += lcd_sx1.o
-+
-+obj-$(CONFIG_OMAP_FB_LCD_APOLLON) += lcd_apollon.o
-+obj-$(CONFIG_OMAP_FB_LCD_2430SDP) += lcd_2430sdp.o
-+obj-$(CONFIG_OMAP_FB_LCD_2430SDP) += lcd_2430sdp.o
-+obj-$(CONFIG_OMAP_FB_LCD_OMAP2EVM) += lcd_omap2evm.o
-+obj-$(CONFIG_OMAP_FB_LCD_OMAP3EVM) += lcd_omap3evm.o
-+obj-$(CONFIG_OMAP_FB_LCD_OMAP3BEAGLE) += lcd_omap3beagle.o
-+obj-$(CONFIG_OMAP_FB_LCD_MIPID) += lcd_mipid.o
-+
-+omapfb-objs := $(objs-yy)
-+
diff --git a/packages/linux/linux-omap/007-mru-omapfb-as-module.diff b/packages/linux/linux-omap/007-mru-omapfb-as-module.diff
deleted file mode 100644
index e1eed0d154..0000000000
--- a/packages/linux/linux-omap/007-mru-omapfb-as-module.diff
+++ /dev/null
@@ -1,50 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 3 Sep 2008 23:10:08 +0000 (+0100)
-Subject: OMAP: Fix omapfb built as module
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=ae65001ce247e510121bcda21775263bb4c42e05
-
-OMAP: Fix omapfb built as module
-
-This makes it possible to build omapfb as a module.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c
-index 6187e8f..4213c4f 100644
---- a/drivers/video/omap/dispc.c
-+++ b/drivers/video/omap/dispc.c
-@@ -1073,7 +1073,8 @@ static int mmap_kern(struct omapfb_mem_region *region)
- pgprot_t pgprot;
- unsigned long vaddr;
-
-- kvma = get_vm_area(region->size, VM_IOREMAP);
-+ kvma = __get_vm_area(region->size, VM_IOREMAP,
-+ VMALLOC_START, VMALLOC_END);
- if (kvma == NULL) {
- dev_err(dispc.fbdev->dev, "can't get kernel vm area\n");
- return -ENOMEM;
-diff --git a/drivers/video/omap/omapfb_main.c b/drivers/video/omap/omapfb_main.c
-index 6d09e03..19a1a83 100644
---- a/drivers/video/omap/omapfb_main.c
-+++ b/drivers/video/omap/omapfb_main.c
-@@ -2016,12 +2016,15 @@ EXPORT_SYMBOL(omapfb_unregister_panel);
- static int omapfb_remove(struct platform_device *pdev)
- {
- struct omapfb_device *fbdev = platform_get_drvdata(pdev);
-- enum omapfb_state saved_state = fbdev->state;
-
-- /* FIXME: wait till completion of pending events */
-+ if (fbdev) {
-+ enum omapfb_state saved_state = fbdev->state;
-
-- fbdev->state = OMAPFB_DISABLED;
-- omapfb_free_resources(fbdev, saved_state);
-+ /* FIXME: wait till completion of pending events */
-+
-+ fbdev->state = OMAPFB_DISABLED;
-+ omapfb_free_resources(fbdev, saved_state);
-+ }
-
- return 0;
- }
diff --git a/packages/linux/linux-omap/008-mru-lcd-omap3beagle-license.diff b/packages/linux/linux-omap/008-mru-lcd-omap3beagle-license.diff
deleted file mode 100644
index 4f69dd971a..0000000000
--- a/packages/linux/linux-omap/008-mru-lcd-omap3beagle-license.diff
+++ /dev/null
@@ -1,22 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 3 Sep 2008 23:12:03 +0000 (+0100)
-Subject: OMAP: Add missing MODULE_LICENSE in lcd_omap3beagle
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=368ba31e3e7dccdcea790c559ad3d3b4a20d924f
-
-OMAP: Add missing MODULE_LICENSE in lcd_omap3beagle
-
-This adds a missing MODULE_LICENSE("GPL") in lcd_omap3beagle.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/drivers/video/omap/lcd_omap3beagle.c b/drivers/video/omap/lcd_omap3beagle.c
-index f2861ec..7b63db9 100644
---- a/drivers/video/omap/lcd_omap3beagle.c
-+++ b/drivers/video/omap/lcd_omap3beagle.c
-@@ -127,3 +127,5 @@ static void __exit omap3beagle_panel_drv_exit(void)
-
- module_init(omap3beagle_panel_drv_init);
- module_exit(omap3beagle_panel_drv_exit);
-+
-+MODULE_LICENSE("GPL");
diff --git a/packages/linux/linux-omap/009-mru-unregister-beagle-lcd.diff b/packages/linux/linux-omap/009-mru-unregister-beagle-lcd.diff
deleted file mode 100644
index c7e94bf3a4..0000000000
--- a/packages/linux/linux-omap/009-mru-unregister-beagle-lcd.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 3 Sep 2008 23:17:06 +0000 (+0100)
-Subject: OMAP: Fix unloading lcd_omap3beagle module
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=6db3a4c28c6819047362fc8ac460cf8c124c6074
-
-OMAP: Fix unloading lcd_omap3beagle module
-
-Unregister the panel when unloading the lcd_omap3beagle module.
-
-Signed-off-by: Mans Rullgard <mans@mansr.com>
----
-
-diff --git a/drivers/video/omap/lcd_omap3beagle.c b/drivers/video/omap/lcd_omap3beagle.c
-index 7b63db9..32bd988 100644
---- a/drivers/video/omap/lcd_omap3beagle.c
-+++ b/drivers/video/omap/lcd_omap3beagle.c
-@@ -90,6 +90,7 @@ static int omap3beagle_panel_probe(struct platform_device *pdev)
-
- static int omap3beagle_panel_remove(struct platform_device *pdev)
- {
-+ omapfb_unregister_panel(&omap3beagle_panel);
- return 0;
- }
-
diff --git a/packages/linux/linux-omap/03-enable-overlay-opt.diff b/packages/linux/linux-omap/03-enable-overlay-opt.diff
deleted file mode 100644
index 9fa749f5fc..0000000000
--- a/packages/linux/linux-omap/03-enable-overlay-opt.diff
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Sun, 6 Jul 2008 13:15:36 +0000 (+0100)
-Subject: omapfb: enable overlay optimisation when possible
-X-Git-Tag: beagle-5~1
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=a63ac3abdf6781f863112321260fe7a5da757802
-
-omapfb: enable overlay optimisation when possible
----
-
-diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c
-index 6aff476..3b36227 100644
---- a/drivers/video/omap/dispc.c
-+++ b/drivers/video/omap/dispc.c
-@@ -582,11 +582,13 @@ static int omap_dispc_enable_plane(int plane, int enable)
- const u32 at_reg[] = { DISPC_GFX_ATTRIBUTES,
- DISPC_VID1_BASE + DISPC_VID_ATTRIBUTES,
- DISPC_VID2_BASE + DISPC_VID_ATTRIBUTES };
-+ unsigned overlay_opt = plane & !!enable & !dispc.color_key.key_type;
- if ((unsigned int)plane > dispc.mem_desc.region_cnt)
- return -EINVAL;
-
- enable_lcd_clocks(1);
- MOD_REG_FLD(at_reg[plane], 1, enable ? 1 : 0);
-+ MOD_REG_FLD(DISPC_CONTROL, 1<<12 | 1<<5, overlay_opt<<12 | 1<<5);
- enable_lcd_clocks(0);
-
- return 0;
diff --git a/packages/linux/linux-omap/06-ensure-fclk.diff b/packages/linux/linux-omap/06-ensure-fclk.diff
deleted file mode 100644
index 79871a7208..0000000000
--- a/packages/linux/linux-omap/06-ensure-fclk.diff
+++ /dev/null
@@ -1,31 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Mon, 7 Jul 2008 23:59:08 +0000 (+0100)
-Subject: omapfb: ensure fck/lcd < 173MHz
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=0523ece1bad659c48c66aea364d83f7490e7e5ae
-
-omapfb: ensure fck/lcd < 173MHz
----
-
-diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c
-index c17371c..85d6cad 100644
---- a/drivers/video/omap/dispc.c
-+++ b/drivers/video/omap/dispc.c
-@@ -738,14 +738,16 @@ static void setup_color_conv_coef(void)
- MOD_REG_FLD(at2_reg, (1 << 11), ct->full_range);
- }
-
-+#define MAX_FCK_LCD 173000000
-+
- static void calc_ck_div(int is_tft, int pck, int *lck_div, int *pck_div)
- {
- unsigned long fck, lck;
-
-- *lck_div = 1;
- pck = max(1, pck);
- fck = clk_get_rate(dispc.dss1_fck);
-- lck = fck;
-+ *lck_div = (fck + MAX_FCK_LCD - 1) / MAX_FCK_LCD;
-+ lck = fck / *lck_div;
- *pck_div = (lck + pck - 1) / pck;
- if (is_tft)
- *pck_div = max(2, *pck_div);
diff --git a/packages/linux/linux-omap/07-set-burst-size.diff b/packages/linux/linux-omap/07-set-burst-size.diff
deleted file mode 100644
index 99bd80eae0..0000000000
--- a/packages/linux/linux-omap/07-set-burst-size.diff
+++ /dev/null
@@ -1,21 +0,0 @@
-From: Mans Rullgard <mans@mansr.com>
-Date: Tue, 8 Jul 2008 18:26:43 +0000 (+0100)
-Subject: omapfb: set graphics burst size to 16x32
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=4f9e415dfcd5613a8de973f6c9878cab959c5869
-
-omapfb: set graphics burst size to 16x32
----
-
-diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c
-index 85d6cad..fd06ca2 100644
---- a/drivers/video/omap/dispc.c
-+++ b/drivers/video/omap/dispc.c
-@@ -409,7 +409,7 @@ static inline int _setup_plane(int plane, int channel_out,
- l |= cconv_en << 9;
-
- l &= ~(0x03 << burst_shift);
-- l |= DISPC_BURST_8x32 << burst_shift;
-+ l |= DISPC_BURST_16x32 << burst_shift;
-
- l &= ~(1 << chout_shift);
- l |= chout_val << chout_shift;
diff --git a/packages/linux/linux-omap/beagleboard/defconfig b/packages/linux/linux-omap/beagleboard/defconfig
index ad2869fd63..7de6a0aa90 100644
--- a/packages/linux/linux-omap/beagleboard/defconfig
+++ b/packages/linux/linux-omap/beagleboard/defconfig
@@ -329,7 +329,7 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_VFP=y
CONFIG_VFPv3=y
CONFIG_NEON=y
-CONFIG_NEON_CACHE_BUG=y
+CONFIG_ARM_ERRATUM_451034=y
#
# Userspace binary formats
diff --git a/packages/linux/linux-omap/mru-clocks2.diff b/packages/linux/linux-omap/mru-add-clk-get-parent.diff
index c8b370da03..64944a5e47 100644
--- a/packages/linux/linux-omap/mru-clocks2.diff
+++ b/packages/linux/linux-omap/mru-add-clk-get-parent.diff
@@ -1,18 +1,20 @@
From: Mans Rullgard <mans@mansr.com>
-Date: Tue, 22 Jul 2008 00:58:18 +0000 (+0100)
-Subject: ARM: OMAP: add clk_get_parent() for OMAP2/3
-X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=e2de5e5578fbaa9b4b75074796da0608fc93e6ae
+Date: Fri, 29 Aug 2008 01:51:36 +0000 (+0100)
+Subject: OMAP: Add clk_get_parent() for OMAP2/3
+X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=08d1f1947a5a970b2fe6e4dfeeb70286b9379056
-ARM: OMAP: add clk_get_parent() for OMAP2/3
+OMAP: Add clk_get_parent() for OMAP2/3
+
+This makes clk_get_parent() work on OMAP2/3.
Signed-off-by: Mans Rullgard <mans@mansr.com>
---
diff --git a/arch/arm/mach-omap2/clock.c b/arch/arm/mach-omap2/clock.c
-index 577be44..28aec36 100644
+index 5f48e14..aae0d2e 100644
--- a/arch/arm/mach-omap2/clock.c
+++ b/arch/arm/mach-omap2/clock.c
-@@ -824,6 +824,11 @@ int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent)
+@@ -831,6 +831,11 @@ int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent)
return 0;
}
@@ -25,7 +27,7 @@ index 577be44..28aec36 100644
/**
diff --git a/arch/arm/mach-omap2/clock.h b/arch/arm/mach-omap2/clock.h
-index 49245f7..4aa69d5 100644
+index 3fa2e26..2916879 100644
--- a/arch/arm/mach-omap2/clock.h
+++ b/arch/arm/mach-omap2/clock.h
@@ -29,6 +29,7 @@ int omap2_clk_set_rate(struct clk *clk, unsigned long rate);
@@ -37,10 +39,10 @@ index 49245f7..4aa69d5 100644
#ifdef CONFIG_OMAP_RESET_CLOCKS
void omap2_clk_disable_unused(struct clk *clk);
diff --git a/arch/arm/mach-omap2/clock24xx.c b/arch/arm/mach-omap2/clock24xx.c
-index 54cc6e1..ed7af21 100644
+index c26d9d8..f91bd57 100644
--- a/arch/arm/mach-omap2/clock24xx.c
+++ b/arch/arm/mach-omap2/clock24xx.c
-@@ -422,6 +422,7 @@ static struct clk_functions omap2_clk_functions = {
+@@ -423,6 +423,7 @@ static struct clk_functions omap2_clk_functions = {
.clk_round_rate = omap2_clk_round_rate,
.clk_set_rate = omap2_clk_set_rate,
.clk_set_parent = omap2_clk_set_parent,
@@ -49,10 +51,10 @@ index 54cc6e1..ed7af21 100644
#ifdef CONFIG_CPU_FREQ
.clk_init_cpufreq_table = omap2_clk_init_cpufreq_table,
diff --git a/arch/arm/mach-omap2/clock34xx.c b/arch/arm/mach-omap2/clock34xx.c
-index 04dedec..08c8c46 100644
+index 152d095..2196edd 100644
--- a/arch/arm/mach-omap2/clock34xx.c
+++ b/arch/arm/mach-omap2/clock34xx.c
-@@ -541,6 +541,7 @@ static struct clk_functions omap2_clk_functions = {
+@@ -606,6 +606,7 @@ static struct clk_functions omap2_clk_functions = {
.clk_round_rate = omap2_clk_round_rate,
.clk_set_rate = omap2_clk_set_rate,
.clk_set_parent = omap2_clk_set_parent,
diff --git a/packages/linux/linux-omap/001-mru-enable-overlay.diff b/packages/linux/linux-omap/mru-enable-overlay-optimalization.diff
index 8666c4ac9a..d027c53d6b 100644
--- a/packages/linux/linux-omap/001-mru-enable-overlay.diff
+++ b/packages/linux/linux-omap/mru-enable-overlay-optimalization.diff
@@ -1,13 +1,19 @@
From: Mans Rullgard <mans@mansr.com>
-Date: Thu, 28 Aug 2008 21:20:39 +0000 (+0100)
-Subject: OMAP: Enable overlay optimisation when possible