1. 18 10月, 2012 1 次提交
  2. 09 10月, 2012 1 次提交
    • K
      ARM: OMAP2+: PM: MPU DVFS: use generic CPU device for MPU-SS · 24d7b40a
      Kevin Hilman 提交于
      Currently, a dummy omap_device is created for the MPU sub-system so
      that a device node exists for MPU DVFS.  Specifically, for the
      association of MPU OPPs to a device node, and so that a voltage
      regulator can be mapped to a device node.
      
      For drivers to get a handle to this device node, an OMAP-specific API
      has been used.  However, the kernel already has device nodes for the
      CPU(s) in the system, so we can use those instead of an OMAP-specific
      dummy device and then drivers (like OMAP CPUfreq) can use generic
      APIs.
      
      To use the existing CPU device nodes, modify the OPP creation and
      regulator registration to use the CPU0 device node for registraion.
      
      NOTE: this patch always uses CPU0 as the device node.  On all
            OMAPs today, MPU DVFS scales all CPUs together, so this will
            not be a problem, but this assumption will need to be changed
            if independently scalable CPUs are introduced.
      
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: NKevin Hilman <khilman@ti.com>
      24d7b40a
  3. 03 10月, 2012 1 次提交
  4. 24 9月, 2012 1 次提交
    • P
      ARM: OMAP2+: clockdomain/hwmod: add workaround for EMU clockdomain idle problems · b71c7217
      Paul Walmsley 提交于
      The idle status of the IP blocks and clocks inside the EMU clockdomain
      isn't taken into account by the PRCM hardware when deciding whether
      the clockdomain is idle.  Add a workaround flag in the clockdomain
      code, CLKDM_MISSING_IDLE_REPORTING, to deal with this problem, and add
      the code necessary to support it.
      
      If CLKDM_MISSING_IDLE_REPORTING is set on a clockdomain, the
      clockdomain will be forced active whenever an IP block inside that
      clockdomain is in use, even if the clockdomain supports
      hardware-supervised idle.  When the kernel indicates that the last
      active IP block inside the clockdomain is no longer used, the
      clockdomain will be forced idle, or, if that mode is not supported in
      the hardware, it will be placed into hardware-supervised idle.
      
      This patch is an equal collaboration with Jon Hunter
      <jon-hunter@ti.com>.  Ming Lei <ming.lei@canonical.com>, Will Deacon
      <will.deacon@arm.com>, Madhav Vij <mvij@ti.com>, Kevin Hilman
      <khilman@ti.com>, Benoît Cousson <b-cousson@ti.com>, and Santosh
      Shilimkar <santosh.shilimkar@ti.com> all made essential contributions
      to the understanding of EMU clockdomain power management on OMAP.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Jon Hunter <jon-hunter@ti.com>
      Cc: Ming Lei <ming.lei@canonical.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: Madhav Vij <mvij@ti.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: Benoît Cousson <b-cousson@ti.com>
      Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
      Tested-by: NJon Hunter <jon-hunter@ti.com>
      b71c7217
  5. 23 9月, 2012 1 次提交
    • R
      ARM: OMAP2+: clock: Remove all direct dereferencing of struct clk · 5dcc3b97
      Rajendra Nayak 提交于
      While we move to Common Clk Framework (CCF), direct deferencing of struct
      clk wouldn't be possible anymore. Hence get rid of all such instances
      in the current clock code and use macros/helpers similar to the ones that
      are provided by CCF.
      
      While here also concatenate some strings split across multiple lines
      which seem to be needed anyway.
      Signed-off-by: NRajendra Nayak <rnayak@ti.com>
      [paul@pwsan.com: simplified some compound expressions; reformatted some
       messages]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Mike Turquette <mturquette@linaro.org>
      5dcc3b97
  6. 12 9月, 2012 1 次提交
    • P
      ARM: OMAP: unwrap strings · 7852ec05
      Paul Walmsley 提交于
      Find and unwrap wrapped strings in the style:
      
      	pr_debug("clockdomain: hardware cannot set/clear wake up of "
      		 "%s when %s wakes up\n", clkdm1->name, clkdm2->name);
      
      Keeping these strings contiguous seems to be the current Linux kernel
      policy.
      
      The offending lines were found with the following command:
      
          pcregrep -rnM '"\s*$\s*"' arch/arm/*omap*
      
      While here, some messages have been clarified, some pr_warning(
      ... calls have been converted to pr_warn( ..., and some printk(KERN_*
      ... have been converted to pr_*.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      7852ec05
  7. 08 5月, 2012 1 次提交
  8. 30 3月, 2012 1 次提交
    • G
      ARM: OMAP: pm: fix compilation break · 335aece5
      Govindraj.R 提交于
      Fix the compilation break observed on latest mainline caused
      by 9f97da78 (Disintegrate asm/system.h for ARM):
      
      arch/arm/mach-omap1/pm.c: In function 'omap_pm_prepare':
      arch/arm/mach-omap1/pm.c:587: error: implicit declaration of function 'disable_hlt'
      arch/arm/mach-omap1/pm.c: In function 'omap_pm_finish':
      arch/arm/mach-omap1/pm.c:624: error: implicit declaration of function 'enable_hlt'
      arch/arm/mach-omap1/pm.c: In function 'omap_pm_init':
      arch/arm/mach-omap1/pm.c:681: error: 'arm_pm_idle' undeclared (first use in this function)
      ...
      
      arch/arm/mach-omap2/pm.c: In function 'omap_pm_begin':
      arch/arm/mach-omap2/pm.c:239: error: implicit declaration of function 'disable_hlt'
      arch/arm/mach-omap2/pm.c: In function 'omap_pm_end':
      arch/arm/mach-omap2/pm.c:247: error: implicit declaration of function 'enable_hlt'
      Signed-off-by: NGovindraj.R <govindraj.raja@ti.com>
      Acked-by: NKevin Hilman <khilman@ti.com>
      [tony@atomide.com: updated to fix omap1 too]
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      335aece5
  9. 07 3月, 2012 1 次提交
  10. 06 3月, 2012 3 次提交
  11. 25 2月, 2012 1 次提交
  12. 17 2月, 2012 1 次提交
  13. 15 2月, 2012 1 次提交
  14. 24 11月, 2011 1 次提交
  15. 18 11月, 2011 1 次提交
  16. 01 11月, 2011 1 次提交
  17. 05 10月, 2011 3 次提交
  18. 16 9月, 2011 4 次提交
    • K
      OMAP: omap_device: when building return platform_device instead of omap_device · 3528c58e
      Kevin Hilman 提交于
      All of the device init and device driver interaction with omap_device
      is done using platform_device pointers.  To make this more explicit,
      have omap_device return a platform_device pointer instead of an
      omap_device pointer.
      
      All current users of the omap_device pointer were only using it to get
      at the platform_device pointer or struct device pointer, so fixing all
      of the users was trivial.
      
      This also makes it more difficult for device init code to directly
      access members of struct omap_device, and allows for easier changing
      of omap_device internals.
      
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: NKevin Hilman <khilman@ti.com>
      3528c58e
    • K
      OMAP3+: voltage: rename scale and reset functions using voltdm_ prefix · 5e5651be
      Kevin Hilman 提交于
      Rename voltage scaling related functions to use voltdm_ prefix intead
      of omap_voltage_, and cleanup kerneldoc comments in the process.
      
      s/omap_voltage_scale_vdd/voltdm_scale/
      s/omap_voltage_reset/voltdm_reset/
      
      Also, in voltdm_reset() s/target_uvdc/target_volt/ to be consistent with
      naming throughout the file.
      
      No functional changes.
      Signed-off-by: NKevin Hilman <khilman@ti.com>
      5e5651be
    • K
      OMAP3: voltage: rename "mpu" voltagedomain to "mpu_iva" · 280a7275
      Kevin Hilman 提交于
      This voltage domain (a.k.a. VDD1) contains both the MPU and the IVA, so
      rename appropriately.
      
      Also fixup any users of the "mpu" name to use "mpu_iva"
      Signed-off-by: NKevin Hilman <khilman@ti.com>
      280a7275
    • K
      OMAP2+: voltage: start towards a new voltagedomain layer · 81a60482
      Kevin Hilman 提交于
      Start cleaning up the voltage layer to have a voltage domain layer
      that resembles the structure of the existing clock and power domain
      layers.  To that end:
      
      - move the 'struct voltagedomain' out of 'struct omap_vdd_info' to
        become the primary data structure.
      
      - convert any functions taking a pointer to struct omap_vdd_info into
        functions taking a struct voltagedomain pointer.
      
      - convert the register & initialize of voltage domains to look like
        that of powerdomains
      
      - convert omap_voltage_domain_lookup() to voltdm_lookup(), modeled
        after the current powerdomain and clockdomain lookup functions.
      
      - omap_voltage_late_init(): only configure VDD info when
        the vdd_info struct is non-NULL
      Signed-off-by: NKevin Hilman <khilman@ti.com>
      81a60482
  19. 31 8月, 2011 2 次提交
  20. 20 8月, 2011 1 次提交
  21. 10 7月, 2011 2 次提交
  22. 26 4月, 2011 1 次提交
  23. 10 3月, 2011 1 次提交
  24. 08 3月, 2011 1 次提交
  25. 26 2月, 2011 2 次提交
    • R
      OMAP: clockdomain: Arch specific funcs for hwsup control of clkdm · 5cd1937b
      Rajendra Nayak 提交于
      Define the following architecture specific funtions for omap2/3/4
      .clkdm_allow_idle
      .clkdm_deny_idle
      
      Convert the platform-independent framework to call these functions.
      Also rename the api's by removing the omap2_ preamble.
      Hence call omap2_clkdm_allow_idle as clkdm_allow_idle and
      omap2_clkdm_deny_idle as clkdm_deny_idle.
      
      Make the _clkdm_add_autodeps and _clkdm_del_autodeps as non-static
      so they can be accessed from OMAP2/3 platform specific code.
      Signed-off-by: NRajendra Nayak <rnayak@ti.com>
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      5cd1937b
    • R
      OMAP: clockdomain: Arch specific funcs for sleep/wakeup of clkdm · 68b921ad
      Rajendra Nayak 提交于
      Define the following architecture specific funtions for omap2/3/4
      .clkdm_sleep
      .clkdm_wakeup
      
      Convert the platform-independent framework to call these functions.
      Also rename the api's by removing the omap2_ preamble.
      Hence call omap2_clkdm_wakeup as clkdm_wakeup and
      omap2_clkdm_sleep as clkdm_sleep.
      Signed-off-by: NRajendra Nayak <rnayak@ti.com>
      [paul@pwsan.com: fixed omap3_clkdm_clear_all_sleepdeps() and
       omap2_clkdm_clear_all_wkdeps() to test against the correct
       loop termination condition; thanks to Kevin Hilman for finding and
       helping fix]
      Cc: Kevin Hilman <khilman@ti.com>
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      68b921ad
  26. 23 12月, 2010 5 次提交