)]}'
{
  "log": [
    {
      "commit": "507a9d3354b24e7cc7f22e9695339de6df317fc1",
      "tree": "a210432605dd4d7ec8ecf39604369c780819cd92",
      "parents": [
        "d6f534fc51eb5fc23d08dacceecd42a4b98747a6"
      ],
      "author": {
        "name": "Jeff Boody",
        "email": "jboody@codeaurora.org",
        "time": "Mon Jun 11 10:31:10 2012 -0600"
      },
      "committer": {
        "name": "Jeff Boody",
        "email": "jboody@codeaurora.org",
        "time": "Wed Jun 13 09:27:44 2012 -0600"
      },
      "message": "base: genlock: add magic to protect attach from non-genlock file\n\nIt is possible for user space to attempt to attach a valid fd that\ndoes not correspond to a genlock file. This change adds a magic to\nthe kernel private data that is used for validation.\n\nCRs-fixed: 359649\nChange-Id: Idb16056ba0f89b7d519d501f5b1ce6d5d930ed70\nSigned-off-by: Jeff Boody \u003cjboody@codeaurora.org\u003e\n"
    },
    {
      "commit": "d6f534fc51eb5fc23d08dacceecd42a4b98747a6",
      "tree": "5ce26b916462dd8678a25fd7e2174a2d7b39af8d",
      "parents": [
        "af9e5b75508a82724ab3dc565b3ecc9d5af176a8"
      ],
      "author": {
        "name": "Jeff Boody",
        "email": "jboody@codeaurora.org",
        "time": "Thu Jun 07 11:02:22 2012 -0600"
      },
      "committer": {
        "name": "Jeff Boody",
        "email": "jboody@codeaurora.org",
        "time": "Wed Jun 13 09:27:04 2012 -0600"
      },
      "message": "base: genlock: protect kref counting with spinlock\n\nA race condition exists where the attach may not kref_get\nbefore the kref_put finished. The genlock_file_lock was\noriginally added to protect against this case however it\nwas not protecting the kref.\n\nCRs-fixed: 359649\nChange-Id: Iab1fc847c2d3357ec1be79b7cc3e004643126dec\nSigned-off-by: Jeff Boody \u003cjboody@codeaurora.org\u003e\n"
    },
    {
      "commit": "f132c6cf77251e011e1dad0ec88c0b1fda16d5aa",
      "tree": "f04b469a3547a19b7bdbe110adc571eb71c93328",
      "parents": [
        "23016defd7db701a01dc49f972ad6b1bae9651c2",
        "3f6240f3e4e2608caf1a70d614ada658cbcbe7be"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Wed Jun 06 18:30:57 2012 -0700"
      },
      "committer": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Wed Jun 06 18:45:28 2012 -0700"
      },
      "message": "Merge commit \u0027AU_LINUX_ANDROID_ICS.04.00.04.00.126\u0027 into msm-3.4\n\nAU_LINUX_ANDROID_ICS.04.00.04.00.126 from msm-3.0.\nFirst parent is from google/android-3.4.\n\n* commit \u0027AU_LINUX_ANDROID_ICS.04.00.04.00.126\u0027: (8712 commits)\n  PRNG: Device tree entry for qrng device.\n  vidc:1080p: Set video core timeout value for Thumbnail mode\n  msm: sps: improve the debugging support in SPS driver\n  board-8064 msm: Overlap secure and non secure video firmware heaps.\n  msm: clock: Add handoff ops for 7x30 and copper XO clocks\n  msm_fb: display: Wait for external vsync before DTV IOMMU unmap\n  msm: Fix ciruclar dependency in debug UART settings\n  msm: gdsc: Add GDSC regulator driver for msm-copper\n  defconfig: Enable Mobicore Driver.\n  mobicore: Add mobicore driver.\n  mobicore: rename variable to lower case.\n  mobicore: rename folder.\n  mobicore: add makefiles\n  mobicore: initial import of kernel driver\n  ASoC: msm: Add SLIMBUS_2_RX CPU DAI\n  board-8064-gpio: Update FUNC for EPM SPI CS\n  msm_fb: display: Remove chicken bit config during video playback\n  mmc: msm_sdcc: enable the sanitize capability\n  msm-fb: display: lm2 writeback support on mpq platfroms\n  msm_fb: display: Disable LVDS phy \u0026 pll during panel off\n  ...\n\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "49795fbf33dd948adcf5e82faecc560fceaf14bc",
      "tree": "2baa1fd7138c8a1872075f6a6cc991ad9f8c57be",
      "parents": [
        "4fb837a718d33bbaba19c0ccfbb3e23fc92d8ad3"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:14:43 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 30 13:12:40 2012 -0700"
      },
      "message": "sw_sync: export sw_sync API\n\nNeeded to let modules link against sw_sync.\n\nChange-Id: I71d3e52677ef21b6e1ecdb84f831491be1f4fbe6\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "4fb837a718d33bbaba19c0ccfbb3e23fc92d8ad3",
      "tree": "92a70c03a62561d8e9dd8dd3b62e3df8f5ec2a4e",
      "parents": [
        "c80114fd8bfecfb60121d0a82c59610435604ce3"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:09:22 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 30 13:12:40 2012 -0700"
      },
      "message": "sync: export sync API symbols\n\nThis is needed to allow modules to link against the sync subsystem\n\nChange-Id: I15c1818de329f24e4113ef1d0923413b22fd0eff\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "c80114fd8bfecfb60121d0a82c59610435604ce3",
      "tree": "c204bb472f04a6294634efb4fc8ef42e7d8a231b",
      "parents": [
        "dcefb2ee8d412a6fab43aabd4fb5668aab12ce04"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Tue May 15 16:23:26 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 30 13:12:40 2012 -0700"
      },
      "message": "sync: allow async waits to be canceled\n\nIn order to allow drivers to cleanly handled teardown we need to allow them\nto cancel pending async waits.  To do this cleanly, we move allocation of\nsync_fence_waiter to the driver calling sync_async_wait().\n\nChange-Id: Ifcd95648be6ec07026d67f810070a4310f099989\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "d4e8b7193d87d80f3364d7924692988c974780aa",
      "tree": "04f54438fab0d64e5cfe23debbd622c9cfc34f4b",
      "parents": [
        "9ae7e01de1cf03c77054da44d135a7e85863fcb0"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Wed Apr 18 15:52:26 2012 +0200"
      },
      "committer": {
        "name": "Rebecca Schultz Zavin",
        "email": "rebecca@android.com",
        "time": "Tue May 22 14:01:06 2012 -0700"
      },
      "message": "dma-buf: mmap support\n\nCompared to Rob Clark\u0027s RFC I\u0027ve ditched the prepare/finish hooks\nand corresponding ioctls on the dma_buf file. The major reason for\nthat is that many people seem to be under the impression that this is\nalso for synchronization with outstanding asynchronous processsing.\nI\u0027m pretty massively opposed to this because:\n\n- It boils down reinventing a new rather general-purpose userspace\n  synchronization interface. If we look at things like futexes, this\n  is hard to get right.\n- Furthermore a lot of kernel code has to interact with this\n  synchronization primitive. This smells a look like the dri1 hw_lock,\n  a horror show I prefer not to reinvent.\n- Even more fun is that multiple different subsystems would interact\n  here, so we have plenty of opportunities to create funny deadlock\n  scenarios.\n\nI think synchronization is a wholesale different problem from data\nsharing and should be tackled as an orthogonal problem.\n\nNow we could demand that prepare/finish may only ensure cache\ncoherency (as Rob intended), but that runs up into the next problem:\nWe not only need mmap support to facilitate sw-only processing nodes\nin a pipeline (without jumping through hoops by importing the dma_buf\ninto some sw-access only importer), which allows for a nicer\nION-\u003edma-buf upgrade path for existing Android userspace. We also need\nmmap support for existing importing subsystems to support existing\nuserspace libraries. And a loot of these subsystems are expected to\nexport coherent userspace mappings.\n\nSo prepare/finish can only ever be optional and the exporter /needs/\nto support coherent mappings. Given that mmap access is always\nsomewhat fallback-y in nature I\u0027ve decided to drop this optimization,\ninstead of just making it optional. If we demonstrate a clear need for\nthis, supported by benchmark results, we can always add it in again\nlater as an optional extension.\n\nOther differences compared to Rob\u0027s RFC is the above mentioned support\nfor mapping a dma-buf through facilities provided by the importer.\nWhich results in mmap support no longer being optional.\n\nNote that this dma-buf mmap patch does _not_ support every possible\ninsanity an existing subsystem could pull of with mmap: Because it\ndoes not allow to intercept pagefaults and shoot down ptes importing\nsubsystems can\u0027t add some magic of their own at these points (e.g. to\nautomatically synchronize with outstanding rendering or set up some\nspecial resources). I\u0027ve done a cursory read through a few mmap\nimplementions of various subsytems and I\u0027m hopeful that we can avoid\nthis (and the complexity it\u0027d bring with it).\n\nAdditonally I\u0027ve extended the documentation a bit to explain the hows\nand whys of this mmap extension.\n\nIn case we ever want to add support for explicitly cache maneged\nuserspace mmap with a prepare/finish ioctl pair, we could specify that\nuserspace needs to mmap a different part of the dma_buf, e.g. the\nrange starting at dma_buf-\u003esize up to dma_buf-\u003esize*2. This works\nbecause the size of a dma_buf is invariant over it\u0027s lifetime. The\nexporter would obviously need to fall back to coherent mappings for\nboth ranges if a legacy clients maps the coherent range and the\narchitecture cannot suppor conflicting caching policies. Also, this\nwould obviously be optional and userspace needs to be able to fall\nback to coherent mappings.\n\nv2:\n- Spelling fixes from Rob Clark.\n- Compile fix for !DMA_BUF from Rob Clark.\n- Extend commit message to explain how explicitly cache managed mmap\n  support could be added later.\n- Extend the documentation with implementations notes for exporters\n  that need to manually fake coherency.\n\nChange-Id: Ia8f2ae5d8a1b1c87ed12ca1c89d7bf2067239ee4\nCc: Rob Clark \u003crob.clark@linaro.org\u003e\nCc: Rebecca Schultz Zavin \u003crebecca@android.com\u003e\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\n"
    },
    {
      "commit": "a1eeacaf7a96729d6bedae031af5565b7a4e9487",
      "tree": "f732d5942e88b389d6eb58e8aca17f767764d91b",
      "parents": [
        "484101e5a816cb1e9022805d1714445c473e5b63"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Mon Mar 19 17:28:32 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:24 2012 -0700"
      },
      "message": "sync: add poll support\n\nChange-Id: I294e481bba92658e6dd26f157ddbf0e9ff4ce8a5\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "484101e5a816cb1e9022805d1714445c473e5b63",
      "tree": "da14a3f29d3dc4cdfa4817bbb4d3c27285a399eb",
      "parents": [
        "3913bff501a81ff2719528f09830a1b88229ac21"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Thu Mar 15 17:46:07 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:24 2012 -0700"
      },
      "message": "sw_sync: add fill_driver_data support\n\nChange-Id: Ib3812d282db56362d82f5ccc9a12b7d2100ab93a\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "3913bff501a81ff2719528f09830a1b88229ac21",
      "tree": "e33204ec9086135c84d71c6d8d86ec39cc9e780c",
      "parents": [
        "2c959d7b8d87672f1444126c50da5c373a0484af"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Thu Mar 15 17:45:50 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:23 2012 -0700"
      },
      "message": "sync: add ioctl to get fence data\n\nChange-Id: I71410aef7e03a52562f7cb15b993ac8441b1fa12\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "2c959d7b8d87672f1444126c50da5c373a0484af",
      "tree": "7c885ea77c32bd4a7bdfe0ac10520fa602afb839",
      "parents": [
        "981c8a993d581ea3f2c071d1a2e631edc2a4c670"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Thu Mar 15 14:23:23 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:23 2012 -0700"
      },
      "message": "sw_sync: add debug support\n\nChange-Id: Ibcc5fa8cb36e283cdf0e3308064876722e2675fc\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "981c8a993d581ea3f2c071d1a2e631edc2a4c670",
      "tree": "7c940c2dce2c70dca60e2d6f72ca09dfa5a5321b",
      "parents": [
        "ad433ba4d1f447792fd6ae75183bad91f702a3ef"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed Mar 14 19:49:15 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:23 2012 -0700"
      },
      "message": "sync: add debugfs support\n\nChange-Id: I8a7ea63e454fbeee1ecf17e6c3caff7c43b24734\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "ad433ba4d1f447792fd6ae75183bad91f702a3ef",
      "tree": "b26b200deac364f8b245c10ec72a201278455a12",
      "parents": [
        "560b5462071cdaa4865c4c113ec295cdf2565385"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Thu Mar 15 14:59:33 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:23 2012 -0700"
      },
      "message": "sync: add timestamps to sync_pts\n\nChange-Id: I2ad855072b86873880769a09a3176e85aa1199d7\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "560b5462071cdaa4865c4c113ec295cdf2565385",
      "tree": "f3e40d646a257cf7dd87ac589ca62bac63bd1e67",
      "parents": [
        "010accf8a0e643acd1f41ea7ae759714ccf8eda1"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed Apr 18 13:43:22 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:23 2012 -0700"
      },
      "message": "sw_sync: add cpu based sync driver\n\nChange-Id: I1042851f5e30f9fdc2f35bdad84123bcf108560f\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "010accf8a0e643acd1f41ea7ae759714ccf8eda1",
      "tree": "a5d7424ecac8cf2f9e402fd44e0de374bb017c76",
      "parents": [
        "66981be398731073dc68d703327d2cf24bd9c6ab"
      ],
      "author": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Tue Mar 13 15:34:34 2012 -0700"
      },
      "committer": {
        "name": "Erik Gilling",
        "email": "konkers@android.com",
        "time": "Wed May 16 13:27:22 2012 -0700"
      },
      "message": "sync: Add synchronization framework\n\nnot run through checkpatch yet.\n\nChange-Id: I209f9db2824e0313f467f11ab09e5f54f0a4a6b5\nSigned-off-by: Erik Gilling \u003ckonkers@android.com\u003e\n"
    },
    {
      "commit": "ec0b571c19ac62ab0bb80d373a3d4922a48b4b75",
      "tree": "10c597f5227c969c3f2b909fbeb29725a0c5c6e8",
      "parents": [
        "7bb8b65407a519d3a90dd8cecdd1ccd10ee0c6cc",
        "36be50515fe2aef61533b516fa2576a2c7fe7664"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon May 14 16:41:02 2012 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon May 14 16:41:02 2012 -0700"
      },
      "message": "Merge commit \u0027v3.4-rc7\u0027 into android-3.4\n"
    },
    {
      "commit": "6560ffd1ccd688152393dc7c35dbdcc33140633b",
      "tree": "1b97199d8e97eedcb74904429dfc3793e2cfe557",
      "parents": [
        "d48b97b403d23f6df0b990cee652bdf9a52337a3"
      ],
      "author": {
        "name": "Laxman Dewangan",
        "email": "ldewangan@nvidia.com",
        "time": "Wed May 09 17:43:12 2012 +0530"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed May 09 15:44:11 2012 +0100"
      },
      "message": "regmap: fix possible memory corruption in regmap_bulk_read()\n\nThe function regmap_bulk_read() calls the regmap_read() for\neach register if set of register has volatile and cache is\nenabled. In this case, last few register read makes the memory\ncorruption if the register size is not the size of unsigned int.\nThe regam_read() takes argument as unsigned int for returning\nvalue and it update the value as\n\t*val \u003d map-\u003eformat.parse_val(map-\u003ework_buf);\nThis causes complete 4 bytes (size of unsigned int) to get written.\nNow if client pass the memory pointer for value which is equal to the\nrequired size of register count in regmap_bulk_read() then last few\nregister read actually update the memory beyond passed pointer size.\n\nAvoid this by using local variable for read and then do memcpy()\nfor actual byte copy to passed pointer based on register size.\n\nI allocated one pointer ptr and take first 16 bytes dump of that\npointer then call regmap_bulk_read() with pointer which is just\non top of this allocated pointer and register count of 128. Here\nregister size is 1 byte.\nThe memory trace of last 5 register read are as follows:\n\n[    5.438589] regmap_bulk_read after regamp_read() for register 122\n[    5.447421] 0xef993c20 0xef993c00 0x00000000 0x00000001\n[    5.467535] regmap_bulk_read after regamp_read() for register 123\n[    5.476374] 0xef993c20 0xef993c00 0x00000000 0x00000001\n[    5.496425] regmap_bulk_read after regamp_read() for register 124\n[    5.505260] 0xef993c20 0xef993c00 0x00000000 0x00000001\n[    5.525372] regmap_bulk_read after regamp_read() for register 125\n[    5.534205] 0xef993c00 0xef993c00 0x00000000 0x00000001\n[    5.554258] regmap_bulk_read after regamp_read() for register 126\n[    5.563100] 0xef990000 0xef993c00 0x00000000 0x00000001\n[    5.554258] regmap_bulk_read after regamp_read() for register 127\n[    5.587108] 0xef000000 0xef993c00 0x00000000 0x00000001\n\nHere it is observed that the memory content at first word started changing\non last 3 regmap_read() and so corruption happened.\n\nSigned-off-by: Laxman Dewangan \u003cldewangan@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "6d9076fe46bcba71986a25cf357e71a4d83958c1",
      "tree": "053bebd945bed02d61c8b92aa3b02bf45d37d4a9",
      "parents": [
        "abe3c9c88f9cd1cbc5d3a3eec4bdbba6e3ce2107"
      ],
      "author": {
        "name": "Jeff Boody",
        "email": "jboody@codeaurora.org",
        "time": "Thu Apr 26 11:12:44 2012 -0600"
      },
      "committer": {
        "name": "Jeff Boody",
        "email": "jboody@codeaurora.org",
        "time": "Tue May 08 13:58:54 2012 -0600"
      },
      "message": "base: genlock: allow synchronization with a single gralloc handle\n\nIn order to support synchronization in a process with a single\ngralloc handle we require the ability to write lock a buffer\nwhile it is already read locked by the same handle. This change\nextends the concept of an exclusive write lock or recursive read\nlocks to a genlock handle (rather than the genlock lock).\nGenlock cannot provide deadlock protection because the same\nhandle can be used simultaneously by a producer and consumer.\nIn practice an error will still be generated when the timeout\nexpires.\n\nCRs-fixed: 356263\nChange-Id: I322e7fadc8b43287f53b211242b176d3de731db2\nSigned-off-by: Jeff Boody \u003cjboody@codeaurora.org\u003e\n"
    },
    {
      "commit": "09be5f323a6c1dc4ba4fcf2394c415aa8dd4fb09",
      "tree": "cd130c21bfd5e7eaf40b6ecfed1892479be823e7",
      "parents": [
        "48c02c90504956d17f522699eec142336f3960a7"
      ],
      "author": {
        "name": "KyongHo Cho",
        "email": "pullip.cho@samsung.com",
        "time": "Fri Dec 16 21:38:25 2011 +0900"
      },
      "committer": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Thu May 03 17:52:24 2012 -0700"
      },
      "message": "iommu: Initialize domain-\u003ehandler in iommu_domain_alloc()\n\nSince it is not guaranteed that an iommu driver initializes in its\ndomain_init() function, it must be initialized with NULL to prevent\ncalling a function in an arbitrary location when iommu fault occurred.\n\nChange-Id: I1001bc6382cfe1e6cf8f311a822380f4151f8391\nSigned-off-by: KyongHo Cho \u003cpullip.cho@samsung.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n[stepanm@codeaurora.org: rebased to before the file moved]\nSigned-off-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\n"
    },
    {
      "commit": "48c02c90504956d17f522699eec142336f3960a7",
      "tree": "c442c889af78e94f7cbd0ea97e446248d8b761e4",
      "parents": [
        "a4d334f8137ca53f6fc3b48abf034f6a695a26f0"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Tue Sep 27 07:36:40 2011 -0400"
      },
      "committer": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Thu May 03 17:52:18 2012 -0700"
      },
      "message": "iommu/core: let drivers know if an iommu fault handler isn\u0027t installed\n\nMake report_iommu_fault() return -ENOSYS whenever an iommu fault\nhandler isn\u0027t installed, so IOMMU drivers can then do their own\nplatform-specific default behavior if they wanted.\n\nFault handlers can still return -ENOSYS in case they want to elicit the\ndefault behavior of the IOMMU drivers.\n\nChange-Id: I4cb7d6566f9d0f4329c37e890fee6c113edeb981\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\n"
    },
    {
      "commit": "a4d334f8137ca53f6fc3b48abf034f6a695a26f0",
      "tree": "1263db267a8ef9dda7d2e5ef07db779f6d214aa9",
      "parents": [
        "a1c6df3c52c09ed7c49e5c0d3d4f88f6f54c01db"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Mon Sep 26 09:11:46 2011 -0400"
      },
      "committer": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Thu May 03 17:52:10 2012 -0700"
      },
      "message": "iommu/core: export iommu_set_fault_handler()\n\ncommit 4f3f8d9 \"iommu/core: Add fault reporting mechanism\" added\nthe public iommu_set_fault_handler() symbol but forgot to export it.\n\nFix that.\n\nChange-Id: Iabca2af05bd75fec899d668ee2338a15df8aa503\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\n"
    },
    {
      "commit": "a1c6df3c52c09ed7c49e5c0d3d4f88f6f54c01db",
      "tree": "79145f63bd8d04512da69395a71fe5f4d267de31",
      "parents": [
        "e2528fb0836d5606ed8e5de52aba7ed7debf1ac8"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Tue Sep 13 15:25:23 2011 -0400"
      },
      "committer": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Thu May 03 17:51:44 2012 -0700"
      },
      "message": "iommu/core: Add fault reporting mechanism\n\nAdd iommu fault report mechanism to the IOMMU API, so implementations\ncould report about mmu faults (translation errors, hardware errors,\netc..).\n\nFault reports can be used in several ways:\n- mere logging\n- reset the device that accessed the faulting address (may be necessary\n  in case the device is a remote processor for example)\n- implement dynamic PTE/TLB loading\n\nA dedicated iommu_set_fault_handler() API has been added to allow\nusers, who are interested to receive such reports, to provide\ntheir handler.\n\nChange-Id: Id049671b7a0df27476c3cad451c2505e9b260ab6\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\n"
    },
    {
      "commit": "d41707f4211d9b6e40e4a972035d90d0db38a988",
      "tree": "71ae4679c14a6040be41367be0bd905321b7d690",
      "parents": [
        "565db913dde12d7f1d3b11f388b47cc63e1bb38e",
        "28976a80e961f491e51c1cb627311efc4981b69a"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Sat Apr 21 22:48:40 2012 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Sat Apr 21 22:48:40 2012 -0700"
      },
      "message": "Merge \"DMM: Fix for movable bytes near end of address space\" into msm-3.0"
    },
    {
      "commit": "ab2965eefef95a2eecfd54c12b0eb243162862e9",
      "tree": "c947fdc158e144c2d060486b65d10ee67d254039",
      "parents": [
        "a0ec4361e4539e30cf1c5de7ddfd2dadcd8e1595",
        "e816b57a337ea3b755de72bec38c10c864f23015"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 19 14:42:22 2012 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 19 14:42:22 2012 -0700"
      },
      "message": "Merge commit \u0027v3.4-rc3\u0027 into android-3.4\n\nConflicts:\n\tdrivers/staging/android/lowmemorykiller.c\n\nChange-Id: Ia3ffcfc702e28c4fce0e91b363f4afd5f1c40306\n"
    },
    {
      "commit": "07f43dd2298d66ae907d8ab2b2b1fe07a6ab0522",
      "tree": "d054775c797050d67c6fb72e7b05c791c4e838a2",
      "parents": [
        "da04ab049d90160f687947338ae22849106d408b"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Dec 06 23:24:52 2011 +0100"
      },
      "committer": {
        "name": "Jack Pham",
        "email": "jackp@codeaurora.org",
        "time": "Thu Apr 19 14:11:12 2012 -0700"
      },
      "message": "PM / Driver core: leave runtime PM enabled during system shutdown\n\nDisabling all runtime PM during system shutdown turns out not to be a\ngood idea, because some devices may need to be woken up from a\nlow-power state at that time.\n\nThe whole point of disabling runtime PM for system shutdown was to\nprevent untimely runtime-suspend method calls.  This patch (as1504)\naccomplishes the same result by incrementing the usage count for each\ndevice and waiting for ongoing runtime-PM callbacks to finish.  This\nis what we already do during system suspend and hibernation, which\nmakes sense since the shutdown method is pretty much a legacy analog\nof the pm-\u003epoweroff method.\n\nThis fixes a recent regression on some OMAP systems introduced by\ncommit af8db1508f2c9f3b6e633e2d2d906c6557c617f9 (PM / driver core:\ndisable device\u0027s runtime PM during shutdown).\n\nReported-and-tested-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nChange-Id: I08f65c2c656fbdf651b3da7391522a221d944944\nCRs-fixed: 352703\nSigned-off-by: Jack Pham \u003cjackp@codeaurora.org\u003e\n"
    },
    {
      "commit": "28976a80e961f491e51c1cb627311efc4981b69a",
      "tree": "be065d16c3a99c8666bc908d8806417c217a04de",
      "parents": [
        "2e9581fb01d6e7ae16d2e3d0547bb378d7f562a9"
      ],
      "author": {
        "name": "Hanumant Singh",
        "email": "hanumant@codeaurora.org",
        "time": "Wed Apr 18 14:14:21 2012 -0700"
      },
      "committer": {
        "name": "Hanumant Singh",
        "email": "hanumant@codeaurora.org",
        "time": "Wed Apr 18 14:14:21 2012 -0700"
      },
      "message": "DMM: Fix for movable bytes near end of address space\n\nTo prevent overflow near 4GB memory address, the rounding down of\nmemory addresses needs to be propagated to the memory hotplug logic.\nChecking if a given pfn is part of physical ram allows us to do this.\nAlso while walking through system ram, we need to take care of\noverflow at high memory address.\n\nChange-Id: Id962cf93906888783a807fe89f2be4ba91b2c5d6\nSigned-off-by: Hanumant Singh \u003chanumant@codeaurora.org\u003e\n"
    },
    {
      "commit": "d292ce796e304d57c940d3e76434963b05ff329b",
      "tree": "ab45a9762beaa48285c195c26063b6a37f4830b8",
      "parents": [
        "de86e6482897db0006151ae9154f181e75f5ab2c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 06 10:51:58 2011 +0200"
      },
      "committer": {
        "name": "Jack Pham",
        "email": "jackp@codeaurora.org",
        "time": "Mon Apr 16 22:05:41 2012 -0700"
      },
      "message": "PM: Limit race conditions between runtime PM and system sleep (v2)\n\nOne of the roles of the PM core is to prevent different PM callbacks\nexecuted for the same device object from racing with each other.\nUnfortunately, after commit e8665002477f0278f84f898145b1f141ba26ee26\n(PM: Allow pm_runtime_suspend() to succeed during system suspend)\nruntime PM callbacks may be executed concurrently with system\nsuspend/resume callbacks for the same device.\n\nThe main reason for commit e8665002477f0278f84f898145b1f141ba26ee26\nwas that some subsystems and device drivers wanted to use runtime PM\nhelpers, pm_runtime_suspend() and pm_runtime_put_sync() in\nparticular, for carrying out the suspend of devices in their\n.suspend() callbacks.  However, as it\u0027s been determined recently,\nthere are multiple reasons not to do so, inlcuding:\n\n * The caller really doesn\u0027t control the runtime PM usage counters,\n   because user space can access them through sysfs and effectively\n   block runtime PM.  That means using pm_runtime_suspend() or\n   pm_runtime_get_sync() to suspend devices during system suspend\n   may or may not work.\n\n * If a driver calls pm_runtime_suspend() from its .suspend()\n   callback, it causes the subsystem\u0027s .runtime_suspend() callback to\n   be executed, which leads to the call sequence:\n\n   subsys-\u003esuspend(dev)\n      driver-\u003esuspend(dev)\n         pm_runtime_suspend(dev)\n            subsys-\u003eruntime_suspend(dev)\n\n   recursive from the subsystem\u0027s point of view.  For some subsystems\n   that may actually work (e.g. the platform bus type), but for some\n   it will fail in a rather spectacular fashion (e.g. PCI).  In each\n   case it means a layering violation.\n\n * Both the subsystem and the driver can provide .suspend_noirq()\n   callbacks for system suspend that can do whatever the\n   .runtime_suspend() callbacks do just fine, so it really isn\u0027t\n   necessary to call pm_runtime_suspend() during system suspend.\n\n * The runtime PM\u0027s handling of wakeup devices is usually different\n   from the system suspend\u0027s one, so .runtime_suspend() may simply be\n   inappropriate for system suspend.\n\n * System suspend is supposed to work even if CONFIG_PM_RUNTIME is\n   unset.\n\n * The runtime PM workqueue is frozen before system suspend, so if\n   whatever the driver is going to do during system suspend depends\n   on it, that simply won\u0027t work.\n\nStill, there is a good reason to allow pm_runtime_resume() to\nsucceed during system suspend and resume (for instance, some\nsubsystems and device drivers may legitimately use it to ensure that\ntheir devices are in full-power states before suspending them).\nMoreover, there is no reason to prevent runtime PM callbacks from\nbeing executed in parallel with the system suspend/resume .prepare()\nand .complete() callbacks and the code removed by commit\ne8665002477f0278f84f898145b1f141ba26ee26 went too far in this\nrespect.  On the other hand, runtime PM callbacks, including\n.runtime_resume(), must not be executed during system suspend\u0027s\n\"late\" stage of suspending devices and during system resume\u0027s \"early\"\ndevice resume stage.\n\nTaking all of the above into consideration, make the PM core\nacquire a runtime PM reference to every device and resume it if\nthere\u0027s a runtime PM resume request pending right before executing\nthe subsystem-level .suspend() callback for it.  Make the PM core\ndrop references to all devices right after executing the\nsubsystem-level .resume() callbacks for them.  Additionally,\nmake the PM core disable the runtime PM framework for all devices\nduring system suspend, after executing the subsystem-level .suspend()\ncallbacks for them, and enable the runtime PM framework for all\ndevices during system resume, right before executing the\nsubsystem-level .resume() callbacks for them.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Kevin Hilman \u003ckhilman@ti.com\u003e\n[jackp@codeaurora.org: resolved trivial merge conflicts]\nSigned-off-by: Jack Pham \u003cjackp@codeaurora.org\u003e\nChange-Id: I408fbfe1544457ca65fc8b04d3a116cd7098fdfa\n"
    },
    {
      "commit": "24e887ca2e73f5f540ba255af813f7c5b34ee00d",
      "tree": "518f1e1278d1848c0d68876f26bae6216ffb4820",
      "parents": [
        "3cd338619a4a9d78a7ba082b70467d0d35347cee"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Mar 05 08:47:41 2012 -0700"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Mon Apr 09 16:20:30 2012 -0700"
      },
      "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\nChange-Id: Iaf6bb62f70c2d82c6cccbe468bc5007b1989af93\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\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "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": "9109a22de417cce528f15ae2e51ebb3d826f1bf5",
      "tree": "31668612bbb2430986dfc38d2556506272275992",
      "parents": [
        "71b54d4483ea92b333613d376a95509668e36282"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Thu Aug 13 09:40:42 2009 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Apr 09 13:53:08 2012 -0700"
      },
      "message": "drivers: power: Add watchdog timer to catch drivers which lockup during suspend.\n\nRather than hard-lock the kernel, dump the suspend thread stack and\nBUG() when a driver takes too long to suspend.  The timeout is set\nto 12 seconds to be longer than the usbhid 10 second timeout.\n\nExclude from the watchdog the time spent waiting for children that\nare resumed asynchronously and time every device, whether or not they\nresumed synchronously.\n\nChange-Id: Ifd211c06b104860c2fee6eecfe0d61774aa4508a\nOriginal-author: San Mehat \u003csan@google.com\u003e\nSigned-off-by: Benoit Goby \u003cbenoit@android.com\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": "a76e99abc558aed633ba28ff61c5328116292bf3",
      "tree": "60f7677f0baafa00825accc1214839246b3e78dd",
      "parents": [
        "a54734678ff9cb97938b9f7648547174f3b118e4",
        "1d05f993784973189395051cc711fdd6dd5eb389"
      ],
      "author": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Fri Mar 30 00:09:34 2012 -0700"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Fri Mar 30 00:09:34 2012 -0700"
      },
      "message": "Merge branch \u0027Linux 3.0.21\u0027 into msm-3.0\n\nMerge Upstream\u0027s stable 3.0.21 branch into msm-3.0\nThis consists 814 commits and some merge conflicts.\n\nThe merge conflicts are because of some local changes to\nmsm-3.0 as well as some conflicts between google\u0027s tree and\nthe upstream tree.\n\nConflicts:\n\tarch/arm/kernel/head.S\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n\tdrivers/mmc/core/core.c\n\tdrivers/tty/serial/serial_core.c\n\tdrivers/usb/host/ehci-hub.c\n\tdrivers/usb/serial/qcserial.c\n\tfs/namespace.c\n\tfs/proc/base.c\n\nChange-Id: I62e2edbe213f84915e27f8cd6e4f6ce23db22a21\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.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": "be669bc92358653a46c63f2352e6d981f9ed3bdf",
      "tree": "e56e592450d91b59d09dfd5079ad5fc0e9a1a230",
      "parents": [
        "de0c4ece40dce378c40563db0604351d33c63dcd"
      ],
      "author": {
        "name": "Jordan Crouse",
        "email": "jcrouse@codeaurora.org",
        "time": "Tue Mar 20 14:09:29 2012 -0600"
      },
      "committer": {
        "name": "Jordan Crouse",
        "email": "jcrouse@codeaurora.org",
        "time": "Tue Mar 20 16:10:36 2012 -0600"
      },
      "message": "base: genlock: Use a signed long for the result from wait_timeout\n\ninterruptible_wait_timeout returns a signed long, so make sure that\nwe use a signed long to hold the result. Using an unsigned value would\nhorribly misinterpet an error such as -ERESTARTSYS.\n\nCRs-Fixed: 341347\nChange-Id: Ic0dedbadff2dbe404e68a2a78f6282b5976d05c1\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\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"
    }
  ],
  "next": "f0c2319f9f196726ebe4d7508fd8fbd804988db3"
}
