)]}'
{
  "log": [
    {
      "commit": "fdaf9c4b22247a6cc6cda9459be3e52764c14d95",
      "tree": "c567736f1f47f91003a658b11075e974cee4321b",
      "parents": [
        "cbb796ccd8c33c50249b876d9773dfa8e67d39cb"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Wed Apr 25 20:50:52 2012 +0200"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Fri May 11 12:04:38 2012 +0530"
      },
      "message": "dmaengine: Use dma_sg_len(sg) instead of sg-\u003elength\n\nsg-\u003elength may or may not contain the length of the dma region to transfer,\ndepending on the architecture - dma_sg_len(sg) always will though. For the\narchitectures which use the drivers modified by this patch it probably is the\ncase that sg-\u003elength contains the dma transfer length. But to be consistent and\nfuture proof change them to use dma_sg_len.\n\nTo quote Russel King:\n\tsg-\u003elength is meaningless to something performing DMA.\n\n\tIn cases where sg_dma_len(sg) and sg-\u003elength are the same storage, then\n\tthere\u0027s no problem. But scatterlists _can_ (and one some architectures) do\n\tsplit them - especially when you have an IOMMU which can allow you to\n\tcombine a scatterlist into fewer entries.\n\n\tSo, anything using sg-\u003elength for the size of a scatterlist\u0027s DMA transfer\n\t_after_ a call to dma_map_sg() is almost certainly buggy.\n\nThe patch has been generated using the following coccinelle patch:\n\u003csmpl\u003e\n@@\nstruct scatterlist *sg;\nexpression X;\n@@\n-sg[X].length\n+sg_dma_len(\u0026sg[X])\n@@\nstruct scatterlist *sg;\n@@\n-sg-\u003elength\n+sg_dma_len(sg)\n\u003c/smpl\u003e\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "cbb796ccd8c33c50249b876d9773dfa8e67d39cb",
      "tree": "e1384d10cf0cf86328a69c4f9bf6931dbe9250fe",
      "parents": [
        "12366ad91adb41a193f93b3b0f2829ea06df1773"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Wed Apr 25 20:50:51 2012 +0200"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Fri May 11 12:04:38 2012 +0530"
      },
      "message": "dmaengine: Use sg_dma_address instead of sg_phys\n\ndmaengine drivers should always use sg_dma_address instead of sg_phys to get the\naddresses for the transfer from a sg element.\n\nTo quote Russel King:\n\tsg_phys(sg) of course has nothing to do with DMA addresses. It\u0027s the\n\tphysical address _to the CPU_ of the memory associated with the scatterlist\n\tentry. That may, or may not have the same value for the DMA engine,\n\tparticularly if IOMMUs are involved.\n\n\tAnd if these drivers are used on ARM, they must be fixed, sooner rather\n\tthan later.  There\u0027s patches in the works which will mean we will end up\n\twith IOMMU support in the DMA mapping later, which means everything I\u0027ve\n\tsaid above will become reality.\n\nThe patch has been generated using the following coccinelle patch:\n\u003csmpl\u003e\n@@\nstruct scatterlist *sg;\n@@\n-sg_phys(sg)\n+sg_dma_address(sg)\n\u003c/smpl\u003e\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "56cbb3dd48623c01e7c589d29da743d486c95a58",
      "tree": "66626f63f4effa03d8d5b14f0ea40b834e4195ae",
      "parents": [
        "affa115ed365d646ad1a8cc7d2d063b8181cce37",
        "88c08a3fba9954ce0ec3e1eab07c498a419ad7e3"
      ],
      "author": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Wed Apr 25 15:28:54 2012 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Wed Apr 25 15:28:54 2012 +0530"
      },
      "message": "Merge branch \u0027fixes\u0027 into next\n"
    },
    {
      "commit": "affa115ed365d646ad1a8cc7d2d063b8181cce37",
      "tree": "df3d7caa7a0e42228312d6974977e1903306f891",
      "parents": [
        "d29bf01941795891828bf671f74c3a4f6fc3517f"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Thu Apr 12 09:01:49 2012 +0200"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Wed Apr 25 15:21:47 2012 +0530"
      },
      "message": "dma/amba-pl08x: add support for the Nomadik variant\n\nThe Nomadik PL080 variant has some extra protection bits that\nmay be set, so we need to check these bits to see if the\nchannels are actually available for the DMAengine to use.\n\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Alim Akhtar \u003calim.akhtar@gmail.com\u003e\nCc: Alessandro Rubini \u003crubini@gnudd.com\u003e\nReviewed-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "88c08a3fba9954ce0ec3e1eab07c498a419ad7e3",
      "tree": "3e70ef723455e67c700c22abd8de40079e51093b",
      "parents": [
        "c847382838ca503b6c55fb599160146221a2c141"
      ],
      "author": {
        "name": "Davide Ciminaghi",
        "email": "ciminaghi@gnudd.com",
        "time": "Thu Apr 19 12:20:24 2012 +0200"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Wed Apr 25 15:10:57 2012 +0530"
      },
      "message": "dmaengine/amba-pl08x : reset phychan_hold on terminate all\n\nWhen a client calls pl08x_control with DMA_TERMINATE_ALL, it is correct\nto terminate and release the phy channel currently in use (if one is in use),\nbut the phychan_hold counter must also be reset (otherwise it could get\ntrapped in an unbalanced state).\n\nSigned-off-by: Davide Ciminaghi \u003cciminaghi@gnudd.com\u003e\nReviewed-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "d29bf01941795891828bf671f74c3a4f6fc3517f",
      "tree": "88a39de4092bd68ae648a8d585261376af31a9f0",
      "parents": [
        "7e426da823fc7cd428b82ff2cf3615da24c73352"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Mon Apr 09 22:53:21 2012 +0200"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Mon Apr 23 18:23:55 2012 +0530"
      },
      "message": "dma/amba-pl08x: check for terminal count status only\n\nFor some reason I can\u0027t figure out we\u0027re reading the PL080_INT_STATUS\nregister instead of PL080_TC_STATUS when checking for the terminal\ncount. The PL080_INT_STATUS is a logical OR between the error and\nterminal count status register and may not report what we want it\nto, especially if there is an error and a terminal count at the same\ntime and the former is not lowered in time for the check in the TC\nregister. Make sure we read what we\u0027re actually interested in.\n\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nCc: Alim Akhtar \u003calim.akhtar@gmail.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "185ecb5f4fd43911c35956d4cc7d94a1da30417f",
      "tree": "ebbdb7f15157d19d8af892cd7948d93947d09ec2",
      "parents": [
        "16052827d98fbc13c31ebad560af4bd53e2b4dd5"
      ],
      "author": {
        "name": "Alexandre Bounine",
        "email": "alexandre.bounine@idt.com",
        "time": "Thu Mar 08 15:35:13 2012 -0500"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Wed Mar 21 19:20:23 2012 +0530"
      },
      "message": "dmaengine: add context parameter to prep_slave_sg and prep_dma_cyclic\n\nAdd context parameter to device_prep_slave_sg() and device_prep_dma_cyclic()\ninterfaces to allow passing client/target specific information associated\nwith the data transfer.\nModify all affected DMA engine drivers.\n\nSigned-off-by: Alexandre Bounine \u003calexandre.bounine@idt.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Felipe Balbi \u003cbalbi@ti.com\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "d3ee98cdcd6198ea1cf75c603178acc8a805b69b",
      "tree": "721f252d07d5e0596fa9b58a7c876dfd75823d0a",
      "parents": [
        "96a2af41c78b1fbb1f567a3486bdc63f7b31c5fd"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Tue Mar 06 22:35:47 2012 +0000"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Tue Mar 13 11:37:22 2012 +0530"
      },
      "message": "dmaengine: consolidate initialization of cookies\n\nProvide a common function to initialize a channels cookie values.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nTested-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n[imx-sdma.c \u0026 mxs-dma.c]\nTested-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "96a2af41c78b1fbb1f567a3486bdc63f7b31c5fd",
      "tree": "d977c6b2ff1a23dfd523e70315ebe976a3f3f079",
      "parents": [
        "f7fbce07c6ce26a25b4e0cb5f241c361fde87901"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Tue Mar 06 22:35:27 2012 +0000"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Tue Mar 13 11:37:14 2012 +0530"
      },
      "message": "dmaengine: consolidate tx_status functions\n\nNow that we have the completed cookie in the dma_chan structure, we\ncan consolidate the tx_status functions by providing a function to set\nthe txstate structure and returning the DMA status.  We also provide\na separate helper to set the residue for cookies which are still in\nprogress.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nTested-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n[imx-sdma.c \u0026 mxs-dma.c]\nTested-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "f7fbce07c6ce26a25b4e0cb5f241c361fde87901",
      "tree": "66e6321b5ef49e18479ffeb1ed4fd5169e120f97",
      "parents": [
        "884485e1f12dcd39390f042e772cdbefc9ebb750"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Tue Mar 06 22:35:07 2012 +0000"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Tue Mar 13 11:37:01 2012 +0530"
      },
      "message": "dmaengine: provide a common function for completing a dma descriptor\n\nProvide a common function to do the cookie mechanics for completing\na DMA descriptor.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nTested-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n[imx-sdma.c \u0026 mxs-dma.c]\nTested-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "884485e1f12dcd39390f042e772cdbefc9ebb750",
      "tree": "a35fccb601c48ae1ea839aa6d62e4f102f7b66c3",
      "parents": [
        "d2ebfb335b0426deb1a4fb14e4e926d81ecd8235"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Tue Mar 06 22:34:46 2012 +0000"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Tue Mar 13 11:36:52 2012 +0530"
      },
      "message": "dmaengine: consolidate assignment of DMA cookies\n\nEveryone deals with assigning DMA cookies in the same way (it\u0027s part of\nthe API so they should be), so lets consolidate the common code into a\nhelper function to avoid this duplication.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nTested-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n[imx-sdma.c \u0026 mxs-dma.c]\nTested-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "d2ebfb335b0426deb1a4fb14e4e926d81ecd8235",
      "tree": "222c90df3fe29a08de668d862ed25d203404c315",
      "parents": [
        "4d4e58de32a192fea65ab84509d17d199bd291c8"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Tue Mar 06 22:34:26 2012 +0000"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Tue Mar 13 11:36:44 2012 +0530"
      },
      "message": "dmaengine: add private header file\n\nAdd a local private header file to contain definitions and declarations\nwhich should only be used by DMA engine drivers.\n\nWe also fix linux/dmaengine.h to use LINUX_DMAENGINE_H to guard against\nmultiple inclusion.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nTested-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n[imx-sdma.c \u0026 mxs-dma.c]\nTested-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "4d4e58de32a192fea65ab84509d17d199bd291c8",
      "tree": "be35531778c9cc6bee73beb94d07e176a6f3599d",
      "parents": [
        "08714f60b0fc6ea3a060b69b32e77139f14e6045"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Tue Mar 06 22:34:06 2012 +0000"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Tue Mar 13 11:36:06 2012 +0530"
      },
      "message": "dmaengine: move last completed cookie into generic dma_chan structure\n\nEvery DMA engine implementation declares a last completed dma cookie\nin their private dma channel structures.  This is pointless, and\nforces driver specific code.  Move this out into the common dma_chan\nstructure.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nTested-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n[imx-sdma.c \u0026 mxs-dma.c]\nTested-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "8c9f7aa316f547f70d270a08d1212f958721c071",
      "tree": "84ca56d95dc87195042dcd6e6d3b255536d6edd0",
      "parents": [
        "258aea76f552cc755da92e7e823abbb85e021514"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Wed Feb 01 16:12:20 2012 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Wed Feb 22 18:15:37 2012 +0530"
      },
      "message": "dmaengine/amba-pl08x: Take flow controller info from DMA_SLAVE_CONFIG\n\nFlow controller information is passed now from DMA_SLAVE_CONFIG option. This\npatch makes changes in pl08x driver to use device_fc from it instead of platform\ndata.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "880db3ff17a973bc0e9847299d1fd9cdf4568ee1",
      "tree": "c27541db3d18b22877d4c7427f6abb23f7a811df",
      "parents": [
        "7bec78e0a82418021dc2e63dea4d2b749953086d"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "Julia.Lawall@lip6.fr",
        "time": "Thu Jan 12 22:49:29 2012 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Tue Jan 31 08:55:08 2012 +0530"
      },
      "message": "drivers/dma/amba-pl08x.c: adjust double test\n\nRewrite a duplicated test to test the correct value\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression E;\n@@\n\n(\n* E\n  || ... || E\n|\n* E\n  \u0026\u0026 ... \u0026\u0026 E\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cJulia.Lawall@lip6.fr\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "57f2685c16fa8e0cb86e4bc7c8ac33bfed943819",
      "tree": "96a42fe632687c8486c250c4805bf1d4c9c34d19",
      "parents": [
        "488a9d018256dc9f29e041c0360445b6d25eea9a",
        "e08b881a69d638175bfa99b5af4d72b731633ea7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 18:40:24 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 18:40:24 2012 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.infradead.org/users/vkoul/slave-dma\n\n* \u0027next\u0027 of git://git.infradead.org/users/vkoul/slave-dma: (53 commits)\n  ARM: mach-shmobile: specify CHCLR registers on SH7372\n  dma: shdma: fix runtime PM: clear channel buffers on reset\n  dma/imx-sdma: save irq flags when use spin_lock in sdma_tx_submit\n  dmaengine/ste_dma40: clear LNK on channel startup\n  dmaengine: intel_mid_dma: remove legacy pm interface\n  ASoC: mxs: correct \u0027direction\u0027 of device_prep_dma_cyclic\n  dmaengine: intel_mid_dma: error path fix\n  dmaengine: intel_mid_dma: locking and freeing fixes\n  mtd: gpmi-nand: move to dma_transfer_direction\n  mtd: fix compile error for gpmi-nand\n  mmc: mxs-mmc: fix the dma_transfer_direction migration\n  dmaengine: add DMA_TRANS_NONE to dma_transfer_direction\n  dma: mxs-dma: Don\u0027t use CLKGATE bits in CTRL0 to disable DMA channels\n  dma: mxs-dma: make mxs_dma_prep_slave_sg() multi user safe\n  dma: mxs-dma: Always leave mxs_dma_init() with the clock disabled.\n  dma: mxs-dma: fix a typo in comment\n  DMA: PL330: Remove pm_runtime_xxx calls from pl330 probe/remove\n  video i.MX IPU: Fix display connections\n  i.MX IPU DMA: Fix wrong burstsize settings\n  dmaengine/ste_dma40: allow fixed physical channel\n  ...\n\nFix up conflicts in drivers/dma/{Kconfig,mxs-dma.c,pl330.c}\n\nThe conflicts looked pretty trivial, but I\u0027ll ask people to verify them.\n"
    },
    {
      "commit": "8f0d30f9ee333f4fb3458a9a33f7ead5269ea8f3",
      "tree": "5c9b1212de19598d7e2653491cc5decc4df596d6",
      "parents": [
        "c94e910535be72f0c6ac0c69e6acd8d44414e80d"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Tue Nov 29 12:56:50 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Mon Dec 05 08:36:01 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Config ccfg and increment phychan_hold if phychan is true\n\nCurrently, if plchan-\u003ephychan is true, we return immediately from\nprep_phy_chan(). We must configure txd-\u003eccfg and increment phychan_hold before\nreturning. Otherwise, request line number wouldn\u0027t be configured in this txd.\n\nReported-by: Rajeev Kumar \u003crajeev-dlh.kumar@st.com\u003e\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "037566df2a9274cec49cab131059e1bac538be08",
      "tree": "29de8aadef95b6d3c8a94c5db8284645a0cdbda1",
      "parents": [
        "4e3f3d53b8b5d597e36c075e01014e9019a44d55"
      ],
      "author": {
        "name": "Dave Martin",
        "email": "dave.martin@linaro.org",
        "time": "Wed Oct 05 15:15:20 2011 +0100"
      },
      "committer": {
        "name": "Dave Martin",
        "email": "dave.martin@linaro.org",
        "time": "Tue Nov 22 10:58:30 2011 +0000"
      },
      "message": "dmaengine: pl08x: Enable module alias autogeneration for AMBA drivers\n\nSigned-off-by: Dave Martin \u003cdave.martin@linaro.org\u003e\nAcked-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "db8196df4bb6f117caa163aa73b0f16fd62290bd",
      "tree": "b86531031482037d9b31ad57479f2f7091020957",
      "parents": [
        "49920bc66984a512f4bcc7735a61642cd0e4d6f2"
      ],
      "author": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Thu Oct 13 22:34:23 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Thu Oct 27 20:53:43 2011 +0530"
      },
      "message": "dmaengine: move drivers to dma_transfer_direction\n\nfixup usage of dma direction by introducing dma_transfer_direction,\nthis patch moves dma/drivers/* to use new enum\n\nCc: Jassi Brar \u003cjaswinder.singh@linaro.org\u003e\nCc: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nCc: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nCc: Nicolas Ferre \u003cnicolas.ferre@atmel.com\u003e\nCc: Mika Westerberg \u003cmika.westerberg@iki.fi\u003e\nCc: H Hartley Sweeten \u003chartleys@visionengravers.com\u003e\nCc: Li Yang \u003cleoli@freescale.com\u003e\nCc: Zhang Wei \u003czw@zh-kernel.org\u003e\nCc: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nCc: Guennadi Liakhovetski \u003cg.liakhovetski@gmx.de\u003e\nCc: Shawn Guo \u003cshawn.guo@freescale.com\u003e\nCc: Yong Wang \u003cyong.y.wang@intel.com\u003e\nCc: Tomoya MORINAGA \u003ctomoya-linux@dsn.lapis-semi.com\u003e\nCc: Boojin Kim \u003cboojin.kim@samsung.com\u003e\nCc: Barry Song \u003cBaohua.Song@csr.com\u003e\nAcked-by: Mika Westerberg \u003cmika.westerberg@iki.fi\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nAcked-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Nicolas Ferre \u003cnicolas.ferre@atmel.com\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@linux.intel.com\u003e\n"
    },
    {
      "commit": "c12056466d76cdff884402d15f077dd0586e5215",
      "tree": "b166b5a86426519859d20978445b4e3390317d8a",
      "parents": [
        "b7f69d9d4283cfbbf7458962cf9bdba6463b831d"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:44 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Mon Sep 19 15:13:16 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Check txd-\u003ellis_va before freeing dma_pool\n\nIn pl08x_free_txd(), check if pool is allocated successfully before freeing it.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "b7f69d9d4283cfbbf7458962cf9bdba6463b831d",
      "tree": "76e29e885d467486922f3b2fbd2c480a7b5a1b8f",
      "parents": [
        "937bb6e4c676fecbfbc1939b942241c3f27bf5d8"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:43 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Mon Sep 19 15:13:06 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Add support for sg len greater than one for slave transfers\n\nUntill now, sg_len greater than one is not supported. This patch adds support to\ndo that.\n\nNote: Still, if peripheral is flow controller, sg_len can\u0027t be greater that one.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "7703eac96abd119dcfbb04f287a5127462d18269",
      "tree": "75de31e4ddfe8f1899b7547d40e84be6d5b4face",
      "parents": [
        "503473ac2a3952e6af254b0769fe788a67d797e5"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Wed Aug 31 09:34:35 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Mon Sep 05 18:57:38 2011 +0530"
      },
      "message": "dmaengine: amba-pl08x: make filter check that the channel is owned by pl08x\n\nBefore converting the dma channel to our private data structure, first\ncheck that the channel is indeed one which our driver registered.  We\ndo this by ensuring that the underlying device is bound to our driver.\n\nThis avoids potential oopses if we try to reference \u0027plchan-\u003ename\u0027\nagainst a foreign drivers dma channel.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "8516f52fa497b37eb3d5e58d34e61a41ae0a553a",
      "tree": "b73175b134d36bea303d2f181ae89a448c2add81",
      "parents": [
        "c6a389f123b9f68d605bb7e0f9b32ec1e3e14132",
        "7b4b88e067d37cbbafd856121767f7e154294eb2"
      ],
      "author": {
        "name": "Vinod Koul",
        "email": "vinod.koul@linux.intel.com",
        "time": "Fri Sep 02 16:43:44 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Fri Sep 02 16:43:44 2011 +0530"
      },
      "message": "Merge branch \u0027next\u0027 into v3.1-rc4\n\nFixed trivial conflicts  in  drivers/dma/amba-pl08x.c\n\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "57001a606f845ce2eda21a0f23e6aab20ee0cb04",
      "tree": "e66120a192e0a98b0c2d0ca0255331edeb6db0d2",
      "parents": [
        "0a2356572b1910cc977f4ccf3c9ee1ecab08327a"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:45 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:35:07 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Call pl08x_free_txd() instead of calling kfree() directly\n\npl08x_prep_channel_resources() is calling kfree() directly for txd(). To\nmaintain consistency in code call pl08x_free_txd() instead.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "0a2356572b1910cc977f4ccf3c9ee1ecab08327a",
      "tree": "a2e5c45222c72d2f9d5b89e8e25e9e463fafb319",
      "parents": [
        "036f05fd6dcdb6a6b9e55703cb663112fa4c4e42"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:42 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:39 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Pass flow controller information with slave channel data\n\nAt least, on SPEAr platforms there is one peripheral, JPEG, which can be flow\ncontroller for DMA transfer. Currently DMA controller driver didn\u0027t support\nperipheral flow controller configurations.\n\nThis patch adds device_fc field in struct pl08x_channel_data, which will be used\nonly for slave transfers and is not used in case of mem2mem transfers.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "036f05fd6dcdb6a6b9e55703cb663112fa4c4e42",
      "tree": "073bb36d9d6da0b8687e14f8690a7c0e9a2bcdff",
      "parents": [
        "e0719165801fad04073e7dcd90e4afd02aba3fb7"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:41 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:39 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Choose peripheral bus as master bus\n\nWhen we have DMA transfers between peripheral and memory, then we shouldn\u0027t\nreduce width of peripheral at all, as that may be a strict requirement. But we\ncan always reduce width of memory access, with some compromise in performance.\nThus, we must select peripheral as master and not memory.\n\nAlso this rearranges code to make it shorter.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "e0719165801fad04073e7dcd90e4afd02aba3fb7",
      "tree": "8b1cb65f26487d6fa0aba776e88c8e9b7f0aa22c",
      "parents": [
        "03af500f743f486648fc8afc38593e9844411945"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:40 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:39 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Align lli_len to max(src.width, dst.width)\n\nCurrently lli_len is aligned to min of two widths, which looks to be incorrect.\nInstead it should be aligned to max of both widths.\n\nLets say, total_size \u003d 441 bytes\n\nMIN: lets check if min() suits or not:\n\nCASE 1: srcwidth \u003d 1, dstwidth \u003d 4\nmin(src, dst) \u003d 1\n\ni.e. We program transfer size in control reg to 441.\nNow, till 440 bytes everything is fine, but on the last byte DMAC can\u0027t transfer\n1 byte to dst, as its width is 4.\n\nCASE 2: srcwidth \u003d 4, dstwidth \u003d 1\nmin(src, dst) \u003d 1\n\ni.e. we program transfer size in control reg to 110 (data transferred \u003d 110 * srcwidth).\nSo, here too 1 byte is left, but on the source side.\n\nMAX: Lets check if max() suits or not:\n\nCASE 3: srcwidth \u003d 1, dstwidth \u003d 4\nmax(src, dst) \u003d 4\n\nAligned size is 440\n\ni.e. We program transfer size in control reg to 440.\nNow, all 440 bytes will be transferred without any issues.\n\nCASE 4: srcwidth \u003d 4, dstwidth \u003d 1\nmax(src, dst) \u003d 4\n\nAligned size is 440\n\ni.e. We program transfer size in control reg to 110 (data transferred \u003d 110 * srcwidth).\nNow, also all 440 bytes will be transferred without any issues.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "03af500f743f486648fc8afc38593e9844411945",
      "tree": "9fe2cf8cf09d9bdfb1ee6df9fa30c693507496d2",
      "parents": [
        "fa6a940bf129c5417b602a4cdfe88b3dbd8e5898"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:39 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:39 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Add prep_single_byte_llis() routine\n\nCode for creating single byte llis is present at several places. Create a\nroutine to avoid code redundancy.\n\nAlso, we don\u0027t need one lli per single byte transfer, we can have single lli to\ndo all single byte transfer.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "fa6a940bf129c5417b602a4cdfe88b3dbd8e5898",
      "tree": "03355a9b00c59e00cfe157e5a5b7cb06e098bc4b",
      "parents": [
        "16a2e7d359b9fc64fb8a6717c0642691b1e60bb7"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:38 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:39 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: max_bytes_per_lli is TRANSFER_SIZE * src_width (not MIN(width))\n\nmax_bytes_per_lli \u003d bd.srcbus.buswidth * PL080_CONTROL_TRANSFER_SIZE_MASK;\nThis is confirmed by ARM support guys.\n\nBelow is summary of mail exchange with them:\n\n[Viresh] What is the total data to be transferred in case source and destination\nbus widths are different. Suppose, source bus width is 2 bytes and destination\nis 4 bytes. Now in order to transfer 80 bytes, what should be value of\nTransferSize field in control reg: 40? or 20?.\n\n[David from ARM] The value that is programmed into the TransferSize field should\nbe the number of \u003cSourceWidth\u003e transfers needed to achieve the required data\ntransfer.\n\nSo, to transfer 80 bytes, with a Source Width of 2, the TransferSize field \u003d\nshould be programmed with:\n\n        Total transfer size\n        ------------------- \u003d 40\n          \u003csource width\u003e\n\n[Viresh] Will this change if source is 4 bytes and dest is 2?\n\n[David] Yes - the calculation then becomes:\n\n        Total transfer size\n        ------------------- \u003d20\n          \u003csource width\u003e\n\nAlso, max_bytes_per_lli must be calculated after fixing src and dest widths not\nbefore that. So move this code to the correct place.\n\nThis patch also removes max_bytes_per_lli from earlier print message, as till\nthat point max_bytes_per_lli is unknown.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "16a2e7d359b9fc64fb8a6717c0642691b1e60bb7",
      "tree": "bfeea21d5b565a39ff32718327eb993d9b29c4aa",
      "parents": [
        "28da28365da3f3bea1d4b7212a8a40e4b9ac3229"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:37 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:38 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Get rid of pl08x_pre_boundary()\n\nPl080 Manual says: \"Bursts do not cross the 1KB address boundary\"\n\nWe can program the controller to cross 1 KB boundary on a burst and controller\ncan take care of this boundary condition by itself.\n\nFollowing is the discussion with ARM Technical Support Guys (David):\n[Viresh] Manual says: \"Bursts do not cross the 1KB address boundary\"\n\nWhat does that actually mean? As, Maximum size transferable with a single LLI is\n4095 * 4 \u003d16380 ~ 16KB. So, if we don\u0027t have src/dest address aligned to burst\nsize, we can\u0027t use this big of an LLI.\n\n[David] There is a difference between bursts describing the total data\ntransferred by the DMA controller and AHB bursts. Bursts described by the\nprogrammable parameters in the PL080 have no direct connection with the bursts\nthat are seen on the AHB bus.\n\nThe statement that \"Bursts do not cross the 1KB address boundary\" in the TRM is\nreferring to AHB bursts, where this limitation is a requirement of the AHB spec.\nYou can still issue bursts within the PL080 that are in excess of 1KB. The\nPL080 will make sure that its bursts are broken down into legal AHB bursts which\nwill be formatted to ensure that no AHB burst crosses a 1KB boundary.\n\nBased on above discussion, this patch removes all code related to 1 KB boundary\nas we are not required to handle this in driver.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "28da28365da3f3bea1d4b7212a8a40e4b9ac3229",
      "tree": "a754c7ca42975d547ee1a16c7a4f3582a4851b55",
      "parents": [
        "16ca8105040217acf5b4b506d04bb933fb3a76af"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:36 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:38 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Schedule tasklet in case of error interrupt\n\nCurrently, if error interrupt occurs, nothing is done in interrupt handler (just\nclearing the interrupts). We must somehow indicate this to the user that DMA is\nover, due to ERR interrupt or TC interrupt.\n\nSo, this patch just schedules existing tasklet, with a print showing error\ninterrupt has occurred on which channels.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "16ca8105040217acf5b4b506d04bb933fb3a76af",
      "tree": "c71896e9b9b65a32e5c3494c8c537d744c53eeb2",
      "parents": [
        "48a59ef3579492855d41405f8bf0a2983e061976"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:35 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:38 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: No need to check \"ch-\u003esignal \u003c 0\"\n\nWe have just executed following in pl08x_get_phy_channel():\n\tch-\u003esignal \u003d -1;\n\nWe don\u0027t have to compare \"ch-\u003esignal \u003c 0\", as this will always be true.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "48a59ef3579492855d41405f8bf0a2983e061976",
      "tree": "71f73aef26d74054dee11dcbeebdcd7a0ced57d7",
      "parents": [
        "b7b6018bad6fd7ebe5a78bda5f2a71a6ecf5406a"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:34 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:38 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Simplify pl08x_ensure_on()\n\nSimply writing 1 on bit 0 is sufficient instead of reading and clearing bits.\nAlso as per manual, for bit 3-31 of DMACConfiguration register:\n\"read undefined, write as 0\"\n\nSo, we must not rely on values read from this registers bit 3-31.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "b7b6018bad6fd7ebe5a78bda5f2a71a6ecf5406a",
      "tree": "652c64fd26877df5f5257540aa257e0f64459b23",
      "parents": [
        "175a5e617cd820d9e22d9e4f6d3ef736b2f874b1"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:33 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:38 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: support runtime PM\n\nInsert notifiers for the runtime PM API. With this the runtime PM layer kicks in\nto action where used.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "175a5e617cd820d9e22d9e4f6d3ef736b2f874b1",
      "tree": "33a48639bb61d42ef66d71bd4b7170fb4aa0a7cd",
      "parents": [
        "0532e6fced3c4f6a4eda7f078d8aa36405647c07"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:32 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:38 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Changing few prints to dev_dbg from dev_info\n\nFor 8 memory and 16 slave channels 35 boot print lines are printed. And that is\ntoo much. Most of this would be more useful for debugging. So moving few of them\nto dev_dbg instead of dev_info. Now only 3 prints will be printed.\n\nThis also rearrange one of the debug message to fit into two lines.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "0532e6fced3c4f6a4eda7f078d8aa36405647c07",
      "tree": "be16a01b15211749fc027cb04aee584755d4dad3",
      "parents": [
        "5a61233073a35a7ae152af77ed80dfc465c38fc7"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:31 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:38 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Remove redundant comment and rewrite original\n\nSimilar comment is present over routine also pl08x_choose_master_bus(). Keeping\none of them. Also rewrite that comment to convey message clearly.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "b201c111c87a4cf36d009abe57c62bd14d17d762",
      "tree": "5050103fd6bb6eff77c6c0c7ce7ee51d25a78bcb",
      "parents": [
        "0c38d70139138713e66c6f98e19a0320014476ff"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:29 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:37 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: pass (*ptr) to sizeof() instead of (struct xyz)\n\nAs mentioned in Documentation/CodingStyle,\n\nThe preferred form for passing a size of a struct is the following:\n   p \u003d kmalloc(sizeof(*p), ...);\n\nThe alternative form where struct name is spelled out hurts readability and\nintroduces an opportunity for a bug when the pointer variable type is changed\nbut the corresponding sizeof that is passed to a memory allocator is not.\n\nThis patch replaces (struct xyz) with *ptr at several occurrences in driver.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "0c38d70139138713e66c6f98e19a0320014476ff",
      "tree": "36e8c79209cf957af93d88006071c18952a0b09a",
      "parents": [
        "3e27ee8448bcbc8b4f060b107aa622c116f287ab"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:28 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:37 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Rearrange inclusion of header files in ascending order\n\nHeader files included in driver are not present in alphabetical order. Rearrange\nthem in alphabetical order.\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "3e27ee8448bcbc8b4f060b107aa622c116f287ab",
      "tree": "78531918514ba5f00b1e20747eba7f1361801a7a",
      "parents": [
        "47850a27306997be914dedcbca1dfce09fa4ef0a"
      ],
      "author": {
        "name": "Viresh Kumar",
        "email": "viresh.kumar@st.com",
        "time": "Fri Aug 05 15:32:27 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Thu Aug 25 19:33:37 2011 +0530"
      },
      "message": "dmaengine/amba-pl08x: Resolve formatting issues\n\nThere were few formatting related issues in code. This patch fixes them.\nFixes include:\n- Remove extra blank lines\n- align code to 80 cols\n- combine several lines to one line\n\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "4d66164e997ea791c5a4cefe6fc2e1fbb3ffb9c8",
      "tree": "c50299b3da16e57805b36a74a75e2b6a8510fc54",
      "parents": [
        "20feaab0323cc062b298c12e77869424df05f31f"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Aug 06 09:34:26 2011 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Aug 09 08:42:28 2011 +0100"
      },
      "message": "dmaengine: PL08x: Fix trivial build error\n\nSomething changed during the 3.1 merge window in the include files\nwhich now causes the pl08x DMA engine driver to fail to build.  Fix\nthis by adding the now necessary dma-mapping.h include:\n\ndrivers/dma/amba-pl08x.c: In function ■pl08x_unmap_buffers■:\ndrivers/dma/amba-pl08x.c:1524: error: implicit declaration of function ■dma_unmap_single■\ndrivers/dma/amba-pl08x.c:1527: error: implicit declaration of function ■dma_unmap_page■\n\nAcked-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "f32807f1ff7fbfd2d4ec708b1ac8cb75cb92bfef",
      "tree": "543d0cacbc1a3e1b146037e5f17d62116f19ac0c",
      "parents": [
        "760596c6b986e6345a28392cf40ee344bfd209a6"
      ],
      "author": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Mon Jul 25 19:22:01 2011 +0530"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:29 2011 +0530"
      },
      "message": "dmaengine: pl08x: handle the rest of enums in pl08x_width\n\npl08x_width function does not handle rest of enums for DMA_SLAVE_BUSWIDTH_xxxx\nwhich causes gcc to emit below warining\n\ndrivers/dma/amba-pl08x.c: In function \u0027pl08x_width\u0027:\n\tdrivers/dma/amba-pl08x.c:1119: warning: enumeration value\n\t\u0027DMA_SLAVE_BUSWIDTH_UNDEFINED\u0027 not handled in switch\n\tdrivers/dma/amba-pl08x.c:1119: warning: enumeration value\n\t\u0027DMA_SLAVE_BUSWIDTH_8_BYTES\u0027 not handled in switch\n\nthis patch adds a default case which returns error\n\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "760596c6b986e6345a28392cf40ee344bfd209a6",
      "tree": "4c08d2b8a0c28c4eb6ac558d672be5bb5e4eae05",
      "parents": [
        "121c8476a3c39a483326c33526e72a07661df1fc"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:14:08 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:29 2011 +0530"
      },
      "message": "DMA: PL08x: cleanup selection of burst size\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "121c8476a3c39a483326c33526e72a07661df1fc",
      "tree": "e0cdeae942aebffac59c4c375bc7eef9f0f549dc",
      "parents": [
        "aa88cdaa149e1c1cfc935ff73e50f3f9f3b2e3a1"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:13:48 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:29 2011 +0530"
      },
      "message": "DMA: PL08x: avoid recalculating cctl at each prepare\n\nNow that we have separate cctl values for M\u003eP and P\u003eM transfers, we can\navoid calculating the cctl value each time we prepare a transaction.\nMove the bus selection and increment setting to the slave configuration\nand initialization functions.\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "aa88cdaa149e1c1cfc935ff73e50f3f9f3b2e3a1",
      "tree": "41db69e250a533817ad53e8f88dc40ae5a67ca09",
      "parents": [
        "fa020e7d046436cb6642b23dc95012a3064d77e2"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:13:28 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:28 2011 +0530"
      },
      "message": "DMA: PL08x: cleanup selection of buswidth\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "f14c426c723634d223344ad820997d92a3e355b6",
      "tree": "99ce25418d727c42e9db8169ae326ee685c71702",
      "parents": [
        "b207b4d02beb06059478339bbe4672ba715605d6"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:12:47 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:28 2011 +0530"
      },
      "message": "DMA: PL08x: separately store source/destination cctl\n\nStore the source/destination cctl values into the channel structure.\nThis moves us towards being able to avoid a configuration call each\ntime we use the channel.\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "b207b4d02beb06059478339bbe4672ba715605d6",
      "tree": "3f62c4e2854d4dce26c4ff3491f1d2d47b558c87",
      "parents": [
        "fc74eb791590e624ca6915ae76a04808e03bffb0"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:12:27 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:28 2011 +0530"
      },
      "message": "DMA: PL08x: separately store source/destination slave address\n\nStore the source/destination slave address separately into the channel\nstructure.  This moves us towards being able to avoid a configuration\ncall each time we use the channel.\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "fc74eb791590e624ca6915ae76a04808e03bffb0",
      "tree": "2513ce08260e547137d67b108c254b101d3c8df2",
      "parents": [
        "25c94f7fcf70d94e12401b9c957ddf1d303061a3"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:12:06 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:28 2011 +0530"
      },
      "message": "DMA: PL08x: clean up LLI debugging\n\nClean up debugging when setting up the LLI list.  This reduces the\namount of output while preserving the information, and makes it easier\nto read.\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "25c94f7fcf70d94e12401b9c957ddf1d303061a3",
      "tree": "8d0f926b6bbb2272dce7c506bd55f037d94a8b82",
      "parents": [
        "f44bd191404841e44a914b2760a16ad328f406a8"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:11:46 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:28 2011 +0530"
      },
      "message": "DMA: PL08x: select LLI bus only once per LLI setup\n\nAvoid re-selecting the LLI bus each time we create an LLI.  Move it out\nof the LLI setup loops.\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "f44bd191404841e44a914b2760a16ad328f406a8",
      "tree": "abdef4399a7f56424cd9aa344a00f8771dc0247e",
      "parents": [
        "a62bae98a93e6c4d53b1e6c20715e94b4a5aca3c"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jul 21 17:11:26 2011 +0100"
      },
      "committer": {
        "name": "Vinod Koul",
        "email": "vinod.koul@intel.com",
        "time": "Tue Jul 26 15:33:28 2011 +0530"
      },
      "message": "DMA: PL08x: remove unused constants\n\nPL08X_WQ_PERIODMIN and PL08X_MAX_ALLOCS are not used, remove them.\n\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Vinod Koul \u003cvinod.koul@intel.com\u003e\n"
    },
    {
      "commit": "aa25afad2ca60d19457849ea75e9c31236f4e174",
      "tree": "24c8c815caf191af56f8de287637087c298711b2",
      "parents": [
        "394d5aefcdecb51bbf7d6df757e73559c9692a08"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Feb 19 15:55:00 2011 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Feb 23 16:24:14 2011 +0000"
      },
      "message": "ARM: amba: make probe() functions take const id tables\n\nMake Primecell driver probe functions take a const pointer to their\nID tables.  Drivers should never modify their ID tables in their\nprobe handler.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "8179661694595eb3a4f2ff9bb0b73acbb7d2f4a9",
      "tree": "5251a404b7b58f0486f422d3db333b2449e33e5c",
      "parents": [
        "fb526210b2b961b5d590b89fd8f45c0ca5769688"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jan 27 12:37:44 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jan 30 22:03:47 2011 -0800"
      },
      "message": "DMA: PL08x: fix channel pausing to timeout rather than lockup\n\nIf a transfer is initiated from memory to a peripheral, then data is\nfetched and the channel is marked busy.  This busy status persists until\nthe HALT bit is set and the queued data has been transfered to the\nperipheral.  Waiting indefinitely after setting the HALT bit results in\nsystem lockups.  Timeout this operation, and print an error when this\nhappens.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "fb526210b2b961b5d590b89fd8f45c0ca5769688",
      "tree": "4998a89c11eed597b3197d013ff7b558c9566f2d",
      "parents": [
        "d718f4ebddcb0bebdbf771a6672756b666e5c31b"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Thu Jan 27 12:32:53 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jan 30 22:00:48 2011 -0800"
      },
      "message": "DMA: PL08x: fix infinite wait when terminating transfers\n\nIf we try to pause a channel when terminating a transfer, we could end\nup spinning for it to become inactive indefinitely, and can result in\nan uninterruptible wait requiring a reset to recover from.\n\nTerminating a transfer is supposed to take effect immediately, but may\nresult in data loss.\n\nTo make this clear, rename the function to pl08x_terminate_phy_chan().\nAlso, make sure it is always consistently called - with the spinlock\nheld and IRQs disabled, and ensure that the TC and ERR interrupt status\nis always cleared.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "94ae85220a07d357d4937086c490854f63344de4",
      "tree": "8dda364dc7cbae73a30bbe5ef47ac8d674d998c6",
      "parents": [
        "0261f7416362f6affc2d4fe7fea9320a6bdaaee6"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Sun Jan 16 20:18:05 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jan 16 16:55:43 2011 -0800"
      },
      "message": "ARM: PL08x: cleanup comments\n\nCleanup the formatting of comments, remove some which don\u0027t make sense\nanymore.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n[fix conflict with 96a608a4]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "b7f758659265c173380b792862aaad1c23c0e004",
      "tree": "b67550bae43e48026c00284a9a64257ef11aae43",
      "parents": [
        "f0fd944625b6e406dc273b8dffa16e0728c973e6"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:46:17 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:14 2011 -0800"
      },
      "message": "ARM: PL08x: prevent dma_set_runtime_config() reconfiguring memcpy channels\n\nPrevent dma_set_runtime_config() being used to alter the configuration\nsupplied by the platform for memcpy channel configuration.  No one\nshould be trying to change this configuration.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f0fd944625b6e406dc273b8dffa16e0728c973e6",
      "tree": "d30767326785455dba0a99de2b6dd1a859be3c26",
      "parents": [
        "c370e594efe2993620d24d41a78f325102e99d1c"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:45:57 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:14 2011 -0800"
      },
      "message": "ARM: PL08x: allow dma_set_runtime_config() to return errors\n\nThere are cases in dma_set_runtime_config() where we fail to perform\nthe requested action - and we just issue a KERN_ERR message in that\ncase.  We have the facility to return an error to the caller, so that\nis what we should do.\n\nWhen we encounter an error due to invalid parameters, we should not\nmodify driver state.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c370e594efe2993620d24d41a78f325102e99d1c",
      "tree": "dfbb5c904bf6ca85c9aba1eec17070fe05c12ca4",
      "parents": [
        "8087aacda040bdbf84940712d132ce80c30b9d5d"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:45:37 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:14 2011 -0800"
      },
      "message": "ARM: PL08x: fix locking between prepare function and submit function\n\nThe PL08x driver holds on to the channel lock with interrupts disabled\nbetween the prepare and the subsequent submit API functions.  This\nmeans that the locking state when the prepare function returns is\ndependent on whether it suceeeds or not.\n\nIt did this to ensure that the physical channel wasn\u0027t released, and\nas it used to add the descriptor onto the pending list at prepare time\nrather than submit time.\n\nNow that we have reorganized the code to remove those reasons, we can\nnow safely release the spinlock at the end of preparation and reacquire\nit in our submit function.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "8087aacda040bdbf84940712d132ce80c30b9d5d",
      "tree": "3a59272bc4555eae854a012940a36f80a8f4c1a5",
      "parents": [
        "501e67e82dee68d0a594ec0549f3d6a2943c91f5"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:45:17 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:14 2011 -0800"
      },
      "message": "ARM: PL08x: introduce \u0027phychan_hold\u0027 to hold on to physical channels\n\nIntroduce \u0027phychan_hold\u0027 to hold on to physical DMA channels while we\u0027re\npreparing a new descriptor for it.  This will be incremented when we\nallocate a physical channel and set the MUX registers during the\npreparation of the TXD, and will only be decremented when the TXD is\nsubmitted.\n\nThis prevents the physical channel being given up before the new TXD\nis placed on the queue.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "501e67e82dee68d0a594ec0549f3d6a2943c91f5",
      "tree": "c211a6a59ab79a8c83d432e2053f64586d5b159a",
      "parents": [
        "15c17232fbd1f7687c740c3c26f9e7f337bd9e36"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:44:57 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:14 2011 -0800"
      },
      "message": "ARM: PL08x: put txd\u0027s on the pending list in pl08x_tx_submit()\n\nDon\u0027t place TXDs on the pending list when they\u0027re prepared - place\nthem on the list when they\u0027re ready to be submitted.  Also, only\nplace memcpy requests in the wait state when they\u0027re submitted and\ndon\u0027t have a physical channel associated.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "15c17232fbd1f7687c740c3c26f9e7f337bd9e36",
      "tree": "c3380cdde212259a7b3c790404b870aa2b9aa01d",
      "parents": [
        "3d992e1a6f8465db3921ef75bfc490fbd2f40cd3"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:44:36 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:14 2011 -0800"
      },
      "message": "ARM: PL08x: rename \u0027desc_list\u0027 as \u0027pend_list\u0027\n\nThis \u0027desc_list\u0027 is actually a list of pending descriptors, so name\nit after its function (pending list) rather than what it contains\n(descriptors).\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "3d992e1a6f8465db3921ef75bfc490fbd2f40cd3",
      "tree": "4d7935045ef1654777754360f319c093f5f041e8",
      "parents": [
        "c04287948ec8308fceedda980373bc7d53620255"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:44:16 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:14 2011 -0800"
      },
      "message": "ARM: PL08x: implement unmapping of memcpy buffers\n\nThe DMA engine API requires DMA engine implementations to unmap buffers\npassed into the non-slave DMA methods unless the relevant completion\nflag is set.  We aren\u0027t doing this, so implement this facility.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c04287948ec8308fceedda980373bc7d53620255",
      "tree": "ee5ab1d84715b7c9335036d7471f5d13d237eb84",
      "parents": [
        "d7244e9a27a3da27d62aabf560ee828d7991493e"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:43:56 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: store prep_* flags in async_tx structure\n\nLike other DMA engine drivers do, store the passed flags into the\nasync_tx structure, so they can be checked when the operation\ncompletes.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "d7244e9a27a3da27d62aabf560ee828d7991493e",
      "tree": "a745ef1a7b87208738f379532d10a8932751abb4",
      "parents": [
        "542361f8e385355c68e263eba49d4306739b9220"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:43:35 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: shrink srcbus/dstbus in txd structure\n\nWe only need to store the dma address.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "542361f8e385355c68e263eba49d4306739b9220",
      "tree": "64d465d026c348f4b5d945cb53aaaf12fb8338a3",
      "parents": [
        "5f638b4f313e345bf02700910e581bccf71212f5"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:43:15 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: don\u0027t manipulate txd-\u003esrcbus or txd-\u003edstbus during LLI fill\n\nDon\u0027t alter any txd-\u003esrcbus or txd-\u003edstbus values while building the\nLLI list.  This allows us to see the original dma_addr_t values passed\nin via the prep_memcpy() method.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "5f638b4f313e345bf02700910e581bccf71212f5",
      "tree": "423d49f0935c3f2977e3aae1cb7b4d402d0c257a",
      "parents": [
        "d6cf7b597f7158616106068930d1c6203d9359eb"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:42:55 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: fix fill_bytes calculation\n\nThe number of bytes we want to fill into any LLI is the minimum of:\n- number of bytes remaining in the transfer\n- number of bytes we can transfer in a single LLI\n- number of bytes we can transfer without overflowing the source boundary\n- number of bytes we can transfer without overflowing the destination boundary\n\nThe minimum of the first two is already calculated (target_len).  We\nlimit the boundary calculations to this number of bytes, which will\nthen give us the number of bytes we can place into this LLI.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "d6cf7b597f7158616106068930d1c6203d9359eb",
      "tree": "a1d640957f21926f2f65e96804ecd18f72047413",
      "parents": [
        "b61be8d728abad7fd98e62e98f22325f8f254b51"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:42:34 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: use min() to calculate target_len\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "b61be8d728abad7fd98e62e98f22325f8f254b51",
      "tree": "a4c5d5aa7e942122fc24d45d6ab977de5032be99",
      "parents": [
        "0059005f2cbf4847551b9ad9915ffffe23aef0b9"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:42:14 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: ensure pl08x_pre_boundary() works for any value of addr\n\npl08x_pre_boundary() was unsafe with addresses towards the top of\nmemory space:\n\n\tboundary \u003d ((addr \u003e\u003e PL08X_BOUNDARY_SHIFT) + 1)\n\t\t\t\u003c\u003c PL08X_BOUNDARY_SHIFT;\n\nThis can overflow a 32-bit number, producing zero.  When it does:\n\n\tif (boundary \u003c addr + len)\n\t\treturn boundary - addr;\n\telse\n\t\treturn len;\n\nresults in (boundary - addr) returning either a large positive value.\nAlso if addr + len overflows, this calculation also fails.\n\nWe can fix this trivially as the only thing we\u0027re actually interested\nin is the value of the least significant PL08X_BOUNDARY_SHIFT bits:\n\n\tboundary_len \u003d PL08X_BOUNDARY_SIZE -\n\t\t(addr \u0026 (PL08X_BOUNDARY_SIZE - 1));\n\ngives us the number of bytes before \u0027addr\u0027 becomes a multiple of\nPL08X_BOUNDARY_SIZE.  We can then just take the min() of the two\ncalculated lengths.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "0059005f2cbf4847551b9ad9915ffffe23aef0b9",
      "tree": "ff40c68f8c836d217b81d5c385e4ff2275a335be",
      "parents": [
        "858c21c0f380fb9c78f47f3e372f9baadc54dffe"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:41:54 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: make pl08x_fill_lli_for_desc() return void\n\nWe don\u0027t need pl08x_fill_lli_for_desc() to return num_llis + 1 as\nwe know that\u0027s what it always does.  We can just pass in num_llis\nand use post-increment in the caller.\n\nThis makes the code slightly easier to read.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "858c21c0f380fb9c78f47f3e372f9baadc54dffe",
      "tree": "236ca2bf8b319a38ad7d0988491a64add47d5b55",
      "parents": [
        "30749cb4a40f02a199640011e5ab5c5f60b8482e"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:41:34 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: move callback outside spinlock\u0027d region\n\nCalling the callback handler with spinlocks in the tasklet held leads\nto deadlock when dmaengine functions are called:\n\nBUG: spinlock lockup on CPU#0, sh/417, c1870a08\nBacktrace:\n...\n[\u003cc017b408\u003e] (do_raw_spin_lock+0x0/0x154) from [\u003cc02c4b98\u003e] (_raw_spin_lock_irqsave+0x54/0x60)\n[\u003cc02c4b44\u003e] (_raw_spin_lock_irqsave+0x0/0x60) from [\u003cc01f5828\u003e] (pl08x_prep_channel_resources+0x718/0x8b4)\n[\u003cc01f5110\u003e] (pl08x_prep_channel_resources+0x0/0x8b4) from [\u003cc01f5bb4\u003e] (pl08x_prep_slave_sg+0x120/0x19c)\n[\u003cc01f5a94\u003e] (pl08x_prep_slave_sg+0x0/0x19c) from [\u003cc01be7a0\u003e] (pl011_dma_tx_refill+0x164/0x224)\n[\u003cc01be63c\u003e] (pl011_dma_tx_refill+0x0/0x224) from [\u003cc01bf1c8\u003e] (pl011_dma_tx_callback+0x7c/0xc4)\n[\u003cc01bf14c\u003e] (pl011_dma_tx_callback+0x0/0xc4) from [\u003cc01f4d34\u003e] (pl08x_tasklet+0x60/0x368)\n[\u003cc01f4cd4\u003e] (pl08x_tasklet+0x0/0x368) from [\u003cc004d978\u003e] (tasklet_action+0xa0/0x100)\n\nDan quoted the documentation:\n\u003e 2/ Completion callback routines cannot submit new operations.  This\n\u003e    results in recursion in the synchronous case and spin_locks being\n\u003e    acquired twice in the asynchronous case.\n\nbut then followed up to say:\n\u003e I should clarify, this is the async_memcpy() api requirement which is\n\u003e not used outside of md/raid5.  DMA drivers can and do allow new\n\u003e submissions from callbacks, and the ones that do so properly move the\n\u003e callback outside of the driver lock.\n\nSo let\u0027s fix it by moving the callback out of the spinlocked region.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "30749cb4a40f02a199640011e5ab5c5f60b8482e",
      "tree": "2b079f8f3fb2f888d7afa36423b41c63a1583c3b",
      "parents": [
        "c7da9a56d608145cc763bcfc9329b92c4244d8d9"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:41:13 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: allow AHB master port selection to be configured\n\nPlatforms need to be able to control which AHB master interface is used,\nas each AHB master interface may be asymetric.  Allow the interfaces\nused for fetching LLIs, memory, and each peripheral to be configured\nindividually.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c7da9a56d608145cc763bcfc9329b92c4244d8d9",
      "tree": "2e85075b24b15bc3e252f0295099ad8649c77ade",
      "parents": [
        "1cae78f12028eebdc9107eaf168add46e66fb3f8"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:40:53 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: move AHB master port selection into prep_* functions\n\nAs we initialize the default cctl value in the prep_* functions along\nwith the increment settings, we don\u0027t need to repeat the selection of\nthe AHB ports each time we create a LLI entry.  Do this in the prep_*\nfunctions once per transfer.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "1cae78f12028eebdc9107eaf168add46e66fb3f8",
      "tree": "9d014ecb90ce04452094cab5d2726321ee92f123",
      "parents": [
        "70b5ed6b6d72cd8b1a3d4b7b878a0dd132bec7ba"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:40:33 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:13 2011 -0800"
      },
      "message": "ARM: PL08x: move cctl increment and protection setup to prep_slave_sg\n\nWe don\u0027t need to initialize the cctl increment and protection values\nin the runtime_config method - we have all the inforamtion to setup\nthese values in prep_slave_sg().  Move their initialization there.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "70b5ed6b6d72cd8b1a3d4b7b878a0dd132bec7ba",
      "tree": "07f37758bcc4f7f44ba9b5f0f04190fd7e38a64a",
      "parents": [
        "09b3c323332206aaadfb7aa13efffa82e7719b35"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:40:13 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: move default cctl into txd structure\n\nRather than modifying platform data while preparing a transfer, copy\nthe cctl value into the txd structure and modify the value there.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "09b3c323332206aaadfb7aa13efffa82e7719b35",
      "tree": "a64ddedf5178eef4bab335f90adcada034c77138",
      "parents": [
        "4983a04fd2562986360b646b378f267308bc22c0"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:39:53 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: assign ccfg DMA request signal in prep_phy_channel()\n\nThere is no need to wait until we start processing a tx descriptor\nbefore setting up the DMA request selection in the ccfg register.\nWe know which channel and request will be used in prep_phy_channel(),\nso setup the ccfg request selection at txd creation time in\nprep_phy_channel().\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "4983a04fd2562986360b646b378f267308bc22c0",
      "tree": "365b9fcfe69547f27dc1593565a07ad0465bf37c",
      "parents": [
        "19524d77ec34faf58d313ba34fb755ef6e159216"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:39:33 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: move ccfg into txd structure\n\nThe ccfg register is used to configure the channel parameters - the type\nand direction of transfer, the flow control signal and IRQ mask enables.\nThe type and direction of transfer is known in the relevent prep_*\nfunction where a txd is created.  The IRQ mask enables are always set,\nand the flow control signals are always set when we start processing a\ntxd according to phychan-\u003esignal.\n\nIf we store the ccfg value in the txd structure, we can avoid modifying\nplatform data - and even having it in platform data at all.\n\nSo, remove it from platform data too.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "19524d77ec34faf58d313ba34fb755ef6e159216",
      "tree": "63b24d5a82de3ee5fd8e07a311eb8d573cd21f76",
      "parents": [
        "c885bee4f10323a1ff3f19e1aa2aa6f4e7f89dd8"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:39:13 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: avoid duplicating registers in txd and phychan structures\n\nAs we now have all the code accessing the phychan {csrc,cdst,clli,cctl,\nccfg} members in one function, there\u0027s no point storing the data into\nthe struct.  Get rid of the struct members.  Re-order the register dump\nin the dev_dbg() to reflect the order we write the registers to the DMA\ndevice.\n\nThe txd {csrc,cdst,clli,cctl} values are duplicates of the lli[0]\nvalues, so there\u0027s no point duplicating these either.  Program the DMAC\nregisters directly from the lli[0] values.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c885bee4f10323a1ff3f19e1aa2aa6f4e7f89dd8",
      "tree": "b087498b048c7f69367123579e20ee872b7fb680",
      "parents": [
        "db9f136a60c8727c8e1c9c4f2494821caebf5a7b"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:38:52 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: combine functions to start DMA into one function\n\nThere is no need for pl08x_config_phychan_for_txd(), pl08x_set_cregs()\nand pl08x_enable_phy_chan() to be separate - they are always called in\nsequence.  Combine them into one function.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "db9f136a60c8727c8e1c9c4f2494821caebf5a7b",
      "tree": "d5311b870e634541e787a680d6d77bf9865f9645",
      "parents": [
        "bfddfb45056fa95a778f0baf463ac0f9fc926d5c"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:38:32 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: clean up LLI lookup\n\nAs the LLI list is an array, we can use maths to locate which LLI\nindex we\u0027re currently at, and then sum up the remaining LLI entries\nuntil we reach the end of the list.\n\nThis makes the code much easier to read, and much less susceptible\nto falling off the end of the array.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "bfddfb45056fa95a778f0baf463ac0f9fc926d5c",
      "tree": "1839abe79a06f4a7653847b6cc951cc7a08cf01f",
      "parents": [
        "e25761d72c80751c8741f5f93abab14232eef347"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:38:12 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: rename lli.next to lli.lli\n\nThe LLI pointer in the documentation is placed into the LLI register,\nso name it LLI rather than \u0027next\u0027.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "e25761d72c80751c8741f5f93abab14232eef347",
      "tree": "efc7c9136f7a779800fe2b736eaa2d280f7ea1ff",
      "parents": [
        "cace658572ba5d1075f3891e823130a66f3e330f"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:37:52 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: use \u0027u32\u0027 for LLI structure members, not dma_addr_t\n\nUse \u0027u32\u0027 for the LLI structure members, which are defined by hardware\nto be 32-bit.  dma_addr_t is much more vague about its actual size.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "cace658572ba5d1075f3891e823130a66f3e330f",
      "tree": "b615e42e2eac3ce2adb4d4cace8033df1ec748b9",
      "parents": [
        "56b618820c92a5efa2145fbbac373fffbb024a94"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:37:31 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: use \u0027size_t\u0027 for lengths\n\nUse size_t for variables denoting lengths throughout, and use the \u0027z\u0027\nqualifier for printing the value.  For safety, add a BUG_ON() in\npl08x_fill_lli_for_desc() to catch the remainder potentially becoming\nnegative.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "56b618820c92a5efa2145fbbac373fffbb024a94",
      "tree": "c0e046e1be9007d35d436f4577d3272bec6c45f6",
      "parents": [
        "4c0df6a3ce8eb947647c7ed2640d0172936d8ef3"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:37:10 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:12 2011 -0800"
      },
      "message": "ARM: PL08x: don\u0027t try to use llis_bus as a pointer\n\nllis_bus is the DMA address of the LLI array.  Casting it to be a\npointer just to be able to use pointer arithmetic on it is not nice.\nWe can trivially deal with the places where we do arithmetic on it,\nand it\u0027s actually cleaner this way.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "4c0df6a3ce8eb947647c7ed2640d0172936d8ef3",
      "tree": "4763f62c3f64754864cc8afd70a8792b9ef24008",
      "parents": [
        "19386b3234fdbe4d33492574d83e63a8dace18d3"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:36:50 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: don\u0027t assume that the LLI pointer has the bus bit clear\n\nWe only want use the address of the LLI pointer when locating the\ncorresponding structure in memory, so clear the master bus selection\nbit.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "19386b3234fdbe4d33492574d83e63a8dace18d3",
      "tree": "0d362485f1dd6fc360f3b707ab2a97ff8b3f2d17",
      "parents": [
        "8c8cc2b1040f51a2f89724edbf976774128339eb"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:36:29 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: ensure loops use cpu_relax()\n\nTight loops should use cpu_relax() to allow CPUs to reduce power\nconsumption while waiting for events.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "8c8cc2b1040f51a2f89724edbf976774128339eb",
      "tree": "367430b053afd6dd07e994da78f840f5221b9dd3",
      "parents": [
        "ac3cd20df9d74bb205bb34f69407477a884ff8a3"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:36:09 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: consolidate physical channel release code\n\nConsolidate duplicated channel release code into release_phy_channel()\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ac3cd20df9d74bb205bb34f69407477a884ff8a3",
      "tree": "6a740291ec8c7b05cd7647c8dc0d90c5c0d0d68e",
      "parents": [
        "7cb72ad959b16ac594118977b7954a7d2ec7a052"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:35:49 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: consolidate common txd initialization\n\nConsolidate code which allocates and initializes txds.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "7cb72ad959b16ac594118977b7954a7d2ec7a052",
      "tree": "eb6ea7ae69b7a8c2caef7d10eaec1a4dcf1110b4",
      "parents": [
        "f96ca9ec27159c1c8718aa8d0ed03051cd12e884"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:35:28 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: avoid \u0027void *\u0027 struct fields when we can type them properly\n\nAvoid using \u0027void *\u0027 struct fields when the structs are not defined\nin linux/amba/pl08x.h - instead, forward declare the struct names, and\nuse these instead.  This ensures we have proper typechecking.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f96ca9ec27159c1c8718aa8d0ed03051cd12e884",
      "tree": "38ef312ac8654ab5cf2c19ed258836e1153a6bab",
      "parents": [
        "b58b6b5bedf4d5da7a0cb2dce3b42d010c3aef03"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:35:08 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: constify vendor data pointers\n\nWe should never modify the vendor data structure so make it const.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "b58b6b5bedf4d5da7a0cb2dce3b42d010c3aef03",
      "tree": "f66787ab02b05ca68aad200b193abef636334c07",
      "parents": [
        "ad0a3ad33c96cbba98ba62116771fb836c551e60"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:34:48 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: remove circular buffer support\n\nThe driver already won\u0027t initialize a channel with a circular buffer;\nthe check in pl08x_prep_channel_resources() sees to that.  Remove\ncircular buffer support for the time being.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ad0a3ad33c96cbba98ba62116771fb836c551e60",
      "tree": "7d91cc40d91bf63f6bfd0023c114fcc8d549700e",
      "parents": [
        "730404ac1c47403af67420705980c99e90bf182f"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:34:27 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: remove unnecessary NULL and BUG checks\n\nThe tasklet always is initialized with a non-NULL data argument.  It\nis not possible for it to be called with a NULL data argument (unless\nsomething is very wrong in the tasklet code - in which case lots of\nstuff will break).  Therefore, as plchan can never be NULL, remove\nthis unnecessary BUG check.\n\nIn pl08x_tasklet(), we\u0027ve already dereferenced plchan-\u003eat, so it can\u0027t\nbe NULL here.  Remove this unnecessary BUG check.\n\npl08x_fill_llis_for_desc() and pl08x_free_txd() are always called with\na non-NULL txd argument - either as a consequence of the code paths or\nas a result of other checks already in place.  We don\u0027t need to repeat\nthe non-NULL check in these functions.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "730404ac1c47403af67420705980c99e90bf182f",
      "tree": "2ab740731c2f6d09f3c7ace9e8a6d706d364414f",
      "parents": [
        "9c132992689d7d27a4e17545b6279db4e03c0943"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:34:07 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: remove unnecessary includes\n\nWe don\u0027t need to include linux/pci.h as we aren\u0027t a PCI driver.  We\naren\u0027t doing any processor specific functions, so asm/processor.h is\nnot required.  asm/cacheflush.h shouldn\u0027t be used, we have the DMA API\nfor this.  DMA interfaces aren\u0027t required as we\u0027re only implementing\nthe dmaengine API and not a platform-private DMA API.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "9c132992689d7d27a4e17545b6279db4e03c0943",
      "tree": "d325746290ec84b1b7e03b546c8f585048cbe28a",
      "parents": [
        "b05cd8f4c04a29eebfa65c45fabc78a02f16a782"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:33:47 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: prefix hex numbers with 0x\n\nA driver which emits both decimal and hex numbers in its printk\ncreates confusion as to what is what.  Prefix hex numbers with 0x.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "b05cd8f4c04a29eebfa65c45fabc78a02f16a782",
      "tree": "3fd5cbcb3b4560c8b8380177f108de21df66dc79",
      "parents": [
        "9dc2c200a0551754f91e1b322dcb3d782cd709b2"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:33:26 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:11 2011 -0800"
      },
      "message": "ARM: PL08x: improve the announcement printk\n\nInclude the revision number of the PL08x primecell in the boot-time\nprintk to allow proper identification of the peripheral.  Reformat\nthe announcement printk format reflect what we do for other primecell\ndrivers - generally \"PLXXX revX at 0xNNNNNNNN irq X\".\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "9dc2c200a0551754f91e1b322dcb3d782cd709b2",
      "tree": "aab2fa7ea1ae3f191f5b6c7abdada93a3b232e02",
      "parents": [
        "3e2a037c1de79af999a54581cbf1e8a5c933fd95"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:33:06 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: add comment explaining the flow control methods\n\nExplain the two flow control methods which the PL08x implements, along\nwith the problem which peripheral flow control presents.  This helps\npeople understand why we are unable to use these DMA controllers with\n(eg) the MMCI.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "3e2a037c1de79af999a54581cbf1e8a5c933fd95",
      "tree": "c4efba4ddeeaa99c8eae988feac9a2551d19957c",
      "parents": [
        "98838f90d92f6f0abf6d6a99880c0ff3127633b8"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:32:46 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: fix sparse warnings\n\ndrivers/dma/amba-pl08x.c:1895:40: warning: Unknown escape \u0027%\u0027\ndrivers/dma/amba-pl08x.c:1903:40: warning: Unknown escape \u0027%\u0027\ndrivers/dma/amba-pl08x.c:513:6: warning: symbol \u0027pl08x_choose_master_bus\u0027 was not declared. Should it be static?\ndrivers/dma/amba-pl08x.c:604:5: warning: symbol \u0027pl08x_fill_llis_for_desc\u0027 was not declared. Should it be static?\ndrivers/dma/amba-pl08x.c:1442:32: warning: symbol \u0027pl08x_prep_slave_sg\u0027 was not declared. Should it be static?\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "98838f90d92f6f0abf6d6a99880c0ff3127633b8",
      "tree": "011581a93e3ab32c3feaf2e8d93e9fbd3d23be1e",
      "parents": [
        "9c0bb43bbd02fba0b235f8993d1f175734fa8735"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:32:26 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: fix deadlock in terminate_all\n\nTrying to disable a tasklet while holding a spinlock which the tasklet\nwill take is a recipe for deadlock - tasklet_disable() will wait for the\ntasklet to finish running, which it will never do.  In any case, there\nis not a corresponding tasklet_enable(), so once the tasklet is disabled,\nit will never run again until reboot.\n\nIt\u0027s safe to just remove the tasklet_disable() as we remove all current\nand pending descriptors before releasing this spinlock.  This means that\nthe tasklet will find no remaining work if it subsequently runs.\n\nThe only remaining issue is that the callback for an already submitted\ntxd may be in progress, or even called after terminate_all() returns.\nThere\u0027s not much that can be done about that as waiting for the callback\nto complete before returning will also lead to deadlocks.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "9c0bb43bbd02fba0b235f8993d1f175734fa8735",
      "tree": "b5b5673a0e44a0e5263f7c8a9ec800b53b1bfc12",
      "parents": [
        "dafa73171be8dd31b485f5839e3376b1ca908e24"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:32:05 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: fix missed spin-unlock in pl08x_issue_pending()\n\npl08x_issue_pending() returns with the spinlock locked and interrupts\ndisabled if the channel is waiting for a physical DMA to become free.\nThis is wrong - especially as pl08x_issue_pending() is an API function\nas it leads to deadlocks.  Fix it to always return with the spinlock\nunlocked.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "dafa73171be8dd31b485f5839e3376b1ca908e24",
      "tree": "70d6d14b7be6543cbfe777a523c75dc0a332c402",
      "parents": [
        "bf072af461c166964fb110cfcafccd752fbb4c64"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:31:45 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: fix a leak when preparing TXDs\n\nIf we fail to allocate the LLI, the prep_* function will return NULL.\nHowever, the TXD we allocated will not be placed on any list, nor\nwill it be freed - we\u0027ll just drop all references to it.  Make sure\nwe free it rather than leaking TXDs.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "bf072af461c166964fb110cfcafccd752fbb4c64",
      "tree": "a30b526ad74c2885ae9f8d9f10f412f6d7ff0f59",
      "parents": [
        "91aa5fadb831e7b6ea473a526a6b49c6dc4819ce"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:31:24 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: fix locking in tasklet\n\nTasklets are run from an interruptible context.  The slave DMA functions\ncan be called from within IRQ handlers.  Taking the spinlock without\ndisabling interrupts allows an interrupt handler to run, which may try\nto take the spinlock again, resulting in deadlock.  Fix this by using\nthe irqsave spinlocks.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "91aa5fadb831e7b6ea473a526a6b49c6dc4819ce",
      "tree": "4f96e2649b8725b6f58bace588e90c9f38c3dc80",
      "parents": [
        "4440aacf3a171a0ab498feda58d100a320c5d9ff"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:31:04 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: fix atomic_t usage and tx_submit() return value range\n\nThe last_issued variable uses an atomic type, which is only\nincremented inside a protected region, and then read.  Everywhere else\nonly reads the value, so it isn\u0027t using atomic_t correctly, and it\ndoesn\u0027t even need to.  Moreover, the DMA engine code provides us with\na variable for this already - chan.cookie.  Use chan.cookie instead.\n\nAlso, avoid negative dma_cookie_t values - negative returns from\ntx_submit() mean failure, yet in reality we always succeed.  Restart\nfrom cookie 1, just like other DMA engine drivers do.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "4440aacf3a171a0ab498feda58d100a320c5d9ff",
      "tree": "582fa3a2b9a99d2f36394e29d02ac001d72d2ff6",
      "parents": [
        "e8b5e11df3d02e7bbd85c025cc705a8e67746f73"
      ],
      "author": {
        "name": "Russell King - ARM Linux",
        "email": "linux@arm.linux.org.uk",
        "time": "Mon Jan 03 22:30:44 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jan 04 19:16:10 2011 -0800"
      },
      "message": "ARM: PL08x: fix array overflow in dma_set_runtime_config()\n\nIf maxburst was passed in as zero, we would overflow the burst_sizes[]\narray.  Fix this by checking for this condition, and defaulting to\nsingle transfer \u0027bursts\u0027.\n\nImprove the readability of the loop using a for() loop rather than\na while() loop with the iterator initialized far from the loop.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    }
  ],
  "next": "e8b5e11df3d02e7bbd85c025cc705a8e67746f73"
}
