Skip to content
  1. Aug 01, 2012
    • Andres Salomon's avatar
      x86: OLPC: switch over to using new EC driver on x86 · 85f90cf6
      Andres Salomon authored
      
      
      This uses the new EC driver framework in drivers/platform/olpc.  The
      XO-1 and XO-1.5-specific code is still in arch/x86, but the generic stuff
      (including a new workqueue; no more running EC commands with IRQs disabled!)
      can be shared with other architectures.
      
      Signed-off-by: default avatarAndres Salomon <dilinger@queued.net>
      Acked-by: default avatarPaul Fox <pgf@laptop.org>
      Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
      85f90cf6
    • Andres Salomon's avatar
      Platform: OLPC: add a suspended flag to the EC driver · d278b7a2
      Andres Salomon authored
      
      
      A problem we've noticed on XO-1.75 is when we suspend in the middle of
      an EC command.  Don't allow that.
      
      In the process, create a private object for the generic EC driver to use;
      we have a framework for passing around a struct, use that rather than a
      proliferation of global variables.
      
      Signed-off-by: default avatarAndres Salomon <dilinger@queued.net>
      Acked-by: default avatarPaul Fox <pgf@laptop.org>
      Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
      d278b7a2
    • Andres Salomon's avatar
      Platform: OLPC: turn EC driver into a platform_driver · ac250415
      Andres Salomon authored
      
      
      The 1.75-based OLPC EC driver already does this; let's do it for all EC
      drivers.  This gives us nice suspend/resume hooks, amongst other things.
      
      We want to run the EC's suspend hooks later than other drivers (which may
      be setting wakeup masks or be running EC commands).  We also want to run
      the EC's resume hooks earlier than other drivers (which may want to run EC
      commands).
      
      Signed-off-by: default avatarAndres Salomon <dilinger@queued.net>
      Acked-by: default avatarPaul Fox <pgf@laptop.org>
      Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
      ac250415
    • Andres Salomon's avatar
      Platform: OLPC: allow EC cmd to be overridden, and create a workqueue to call it · 3d26c20b
      Andres Salomon authored
      
      
      This provides a new API allows different OLPC architectures to override the
      EC driver.  x86 and ARM OLPC machines use completely different EC backends.
      
      The olpc_ec_cmd is synchronous, and waits for the workqueue to send the
      command to the EC.  Multiple callers can run olpc_ec_cmd() at once, and
      they will by serialized and sleep while only one executes on the EC at a time.
      
      We don't provide an unregister function, as that doesn't make sense within
      the context of OLPC machines - there's only ever 1 EC, it's critical to
      functionality, and it certainly not hotpluggable.
      
      Signed-off-by: default avatarAndres Salomon <dilinger@queued.net>
      Acked-by: default avatarPaul Fox <pgf@laptop.org>
      Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
      3d26c20b
    • Andres Salomon's avatar
      drivers: OLPC: update various drivers to include olpc-ec.h · 3bf9428f
      Andres Salomon authored
      
      
      Switch over to using olpc-ec.h in multiple steps, so as not to break builds.
      This covers every driver that calls olpc_ec_cmd().
      
      Signed-off-by: default avatarAndres Salomon <dilinger@queued.net>
      Acked-by: default avatarPaul Fox <pgf@laptop.org>
      Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
      3bf9428f
    • Andres Salomon's avatar
      Platform: OLPC: add a stub to drivers/platform/ for the OLPC EC driver · 392a325c
      Andres Salomon authored
      
      
      The OLPC EC driver has outgrown arch/x86/platform/.  It's time to both
      share common code amongst different architectures, as well as move it out
      of arch/x86/.  The XO-1.75 is ARM-based, and the EC driver shares a lot of
      code with the x86 code.
      
      Signed-off-by: default avatarAndres Salomon <dilinger@queued.net>
      Acked-by: default avatarPaul Fox <pgf@laptop.org>
      Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
      392a325c
    • Linus Torvalds's avatar
      Merge branch 'nfsd-next' of git://linux-nfs.org/~bfields/linux · 08843b79
      Linus Torvalds authored
      Pull nfsd changes from J. Bruce Fields:
       "This has been an unusually quiet cycle--mostly bugfixes and cleanup.
        The one large piece is Stanislav's work to containerize the server's
        grace period--but that in itself is just one more step in a
        not-yet-complete project to allow fully containerized nfs service.
      
        There are a number of outstanding delegation, container, v4 state, and
        gss patches that aren't quite ready yet; 3.7 may be wilder."
      
      * 'nfsd-next' of git://linux-nfs.org/~bfields/linux: (35 commits)
        NFSd: make boot_time variable per network namespace
        NFSd: make grace end flag per network namespace
        Lockd: move grace period management from lockd() to per-net functions
        LockD: pass actual network namespace to grace period management functions
        LockD: manage grace list per network namespace
        SUNRPC: service request network namespace helper introduced
        NFSd: make nfsd4_manager allocated per network namespace context.
        LockD: make lockd manager allocated per network namespace
        LockD: manage grace period per network namespace
        Lockd: add more debug to host shutdown functions
        Lockd: host complaining function introduced
        LockD: manage used host count per networks namespace
        LockD: manage garbage collection timeout per networks namespace
        LockD: make garbage collector network namespace aware.
        LockD: mark host per network namespace on garbage collect
        nfsd4: fix missing fault_inject.h include
        locks: move lease-specific code out of locks_delete_lock
        locks: prevent side-effects of locks_release_private before file_lock is initialized
        NFSd: set nfsd_serv to NULL after service destruction
        NFSd: introduce nfsd_destroy() helper
        ...
      08843b79
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · cc8362b1
      Linus Torvalds authored
      Pull Ceph changes from Sage Weil:
       "Lots of stuff this time around:
      
         - lots of cleanup and refactoring in the libceph messenger code, and
           many hard to hit races and bugs closed as a result.
         - lots of cleanup and refactoring in the rbd code from Alex Elder,
           mostly in preparation for the layering functionality that will be
           coming in 3.7.
         - some misc rbd cleanups from Josh Durgin that are finally going
           upstream
         - support for CRUSH tunables (used by newer clusters to improve the
           data placement)
         - some cleanup in our use of d_parent that Al brought up a while back
         - a random collection of fixes across the tree
      
        There is another patch coming that fixes up our ->atomic_open()
        behavior, but I'm going to hammer on it a bit more before sending it."
      
      Fix up conflicts due to commits that were already committed earlier in
      drivers/block/rbd.c, net/ceph/{messenger.c, osd_client.c}
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (132 commits)
        rbd: create rbd_refresh_helper()
        rbd: return obj version in __rbd_refresh_header()
        rbd: fixes in rbd_header_from_disk()
        rbd: always pass ops array to rbd_req_sync_op()
        rbd: pass null version pointer in add_snap()
        rbd: make rbd_create_rw_ops() return a pointer
        rbd: have __rbd_add_snap_dev() return a pointer
        libceph: recheck con state after allocating incoming message
        libceph: change ceph_con_in_msg_alloc convention to be less weird
        libceph: avoid dropping con mutex before fault
        libceph: verify state after retaking con lock after dispatch
        libceph: revoke mon_client messages on session restart
        libceph: fix handling of immediate socket connect failure
        ceph: update MAINTAINERS file
        libceph: be less chatty about stray replies
        libceph: clear all flags on con_close
        libceph: clean up con flags
        libceph: replace connection state bits with states
        libceph: drop unnecessary CLOSED check in socket state change callback
        libceph: close socket directly from ceph_con_close()
        ...
      cc8362b1
  2. Jul 31, 2012