linx-omap pm git: fix DSS2 patch, rediff beagle-cpufreq, add ECHI support
authorKoen Kooi <koen@openembedded.org>
Mon, 12 Jan 2009 15:23:21 +0000 (16:23 +0100)
committerKoen Kooi <koen@openembedded.org>
Mon, 12 Jan 2009 15:23:21 +0000 (16:23 +0100)
packages/linux/linux-omap-pm/0001-DSS-New-display-subsystem-driver-for-OMAP2-3.patch
packages/linux/linux-omap-pm/0001-This-merges-Steve-Kipisz-USB-EHCI-support.-He-star.patch [new file with mode: 0644]
packages/linux/linux-omap-pm/beagle-cpufreq.diff
packages/linux/linux-omap-pm/beagleboard/defconfig
packages/linux/linux-omap-pm/dss2.diff [new file with mode: 0644]
packages/linux/linux-omap-pm_git.bb

index fda5191..2c77fcc 100644 (file)
@@ -320,16 +320,6 @@ index 2465aea..cd7d9e2 100644
  endmenu
  
  endif
-diff --git a/arch/arm/plat-omap/Makefile b/arch/arm/plat-omap/Makefile
-index 1259846..2740497 100644
---- a/arch/arm/plat-omap/Makefile
-+++ b/arch/arm/plat-omap/Makefile
-@@ -29,3 +29,5 @@ obj-$(CONFIG_OMAP_MMU_FWK) += mmu.o
- # OMAP mailbox framework
- obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o
-+# OMAP2/3 Display Subsystem
-+obj-y += dss/
 diff --git a/arch/arm/plat-omap/dss/Kconfig b/arch/arm/plat-omap/dss/Kconfig
 new file mode 100644
 index 0000000..6b342df
diff --git a/packages/linux/linux-omap-pm/0001-This-merges-Steve-Kipisz-USB-EHCI-support.-He-star.patch b/packages/linux/linux-omap-pm/0001-This-merges-Steve-Kipisz-USB-EHCI-support.-He-star.patch
new file mode 100644 (file)
index 0000000..d590f8f
--- /dev/null
@@ -0,0 +1,146 @@
+From f8f10f496bce396416d7156da876222c6ce8c341 Mon Sep 17 00:00:00 2001
+From: Steven Kipisz <skipisz@beagleboard.org>
+Date: Wed, 9 Jan 2009 12:01:11 -0600
+Subject: [PATCH-USB] Omap3 beagleboard: add support for EHCI in revision C1 boards
+
+Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
+---
+ arch/arm/mach-omap2/board-omap3beagle.c |   10 +---------
+ arch/arm/mach-omap2/usb-ehci.c          |    4 +---
+ drivers/usb/host/ehci-omap.c            |   26 ++++++++++++++++++++++++++
+ 3 files changed, 28 insertions(+), 12 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
+index fe97bab..de81153 100644
+--- a/arch/arm/mach-omap2/board-omap3beagle.c
++++ b/arch/arm/mach-omap2/board-omap3beagle.c
+@@ -140,15 +140,7 @@ static int beagle_twl_gpio_setup(struct device *dev,
+        * power switch and overcurrent detect
+        */
+-      gpio_request(gpio + 1, "EHCI_nOC");
+-      gpio_direction_input(gpio + 1);
+-
+-      /* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */
+-      gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR");
+-      gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);
+-
+-      /* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
+-      gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
++        /* TODO: This needs to be modified to not rely on u-boot */
+       return 0;
+ }
+diff --git a/arch/arm/mach-omap2/usb-ehci.c b/arch/arm/mach-omap2/usb-ehci.c
+index 489439d..2c6305b 100644
+--- a/arch/arm/mach-omap2/usb-ehci.c
++++ b/arch/arm/mach-omap2/usb-ehci.c
+@@ -152,9 +152,7 @@ static void setup_ehci_io_mux(void)
+ void __init usb_ehci_init(void)
+ {
+ #if     defined(CONFIG_USB_EHCI_HCD) || defined(CONFIG_USB_EHCI_HCD_MODULE)
+-      /* Setup Pin IO MUX for EHCI */
+-      if (cpu_is_omap34xx())
+-              setup_ehci_io_mux();
++      /* TODO: Setup Pin IO MUX for EHCI - moved this temporarily to U-boot */
+       if (platform_device_register(&ehci_device) < 0) {
+               printk(KERN_ERR "Unable to register HS-USB (EHCI) device\n");
+
+diff --git a/drivers/usb/host/ehci-omap.c b/drivers/usb/host/ehci-omap.c
+index 1b3266c..8472996 100644
+--- a/drivers/usb/host/ehci-omap.c
++++ b/drivers/usb/host/ehci-omap.c
+@@ -48,16 +48,26 @@
+  *            to get the PHY state machine in working state
+  */
+ #define EXTERNAL_PHY_RESET
++#ifdef CONFIG_MACH_OMAP3_BEAGLE
++#define       EXT_PHY_RESET_GPIO_PORT2        (147)
++#else
+ #define       EXT_PHY_RESET_GPIO_PORT1        (57)
+ #define       EXT_PHY_RESET_GPIO_PORT2        (61)
++#endif
+ #define       EXT_PHY_RESET_DELAY             (10)
++#define PHY_STP_PULLUP_ENABLE           (0x10)
++#define PHY_STP_PULLUP_DISABLE          (0x90)
++
++
+ /* ISSUE2:
+  * USBHOST supports External charge pump PHYs only
+  * Use the VBUS from Port1 to power VBUS of Port2 externally
+  * So use Port2 as the working ULPI port
+  */
++#ifndef CONFIG_MACH_OMAP3_BEAGLE
+ #define VBUS_INTERNAL_CHARGEPUMP_HACK
++#endif
+ #endif /* CONFIG_OMAP_EHCI_PHY_MODE */
+@@ -225,14 +235,43 @@ static int omap_start_ehc(struct platform_device *dev, struct usb_hcd *hcd)
+ #ifdef EXTERNAL_PHY_RESET
+       /* Refer: ISSUE1 */
++#ifndef CONFIG_MACH_OMAP3_BEAGLE
+       gpio_request(EXT_PHY_RESET_GPIO_PORT1, "USB1 PHY reset");
+       gpio_direction_output(EXT_PHY_RESET_GPIO_PORT1, 0);
++#endif
+       gpio_request(EXT_PHY_RESET_GPIO_PORT2, "USB2 PHY reset");
+       gpio_direction_output(EXT_PHY_RESET_GPIO_PORT2, 0);
++      gpio_set_value(EXT_PHY_RESET_GPIO_PORT2, 0);
+       /* Hold the PHY in RESET for enough time till DIR is high */
+       udelay(EXT_PHY_RESET_DELAY);
+ #endif
++        /*
++         * The PHY register 0x7 - Interface Control register is
++         * configured to disable the integrated STP pull-up resistor
++         * used for interface protection.
++       *
++       * May not need to be here.
++         */
++        omap_writel((0x7 << EHCI_INSNREG05_ULPI_REGADD_SHIFT) |/* interface reg */
++                (2 << EHCI_INSNREG05_ULPI_OPSEL_SHIFT) |/*   Write */
++                (1 << EHCI_INSNREG05_ULPI_PORTSEL_SHIFT) |/* Port1 */
++                (1 << EHCI_INSNREG05_ULPI_CONTROL_SHIFT) |/* Start */
++                (PHY_STP_PULLUP_DISABLE),
++                EHCI_INSNREG05_ULPI);
++
++        while (!(omap_readl(EHCI_INSNREG05_ULPI) & (1<<EHCI_INSNREG05_ULPI_CONTROL_SHIFT)));
++
++        /* Force PHY to HS */
++        omap_writel((0x4 << EHCI_INSNREG05_ULPI_REGADD_SHIFT) |/* function ctrl */
++                (2 << EHCI_INSNREG05_ULPI_OPSEL_SHIFT) |/*   Write */
++                (1 << EHCI_INSNREG05_ULPI_PORTSEL_SHIFT) |/* Port1 */
++                (1 << EHCI_INSNREG05_ULPI_CONTROL_SHIFT) |/* Start */
++                (0x40),
++                EHCI_INSNREG05_ULPI);
++
++        while (!(omap_readl(EHCI_INSNREG05_ULPI) & (1<<EHCI_INSNREG05_ULPI_CONTROL_SHIFT)));
++
+       /* Configure TLL for 60Mhz clk for ULPI */
+       ehci_clocks->usbtll_fck_clk = clk_get(&dev->dev, USBHOST_TLL_FCLK);
+       if (IS_ERR(ehci_clocks->usbtll_fck_clk))
+@@ -307,7 +346,9 @@ static int omap_start_ehc(struct platform_device *dev, struct usb_hcd *hcd)
+        * Hold the PHY in RESET for enough time till PHY is settled and ready
+        */
+       udelay(EXT_PHY_RESET_DELAY);
++#ifndef CONFIG_MACH_OMAP3_BEAGLE
+       gpio_set_value(EXT_PHY_RESET_GPIO_PORT1, 1);
++#endif
+       gpio_set_value(EXT_PHY_RESET_GPIO_PORT2, 1);
+ #endif
+@@ -393,7 +434,9 @@ static void omap_stop_ehc(struct platform_device *dev, struct usb_hcd *hcd)
+ #ifdef EXTERNAL_PHY_RESET
++#ifndef CONFIG_MACH_OMAP3_BEAGLE
+       gpio_free(EXT_PHY_RESET_GPIO_PORT1);
++#endif
+       gpio_free(EXT_PHY_RESET_GPIO_PORT2);
+ #endif
+
+--
+1.6.0.4.790.gaa14a 
index f56b277..95234a1 100644 (file)
@@ -1,12 +1,14 @@
---- /tmp/board-omap3beagle.c   2009-01-11 18:41:58.000000000 +0100
-+++ git/arch/arm/mach-omap2/board-omap3beagle.c        2009-01-11 18:47:03.000000000 +0100
-@@ -41,12 +41,71 @@
+--- /tmp/board-omap3beagle.c   2009-01-12 15:46:26.000000000 +0100
++++ git/arch/arm/mach-omap2/board-omap3beagle.c        2009-01-12 15:46:28.000000000 +0100
+@@ -41,14 +41,73 @@
  #include <mach/usb-ehci.h>
  #include <mach/common.h>
  #include <mach/gpmc.h>
 +#include <mach/omap-pm.h>
  #include <mach/nand.h>
  #include <mach/mux.h>
+ #include <mach/omapfb.h>
+ #include <mach/display.h>
 +#include <mach/clock.h>
 +
  
  
  #define GPMC_CS0_BASE  0x60
  #define GPMC_CS_SIZE   0x30
-@@ -233,7 +292,8 @@
+@@ -142,7 +201,15 @@
+        * power switch and overcurrent detect
+        */
+-        /* TODO: This needs to be modified to not rely on u-boot */
++      gpio_request(gpio + 1, "EHCI_nOC");
++      gpio_direction_input(gpio + 1);
++
++      /* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */
++      gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR");
++      gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);
++
++      /* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
++      gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
+       return 0;
+ }
+@@ -227,7 +294,8 @@
  
  static void __init omap3_beagle_init_irq(void)
  {
index dca0530..4226f32 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.28-omap1
-# Sat Jan 10 09:55:48 2009
+# Linux kernel version: 2.6.28-rc8-omap1
+# Mon Jan 12 15:57:49 2009
 #
 CONFIG_ARM=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -195,14 +195,22 @@ CONFIG_OMAP_MCBSP=y
 CONFIG_OMAP_32K_TIMER=y
 # CONFIG_OMAP3_DEBOBS is not set
 CONFIG_OMAP_32K_TIMER_HZ=128
-CONFIG_OMAP_TICK_GPTIMER=12
 CONFIG_OMAP_DM_TIMER=y
 # CONFIG_OMAP_LL_DEBUG_UART1 is not set
 # CONFIG_OMAP_LL_DEBUG_UART2 is not set
 CONFIG_OMAP_LL_DEBUG_UART3=y
 # CONFIG_OMAP_PM_NONE is not set
-CONFIG_OMAP_PM_NOOP=y
-# CONFIG_OMAP_PM_SRF is not set
+# CONFIG_OMAP_PM_NOOP is not set
+CONFIG_OMAP_PM_SRF=y
+CONFIG_OMAP2_DSS=y
+CONFIG_OMAP2_DSS_DEBUG_SUPPORT=y
+# CONFIG_OMAP2_DSS_RFBI is not set
+CONFIG_OMAP2_DSS_VENC=y
+# CONFIG_OMAP2_DSS_SDI is not set
+CONFIG_OMAP2_DSS_DSI=y
+CONFIG_OMAP2_DSS_USE_DSI_PLL=y
+# CONFIG_OMAP2_DSS_FAKE_VSYNC is not set
+CONFIG_OMAP2_DSS_MIN_FCK_PER_PCK=0
 CONFIG_ARCH_OMAP34XX=y
 CONFIG_ARCH_OMAP3430=y
 
@@ -211,10 +219,11 @@ CONFIG_ARCH_OMAP3430=y
 #
 # CONFIG_MACH_OMAP_LDP is not set
 # CONFIG_MACH_OMAP_3430SDP is not set
-# CONFIG_MACH_OMAP3EVM is not set
+CONFIG_MACH_OMAP3EVM=y
 CONFIG_MACH_OMAP3_BEAGLE=y
 # CONFIG_MACH_OVERO is not set
 # CONFIG_MACH_OMAP3_PANDORA is not set
+CONFIG_OMAP_TICK_GPTIMER=12
 
 #
 # Boot options
@@ -1326,9 +1335,9 @@ CONFIG_FB=y
 # CONFIG_FIRMWARE_EDID is not set
 # CONFIG_FB_DDC is not set
 # CONFIG_FB_BOOT_VESA_SUPPORT is not set
-# CONFIG_FB_CFB_FILLRECT is not set
-# CONFIG_FB_CFB_COPYAREA is not set
-# CONFIG_FB_CFB_IMAGEBLIT is not set
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
 # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
 # CONFIG_FB_SYS_FILLRECT is not set
 # CONFIG_FB_SYS_COPYAREA is not set
@@ -1348,7 +1357,19 @@ CONFIG_FB=y
 # CONFIG_FB_VIRTUAL is not set
 # CONFIG_FB_METRONOME is not set
 # CONFIG_FB_MB862XX is not set
-# CONFIG_FB_OMAP is not set
+CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=14
+CONFIG_FB_OMAP2=y
+CONFIG_FB_OMAP2_DEBUG=y
+# CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE is not set
+CONFIG_FB_OMAP2_NUM_FBS=3
+
+#
+# OMAP2/3 Display Device Drivers
+#
+CONFIG_PANEL_GENERIC=y
+CONFIG_PANEL_SHARP_LS037V7DW01=y
+# CONFIG_PANEL_N800 is not set
+# CONFIG_CTRL_BLIZZARD is not set
 # CONFIG_BACKLIGHT_LCD_SUPPORT is not set
 
 #
@@ -1410,6 +1431,7 @@ CONFIG_SND_SOC=y
 CONFIG_SND_OMAP_SOC=y
 CONFIG_SND_OMAP_SOC_MCBSP=y
 CONFIG_SND_OMAP_SOC_OMAP3_BEAGLE=y
+# CONFIG_SND_OMAP_SOC_OMAP3EVM is not set
 # CONFIG_SND_SOC_ALL_CODECS is not set
 CONFIG_SND_SOC_TWL4030=y
 # CONFIG_SOUND_PRIME is not set
@@ -1479,8 +1501,8 @@ CONFIG_USB_MON=y
 #
 # CONFIG_USB_C67X00_HCD is not set
 CONFIG_USB_EHCI_HCD=y
-# CONFIG_OMAP_EHCI_PHY_MODE is not set
-CONFIG_OMAP_EHCI_TLL_MODE=y
+CONFIG_OMAP_EHCI_PHY_MODE=y
+# CONFIG_OMAP_EHCI_TLL_MODE is not set
 CONFIG_USB_EHCI_ROOT_HUB_TT=y
 # CONFIG_USB_EHCI_TT_NEWSCHED is not set
 # CONFIG_USB_ISP116X_HCD is not set
diff --git a/packages/linux/linux-omap-pm/dss2.diff b/packages/linux/linux-omap-pm/dss2.diff
new file mode 100644 (file)
index 0000000..8d3d2fd
--- /dev/null
@@ -0,0 +1,9 @@
+--- /tmp/Makefile      2009-01-12 15:50:04.000000000 +0100
++++ git/arch/arm/plat-omap/Makefile    2009-01-12 15:50:25.000000000 +0100
+@@ -32,3 +32,6 @@
+ obj-$(CONFIG_OMAP_PM_NOOP) += omap-pm-noop.o
+ obj-$(CONFIG_OMAP_PM_SRF) += omap-pm-srf.o \
+                               resource.o
++
++# OMAP2/3 Display Subsystem
++obj-y += dss/
index f3af9dd..2eed0d6 100644 (file)
@@ -7,12 +7,12 @@ COMPATIBLE_MACHINE = "omap5912osk|omap1710h3|omap2430sdp|omap2420h4|beagleboard|
 
 DEFAULT_PREFERENCE = "-1"
 
-SRCREV = "b5d11429ffe91c26903ff206e4c7ce5dd3ec4806"
+SRCREV = "24b64c62777f483bff45176accc187381e7cd7a7"
 
-PV = "2.6.28-pm1+gitr${SRCREV}"
-PR = "r6"
+PV = "2.6.27+2.6.28rc8-pm1+gitr${SRCREV}"
+PR = "r0"
 
-SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm.git;protocol=git;branch=pm-next \
+SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm.git;protocol=git;branch=pm-prev \
           file://defconfig"
 
 SRC_URI_append = " \
@@ -31,19 +31,20 @@ SRC_URI_append = " \
            file://0001-Implement-downsampling-with-debugs.patch;patch=1 \
            file://twl-asoc-fix-record.diff;patch=1 \
            file://tick-schedc-suppress-needless-timer-reprogramming.patch;patch=1 \
-#           file://0001-DSS-New-display-subsystem-driver-for-OMAP2-3.patch;patch=1 \
-#           file://0002-DSS-OMAPFB-fb-driver-for-new-display-subsystem.patch;patch=1 \
-#           file://0003-DSS-Add-generic-DVI-panel.patch;patch=1 \
-#           file://0004-DSS-support-for-Beagle-Board.patch;patch=1 \
-#           file://0005-DSS-Sharp-LS037V7DW01-LCD-Panel-driver.patch;patch=1 \
-#           file://0006-DSS-Support-for-OMAP3-SDP-board.patch;patch=1 \
-#           file://0007-DSS-Support-for-OMAP3-EVM-board.patch;patch=1 \
-#           file://0008-DSS-Hacked-N810-support.patch;patch=1 \
-#           file://0009-DSS-OMAPFB-allocate-fbmem-only-for-fb0-or-if-spes.patch;patch=1 \
-#           file://0010-DSS-OMAPFB-remove-extra-omapfb_setup_overlay-call.patch;patch=1 \
-#           file://0011-DSS-OMAPFB-fix-GFX_SYNC-to-be-compatible-with-DSS1.patch;patch=1 \
+           file://0001-DSS-New-display-subsystem-driver-for-OMAP2-3.patch;patch=1 \
+           file://0002-DSS-OMAPFB-fb-driver-for-new-display-subsystem.patch;patch=1 \
+           file://0003-DSS-Add-generic-DVI-panel.patch;patch=1 \
+           file://0004-DSS-support-for-Beagle-Board.patch;patch=1 \
+           file://0005-DSS-Sharp-LS037V7DW01-LCD-Panel-driver.patch;patch=1 \
+           file://0007-DSS-Support-for-OMAP3-EVM-board.patch;patch=1 \
+           file://0008-DSS-Hacked-N810-support.patch;patch=1 \
+           file://0009-DSS-OMAPFB-allocate-fbmem-only-for-fb0-or-if-spes.patch;patch=1 \
+           file://0010-DSS-OMAPFB-remove-extra-omapfb_setup_overlay-call.patch;patch=1 \
+           file://0011-DSS-OMAPFB-fix-GFX_SYNC-to-be-compatible-with-DSS1.patch;patch=1 \
            file://0001-ASoC-Add-support-for-OMAP3-EVM.patch;patch=1 \
            file://beagle-cpufreq.diff;patch=1 \
+           file://0001-This-merges-Steve-Kipisz-USB-EHCI-support.-He-star.patch;patch=1 \
+           file://dss2.diff;patch=1 \
 "