1. 27 7月, 2010 4 次提交
    • K
      OMAP: PM: create omap_devices for MPU, DSP, L3 · 6f88e9bc
      Kevin Hilman 提交于
      Create simple omap_devices for the main processors and busses.
      
      This is required to support the forth-coming device-based OPP
      approach, where OPPs are managed and tracked at the device level.
      
      Also, move these common PM init functions into a common_pm_init call
      that is called as a device_initcall().  The PM init is done at this level
      to ensure that the driver core is initialized before initialized.
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      [paul@pwsan.com: sparse warnings cleaned up; newly-created functions moved
       from mach-omap2/io.c to mach-omap2/pm.c; newly-created functions renamed
       to start with "omap2" rather than "omap"]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      6f88e9bc
    • P
      OMAP: hwmod: allow omap_hwmod_late_init() caller to skip module idle in _setup() · 97d60162
      Paul Walmsley 提交于
      On kernels that don't use the omap_device_enable() calls to enable
      devices, leave all on-chip devices enabled in hwmod _setup().
      Otherwise, accesses to those devices are likely to fail, crashing the
      system.  It's expected that kernels built without CONFIG_PM_RUNTIME
      will be the primary use-case for this.  This functionality is
      controlled by adding an extra parameter to omap_hwmod_late_init().
      
      This patch is based on the patch "OMAP: hwmod: don't auto-disable
      hwmod when !CONFIG_PM_RUNTIME" by Kevin Hilman
      <khilman@deeprootsystems.com>.
      
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      97d60162
    • K
      OMAP: hwmod: add non-locking versions of enable and idle functions · 84824022
      Kevin Hilman 提交于
      Some hwmods may need to be idled/enabled in atomic context, so
      non-locking versions of these functions are required.
      
      Most users should not need these and usage of theses should be
      controlled to understand why access is being done in atomic context.
      For this reason, the non-locking functions are only exposed at the
      hwmod level and not at the omap-device level.
      
      The use-case that led to the need for the non-locking versions is
      hwmods that are enabled/idled from within the core idle/suspend path.
      Since interrupts are already disabled here, the mutex-based locking in
      hwmod can sleep and will cause potential deadlocks.
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      84824022
    • P
      OMAP: clock: add kerneldoc for structures; move flags closer to structs · b3c1cff6
      Paul Walmsley 提交于
      Add kerneldoc for struct clk, struct clksel_rate, struct clksel.  Move
      flag macros for struct clk.flags and struct clksel_rate.flags closer
      to the structures.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      b3c1cff6
  2. 21 5月, 2010 12 次提交
  3. 14 5月, 2010 1 次提交
  4. 13 5月, 2010 1 次提交
    • K
      OMAP2/3: GPIO: generalize prepare for idle · 43ffcd9a
      Kevin Hilman 提交于
      Currently, the GPIO 'prepare' hook is only called when going to
      off-mode, while the function is called 'prepare_for_retention.'  This
      patch renames the function to 'prepare_for_idle' and calls it for any
      powersate != PWRDM_POWER_ON passing in the powerstate.
      
      The hook itself is then responsible for doing various preparation
      based on the powerstate.
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      43ffcd9a
  5. 06 5月, 2010 1 次提交
  6. 04 5月, 2010 3 次提交
    • T
      omap2/3: Fix DEBUG_LL for omap zoom2/3 · a4f57b81
      Tony Lindgren 提交于
      Zoom2 and 3 have UARTs only on the external debug board.
      GPMC needs to be mapped early to use it for DEBUG_LL.
      
      Additionally, 0xfb000000 overlaps with other areas, so
      use 0xfa400000 for the virtual address instead.
      
      Note that with the pending serial.c patches you need to
      set console=ttyS0,115200n8 as it will be the only UART
      mapped. To use DEBUG_LL, you need to pass also earlyprintk
      in cmdline.
      
      Cc: Allen Pais <allen.pais@ti.com>
      Acked-by: NVikram Pandita <vikram.pandita@ti.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      a4f57b81
    • T
      omap: Use a memory address for storing the debug port info instead of UART1 scratchpad · 96554d70
      Tony Lindgren 提交于
      This removes the dependency to the UART1 being available for storing
      the debug configuration in uncompress.h. This will simplify the
      DEBUG_LL UART configuration for boards that may not have UART1, or
      have an external UART as it requires only one mapping for DEBUG_LL.
      
      The patch has a few limitations. Basically now we're assuming that
      the kernel uncompress code won't overlap with OMAP_UART_INFO. We also
      assume the printascii is called at least once before paging_init in
      order for addruart to have a chance to read the UART setup from
      OMAP_UART_INFO.
      
      As suggested by Cyril Chemparathy <cyril@ti.com>,
      Vikram Pandita <vikram.pandita@ti.com> and
      Kevin Hilman <khilman@deeprootsystems.com>. Based on an earlier
      patch posted for Davinci by Cyril Chemparathy <cyril@ti.com>.
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      96554d70
    • T
      omap2/3/4: Fix multi.h when omap3 and omap4 are selected without omap2 · daa49495
      Tony Lindgren 提交于
      Otherwise we'll get an error about get_irqnr_and_base being defined
      twice. Add an entry for omap4, and use ARCH_OMAP3 for omap3 instead of
      ARCH_OMAP3430.
      
      Also fix the check for omap1 to use ARCH_OMAP2PLUS to avoid having to
      add ARCH_OMAP4 separately there.
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      daa49495
  7. 03 5月, 2010 1 次提交
  8. 01 5月, 2010 1 次提交
  9. 24 4月, 2010 4 次提交
  10. 31 3月, 2010 1 次提交
  11. 12 3月, 2010 5 次提交
  12. 26 2月, 2010 2 次提交
  13. 25 2月, 2010 4 次提交
    • S
      OMAP4: clock: Add dummy clock nodes for interface clocks · 7c43d547
      Santosh Shilimkar 提交于
      On OMAP4 platform the iclk control is completly under hardware control
      and no software control is available.
      
      This difference w.r.t previous OMAP's needs all the common driver
      accross OMAP's , cpu_is_xxxx() checks. To avoid poulluting the
      drivers dummy clock nodes are created (The autogeneration
      script has been updated accordingly).
      Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      Signed-off-by: NRajendra Nayak <rnayak@ti.com>
      Signed-off-by: NBenoit Cousson <b-cousson@ti.com>
      [paul@pwsan.com: made OMAP1 dummy_ck common and edited patch to reuse that]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      7c43d547
    • P
      OMAP hwmod: add hwmod class support · 43b40992
      Paul Walmsley 提交于
      Add support for categorizing and iterating over hardware IP blocks by
      the "class" of the IP block.  The class is the type of the IP block:
      e.g., "timer", "timer1ms", etc.  Move the OCP_SYSCONFIG/SYSSTATUS data
      from the struct omap_hwmod into the struct omap_hwmod_class, since
      it's expected to stay consistent for each class.  While here, fix some
      comments.
      
      The hwmod_class structures in this patch were designed and proposed by
      Benoît Cousson <b-cousson@ti.com> and were refined in a discussion
      between Thara Gopinath <thara@ti.com>, Kevin Hilman
      <khilman@deeprootsystems.com>, and myself.
      
      This patch uses WARN() lines that are longer than 80 characters, as
      Kevin noted a broader lkml consensus to increase greppability by
      keeping the messages all on one line.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Signed-off-by: NBenoît Cousson <b-cousson@ti.com>
      Cc: Thara Gopinath <thara@ti.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      43b40992
    • P
      OMAP hwmod: convert header files with static allocations into C files · 7359154e
      Paul Walmsley 提交于
      Code should be able to #include any header file without the fear that
      the header file will go allocating memory.  This is a coding style
      issue, similar to commit 82e9bd58.
      Move the existing hwmod data from .h files to .c files.
      
      While here, convert "omap34xx" to "omap3xxx" in the hwmod files, since
      most of these structures should be reusable across all OMAP3 chips.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Benoît Cousson <b-cousson@ti.com>
      Cc: Rajendra Nayak <rnayak@ti.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      7359154e
    • P
      OMAP hwmod: convert hwmod to use hardware clock names rather than clkdev dev+con · 50ebdac2
      Paul Walmsley 提交于
      The OMAP hwmod core code is intended to use SoC IP block description
      structures that are autogenerated from TI's OMAP hardware database.
      Currently the hwmod code uses clkdev device + connection addressing to
      identify clocks.  This causes problems in the hwmod autogeneration
      process, since the TI hardware database doesn't use platform_device or
      clkdev addressing; it uses a single clock signal name string, which
      tends to bear some resemblance to what is used in the OMAP TRMs.  This
      patch converts the hwmod code and existing data to use omap_clk_get_by_name(),
      introduced in the previous patch.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Benoît Cousson <b-cousson@ti.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      50ebdac2