diff --git a/patch.sh b/patch.sh index 4555eba90147681a908d099188ecda89ce2ea1b9..0a97924e5fad8368c1cc858914da373f2992718f 100644 --- a/patch.sh +++ b/patch.sh @@ -21,7 +21,11 @@ patch -s -p1 < "${DIR}/patches/trivial/0001-omap3-clocks-Fix-build-error-CK_3430 function sakoman { echo "sakoman's patches" -patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0001-video-add-timings-for-hd720.patch" + +#2.6.37-git10 +#patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0001-video-add-timings-for-hd720.patch" +patch -s -p1 < "${DIR}/patches/sakoman/2.6.38/0001-video-add-timings-for-hd720.patch" + patch -s -p1 < "${DIR}/patches/sakoman/2.6.36/0003-Don-t-turn-SDIO-cards-off-to-save-power.-Doing-so-wi.patch" patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0004-mmc-don-t-display-single-block-read-console-messages.patch" patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0005-scripts-Makefile.fwinst-fix-typo-missing-space-in-se.patch" @@ -37,7 +41,11 @@ patch -s -p1 < "${DIR}/patches/sakoman/2.6.38/0013-MFD-add-twl4030-madc-driver.p patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0014-ARM-OMAP-Add-twl4030-madc-support-to-Overo.patch" patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0015-ARM-OMAP-Add-twl4030-madc-support-to-Beagle.patch" patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0016-OMAP-DSS2-Add-support-for-Samsung-LTE430WQ-F0C-panel.patch" -patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0017-OMAP-DSS2-Add-support-for-LG-Philips-LB035Q02-panel.patch" + +#2.6.37-git10 +#patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0017-OMAP-DSS2-Add-support-for-LG-Philips-LB035Q02-panel.patch" +patch -s -p1 < "${DIR}/patches/sakoman/2.6.38/0017-OMAP-DSS2-Add-support-for-LG-Philips-LB035Q02-panel.patch" + patch -s -p1 < "${DIR}/patches/sakoman/2.6.38/0018-OMAP-DSS2-Add-DSS2-support-for-Overo.patch" patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0019-OMAP-DSS2-add-bootarg-for-selecting-svideo-or-compos.patch" patch -s -p1 < "${DIR}/patches/sakoman/2.6.35/0020-ARM-OMAP2-mmc-twl4030-move-clock-input-selection-pri.patch" @@ -99,6 +107,8 @@ patch -s -p1 < "${DIR}/patches/arago-project/0001-omap3-Increase-limit-on-bootar #patch -s -p1 < "${DIR}/patches/arago-project/0001-AM37x-Switch-SGX-clocks-to-200MHz.patch" patch -s -p1 < "${DIR}/patches/beagle/0001-omap-beagle-use-GPIO2-on-the-xM-A3-to-turn-DVI-on.patch" #patch -s -p1 < "${DIR}/patches/beagle/0001-revert-audio-seems-to-work-on-the-beagle-with-gone.patch" +patch -s -p1 < "${DIR}/patches/beagle/0001-omap-hsmmc-increase-dto-value-and-print-value-to-dme.patch" +patch -s -p1 < "${DIR}/patches/beagle/0001-xM-audio-fix-from-Ashok.patch" } function sgx { @@ -166,7 +176,10 @@ echo "devkit8000" #patch -s -p1 < "${DIR}/patches/devkit8000/0001-OMAP2-Devkit8000-Fix-mmc-regulator-failure.patch" #noticed by Robert Skretkowicz -patch -s -p1 < "${DIR}/patches/devkit8000/0001-arm-omap-devkit8000-for-lcd-use-samsung_lte_panel.patch" + +#2.6.37-git10 +#patch -s -p1 < "${DIR}/patches/devkit8000/0001-arm-omap-devkit8000-for-lcd-use-samsung_lte_panel.patch" +patch -s -p1 < "${DIR}/patches/devkit8000/0001-arm-omap-devkit8000-for-lcd-use-samsung_lte_panel-2.6.37-git10.patch" } function dspbridge { diff --git a/patches/beagle/0001-omap-hsmmc-increase-dto-value-and-print-value-to-dme.patch b/patches/beagle/0001-omap-hsmmc-increase-dto-value-and-print-value-to-dme.patch new file mode 100644 index 0000000000000000000000000000000000000000..8c3efe465c7b5f01c3cf6d25c59c5eeaabebc5cc --- /dev/null +++ b/patches/beagle/0001-omap-hsmmc-increase-dto-value-and-print-value-to-dme.patch @@ -0,0 +1,29 @@ +From ac9cc5a0642fcec8f1a3c6dfc4853918a453c87e Mon Sep 17 00:00:00 2001 +From: Robert Nelson <robertcnelson@gmail.com> +Date: Thu, 13 Jan 2011 11:33:44 -0600 +Subject: [PATCH] omap hsmmc increase dto value and print value to dmesg + +Signed-off-by: Robert Nelson <robertcnelson@gmail.com> +--- + drivers/mmc/host/omap_hsmmc.c | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c +index e868bbe..62d2d3a 100644 +--- a/drivers/mmc/host/omap_hsmmc.c ++++ b/drivers/mmc/host/omap_hsmmc.c +@@ -1419,9 +1419,11 @@ static void set_data_timeout(struct omap_hsmmc_host *host, + dto -= 13; + else + dto = 0; ++ dto++; + if (dto > 14) + dto = 14; + } ++ printk_once(KERN_INFO "MMC: Debug dto value: %d\n", dto); + + reg &= ~DTO_MASK; + reg |= dto << DTO_SHIFT; +-- +1.7.1 + diff --git a/patches/beagle/0001-xM-audio-fix-from-Ashok.patch b/patches/beagle/0001-xM-audio-fix-from-Ashok.patch new file mode 100644 index 0000000000000000000000000000000000000000..9b6d8ce77c0fde554c63149eae967b837dcbc450 --- /dev/null +++ b/patches/beagle/0001-xM-audio-fix-from-Ashok.patch @@ -0,0 +1,27 @@ +From d53f988fc10fe22ec7e64457eac22f264bb72491 Mon Sep 17 00:00:00 2001 +From: Robert Nelson <robertcnelson@gmail.com> +Date: Thu, 13 Jan 2011 11:37:56 -0600 +Subject: [PATCH] xM audio fix from Ashok + +Signed-off-by: Robert Nelson <robertcnelson@gmail.com> +--- + sound/soc/omap/omap-mcbsp.c | 3 +++ + 1 files changed, 3 insertions(+), 0 deletions(-) + +diff --git a/sound/soc/omap/omap-mcbsp.c b/sound/soc/omap/omap-mcbsp.c +index d203f4d..6311e8a 100644 +--- a/sound/soc/omap/omap-mcbsp.c ++++ b/sound/soc/omap/omap-mcbsp.c +@@ -358,6 +358,9 @@ static int omap_mcbsp_dai_hw_params(struct snd_pcm_substream *substream, + } else if (cpu_is_omap343x()) { + dma = omap24xx_dma_reqs[bus_id][substream->stream]; + port = omap34xx_mcbsp_port[bus_id][substream->stream]; ++ } else if (cpu_is_omap3630()) { ++ dma = omap24xx_dma_reqs[bus_id][substream->stream]; ++ port = omap34xx_mcbsp_port[bus_id][substream->stream]; + } else if (cpu_is_omap44xx()) { + dma = omap44xx_dma_reqs[bus_id][substream->stream]; + port = omap44xx_mcbsp_port[bus_id][substream->stream]; +-- +1.7.1 + diff --git a/patches/defconfig b/patches/defconfig index 01a68bf0305dfe60cdb6fb3b3df9ac72f00d66c0..eefaabce6d7939840b22cee7fbda9c34b94d7f7d 100644 --- a/patches/defconfig +++ b/patches/defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux/arm 2.6.37-git7 Kernel Configuration -# Tue Jan 11 18:59:38 2011 +# Linux/arm 2.6.37-git10 Kernel Configuration +# Thu Jan 13 19:54:56 2011 # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -103,6 +103,7 @@ CONFIG_INITRAMFS_SOURCE="" CONFIG_RD_GZIP=y CONFIG_RD_BZIP2=y CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y CONFIG_RD_LZO=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SYSCTL=y @@ -1737,6 +1738,7 @@ CONFIG_JOYSTICK_SPACEBALL=m CONFIG_JOYSTICK_STINGER=m CONFIG_JOYSTICK_TWIDJOY=m CONFIG_JOYSTICK_ZHENHUA=m +CONFIG_JOYSTICK_AS5011=m CONFIG_JOYSTICK_JOYDUMP=m CONFIG_JOYSTICK_XPAD=m CONFIG_JOYSTICK_XPAD_FF=y @@ -1945,6 +1947,10 @@ CONFIG_SPI_SPIDEV=y # PPS support # # CONFIG_PPS is not set + +# +# PPS generators support +# CONFIG_ARCH_REQUIRE_GPIOLIB=y CONFIG_GPIOLIB=y # CONFIG_DEBUG_GPIO is not set @@ -1956,7 +1962,6 @@ CONFIG_GPIO_SYSFS=y # CONFIG_GPIO_BASIC_MMIO is not set # CONFIG_GPIO_IT8761E is not set # CONFIG_GPIO_PL061 is not set -# CONFIG_GPIO_VX855 is not set # # I2C GPIO expanders: @@ -2165,6 +2170,7 @@ CONFIG_REGULATOR_TWL4030=y # CONFIG_REGULATOR_TPS6507X is not set # CONFIG_REGULATOR_ISL6271A is not set # CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_TPS6524X is not set CONFIG_MEDIA_SUPPORT=y # @@ -2628,13 +2634,12 @@ CONFIG_FB_OMAP2_NUM_FBS=3 # # OMAP2/3 Display Device Drivers # -CONFIG_PANEL_GENERIC=y +CONFIG_PANEL_GENERIC_DPI=y CONFIG_PANEL_LGPHILIPS_LB035Q02=y CONFIG_PANEL_SAMSUNG_LTE430WQ_F0C=y CONFIG_PANEL_SHARP_LS037V7DW01=y -CONFIG_PANEL_SHARP_LQ043T1DG01=y -# CONFIG_PANEL_TOPPOLY_TDO35S is not set -# CONFIG_PANEL_TPO_TD043MTEA1 is not set +CONFIG_PANEL_NEC_NL8048HL11_01B=y +CONFIG_PANEL_TPO_TD043MTEA1=y CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_LCD_CLASS_DEVICE=m # CONFIG_LCD_L4F00242T03 is not set @@ -2708,6 +2713,7 @@ CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m CONFIG_SND_USB_CAIAQ_INPUT=y CONFIG_SND_SOC=y +# CONFIG_SND_SOC_CACHE_LZO is not set CONFIG_SND_OMAP_SOC=y CONFIG_SND_OMAP_SOC_MCBSP=y CONFIG_SND_OMAP_SOC_MCPDM=y @@ -2773,6 +2779,7 @@ CONFIG_HID_MAGICMOUSE=m CONFIG_HID_MICROSOFT=m CONFIG_HID_MOSART=m CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m CONFIG_HID_NTRIG=m CONFIG_HID_ORTEK=m CONFIG_HID_PANTHERLORD=m @@ -3092,6 +3099,7 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=m # # iptables trigger is under Netfilter config (LED target) # +# CONFIG_NFC_DEVICES is not set # CONFIG_ACCESSIBILITY is not set CONFIG_RTC_LIB=y CONFIG_RTC_CLASS=m @@ -3342,7 +3350,7 @@ CONFIG_MISC_FILESYSTEMS=y CONFIG_ADFS_FS=m # CONFIG_ADFS_FS_RW is not set CONFIG_AFFS_FS=m -CONFIG_ECRYPT_FS=y +# CONFIG_ECRYPT_FS is not set CONFIG_HFS_FS=m CONFIG_HFSPLUS_FS=m CONFIG_BEFS_FS=m @@ -3764,6 +3772,9 @@ CONFIG_CRYPTO_LZO=m # Random Number Generation # CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_DEV_OMAP_SHAM=m CONFIG_CRYPTO_DEV_OMAP_AES=m @@ -3787,9 +3798,19 @@ CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y CONFIG_LZO_COMPRESS=m CONFIG_LZO_DECOMPRESS=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_X86=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set CONFIG_DECOMPRESS_GZIP=y CONFIG_DECOMPRESS_BZIP2=y CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y CONFIG_DECOMPRESS_LZO=y CONFIG_REED_SOLOMON=m CONFIG_REED_SOLOMON_DEC16=y diff --git a/patches/devkit8000/0001-arm-omap-devkit8000-for-lcd-use-samsung_lte_panel-2.6.37-git10.patch b/patches/devkit8000/0001-arm-omap-devkit8000-for-lcd-use-samsung_lte_panel-2.6.37-git10.patch new file mode 100644 index 0000000000000000000000000000000000000000..75f78aed5d1eabddcd29a46d60abb970ed14ee83 --- /dev/null +++ b/patches/devkit8000/0001-arm-omap-devkit8000-for-lcd-use-samsung_lte_panel-2.6.37-git10.patch @@ -0,0 +1,28 @@ +From 858b957a03e717c76b6833d16ad108f2f1abc219 Mon Sep 17 00:00:00 2001 +From: Robert Nelson <robertcnelson@gmail.com> +Date: Tue, 2 Nov 2010 09:59:09 -0500 +Subject: [PATCH] arm: omap: devkit8000: for lcd use samsung_lte_panel + +This was noticed by Robert Skretkowicz + +Merged-to-2.6.37-git10-by: Robert Nelson <robertcnelson@gmail.com> +--- + arch/arm/mach-omap2/board-devkit8000.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/arch/arm/mach-omap2/board-devkit8000.c b/arch/arm/mach-omap2/board-devkit8000.c +index 00bb1fc..25d192c 100644 +--- a/arch/arm/mach-omap2/board-devkit8000.c ++++ b/arch/arm/mach-omap2/board-devkit8000.c +@@ -159,7 +159,7 @@ static struct panel_generic_dpi_data lcd_panel = { + static struct omap_dss_device devkit8000_lcd_device = { + .name = "lcd", + .type = OMAP_DISPLAY_TYPE_DPI, +- .driver_name = "generic_dpi_panel", ++ .driver_name = "samsung_lte_panel", + .data = &lcd_panel, + .phy.dpi.data_lines = 24, + }; +-- +1.7.1 + diff --git a/patches/no_devtmps-defconfig b/patches/no_devtmps-defconfig index 4d2c2b1d3d4e19d30daa0d0654750e64ece472ad..aea960231aca0fef4ad76855f7c083f63ac7eae7 100644 --- a/patches/no_devtmps-defconfig +++ b/patches/no_devtmps-defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux/arm 2.6.37-git7 Kernel Configuration -# Tue Jan 11 18:59:38 2011 +# Linux/arm 2.6.37-git10 Kernel Configuration +# Thu Jan 13 19:54:56 2011 # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -103,6 +103,7 @@ CONFIG_INITRAMFS_SOURCE="" CONFIG_RD_GZIP=y CONFIG_RD_BZIP2=y CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y CONFIG_RD_LZO=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SYSCTL=y @@ -1736,6 +1737,7 @@ CONFIG_JOYSTICK_SPACEBALL=m CONFIG_JOYSTICK_STINGER=m CONFIG_JOYSTICK_TWIDJOY=m CONFIG_JOYSTICK_ZHENHUA=m +CONFIG_JOYSTICK_AS5011=m CONFIG_JOYSTICK_JOYDUMP=m CONFIG_JOYSTICK_XPAD=m CONFIG_JOYSTICK_XPAD_FF=y @@ -1944,6 +1946,10 @@ CONFIG_SPI_SPIDEV=y # PPS support # # CONFIG_PPS is not set + +# +# PPS generators support +# CONFIG_ARCH_REQUIRE_GPIOLIB=y CONFIG_GPIOLIB=y # CONFIG_DEBUG_GPIO is not set @@ -1955,7 +1961,6 @@ CONFIG_GPIO_SYSFS=y # CONFIG_GPIO_BASIC_MMIO is not set # CONFIG_GPIO_IT8761E is not set # CONFIG_GPIO_PL061 is not set -# CONFIG_GPIO_VX855 is not set # # I2C GPIO expanders: @@ -2164,6 +2169,7 @@ CONFIG_REGULATOR_TWL4030=y # CONFIG_REGULATOR_TPS6507X is not set # CONFIG_REGULATOR_ISL6271A is not set # CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_TPS6524X is not set CONFIG_MEDIA_SUPPORT=y # @@ -2627,13 +2633,12 @@ CONFIG_FB_OMAP2_NUM_FBS=3 # # OMAP2/3 Display Device Drivers # -CONFIG_PANEL_GENERIC=y +CONFIG_PANEL_GENERIC_DPI=y CONFIG_PANEL_LGPHILIPS_LB035Q02=y CONFIG_PANEL_SAMSUNG_LTE430WQ_F0C=y CONFIG_PANEL_SHARP_LS037V7DW01=y -CONFIG_PANEL_SHARP_LQ043T1DG01=y -# CONFIG_PANEL_TOPPOLY_TDO35S is not set -# CONFIG_PANEL_TPO_TD043MTEA1 is not set +CONFIG_PANEL_NEC_NL8048HL11_01B=y +CONFIG_PANEL_TPO_TD043MTEA1=y CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_LCD_CLASS_DEVICE=m # CONFIG_LCD_L4F00242T03 is not set @@ -2707,6 +2712,7 @@ CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m CONFIG_SND_USB_CAIAQ_INPUT=y CONFIG_SND_SOC=y +# CONFIG_SND_SOC_CACHE_LZO is not set CONFIG_SND_OMAP_SOC=y CONFIG_SND_OMAP_SOC_MCBSP=y CONFIG_SND_OMAP_SOC_MCPDM=y @@ -2772,6 +2778,7 @@ CONFIG_HID_MAGICMOUSE=m CONFIG_HID_MICROSOFT=m CONFIG_HID_MOSART=m CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m CONFIG_HID_NTRIG=m CONFIG_HID_ORTEK=m CONFIG_HID_PANTHERLORD=m @@ -3091,6 +3098,7 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=m # # iptables trigger is under Netfilter config (LED target) # +# CONFIG_NFC_DEVICES is not set # CONFIG_ACCESSIBILITY is not set CONFIG_RTC_LIB=y CONFIG_RTC_CLASS=m @@ -3341,7 +3349,7 @@ CONFIG_MISC_FILESYSTEMS=y CONFIG_ADFS_FS=m # CONFIG_ADFS_FS_RW is not set CONFIG_AFFS_FS=m -CONFIG_ECRYPT_FS=y +# CONFIG_ECRYPT_FS is not set CONFIG_HFS_FS=m CONFIG_HFSPLUS_FS=m CONFIG_BEFS_FS=m @@ -3763,6 +3771,9 @@ CONFIG_CRYPTO_LZO=m # Random Number Generation # CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_DEV_OMAP_SHAM=m CONFIG_CRYPTO_DEV_OMAP_AES=m @@ -3786,9 +3797,19 @@ CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y CONFIG_LZO_COMPRESS=m CONFIG_LZO_DECOMPRESS=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_X86=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set CONFIG_DECOMPRESS_GZIP=y CONFIG_DECOMPRESS_BZIP2=y CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y CONFIG_DECOMPRESS_LZO=y CONFIG_REED_SOLOMON=m CONFIG_REED_SOLOMON_DEC16=y diff --git a/patches/sakoman/2.6.38/0001-video-add-timings-for-hd720.patch b/patches/sakoman/2.6.38/0001-video-add-timings-for-hd720.patch new file mode 100644 index 0000000000000000000000000000000000000000..a8cfd47f27aab276443ab72d40ce733409799234 --- /dev/null +++ b/patches/sakoman/2.6.38/0001-video-add-timings-for-hd720.patch @@ -0,0 +1,28 @@ +From 9f40ee61034576e8abdb8201c9526204680e70d5 Mon Sep 17 00:00:00 2001 +From: Steve Sakoman <steve@sakoman.com> +Date: Sat, 19 Dec 2009 06:52:43 -0800 +Subject: [PATCH 01/31] video: add timings for hd720 + +Merged to 2.6.37-git10 by: Robert Nelson <robertcnelson@gmail.com> +--- + drivers/video/modedb.c | 4 ++++ + 1 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/drivers/video/modedb.c b/drivers/video/modedb.c +index 48c3ea8..b320a30 100644 +--- a/drivers/video/modedb.c ++++ b/drivers/video/modedb.c +@@ -103,6 +103,10 @@ static const struct fb_videomode modedb[] = { + { NULL, 70, 1024, 768, 13333, 144, 24, 29, 3, 136, 6, 0, + FB_VMODE_NONINTERLACED }, + ++ /* 1280x720 @ 60 Hz, 45 kHz hsync, CEA 681-E Format 4 */ ++ { "hd720", 60, 1280, 720, 13468, 220, 110, 20, 5, 40, 5, 0, ++ FB_VMODE_NONINTERLACED }, ++ + /* 1280x1024 @ 87 Hz interlaced, 51 kHz hsync */ + { NULL, 87, 1280, 1024, 12500, 56, 16, 128, 1, 216, 12, 0, + FB_VMODE_INTERLACED }, +-- +1.7.1 + diff --git a/patches/sakoman/2.6.38/0017-OMAP-DSS2-Add-support-for-LG-Philips-LB035Q02-panel.patch b/patches/sakoman/2.6.38/0017-OMAP-DSS2-Add-support-for-LG-Philips-LB035Q02-panel.patch new file mode 100644 index 0000000000000000000000000000000000000000..dcf292172e202ad236085c85d18da705889ebd4e --- /dev/null +++ b/patches/sakoman/2.6.38/0017-OMAP-DSS2-Add-support-for-LG-Philips-LB035Q02-panel.patch @@ -0,0 +1,275 @@ +From bad2baa348f515bea9f529faa411509f18cb20c4 Mon Sep 17 00:00:00 2001 +From: Steve Sakoman <steve@sakoman.com> +Date: Thu, 17 Dec 2009 15:05:30 -0800 +Subject: [PATCH 17/31] OMAP: DSS2: Add support for LG Philips LB035Q02 panel + +Merged-to-2.6.37-git10-by: Robert Nelson <robertcnelson@gmail.com> +--- + drivers/video/omap2/displays/Kconfig | 12 + + drivers/video/omap2/displays/Makefile | 2 + + .../omap2/displays/panel-lgphilips-lb035q02.c | 219 ++++++++++++++++++++ + 3 files changed, 233 insertions(+), 0 deletions(-) + create mode 100644 drivers/video/omap2/displays/panel-lgphilips-lb035q02.c + +diff --git a/drivers/video/omap2/displays/Kconfig b/drivers/video/omap2/displays/Kconfig +index 940cab3..797e2f8 100644 +--- a/drivers/video/omap2/displays/Kconfig ++++ b/drivers/video/omap2/displays/Kconfig +@@ -9,6 +9,18 @@ config PANEL_GENERIC_DPI + Supports LCD Panel used in TI SDP3430 and EVM boards, + OMAP3517 EVM boards and CM-T35. + ++config PANEL_LGPHILIPS_LB035Q02 ++ tristate "LG.Philips LB035Q02 LCD Panel" ++ depends on OMAP2_DSS ++ help ++ LCD Panel used on Overo Palo35 ++ ++config PANEL_SAMSUNG_LTE430WQ_F0C ++ tristate "Samsung LTE430WQ-F0C LCD Panel" ++ depends on OMAP2_DSS ++ help ++ LCD Panel used on Overo Palo43 ++ + config PANEL_SHARP_LS037V7DW01 + tristate "Sharp LS037V7DW01 LCD Panel" + depends on OMAP2_DSS +diff --git a/drivers/video/omap2/displays/Makefile b/drivers/video/omap2/displays/Makefile +index 861f025..bd566e5 100644 +--- a/drivers/video/omap2/displays/Makefile ++++ b/drivers/video/omap2/displays/Makefile +@@ -1,4 +1,6 @@ + obj-$(CONFIG_PANEL_GENERIC_DPI) += panel-generic-dpi.o ++obj-$(CONFIG_PANEL_LGPHILIPS_LB035Q02) += panel-lgphilips-lb035q02.o ++obj-$(CONFIG_PANEL_SAMSUNG_LTE430WQ_F0C) += panel-samsung-lte430wq-f0c.o + obj-$(CONFIG_PANEL_SHARP_LS037V7DW01) += panel-sharp-ls037v7dw01.o + obj-$(CONFIG_PANEL_NEC_NL8048HL11_01B) += panel-nec-nl8048hl11-01b.o + +diff --git a/drivers/video/omap2/displays/panel-lgphilips-lb035q02.c b/drivers/video/omap2/displays/panel-lgphilips-lb035q02.c +new file mode 100644 +index 0000000..17e748b +--- /dev/null ++++ b/drivers/video/omap2/displays/panel-lgphilips-lb035q02.c +@@ -0,0 +1,219 @@ ++/* ++ * LCD panel driver for LG.Philips LB035Q02 ++ * ++ * Author: Steve Sakoman <steve@sakoman.com> ++ * ++ * This program is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 as published by ++ * the Free Software Foundation. ++ * ++ * 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, see <http://www.gnu.org/licenses/>. ++ */ ++ ++#include <linux/module.h> ++#include <linux/delay.h> ++#include <linux/spi/spi.h> ++ ++#include <plat/display.h> ++ ++static struct spi_device *spidev; ++ ++static struct omap_video_timings lb035q02_timings = { ++ .x_res = 320, ++ .y_res = 240, ++ ++ .pixel_clock = 6500, ++ ++ .hsw = 2, ++ .hfp = 20, ++ .hbp = 68, ++ ++ .vsw = 2, ++ .vfp = 4, ++ .vbp = 18, ++}; ++ ++static int lb035q02_panel_probe(struct omap_dss_device *dssdev) ++{ ++ dssdev->panel.config = OMAP_DSS_LCD_TFT | OMAP_DSS_LCD_IVS | ++ OMAP_DSS_LCD_IHS; ++ dssdev->panel.timings = lb035q02_timings; ++ ++ return 0; ++} ++ ++static void lb035q02_panel_remove(struct omap_dss_device *dssdev) ++{ ++} ++ ++static int lb035q02_write_reg(u8 reg, u16 val) ++{ ++ struct spi_message msg; ++ struct spi_transfer index_xfer = { ++ .len = 3, ++ .cs_change = 1, ++ }; ++ struct spi_transfer value_xfer = { ++ .len = 3, ++ }; ++ u8 buffer[16]; ++ ++ spi_message_init(&msg); ++ ++ /* register index */ ++ buffer[0] = 0x70; ++ buffer[1] = 0x00; ++ buffer[2] = reg & 0x7f; ++ index_xfer.tx_buf = buffer; ++ spi_message_add_tail(&index_xfer, &msg); ++ ++ /* register value */ ++ buffer[4] = 0x72; ++ buffer[5] = val >> 8; ++ buffer[6] = val; ++ value_xfer.tx_buf = buffer + 4; ++ spi_message_add_tail(&value_xfer, &msg); ++ ++ return spi_sync(spidev, &msg); ++} ++ ++static int lb035q02_panel_enable(struct omap_dss_device *dssdev) ++{ ++ int r; ++ ++ r = omapdss_dpi_display_enable(dssdev); ++ if (r) ++ goto err0; ++ ++ if (dssdev->platform_enable) { ++ r = dssdev->platform_enable(dssdev); ++ if (r) ++ goto err1; ++ } ++ ++ /* Panel init sequence from page 28 of the spec */ ++ lb035q02_write_reg(0x01, 0x6300); ++ lb035q02_write_reg(0x02, 0x0200); ++ lb035q02_write_reg(0x03, 0x0177); ++ lb035q02_write_reg(0x04, 0x04c7); ++ lb035q02_write_reg(0x05, 0xffc0); ++ lb035q02_write_reg(0x06, 0xe806); ++ lb035q02_write_reg(0x0a, 0x4008); ++ lb035q02_write_reg(0x0b, 0x0000); ++ lb035q02_write_reg(0x0d, 0x0030); ++ lb035q02_write_reg(0x0e, 0x2800); ++ lb035q02_write_reg(0x0f, 0x0000); ++ lb035q02_write_reg(0x16, 0x9f80); ++ lb035q02_write_reg(0x17, 0x0a0f); ++ lb035q02_write_reg(0x1e, 0x00c1); ++ lb035q02_write_reg(0x30, 0x0300); ++ lb035q02_write_reg(0x31, 0x0007); ++ lb035q02_write_reg(0x32, 0x0000); ++ lb035q02_write_reg(0x33, 0x0000); ++ lb035q02_write_reg(0x34, 0x0707); ++ lb035q02_write_reg(0x35, 0x0004); ++ lb035q02_write_reg(0x36, 0x0302); ++ lb035q02_write_reg(0x37, 0x0202); ++ lb035q02_write_reg(0x3a, 0x0a0d); ++ lb035q02_write_reg(0x3b, 0x0806); ++ ++ dssdev->state = OMAP_DSS_DISPLAY_ACTIVE; ++ return 0; ++err1: ++ omapdss_dpi_display_disable(dssdev); ++err0: ++ return r; ++} ++ ++static void lb035q02_panel_disable(struct omap_dss_device *dssdev) ++{ ++ if (dssdev->platform_disable) ++ dssdev->platform_disable(dssdev); ++ ++ dssdev->state = OMAP_DSS_DISPLAY_DISABLED; ++} ++ ++static int lb035q02_panel_suspend(struct omap_dss_device *dssdev) ++{ ++ lb035q02_panel_disable(dssdev); ++ dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED; ++ return 0; ++} ++ ++static int lb035q02_panel_resume(struct omap_dss_device *dssdev) ++{ ++ int r; ++ ++ r = lb035q02_panel_enable(dssdev); ++ if (r) ++ return r; ++ ++ dssdev->state = OMAP_DSS_DISPLAY_ACTIVE; ++ ++ return 0; ++} ++ ++static struct omap_dss_driver lb035q02_driver = { ++ .probe = lb035q02_panel_probe, ++ .remove = lb035q02_panel_remove, ++ ++ .enable = lb035q02_panel_enable, ++ .disable = lb035q02_panel_disable, ++ .suspend = lb035q02_panel_suspend, ++ .resume = lb035q02_panel_resume, ++ ++ .driver = { ++ .name = "lgphilips_lb035q02_panel", ++ .owner = THIS_MODULE, ++ }, ++}; ++ ++static int __devinit lb035q02_panel_spi_probe(struct spi_device *spi) ++{ ++ spidev = spi; ++ return 0; ++} ++ ++static int __devexit lb035q02_panel_spi_remove(struct spi_device *spi) ++{ ++ return 0; ++} ++ ++static struct spi_driver lb035q02_spi_driver = { ++ .driver = { ++ .name = "lgphilips_lb035q02_panel-spi", ++ .owner = THIS_MODULE, ++ }, ++ .probe = lb035q02_panel_spi_probe, ++ .remove = __devexit_p (lb035q02_panel_spi_remove), ++}; ++ ++static int __init lb035q02_panel_drv_init(void) ++{ ++ int r; ++ r = spi_register_driver(&lb035q02_spi_driver); ++ if (r != 0) ++ pr_err("lgphilips_lb035q02: Unable to register SPI driver: %d\n", r); ++ ++ r = omap_dss_register_driver(&lb035q02_driver); ++ if (r != 0) ++ pr_err("lgphilips_lb035q02: Unable to register panel driver: %d\n", r); ++ ++ return r; ++} ++ ++static void __exit lb035q02_panel_drv_exit(void) ++{ ++ spi_unregister_driver(&lb035q02_spi_driver); ++ omap_dss_unregister_driver(&lb035q02_driver); ++} ++ ++module_init(lb035q02_panel_drv_init); ++module_exit(lb035q02_panel_drv_exit); ++MODULE_LICENSE("GPL"); +-- +1.7.1 + diff --git a/version.sh b/version.sh index 8ae394b2775adc07b5cb38e9a7e0535e6d8d425b..b20aa468bd1be3ebb3df9edbb584409b208cd355 100644 --- a/version.sh +++ b/version.sh @@ -4,7 +4,7 @@ unset BUILD KERNEL_REL=2.6.37 #STABLE_PATCH=.1 -PRE_RC=2.6.37-git9 +PRE_RC=2.6.37-git10 #RC_KERNEL=2.6.37 #RC_PATCH=-rc8 ABI=0