1. 13 5月, 2009 3 次提交
    • P
      OMAP2xxx clock: rename clk_init_one() to clk_preinit() · 79716870
      Paul Walmsley 提交于
      Rename clk_init_one() to clk_preinit() to distinguish its function
      from clk_init() and the individual struct clk init functions.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      79716870
    • P
      OMAP3 clock: only unlock SDRC DLL if SDRC clk < 83MHz · 4519c2bf
      Paul Walmsley 提交于
      According to the 34xx TRM Rev. K section 11.2.4.4.11.1 "Purpose of the
      DLL/CDL Module," the SDRC delay-locked-loop can be locked at any SDRC
      clock frequency from 83MHz to 166MHz.  CDP code unconditionally
      unlocked the DLL whenever shifting to a lower SDRC speed, but this
      seems unnecessary and error-prone, as the DLL is no longer able to
      compensate for process, voltage, and temperature variations.  Instead,
      only unlock the DLL when the SDRC clock rate would be less than 83MHz.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      4519c2bf
    • P
      OMAP3 SRAM: mark OCM RAM as Non-cacheable Normal memory · d9295746
      Paul Walmsley 提交于
      Mark the SRAM (aka OCM RAM) as Non-cacheable Normal memory[1].  This
      is to prevent the ARM from evicting existing cache lines to SDRAM
      while code is executing from the SRAM.  Necessary since one of the
      primary uses for the SRAM is to hold the code and data for the CORE
      DPLL M2 divider reprogramming code, which must execute while the SDRC
      is idled.  If the ARM attempts to write cache lines back to the while
      the SRAM code is running, the ARM will stall[2].
      
      TI deals with this problem in the CDP kernel by marking the SRAM as
      Strongly-ordered memory.
      
      Tero Kristo <tero.kristo@nokia.com> caught a bug in an earlier version of
      this patch - thanks Tero.
      
      ...
      
      1. ARMv7 ARM (DDI 0406A) pp. A3-30, A3-31, B3-32.
      
      2. Private communication with Richard Woodruff <r-woodruff2@ti.com>
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Tero Kristo <tero.kristo@nokia.com>
      Cc: Richard Woodruff <r-woodruff2@ti.com>
      d9295746
  2. 24 4月, 2009 9 次提交
  3. 23 4月, 2009 1 次提交
    • P
      OMAP2xxx clock: pre-initialize struct clks early · c8088112
      Paul Walmsley 提交于
      Commit 3f0a820c breaks OMAP2xxx boot
      during initial propagate_rate() on osc_ck and sys_ck.  Fix by
      pre-initializing all struct clks before running any other clock init
      code.  Incorporates review comments from Russell King
      <rmk+kernel@arm.linux.org.uk>.
      
      Resolves
      
      <1>Unable to handle kernel NULL pointer dereference at virtual address 00000000
      <1>pgd = c0004000
      <1>[00000000] *pgd=00000000
      Internal error: Oops: 5 [#1]
      Modules linked in:
      CPU: 0    Not tainted  (2.6.29-omap1 #37)
      PC is at propagate_rate+0x10/0x60
      LR is at omap2_clk_init+0x30/0x218
      ...
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Tested-by: NJarkko Nikula <jarkko.nikula@nokia.com>
      Cc: Russell King <rmk+kernel@arm.linux.org.uk>
      c8088112
  4. 22 4月, 2009 1 次提交
  5. 29 3月, 2009 1 次提交
  6. 24 3月, 2009 25 次提交