)]}'
{
  "log": [
    {
      "commit": "3a4ffe930a2d2dad07604fe74d21b878decc6461",
      "tree": "d0374dd4c93c5efc3d46addb36b0ce38e94cc39e",
      "parents": [
        "33cb4f345687a27e3fece0a7fcf78ac2e7b0a7d6"
      ],
      "author": {
        "name": "Lee Jones",
        "email": "lee.jones@linaro.org",
        "time": "Sat Mar 17 09:17:49 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Apr 09 14:54:22 2012 -0700"
      },
      "message": "drivers/base: fix compiler warning in SoC export driver - idr should be ida\n\nThis fixes:\n  note: expected ‘struct ida *’ but argument is of type ‘struct idr *’\n  warning: passing argument 1 of ‘ida_pre_get’ from incompatible pointer type\n\nReported-by: Arnd Bergman \u003carnd@arndb.de\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Lee Jones \u003clee.jones@linaro.org\u003e\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "33cb4f345687a27e3fece0a7fcf78ac2e7b0a7d6",
      "tree": "2f843a196f9745b1bbfbd11eda391013b559345d",
      "parents": [
        "0034102808e0dbbf3a2394b82b1bb40b5778de9e"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Tue Mar 20 16:32:39 2012 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Apr 09 14:54:22 2012 -0700"
      },
      "message": "drivers/base: Remove unneeded spin_lock_init call for soc_lock\n\nsoc_lock is already initialized by DEFINE_SPINLOCK.\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "f4e52e7ffdea791c89494752b175b991090f0920",
      "tree": "5ba632b8127ebc1a71f52102ef59d44c41eeb67b",
      "parents": [
        "a3fac08085136fb8b56bbd290500ed03c94ee5d1",
        "c04c1b9ee8f30c7a3a25e20e406247003f634ebe"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 07 09:56:00 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 07 09:56:00 2012 -0700"
      },
      "message": "Merge tag \u0027regmap-3.4-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nPull two more small regmap fixes from Mark Brown:\n - Now we have users for it that aren\u0027t running Android it turns out\n   that regcache_sync_region() is much more useful to drivers if it\u0027s\n   exported for use by modules.  Who knew?\n - Make sure we don\u0027t divide by zero when doing debugfs dumps of\n   rbtrees, not visible up until now because everything was providing at\n   least some cache on startup.\n\n* tag \u0027regmap-3.4-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:\n  regmap: prevent division by zero in rbtree_show\n  regmap: Export regcache_sync_region()\n"
    },
    {
      "commit": "5d32c88f0b94061b3af2e3ade92422407282eb12",
      "tree": "2e1f81aa47b2cf59625c8fba17199617e33802e6",
      "parents": [
        "43f63c8711ce02226b7bbdafeba7b8031faf3fb4",
        "dac23b0d0513916498d40412818bd2c581b365f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge batch of fixes from Andrew Morton:\n \"The simple_open() cleanup was held back while I wanted for laggards to\n  merge things.\n\n  I still need to send a few checkpoint/restore patches.  I\u0027ve been\n  wobbly about merging them because I\u0027m wobbly about the overall\n  prospects for success of the project.  But after speaking with Pavel\n  at the LSF conference, it sounds like they\u0027re further toward\n  completion than I feared - apparently davem is at the \"has stopped\n  complaining\" stage regarding the net changes.  So I need to go back\n  and re-review those patchs and their (lengthy) discussion.\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (16 patches)\n  memcg swap: use mem_cgroup_uncharge_swap fix\n  backlight: add driver for DA9052/53 PMIC v1\n  C6X: use set_current_blocked() and block_sigmask()\n  MAINTAINERS: add entry for sparse checker\n  MAINTAINERS: fix REMOTEPROC F: typo\n  alpha: use set_current_blocked() and block_sigmask()\n  simple_open: automatically convert to simple_open()\n  scripts/coccinelle/api/simple_open.cocci: semantic patch for simple_open()\n  libfs: add simple_open()\n  hugetlbfs: remove unregister_filesystem() when initializing module\n  drivers/rtc/rtc-88pm860x.c: fix rtc irq enable callback\n  fs/xattr.c:setxattr(): improve handling of allocation failures\n  fs/xattr.c:listxattr(): fall back to vmalloc() if kmalloc() failed\n  fs/xattr.c: suppress page allocation failure warnings from sys_listxattr()\n  sysrq: use SEND_SIG_FORCED instead of force_sig()\n  proc: fix mount -t proc -o AAA\n"
    },
    {
      "commit": "234e340582901211f40d8c732afc49f0630ecf05",
      "tree": "753076500dfd883b3db56d4f5410af31d8945623",
      "parents": [
        "9b3ae64be658a573b33d05a8dc73b08d3345fa44"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Thu Apr 05 14:25:11 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:25:50 2012 -0700"
      },
      "message": "simple_open: automatically convert to simple_open()\n\nMany users of debugfs copy the implementation of default_open() when\nthey want to support a custom read/write function op.  This leads to a\nproliferation of the default_open() implementation across the entire\ntree.\n\nNow that the common implementation has been consolidated into libfs we\ncan replace all the users of this function with simple_open().\n\nThis replacement was done with the following semantic patch:\n\n\u003csmpl\u003e\n@ open @\nidentifier open_f !\u003d simple_open;\nidentifier i, f;\n@@\n-int open_f(struct inode *i, struct file *f)\n-{\n(\n-if (i-\u003ei_private)\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n|\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n)\n-return 0;\n-}\n\n@ has_open depends on open @\nidentifier fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...\n-.open \u003d open_f,\n+.open \u003d simple_open,\n...\n};\n\u003c/smpl\u003e\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Julia Lawall \u003cJulia.Lawall@lip6.fr\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c04c1b9ee8f30c7a3a25e20e406247003f634ebe",
      "tree": "c8f1de34051bce402ee5be5d6dfadc4bc7e47ae1",
      "parents": [
        "e466de05194b666114713b753e2f4be1d4200140"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Apr 04 15:48:33 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Apr 04 23:22:15 2012 +0100"
      },
      "message": "regmap: prevent division by zero in rbtree_show\n\nIf there are no nodes in the cache, nodes will be 0, so calculating\n\"registers / nodes\" will cause division by zero.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "64ebe987311853ea857a244439de5b947a4b1b07",
      "tree": "b33ab6efd7f118e0f6ab5a6bcbd59ba31a313da5",
      "parents": [
        "a5149bf3fed59b94207809704b5d06fec337a771",
        "c4772d192c70b61d52262b0db76f7abd8aeb51c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 04 14:26:40 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 04 14:26:40 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.4-part-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull more power management updates from Rafael Wysocki:\n - Patch series that hopefully fixes races between the freezer and\n   request_firmware() and request_firmware_nowait() for good, with two\n   cleanups from Stephen Boyd on top.\n - Runtime PM fix from Alan Stern preventing tasks from getting stuck\n   indefinitely in the runtime PM wait queue.\n - Device PM QoS update from MyungJoo Ham introducing a new variant of\n   pm_qos_update_request() allowing the callers to specify a timeout.\n\n* tag \u0027pm-for-3.4-part-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  PM / QoS: add pm_qos_update_request_timeout() API\n  firmware_class: Move request_firmware_nowait() to workqueues\n  firmware_class: Reorganize fw_create_instance()\n  PM / Sleep: Mitigate race between the freezer and request_firmware()\n  PM / Sleep: Move disabling of usermode helpers to the freezer\n  PM / Hibernate: Disable usermode helpers right before freezing tasks\n  firmware_class: Do not warn that system is not ready from async loads\n  firmware_class: Split _request_firmware() into three functions, v2\n  firmware_class: Rework usermodehelper check\n  PM / Runtime: don\u0027t forget to wake up waitqueue on failure\n"
    },
    {
      "commit": "e466de05194b666114713b753e2f4be1d4200140",
      "tree": "d744106bb25b94cdc2e819b06483efc5202a5a28",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 03 13:08:53 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 03 13:08:53 2012 +0100"
      },
      "message": "regmap: Export regcache_sync_region()\n\nregcache_sync_region() isn\u0027t going to be useful to most drivers if we\ndon\u0027t export it since otherwise they can\u0027t use it when built modular.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4b4e9e43fd210e0cd2a5d29357e7c000e13e08ae",
      "tree": "fe7d224017c0c6ce72751a16bf9f9b12037b248d",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Fri Mar 23 11:04:57 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Apr 01 11:47:13 2012 +0100"
      },
      "message": "regmap: rbtree: Fix register default look-up in sync\n\nThe code currently passes the register offset in the current block to\nregcache_lookup_reg. This works fine as long as there is only one block and with\nbase register of 0, but in all other cases it will look-up the default for a\nwrong register, which can cause unnecessary register writes. This patch fixes\nit by passing the actual register number to regcache_lookup_reg.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\n"
    },
    {
      "commit": "ed0bb8ea059764c3fc882fb135473afd347335e9",
      "tree": "5274b8335afe85f76d1eb945eb03ffe4040737b4",
      "parents": [
        "47b816ff7d520509176154748713e7d66b3ad6ac",
        "3e0b2a1993c06e646d90d71e163d03869a211a4c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:02:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:02:41 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus-3.4\u0027 of git://git.linaro.org/people/sumitsemwal/linux-dma-buf\n\nPull dma-buf updates from Sumit Semwal:\n \"This includes the following key items:\n\n   - kernel cpu access support,\n   - flag-passing to dma_buf_fd,\n   - relevant Documentation updates, and\n   - some minor cleanups and fixes.\n\n  These changes are needed for the drm prime/dma-buf interface code that\n  Dave Airlie plans to submit in this merge window.\"\n\n* \u0027for-linus-3.4\u0027 of git://git.linaro.org/people/sumitsemwal/linux-dma-buf:\n  dma-buf: correct dummy function declarations.\n  dma-buf: document fd flags and O_CLOEXEC requirement\n  dma_buf: Add documentation for the new cpu access support\n  dma-buf: add support for kernel cpu access\n  dma-buf: don\u0027t hold the mutex around map/unmap calls\n  dma-buf: add get_dma_buf()\n  dma-buf: pass flags into dma_buf_fd.\n  dma-buf: add dma_data_direction to unmap dma_buf_op\n  dma-buf: Move code out of mutex-protected section in dma_buf_attach()\n  dma-buf: Return error instead of using a goto statement when possible\n  dma-buf: Remove unneeded sanity checks\n  dma-buf: Constify ops argument to dma_buf_export()\n"
    },
    {
      "commit": "a36cf844c543c6193445a7b1492d16e5a8cf376e",
      "tree": "7839e51c505a12662ada9affef4cc9da5277b192",
      "parents": [
        "dddb5549da6b15ea8b9ce9ee0859c8d1fa268b5b"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Wed Mar 28 23:31:00 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:31:00 2012 +0200"
      },
      "message": "firmware_class: Move request_firmware_nowait() to workqueues\n\nOddly enough a work_struct was already part of the firmware_work\nstructure but nobody was using it. Instead of creating a new\nkthread for each request_firmware_nowait() call just schedule the\nwork on the system workqueue. This should avoid some overhead\nin forking new threads when they\u0027re not strictly necessary.\n\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "dddb5549da6b15ea8b9ce9ee0859c8d1fa268b5b",
      "tree": "ed085381d5934f8de96d0c63515a586507324466",
      "parents": [
        "247bc03742545fec2f79939a3b9f738392a0f7b4"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Wed Mar 28 23:30:43 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:30:43 2012 +0200"
      },
      "message": "firmware_class: Reorganize fw_create_instance()\n\nRecent patches to split up the three phases of request_firmware()\nlead to a casting away of const in fw_create_instance(). We can\navoid this cast by splitting up fw_create_instance() a bit.\n\nMake _request_firmware_setup() return a struct fw_priv and use\nthat struct instead of passing struct firmware to\n_request_firmware(). Move the uevent and device file creation\nbits to the loading phase and rename the function to\n_request_firmware_load() to better reflect its purpose.\n\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "9b78c1da60b3c62ccdd1509f0902ad19ceaf776b",
      "tree": "1e662bb29f04c2b875207d907db917476ddce60b",
      "parents": [
        "811fa4004485dec8977176bf605a5b0508ee206c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:30:02 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:30:02 2012 +0200"
      },
      "message": "firmware_class: Do not warn that system is not ready from async loads\n\nIf firmware is requested asynchronously, by calling\nrequest_firmware_nowait(), there is no reason to fail the request\n(and warn the user) when the system is (presumably temporarily)\nunready to handle it (because user space is not available yet or\nfrozen).  For this reason, introduce an alternative routine for\nread-locking umhelper_sem, usermodehelper_read_lock_wait(), that\nwill wait for usermodehelper_disabled to be unset (possibly with\na timeout) and make request_firmware_work_func() use it instead of\nusermodehelper_read_trylock().\n\nAccordingly, modify request_firmware() so that it uses\nusermodehelper_read_trylock() to acquire umhelper_sem and remove\nthe code related to that lock from _request_firmware().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "811fa4004485dec8977176bf605a5b0508ee206c",
      "tree": "afa0924a75f217a27f7438e34758747413ba635a",
      "parents": [
        "fe2e39d8782d885755139304d8dba0b3e5bfa878"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:29:55 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:29:55 2012 +0200"
      },
      "message": "firmware_class: Split _request_firmware() into three functions, v2\n\nSplit _request_firmware() into three functions,\n_request_firmware_prepare() doing preparatory work that need not be\ndone under umhelper_sem, _request_firmware_cleanup() doing the\npost-error cleanup and _request_firmware() carrying out the remaining\noperations.\n\nThis change is requisite for moving the acquisition of umhelper_sem\nfrom _request_firmware() to the callers, which is going to be done\nsubsequently.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nReviewed-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "fe2e39d8782d885755139304d8dba0b3e5bfa878",
      "tree": "200fb998fe94b9ccd93d07c59656b8f5ab62c5d7",
      "parents": [
        "9a4768d849d28a79566aa37de19b9852d2da8ec4"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:29:45 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 28 23:29:45 2012 +0200"
      },
      "message": "firmware_class: Rework usermodehelper check\n\nInstead of two functions, read_lock_usermodehelper() and\nusermodehelper_is_disabled(), used in combination, introduce\nusermodehelper_read_trylock() that will only return with umhelper_sem\nheld if usermodehelper_disabled is unset (and will return -EAGAIN\notherwise) and make _request_firmware() use it.\n\nRename read_unlock_usermodehelper() to\nusermodehelper_read_unlock() to follow the naming convention of the\nnew function.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "f2791d733a2f06997b573d1a3cfde21e6f529826",
      "tree": "2af5d3beba35cb4b5a945f148e0a24bbda0ed86f",
      "parents": [
        "e22057c8599373e5caef0bc42bdb95d2a361ab0d"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Mar 26 22:46:52 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 26 22:46:52 2012 +0200"
      },
      "message": "PM / Runtime: don\u0027t forget to wake up waitqueue on failure\n\nThis patch (as1535) fixes a bug in the runtime PM core.  When a\nruntime suspend attempt completes, whether successfully or not, the\ndevice\u0027s power.wait_queue is supposed to be signalled.  But this\ndoesn\u0027t happen in the failure pathway of rpm_suspend() when another\nautosuspend attempt is rescheduled.  As a result, a task can get stuck\nindefinitely on the wait queue (I have seen this happen in testing).\n\nThe patch fixes the problem by moving the wake_up_all() call up near\nthe start of the failure code.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "fc13020e086bfedf2afb95c91c026d5af1f80107",
      "tree": "a06be5c3eff6865a42046b51270e4d60e30609f4",
      "parents": [
        "6b607e3a658fee490bdabfdeb739a3eb498b1bff"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Tue Mar 20 00:02:37 2012 +0100"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 26 11:33:02 2012 +0530"
      },
      "message": "dma-buf: add support for kernel cpu access\n\nBig differences to other contenders in the field (like ion) is\nthat this also supports highmem, so we have to split up the cpu\naccess from the kernel side into a prepare and a kmap step.\n\nPrepare is allowed to fail and should do everything required so that\nthe kmap calls can succeed (like swapin/backing storage allocation,\nflushing, ...).\n\nMore in-depth explanations will follow in the follow-up documentation\npatch.\n\nChanges in v2:\n\n- Clear up begin_cpu_access confusion noticed by Sumit Semwal.\n- Don\u0027t automatically fallback from the _atomic variants to the\n  non-atomic variants. The _atomic callbacks are not allowed to\n  sleep, so we want exporters to make this decision explicit. The\n  function signatures are explicit, so simpler exporters can still\n  use the same function for both.\n- Make the unmap functions optional. Simpler exporters with permanent\n  mappings don\u0027t need to do anything at unmap time.\n\nChanges in v3:\n\n- Adjust the WARN_ON checks for the new -\u003eops functions as suggested\n  by Rob Clark and Sumit Semwal.\n- Rebased on top of latest dma-buf-next git.\n\nChanges in v4:\n\n- Fixup a missing - in a return -EINVAL; statement.\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Rob Clark \u003crob@ti.com\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "6b607e3a658fee490bdabfdeb739a3eb498b1bff",
      "tree": "a10ad6f713586f9dc7584fe54110d1c44f87b1d5",
      "parents": [
        "f9a24d1ac9cb82baf5ec5efdb6580a9ce0bd5bfc"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Mon Mar 19 00:34:25 2012 +0100"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 26 11:32:50 2012 +0530"
      },
      "message": "dma-buf: don\u0027t hold the mutex around map/unmap calls\n\nThe mutex protects the attachment list and hence needs to be held\naround the callbakc to the exporters (optional) attach/detach\nfunctions.\n\nHolding the mutex around the map/unmap calls doesn\u0027t protect any\ndma_buf state. Exporters need to properly protect any of their own\nstate anyway (to protect against calls from their own interfaces).\nSo this only makes the locking messier (and lockdep easier to anger).\n\nTherefore let\u0027s just drop this.\n\nv2: Rebased on top of latest dma-buf-next git.\n\nSigned-off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Rob Clark \u003crob.clark@linaro.org\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "55c1c4ca23d0f2736ef7c219d0fb005323ff8ee0",
      "tree": "52c2ae868121e09df3d77fc998f233549cf8ae34",
      "parents": [
        "33ea2dcb39ba50b0b69d1b1dc24702f084b46411"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri Mar 16 10:34:02 2012 +0000"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 26 11:32:26 2012 +0530"
      },
      "message": "dma-buf: pass flags into dma_buf_fd.\n\nWe need to pass the flags into dma_buf_fd at this point,\nso the flags end up doing the right thing for O_CLOEXEC.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Rob Clark \u003crob@ti.com\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "33ea2dcb39ba50b0b69d1b1dc24702f084b46411",
      "tree": "ec1e1b0c223e09861341f82d2aa0b13ec841be95",
      "parents": [
        "2ed9201bdd9a8e462d768a838fb2bc944c6887a4"
      ],
      "author": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Fri Jan 27 15:09:27 2012 +0530"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 26 11:31:58 2012 +0530"
      },
      "message": "dma-buf: add dma_data_direction to unmap dma_buf_op\n\nSome exporters may use DMA map/unmap APIs in dma-buf ops, which require\nenum dma_data_direction for both map and unmap operations.\n\nThus, the unmap dma_buf_op also needs to have enum dma_data_direction as\na parameter.\n\nReported-by: Tomasz Stanislawski \u003ct.stanislaws@samsung.com\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@ti.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "250f6715a4112d6686670c5a62ceb9305da94616",
      "tree": "ee1c9b41ed1fed8174efb312421902f19c877e8c",
      "parents": [
        "11bcb32848ddb5ab28f09f142b625e2ba4d55c4c",
        "313162d0b83836e2f57e51b9b8650fb4b9c396ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:41:37 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:41:37 2012 -0700"
      },
      "message": "Merge tag \u0027device-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull \u003clinux/device.h\u003e avoidance patches from Paul Gortmaker:\n \"Nearly every subsystem has some kind of header with a proto like:\n\n\tvoid foo(struct device *dev);\n\n  and yet there is no reason for most of these guys to care about the\n  sub fields within the device struct.  This allows us to significantly\n  reduce the scope of headers including headers.  For this instance, a\n  reduction of about 40% is achieved by replacing the include with the\n  simple fact that the device is some kind of a struct.\n\n  Unlike the much larger module.h cleanup, this one is simply two\n  commits.  One to fix the implicit \u003clinux/device.h\u003e users, and then one\n  to delete the device.h includes from the linux/include/ dir wherever\n  possible.\"\n\n* tag \u0027device-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  device.h: audit and cleanup users in main include dir\n  device.h: cleanup users outside of linux/include (C files)\n"
    },
    {
      "commit": "0a329d2d5a1dd75273597538cdc33512ee38855e",
      "tree": "5e4b51863a0b05e8866615e2da1e123173a61220",
      "parents": [
        "307b1cd7ecd7f3dc5ce3d3860957f034f0abe4df"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Mar 23 15:02:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:33 2012 -0700"
      },
      "message": "bitops: remove for_each_set_bit_cont()\n\nRemove for_each_set_bit_cont() after confirming that no one uses\nfor_each_set_bit_cont() anymore.\n\n[sfr@canb.auug.org.au: regmap: cope with bitops API change]\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9586c959bfc917695893bef0102433a7d0675691",
      "tree": "c8b89e40b7a04c3150e50785e7c48b67df360c83",
      "parents": [
        "34699403e9916060af8ae23f5e4705a6c078e79d",
        "addfd8a09e1f434a73b3d87d36ef050c73511d2b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:33:14 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:33:14 2012 -0700"
      },
      "message": "Merge tag \u0027regmap-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nPull regmap updates from Mark Brown:\n \"Things are really quieting down with the regmap API, while we\u0027re still\n  seeing a trickle of new features coming in they\u0027re getting much\n  smaller than they were.  It\u0027s also nice to have some features which\n  support other subsystems building infrastructure on top of regmap.\n  Highlights include:\n\n  - Support for padding between the register and the value when\n    interacting with the device, sometimes needed for fast interfaces.\n  - Support for applying register updates to the device when restoring\n    the register state.  This is intended to be used to apply updates\n    supplied by manufacturers for tuning the performance of the device\n    (many of which are to undocumented registers which aren\u0027t otherwise\n    covered).\n  - Support for multi-register operations on cached registers.\n  - Support for syncing only part of the register cache.\n  - Stubs and parameter query functions intended to make it easier for\n    other subsystems to build infrastructure on top of the regmap API.\n\n  plus a few driver updates making use of the new features which it was\n  easier to merge via this tree.\"\n\n* tag \u0027regmap-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: (41 commits)\n  regmap: Fix future missing prototype of devres_alloc() and friends\n  regmap: Rejig struct declarations for stubbed API\n  regmap: Fix rbtree block base in sync\n  regcache: Make sure we sync register 0 in an rbtree cache\n  regmap: delete unused module.h from drivers/base/regmap files\n  regmap: Add stub for regcache_sync_region()\n  mfd: Improve performance of later WM1811 revisions\n  regmap: Fix x86_64 breakage\n  regmap: Allow drivers to sync only part of the register cache\n  regmap: Supply ranges to the sync operations\n  regmap: Add tracepoints for cache only and cache bypass\n  regmap: Mark the cache as clean after a successful sync\n  regmap: Remove default cache sync implementation\n  regmap: Skip hardware defaults for LZO caches\n  regmap: Expose the driver name in debugfs\n  mfd: wm8400: Convert to devm_regmap_init_i2c()\n  mfd: wm831x: Convert to devm_regmap_init()\n  mfd: wm8994: Convert to devm_regmap_init()\n  mfd/ASoC: Convert WM8994 driver to use regmap patches\n  mfd: Add __devinit and __devexit annotations in wm8994\n  ...\n"
    },
    {
      "commit": "b2094ef840697bc8ca5d17a83b7e30fad5f1e9fa",
      "tree": "64e5f7253b6a85b6d5d36f95c0d3c67c1798918d",
      "parents": [
        "424a6f6ef990b7e9f56f6627bfc6c46b493faeb4",
        "6681bc0deba495fad0d6fb349e40524abd1b1732"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:00:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:00:13 2012 -0700"
      },
      "message": "Merge tag \u0027sound-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound\n\nPull updates of sound stuff from Takashi Iwai:\n \"Here is the first big update chunk of sound stuff for 3.4-rc1.\n\n  In the common sound infrastructure, there are a few changes for\n  dynamic PCM support (used in ASoC) and a few clean-ups.  Majority of\n  changes are found, as usual, in HD-audio and ASoC.\n\n  Some highlights of HD-audio changes:\n\n   - All the long-standing static quirk codes for Realtek codec were\n     finally removed by fixing and extending the Realtek auto-parser.\n\n   - The mute-LED control is standardized over all HD-audio codec\n     drivers using the extended vmaster hook.\n\n   - The vmaster slave mixer elements are initialized to 0dB as default\n     so that the user won\u0027t be annoyed by the silent output after\n     updates, e.g.  due to the additions of new elements.\n\n   - Other many fix-ups for the misc HD-audio devices.\n\n  In the ASoC side, this is a very active release, including a quite a\n  few framework enhancements.  Some highlights:\n\n   - Support for widgets not associated with a CODEC, an important part\n     of the dynamic PCM framework.\n\n   - A library factoring out the common code shared by dmaengine based\n     DMA drivers contributed by Lars-Peter Clausen.  This will save a\n     lot of code and make it much easier to deploy enhancements to\n     dmaengine.\n\n   - Support for binary controls, used for providing runtime\n     configuration of algorithm coefficients.\n\n   - A new DAPM widget type for regulator supplies allowing drivers for\n     devices that can power down unused supplies while active to do\n     without any per-driver code.\n\n   - DAPM widgets for DAIs, initially giving a speed boost for playback\n     startup and shutdown and also the basis for CODEC\u003c-\u003eCODEC DAI link\n     support.\n\n   - Support for specifying the number of significant bits on audio\n     interfaces, useful for allowing applications to know how much\n     effort to put into generating data for a larger sample format.\n\n   - Conversion of the FSI driver used on some SH processors to\n     DMAEngine.\n\n   - Conversion of EP93xx drivers to DMAEngine.\n\n   - New CODEC drivers for Maxim MAX9768 and Wolfson Microelectronics\n     WM2200.\n\n   - Move audmux driver from arc/arm to sound/soc\n\n   - McBSP move from arch/ to sound/ and updates\n\n  Also, a few small updates and fixes for other drivers like au88x0,\n  ymfpci, USB 6fire, USB usx2yaudio are included.\"\n\n* tag \u0027sound-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (446 commits)\n  ASoC: wm8994: Provide VMID mode control and fix default sequence\n  ASoC: wm8994: Add missing break in resume\n  ASoC: wm_hubs: Don\u0027t actively manage LINEOUT_VMID_BUF\n  ASoC: pxa-ssp: atomically set stream active masks\n  ASoC: fsl: p1022ds: tell the WM8776 codec driver that it\u0027s the master\n  ASoC: Samsung: Added to support mono recording\n  ALSA: hda - Fix build with CONFIG_PM\u003dn\n  ALSA: au88x0 - Avoid possible Oops at unbinding\n  ALSA: usb-audio - Fix build error by consitification of rate list\n  ASoC: core: Fix obscure leak of runtime array\n  ALSA: pcm - Avoid GFP_ATOMIC in snd_pcm_link()\n  ALSA: pcm: Constify the list in snd_pcm_hw_constraint_list\n  ASoC: wm8996: Add 44.1kHz support\n  ALSA: hda - Fix build of patch_sigmatel.c without CONFIG_SND_HDA_POWER_SAVE\n  ASoC: mx27vis-aic32x4: Convert it to platform driver\n  ALSA: hda - fix printing of high HDMI sample rates\n  ALSA: ymfpci - Fix legacy registers on S3/S4 resume\n  ALSA: control - Fixe a trailing white space error\n  ALSA: hda - Add expose_enum_ctl flag to snd_hda_add_vmaster_hook()\n  ALSA: hda - Add \"Mute-LED Mode\" enum control\n  ...\n"
    },
    {
      "commit": "754b9800779402924fffe456b49d557e15260cbf",
      "tree": "0e0441eca766616fccd8fc37a3885397efc6063a",
      "parents": [
        "35cb8d9e18c0bb33b90d7e574abadbe23b65427d",
        "ea281a9ebaba3287130dbe15bb0aad6f798bb06b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:42:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:42:04 2012 -0700"
      },
      "message": "Merge branch \u0027x86-mce-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull MCE changes from Ingo Molnar.\n\n* \u0027x86-mce-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/mce: Fix return value of mce_chrdev_read() when erst is disabled\n  x86/mce: Convert static array of pointers to per-cpu variables\n  x86/mce: Replace hard coded hex constants with symbolic defines\n  x86/mce: Recognise machine check bank signature for data path error\n  x86/mce: Handle \"action required\" errors\n  x86/mce: Add mechanism to safely save information in MCE handler\n  x86/mce: Create helper function to save addr/misc when needed\n  HWPOISON: Add code to handle \"action required\" errors.\n  HWPOISON: Clean up memory_failure() vs. __memory_failure()\n"
    },
    {
      "commit": "5375871d432ae9fc581014ac117b96aaee3cd0c7",
      "tree": "be98e8255b0f927fb920fb532a598b93fa140dbe",
      "parents": [
        "b57cb7231b2ce52d3dda14a7b417ae125fb2eb97",
        "dfbc2d75c1bd47c3186fa91f1655ea2f3825b0ec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:55:10 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:55:10 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\nPull powerpc merge from Benjamin Herrenschmidt:\n \"Here\u0027s the powerpc batch for this merge window.  It is going to be a\n  bit more nasty than usual as in touching things outside of\n  arch/powerpc mostly due to the big iSeriesectomy :-) We finally got\n  rid of the bugger (legacy iSeries support) which was a PITA to\n  maintain and that nobody really used anymore.\n\n  Here are some of the highlights:\n\n   - Legacy iSeries is gone.  Thanks Stephen ! There\u0027s still some bits\n     and pieces remaining if you do a grep -ir series arch/powerpc but\n     they are harmless and will be removed in the next few weeks\n     hopefully.\n\n   - The \u0027fadump\u0027 functionality (Firmware Assisted Dump) replaces the\n     previous (equivalent) \"pHyp assisted dump\"...  it\u0027s a rewrite of a\n     mechanism to get the hypervisor to do crash dumps on pSeries, the\n     new implementation hopefully being much more reliable.  Thanks\n     Mahesh Salgaonkar.\n\n   - The \"EEH\" code (pSeries PCI error handling \u0026 recovery) got a big\n     spring cleaning, motivated by the need to be able to implement a\n     new backend for it on top of some new different type of firwmare.\n\n     The work isn\u0027t complete yet, but a good chunk of the cleanups is\n     there.  Note that this adds a field to struct device_node which is\n     not very nice and which Grant objects to.  I will have a patch soon\n     that moves that to a powerpc private data structure (hopefully\n     before rc1) and we\u0027ll improve things further later on (hopefully\n     getting rid of the need for that pointer completely).  Thanks Gavin\n     Shan.\n\n   - I dug into our exception \u0026 interrupt handling code to improve the\n     way we do lazy interrupt handling (and make it work properly with\n     \"edge\" triggered interrupt sources), and while at it found \u0026 fixed\n     a wagon of issues in those areas, including adding support for page\n     fault retry \u0026 fatal signals on page faults.\n\n   - Your usual random batch of small fixes \u0026 updates, including a bunch\n     of new embedded boards, both Freescale and APM based ones, etc...\"\n\nI fixed up some conflicts with the generalized irq-domain changes from\nGrant Likely, hopefully correctly.\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (141 commits)\n  powerpc/ps3: Do not adjust the wrapper load address\n  powerpc: Remove the rest of the legacy iSeries include files\n  powerpc: Remove the remaining CONFIG_PPC_ISERIES pieces\n  init: Remove CONFIG_PPC_ISERIES\n  powerpc: Remove FW_FEATURE ISERIES from arch code\n  tty/hvc_vio: FW_FEATURE_ISERIES is no longer selectable\n  powerpc/spufs: Fix double unlocks\n  powerpc/5200: convert mpc5200 to use of_platform_populate()\n  powerpc/mpc5200: add options to mpc5200_defconfig\n  powerpc/mpc52xx: add a4m072 board support\n  powerpc/mpc5200: update mpc5200_defconfig to fit for charon board\n  Documentation/powerpc/mpc52xx.txt: Checkpatch cleanup\n  powerpc/44x: Add additional device support for APM821xx SoC and Bluestone board\n  powerpc/44x: Add support PCI-E for APM821xx SoC and Bluestone board\n  MAINTAINERS: Update PowerPC 4xx tree\n  powerpc/44x: The bug fixed support for APM821xx SoC and Bluestone board\n  powerpc: document the FSL MPIC message register binding\n  powerpc: add support for MPIC message register API\n  powerpc/fsl: Added aliased MSIIR register address to MSI node in dts\n  powerpc/85xx: mpc8548cds - add 36-bit dts\n  ...\n"
    },
    {
      "commit": "f8974cb71310a05632aada76be6a27576d61e609",
      "tree": "c0b6f59333796c95aa2de9a2eb755e9b68599b71",
      "parents": [
        "c207f3a43194e108dda43dc9a1ce507335cff6b9",
        "0f22dd395fc473cee252b9af50249b8e0f32fde7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:30:03 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:30:03 2012 -0700"
      },
      "message": "Merge tag \u0027dt-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull core device tree changes for Linux v3.4 from Grant Likely:\n \"This branch contains a minor documentation addition, a utility\n  function for parsing string properties needed by some of the new ARM\n  platforms, disables dynamic DT code that isn\u0027t used anywhere but on a\n  few PPC machines, and exports DT node compatible data to userspace via\n  UEVENT properties.  Nothing earth shattering here.\"\n\n* tag \u0027dt-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  of: Only compile OF_DYNAMIC on PowerPC pseries and iseries\n  arm/dts: OMAP3: Add omap3evm and am335xevm support\n  drivercore: Output common devicetree information in uevent\n  of: Add of_property_match_string() to find index into a string list\n"
    },
    {
      "commit": "c7c66c0cb0c77b1a8edf09bca57d922312d58030",
      "tree": "77277103c5f16aa4dee64978a060933d92e14776",
      "parents": [
        "9f3938346a5c1fa504647670edb5fea5756cfb00",
        "98e8bdafeb4728a6af7bbcbcc3984967d1cf2bc1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:15:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 10:15:51 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management updates for 3.4 from Rafael Wysocki:\n \"Assorted extensions and fixes including:\n\n  * Introduction of early/late suspend/hibernation device callbacks.\n  * Generic PM domains extensions and fixes.\n  * devfreq updates from Axel Lin and MyungJoo Ham.\n  * Device PM QoS updates.\n  * Fixes of concurrency problems with wakeup sources.\n  * System suspend and hibernation fixes.\"\n\n* tag \u0027pm-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (43 commits)\n  PM / Domains: Check domain status during hibernation restore of devices\n  PM / devfreq: add relation of recommended frequency.\n  PM / shmobile: Make MTU2 driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()\n  PM / Domains: Introduce \"always on\" device flag\n  PM / Domains: Fix hibernation restore of devices, v2\n  PM / Domains: Fix handling of wakeup devices during system resume\n  sh_mmcif / PM: Use PM QoS latency constraint\n  tmio_mmc / PM: Use PM QoS latency constraint\n  PM / QoS: Make it possible to expose PM QoS latency constraints\n  PM / Sleep: JBD and JBD2 missing set_freezable()\n  PM / Domains: Fix include for PM_GENERIC_DOMAINS\u003dn case\n  PM / Freezer: Remove references to TIF_FREEZE in comments\n  PM / Sleep: Add more wakeup source initialization routines\n  PM / Hibernate: Enable usermodehelpers in hibernate() error path\n  PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n  PM / Sleep: Fix race conditions related to wakeup source timer function\n  PM / Sleep: Fix possible infinite loop during wakeup source destruction\n  PM / Hibernate: print physical addresses consistently with other parts of kernel\n  ...\n"
    },
    {
      "commit": "2ed9201bdd9a8e462d768a838fb2bc944c6887a4",
      "tree": "b205a540211ba7461c82c641c0131e39b11818e3",
      "parents": [
        "a9fbc3b73127efba9276e172daa8d122f0fac1a8"
      ],
      "author": {
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com",
        "time": "Thu Jan 26 12:27:25 2012 +0100"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 19 15:42:15 2012 +0530"
      },
      "message": "dma-buf: Move code out of mutex-protected section in dma_buf_attach()\n\nSome fields can be set without mutex protection. Initialize them before\nlocking the mutex.\n\nSigned-off-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "a9fbc3b73127efba9276e172daa8d122f0fac1a8",
      "tree": "09eb3b471a631217de8c533293571c2d7968981d",
      "parents": [
        "d1aa06a1eaf5f751c9913703031d611599d8d3d7"
      ],
      "author": {
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com",
        "time": "Thu Jan 26 12:27:24 2012 +0100"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 19 15:42:15 2012 +0530"
      },
      "message": "dma-buf: Return error instead of using a goto statement when possible\n\nRemove an error label in dma_buf_attach() that just returns an error\ncode.\n\nSigned-off-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "d1aa06a1eaf5f751c9913703031d611599d8d3d7",
      "tree": "dce298d9d1f7bdb95e8c259c3e304f9322c5d31a",
      "parents": [
        "5375764f9408b8ef1fb8d6cd1ed0efd97dce4824"
      ],
      "author": {
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com",
        "time": "Thu Jan 26 12:27:23 2012 +0100"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 19 15:42:15 2012 +0530"
      },
      "message": "dma-buf: Remove unneeded sanity checks\n\nops, ops-\u003emap_dma_buf and ops-\u003eunmap_dma_buf are guaranteed to be\nnon-NULL by a check in dma_buf_export(). Remove NULL checks on those\nvariables in the other API functions.\n\nSigned-off-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "5375764f9408b8ef1fb8d6cd1ed0efd97dce4824",
      "tree": "05a88e01997b609418de73d53e9f6fbf06add73e",
      "parents": [
        "c16fa4f2ad19908a47c63d8fa436a1178438c7e7"
      ],
      "author": {
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com",
        "time": "Thu Jan 26 12:27:22 2012 +0100"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@ti.com",
        "time": "Mon Mar 19 15:42:14 2012 +0530"
      },
      "message": "dma-buf: Constify ops argument to dma_buf_export()\n\nThis allows drivers to make the dma buf operations structure constant.\n\nSigned-off-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "98e8bdafeb4728a6af7bbcbcc3984967d1cf2bc1",
      "tree": "8c8df356d14b88998d20a32b5fee225c958cd95a",
      "parents": [
        "0f0cc1687d7e41ac59e4eaf057aa2fb9e48a9dd3",
        "18dd2ece3cde14cfd42e95a89eb14016699a5f15"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:39:04 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:39:04 2012 +0100"
      },
      "message": "Merge branch \u0027pm-domains\u0027\n\n* pm-domains:\n  PM / Domains: Check domain status during hibernation restore of devices\n"
    },
    {
      "commit": "18dd2ece3cde14cfd42e95a89eb14016699a5f15",
      "tree": "1897c7ac0337254058e4bfc7709bb8b19996da24",
      "parents": [
        "57d13370cfaf6017c68981e66ff5b3bf20a2705c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:38:14 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 19 10:38:14 2012 +0100"
      },
      "message": "PM / Domains: Check domain status during hibernation restore of devices\n\nPower domains that were off before hibernation shouldn\u0027t be turned on\nduring device restore, so prevent that from happening.\n\nThis change fixes up commit 65533bbf63b4f37723fdfedc73d0653958973323\n\n    PM / Domains: Fix hibernation restore of devices, v2\n\nthat didn\u0027t include it by mistake.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "62dc7c02c31c2cc66c46cc8761d421c60bb07a6f",
      "tree": "73068d760963dc8e154a4e54025e41a529c67b83",
      "parents": [
        "cf3bbcaf09cb158590d1a9e0c0a6796d4fe92452",
        "57d13370cfaf6017c68981e66ff5b3bf20a2705c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:50:08 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:50:08 2012 +0100"
      },
      "message": "Merge branch \u0027pm-domains\u0027\n\n* pm-domains:\n  PM / shmobile: Make MTU2 driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()\n  PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()\n  PM / Domains: Introduce \"always on\" device flag\n  PM / Domains: Fix hibernation restore of devices, v2\n  PM / Domains: Fix handling of wakeup devices during system resume\n"
    },
    {
      "commit": "59fb53ea75eef4aa029cf31c88cdacec2f7b794b",
      "tree": "fb2ee7f8e99a72fe858e76ba7f2dbbc0390f3128",
      "parents": [
        "ed819e3b964bba8bfae8e65d4d55a3f345f8da16",
        "efe6a8ad7fc55b350ce968cae4c757d35e986285"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:49:24 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:49:24 2012 +0100"
      },
      "message": "Merge branch \u0027pm-qos\u0027\n\n* pm-qos:\n  sh_mmcif / PM: Use PM QoS latency constraint\n  tmio_mmc / PM: Use PM QoS latency constraint\n  PM / QoS: Make it possible to expose PM QoS latency constraints\n"
    },
    {
      "commit": "1e78a0c7fc92aee076965d516cf54475c39e9894",
      "tree": "a1a47b1adee44700480ff35d3f85a5ae8fdae390",
      "parents": [
        "65533bbf63b4f37723fdfedc73d0653958973323"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:39:48 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:44:59 2012 +0100"
      },
      "message": "PM / Domains: Introduce \"always on\" device flag\n\nThe TMU device on the Mackerel board belongs to the A4R power domain\nand loses power when the domain is turned off.  Unfortunately, the\nTMU driver is not prepared to cope with such situations and crashes\nthe system when that happens.  To work around this problem introduce\na new helper function, pm_genpd_dev_always_on(), allowing a device\ndriver to mark its device as \"always on\" in case it belongs to a PM\ndomain, which will make the generic PM domains core code avoid\npowering off the domain containing the device, both at run time and\nduring system suspend.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nTested-by: Simon Horman \u003chorms@verge.net.au\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "65533bbf63b4f37723fdfedc73d0653958973323",
      "tree": "e2a16b9b0966ae6aea1970fe377c70796a281c31",
      "parents": [
        "cc85b20780562d404e18a47b9b55b4a5102ae53e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:39:37 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:44:48 2012 +0100"
      },
      "message": "PM / Domains: Fix hibernation restore of devices, v2\n\nDuring resume from hibernation pm_genpd_restore_noirq() should only\npower off domains whose suspend_power_off flags are set once and\nnot every time it is called for a device in the given domain.\nMoreover, it shouldn\u0027t decrement genpd-\u003esuspended_count, because\nthat field is not touched during device freezing and therefore it is\nalways equal to 0 when pm_genpd_restore_noirq() runs for the first\ndevice in the given domain.\n\nThis means pm_genpd_restore_noirq() may use genpd-\u003esuspended_count\nto determine whether or not it it has been called for the domain in\nquestion already in this cycle (it only needs to increment that\nfield every time it runs for this purpose) and whether or not it\nshould check if the domain needs to be powered off.  For that to\nwork, though, pm_genpd_prepare() has to clear genpd-\u003esuspended_count\nwhen it runs for the first device in the given domain (in which case\nthat flag need not be cleared during domain initialization).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "cc85b20780562d404e18a47b9b55b4a5102ae53e",
      "tree": "e7d481ea6f435e90c59cda9433fd68d944070c19",
      "parents": [
        "b642631d38c28fefd1232a6b96713eb54b60130d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:39:31 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 16 21:44:41 2012 +0100"
      },
      "message": "PM / Domains: Fix handling of wakeup devices during system resume\n\nDuring system suspend pm_genpd_suspend_noirq() checks if the given\ndevice is in a wakeup path (i.e. it appears to be needed for one or\nmore wakeup devices to work or is a wakeup device itself) and if it\nneeds to be \"active\" for wakeup to work.  If that is the case, the\nfunction returns 0 without incrementing the device domain\u0027s counter\nof suspended devices and without executing genpd_stop_dev() for the\ndevice.  In consequence, the device is not stopped (e.g. its clock\nisn\u0027t disabled) and power is always supplied to its domain in the\nresulting system sleep state.\n\nHowever, pm_genpd_resume_noirq() doesn\u0027t repeat that check and it\nruns genpd_start_dev() and decrements the domain\u0027s counter of\nsuspended devices even for the wakeup device that weren\u0027t stopped by\npm_genpd_suspend_noirq().  As a result, the start callback may be run\nunnecessarily for them and their domains\u0027 counters of suspended\ndevices may become negative.  Both outcomes aren\u0027t desirable, so fix\npm_genpd_resume_noirq() to look for wakeup devices that might not be\nstopped by during system suspend.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nTested-by: Simon Horman \u003chorms@verge.net.au\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "addfd8a09e1f434a73b3d87d36ef050c73511d2b",
      "tree": "22dd5a1f108dcd123797dbe9f5aa45e8d3faa492",
      "parents": [
        "eae4b51b21f7452b0b53a9848f48c02cb0fac336",
        "df00c79f78d8b0ad788daf689ea461ace9d0811f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:48 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:48 2012 +0000"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/bulk\u0027 into regmap-next\n"
    },
    {
      "commit": "eae4b51b21f7452b0b53a9848f48c02cb0fac336",
      "tree": "20d54023bf32e061866c83565d44d694e2598ba5",
      "parents": [
        "4a6be7bb7474500a69f6d8f25899b8038491bdbb",
        "a6539c32949063c8147905512a83a98842c2d254"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:03 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:03 2012 +0000"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/introspection\u0027 into regmap-next\n\nSimple add/add conflict:\n\tdrivers/base/regmap/regmap.c\n"
    },
    {
      "commit": "4a6be7bb7474500a69f6d8f25899b8038491bdbb",
      "tree": "a2645b0f707fcf1ea94a9e7ef7a59b298fb5ecac",
      "parents": [
        "7d9aca39dcacd2b3f42e2e287162329f410f93e1",
        "f9353e70bcebd00cd182d946083afd7d8eddd259"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:14:24 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:14:24 2012 +0000"
      },
      "message": "Merge remote-tracking branches \u0027regmap/topic/patch\u0027 and \u0027regmap/topic/sync\u0027 into regmap-next\n"
    },
    {
      "commit": "7d9aca39dcacd2b3f42e2e287162329f410f93e1",
      "tree": "2907b680b2b7625226f46d23d74ccc9c58ad0362",
      "parents": [
        "e1c1c69c8fc7656c33460c8e085ac0d0be22ac3b",
        "a0cc0209abb9fe2b9ab71aa41be70eddd0cbdd61"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:13:25 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:13:25 2012 +0000"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/drivers\u0027 into regmap-next\n\nResolved simple add/add conflicts:\n\tdrivers/base/regmap/internal.h\n\tdrivers/base/regmap/regmap.c\n"
    },
    {
      "commit": "e1c1c69c8fc7656c33460c8e085ac0d0be22ac3b",
      "tree": "3199753118adf26baf52841cb913afa77f549829",
      "parents": [
        "f5d6eba74b8aac7d4bf646c5445807aa6a247e6c",
        "c0eb46766d395da8d62148bda2e59bad5e6ee2f2"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:12:33 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:12:33 2012 +0000"
      },
      "message": "Merge remote-tracking branches \u0027regmap/topic/core\u0027 and \u0027regmap/topic/devm\u0027 into regmap-next\n"
    },
    {
      "commit": "cd593accdcc27ccbe6498d9ad1c2b6cc8e1d830d",
      "tree": "9424d3ac86e753706cc6c3d7e6072d2a73711e29",
      "parents": [
        "11b91d6fe7272452c999573bab33c15c2f03dc31",
        "fde7d9049e55ab85a390be7f415d74c9f62dd0f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 14 07:44:11 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 14 07:44:11 2012 +0100"
      },
      "message": "Merge tag \u0027v3.3-rc7\u0027 into x86/mce\n\nMerge reason: Update from an ancient -rc1 base to an almost-final stable kernel.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "85dc0b8a4019e38ad4fd0c008f89a5c241805ac2",
      "tree": "a73c5864d8ce4a6845e616ade7b8107e181279b6",
      "parents": [
        "a9b542ee607a8afafa9447292394959fc84ea650"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 01:01:39 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 13 22:37:14 2012 +0100"
      },
      "message": "PM / QoS: Make it possible to expose PM QoS latency constraints\n\nA runtime suspend of a device (e.g. an MMC controller) belonging to\na power domain or, in a more complicated scenario, a runtime suspend\nof another device in the same power domain, may cause power to be\nremoved from the entire domain.  In that case, the amount of time\nnecessary to runtime-resume the given device (e.g. the MMC\ncontroller) is often substantially greater than the time needed to\nrun its driver\u0027s runtime resume callback.  That may hurt performance\nin some situations, because user data may need to wait for the\ndevice to become operational, so we should make it possible to\nprevent that from happening.\n\nFor this reason, introduce a new sysfs attribute for devices,\npower/pm_qos_resume_latency_us, allowing user space to specify the\nupper bound of the time necessary to bring the (runtime-suspended)\ndevice up after the resume of it has been requested.  However, make\nthat attribute appear only for the devices whose drivers declare\nsupport for it by calling the (new) dev_pm_qos_expose_latency_limit()\nhelper function with the appropriate initial value of the attribute.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReviewed-by: Kevin Hilman \u003ckhilman@ti.com\u003e\nReviewed-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "51990e825431089747f8896244b5c17d3a6423f1",
      "tree": "5c1ef975ab55734a45444b629855a51f09775b93",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Jan 22 11:23:42 2012 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Mar 11 14:27:37 2012 -0400"
      },
      "message": "device.h: cleanup users outside of linux/include (C files)\n\nFor files that are actively using linux/device.h, make sure\nthat they call it out.  This will allow us to clean up some\nof the implicit uses of linux/device.h within include/*\nwithout introducing build regressions.\n\nYes, this was created by \"cheating\" -- i.e. the headers were\ncleaned up, and then the fallout was found and fixed, and then\nthe two commits were reordered.  This ensures we don\u0027t introduce\nbuild regressions into the git history.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "f5d6eba74b8aac7d4bf646c5445807aa6a247e6c",
      "tree": "8fe6aafeca1e69ce782eaf9fe71a20fdc5bb9d92",
      "parents": [
        "b83d2ff01376cf3799394693c0dd089f657bdf84"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@wwwdotorg.org",
        "time": "Fri Mar 09 13:17:28 2012 -0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Mar 11 12:52:44 2012 +0000"
      },
      "message": "regmap: Fix future missing prototype of devres_alloc() and friends\n\n[Fix for breakage which will be introduced during the merge window via\nheader reworks in another tree, the regmap tree does include device.h\nbut Paul\u0027s tree breaks that.  Reworded subject to reflect -- broonie]\n\nregmap.s uses devres_alloc() and others that are prototyped in device.h.\nInclude that to solve the following:\n\ndrivers/base/regmap/regmap.c: In function \u0027devm_regmap_init\u0027:\ndrivers/base/regmap/regmap.c:331:2: error: implicit declaration of function \u0027devres_alloc\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/base/regmap/regmap.c:338:3: error: implicit declaration of function \u0027devres_add\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/base/regmap/regmap.c:340:3: error: implicit declaration of function \u0027devres_free\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/base/regmap/regmap.c: In function \u0027_regmap_raw_write\u0027:\ndrivers/base/regmap/regmap.c:421:5: error: implicit declaration of function \u0027dev_err\u0027 [-Werror\u003dimplicit-function-declaration]\n\nSigned-off-by: Stephen Warren \u003cswarren@wwwdotorg.org\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "263a5c8e16c34199ddf6de3f102e789ffa3ee26e",
      "tree": "4f049e339d522b2ab0ba3bed3ec217e4bbc83d35",
      "parents": [
        "54d20f006ceff1f2f1e69d0e54049b6c0765c039",
        "192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Mar 09 12:35:53 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Mar 09 12:35:53 2012 -0800"
      },
      "message": "Merge 3.3-rc6 into driver-core-next\n\nThis was done to resolve a conflict in the drivers/base/cpu.c file.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "fcd6f76202024763f2f4a348ab666240e4f7ac50",
      "tree": "823ab929d28b382d858262e791bf763fe4e2f237",
      "parents": [
        "c17a9d4c8495c3a8e724cc846240c46f660a726c"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Wed Mar 07 18:41:09 2012 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri Mar 09 10:35:21 2012 +1100"
      },
      "message": "driver-core: remove legacy iSeries hack\n\nThe PowerPC legacy iSeries plateform is being removed along with the\n\"one looney iseries driver\", so this code can now be removed as well.\n\ncc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "8b0372a258e6bd0e9e5ea3f3d5f05a6bf3972fee",
      "tree": "eb24995d9e5cc202f8dfc6b4bd15238d73904297",
      "parents": [
        "ef8a3fd6e5e12e8989dae97ba5491c2e39369af9"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:20:37 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:20:37 2012 -0800"
      },
      "message": "driver core: minor comment formatting cleanups\n\nCame in in the deferred probe patch, quick, clean them up before a\nkernel janitor finds them and sends me 4 individual patches to fix them\nup...\n\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "ef8a3fd6e5e12e8989dae97ba5491c2e39369af9",
      "tree": "f7833cd19e036141d26bd3f3732cd4de7752a161",
      "parents": [
        "d1c3414c2a9d10ef7f0f7665f5d2947cd088c093"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:17:22 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 12:17:22 2012 -0800"
      },
      "message": "driver core: move the deferred probe pointer into the private area\n\nNothing outside of the driver core needs to get to the deferred probe\npointer, so move it inside the private area of \u0027struct device\u0027 so no one\ntries to mess around with it.\n\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "d1c3414c2a9d10ef7f0f7665f5d2947cd088c093",
      "tree": "bd33518d50f23adc2e55e7b4c99b6b1753a41a03",
      "parents": [
        "fef37e9a47b9927ce2817fe1a0fa8cf40f6eefb6"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Mar 05 08:47:41 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Mar 08 11:53:13 2012 -0800"
      },
      "message": "drivercore: Add driver probe deferral mechanism\n\nAllow drivers to report at probe time that they cannot get all the resources\nrequired by the device, and should be retried at a later time.\n\nThis should completely solve the problem of getting devices\ninitialized in the right order.  Right now this is mostly handled by\nmucking about with initcall ordering which is a complete hack, and\ndoesn\u0027t even remotely handle the case where device drivers are in\nmodules.  This approach completely sidesteps the issues by allowing\ndriver registration to occur in any order, and any driver can request\nto be retried after a few more other drivers get probed.\n\nv4: - Integrate Manjunath\u0027s addition of a separate workqueue\n    - Change -EAGAIN to -EPROBE_DEFER for drivers to trigger deferral\n    - Update comment blocks to reflect how the code really works\nv3: - Hold off workqueue scheduling until late_initcall so that the bulk\n      of driver probes are complete before we start retrying deferred devices.\n    - Tested with simple use cases.  Still needs more testing though.\n      Using it to get rid of the gpio early_initcall madness, or to replace\n      the ASoC internal probe deferral code would be ideal.\nv2: - added locking so it should no longer be utterly broken in that regard\n    - remove device from deferred list at device_del time.\n    - Still completely untested with any real use case, but has been\n      boot tested.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Dilan Lee \u003cdilee@nvidia.com\u003e\nCc: Manjunath GKondaiah \u003cmanjunath.gkondaiah@linaro.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Tony Lindgren \u003ctony@atomide.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nReviewed-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: David Daney \u003cdavid.daney@cavium.com\u003e\nReviewed-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "f9353e70bcebd00cd182d946083afd7d8eddd259",
      "tree": "a13460f9e9e88796067c24f0853c8a386413f022",
      "parents": [
        "a0941e562e8008804f9fe4400315ceb164752fac"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:28:49 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:49:24 2012 +0000"
      },
      "message": "regmap: Fix rbtree block base in sync\n\nOtherwise we\u0027ll end up running with bogus register numbers.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "994f5db65ef4b83db0321842bd43c6bc0a51f000",
      "tree": "633121617abdf0799462b87ed19dd4cc7b2f2f56",
      "parents": [
        "19694b5ea1d3a723dafe9544b5ee9a935414dc28"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:31:39 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:48:50 2012 +0000"
      },
      "message": "regcache: Make sure we sync register 0 in an rbtree cache\n\nMost of the current users have register 0 as a volatile register or don\u0027t\nhave a register 0 so it\u0027s not been apparent that it\u0027s not getting synced.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "48ed00031681c373ff81e78fd248710fe4cddda0",
      "tree": "dd90809d6017924ee528114a4205ab8cfd8422af",
      "parents": [
        "643161ace2a7624fd0106ede12ae43bcbbfc1de0",
        "b642631d38c28fefd1232a6b96713eb54b60130d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:20 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:20 2012 +0100"
      },
      "message": "Merge branch \u0027pm-domains\u0027\n\n* pm-domains:\n  PM / Domains: Fix include for PM_GENERIC_DOMAINS\u003dn case\n  PM / Domains: Provide a dummy dev_gpd_data() when generic domains are not used\n  PM / Domains: Run late/early device suspend callbacks at the right time\n  ARM: EXYNOS: Hook up power domains to generic power domain infrastructure\n  PM / Domains: Add OF support\n"
    },
    {
      "commit": "643161ace2a7624fd0106ede12ae43bcbbfc1de0",
      "tree": "56fb5d4af5c5e46da8cfe3c613a84f1402a60d41",
      "parents": [
        "743c5bc210f45b728a246da65fd1a3160566d34d",
        "37f08be11be9a7d9351fb1b9b408259519a126f3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:14 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:11:14 2012 +0100"
      },
      "message": "Merge branch \u0027pm-sleep\u0027\n\n* pm-sleep:\n  PM / Freezer: Remove references to TIF_FREEZE in comments\n  PM / Sleep: Add more wakeup source initialization routines\n  PM / Hibernate: Enable usermodehelpers in hibernate() error path\n  PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n  PM / Sleep: Fix race conditions related to wakeup source timer function\n  PM / Sleep: Fix possible infinite loop during wakeup source destruction\n  PM / Hibernate: print physical addresses consistently with other parts of kernel\n  PM: Add comment describing relationships between PM callbacks to pm.h\n  PM / Sleep: Drop suspend_stats_update()\n  PM / Sleep: Make enter_state() in kernel/power/suspend.c static\n  PM / Sleep: Unify kerneldoc comments in kernel/power/suspend.c\n  PM / Sleep: Remove unnecessary label from suspend_freeze_processes()\n  PM / Sleep: Do not check wakeup too often in try_to_freeze_tasks()\n  PM / Sleep: Initialize wakeup source locks in wakeup_source_add()\n  PM / Hibernate: Refactor and simplify freezer_test_done\n  PM / Hibernate: Thaw kernel threads in hibernation_snapshot() in error/test path\n  PM / Freezer / Docs: Document the beauty of freeze/thaw semantics\n  PM / Suspend: Avoid code duplication in suspend statistics update\n  PM / Sleep: Introduce generic callbacks for new device PM phases\n  PM / Sleep: Introduce \"late suspend\" and \"early resume\" of devices\n"
    },
    {
      "commit": "8671bbc1bd0442ef0eab27f7d56216431c490820",
      "tree": "23bc127d43be672ab82b9602e21825522d62a28a",
      "parents": [
        "05b4877f6a4f1ba4952d1222213d262bf8c132b7"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Feb 21 23:47:56 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:46 2012 +0100"
      },
      "message": "PM / Sleep: Add more wakeup source initialization routines\n\nThe existing wakeup source initialization routines are not\nparticularly useful for wakeup sources that aren\u0027t created by\nwakeup_source_create(), because their users have to open code\nfilling the objects with zeros and setting their names.  For this\nreason, introduce routines that can be used for initializing, for\nexample, static wakeup source objects.\n\nRequested-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4782e1654bdbd30cf307da090b3c4f70157477cb",
      "tree": "72305fb2e3fff719330f5302dda785c044e25575",
      "parents": [
        "da863cddd831b0f4bf2d067f8b75254f1be94590"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 17 23:39:39 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:27 2012 +0100"
      },
      "message": "PM / Sleep: Make __pm_stay_awake() delete wakeup source timers\n\nIf __pm_stay_awake() is called after __pm_wakeup_event() for the same\nwakep source object before its timer expires, it won\u0027t cancel the\ntimer, so the wakeup source will be deactivated from the timer\nfunction as scheduled by __pm_wakeup_event().  In that case\n__pm_stay_awake() doesn\u0027t have any effect beyond incrementing\nthe wakeup source\u0027s event_count field, although it should cancel\nthe timer and make the wakeup source stay active until __pm_relax()\nis called for it.\n\nTo fix this problem make __pm_stay_awake() delete the wakeup source\u0027s\ntimer and ensure that it won\u0027t be deactivated from the timer funtion\nafterwards by clearing its timer_expires field.\n\nReported-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "da863cddd831b0f4bf2d067f8b75254f1be94590",
      "tree": "f217486238bec611a0c08b88ae64249ba60a544e",
      "parents": [
        "d94aff87826ee6aa43032f4c0263482913f4e2c8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 17 23:39:33 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:14 2012 +0100"
      },
      "message": "PM / Sleep: Fix race conditions related to wakeup source timer function\n\nIf __pm_wakeup_event() has been used (with a nonzero timeout) to\nreport a wakeup event and then __pm_relax() immediately followed by\n__pm_stay_awake() is called or __pm_wakeup_event() is called once\nagain for the same wakeup source object before its timer expires, the\ntimer function pm_wakeup_timer_fn() may still be run as a result of\nthe previous __pm_wakeup_event() call.  In either of those cases it\nmay mistakenly deactivate the wakeup source that has just been\nactivated.\n\nTo prevent that from happening, make wakeup_source_deactivate()\nclear the wakeup source\u0027s timer_expires field and make\npm_wakeup_timer_fn() check if timer_expires is different from zero\nand if it\u0027s not in future before calling wakeup_source_deactivate()\n(if timer_expires is 0, it means that the timer has just been\ndeleted and if timer_expires is in future, it means that the timer\nhas just been rescheduled to a different time).\n\nReported-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "d94aff87826ee6aa43032f4c0263482913f4e2c8",
      "tree": "716777b9f6e3642d4fcd11e14000da92773b1edb",
      "parents": [
        "69f1d475cc80c55121852b3030873cdd407fd31c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 17 23:39:20 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Mar 04 23:08:02 2012 +0100"
      },
      "message": "PM / Sleep: Fix possible infinite loop during wakeup source destruction\n\nIf wakeup_source_destroy() is called for an active wakeup source that\nis never deactivated, it will spin forever.  To prevent that from\nhappening, make wakeup_source_destroy() call __pm_relax() for the\nwakeup source object it is about to free instead of waiting until\nit will be deactivated by someone else.  However, for this to work\nit also needs to make sure that the timer function will not be\nexecuted after the final __pm_relax(), so make it run\ndel_timer_sync() on the wakeup source\u0027s timer beforehand.\n\nAdditionally, update the kerneldoc comment to document the\nrequirement that __pm_stay_awake() and __pm_wakeup_event() must not\nbe run in parallel with wakeup_source_destroy().\n\nReported-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "19694b5ea1d3a723dafe9544b5ee9a935414dc28",
      "tree": "fbac80eeccde035993a89d9444d8fe5d293edca3",
      "parents": [
        "a313f9f565d84f2fcc81c818a6b0baaae752a821"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Feb 28 19:28:02 2012 -0500"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Mar 01 11:10:35 2012 +0000"
      },
      "message": "regmap: delete unused module.h from drivers/base/regmap files\n\nRemove unused module.h and/or replace with export.h\nas required.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "a0941e562e8008804f9fe4400315ceb164752fac",
      "tree": "292189d45e7bedeecec74c4b23d69ea3e7fb4b0c",
      "parents": [
        "4d4cfd1656b5f6c88eae51c40741a695b108b006"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 27 14:35:33 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 27 14:35:33 2012 +0000"
      },
      "message": "regmap: Fix x86_64 breakage\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4d4cfd1656b5f6c88eae51c40741a695b108b006",
      "tree": "c20b71443a4643122523ccdb2a9034a389a52374",
      "parents": [
        "ac8d91c801905a061ca883dca427a5e19602a1e7"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 20:53:37 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 24 14:52:41 2012 +0000"
      },
      "message": "regmap: Allow drivers to sync only part of the register cache\n\nProvide a regcache_sync_region() operation which allows drivers to\nwrite only part of the cache back to the hardware. This is intended\nfor use in cases like power domains or DSP memories where part of the\ndevice register map may be reset without fully resetting the device.\n\nFully supporting these devices is likely to require additional work to\nmake specific regions of the register map cache only while they are in\nreset, but this is enough for most devices.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "ac8d91c801905a061ca883dca427a5e19602a1e7",
      "tree": "3b715a8aa18db4ed553811595c113ef95e1c5f75",
      "parents": [
        "6ff7373809a9b4eb644d83e2e299da297e1cbffa"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 19:31:04 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 24 14:52:40 2012 +0000"
      },
      "message": "regmap: Supply ranges to the sync operations\n\nIn order to allow us to support partial sync operations add minimum and\nmaximum register arguments to the sync operation and update the rbtree\nand lzo caches to use this new information. The LZO implementation is\nobviously not good, we could exit the iteration earlier, but there may\nbe room for more wide reaching optimisation there.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "5d5b7d4f80ed6e861c1c220fd57e3dad0912526e",
      "tree": "40c015040a63379d114b8f33b4d70e248867a9a4",
      "parents": [
        "a3c3774176838bbfa4f6e48133644903818e56dc"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 22:02:57 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 22:10:56 2012 +0000"
      },
      "message": "regmap: Add tracepoints for cache only and cache bypass\n\nUseful for figuring out where the hardware interaction went or came from.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "6ff7373809a9b4eb644d83e2e299da297e1cbffa",
      "tree": "b8cb568ef36f900a356327e2bb5ea19cb77719ec",
      "parents": [
        "c3ec23288a92e20e0aff84a4cb6fbc7cc9bcf567"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 22:05:59 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 22:07:19 2012 +0000"
      },
      "message": "regmap: Mark the cache as clean after a successful sync\n\nPreviously the cache would never be marked clean, meaning syncs would\nnever be suppressed which isn\u0027t the end of the world but could be\ninefficient.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "c3ec23288a92e20e0aff84a4cb6fbc7cc9bcf567",
      "tree": "2bd8395c9e87fa9214ccd61c3b2a53b499727e3f",
      "parents": [
        "2a14d7d9b7439fe62082a60a7f8983ccb463d134"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 20:48:40 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 20:57:11 2012 +0000"
      },
      "message": "regmap: Remove default cache sync implementation\n\nIt\u0027s not used as all cache types have sync operations so it\u0027s just dead\ncode which never gets tested.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "a3c3774176838bbfa4f6e48133644903818e56dc",
      "tree": "a6398d371a2ee8c7b8e5854d3b04370ff404bcc9",
      "parents": [
        "f0c2319f9f196726ebe4d7508fd8fbd804988db3"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 20:11:58 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Feb 23 20:12:49 2012 +0000"
      },
      "message": "regmap: Skip hardware defaults for LZO caches\n\nSaves some I/O when resyncing; we assume that syncs start from the device\nreset state.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "f0c2319f9f196726ebe4d7508fd8fbd804988db3",
      "tree": "7fd39dbf7cbadc9f175f7dface4641b16189fdf6",
      "parents": [
        "09c6ecd394105c4864a0e409e181c9b1578c2a63"
      ],
      "author": {
        "name": "Dimitris Papastamos",
        "email": "dp@opensource.wolfsonmicro.com",
        "time": "Wed Feb 22 14:20:09 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 22 14:24:45 2012 +0000"
      },
      "message": "regmap: Expose the driver name in debugfs\n\nAdd a file called \u0027name\u0027 containing the name of the driver.\n\nSigned-off-by: Dimitris Papastamos \u003cdp@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "09c6ecd394105c4864a0e409e181c9b1578c2a63",
      "tree": "84ddf6946e4aeeb70d39c919f18bc5f6441e54ca",
      "parents": [
        "b8fb5ab156055b745254609f4635fcfd6b7dabc8"
      ],
      "author": {
        "name": "Dimitris Papastamos",
        "email": "dp@opensource.wolfsonmicro.com",
        "time": "Wed Feb 22 12:43:50 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 22 13:10:31 2012 +0000"
      },
      "message": "regmap: Add support for writing to regmap registers via debugfs\n\nTo enable writing to the regmap debugfs registers file users will\nneed to modify the source directly and #define REGMAP_ALLOW_WRITE_DEBUGFS.\nThe reason for this is that it is dangerous to expose this\nfunctionality in general where clients could potentially be PMICs.\n\n[A couple of minor style updates -- broonie]\n\nSigned-off-by: Dimitris Papastamos \u003cdp@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "82150451816ac6d735d8f90babe102636121d67e",
      "tree": "25b588eeba2443d93804f2c8c7196c706c420f05",
      "parents": [
        "8949490f70cf2cda615fb0fd0ddc299b531e6e48",
        "a6539c32949063c8147905512a83a98842c2d254"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Feb 21 19:34:01 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Feb 21 19:34:01 2012 +0000"
      },
      "message": "Merge tag \u0027topic/introspection\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into HEAD\n\nNew interfaces to allow other subsystems to gather information about the\nregmap, allowing them to build further subsystem specific generic\nfeatures on top of the regmap.\n\nMerged into ASoC in order to allow us to implement SND_SOC_BYTES_MASK()\ncontrols which need to know the word size of the underlying registers.\n"
    },
    {
      "commit": "b8fb5ab156055b745254609f4635fcfd6b7dabc8",
      "tree": "3b38473273181e316dd0db25ea4966cb1e7f946e",
      "parents": [
        "7d5e525b9ceda0e3b85da0acdaa2de19fea51edc"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Feb 21 19:12:47 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Feb 21 19:29:18 2012 +0000"
      },
      "message": "regmap: Support raw reads from cached registers\n\nFall back to a register by register read to do so; most likely we\u0027ll be\ncache only so the overhead will be low.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "aca1e172a1096ed3785e0da01d82943b7562527c",
      "tree": "0826c140b4e31acd7f8546727498dd849f099ba6",
      "parents": [
        "3bf06a1ad9b147ca3a64b119d70c4a7c0ace3695",
        "2a14d7d9b7439fe62082a60a7f8983ccb463d134"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 20 21:21:33 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 20 21:21:33 2012 +0000"
      },
      "message": "Merge branch \u0027topic/patch\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into regmap-drivers\n"
    },
    {
      "commit": "3bf06a1ad9b147ca3a64b119d70c4a7c0ace3695",
      "tree": "7e3e546895c3734bfcf36b237aa6609576a8586d",
      "parents": [
        "b01543dfe67bb1d191998e90d20534dc354de059",
        "c0eb46766d395da8d62148bda2e59bad5e6ee2f2"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 20 21:21:25 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 20 21:21:25 2012 +0000"
      },
      "message": "Merge branch \u0027topic/devm\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into regmap-drivers\n"
    },
    {
      "commit": "a6539c32949063c8147905512a83a98842c2d254",
      "tree": "0eb2d7a118d3fc94b998bc6fe24239fcdefa4450",
      "parents": [
        "b01543dfe67bb1d191998e90d20534dc354de059"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 17 14:20:14 2012 -0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 20 21:17:08 2012 +0000"
      },
      "message": "regmap: Allow users to query the size of register values\n\nGeneric infrastructure based on top of regmap may want to operate on\nblocks of data and therefore find it useful to find the size of the\nregister values. Provide an accessor operation for this.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "fa2c8f401797eee814b7b9fa0b23fa6c4c3f5533",
      "tree": "826fb23071b866e112d6e9c510fe3ad4d668acdc",
      "parents": [
        "a387419612f9c246701a5080bccecf3c04f65277",
        "b01543dfe67bb1d191998e90d20534dc354de059"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Feb 19 18:35:12 2012 -0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Feb 19 18:35:12 2012 -0800"
      },
      "message": "Merge tag \u0027v3.3-rc4\u0027 into for-3.4 in order to resolve the conflict\nresolved below within the FSI driver and allow the application of the\ndmaeengine conversion that depends on this resolution.\n\nLinux 3.3-rc4\n\nConflicts:\n\tsound/soc/sh/fsi.c\n"
    },
    {
      "commit": "bff98bfcdb2124e4e640fa6d7c9c7c3d21362760",
      "tree": "6d94d9e8ab057fb85cd634e15a1ddd15df554d30",
      "parents": [
        "4686066689482214781573fcb42300f713d0210c",
        "61cddc57dc14a5dffa0921d9a24fd68edbb374ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 18 15:37:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 18 15:37:25 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nFixes a bootstrapping issue for some registers when a less commonly used\nmethod for register cache initialisation is used.  Only affects a fairly\nsmall proportion of users that both don\u0027t use explicit register defaults\nand do use the cache.\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:\n  regmap: Fix cache defaults initialization from raw cache defaults\n"
    },
    {
      "commit": "7d5e525b9ceda0e3b85da0acdaa2de19fea51edc",
      "tree": "22291170c9f95d3decce9eebfc8f2df5ce674014",
      "parents": [
        "9cde5fcd435fd929db7b0b486efb435cdb1ddca4"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 17 15:58:25 2012 -0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 17 16:26:50 2012 -0800"
      },
      "message": "regmap: Implement support for 32 bit registers and values\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "df00c79f78d8b0ad788daf689ea461ace9d0811f",
      "tree": "75ddc463dc7392797bc3d19dad2c010f3497d498",
      "parents": [
        "8eaeb21925563075ae036c2e5ba8d041b70e18fa"
      ],
      "author": {
        "name": "Laxman Dewangan",
        "email": "ldewangan@nvidia.com",
        "time": "Fri Feb 17 18:57:26 2012 +0530"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 17 09:19:00 2012 -0800"
      },
      "message": "regmap: Bypassing cache when initializing cache\n\nDuring regcache_init, if client has not passed the\ndefault data of cached register then it is directly\nread from the hw to initialize cache. This hw register\nread happens before cache ops are initialized and hence\navoiding register read to check for the data available\non cache or not by enabling flag of cache_bypass.\n\nSigned-off-by: Laxman Dewangan \u003cldewangan@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "61cddc57dc14a5dffa0921d9a24fd68edbb374ac",
      "tree": "f909dda9bab29b39cecbd67bc9af008a0cf1ec03",
      "parents": [
        "d65b4e98d7ea3038b767b70fe8be959b2913f16d"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Wed Feb 15 10:23:25 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 15 08:31:32 2012 -0800"
      },
      "message": "regmap: Fix cache defaults initialization from raw cache defaults\n\nCurrently registers with a value of 0 are ignored when initializing the register\ndefaults from raw defaults. This worked in the past, because registers without a\nexplicit default were assumed to have a default value of 0. This was changed in\ncommit b03622a8 (\"regmap: Ensure rbtree syncs registers set to zero properly\").\nAs a result registers, which have a raw default value of 0 are now assumed to\nhave no default. This again can result in unnecessary writes when syncing the\ncache. It will also result in unnecessary reads for e.g. the first update\noperation. In the case where readback is not possible this will even let the\nupdate operation fail, if the register has not been written to before.\n\nSo this patch removes the check. Instead it adds a check to ignore raw defaults\nfor registers which are volatile, since those registers are not cached.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "8eaeb21925563075ae036c2e5ba8d041b70e18fa",
      "tree": "165075722500d35cd6c6b459d2be638e491df718",
      "parents": [
        "c9157198417076c0c2664ba997e7b0217f61fcce"
      ],
      "author": {
        "name": "Laxman Dewangan",
        "email": "ldewangan@nvidia.com",
        "time": "Sun Feb 12 19:49:43 2012 +0530"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Feb 14 14:03:32 2012 -0800"
      },
      "message": "regmap: add regmap_bulk_write() for register write\n\nThe bulk_write() supports the data transfer to multi\nregister which takes the data into cpu_endianness format\nand does formatting of data to device format before\nsending to device.\nThe transfer can be completed in single transfer or multiple\ntransfer based on data formatting.\n\nSigned-off-by: Laxman Dewangan \u003cldewangan@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "7c95149b7f1f61201b12c73c4862a41bf2428961",
      "tree": "33917dbbd8b8cbbf917262e42baf3a528b752149",
      "parents": [
        "a556d5b58345ccf51826b9ceac078072f830738b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Feb 11 00:00:11 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Feb 13 16:25:51 2012 +0100"
      },
      "message": "PM / Sleep: Initialize wakeup source locks in wakeup_source_add()\n\nInitialize wakeup source locks in wakeup_source_add() instead of\nwakeup_source_create(), because otherwise the locks of the wakeup\nsources that haven\u0027t been allocated with wakeup_source_create()\naren\u0027t initialized and handled properly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c9157198417076c0c2664ba997e7b0217f61fcce",
      "tree": "354dcd5c829676cc7702b490dd18853176cdbac5",
      "parents": [
        "d65b4e98d7ea3038b767b70fe8be959b2913f16d"
      ],
      "author": {
        "name": "Laxman Dewangan",
        "email": "ldewangan@nvidia.com",
        "time": "Fri Feb 10 21:30:27 2012 +0530"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Feb 11 23:03:45 2012 +0000"
      },
      "message": "regmap: Support for caching in reg_raw_write()\n\nAdding support for caching of data into the\nnon-volatile register from the call of reg_raw_write().\n\nThis will allow the larger block of data write into multiple\nregister without worrying whether register is cached or not\nthrough reg_raw_write().\n\nSigned-off-by: Laxman Dewangan \u003cldewangan@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "74d1d82cdaaec727f5072eb1c9f49b7e920e076f",
      "tree": "a1bee0010203df0465df33fb337ae66bb6b59fee",
      "parents": [
        "956563362be8ac7ce084b00825168be1adfb29ee"
      ],
      "author": {
        "name": "Lee Jones",
        "email": "lee.jones@linaro.org",
        "time": "Mon Feb 06 11:22:22 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 10 11:42:25 2012 -0800"
      },
      "message": "drivers/base: add bus for System-on-Chip devices\n\nTraditionally, any System-on-Chip based platform creates a flat list\nof platform_devices directly under /sys/devices/platform.\n\nIn order to give these some better structure, this introduces a new\nbus type for soc_devices that are registered with the new\nsoc_device_register() function.  All devices that are on the same\nchip should then be registered as child devices of the soc device.\n\nThe soc bus also exports a few standardised device attributes which\nallow user space to query the specific type of soc.\n\nSigned-off-by: Lee Jones \u003clee.jones@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "2a14d7d9b7439fe62082a60a7f8983ccb463d134",
      "tree": "5a49db57fb6856e92f824870efb8e258e70729e6",
      "parents": [
        "8a892d6996b60c822f19ad1844eb15b96ce393c7"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Fri Feb 10 19:29:55 2012 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Feb 10 11:46:14 2012 +0000"
      },
      "message": "regmap: Fix kcalloc parameters swapped\n\nThe first parameter should be \"number of elements\" and the second parameter\nshould be \"element size\".\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "29bb5d4fd3140a7d5d02d858118c74a45f15c296",
      "tree": "bed72baeafecb0e33e816709c432595804dc711d",
      "parents": [
        "15f51136719699d7204eeeccd66849a4d90ae426"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Feb 08 15:11:17 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Feb 08 15:11:17 2012 -0800"
      },
      "message": "driver-core: cpu: fix kobject warning when hotplugging a cpu\n\nDue to the sysdev conversion to struct device, the cpu objects get\nreused when adding a cpu after offlining it, which causes a big warning\nthat the kobject portion is not properly initialized.\n\nSo clear out the object before we register it again, so all is quiet.\n\nReported-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "028a01e601487b5991b70dba506dfe87d83543f6",
      "tree": "f92c3f85f5b6d1d95dbc2467289fdc5748707c8b",
      "parents": [
        "847fb6fdf58c0ef4c207d2853a043a4da3db9c76"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 06 18:02:06 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 06 19:24:46 2012 +0000"
      },
      "message": "regmap: Add debugfs information for the cache status\n\nShow all the cache status flags in debugfs if we have a cache.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "847fb6fdf58c0ef4c207d2853a043a4da3db9c76",
      "tree": "70c75bb5f00233ab80e49ed3e4d1bae03f456734",
      "parents": [
        "aa795d129246cb4c973076e3242b8a2eb374f1ef"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 06 18:01:35 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Feb 06 19:24:35 2012 +0000"
      },
      "message": "regmap: Don\u0027t use bitfields for booleans\n\nThis was a cut\u0027n\u0027paste from some older code.\n\nSince we\u0027re about to add debugfs support don\u0027t do the obvious thing and\nuse bool, use u32 instead (which debugfs has been using since time\nimmemorial).\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "321bf4ed5ff5f7c62ef59f33b7eec5b154391f0a",
      "tree": "1fe34d7f78a690ba780d4e2ed01e48d705d345dd",
      "parents": [
        "2885e25c422fb68208f677f944a45fce8eda2a3c"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Jan 30 13:57:12 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 15:50:05 2012 -0800"
      },
      "message": "drivers/base/memory.c: fix memory_dev_init() long delay\n\nOne system with 2048g ram, reported soft lockup on recent kernel.\n\n[   34.426749] cpu_dev_init done\n[   61.166399] BUG: soft lockup - CPU#0 stuck for 22s! [swapper/0:1]\n[   61.166733] Modules linked in:\n[   61.166904] irq event stamp: 1935610\n[   61.178431] hardirqs last  enabled at (1935609): [\u003cffffffff81ce8c05\u003e] mutex_lock_nested+0x299/0x2b4\n[   61.178923] hardirqs last disabled at (1935610): [\u003cffffffff81cf2bab\u003e] apic_timer_interrupt+0x6b/0x80\n[   61.198767] softirqs last  enabled at (1935476): [\u003cffffffff8106e59c\u003e] __do_softirq+0x195/0x1ab\n[   61.218604] softirqs last disabled at (1935471): [\u003cffffffff81cf359c\u003e] call_softirq+0x1c/0x30\n[   61.238408] CPU 0\n[   61.238549] Modules linked in:\n[   61.238744]\n[   61.238825] Pid: 1, comm: swapper/0 Not tainted 3.3.0-rc1-tip-yh-02076-g962f689-dirty #171\n[   61.278212] RIP: 0010:[\u003cffffffff810b3e3a\u003e]  [\u003cffffffff810b3e3a\u003e] lock_release+0x90/0x9c\n[   61.278627] RSP: 0018:ffff883f64dbfd70  EFLAGS: 00000246\n[   61.298287] RAX: ffff883f64dc0000 RBX: 0000000000000000 RCX: 000000000000008b\n[   61.298690] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000\n[   61.318383] RBP: ffff883f64dbfda0 R08: 0000000000000001 R09: 000000000000008b\n[   61.338215] R10: 0000000000000000 R11: 0000000000000000 R12: ffff883f64dbfd10\n[   61.338610] R13: ffff883f64dc0708 R14: ffff883f64dc0708 R15: ffffffff81095657\n[   61.358299] FS:  0000000000000000(0000) GS:ffff883f7d600000(0000) knlGS:0000000000000000\n[   61.378118] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n[   61.378450] CR2: 0000000000000000 CR3: 00000000024af000 CR4: 00000000000007f0\n[   61.398144] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n[   61.417918] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n[   61.418260] Process swapper/0 (pid: 1, threadinfo ffff883f64dbe000, task ffff883f64dc0000)\n[   61.445358] Stack:\n[   61.445511]  0000000000000002 ffff897f649ba168 ffff883f64dbfe10 ffff88ff64bb57a8\n[   61.458040]  0000000000000000 0000000000000000 ffff883f64dbfdc0 ffffffff81ceb1b4\n[   61.458491]  000000000011608c ffff88ff64bb58a8 ffff883f64dbfdf0 ffffffff81c57638\n[   61.478215] Call Trace:\n[   61.478367]  [\u003cffffffff81ceb1b4\u003e] _raw_spin_unlock+0x21/0x2e\n[   61.497994]  [\u003cffffffff81c57638\u003e] klist_next+0x9e/0xbc\n[   61.498264]  [\u003cffffffff8148ba99\u003e] next_device+0xe/0x1e\n[   61.517867]  [\u003cffffffff8148c0cc\u003e] subsys_find_device_by_id+0xb7/0xd6\n[   61.518197]  [\u003cffffffff81498846\u003e] find_memory_block_hinted+0x3d/0x66\n[   61.537927]  [\u003cffffffff8149887f\u003e] find_memory_block+0x10/0x12\n[   61.538193]  [\u003cffffffff814988b6\u003e] add_memory_section+0x35/0x9e\n[   61.557932]  [\u003cffffffff827fecef\u003e] memory_dev_init+0x68/0xda\n[   61.558227]  [\u003cffffffff827fec01\u003e] driver_init+0x97/0xa7\n[   61.577853]  [\u003cffffffff827cdf3c\u003e] kernel_init+0xf6/0x1c0\n[   61.578140]  [\u003cffffffff81cf34a4\u003e] kernel_thread_helper+0x4/0x10\n[   61.597850]  [\u003cffffffff81ceb59d\u003e] ? retint_restore_args+0xe/0xe\n[   61.598144]  [\u003cffffffff827cde46\u003e] ? start_kernel+0x3ab/0x3ab\n[   61.617826]  [\u003cffffffff81cf34a0\u003e] ? gs_change+0xb/0xb\n[   61.618060] Code: 10 48 83 3b 00 eb e8 4c 89 f2 44 89 fe 4c 89 ef e8 e1 fe ff ff 65 48 8b 04 25 40 bc 00 00 c7 80 cc 06 00 00 00 00 00 00 41 54 9d \u003c5e\u003e 5b 41 5c 41 5d 41 5e 41 5f 5d c3 55 48 89 e5 41 57 41 89 cf\n[   89.285380] memory_dev_init done\n\nFinally it takes about 55s to create 16400 memory entries.\n\nRoot cause: for x86_64, 2048g (with 2g hole at [2g,4g), and TOP2 will be 2050g), will have 16400 memory block.\n\nfind_memory_block/subsys_find_device_by_id will be expensive with that many entries.\n\nActually, we don\u0027t need to find that memory block for BOOT path.\n\nSkip that finding make it get back to normal.\n\n[   34.466696] cpu_dev_init done\n[   35.290080] memory_dev_init done\n\nAlso solved the delay with topology_init when sections_per_block is not 1.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Nathan Fontenot \u003cnfont@austin.ibm.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "bd1d462e13b278fc57752d0b9b15040e60e561a0",
      "tree": "e2fdf1c18a93aab02830bcb8a5db8cdddfbb63a8",
      "parents": [
        "d5c38b137ac8a6e3dbed13bc494d60df5b69dfc4",
        "62aa2b537c6f5957afd98e29f96897419ed5ebab"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 11:24:44 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 11:24:44 2012 -0800"
      },
      "message": "Merge 3.3-rc2 into the driver-core-next branch.\n\nThis was done to resolve a merge and build problem with the\ndrivers/acpi/processor_driver.c file.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "2885e25c422fb68208f677f944a45fce8eda2a3c",
      "tree": "5707136bf11aeac99e9a47030325c1681933895b",
      "parents": [
        "62aa2b537c6f5957afd98e29f96897419ed5ebab"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 10:36:33 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 02 10:43:16 2012 -0800"
      },
      "message": "driver core: cpu: remove kernel warning when removing a cpu\n\nWith the movement of the cpu sysdev code to be real stuct devices, now\nwhen we remove a cpu from the system, the driver core rightfully\ncomplains that there is not a release method for this device.\n\nFor now, paper over this issue by quieting the driver core, but comment\nthis in detail.  This will be resolved in future kernels to be solved\nproperly.\n\nReported-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "07d57a32fb6eb2da017796e038682f817a4f685e",
      "tree": "4c7bb83cbda8db99ed91f575d8355c5b45b16cfb",
      "parents": [
        "7aff0fe33033fc75b61446ba29d38b1b1354af9f"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Feb 01 11:22:22 2012 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Feb 01 14:26:30 2012 -0700"
      },
      "message": "drivercore: Output common devicetree information in uevent\n\nWhen userspace needs to find a specific device, it currently isn\u0027t easy to\nresolve a /sys/devices/ path from a specific device tree node.  Nor is it\neasy to obtain the compatible list for devices.\n\nThis patch generalizes the code that inserts OF_* values into the uevent\ndevice attribute so that any device that is attached to an OF node will\nhave that information exported to userspace.  Without this patch only\nplatform devices and some powerpc-specific busses have access to this\ndata.\n\nThe original function also creates a MODALIAS property for the compatible\nlist, but that code has not been generalized into the common case because\nit has the potential to break module loading on a lot of bus types.  Bus\ntypes are still responsible for their own MODALIAS properties.\n\nBoot tested on ARM and compile tested on PowerPC and SPARC.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Tobias Klauser \u003ctklauser@distanz.ch\u003e\nCc: Frederic Lambert \u003cfrdrc66@gmail.com\u003e\nCc: Rob Herring \u003crob.herring@calxeda.com\u003e\nCc: Mark Brown \u003cbroonie@sirena.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "dcaad77a8074b6de58e745546bc543d5538404f2",
      "tree": "5f988393b64f1a8053f2f5d0be7113e991d40886",
      "parents": [
        "0496c8ae366724a0a2136cec09a2e277e782c126",
        "91cfbd4ee0875f8a826731983378670012ba6e01"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 01 22:18:43 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 01 22:18:43 2012 +0100"
      },
      "message": "Merge branch \u0027v3.4-for-rafael\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into pm-domains\n\n* \u0027v3.4-for-rafael\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:\n  ARM: EXYNOS: Hook up power domains to generic power domain infrastructure\n  PM / Domains: Add OF support\n"
    },
    {
      "commit": "177f72fd101d512d938558b53cd4faa6a5434090",
      "tree": "1cfe58343c705f02c53886d7aa781b97b671b704",
      "parents": [
        "761bfdd91184c6662a9233976e855b4ccb883c96",
        "62aa2b537c6f5957afd98e29f96897419ed5ebab"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 01 10:08:15 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Feb 01 10:08:15 2012 +0000"
      },
      "message": "Merge tag \u0027v3.3-rc2\u0027 into for-3.4\n\nA reasonable amount of new development is causing fiddly merge conflicts\nbetween different resource management changes (mostly fixing bugs in\nresource management due to noticing things while doing enhancements in\nthe same area).\n\nLinux 3.3-rc2\n\n.. several days delayed. No reason, I just didn\u0027t think of it.\n"
    },
    {
      "commit": "aa795d129246cb4c973076e3242b8a2eb374f1ef",
      "tree": "293e910cb30abab980470be02a3d4fdadc4046eb",
      "parents": [
        "4191f19792bf91267835eb090d970e9cd6277a65"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Tue Jan 31 11:48:18 2012 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 31 11:25:08 2012 +0000"
      },
      "message": "regmap: Remove incorrect unreachable comment in regcache_set_val()\n\nregcache_set_val() returns false if cache[idx] !\u003d val.\nThus it actually is not unreachable.\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "c0eb46766d395da8d62148bda2e59bad5e6ee2f2",
      "tree": "9b808ba04041f4f10d08b384b4ad8c608a86df4c",
      "parents": [
        "567e47935a7cddd8e823c73bb8ee0b2805cd4940"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Jan 30 19:56:52 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Jan 30 21:06:43 2012 +0000"
      },
      "message": "regmap: Implement managed regmap_init()\n\nSave error handling and unwinding code in drivers by providing managed\nversions of the regmap init functions, simplifying usage.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4191f19792bf91267835eb090d970e9cd6277a65",
      "tree": "ef01c8d48b3d6fd9c3f1bbffb4a77c7560c1d4d5",
      "parents": [
        "c212acccc368a087a53559aac2b7d3be941b1252"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Mon Jan 30 15:08:16 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Jan 30 16:23:11 2012 +0000"
      },
      "message": "regmap: if format_write is used, declare all registers as \"unreadable\"\n\nUsing .format_write means, we have a custom function to write to the\nchip, but not to read back. Also, mark registers as \"not precious\" and\n\"not volatile\" which is implicit because we cannot read them. Make those\nfunctions use \u0027regmap_readable\u0027 to reuse the checks done there.\n\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "c212acccc368a087a53559aac2b7d3be941b1252",
      "tree": "260a587cc531a75ad1abaf1d40ce775c4e236f32",
      "parents": [
        "9aa507505cdcd10b7390398790f013374ee74a26"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Sat Jan 28 02:16:41 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jan 29 21:42:40 2012 +0000"
      },
      "message": "regmap: Properly round reg_bytes and val_bytes\n\nFor the upcoming 2/6-format, we don\u0027t see debugfs output otherwise,\nsince the current division results in 0. I\u0027d think 10/14 is broken\ncurrently, too.\n\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "0496c8ae366724a0a2136cec09a2e277e782c126",
      "tree": "29fce6f2a0b5e445b01f4c471f1c9d3aeead3d40",
      "parents": [
        "e470d06655e00749f6f9372e4fa4f20cea7ed7c5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:39:02 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:39:02 2012 +0100"
      },
      "message": "PM / Domains: Run late/early device suspend callbacks at the right time\n\nAfter the introduction of the late/early phases of device\nsuspend/resume during system-wide power transitions it is possible\nto make the generic PM domains code execute its default late/early\ndevice suspend/resume callbacks during those phases instead of the\ncorresponding _noirq phases.  The _noirq device suspend/resume\nphases were only used for executing those callbacks, because this\nwas the only way it could be done, but now we can do better.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    }
  ],
  "next": "e470d06655e00749f6f9372e4fa4f20cea7ed7c5"
}
