1. 09 11月, 2012 8 次提交
    • P
      ARM: OMAP2+: board files: use SoC-specific system restart functions · 187e3e06
      Paul Walmsley 提交于
      Modify the board files to use the SoC-specific system restart
      functions.  At this point it's possible to remove omap_prcm_restart()
      from mach-omap2/prcm.c.
      
      While removing the prototypes for the now-unused restart functions, clean
      up a few more obsolete prototypes in mach-omap2/clock.h.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Tested-by: NVaibhav Hiremath <hvaibhav@ti.com>
      187e3e06
    • P
      ARM: OMAP2+: PRCM: create SoC-specific chip restart functions · 2f334a38
      Paul Walmsley 提交于
      Split omap_prcm_restart() from mach-omap2/prcm.c into SoC-specific
      variants.  These functions need to be able to save the reboot reason
      into the scratchpad RAM.  This implies a dependency on both the PRM
      and SCM IP blocks, so they've been moved into their own file.  This
      will eventually call functions in the PRM and SCM drivers, once those
      are created.
      
      Vaibhav Hiremath <hvaibhav@ti.com> identified an unused prototype in
      the first version of this patch - now removed.  Tony Lindgren
      <tony@atomide.com> noted a compile problem with some RMK Kconfigs;
      resolved in this patch.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Vaibhav Hiremath <hvaibhav@ti.com>
      Tested-by: NVaibhav Hiremath <hvaibhav@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      2f334a38
    • P
      ARM: OMAP2xxx: clock: move virt_prcm_set code into clkt2xxx_virt_prcm_set.c · baa689b8
      Paul Walmsley 提交于
      Collect all of the virt_prcm_set-specific clocktype code into
      mach-omap2/clkt2xxx_virt_prcm_set.c.  Remove its dependency on the
      'sclk' and 'vclk' global variables.  Those variables will be removed
      by subsequent patches.
      
      This is part of the process of cleaning up the OMAP2xxx clock code
      and preparing for the removal of the omap_prcm_restart() function.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Tested-by: NVaibhav Hiremath <hvaibhav@ti.com>
      baa689b8
    • P
      ARM: OMAP2xxx: clock: remove global 'dclk' variable · 5f039377
      Paul Walmsley 提交于
      Remove the global 'dclk' variable, instead replacing it with a
      variable local to the dpllcore clock type C file.  This removes some
      of the special-case code surrounding the OMAP2xxx clock init.
      
      This patch is a prerequisite for the removal of the
      omap_prcm_restart() code from arch/arm/mach-omap2/prcm.c.  It also
      cleans up some special-case OMAP2xxx clock code in the process.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Tested-by: NVaibhav Hiremath <hvaibhav@ti.com>
      5f039377
    • P
      ARM: OMAP2/3: PRM: add SoC reset functions (using the CORE DPLL method) · d08cce6a
      Paul Walmsley 提交于
      Add SoC reset functions into the PRM code.  These functions are based
      on code from mach-omap2/prcm.c.  They reset the SoC using the CORE DPLL
      reset method (as opposed to one of the other two or three chip reset
      methods).
      
      Adding them here will facilitate their removal from
      arch/arm/mach-omap2/prcm.c.  (prcm.c is deprecated.)
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Tested-by: NVaibhav Hiremath <hvaibhav@ti.com>
      d08cce6a
    • P
      ARM: OMAP2+: common: remove mach-omap2/common.c globals and map_common_io code · b6a4226c
      Paul Walmsley 提交于
      Get rid of the mach-omap2/common.c globals by moving the global
      initialization for IP block addresses that must occur early into
      mach-omap2/io.c.  In the process, remove the *_map_common_io*() and
      SoC-specific *set_globals* functions.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Tested-by: NVaibhav Hiremath <hvaibhav@ti.com>
      b6a4226c
    • P
      ARM: OMAP2+: PRCM: remove omap_prcm_get_reset_sources() · 76e0e16d
      Paul Walmsley 提交于
      omap_prcm_get_reset_sources() is now unused; so, remove it.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Tested-by: NVaibhav Hiremath <hvaibhav@ti.com>
      76e0e16d
    • P
      watchdog: OMAP: use standard GETBOOTSTATUS interface; use platform_data fn ptr · 129f5577
      Paul Walmsley 提交于
      Previously the OMAP watchdog driver used a non-standard way to report
      the chip reset source via the GETBOOTSTATUS ioctl.  This patch
      converts the driver to use the standard WDIOF_* flags for this
      purpose.
      
      This patch may break existing userspace code that uses the existing
      non-standard data format returned by the OMAP watchdog driver's
      GETBOOTSTATUS ioctl.  To fetch detailed reset source information,
      userspace code will need to retrieve it directly from the CGRM or PRM
      drivers when those are completed.
      
      Previously, to fetch the reset source, the driver either read a
      register outside the watchdog IP block (OMAP1), or called a function
      exported directly from arch/arm/mach-omap2.  Both approaches are
      broken.  This patch also converts the driver to use a platform_data
      function pointer.  This approach is temporary, and is due to the lack
      of drivers for the OMAP16xx+ Clock Generation and Reset Management IP
      block and the OMAP2+ Power and Reset Management IP block.  Once
      drivers are available for those IP blocks, the watchdog driver can be
      converted to call exported functions from those drivers directly.
      At that point, the platform_data function pointer can be removed.
      
      In the short term, this patch is needed to allow the PRM code to be
      removed from arch/arm/mach-omap2 (it is being moved to a driver).
      
      This version integrates a fix from Jon Hunter <jon-hunter@ti.com>
      that avoids a NULL pointer dereference in a DT-only boot, and integrates
      a patch commit message fix from Felipe Balbi <balbi@ti.com>.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Wim Van Sebroeck <wim@iguana.be>
      Acked-by: NWim Van Sebroeck <wim@iguana.be>
      [paul@pwsan.com: integrated pdata fix from Jon Hunter]
      Cc: Jon Hunter <jon-hunter@ti.com>
      [paul@pwsan.com: integrated changelog fix from Felipe Balbi]
      Cc: Felipe Balbi <balbi@ti.com>
      129f5577
  2. 30 10月, 2012 2 次提交
    • P
      ARM: OMAP2+: WDT: move init; add read_reset_sources pdata function pointer · 37c67d03
      Paul Walmsley 提交于
      The OMAP watchdog timer driver directly calls a function exported by
      code in arch/arm/mach-omap2.  This is not good; it tightly couples
      this driver to the mach-omap2 integration code.  Instead, add a
      temporary platform_data function pointer to abstract this function
      call.  A subsequent patch will convert the watchdog driver to use this
      function pointer.
      
      This patch also moves the device creation code out of
      arch/arm/mach-omap2/devices.c and into arch/arm/mach-omap2/wd_timer.c.
      This is another step towards the removal of
      arch/arm/mach-omap2/devices.c.
      
      Cc: Wim Van Sebroeck <wim@iguana.be>
      Acked-by: NWim Van Sebroeck <wim@iguana.be>
      [paul@pwsan.com: skip wd_timer device creation when DT blob is present]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      37c67d03
    • P
      ARM: OMAP1: CGRM: fix omap1_get_reset_sources() return type · 508c0d47
      Paul Walmsley 提交于
      An older version of the patch "ARM: OMAP1: create read_reset_sources()
      function (for initial use by watchdog)" was sent upstream, which used
      the wrong return type for the omap1_get_reset_sources() function.
      Fix it to return a u32, which is what the WDTIMER platform_data
      function pointer read_reset_sources() expects.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      508c0d47
  3. 27 10月, 2012 5 次提交
  4. 26 10月, 2012 1 次提交
  5. 25 10月, 2012 11 次提交
  6. 24 10月, 2012 1 次提交
    • D
      console: use might_sleep in console_lock · 6b898c07
      Daniel Vetter 提交于
      Instead of BUG_ON(in_interrupt()), since that doesn't check for all
      the newfangled stuff like preempt.
      
      Note that this is valid since the console_sem is essentially used like
      a real mutex with only two twists:
      - we allow trylock from hardirq context
      - across suspend/resume we lock the logical console_lock, but drop the
        semaphore protecting the locking state.
      
      Now that doesn't guarantee that no one is playing tricks in
      single-thread atomic contexts at suspend/resume/boot time, but
      - I couldn't find anything suspicious with some grepping,
      - might_sleep shouldn't die,
      - and I think the upside of catching more potential issues is worth
        the risk of getting a might_sleep backtrace that would have been
        save (and then dealing with that fallout).
      
      Cc: Dave Airlie <airlied@gmail.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      6b898c07
  7. 23 10月, 2012 12 次提交