)]}'
{
  "log": [
    {
      "commit": "e8d6539c8a94b88fc7ca5d6bdd9eeb0e64b434e4",
      "tree": "8ed281160ac777c4f42e2f93e291329ab6c43d8c",
      "parents": [
        "5bd9f4bb34c16b62725b9486a290c01b1fdfec1c"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 18:47:52 2013 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 20:52:51 2013 +0000"
      },
      "message": "regmap: debugfs: Make sure we store the last entry in the offset cache\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "5bd9f4bb34c16b62725b9486a290c01b1fdfec1c",
      "tree": "eeb04f9200e5e9101aa8b723ca494b9d07c86fa5",
      "parents": [
        "95f971c745a343255744703dc4ae8d78508519cc"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 13:44:50 2013 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 20:52:49 2013 +0000"
      },
      "message": "regmap: debugfs: Ensure a correct return value for empty caches\n\nThis should never happen in the real world.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "95f971c745a343255744703dc4ae8d78508519cc",
      "tree": "fd2e65fe41219457c64eaa62635bb8dfa65b0ddf",
      "parents": [
        "5a1d6d172bc8a3ecf29add6c84d047025cb71566"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 13:35:58 2013 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 20:52:46 2013 +0000"
      },
      "message": "regmap: debugfs: Discard the cache if we fail to allocate an entry\n\nRather than trying to soldier on with a partially allocated cache just\nthrow the cache away and pretend we don\u0027t have one in case we can get a\nfull cache next time around.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "5a1d6d172bc8a3ecf29add6c84d047025cb71566",
      "tree": "b800e66e7aa15e9536801aa04d2309530c8e3b87",
      "parents": [
        "120f80518125b8c312007a54106759d608487553"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 20:40:19 2013 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 20:52:45 2013 +0000"
      },
      "message": "regmap: debugfs: Fix check for block start in cached seeks\n\nCheck for the block we were asked to start from, not the position we\u0027re\nin.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "120f80518125b8c312007a54106759d608487553",
      "tree": "8bfed65b46671eac0ec9e7ca04875eba7e4896e8",
      "parents": [
        "d1c3ed669a2d452cacfb48c2d171a1f364dae2ed"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Jan 02 15:32:00 2013 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jan 08 20:52:45 2013 +0000"
      },
      "message": "regmap: debugfs: Fix attempts to read nonexistant register blocks\n\nReturn the start of the last block we tried to read rather than a position,\nand also make sure we update the byte position while we\u0027re at it.  Without\nthis reads that go into nonexistant areas get confused.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "7c8a2994309214cbb6dba33cd72ec85f91fd6fcd",
      "tree": "bfba9ecbaa48f68d03715454e4fbf5d8e1a59fce",
      "parents": [
        "8e24a6e696ebdc44513357ac00b6ee18f54e69f5",
        "a8f28cfad8cd44d7c34b166d0e5ace1125dbee1f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:49 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:49 2012 +0900"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/type\u0027 into regmap-next\n"
    },
    {
      "commit": "8e24a6e696ebdc44513357ac00b6ee18f54e69f5",
      "tree": "82cc7ac9259a9f20159f9265aca52533b1cb3ca8",
      "parents": [
        "db760fbecd3d609098ef4121d7988ff2a5db15d1",
        "76aad392f75e6ce5be3f106554e16f7ff96543e5"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:32 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:32 2012 +0900"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/table\u0027 into regmap-next\n"
    },
    {
      "commit": "db760fbecd3d609098ef4121d7988ff2a5db15d1",
      "tree": "ff4d9bc553848e796f0b099343d7f640acf4fbcb",
      "parents": [
        "4d348e6e0a35cd1b40196a463f1159ae5d582770",
        "0d4529c534c1c664f25088eb5f5b4d7ce0ee2510"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:30 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:30 2012 +0900"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/lock\u0027 into regmap-next\n"
    },
    {
      "commit": "4d348e6e0a35cd1b40196a463f1159ae5d582770",
      "tree": "914c629a0f0ff6c3015c7afb0a4317df465c9246",
      "parents": [
        "bcf86687d676fa478c71201294b296126212f06c",
        "90f790d2dc96f5a61855ae65b90e30c40c893a20"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:29 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:29 2012 +0900"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/domain\u0027 into regmap-next\n"
    },
    {
      "commit": "bcf86687d676fa478c71201294b296126212f06c",
      "tree": "fe44b787a21b4d474c5417ce378fe3eec91da837",
      "parents": [
        "d3816c1a0e9ea8e1a04fdf7601837e8c3a0e190e",
        "5166b7c006eeb4f6becc0822974d8da259484ba1"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:20 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 12:39:20 2012 +0900"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/debugfs\u0027 into regmap-next\n"
    },
    {
      "commit": "5166b7c006eeb4f6becc0822974d8da259484ba1",
      "tree": "b28c4098a5b75a34efd8262efcc99fdf8d586365",
      "parents": [
        "afab2f7b21b042bcbffb1e82f78243382a122d70"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 01:24:29 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 01:29:47 2012 +0900"
      },
      "message": "regmap: debugfs: Cache offsets of valid regions for dump\n\nAvoid doing a linear scan of the entire register map for each read() of\nthe debugfs register dump by recording the offsets where valid registers\nexist when we first read the registers file. This assumes the set of\nvalid registers never changes, if this is not the case invalidation of\nthe cache will be required.\n\nThis could be further improved for large blocks of contiguous registers\nby calculating the register we will read from within the block - currently\nwe do a linear scan of the block. An rbtree may also be worthwhile.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "afab2f7b21b042bcbffb1e82f78243382a122d70",
      "tree": "9e068db9a9be5a3d99b1bb03202537397c2af2a1",
      "parents": [
        "db04328c167ff8e7c57f4a3532214aeada3a82fd"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Dec 09 17:20:10 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 01:29:47 2012 +0900"
      },
      "message": "regmap: debugfs: Factor out initial seek\n\nIn preparation for doing things a bit more quickly than a linear scan\nfactor out the initial seek from the debugfs register dump.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "db04328c167ff8e7c57f4a3532214aeada3a82fd",
      "tree": "a1c57616c3007b6d4fbb29a28f144ec89302917e",
      "parents": [
        "cbc1938badc31f43ab77e92a9b1a51c4fe8b4113"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 01:14:11 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Dec 11 01:29:39 2012 +0900"
      },
      "message": "regmap: debugfs: Avoid overflows for very small reads\n\nIf count is less than the size of a register then we may hit integer\nwraparound when trying to move backwards to check if we\u0027re still in\nthe buffer. Instead move the position forwards to check if it\u0027s still\nin the buffer, we are unlikely to be able to allocate a buffer\nsufficiently big to overflow here.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "cbc1938badc31f43ab77e92a9b1a51c4fe8b4113",
      "tree": "2a0ac524a04b56ce06e413ff4058a722c6f107b7",
      "parents": [
        "1a61cfe3445218637f38b355c76fc3132865a0a6"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Dec 06 13:29:05 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Dec 06 15:10:21 2012 +0900"
      },
      "message": "regmap: Cache register and value sizes for debugfs\n\nNo point in calculating them every time.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "76aad392f75e6ce5be3f106554e16f7ff96543e5",
      "tree": "00d1ef2dad497331dca8860e7ecc9474d0bab7b5",
      "parents": [
        "3afa24f7ad0a1ab5478f1e9a6c4df1acf52171d1"
      ],
      "author": {
        "name": "Davide Ciminaghi",
        "email": "ciminaghi@gnudd.com",
        "time": "Tue Nov 20 15:20:30 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Nov 21 11:10:31 2012 +0900"
      },
      "message": "regmap: introduce tables for readable/writeable/volatile/precious checks\n\nMany of the regmap enabled drivers implementing one or more of the\nreadable, writeable, volatile and precious methods use the same code\npattern:\n\n\treturn ((reg \u003e\u003d X \u0026\u0026 reg \u003c\u003d Y) || (reg \u003e\u003d W \u0026\u0026 reg \u003c\u003d Z) || ...)\n\nSwitch to a data driven approach, using tables to describe\nreadable/writeable/volatile and precious registers ranges instead.\nThe table based check can still be overridden by passing the usual function\npointers via struct regmap_config.\n\nSigned-off-by: Davide Ciminaghi \u003cciminaghi@gnudd.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "3afa24f7ad0a1ab5478f1e9a6c4df1acf52171d1",
      "tree": "d8a4bebef173659a9f1605fec1c7eab06a016583",
      "parents": [
        "869e4a5f5848f6308cc5651d4bdc3e545d676b98",
        "0d4529c534c1c664f25088eb5f5b4d7ce0ee2510"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Nov 21 11:09:46 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Nov 21 11:09:46 2012 +0900"
      },
      "message": "Merge branch \u0027topic/lock\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into regmap-table\n"
    },
    {
      "commit": "869e4a5f5848f6308cc5651d4bdc3e545d676b98",
      "tree": "94f46ed2994ea62f52d07c59ab3e553c302a6590",
      "parents": [
        "f4a75d2eb7b1e2206094b901be09adb31ba63681",
        "6d04b8ac575c38d94515b4e8f3b800c5c61ef611",
        "1a61cfe3445218637f38b355c76fc3132865a0a6"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Nov 21 11:08:31 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Nov 21 11:08:31 2012 +0900"
      },
      "message": "Merge branches \u0027topic/core\u0027 and \u0027topic/range\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into regmap-table\n"
    },
    {
      "commit": "6d04b8ac575c38d94515b4e8f3b800c5c61ef611",
      "tree": "fae75cf4c669feb4aacd233b2aee7d2c01bde8da",
      "parents": [
        "8f0d8163b50e01f398b14bcd4dc039ac5ab18d64"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Oct 26 19:05:32 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Oct 30 13:37:26 2012 +0000"
      },
      "message": "regmap: core: Report registers in hex when we can\u0027t cache\n\nThis seems to be the most common way of reporting register numbers, it\u0027s\ncertainly what we do for trace.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "1a61cfe3445218637f38b355c76fc3132865a0a6",
      "tree": "c3378af914ed2795862d28fbe3da848f7b616d1f",
      "parents": [
        "8a2ceac6617a67d8a1ee4bd255743d577bde311a"
      ],
      "author": {
        "name": "Fabio Estevam",
        "email": "fabio.estevam@freescale.com",
        "time": "Thu Oct 25 14:07:18 2012 -0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Oct 25 18:55:11 2012 +0100"
      },
      "message": "regmap: Fix printing of size_t variable\n\nval_bytes is of \u0027size_t\u0027, so it should be printed as \u0027%zu\u0027.\n\nFixes the following build warning on x86:\n\ndrivers/base/regmap/regmap.c:872:4: warning: format \u0027%d\u0027 expects argument of type \u0027int\u0027, but argument 5 has type \u0027size_t\u0027 [-Wformat]\n\nSigned-off-by: Fabio Estevam \u003cfabio.estevam@freescale.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "5784ee4dcbb896f5367855540b264e21a0c33854",
      "tree": "3e15a354e7fe7b24abd7eab598420b7708597916",
      "parents": [
        "ddffeb8c4d0331609ef2581d84de4d763607bd37"
      ],
      "author": {
        "name": "Dong Aisheng",
        "email": "dong.aisheng@linaro.org",
        "time": "Mon Oct 15 15:50:25 2012 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Oct 17 22:09:35 2012 +0900"
      },
      "message": "regmap: select REGMAP if REGMAP_MMIO and REGMAP_IRQ enabled\n\nThe regmap_mmio and regmap_irq depend on regmap core, if not select,\nwe may not compile regmap core and meet compiling errors as follows\nif REGMAP_MMIO is selected by client drivers:\ndrivers/mfd/syscon.c:94:15: error: variable \u0027syscon_regmap_config\u0027 has initializer but incomplete type\ndrivers/mfd/syscon.c:95:2: error: unknown field \u0027reg_bits\u0027 specified in initializer\ndrivers/mfd/syscon.c:95:2: warning: excess elements in struct initializer [enabled by default]\ndrivers/mfd/syscon.c:95:2: warning: (near initialization for \u0027syscon_regmap_config\u0027) [enabled by default]\ndrivers/mfd/syscon.c:96:2: error: unknown field \u0027val_bits\u0027 specified in initializer\ndrivers/mfd/syscon.c:96:2: warning: excess elements in struct initializer [enabled by default]\ndrivers/mfd/syscon.c:96:2: warning: (near initialization for \u0027syscon_regmap_config\u0027) [enabled by default]\ndrivers/mfd/syscon.c:97:2: error: unknown field \u0027reg_stride\u0027 specified in initializer\ndrivers/mfd/syscon.c:97:2: warning: excess elements in struct initializer [enabled by default]\ndrivers/mfd/syscon.c:97:2: warning: (near initialization for \u0027syscon_regmap_config\u0027) [enabled by default]\ndrivers/mfd/syscon.c: In function \u0027syscon_probe\u0027:\ndrivers/mfd/syscon.c:124:2: error: invalid use of undefined type \u0027struct regmap_config\u0027\ndrivers/mfd/syscon.c:125:2: error: implicit declaration of function \u0027devm_regmap_init_mmio\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/mfd/syscon.c:125:17: warning: assignment makes pointer from integer without a cast [enabled by default]\ncc1: some warnings being treated as errors\n\ndrivers/mfd/Kconfig:\nconfig MFD_SYSCON\n        bool \"System Controller Register R/W Based on Regmap\"\n\tdepends on OF\n\tselect REGMAP_MMIO\n\thelp\n\t  Select this option to enable accessing system control registers\n\t    via regmap.\n\nSigned-off-by: Dong Aisheng \u003cdong.aisheng@linaro.org\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "0d4529c534c1c664f25088eb5f5b4d7ce0ee2510",
      "tree": "5b080ef0a319b90fbcb0ab4eb768aae54851915e",
      "parents": [
        "ddffeb8c4d0331609ef2581d84de4d763607bd37"
      ],
      "author": {
        "name": "Davide Ciminaghi",
        "email": "ciminaghi@gnudd.com",
        "time": "Tue Oct 16 15:56:59 2012 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Oct 17 16:52:02 2012 +0900"
      },
      "message": "regmap: make lock/unlock functions customizable\n\nIt is sometimes convenient for a regmap user to override the standard\nregmap lock/unlock functions with custom functions.\nFor instance this can be useful in case an already existing spinlock\nor mutex has to be used for locking a set of registers instead of the\ninternal regmap spinlock/mutex.\nNote that the fast_io field of struct regmap_bus is ignored in case\ncustom locking functions are used.\n\nSigned-off-by: Davide Ciminaghi \u003cciminaghi@gnudd.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "a8f28cfad8cd44d7c34b166d0e5ace1125dbee1f",
      "tree": "14e2bced55e4e001460a2bb19b48be02818501e1",
      "parents": [
        "ddffeb8c4d0331609ef2581d84de4d763607bd37"
      ],
      "author": {
        "name": "Paul Bolle",
        "email": "pebolle@tiscali.nl",
        "time": "Mon Oct 08 22:06:30 2012 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 10:03:19 2012 +0900"
      },
      "message": "regmap: silence GCC warning\n\nBuilding regmap.o triggers this GCC warning:\n    drivers/base/regmap/regmap.c: In function ‘regmap_raw_read’:\n    drivers/base/regmap/regmap.c:1172:6: warning: ‘ret’ may be used uninitialized in this function [-Wmaybe-uninitialized]\n\nLong story short: Jakub Jelinek pointed out that there is a type\nmismatch between \u0027num\u0027 in regmap_volatile_range() and \u0027val_count\u0027 in\nregmap_raw_read(). And indeed, converting \u0027num\u0027 to the type of\n\u0027val_count\u0027 (ie, size_t) makes this warning go away.\n\nSigned-off-by: Paul Bolle \u003cpebolle@tiscali.nl\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "8a2ceac6617a67d8a1ee4bd255743d577bde311a",
      "tree": "3d930e91d65fb6ccf22bc7cdfd2de168ce3eb0f1",
      "parents": [
        "0ff3e62ff119f2b65b0a8ad48fcb669f609fd904"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Oct 04 18:20:18 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 10:00:00 2012 +0900"
      },
      "message": "regmap: Split raw writes that cross window boundaries\n\nIf a block write covers a paged memory region and crosses a window\nboundary then rather than failing the write split the transfer up\ninto multiple writes, making the whole process more transparent for\ndrivers.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "0ff3e62ff119f2b65b0a8ad48fcb669f609fd904",
      "tree": "5562bd2118d59c0e4db00c03a1a64abea7887d39",
      "parents": [
        "98bc7dfd76407eaa0964ecb4d5319c957a3b9df9"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Oct 04 17:39:13 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 10:00:00 2012 +0900"
      },
      "message": "regmap: Make return code checks consistent\n\nThe range code was written to check for return codes less than zero as\nerrors but throughout the rest of the API return codes not equal to zero\nare errors. Change all these checks to match the house style.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "98bc7dfd76407eaa0964ecb4d5319c957a3b9df9",
      "tree": "b7c6a097d0b799e5a07971c6764512e9145a53d0",
      "parents": [
        "4b020b3f9ba2af8031c5c7d759fbafd234d1c390"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Oct 04 17:31:11 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 10:00:00 2012 +0900"
      },
      "message": "regmap: Factor range lookup out of page selection\n\nThis will support a subsequent update to allow bulk writes to cross window\nboundaries.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4b020b3f9ba2af8031c5c7d759fbafd234d1c390",
      "tree": "0089993156b75b107585ed7048f4a6ab79ca3315",
      "parents": [
        "bd9cc12f4a7e7389432bba0cae6970dfc28f423c"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Oct 03 13:13:16 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 09:59:59 2012 +0900"
      },
      "message": "regmap: Provide debugfs read of register ranges\n\nIf a register range is named then provide a debugfs file showing the\ncontents of the range separately.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "bd9cc12f4a7e7389432bba0cae6970dfc28f423c",
      "tree": "dd5cdf0821523fe2e9307f8d095aae0d8b48f193",
      "parents": [
        "d058bb49618482f2eff0db57618c9a7352916dd5"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Oct 03 12:45:37 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 09:59:59 2012 +0900"
      },
      "message": "regmap: Factor out debugfs register read\n\nThis will allow the use of the same code for reading register ranges.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "d058bb49618482f2eff0db57618c9a7352916dd5",
      "tree": "b7b4a88a8f3bcceb14856ba09ddfa5e81e8f8b39",
      "parents": [
        "061adc064adbbdd9eb127ab2e86b7a71f4ccaf2e"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Oct 03 12:40:47 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 09:59:59 2012 +0900"
      },
      "message": "regmap: Allow ranges to be named\n\nFor more useful diagnostics.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "061adc064adbbdd9eb127ab2e86b7a71f4ccaf2e",
      "tree": "a967814d5255d9b8d25f4153d774160dace93201",
      "parents": [
        "e3549cd01347ef211d01353bdf2572b086574007"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Oct 03 12:17:51 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 09:59:59 2012 +0900"
      },
      "message": "regmap: When we sanity check during range adds say what errors we find\n\nRather than just returning a single error code for every possible thing we\ncan notice print an error message saying what the problem was. This makes\nit very much easier to figure out what\u0027s wrong and fix it.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "e3549cd01347ef211d01353bdf2572b086574007",
      "tree": "6e80f8676713fc505ecd38295116ee6b5a5bdf82",
      "parents": [
        "ddffeb8c4d0331609ef2581d84de4d763607bd37"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Oct 02 20:17:15 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 09:59:59 2012 +0900"
      },
      "message": "regmap: Rename n_ranges to num_ranges\n\nThis makes things consistent with the rest of the API and is actually what\nthe documentation says. We don\u0027t currently have any in tree users so low\ncost.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "90f790d2dc96f5a61855ae65b90e30c40c893a20",
      "tree": "5d88bc300043bf8a9925569b43f4686961bcd4c2",
      "parents": [
        "ddffeb8c4d0331609ef2581d84de4d763607bd37"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Aug 20 21:45:05 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Oct 15 09:49:23 2012 +0900"
      },
      "message": "regmap: irq: Allow users to retrieve the irq_domain\n\nThis is useful for integration with other subsystems, especially MFD,\nand provides an alternative API for users that request their own IRQs.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "613dac31a612f9417bd1b1438acebbc3b8f9073e",
      "tree": "b3547cd52062d506d2fbbe99e600b21bab28264a",
      "parents": [
        "5698bd757d55b1bb87edd1a9744ab09c142abfc2",
        "4d879514e73f3e6b27617d9898c83c9939462dda",
        "81380739516730124067576c9cc9f2418be5bf36"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Sep 22 12:02:05 2012 -0400"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Sep 22 12:02:05 2012 -0400"
      },
      "message": "Merge remote-tracking branches \u0027regmap/topic/cache\u0027 and \u0027regmap/topic/irq\u0027 into regmap-next\n"
    },
    {
      "commit": "81380739516730124067576c9cc9f2418be5bf36",
      "tree": "ef6c9eda0f647a1cf8fe168d624090c6d60d53b1",
      "parents": [
        "36ac914ba2a5f1a14c5e0bf5d33bc20016d50940"
      ],
      "author": {
        "name": "Yunfan Zhang",
        "email": "yfzhang@marvell.com",
        "time": "Sat Sep 08 03:53:25 2012 -0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Sep 09 11:05:45 2012 +0800"
      },
      "message": "regmap: no need primary handler for nested irq\n\nThe primary handler will NOT be called if the interrupt nests into\nanother interrupt thread. Remove it to avoid confusing.\n\nSigned-off-by: Yunfan Zhang \u003cyfzhang@marvell.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "36ac914ba2a5f1a14c5e0bf5d33bc20016d50940",
      "tree": "44535bd6b9ddab5abf4a354d6b3bbe46a1ab03a1",
      "parents": [
        "7a97637988c355646e730bcf0e6d548619112cdd"
      ],
      "author": {
        "name": "Xiaofan Tian",
        "email": "tianxf@marvell.com",
        "time": "Thu Aug 30 17:03:35 2012 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Aug 30 11:13:41 2012 -0700"
      },
      "message": "regmap: irq: Add mask invert flag for enable register\n\nCurrently, regmap will write 1 to mask_base to mask\nan interrupt and write 0 to unmask it.\n\nBut some chips do not have an interrupt mask register,\nand only have interrupt enable register.\nThen we should write 0 to disable interrupt and 1 to enable.\n\nSo add an mask_invert flag to handle this.\nIf it is not set, behavior is same as previous.\nIf set it to 1, the mask value will be inverted\nbefore written to mask_base\n\nSigned-off-by: Xiaofan Tian \u003ctianxf@marvell.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "0c00c50b41a9a6ee83eb16fb5c6c22e5115391b8",
      "tree": "12a30d730032a46fac0793fea2ba30ef900b4d4f",
      "parents": [
        "40052ca0c243d101cfadd65936f60ef81df10b02"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jul 24 15:41:19 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Aug 07 20:29:45 2012 +0100"
      },
      "message": "regmap: irq: Enable devices for runtime PM while handling interrupts\n\nSome devices need to have a runtime PM reference while handling interrupts\nto ensure that the register I/O is available. Support this with a flag in\nthe chip.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "40052ca0c243d101cfadd65936f60ef81df10b02",
      "tree": "47857240772f3cb43d0d0a19998887485af017e7",
      "parents": [
        "685879f4b2036e58c1a0cdaaee2b155d3c965461"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Aug 01 13:57:24 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Aug 04 12:13:54 2012 +0100"
      },
      "message": "regmap: irq: initialize all irqs to wake disabled\n\nThe kerneldoc for irq_set_irq_wake() says:\n\n    Enable/disable power management wakeup mode, which is\n    disabled by default.\n\nregmap_irq_set_wake() clears bits to enable wake for an interrupt,\nand sets bits to disable wake. Hence, we should set all bits in\nwake_buf initially, to mirror the expected disabled state.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "685879f4b2036e58c1a0cdaaee2b155d3c965461",
      "tree": "682b86c2c94bdc14c6ca4a4ddc32d0a29a5e955b",
      "parents": [
        "ca142750f8ac3d01e45909e624ca783779894640"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Aug 01 11:40:49 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Aug 04 12:13:53 2012 +0100"
      },
      "message": "regmap: set MASK_ON_SUSPEND/SKIP_SET_WAKE if no wake_base\n\nIf a regmap-irq chip has no wake base:\n\n* There\u0027s no point calling .irq_set_wake, hence IRQCHIP_SKIP_SET_WAKE.\n\n* If some IRQs in the chip are enabled for wake and some aren\u0027t, we\n  should mask those interrupts that are not wake enabled, so that if\n  they occur during suspend, the system is not awoken. Hence,\n  IRQCHIP_MASK_ON_SUSPEND.\n\nNote that IRQCHIP_MASK_ON_SUSPEND is handled by check_wakeup_irqs(),\nwhich always iterates over every single interrupt in the system,\nirrespective of whether an interrupt is a child of a controller whose\noutput interrupt has no wake-enabled inputs and hence is presumably\nmasked itself. Hence this change might cause interrupt unnecessary\nmasking operations and associated register I/O.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "ca142750f8ac3d01e45909e624ca783779894640",
      "tree": "34df50d342fbfd35d2eee6a581fd65b2793767c1",
      "parents": [
        "7ac140ec426ed304237205be77f99eedfc1186b5"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Aug 01 11:40:48 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Aug 04 12:13:53 2012 +0100"
      },
      "message": "regmap: name irq_chip based on regmap_irq_chip\u0027s name\n\nThis is intended to give each irq_chip a useful name, rather than hard-\ncoding them all as \"regmap\".\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "7ac140ec426ed304237205be77f99eedfc1186b5",
      "tree": "43a4a068d1fef340215301a05ea9ba93c9fe6ccc",
      "parents": [
        "0eb46ad0c8d60943c1f46cef795fc537fbffd177"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Aug 01 11:40:47 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Aug 04 12:13:53 2012 +0100"
      },
      "message": "regmap: store irq_chip inside regmap_irq_chip_data\n\nThis will allow later patches to adjust portions of the irq_chip\nindividually for each regmap_irq_chip that is created.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "0eb46ad0c8d60943c1f46cef795fc537fbffd177",
      "tree": "fbf0bf634141cf46e9e8c134a7171813050c3c02",
      "parents": [
        "16032624f511b2fac0671cba5e7da40aa7e73a66"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Aug 01 20:29:14 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Aug 04 12:13:53 2012 +0100"
      },
      "message": "regmap: irq: Only update mask bits when doing initial mask\n\nDon\u0027t write the full register, it\u0027s possible there\u0027s bits other than the\nmasks in the same register which we shouldn\u0027t be changing.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nTested-by: Stephen Warren \u003cswarren@wwwdotorg.org\u003e\n"
    },
    {
      "commit": "16032624f511b2fac0671cba5e7da40aa7e73a66",
      "tree": "4189c428c8372836bd930841cb406ddf376c33a5",
      "parents": [
        "0d7614f09c1ebdbaa1599a5aba7593f147bf96ee"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Fri Jul 27 13:01:54 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Aug 04 12:13:53 2012 +0100"
      },
      "message": "regmap: fix some error messages to take account of irq_reg_stride\n\nA number of places in the code were printing error messages that included\nthe address of a register, but were not calculating the register address\nin the same way as the access to the register. Use a temporary to solve\nthis.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4d879514e73f3e6b27617d9898c83c9939462dda",
      "tree": "06bf8f994fb2ccefb68fa8aba07897c7d87fdc47",
      "parents": [
        "0d7614f09c1ebdbaa1599a5aba7593f147bf96ee"
      ],
      "author": {
        "name": "Dimitris Papastamos",
        "email": "dp@opensource.wolfsonmicro.com",
        "time": "Fri Jul 27 14:54:15 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Aug 04 11:07:57 2012 +0100"
      },
      "message": "regmap: Don\u0027t lock in regmap_reinit_cache()\n\nWhen bus-\u003efast_io is set, the locking here is done with spinlocks.\nThis is currently true for the regmap-mmio bus implementation.\n\nWhile holding a spinlock we can\u0027t go to sleep, various operations\nlike removing the debugfs entries or re-initializing the cache will\nsleep, therefore, shift the locking up to the user.\n\nSigned-off-by: Dimitris Papastamos \u003cdp@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "38e23194e1c95e73819d25a63bcf94fe4709d4c5",
      "tree": "42a7d1e2f3778adcd13a4376ae9e0810ef6d387b",
      "parents": [
        "463351194d826af7ae97fff0ed6f0fe2a4fed615",
        "a43fd50dc99a5f65505f174eca5a421707d73b4c",
        "632a5b01db8cd4068a06f8a67720ea4f9b00d9b3"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jul 22 19:26:07 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jul 22 19:26:07 2012 +0100"
      },
      "message": "Merge branches \u0027regmap-core\u0027, \u0027regmap-irq\u0027 and \u0027regmap-page\u0027 into regmap-next\n\nConflicts (trivial context stuff):\n\tdrivers/base/regmap/regmap.c\n\tinclude/linux/regmap.h\n"
    },
    {
      "commit": "463351194d826af7ae97fff0ed6f0fe2a4fed615",
      "tree": "664b633aedecd6acdbb62e163436157bccb18452",
      "parents": [
        "1044c180de4ba426aa5fb1b4b13b5f219ddb7105"
      ],
      "author": {
        "name": "Dimitris Papastamos",
        "email": "dp@opensource.wolfsonmicro.com",
        "time": "Wed Jul 18 14:17:23 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Jul 18 22:13:53 2012 +0100"
      },
      "message": "regmap: Fix incorrect arguments to kzalloc() call\n\nSigned-off-by: Dimitris Papastamos \u003cdp@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "1044c180de4ba426aa5fb1b4b13b5f219ddb7105",
      "tree": "498879b6fe9de31960e8b914be70203a1c8a9223",
      "parents": [
        "e8790ab4ce2a46505a8e1479645414425dbc81f0"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 06 14:10:23 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 06 14:16:16 2012 +0100"
      },
      "message": "regmap: Add hook for printk logging for debugging during early init\n\nSometimes for failures during very early init the trace infrastructure\nisn\u0027t available early enough to be used.  For this sort of problem\ndefining LOG_DEVICE will add printks for basic register I/O on a specific\ndevice, allowing trace to be extracted when the trace system doesn\u0027t come\nup early enough to work with.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "632a5b01db8cd4068a06f8a67720ea4f9b00d9b3",
      "tree": "6cb211520ebfef0c1ccb8d8fdb16b45bb3762bd4",
      "parents": [
        "6863ca6227598d15c372f1e03449bbb4cfbcca7f"
      ],
      "author": {
        "name": "Krystian Garbaciak",
        "email": "krystian.garbaciak@diasemi.com",
        "time": "Mon Jun 18 13:04:29 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jun 19 10:42:56 2012 +0100"
      },
      "message": "regmap: Fix work_buf switching for page update during virtual range access.\n\nAfter page update, orginal work_buf has to be restored regardless of\nthe result.\n\nSigned-off-by: Krystian Garbaciak \u003ckrystian.garbaciak@diasemi.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "6863ca6227598d15c372f1e03449bbb4cfbcca7f",
      "tree": "f665b666606afe35dcfe38899bd153412fed4771",
      "parents": [
        "fc3ebd788e894b4dd6c9524cb3874eeeb1e862d6"
      ],
      "author": {
        "name": "Krystian Garbaciak",
        "email": "krystian.garbaciak@diasemi.com",
        "time": "Fri Jun 15 11:23:56 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jun 17 21:34:18 2012 +0100"
      },
      "message": "regmap: Add support for register indirect addressing.\n\nDevices with register paging or indirectly accessed registers can configure\nregister mapping to map those on virtual address range. During access to\nvirtually mapped register range, indirect addressing is processed\nautomatically, in following steps:\n  1. selector for page or indirect register is updated (when needed);\n  2. register in data window is accessed.\n\nConfiguration should provide minimum and maximum register for virtual range,\ndetails of selector field for page selection, minimum and maximum register of\ndata window for indirect access.\n\nVirtual range registers are managed by cache as well as direct access\nregisters. In order to make indirect access more efficient, selector register\nshould be declared as non-volatile, if possible.\n\nstruct regmap_config is extended with the following:\nstruct regmap_range_cfg\t*ranges;\nunsigned int\t\tn_ranges;\n\n[Also reordered debugfs init to later on since the cleanup code was\nconflicting with the new cleanup code for ranges anyway -- broonie]\n\nSigned-off-by: Krystian Garbaciak \u003ckrystian.garbaciak@diasemi.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "fc3ebd788e894b4dd6c9524cb3874eeeb1e862d6",
      "tree": "f8e15faaaa7d5a689149ddcc5965dba684140d2b",
      "parents": [
        "485802a6c524e62b5924849dd727ddbb1497cc71"
      ],
      "author": {
        "name": "Krystian Garbaciak",
        "email": "krystian.garbaciak@diasemi.com",
        "time": "Fri Jun 15 11:23:56 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jun 17 21:30:39 2012 +0100"
      },
      "message": "regmap: Move lock out from internal function _regmap_update_bits().\n\nLocks are moved to regmap_update_bits(), which allows to reenter internal\nfunction _regmap_update_bits() from inside of regmap read/write routines.\n\nSigned-off-by: Krystian Garbaciak \u003ckrystian.garbaciak@diasemi.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "e8790ab4ce2a46505a8e1479645414425dbc81f0",
      "tree": "425d385c8e93019119323cc4727c6e3a5c2294f4",
      "parents": [
        "bd3810a58ba9c16702450c643ea3c557668185db"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Wed Jun 13 22:57:24 2012 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Jun 13 19:15:11 2012 +0100"
      },
      "message": "regmap: mmio: Staticize regmap_mmio_gen_context()\n\nregmap_mmio_gen_context() is only used in regmap-mmio.c. Thus make it static.\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nAcked-by: Stephen Warren \u003cswarren@wwwdotorg.org\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "752a6a5f84bfed18d0709383913d9d9d21b61c77",
      "tree": "9a3fdf303cdd3981a6ece1bf87c86211ff5d6efe",
      "parents": [
        "5494a98f451d59f6c05f3f688510e0832445f661"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon May 14 10:00:12 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jun 08 05:57:21 2012 +0800"
      },
      "message": "regmap: Export regmap_reinit_cache()\n\nIt\u0027s supposed to be there for drivers.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "a43fd50dc99a5f65505f174eca5a421707d73b4c",
      "tree": "18292c81dca6e3511c30d148a09bbbed4871b2eb",
      "parents": [
        "bfd6185ddecc6e6f6bd654c053c307c9e49ca391"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jun 05 14:34:03 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jun 05 14:38:20 2012 +0100"
      },
      "message": "regmap: Implement support for wake IRQs\n\nAllow chips to provide a bank of registers for controlling the wake state\nin a similar fashion to the masks and propagate the wake count to the\nparent interrupt controller.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "bfd6185ddecc6e6f6bd654c053c307c9e49ca391",
      "tree": "0374aabdf423ae10df80d4d2ecd2cb1f82507a1d",
      "parents": [
        "f8f5701bdaf9134b1f90e5044a82c66324d2073f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jun 05 14:29:36 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Jun 05 14:38:20 2012 +0100"
      },
      "message": "regmap: Don\u0027t try to map non-existant IRQs\n\nIf the driver supplied an empty entry in the array of IRQs then return\nan error rather than trying to do the mapping. This is intended for use\nwith handling chip variants and similar situations.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "b026ddbbd25e3560c8d69beb96a5980d96c59b43",
      "tree": "fd3bf714e9cf31e8d995079d701893f634bbe884",
      "parents": [
        "6a55244e897d32952832a67cb35cfbfa3f722c50"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu May 31 21:01:46 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jun 03 13:16:51 2012 +0100"
      },
      "message": "regmap: Constify regmap_irq_chip\n\nWe should never be modifying it and it lets drivers declare it const.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "5494a98f451d59f6c05f3f688510e0832445f661",
      "tree": "4df15dff1a3f3c490999c733aff7732ee968a2f9",
      "parents": [
        "bfaa25f33425db16a942b7c71e396a47581c646d"
      ],
      "author": {
        "name": "Fabio Estevam",
        "email": "fabio.estevam@freescale.com",
        "time": "Thu May 31 21:10:30 2012 -0300"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jun 03 13:14:01 2012 +0100"
      },
      "message": "regmap: Fix the size calculation for map-\u003eformat.buf_size\n\nThe word to be transmitted/received via regmap is composed by the following\nparts:\n\nconfig-\u003ereg_bits\nconfig-\u003eval_bits\nconfig-\u003epad_bits\n\n,so the total size should be calculated by summing up the number of bits of\neach element and using a DIV_ROUND_UP to return the number of bytes.\n\nSigned-off-by: Fabio Estevam \u003cfabio.estevam@freescale.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "bfaa25f33425db16a942b7c71e396a47581c646d",
      "tree": "af1ef3a7d93e5bfe8e85bee12eeb6318e5ece7b2",
      "parents": [
        "f8f5701bdaf9134b1f90e5044a82c66324d2073f"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed May 23 16:30:53 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jun 03 13:13:38 2012 +0100"
      },
      "message": "regmap: clean up debugfs if regmap_init fails\n\nIf debugfs isn\u0027t cleaned up, stale files will be left in the filesystem\nwhich will cause an OOPS when accessed the first time, and hang the\naccessing application when accessed again, presumably due to some lock\nbeing left held.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "6a55244e897d32952832a67cb35cfbfa3f722c50",
      "tree": "be0a289314b2f99ea6d4ffc2d7632d53c844e137",
      "parents": [
        "141eba2e006dd8145bed2e49fae3de5af65ab9b0"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Thu May 24 10:47:27 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jun 03 13:11:43 2012 +0100"
      },
      "message": "regmap: mmio: request native endian formatting\n\nThis will avoid the regmap core converting all addresses and values into\nbig endian, only for the mmio bus driver to have to convert them back to\nnative endian.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "141eba2e006dd8145bed2e49fae3de5af65ab9b0",
      "tree": "d8891499689971466ac978719c45c33d408fd5c5",
      "parents": [
        "f8f5701bdaf9134b1f90e5044a82c66324d2073f"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Thu May 24 10:47:26 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Jun 03 13:11:43 2012 +0100"
      },
      "message": "regmap: allow busses to request formatting with specific endianness\n\nAdd a field to struct regmap_bus that allows bus drivers to request that\nregister addresses and values be formatted with a specific endianness.\n\nThe default endianness is unchanged from current operation: Big.\n\nImplement native endian formatting/parsing for 16- and 32-bit values.\nThis will be enough to support regmap-mmio.c.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "14674e70119ea01549ce593d8901a797f8a90f74",
      "tree": "15474236bfa505aa396bf2892cbbee65e842b94b",
      "parents": [
        "838bfa6049fb84dc66c9c9bbeb3a968ec987fd3d"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed May 30 10:55:34 2012 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@endymion.delvare",
        "time": "Wed May 30 10:55:34 2012 +0200"
      },
      "message": "i2c: Split I2C_M_NOSTART support out of I2C_FUNC_PROTOCOL_MANGLING\n\nSince there are uses for I2C_M_NOSTART which are much more sensible and\nstandard than most of the protocol mangling functionality (the main one\nbeing gather writes to devices where something like a register address\nneeds to be inserted before a block of data) create a new I2C_FUNC_NOSTART\nfor this feature and update all the users to use it.\n\nAlso strengthen the disrecommendation of the protocol mangling while we\u0027re\nat it.\n\nIn the case of regmap-i2c we remove the requirement for mangling as\nI2C_M_NOSTART is the only mangling feature which is being used.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "18d5eacb52291faaa430fc50b435b3bb204dba88",
      "tree": "6e128bb4723309568167b8b570ac20233d236a81",
      "parents": [
        "c948ef3ae71c18c1079333b65d6887ceb4577618"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed May 23 10:15:42 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed May 23 10:15:51 2012 +0100"
      },
      "message": "regmap: Use select .. if to get IRQ_DOMAIN enabled\n\nEnsure that we can\u0027t get randconfig breakage by doing the IRQ_DOMAIN\nselect automatically. Don\u0027t just do the select from REGMAP_IRQ to ensure\nthat the select actually gets noticed.\n\nReported-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "38e7f5d1b73e71f87745a9c3e5806a6c28c34a53",
      "tree": "e0dd16a9be4f117d43d9a3afbd012e0d80304354",
      "parents": [
        "6550334f96ab02e540572a142d0851c7f3120585"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu May 17 13:59:40 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu May 17 22:59:24 2012 +0100"
      },
      "message": "regmap: Fix typo in IRQ register striding\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "022f926a2401c80ed36ebb48a1bffbac08f34d98",
      "tree": "7e39452a4312890ae6835f29ef87844467a5b2e0",
      "parents": [
        "4af8be67fd9989f4e63a8d1defc1895ed0f7d341"
      ],
      "author": {
        "name": "Graeme Gregory",
        "email": "gg@slimlogic.co.uk",
        "time": "Mon May 14 22:40:43 2012 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon May 14 17:40:05 2012 +0100"
      },
      "message": "regmap: add support for non contiguous status to regmap-irq\n\nIn some chips the IRQ status registers are not contiguous in the register\nmap but spaced at even spaces. This is an easy case to handle with minor\nchanges. It is assume for this purpose that the stride for status is\nequal to the stride for mask/ack registers as well.\n\nSigned-off-by: Graeme Gregory \u003cgg@slimlogic.co.uk\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4af8be67fd9989f4e63a8d1defc1895ed0f7d341",
      "tree": "19059e119ba376ebd9b2e72fc135464552bd070d",
      "parents": [
        "06e65cb322f91dc20fbcfc1a7ee2fb105ecc417b"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun May 13 10:59:56 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun May 13 19:25:59 2012 +0100"
      },
      "message": "regmap: Convert regmap_irq to use irq_domain\n\nThis gets us up to date with the recommended current kernel infrastructure\nand should transparently give us device tree interrupt bindings for any\ndevices using the framework. If an explicit IRQ mapping is passed in then\na legacy interrupt range is created, otherwise a simple linear mapping is\nused. Previously a mapping was mandatory so existing drivers should not\nbe affected.\n\nA function regmap_irq_get_virq() is provided to allow drivers to map\nindividual IRQs which should be used in preference to the existing\nregmap_irq_chip_get_base() which is only valid if a legacy IRQ range is\nprovided.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "06e65cb322f91dc20fbcfc1a7ee2fb105ecc417b",
      "tree": "d36f2924aebb6e3667422df0d46222443950f565",
      "parents": [
        "f298536728d02c19f11bda8d712ff61d767bab32",
        "25061d285747f20aafa4b50df1b0b5665fef29cd",
        "72b39f6f2b5a6b0beff14b80bed9756f151218a9",
        "2431d0a1d68aabefeee02b93971ee73e8b215697"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun May 13 19:20:47 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun May 13 19:20:47 2012 +0100"
      },
      "message": "Merge branches \u0027regmap-core\u0027, \u0027regmap-stride\u0027, \u0027regmap-mmio\u0027 and \u0027regmap-irq\u0027 into regmap-next\n"
    },
    {
      "commit": "2431d0a1d68aabefeee02b93971ee73e8b215697",
      "tree": "06fc50fc05594bd2f40475fe50a100c0677b29a8",
      "parents": [
        "8614419451d88bf99fff7f5e468fe45f8450891e"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun May 13 11:18:34 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun May 13 19:16:13 2012 +0100"
      },
      "message": "regmap: Pass back the allocated regmap IRQ controller data\n\nIt\u0027s needed for freeing and for obtaining the IRQ base later on.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "25061d285747f20aafa4b50df1b0b5665fef29cd",
      "tree": "c302ac93e3476788a4671ee556a902fce2592f3a",
      "parents": [
        "7a6476143270d947924f5bbbc124accb0e558bf4",
        "6560ffd1ccd688152393dc7c35dbdcc33140633b"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat May 12 13:06:08 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat May 12 13:06:08 2012 +0100"
      },
      "message": "Merge tag \u0027regmap-3.4\u0027 into regmap-stride\n\nregmap: Last minute bug fix for 3.4\n\nThis is a last minute bug fix that was only just noticed since the code\npath that\u0027s being exercised here is one that is fairly rarely used.  The\nchangelog for the change itself is extremely clear and the code itself\nis obvious to inspection so should be pretty safe.\n\nConflicts:\n\tdrivers/base/regmap/regmap.c (overlap between the fix and stride code)\n"
    },
    {
      "commit": "6560ffd1ccd688152393dc7c35dbdcc33140633b",
      "tree": "1b97199d8e97eedcb74904429dfc3793e2cfe557",
      "parents": [
        "d48b97b403d23f6df0b990cee652bdf9a52337a3"
      ],
      "author": {
        "name": "Laxman Dewangan",
        "email": "ldewangan@nvidia.com",
        "time": "Wed May 09 17:43:12 2012 +0530"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed May 09 15:44:11 2012 +0100"
      },
      "message": "regmap: fix possible memory corruption in regmap_bulk_read()\n\nThe function regmap_bulk_read() calls the regmap_read() for\neach register if set of register has volatile and cache is\nenabled. In this case, last few register read makes the memory\ncorruption if the register size is not the size of unsigned int.\nThe regam_read() takes argument as unsigned int for returning\nvalue and it update the value as\n\t*val \u003d map-\u003eformat.parse_val(map-\u003ework_buf);\nThis causes complete 4 bytes (size of unsigned int) to get written.\nNow if client pass the memory pointer for value which is equal to the\nrequired size of register count in regmap_bulk_read() then last few\nregister read actually update the memory beyond passed pointer size.\n\nAvoid this by using local variable for read and then do memcpy()\nfor actual byte copy to passed pointer based on register size.\n\nI allocated one pointer ptr and take first 16 bytes dump of that\npointer then call regmap_bulk_read() with pointer which is just\non top of this allocated pointer and register count of 128. Here\nregister size is 1 byte.\nThe memory trace of last 5 register read are as follows:\n\n[    5.438589] regmap_bulk_read after regamp_read() for register 122\n[    5.447421] 0xef993c20 0xef993c00 0x00000000 0x00000001\n[    5.467535] regmap_bulk_read after regamp_read() for register 123\n[    5.476374] 0xef993c20 0xef993c00 0x00000000 0x00000001\n[    5.496425] regmap_bulk_read after regamp_read() for register 124\n[    5.505260] 0xef993c20 0xef993c00 0x00000000 0x00000001\n[    5.525372] regmap_bulk_read after regamp_read() for register 125\n[    5.534205] 0xef993c00 0xef993c00 0x00000000 0x00000001\n[    5.554258] regmap_bulk_read after regamp_read() for register 126\n[    5.563100] 0xef990000 0xef993c00 0x00000000 0x00000001\n[    5.554258] regmap_bulk_read after regamp_read() for register 127\n[    5.587108] 0xef000000 0xef993c00 0x00000000 0x00000001\n\nHere it is observed that the memory content at first word started changing\non last 3 regmap_read() and so corruption happened.\n\nSigned-off-by: Laxman Dewangan \u003cldewangan@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "72b39f6f2b5a6b0beff14b80bed9756f151218a9",
      "tree": "c5e2688207b1c796413debfb1936ededf4493edc",
      "parents": [
        "851960ba7cb38a6a108d102e4c8b0ab702972e22"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue May 08 17:44:40 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue May 08 18:19:15 2012 +0100"
      },
      "message": "regmap: Implement dev_get_regmap()\n\nUse devres to implement dev_get_regmap(). This should mean that in almost\nall cases devices wishing to take advantage of framework features based on\nregmap shouldn\u0027t need to explicitly pass the regmap into the framework.\nThis simplifies device setup a bit.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "7a6476143270d947924f5bbbc124accb0e558bf4",
      "tree": "252e0f561b881960bab761081c6548eef300f329",
      "parents": [
        "2e33caf16f7a1903d226ef7f9f5ec6a234fee18e"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Apr 30 23:26:32 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Apr 30 23:30:15 2012 +0100"
      },
      "message": "regmap: Devices using format_write don\u0027t support bulk operations\n\nSet the use_single_rw flag for devices that use format_write() since\nformat_write() doesn\u0027t support any form of block operation.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "2e33caf16f7a1903d226ef7f9f5ec6a234fee18e",
      "tree": "b557691a1197a035eee85df52d4eb05bcb9f02fb",
      "parents": [
        "56806555de5485d6786bf0f8df01b8ed9fc5d006"
      ],
      "author": {
        "name": "Ashish Jangam",
        "email": "ashish.jangam@kpitcummins.com",
        "time": "Mon Apr 30 23:23:40 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Apr 30 23:29:56 2012 +0100"
      },
      "message": "regmap: Converts group operation into single read write operations\n\nSome devices does not support bulk read and write operations, for them\nwe have series of single write and read operations.\n\nSigned-off-by: Anthony Olech \u003cAnthony.Olech@diasemi.com\u003e\nSigned-off-by: Ashish Jangam \u003cashish.jangam@kpitcummins.com\u003e\n[Fixed coding style, don\u0027t check use_single_rw before assign --broonie ]\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "f298536728d02c19f11bda8d712ff61d767bab32",
      "tree": "7666d562d16a143a9549d0a6feb66b558e22fcbb",
      "parents": [
        "d939fb9a78b4743bc4bc3cc415894ed42050c5cc"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Apr 30 21:25:05 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Apr 30 22:57:10 2012 +0100"
      },
      "message": "regmap: Cache single values read from the chip\n\nIf we don\u0027t have a cached value for a register and we can cache it then\nwhen we do a read a value we should add it to the cache to save rereading\nit later on. Do this for single register reads, for block reads the code\nwould be a little more complex and this covers most practical usage.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "56806555de5485d6786bf0f8df01b8ed9fc5d006",
      "tree": "dbe09e86b284a412b445a1a48840f37cfe7f4662",
      "parents": [
        "f01ee60fffa4dc6c77122121233a793f7f696e67"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Tue Apr 10 23:37:22 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Apr 11 09:15:48 2012 +0100"
      },
      "message": "regmap: fix compile errors in regmap-irq.c due to stride changes\n\nCommit f01ee60fffa4 (\"regmap: implement register striding\") caused the\ncompile errors below. Fix them.\n\ndrivers/base/regmap/regmap-irq.c: In function \u0027regmap_irq_sync_unlock\u0027:\ndrivers/base/regmap/regmap-irq.c:62:12: error: \u0027map\u0027 undeclared (first use in this function)\ndrivers/base/regmap/regmap-irq.c:62:12: note: each undeclared identifier is reported only once for each function it appears in\ndrivers/base/regmap/regmap-irq.c: In function \u0027regmap_irq_enable\u0027:\ndrivers/base/regmap/regmap-irq.c:77:37: error: \u0027map\u0027 undeclared (first use in this function)\ndrivers/base/regmap/regmap-irq.c: In function \u0027regmap_irq_disable\u0027:\ndrivers/base/regmap/regmap-irq.c:85:37: error: \u0027map\u0027 undeclared (first use in this function)\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "f01ee60fffa4dc6c77122121233a793f7f696e67",
      "tree": "5072955487b9e4c80f5c6f6454358d80e8f23a48",
      "parents": [
        "c0cc6fe1d09e3f1baecbdf8922473c8e7d3a5317"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Mon Apr 09 13:40:24 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 10 11:01:18 2012 +0100"
      },
      "message": "regmap: implement register striding\n\nregmap_config.reg_stride is introduced. All extant register addresses\nare a multiple of this value. Users of serial-oriented regmap busses will\ntypically set this to 1. Users of the MMIO regmap bus will typically set\nthis based on the value size of their registers, in bytes, so 4 for a\n32-bit register.\n\nThroughout the regmap code, actual register addresses are used. Wherever\nthe register address is used to index some array of values, the address\nis divided by the stride to determine the index, or vice-versa. Error-\nchecking is added to all entry-points for register address data to ensure\nthat register addresses actually satisfy the specified stride. The MMIO\nbus ensures that the specified stride is large enough for the register\nsize.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "c0cc6fe1d09e3f1baecbdf8922473c8e7d3a5317",
      "tree": "a6bf2909f55e940c907b77cbaed9914bb1dda655",
      "parents": [
        "0034102808e0dbbf3a2394b82b1bb40b5778de9e",
        "d939fb9a78b4743bc4bc3cc415894ed42050c5cc",
        "851960ba7cb38a6a108d102e4c8b0ab702972e22",
        "abec95adefaeb2229cb28de65f3d32cd149b9dd9"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 10 11:01:07 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 10 11:01:07 2012 +0100"
      },
      "message": "Merge branches \u0027regmap-core\u0027, \u0027regmap-mmio\u0027 and \u0027regmap-naming\u0027 into regmap-stride\n"
    },
    {
      "commit": "abec95adefaeb2229cb28de65f3d32cd149b9dd9",
      "tree": "110b04593add3dc835c7497c93b6431e322770b5",
      "parents": [
        "d3c242e1f22f5dfed009296ee45ce896153f0b53"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Thu Apr 05 23:09:20 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 10 10:31:41 2012 +0100"
      },
      "message": "regmap: fix compilation when !CONFIG_DEBUG_FS\n\nCommit 79c64d5 \"regmap: allow regmap instances to be named\" changed the\nprototype of regmap_debugfs_init, but didn\u0027t update the dummy inline used\nwhen !CONFIG_DEBUGFS. Fix this.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "d3c242e1f22f5dfed009296ee45ce896153f0b53",
      "tree": "074bd0d53a1439e7201639d0acdeeedf5b3f0232",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Apr 04 15:48:29 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 10 10:31:41 2012 +0100"
      },
      "message": "regmap: allow regmap instances to be named\n\nSome devices have multiple separate register regions. Logically, one\nregmap would be created per region. One issue that prevents this is that\neach instance will attempt to create the same debugfs files. Avoid this\nby allowing regmaps to be named, and use the name to construct the\ndebugfs directory name.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "f4e52e7ffdea791c89494752b175b991090f0920",
      "tree": "5ba632b8127ebc1a71f52102ef59d44c41eeb67b",
      "parents": [
        "a3fac08085136fb8b56bbd290500ed03c94ee5d1",
        "c04c1b9ee8f30c7a3a25e20e406247003f634ebe"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 07 09:56:00 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 07 09:56:00 2012 -0700"
      },
      "message": "Merge tag \u0027regmap-3.4-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nPull two more small regmap fixes from Mark Brown:\n - Now we have users for it that aren\u0027t running Android it turns out\n   that regcache_sync_region() is much more useful to drivers if it\u0027s\n   exported for use by modules.  Who knew?\n - Make sure we don\u0027t divide by zero when doing debugfs dumps of\n   rbtrees, not visible up until now because everything was providing at\n   least some cache on startup.\n\n* tag \u0027regmap-3.4-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:\n  regmap: prevent division by zero in rbtree_show\n  regmap: Export regcache_sync_region()\n"
    },
    {
      "commit": "851960ba7cb38a6a108d102e4c8b0ab702972e22",
      "tree": "0af40ec3a92921077f71a2f8b703f64eb0eb322f",
      "parents": [
        "9878647f4349dbaa46b4026ed9bbf8acfc0de34c"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Fri Apr 06 15:16:03 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Apr 07 09:27:04 2012 +0100"
      },
      "message": "regmap: validate regmap_raw_read/write val_len\n\nval_len should be a multiple of val_bytes. If it\u0027s not, error out early.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "9878647f4349dbaa46b4026ed9bbf8acfc0de34c",
      "tree": "7d785cb74473da8cb3353359b74cfb2eccb1501a",
      "parents": [
        "40606dba450830e50420599c52a86cf6ce5c6a14"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Fri Apr 06 15:17:33 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Apr 07 09:25:35 2012 +0100"
      },
      "message": "regmap: mmio: remove some error checks now in the core\n\nThese error checks are implemented in regmap core. Remove the duplicate\ncode from regmap-mmio.c\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "40606dba450830e50420599c52a86cf6ce5c6a14",
      "tree": "05ba5a5027b2e583e8c66b96516ae8d0c7c09944",
      "parents": [
        "45f5ff8107a845854b1d1812ab1d9c5541f08b4d"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Fri Apr 06 15:17:32 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sat Apr 07 09:25:34 2012 +0100"
      },
      "message": "regmap: mmio: convert some error returns to BUG()\n\nSome of the error conditions detected by regmap_mmio_*() are pure internal\nerrors, rather than user-/client-triggerable conditions. Convert these to\nBUG().\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "45f5ff8107a845854b1d1812ab1d9c5541f08b4d",
      "tree": "d0d532ba060e3f3db9c7e376d90d1fcb34035c04",
      "parents": [
        "bacdbe077342ecc9e7b3e374cc5a41995116706a"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Apr 04 15:48:31 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Apr 06 10:47:35 2012 +0100"
      },
      "message": "regmap: add MMIO bus support\n\nThis is a basic memory-mapped-IO bus for regmap. It has the following\nfeatures and limitations:\n\n* Registers themselves may be 8, 16, 32, or 64-bit. 64-bit is only\n  supported on 64-bit platforms.\n* Register offsets are limited to precisely 32-bit.\n* IO is performed using readl/writel, with no provision for using the\n  __raw_readl or readl_relaxed variants.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "bacdbe077342ecc9e7b3e374cc5a41995116706a",
      "tree": "b5cf9547a0ab4a7fba287a3d654d132869057afa",
      "parents": [
        "0135bbcc7a0cc056f0203ff839466236b8e3dc19"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Apr 04 15:48:28 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Apr 06 10:47:34 2012 +0100"
      },
      "message": "regmap: introduce fast_io busses, and use a spinlock for them\n\nSome bus types have very fast IO. For these, acquiring a mutex for every\nIO operation is a significant overhead. Allow busses to indicate their IO\nis fast, and enhance regmap to use a spinlock for those busses.\n\n[Currently limited to native endian registers -- broonie]\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "0135bbcc7a0cc056f0203ff839466236b8e3dc19",
      "tree": "79f60f53754cfae8b9a5d9504502131d44ed3b14",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Apr 04 15:48:30 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Apr 06 10:47:34 2012 +0100"
      },
      "message": "regmap: introduce explicit bus_context for bus callbacks\n\nThe only context needed by I2C and SPI bus definitions is the device\nitself; this can be converted to an i2c_client or spi_device in order\nto perform IO on the device. However, other bus types may need more\ncontext in order to perform IO. Enable this by having regmap_init accept\na bus_context parameter, and pass this to all bus callbacks. The\nexisting callbacks simply pass the struct device here. Future bus types\nmay pass something else.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "5d32c88f0b94061b3af2e3ade92422407282eb12",
      "tree": "2e1f81aa47b2cf59625c8fba17199617e33802e6",
      "parents": [
        "43f63c8711ce02226b7bbdafeba7b8031faf3fb4",
        "dac23b0d0513916498d40412818bd2c581b365f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge batch of fixes from Andrew Morton:\n \"The simple_open() cleanup was held back while I wanted for laggards to\n  merge things.\n\n  I still need to send a few checkpoint/restore patches.  I\u0027ve been\n  wobbly about merging them because I\u0027m wobbly about the overall\n  prospects for success of the project.  But after speaking with Pavel\n  at the LSF conference, it sounds like they\u0027re further toward\n  completion than I feared - apparently davem is at the \"has stopped\n  complaining\" stage regarding the net changes.  So I need to go back\n  and re-review those patchs and their (lengthy) discussion.\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (16 patches)\n  memcg swap: use mem_cgroup_uncharge_swap fix\n  backlight: add driver for DA9052/53 PMIC v1\n  C6X: use set_current_blocked() and block_sigmask()\n  MAINTAINERS: add entry for sparse checker\n  MAINTAINERS: fix REMOTEPROC F: typo\n  alpha: use set_current_blocked() and block_sigmask()\n  simple_open: automatically convert to simple_open()\n  scripts/coccinelle/api/simple_open.cocci: semantic patch for simple_open()\n  libfs: add simple_open()\n  hugetlbfs: remove unregister_filesystem() when initializing module\n  drivers/rtc/rtc-88pm860x.c: fix rtc irq enable callback\n  fs/xattr.c:setxattr(): improve handling of allocation failures\n  fs/xattr.c:listxattr(): fall back to vmalloc() if kmalloc() failed\n  fs/xattr.c: suppress page allocation failure warnings from sys_listxattr()\n  sysrq: use SEND_SIG_FORCED instead of force_sig()\n  proc: fix mount -t proc -o AAA\n"
    },
    {
      "commit": "234e340582901211f40d8c732afc49f0630ecf05",
      "tree": "753076500dfd883b3db56d4f5410af31d8945623",
      "parents": [
        "9b3ae64be658a573b33d05a8dc73b08d3345fa44"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Thu Apr 05 14:25:11 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:25:50 2012 -0700"
      },
      "message": "simple_open: automatically convert to simple_open()\n\nMany users of debugfs copy the implementation of default_open() when\nthey want to support a custom read/write function op.  This leads to a\nproliferation of the default_open() implementation across the entire\ntree.\n\nNow that the common implementation has been consolidated into libfs we\ncan replace all the users of this function with simple_open().\n\nThis replacement was done with the following semantic patch:\n\n\u003csmpl\u003e\n@ open @\nidentifier open_f !\u003d simple_open;\nidentifier i, f;\n@@\n-int open_f(struct inode *i, struct file *f)\n-{\n(\n-if (i-\u003ei_private)\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n|\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n)\n-return 0;\n-}\n\n@ has_open depends on open @\nidentifier fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...\n-.open \u003d open_f,\n+.open \u003d simple_open,\n...\n};\n\u003c/smpl\u003e\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Julia Lawall \u003cJulia.Lawall@lip6.fr\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c04c1b9ee8f30c7a3a25e20e406247003f634ebe",
      "tree": "c8f1de34051bce402ee5be5d6dfadc4bc7e47ae1",
      "parents": [
        "e466de05194b666114713b753e2f4be1d4200140"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@nvidia.com",
        "time": "Wed Apr 04 15:48:33 2012 -0600"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Apr 04 23:22:15 2012 +0100"
      },
      "message": "regmap: prevent division by zero in rbtree_show\n\nIf there are no nodes in the cache, nodes will be 0, so calculating\n\"registers / nodes\" will cause division by zero.\n\nSigned-off-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "e466de05194b666114713b753e2f4be1d4200140",
      "tree": "d744106bb25b94cdc2e819b06483efc5202a5a28",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 03 13:08:53 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Tue Apr 03 13:08:53 2012 +0100"
      },
      "message": "regmap: Export regcache_sync_region()\n\nregcache_sync_region() isn\u0027t going to be useful to most drivers if we\ndon\u0027t export it since otherwise they can\u0027t use it when built modular.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "d939fb9a78b4743bc4bc3cc415894ed42050c5cc",
      "tree": "74980bd7c634676da11abb41f87447b50d3a4163",
      "parents": [
        "ea279fc5619e2541a0c28196b0fa06447d9ad026"
      ],
      "author": {
        "name": "Marc Reilly",
        "email": "marc@cpdesign.com.au",
        "time": "Fri Mar 16 12:11:43 2012 +1100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Apr 01 11:55:20 2012 +0100"
      },
      "message": "regmap: Use pad_bits and reg_bits when determining register format.\n\nThis change combines any padding bits into the register address bits when\ndetermining register format handlers to use the next byte-divisible\nregister size.\nA reg_shift member is introduced to the regmap struct to enable fixup\nof the reg format.\nFormat handlers now take an extra parameter specifying the number of\nbits to shift the value by.\n\nSigned-off-by: Marc Reilly \u003cmarc@cpdesign.com.au\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "ea279fc5619e2541a0c28196b0fa06447d9ad026",
      "tree": "897b7c313849b90d50e4c02efe3082dbdf8304da",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Marc Reilly",
        "email": "marc@cpdesign.com.au",
        "time": "Fri Mar 16 12:11:42 2012 +1100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Apr 01 11:54:06 2012 +0100"
      },
      "message": "regmap: Add support for device with 24 data bits.\n\nAdd support for devices with 24 data bits.\n\nSigned-off-by: Marc Reilly \u003cmarc@cpdesign.com.au\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4b4e9e43fd210e0cd2a5d29357e7c000e13e08ae",
      "tree": "fe7d224017c0c6ce72751a16bf9f9b12037b248d",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Fri Mar 23 11:04:57 2012 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Apr 01 11:47:13 2012 +0100"
      },
      "message": "regmap: rbtree: Fix register default look-up in sync\n\nThe code currently passes the register offset in the current block to\nregcache_lookup_reg. This works fine as long as there is only one block and with\nbase register of 0, but in all other cases it will look-up the default for a\nwrong register, which can cause unnecessary register writes. This patch fixes\nit by passing the actual register number to regcache_lookup_reg.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\n"
    },
    {
      "commit": "250f6715a4112d6686670c5a62ceb9305da94616",
      "tree": "ee1c9b41ed1fed8174efb312421902f19c877e8c",
      "parents": [
        "11bcb32848ddb5ab28f09f142b625e2ba4d55c4c",
        "313162d0b83836e2f57e51b9b8650fb4b9c396ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:41:37 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:41:37 2012 -0700"
      },
      "message": "Merge tag \u0027device-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull \u003clinux/device.h\u003e avoidance patches from Paul Gortmaker:\n \"Nearly every subsystem has some kind of header with a proto like:\n\n\tvoid foo(struct device *dev);\n\n  and yet there is no reason for most of these guys to care about the\n  sub fields within the device struct.  This allows us to significantly\n  reduce the scope of headers including headers.  For this instance, a\n  reduction of about 40% is achieved by replacing the include with the\n  simple fact that the device is some kind of a struct.\n\n  Unlike the much larger module.h cleanup, this one is simply two\n  commits.  One to fix the implicit \u003clinux/device.h\u003e users, and then one\n  to delete the device.h includes from the linux/include/ dir wherever\n  possible.\"\n\n* tag \u0027device-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  device.h: audit and cleanup users in main include dir\n  device.h: cleanup users outside of linux/include (C files)\n"
    },
    {
      "commit": "0a329d2d5a1dd75273597538cdc33512ee38855e",
      "tree": "5e4b51863a0b05e8866615e2da1e123173a61220",
      "parents": [
        "307b1cd7ecd7f3dc5ce3d3860957f034f0abe4df"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Mar 23 15:02:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:33 2012 -0700"
      },
      "message": "bitops: remove for_each_set_bit_cont()\n\nRemove for_each_set_bit_cont() after confirming that no one uses\nfor_each_set_bit_cont() anymore.\n\n[sfr@canb.auug.org.au: regmap: cope with bitops API change]\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "addfd8a09e1f434a73b3d87d36ef050c73511d2b",
      "tree": "22dd5a1f108dcd123797dbe9f5aa45e8d3faa492",
      "parents": [
        "eae4b51b21f7452b0b53a9848f48c02cb0fac336",
        "df00c79f78d8b0ad788daf689ea461ace9d0811f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:48 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:48 2012 +0000"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/bulk\u0027 into regmap-next\n"
    },
    {
      "commit": "eae4b51b21f7452b0b53a9848f48c02cb0fac336",
      "tree": "20d54023bf32e061866c83565d44d694e2598ba5",
      "parents": [
        "4a6be7bb7474500a69f6d8f25899b8038491bdbb",
        "a6539c32949063c8147905512a83a98842c2d254"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:03 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:15:03 2012 +0000"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/introspection\u0027 into regmap-next\n\nSimple add/add conflict:\n\tdrivers/base/regmap/regmap.c\n"
    },
    {
      "commit": "4a6be7bb7474500a69f6d8f25899b8038491bdbb",
      "tree": "a2645b0f707fcf1ea94a9e7ef7a59b298fb5ecac",
      "parents": [
        "7d9aca39dcacd2b3f42e2e287162329f410f93e1",
        "f9353e70bcebd00cd182d946083afd7d8eddd259"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:14:24 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:14:24 2012 +0000"
      },
      "message": "Merge remote-tracking branches \u0027regmap/topic/patch\u0027 and \u0027regmap/topic/sync\u0027 into regmap-next\n"
    },
    {
      "commit": "7d9aca39dcacd2b3f42e2e287162329f410f93e1",
      "tree": "2907b680b2b7625226f46d23d74ccc9c58ad0362",
      "parents": [
        "e1c1c69c8fc7656c33460c8e085ac0d0be22ac3b",
        "a0cc0209abb9fe2b9ab71aa41be70eddd0cbdd61"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:13:25 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:13:25 2012 +0000"
      },
      "message": "Merge remote-tracking branch \u0027regmap/topic/drivers\u0027 into regmap-next\n\nResolved simple add/add conflicts:\n\tdrivers/base/regmap/internal.h\n\tdrivers/base/regmap/regmap.c\n"
    },
    {
      "commit": "e1c1c69c8fc7656c33460c8e085ac0d0be22ac3b",
      "tree": "3199753118adf26baf52841cb913afa77f549829",
      "parents": [
        "f5d6eba74b8aac7d4bf646c5445807aa6a247e6c",
        "c0eb46766d395da8d62148bda2e59bad5e6ee2f2"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:12:33 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Mar 14 13:12:33 2012 +0000"
      },
      "message": "Merge remote-tracking branches \u0027regmap/topic/core\u0027 and \u0027regmap/topic/devm\u0027 into regmap-next\n"
    },
    {
      "commit": "51990e825431089747f8896244b5c17d3a6423f1",
      "tree": "5c1ef975ab55734a45444b629855a51f09775b93",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Jan 22 11:23:42 2012 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Mar 11 14:27:37 2012 -0400"
      },
      "message": "device.h: cleanup users outside of linux/include (C files)\n\nFor files that are actively using linux/device.h, make sure\nthat they call it out.  This will allow us to clean up some\nof the implicit uses of linux/device.h within include/*\nwithout introducing build regressions.\n\nYes, this was created by \"cheating\" -- i.e. the headers were\ncleaned up, and then the fallout was found and fixed, and then\nthe two commits were reordered.  This ensures we don\u0027t introduce\nbuild regressions into the git history.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "f5d6eba74b8aac7d4bf646c5445807aa6a247e6c",
      "tree": "8fe6aafeca1e69ce782eaf9fe71a20fdc5bb9d92",
      "parents": [
        "b83d2ff01376cf3799394693c0dd089f657bdf84"
      ],
      "author": {
        "name": "Stephen Warren",
        "email": "swarren@wwwdotorg.org",
        "time": "Fri Mar 09 13:17:28 2012 -0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Sun Mar 11 12:52:44 2012 +0000"
      },
      "message": "regmap: Fix future missing prototype of devres_alloc() and friends\n\n[Fix for breakage which will be introduced during the merge window via\nheader reworks in another tree, the regmap tree does include device.h\nbut Paul\u0027s tree breaks that.  Reworded subject to reflect -- broonie]\n\nregmap.s uses devres_alloc() and others that are prototyped in device.h.\nInclude that to solve the following:\n\ndrivers/base/regmap/regmap.c: In function \u0027devm_regmap_init\u0027:\ndrivers/base/regmap/regmap.c:331:2: error: implicit declaration of function \u0027devres_alloc\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/base/regmap/regmap.c:338:3: error: implicit declaration of function \u0027devres_add\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/base/regmap/regmap.c:340:3: error: implicit declaration of function \u0027devres_free\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/base/regmap/regmap.c: In function \u0027_regmap_raw_write\u0027:\ndrivers/base/regmap/regmap.c:421:5: error: implicit declaration of function \u0027dev_err\u0027 [-Werror\u003dimplicit-function-declaration]\n\nSigned-off-by: Stephen Warren \u003cswarren@wwwdotorg.org\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "f9353e70bcebd00cd182d946083afd7d8eddd259",
      "tree": "a13460f9e9e88796067c24f0853c8a386413f022",
      "parents": [
        "a0941e562e8008804f9fe4400315ceb164752fac"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:28:49 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:49:24 2012 +0000"
      },
      "message": "regmap: Fix rbtree block base in sync\n\nOtherwise we\u0027ll end up running with bogus register numbers.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "994f5db65ef4b83db0321842bd43c6bc0a51f000",
      "tree": "633121617abdf0799462b87ed19dd4cc7b2f2f56",
      "parents": [
        "19694b5ea1d3a723dafe9544b5ee9a935414dc28"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:31:39 2012 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon Mar 05 23:48:50 2012 +0000"
      },
      "message": "regcache: Make sure we sync register 0 in an rbtree cache\n\nMost of the current users have register 0 as a volatile register or don\u0027t\nhave a register 0 so it\u0027s not been apparent that it\u0027s not getting synced.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    }
  ],
  "next": "19694b5ea1d3a723dafe9544b5ee9a935414dc28"
}
