1. 29 3月, 2011 2 次提交
  2. 16 3月, 2011 2 次提交
  3. 12 3月, 2011 1 次提交
  4. 08 3月, 2011 9 次提交
  5. 04 3月, 2011 3 次提交
  6. 24 2月, 2011 5 次提交
    • S
      ARM: Tegra: DMA: Fail safe if initialization fails · ccac0515
      Stephen Warren 提交于
      tegra_dma_init currently simply bails out early if any initialization fails.
      This skips various data-structure initialization. In turn, this means that
      tegra_dma_allocate_channel can still hand out channels. In this case, when
      tegra_dma_free_channel is called, which calls tegra_dma_cancel, the walking
      on ch->list will OOPS since the list's next/prev pointers may still be
      NULL.
      
      To solve this, add an explicit "initialized" flag, only set this once _init
      has fully completed successfully, and have _allocate_channel refuse to hand
      out channels if this is not set.
      
      While at it, simplify _init:
      * Remove redundant memsets
      * Use bitmap_fill to mark all channels as in-use up-front, and remove
        some now-redundant bitmap initialization loops.
      * Only mark a channel as free once all channel-related initialization has
        completed.
      
      Finally, the successful exit path from _init always has ret==0, so just
      hard-code that return. The error path still returns ret.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NColin Cross <ccross@android.com>
      ccac0515
    • S
      ARM: Tegra: Rename clk_dev1/2 to cdev1/2 · ddb7d5d8
      Stephen Warren 提交于
      The ASoC machine driver was written assuming my previous patch to add
      complete support for these clocks, which named them cdev1/2. Rename
      the clocks to match that, to avoid churn in the ASoC driver.
      
      This rename also makes the clocks more consistent with other Tegra
      clocks irrespective of any of that.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NColin Cross <ccross@android.com>
      ddb7d5d8
    • S
      ARM: Tegra: Rename I2S clocks to match driver name · 3c106bf5
      Stephen Warren 提交于
      The driver is tegra-i2s not just i2s. Rename the clocks to match, so that
      clk_get_sys can look up by driver name.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NColin Cross <ccross@android.com>
      3c106bf5
    • S
      ARM: Tegra: Make tegra_dma_init a postcore_initcall · dc54c23b
      Stephen Warren 提交于
      The following commit makes the Tegra APB DMA engine fail to initialize
      correctly: 0cf6230a
      ARM: tegra: Move tegra_common_init to tegra_init_early
      
      The reason is that tegra_init_early_ calls tegra_dma_init which calls
      request_threaded_irq, which fails since the IRQ hasn't yet been marked
      valid; that only happens in tegra_init_irq, which gets called after
      tegra_init_early.
      
      This used to work OK, since tegra_init_early was tegra_common_init, which
      got called after tegra_init_irq, basically from the beginning of
      tegra_harmony_init.
      
      Solve this by converting tegra_dma_init to a postcore_initcall. This makes
      it execute late enough that IRQs are marked valid, and avoids having to
      add it back to every machine's init function.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NColin Cross <ccross@android.com>
      dc54c23b
    • S
      ARM: 6759/1: smp: Select local timers vs broadcast timer support runtime · af90f10d
      Santosh Shilimkar 提交于
      The current code support of dummy timers in absence of local
      timer is compile time. This is an attempt to convert it to runtime
      so that on few SOC version if the local timers aren't supported
      kernel can switch to dummy timers. OMAP4430 ES1.0 does suffer from
      this limitation.
      
      This patch should not have any functional impact on affected
      files.
      
      Cc: Daniel Walker <dwalker@codeaurora.org>
      Cc: Bryan Huntsman <bryanh@codeaurora.org>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Magnus Damm <magnus.damm@gmail.com>
      Cc: Colin Cross <ccross@android.com>
      Cc: Erik Gilling <konkers@android.com>
      Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
      Cc: Linus Walleij <linus.walleij@stericsson.com>
      Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      Acked-by: NDavid Brown <davidb@codeaurora.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      af90f10d
  7. 23 2月, 2011 15 次提交
  8. 21 2月, 2011 3 次提交
    • C
      ARM: tegra: clock: Miscellaneous clock updates · 9c7dc562
      Colin Cross 提交于
      Correct max rates for pclk and sclk (Originally fixed by
        Dima Zavin <dima@android.com>)
      
      Correct max rate for plla (Originally fixed by
        Stephen Warren <swarren@nvidia.com>)
      
      Remove unnecessary no-op set_rate on audio clocks
      
      Add clock lookup entries for grhost, bsea, and vde clocks
      
      Update clock clookup entries for vcp, bsea, and vde clocks
      
      Add shared clock entries for sclk and emc
      
      Add a virtual cop clock to provide a reset op (Originally fixed by
        Dima Zavin <dima@android.com>)
      
      Pass set_rate on super clocks through to parent
      
      Fix pllx frequency table entry for 608 MHz
      
      Remove incorrect plla frequency table entries
      Acked-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NColin Cross <ccross@android.com>
      9c7dc562
    • C
      ARM: tegra: clock: Fix clock issues in suspend · c2f44a9d
      Colin Cross 提交于
      The PLLP registers are now being restored by the low-level resume code,
      and the CPU may be running off PLLP, so don't touch them during clock
      resume.
      
      Save plld, plls, pllu, and audio clock during suspend (originally
      fixed by Mayuresh Kulkarni <mkulkarni@nvidia.com>)
      
      The lock time for plld is 1000 us, so increase the delay after
      setting the PLLs.
      
      Add a BUG_ON to ensure the size of the suspend context area is
      correct.
      Acked-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NColin Cross <ccross@android.com>
      c2f44a9d
    • C
      ARM: tegra: clock: Add function to set SDMMC tap delay · 9743b389
      Colin Cross 提交于
      The SDMMC controllers have extra bits in the clock source
      register that adjust the delay between the clock and data
      to compenstate for delays on the PCB.  The values need to
      be set from the clock code so the clock can be locked
      during the read-modify-write on the clock source register.
      Acked-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NColin Cross <ccross@android.com>
      9743b389