1. 22 12月, 2010 4 次提交
    • P
      OMAP3: PM: Erratum i581 support: dll kick strategy · 9d93b8a2
      Peter 'p2' De Schrijver 提交于
      Erratum i581 impacts OMAP3 platforms.
      PRCM DPLL control FSM removes SDRC_IDLEREQ before DPLL3 locks causing
      the DPLL not to be locked at times.
      
      IMPORTANT:
      *) This is not a complete workaround implementation as recommended
      by the silicon erratum. This is a support logic for detecting lockups and
      attempting to recover where possible and is known to provide stability
      in multiple platforms.
      *) This code is mostly important for inactive and retention. The ROM code
      waits for the maximum DLL lock time when resuming from off mode. So for
      off mode this code isn't really needed.
      *) counters are introduced here for eventual export to userspace once the
      cleanups are completed.
      
      This should eventually get refactored as part of cleanups to sleep34xx.S
      
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Signed-off-by: NPeter 'p2' De Schrijver <peter.de-schrijver@nokia.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      9d93b8a2
    • R
      OMAP3: PM: Update clean_l2 to use v7_flush_dcache_all · 0bd40535
      Richard Woodruff 提交于
      Analysis in TI kernel with ETM showed that using cache mapped flush
      in kernel instead of SO mapped flush cost drops by 65% (3.39mS down
      to 1.17mS) for clean_l2 which is used during sleep sequences.
      Overall:
      	- speed up
      	- unfortunately there isn't a good alternative flush method today
      	- code reduction and less maintenance and potential bug in
      	  unmaintained code
      
      This also fixes the bug with the clean_l2 function usage.
      Reported-by: NTony Lindgren <tony@atomide.com>
      
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Acked-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      Acked-by: NJean Pihet <j-pihet@ti.com>
      
      [nm@ti.com: ported rkw's proposal to 2.6.37-rc2]
      Signed-off-by: NNishanth Menon <nm@ti.com>
      Signed-off-by: NRichard Woodruff <r-woodruff2@ti.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      0bd40535
    • T
      OMAP: pm.c correct the initcall for an early init. · 1cbbe37a
      Thara Gopinath 提交于
      omap2_common_pm_init is the API where generic system devices like
      mpu, l3 etc get initialized. This has to happen really early on
      during the boot and not at a later time. This is especially important
      with the new opp changes as these devices need to be built before the
      opp tables init happen. Today both are device initcalls and it works
      just because of the order of compilation. Making this postcore_initcall
      is ideal because the omap device layer init happens as a core_initcall
      and typically rest of the driver/device inits are arch_initcall or
      something lower.
      Signed-off-by: NThara Gopinath <thara@ti.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      1cbbe37a
    • J
      OMAP2+: disable idle early in the suspend sequence · c166381d
      Jean Pihet 提交于
      Some bad interaction between the idle and the suspend paths has been
      identified: the idle code is called during the suspend enter and exit
      sequences. This could cause corruption or lock-up of resources.
      
      The solution is to move the calls to disable_hlt at the very beginning
      of the suspend sequence (ex. in omap3_pm_begin instead of
      omap3_pm_prepare), and the call to enable_hlt at the very end of
      the suspend sequence (ex. in omap3_pm_end instead of omap3_pm_finish).
      
      Tested with RET and OFF on Beagle and OMAP3EVM.
      Signed-off-by: NJean Pihet <j-pihet@ti.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      c166381d
  2. 17 12月, 2010 7 次提交
  3. 15 12月, 2010 3 次提交
  4. 13 12月, 2010 3 次提交
  5. 11 12月, 2010 1 次提交
    • P
      OMAP2: PRCM: fix some SHIFT macros that were actually bitmasks · c2015dc8
      Paul Walmsley 提交于
      After Charu's GPIO hwmod patches, GPIO initialization on N800 emits
      the following messages for all GPIO banks:
      
      omap_hwmod: gpio1: cannot be enabled (3)
      
      This is due to OMAP24XX_ST_GPIOS_SHIFT being defined as a bitmask.
      Fix this and also fix two other macros that had the same problem.
      
      Thanks to Tony Lindgren <tony@atomide.com> for originally reporting
      this bug.
      
      Signed-off-by: Paul Walmsley <paul@pwsan.com
      Cc: Charulatha Varadarajan <charu@ti.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      c2015dc8
  6. 10 12月, 2010 2 次提交
  7. 08 12月, 2010 2 次提交
    • A
      arm: omap2: io: fix clk_get() error check · e281f7ec
      Aaro Koskinen 提交于
      clk_get() return value should be checked with IS_ERR().
      Signed-off-by: NAaro Koskinen <aaro.koskinen@nokia.com>
      Acked-by: NKevin Hilman <khilman@deeprootsystems.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      e281f7ec
    • V
      ARM: S3C24XX: Fix mess with gpio {set,get}_pull callbacks · 812c4e40
      Vasily Khoruzhick 提交于
      Currently the {set,get}_pull callbacks of the s3c24xx_gpiocfg_default structure
      are initalized via s3c_gpio_{get,set}pull_1up. This results in a linker
      error when only CONFIG_CPU_S3C2442 is selected:
      
      arch/arm/plat-s3c24xx/built-in.o:(.data+0x13f4): undefined reference to
      `s3c_gpio_getpull_1up'
      arch/arm/plat-s3c24xx/built-in.o:(.data+0x13f8): undefined reference to
      `s3c_gpio_setpull_1up'
      
      The s3c2442 has pulldowns instead of pullups compared to the s3c2440.
      The method of controlling them is the same though.
      So this patch modifies the existing s3c_gpio_{get,set}pull_1up helper functions
      to take an additional parameter deciding whether the pin has a pullup or pulldown.
      The s3c_gpio_{get,set}pull_1{down,up} functions then wrap that functions passing
      either S3C_GPIO_PULL_UP or S3C_GPIO_PULL_DOWN.
      
      Furthermore this patch sets up the s3c24xx_gpiocfg_default.{get,set}_pull fields
      in the s3c244{0,2}_map_io function to the new pulldown helper functions.
      
      Based on patch from "Lars-Peter Clausen" <lars@metafoo.de>
      Signed-off-by: NVasily Khoruzhick <anarsoul@gmail.com>
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      812c4e40
  8. 07 12月, 2010 3 次提交
  9. 06 12月, 2010 1 次提交
  10. 04 12月, 2010 3 次提交
  11. 03 12月, 2010 1 次提交
  12. 01 12月, 2010 6 次提交
  13. 30 11月, 2010 4 次提交