1. 29 Jan, 2013 9 commits
    • Paul Walmsley's avatar
      ARM: OMAP2xxx: CM: remove autodep handling · cc3af91b
      Paul Walmsley authored
      There's no need to preserve the autodep handling code in
      mach-omap2/cm2xxx.c, since no autodeps are defined for these chips.
      Hopefully they'll never be needed, but if in some future case they are,
      this code can be added back in.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      cc3af91b
    • Paul Walmsley's avatar
      ARM: OMAP2+: powerdomain/clockdomain: add a per-powerdomain spinlock · 3a090284
      Paul Walmsley authored
      Add a per-powerdomain spinlock.  Use that instead of the clockdomain
      spinlock.  Add pwrdm_lock()/pwrdm_unlock() functions to allow other
      code to acquire or release the powerdomain spinlock without reaching
      directly into the struct powerdomain.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Jean Pihet <jean.pihet@newoldbits.com>
      3a090284
    • Paul Walmsley's avatar
      ARM: OMAP2+: PM/powerdomain: move omap_set_pwrdm_state() to powerdomain code · c4978fba
      Paul Walmsley authored
      Move omap_set_pwrdm_state() from the PM code to the powerdomain code,
      and refactor it to split it up into several functions.  A subsequent patch
      will rename it to conform with the existing powerdomain function names.
      
      This version includes some additional documentation, based on a
      suggestion from Jean Pihet.  It also modifies omap_set_pwrdm_state()
      to not bail out early unless both the powerdomain current power state
      and the next power state are equal.  (Previously it would terminate
      early if the next power state was equal to the target power state,
      which was insufficiently rigorous.)
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Jean Pihet <jean.pihet@newoldbits.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Cc: Tero Kristo <t-kristo@ti.com>
      c4978fba
    • Paul Walmsley's avatar
      ARM: OMAP2: PM/powerdomain: drop unnecessary pwrdm_wait_transition() · f8457c2d
      Paul Walmsley authored
      Drop an unnecessary pwrdm_wait_transition() from mach-omap2/pm.c -
      it's called by the subsequent pwrdm_state_switch().
      
      Also get rid of pwrdm_wait_transition() in the powerdomain code - there's
      no longer any need to export this function.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      f8457c2d
    • Paul Walmsley's avatar
      ARM: OMAP2xxx: PM: clean up some crufty powerstate programming code · f653b298
      Paul Walmsley authored
      Don't attempt to put clockdomains to sleep; this should be handled by the
      clock framework.  It should be enough to program the next-power-state,
      and then let the code in omap_pm_clkdms_setup() deal with the rest.
      
      Start out by programming the MPU and CORE powerdomains to stay ON.
      Then control the MPU and CORE powerdomain states directly in
      omap2_enter_full_retention() and omap2_enter_mpu_retention().  Not the
      most optimal way to do it, but certainly is the most conservative until
      OMAP2xxx PM is working again.
      
      Get rid of the open-coded PM_PWSTCTRL_MPU writes in
      omap2_enter_mpu_retention(); use the powerdomain code instead.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      f653b298
    • Paul Walmsley's avatar
      ARM: OMAP2+: clockdomain: add pwrdm_state_switch() call to clkdm_sleep() · 53e1cb46
      Paul Walmsley authored
      In clkdm_sleep(), the powerdomain should be eligible to switch power
      states right after the call to the low-level clockdomain sleep
      function.  We should have been tracking that with the
      pwrdm_state_switch() code, but we weren't, for whatever reason.  Fix that.
      
      This resolves the "pwrdm state mismatch(cam_pwrdm) 3 != 0" that appears
      during the OMAP4460 Pandaboard-ES PM test, e.g. here:
      
      http://www.pwsan.com/omap/testlogs/test_v3.8-rc5/20130126003323/pm/4460pandaes/4460pandaes_log.txtSigned-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Tero Kristo <t-kristo@ti.com>
      53e1cb46
    • Jean Pihet's avatar
      ARM: OMAP2+: powerdomain: fix powerdomain trace integration · c165a140
      Jean Pihet authored
      Fix the trace in the case a power domain did not hit the desired
      state, as reported by Paul Walmsley.
      Reported-by: default avatarPaul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarJean Pihet <j-pihet@ti.com>
      [paul@pwsan.com: split this fix off from the patch
       "ARM: OMAP2+: PM debug: trace the functional power domains states"]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      c165a140
    • Paul Walmsley's avatar
      ARM: OMAP4: MPUSS PM: remove unnecessary shim functions for powerdomain control · 32d174ed
      Paul Walmsley authored
      The OMAP4 MPU subsystem power management code contains several unnecessary
      shim functions for powerdomain control; remove them.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Acked-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
      32d174ed
    • Paul Walmsley's avatar
      ARM: OMAP3xxx: CPUIdle: optimize __omap3_enter_idle() · 1cd96478
      Paul Walmsley authored
      Avoid programming the MPU and CORE powerdomain next-power-state
      registers if those powerdomains will never enter low-power states
      (e.g., the state that people refer to as "C1").
      
      To avoid making assumptions about CPUIdle states based on their order
      in the list, use a flag to mark CPUIdle states that don't enter
      powerdomain low-power states.
      
      Avoid a previous-power-state register read on the MPU powerdomain
      unless we know that the MPU was supposed to go OFF during the last
      state transition.  Previous-power-state register reads can be very
      expensive, so it's worth avoiding these when possible.
      
      Since the CORE_L3 clockdomain can't go inactive unless the MPU is active,
      there's little point blocking autoidle on the CORE_L3 clockdomain in "C1"
      state, since we've programmed the MPU clockdomain to stay active.
      Remove the unnecessary code.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      1cd96478
  2. 26 Jan, 2013 2 commits
  3. 25 Jan, 2013 4 commits
    • Linus Torvalds's avatar
      Linux 3.8-rc5 · 949db153
      Linus Torvalds authored
      949db153
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · d7df025e
      Linus Torvalds authored
      Pull btrfs fixes from Chris Mason:
       "It turns out that we had two crc bugs when running fsx-linux in a
        loop.  Many thanks to Josef, Miao Xie, and Dave Sterba for nailing it
        all down.  Miao also has a new OOM fix in this v2 pull as well.
      
        Ilya fixed a regression Liu Bo found in the balance ioctls for pausing
        and resuming a running balance across drives.
      
        Josef's orphan truncate patch fixes an obscure corruption we'd see
        during xfstests.
      
        Arne's patches address problems with subvolume quotas.  If the user
        destroys quota groups incorrectly the FS will refuse to mount.
      
        The rest are smaller fixes and plugs for memory leaks."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (30 commits)
        Btrfs: fix repeated delalloc work allocation
        Btrfs: fix wrong max device number for single profile
        Btrfs: fix missed transaction->aborted check
        Btrfs: Add ACCESS_ONCE() to transaction->abort accesses
        Btrfs: put csums on the right ordered extent
        Btrfs: use right range to find checksum for compressed extents
        Btrfs: fix panic when recovering tree log
        Btrfs: do not allow logged extents to be merged or removed
        Btrfs: fix a regression in balance usage filter
        Btrfs: prevent qgroup destroy when there are still relations
        Btrfs: ignore orphan qgroup relations
        Btrfs: reorder locks and sanity checks in btrfs_ioctl_defrag
        Btrfs: fix unlock order in btrfs_ioctl_rm_dev
        Btrfs: fix unlock order in btrfs_ioctl_resize
        Btrfs: fix "mutually exclusive op is running" error code
        Btrfs: bring back balance pause/resume logic
        btrfs: update timestamps on truncate()
        btrfs: fix btrfs_cont_expand() freeing IS_ERR em
        Btrfs: fix a bug when llseek for delalloc bytes behind prealloc extents
        Btrfs: fix off-by-one in lseek
        ...
      d7df025e
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · 66e2d3e8
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Two small cifs fixes"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        fs/cifs/cifs_dfs_ref.c: fix potential memory leakage
        cifs: fix srcip_matches() for ipv6
      66e2d3e8
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/virt/kvm/kvm · d93816a6
      Linus Torvalds authored
      Pull kvm fixlet from Marcelo Tosatti.
      
      * git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: PPC: Emulate dcbf
      d93816a6
  4. 24 Jan, 2013 25 commits