)]}'
{
  "log": [
    {
      "commit": "72e58063d63c5f0a7bf65312f1e3a5ed9bb5c2ff",
      "tree": "df5c21244d46aacef47e6b7fff3ad02c3612b15c",
      "parents": [
        "57c155d51e2f3d7411eeac5e7fd7634d2d1f6b4f",
        "489e176c71f36654dcb8835926f7e5717b8b4c19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 10:59:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 10:59:31 2010 -0700"
      },
      "message": "Merge branch \u0027davinci-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci\n\n* \u0027davinci-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci: (50 commits)\n  davinci: fix remaining board support after io_pgoffst removal\n  davinci: mityomapl138: make file local data static\n  arm/davinci: remove duplicated include\n  davinci: Initial support for Omapl138-Hawkboard\n  davinci: MityDSP-L138/MityARM-1808 read MAC address from I2C Prom\n  davinci: add tnetv107x touchscreen platform device\n  input: add driver for tnetv107x touchscreen controller\n  davinci: add keypad config for tnetv107x evm board\n  davinci: add tnetv107x keypad platform device\n  input: add driver for tnetv107x on-chip keypad controller\n  net: davinci_emac: cleanup unused cpdma code\n  net: davinci_emac: switch to new cpdma layer\n  net: davinci_emac: separate out cpdma code\n  net: davinci_emac: cleanup unused mdio emac code\n  omap: cleanup unused davinci mdio arch code\n  davinci: cleanup mdio arch code and switch to phy_id\n  net: davinci_emac: switch to new mdio\n  omap: add mdio platform devices\n  davinci: add mdio platform devices\n  net: davinci_emac: separate out davinci mdio\n  ...\n\nFix up trivial conflict in drivers/input/keyboard/Kconfig (two entries\nadded next to each other - one from the davinci merge, one from the\ninput merge)\n"
    },
    {
      "commit": "51f00a471ce8f359627dd99aeac322947a0e491b",
      "tree": "de3f0c26359d7846fc5d6d0fdd147e225d979add",
      "parents": [
        "a7f505c6b15fb35c0de8136e370d2927ce29452c",
        "97ff46cb69da22037346670ae515217c658ace02"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 08:19:14 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 08:19:14 2010 -0700"
      },
      "message": "Merge branch \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  mtd/m25p80: add support to parse the partitions by OF node\n  of/irq: of_irq.c needs to include linux/irq.h\n  of/mips: Cleanup some include directives/files.\n  of/mips: Add device tree support to MIPS\n  of/flattree: Eliminate need to provide early_init_dt_scan_chosen_arch\n  of/device: Rework to use common platform_device_alloc() for allocating devices\n  of/xsysace: Fix OF probing on little-endian systems\n  of: use __be32 types for big-endian device tree data\n  of/irq: remove references to NO_IRQ in drivers/of/platform.c\n  of/promtree: add package-to-path support to pdt\n  of/promtree: add of_pdt namespace to pdt code\n  of/promtree: no longer call prom_ functions directly; use an ops structure\n  of/promtree: make drivers/of/pdt.c no longer sparc-only\n  sparc: break out some PROM device-tree building code out into drivers/of\n  of/sparc: convert various prom_* functions to use phandle\n  sparc: stop exporting openprom.h header\n  powerpc, of_serial: Endianness issues setting up the serial ports\n  of: MTD: Fix OF probing on little-endian systems\n  of: GPIO: Fix OF probing on little-endian systems\n"
    },
    {
      "commit": "229aebb873e29726b91e076161649cf45154b0bf",
      "tree": "acc02a3702215bce8d914f4c8cc3d7a1382b1c67",
      "parents": [
        "8de547e1824437f3c6af180d3ed2162fa4b3f389",
        "50a23e6eec6f20d55a3a920e47adb455bff6046e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)\n  Update broken web addresses in arch directory.\n  Update broken web addresses in the kernel.\n  Revert \"drivers/usb: Remove unnecessary return\u0027s from void functions\" for musb gadget\n  Revert \"Fix typo: configuation \u003d\u003e configuration\" partially\n  ida: document IDA_BITMAP_LONGS calculation\n  ext2: fix a typo on comment in ext2/inode.c\n  drivers/scsi: Remove unnecessary casts of private_data\n  drivers/s390: Remove unnecessary casts of private_data\n  net/sunrpc/rpc_pipe.c: Remove unnecessary casts of private_data\n  drivers/infiniband: Remove unnecessary casts of private_data\n  drivers/gpu/drm: Remove unnecessary casts of private_data\n  kernel/pm_qos_params.c: Remove unnecessary casts of private_data\n  fs/ecryptfs: Remove unnecessary casts of private_data\n  fs/seq_file.c: Remove unnecessary casts of private_data\n  arm: uengine.c: remove C99 comments\n  arm: scoop.c: remove C99 comments\n  Fix typo configue \u003d\u003e configure in comments\n  Fix typo: configuation \u003d\u003e configuration\n  Fix typo interrest[ing|ed] \u003d\u003e interest[ing|ed]\n  Fix various typos of valid in comments\n  ...\n\nFix up trivial conflicts in:\n\tdrivers/char/ipmi/ipmi_si_intf.c\n\tdrivers/usb/gadget/rndis.c\n\tnet/irda/irnet/irnet_ppp.c\n"
    },
    {
      "commit": "4f3a29dadaf999a273f1e7fe2476595d0283eef3",
      "tree": "3776499f6edc95a36533c7efe32a7b6038c88b61",
      "parents": [
        "06d362931a530e0d48c1a9554a752da4ed240f0b",
        "45aafd32996e27bfc4862654ff31231bdddbe200"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 16:34:23 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 16:34:23 2010 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.infradead.org/ubi-2.6\n\n* \u0027linux-next\u0027 of git://git.infradead.org/ubi-2.6:\n  UBI: tighten the corrupted PEB criteria\n  UBI: fix check_data_ff return code\n  UBI: remember copy_flag while scanning\n  UBI: preserve corrupted PEBs\n  UBI: add truly corrupted PEBs to corrupted list\n  UBI: introduce debugging helper function\n  UBI: make check_pattern function non-static\n  UBI: do not put eraseblocks to the corrupted list unnecessarily\n  UBI: separate out corrupted list\n  UBI: change cascade of ifs to switch statements\n  UBI: rename a local variable\n  UBI: handle bit-flips when no header found\n  UBI: remove duplicate IO error codes\n  UBI: rename IO error code\n  UBI: fix small 80 characters limit style issue\n  UBI: cleanup and simplify Kconfig\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "c37927d4359e81b85de644f8fb08878717cf5f3f",
      "tree": "25dabf2d905e1410819d1bdaba0bf5f779100d3c",
      "parents": [
        "5704e44d283e907623e3775c1262f206a2c48cf3",
        "2a48fc0ab24241755dc93bfd4f01d68efab47f5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  block: autoconvert trivial BKL users to private mutex\n  drivers: autoconvert trivial BKL users to private mutex\n  ipmi: autoconvert trivial BKL users to private mutex\n  mac: autoconvert trivial BKL users to private mutex\n  mtd: autoconvert trivial BKL users to private mutex\n  scsi: autoconvert trivial BKL users to private mutex\n\nFix up trivial conflicts (due to addition of private mutex right next to\ndeletion of a version string) in drivers/char/pcmcia/cm40[04]0_cs.c\n"
    },
    {
      "commit": "97ff46cb69da22037346670ae515217c658ace02",
      "tree": "84acc87dfb6e1abcde654c1109a354c670c42ca4",
      "parents": [
        "530719b2341fea925f58a5d6be0353fa43a88baf"
      ],
      "author": {
        "name": "Mingkai Hu",
        "email": "Mingkai.hu@freescale.com",
        "time": "Tue Oct 12 18:18:34 2010 +0800"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Oct 22 01:37:16 2010 -0600"
      },
      "message": "mtd/m25p80: add support to parse the partitions by OF node\n\nSigned-off-by: Mingkai Hu \u003cMingkai.hu@freescale.com\u003e\n[grant.likely@secretlab.ca: wrap hunk with #ifdef CONFIG_OF]\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "b65378898c2eefb20f419632c1199bc0592e2f79",
      "tree": "052bb72d329c44790f91fc8097b8500d4774d02c",
      "parents": [
        "157b6ceb13e4b4148ee03dd517dbe88748943125",
        "5b917a1420d3d1a9c8da49fb0090692dc9aaee86"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:25:16 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:25:16 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (22 commits)\n  pcmcia: synclink_cs: fix information leak to userland\n  pcmcia: don\u0027t call flush_scheduled_work() spuriously\n  serial_cs: drop spurious flush_scheduled_work() call\n  pcmcia/yenta: guide users in case of problems with O2-bridges\n  pcmcia: fix unused function compile warning\n  pcmcia: vrc4173_cardu: Fix error path for pci_release_regions and pci_disable_device\n  pcmcia: add a few debug statements\n  pcmcia: remove obsolete and wrong comments\n  pcmcia: avoid messages on module (un)loading\n  pcmcia: move driver name to struct pcmcia_driver\n  pcmcia: remove the \"Finally, report what we\u0027ve done\" message\n  pcmcia: use autoconfiguration feature for ioports and iomem\n  pcmcia: introduce autoconfiguration feature\n  pcmcia: Documentation update\n  pcmcia: convert pcmcia_request_configuration to pcmcia_enable_device\n  pcmcia: move config_{base,index,regs} to struct pcmcia_device\n  pcmcia: simplify IntType\n  pcmcia: simplify Status, ExtStatus register access\n  pcmcia: remove Pin, Copy configuration register access\n  pcmcia: move Vpp setup to struct pcmcia_device\n  ...\n"
    },
    {
      "commit": "7940a34b2e1e0485211a17d8c3ab4da1ea3e1330",
      "tree": "fe08ba701cbf23ae44a16d3b7afa521fce943a8a",
      "parents": [
        "6451d7783ba5ff24eb1a544eaa6665b890f30466",
        "8939b3504dc35224cb9c88e5af925b22ea9eee71"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Thu Oct 21 11:21:55 2010 -0700"
      },
      "committer": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Thu Oct 21 11:21:55 2010 -0700"
      },
      "message": "Merge branch \u0027davinci-next\u0027 into davinci-for-linus\n\nConflicts:\n\tarch/arm/mach-davinci/board-da830-evm.c\n\tarch/arm/mach-davinci/board-da850-evm.c\n"
    },
    {
      "commit": "45aafd32996e27bfc4862654ff31231bdddbe200",
      "tree": "fd2dee47b52135e9532d479a0378a8ec52af6eba",
      "parents": [
        "df3fca4cdddfa6e1f51b65214d4342660649bd1f"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Oct 20 11:54:58 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Oct 21 11:20:37 2010 +0300"
      },
      "message": "UBI: tighten the corrupted PEB criteria\n\nIf we get a bit-flip of ECC error while reading the data area, do not add it to\ncorrupted list, because it is possible that this is just unstable PEB with\ncorruptions caused by unclean reboots.\n\nThis patch also improves commentaries.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "df3fca4cdddfa6e1f51b65214d4342660649bd1f",
      "tree": "13389da659d8d2235f8a56f7e263f11bced19fc6",
      "parents": [
        "fb22b59b2c38054cc847f6acc5c46daa26dc6dd3"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Oct 20 11:51:21 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Oct 21 11:20:37 2010 +0300"
      },
      "message": "UBI: fix check_data_ff return code\n\nWhen the data does not contain all 0xFF bytes, \u0027check_data_ff()\u0027 should return\n1, not -EINVAL; Also, the caller (\u0027process_eb()\u0027) should not add the PEB to the\n\"corrupted\" list if there was a read error.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "fb22b59b2c38054cc847f6acc5c46daa26dc6dd3",
      "tree": "76025e34f0934b8e7186972e43849dc4a8f19606",
      "parents": [
        "5fc01ab6934c43b42c41bc753fe1123c16d7f38f"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 22:00:11 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Oct 21 11:20:36 2010 +0300"
      },
      "message": "UBI: remember copy_flag while scanning\n\nWhile scanning the flash we read all VID headers and store some important\ninformation in \u0027struct ubi_scan_leb\u0027. Store also the \u0027copy_flag\u0027 value there\nas it is needed when comparing LEBs. We do not increase memory consumption\nbecause this is just one bit and we have plenty of spare bits in\n\u0027struct ubi_scan_leb\u0027 (sizeof(struct ubi_scan_leb) is 48 both with and\nwithout this patch).\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "5fc01ab6934c43b42c41bc753fe1123c16d7f38f",
      "tree": "174a1e1a0d283ec8ca4c756d7f354a475ac46a36",
      "parents": [
        "feeba4b872e5166ca64c44fbb5bbec234dfce199"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 23:08:15 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:57 2010 +0300"
      },
      "message": "UBI: preserve corrupted PEBs\n\nCurrently UBI erases all corrupted eraseblocks, irrespectively of the nature\nof corruption: corruption due to power cuts and non-power cut corruption.\nThe former case is OK, but the latter is not, because UBI may destroy\npotentially important data.\n\nWith this patch, during scanning, when UBI hits a PEB with corrupted VID\nheader, it checks whether this PEB contains only 0xFF data. If yes, it is\nsafe to erase this PEB and it is put to the \u0027erase\u0027 list. If not, this may\nbe important data and it is better to avoid erasing this PEB. Instead,\nUBI puts it to the corr list and moves out of the pool of available PEB.\nIOW, UBI preserves this PEB.\n\nSuch corrupted PEB lessen the amount of available PEBs. So the more of them\nwe accumulate, the less PEBs are available. The maximum amount of non-power\ncut corrupted PEBs is 8.\n\nThis patch is a response to UBIFS problem where reporter\n(Matthew L. Creech \u003cmlcreech@gmail.com\u003e) observes that UBIFS index points\nto an unmapped LEB. The theory is that corresponding PEB somehow got\ncorrupted and UBI wiped it. This patch (actually a series of patches)\ntries to make sure such PEBs are preserved - this would make it is easier\nto analyze the corruption.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "feeba4b872e5166ca64c44fbb5bbec234dfce199",
      "tree": "5120bbb0e351ae3f108e33f70281e53b9eebe5c5",
      "parents": [
        "315324947cbc7264af86b7ecdc2d5fb5f8556222"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 22:50:53 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:57 2010 +0300"
      },
      "message": "UBI: add truly corrupted PEBs to corrupted list\n\nStart using the \u0027corr\u0027 list and add there PEBs which look truly corrupted,\nwhich means they have corrupted VID header and the data which follows the\ncorrupted header does not contain all 0xFF bytes.\n\nAt the moment, this does not change UBI functionality much because these\nPEBs will be erase when scanning finishes. But the plan is to teach UBI\npreserving them.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "315324947cbc7264af86b7ecdc2d5fb5f8556222",
      "tree": "2e4ded851b2138e5e46ca43458564d3408c68c68",
      "parents": [
        "bb00e180a93a6c8e89c3b2d1f9473781e1e2d2a4"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 22:27:46 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:57 2010 +0300"
      },
      "message": "UBI: introduce debugging helper function\n\nIntroduce a helper function to print hexdump: \u0027ubi_dbg_print_hex_dump()\u0027.\nIt is compiled out if debugging is enabled. Will be used in the next patch.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "bb00e180a93a6c8e89c3b2d1f9473781e1e2d2a4",
      "tree": "87bd9ddc65052014e36e4fb0565e73d7ff4dd992",
      "parents": [
        "0525dac9fd31e5a12fb934238abd09e2752a5967"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sat Jul 31 09:37:34 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:57 2010 +0300"
      },
      "message": "UBI: make check_pattern function non-static\n\nThis patch turns static function \u0027check_pattern()\u0027 into a non-static\n\u0027ubi_check_pattern()\u0027. This is just a preparation for the chages which\nare coming in the next patches.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "0525dac9fd31e5a12fb934238abd09e2752a5967",
      "tree": "9f5f04c0d073d9c4e628afdaa5ad00a1504061f0",
      "parents": [
        "3fb34124da9d5e37576d9f87d7a5005ba1d82dd7"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 17:11:37 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:57 2010 +0300"
      },
      "message": "UBI: do not put eraseblocks to the corrupted list unnecessarily\n\nCurrently UBI maintains 2 lists of PEBs during scanning:\n1. \u0027erase\u0027 list - PEBs which have no corruptions but should be erased\n2. \u0027corr\u0027 list - PEBs which have some corruptions and should be erased\n\nBut we do not really need 2 lists for PEBs which should be erased after\nscanning is done - this is redundant. So this patch makes sure all PEBs\nwhich are corrupted are moved to the head of the \u0027erase\u0027 list. We add\nthem to the head to make sure they are erased first and we get rid of\ncorruption ASAP.\n\nHowever, we do not remove the \u0027corr\u0027 list and realted functions, because\nthe plan is to use this list for other purposes. Namely, we plan to\nput eraseblocks with corruption which does not look like it was caused\nby unclean power cut. Then we\u0027ll preserve thes PEBs in order to avoid\nkilling potentially valuable user data.\n\nThis patch also amends PEBs accounting, because it was closely tight to\nthe \u0027erase\u0027/\u0027corr\u0027 lists separation.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "3fb34124da9d5e37576d9f87d7a5005ba1d82dd7",
      "tree": "98f4ff2696b1cd480e3fb43b93f637e2b5bc8bd0",
      "parents": [
        "b33215084c1c06258a2d9deb035d343aafa4066e"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 15:36:12 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:56 2010 +0300"
      },
      "message": "UBI: separate out corrupted list\n\nThis patch introduces \u0027add_corrupted()\u0027 function and separates out \u0027corr\u0027 list\nmanipulation from the common \u0027add_to_list()\u0027 function. This is just a\npreparation for further changes - this patch does not change functionality.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "b33215084c1c06258a2d9deb035d343aafa4066e",
      "tree": "fd93b1b76a871e85b680c83de2ec4a81c3444025",
      "parents": [
        "e0e718c281ce1dd4006681e1255535cc6f2857d4"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 14:40:55 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:56 2010 +0300"
      },
      "message": "UBI: change cascade of ifs to switch statements\n\nThis patch improves readability and simplifies scanning code by changing a\nlong cascade of \u0027if\u0027 statements to a switch statement. This should presumably\nbe a little faster as well.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "e0e718c281ce1dd4006681e1255535cc6f2857d4",
      "tree": "14958b8e11ffd676360f8709501924ff0963b7ae",
      "parents": [
        "92e1a7d9e7e07fb1cf0cbbcdf202938d0819b54d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 14:53:23 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:56 2010 +0300"
      },
      "message": "UBI: rename a local variable\n\nRename local variable \u0027ec_corr\u0027 into \u0027ec_err\u0027 to make the code a little bit\nmore readable. \u0027ec_err\u0027 is more appropriate because it sounds more like \u0027error\nwhen EC was read\u0027 and it looks more logical because we use it together with\n\u0027err\u0027. Just a minor nicification which should improve the rather complex\nscanning code.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "92e1a7d9e7e07fb1cf0cbbcdf202938d0819b54d",
      "tree": "48930121fa2f1cf9ebd36f85118fe433d1ecd01f",
      "parents": [
        "74d82d2660058e32644f0c673656b2a1d01d3688"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 14:22:17 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:56 2010 +0300"
      },
      "message": "UBI: handle bit-flips when no header found\n\nCurrently UBI has one small flaw - when we read EC or VID header, but find only\n0xFF bytes, we return UBI_IO_FF and do not report whether we had bit-flips or\nnot. In case of the VID header, the scanning code adds this PEB to the free list,\neven though there were bit-flips.\n\nImagine the following situation: we start writing VID header to a PEB and have a\npower cut, so the PEB becomes unstable. When we scan and read the PEB, we get\na bit-flip. Currently, UBI would just ignore this and treat the PEB as free. This\npatch changes UBI behavior and now UBI will schedule this PEB for erasure.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "74d82d2660058e32644f0c673656b2a1d01d3688",
      "tree": "8b90af4d6014ea50d74c504dc832cf3a9c3fff10",
      "parents": [
        "756e1df1d2b8b572a92dd1b82d2a432d5b280b1c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 02:11:20 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:56 2010 +0300"
      },
      "message": "UBI: remove duplicate IO error codes\n\nThe \u0027UBI_IO_PEB_EMPTY\u0027 and \u0027UBI_IO_PEB_FREE\u0027 are essentially the same\nand mean that there are only 0xFF bytes instead of headers. Simplify\nUBI a little by turning them into a single \u0027UBI_IO_FF\u0027 error code.\n\nAlso, stop maintaining commentaries in \u0027ubi_io_read_vid_hdr()\u0027 which are\nalmost identical to commentaries in \u0027ubi_io_read_ec_hdr()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "756e1df1d2b8b572a92dd1b82d2a432d5b280b1c",
      "tree": "e1109e8a31f72bb3c50b2001f28983c1bdfba1a9",
      "parents": [
        "c174a08c72ae77a05be59d0d810dc13239b81e8e"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 01:30:16 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:56 2010 +0300"
      },
      "message": "UBI: rename IO error code\n\nRename UBI_IO_BAD_HDR_READ into UBI_IO_BAD_HDR_EBADMSG which is presumably more\nself-documenting and readable. Indeed, the \u0027_READ\u0027 suffix does not tell much and\neven confuses, while \u0027_EBADMSG\u0027 tells about uncorrectable ECC error, because we\nuse -EBADMSG all over the place to represent ECC errors.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "c174a08c72ae77a05be59d0d810dc13239b81e8e",
      "tree": "be1b596614c912e29890c24bfcecf48beff6965e",
      "parents": [
        "1dd786328ff42b239a00fdbcdaed6fd9709042bf"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Sep 03 15:11:17 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:55 2010 +0300"
      },
      "message": "UBI: fix small 80 characters limit style issue\n\nOne line was longer than 80 lines, make it shorter.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "1dd786328ff42b239a00fdbcdaed6fd9709042bf",
      "tree": "2bdf0f5d47f47c87c9c976900ab9d47716b4bb66",
      "parents": [
        "cd07202cc8262e1669edff0d97715f3dd9260917"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Thu Aug 19 17:28:50 2010 -0700"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Oct 19 17:19:55 2010 +0300"
      },
      "message": "UBI: cleanup and simplify Kconfig\n\nCleanup the Kconfig for UBI by using menuconfig to enable/disable the entire\ndriver. Remove the dependency checks for MTD_UBI and MTD_UBI_DEBUG by\nwrapping the options in if/endif blocks and remove any redundant checks.\nRemove all default n since that is the Kconfig default. Change menu \"Additional\nUBI debugging messages\" into a comment to remove one menu level.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "63f1474c69c061f923068a25f136dca0c49cd478",
      "tree": "2506d897c28391ffacd9ff0f32fa4f1de7126a7e",
      "parents": [
        "f68c834b045afc8c80ec167cccf48934c8970022"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Mon Oct 18 10:16:26 2010 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 18 13:09:05 2010 -0700"
      },
      "message": "mxc_nand: do not depend on disabling the irq in the interrupt handler\n\nThis patch reverts the driver to enabling/disabling the NFC interrupt\nmask rather than enabling/disabling the system interrupt.  This cleans\nup the driver so that it doesn\u0027t rely on interrupts being disabled\nwithin the interrupt handler.\n\nFor i.MX21 we keep the current behaviour, that is calling\nenable_irq/disable_irq_nosync to enable/disable interrupts.  This patch\nis based on earlier work by John Ogness.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nAcked-by: John Ogness \u003cjohn.ogness@linutronix.de\u003e\nTested-by: John Ogness \u003cjohn.ogness@linutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "631dd1a885b6d7e9f6f51b4e5b311c2bb04c323c",
      "tree": "c431fa3479c1d35842fb5635ed7ccd487d063a62",
      "parents": [
        "d7eccbbae84b2ee7dbb756e60287c4b47071444e"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "message": "Update broken web addresses in the kernel.\n\nThe patch below updates broken web addresses in the kernel\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nCc: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Dimitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nAcked-by: Ben Pfaff \u003cblp@cs.stanford.edu\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nReviewed-by: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "2a48fc0ab24241755dc93bfd4f01d68efab47f5a",
      "tree": "fa9ae10ce89b26b7d8ae9ce24bdfda5e3007b763",
      "parents": [
        "613655fa39ff6957754fa8ceb8559980920eb8ee"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 02 14:28:52 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 05 15:01:10 2010 +0200"
      },
      "message": "block: autoconvert trivial BKL users to private mutex\n\nThe block device drivers have all gained new lock_kernel\ncalls from a recent pushdown, and some of the drivers\nwere already using the BKL before.\n\nThis turns the BKL into a set of per-driver mutexes.\nStill need to check whether this is safe to do.\n\nfile\u003d$1\nname\u003d$2\nif grep -q lock_kernel ${file} ; then\n    if grep -q \u0027include.*linux.mutex.h\u0027 ${file} ; then\n            sed -i \u0027/include.*\u003clinux\\/smp_lock.h\u003e/d\u0027 ${file}\n    else\n            sed -i \u0027s/include.*\u003clinux\\/smp_lock.h\u003e.*$/include \u003clinux\\/mutex.h\u003e/g\u0027 ${file}\n    fi\n    sed -i ${file} \\\n        -e \"/^#include.*linux.mutex.h/,$ {\n                1,/^\\(static\\|int\\|long\\)/ {\n                     /^\\(static\\|int\\|long\\)/istatic DEFINE_MUTEX(${name}_mutex);\n\n} }\"  \\\n    -e \"s/\\(un\\)*lock_kernel\\\u003e[ ]*()/mutex_\\1lock(\\\u0026${name}_mutex)/g\" \\\n    -e \u0027/[      ]*cycle_kernel_lock();/d\u0027\nelse\n    sed -i -e \u0027/include.*\\\u003csmp_lock.h\\\u003e/d\u0027 ${file}  \\\n                -e \u0027/cycle_kernel_lock()/d\u0027\nfi\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "f12f662f29d5801e598c6bb4a71e54b2de218f72",
      "tree": "591c389ec99d992cb3b9b093ddc0463c929b7b1e",
      "parents": [
        "899611ee7d373e5eeda08e9a8632684e1ebbbf00"
      ],
      "author": {
        "name": "Daniel J Blueman",
        "email": "daniel.blueman@gmail.com",
        "time": "Wed Sep 29 21:01:55 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 29 13:17:56 2010 -0700"
      },
      "message": "fix OMAP2 MTD build failure\n\nFix build failure from recent interface change and merge.\n\nTested on OMAP3430.\n\nSigned-off-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2262054e74b4b26ed56a8535c1259f6c6c2862a4",
      "tree": "fbcd0aa7879408b9676c2df6c7514e5d7428880a",
      "parents": [
        "06b3a1d12f41b592972643f8b84015d6c03dc576"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Aug 15 08:38:38 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:25 2010 +0200"
      },
      "message": "pcmcia: remove obsolete and wrong comments\n\nWhat\u0027s worse than no comment? A wrong comment.\n\nSeveral PCMCIA device drivers contained the same comments, which\nwere based on how the PCMCIA subsystem worked in the old days of 2.4.,\nand which were originally part of a \"dummy_cs\" driver. These comments\nno longer matched at all what is happening now, and therefore should\nbe removed.\n\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "06b3a1d12f41b592972643f8b84015d6c03dc576",
      "tree": "9c2e9450a74f3cea78d8819bfcd305f3f6c40b0d",
      "parents": [
        "2e9b981a7c63ee8278df6823f8389d69dad1a499"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Aug 08 12:27:40 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:25 2010 +0200"
      },
      "message": "pcmcia: avoid messages on module (un)loading\n\nprintk() statements on module load or unload are frowned upon. Also,\nadd a few __init or __exit declarations.\n\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "2e9b981a7c63ee8278df6823f8389d69dad1a499",
      "tree": "7d88e2a03a3202ba26ce7dbcf6909e28d44f690c",
      "parents": [
        "1cc745d1cdca8086b472a06671f0830fc0e98861"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Aug 08 11:36:26 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:24 2010 +0200"
      },
      "message": "pcmcia: move driver name to struct pcmcia_driver\n\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "1ac71e5a35eebee60cdcf15b3980bd94498f037b",
      "tree": "22fa9342ccccce6a774af029ce51a526e55f8180",
      "parents": [
        "7feabb6412ea23edd298c0fa90e5aa6733eb4a42"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Thu Jul 29 19:27:09 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:23 2010 +0200"
      },
      "message": "pcmcia: convert pcmcia_request_configuration to pcmcia_enable_device\n\npcmcia_enable_device() now replaces pcmcia_request_configuration().\nInstead of config_req_t, all necessary flags are either passed as\na parameter to pcmcia_enable_device(), or (in rare circumstances)\nset in struct pcmcia_device -\u003e flags.\n\nWith the last remaining user of include/pcmcia/cs.h gone, remove\nall references.\n\nCC: netdev@vger.kernel.org\nCC: linux-wireless@vger.kernel.org\nCC: linux-ide@vger.kernel.org\nCC: linux-usb@vger.kernel.org\nCC: laforge@gnumonks.org\nCC: linux-mtd@lists.infradead.org\nCC: alsa-devel@alsa-project.org\nCC: linux-serial@vger.kernel.org\nCC: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCC: linux-scsi@vger.kernel.org\nAcked-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e (for drivers/bluetooth)\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "7feabb6412ea23edd298c0fa90e5aa6733eb4a42",
      "tree": "bfafe961aeb5449a71fbb389172b3a6c68b56e7c",
      "parents": [
        "37979e1546a790c44adbc7f27a85569944480ebc"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Thu Jul 29 18:35:47 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:22 2010 +0200"
      },
      "message": "pcmcia: move config_{base,index,regs} to struct pcmcia_device\n\nSeveral drivers prefer to explicitly set config_{base,index,regs},\nformerly known as ConfigBase, ConfigIndex and Present. Instead of\npassing these values inside config_req_t, store it in struct\npcmcia_device.\n\nCC: netdev@vger.kernel.org\nCC: linux-wireless@vger.kernel.org\nCC: linux-ide@vger.kernel.org\nCC: linux-usb@vger.kernel.org\nCC: laforge@gnumonks.org\nCC: linux-mtd@lists.infradead.org\nCC: alsa-devel@alsa-project.org\nCC: linux-serial@vger.kernel.org\nCC: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCC: linux-scsi@vger.kernel.org\nAcked-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e (for drivers/bluetooth)\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "37979e1546a790c44adbc7f27a85569944480ebc",
      "tree": "18499b4d2890409c1cbe49cc1af97b57f4a2c906",
      "parents": [
        "fc301101034c06bf56a7f71bf682c48909e401a4"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Thu Jul 29 16:33:23 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:22 2010 +0200"
      },
      "message": "pcmcia: simplify IntType\n\nIntType was only set to INT_MEMORY (driver pcmciamtd) or INT_MEMORY_AND_IO\n(all other drivers). As this flags seems to relate to ioport access, make\nit conditional to the driver having requested IO port access. There are two\ndrivers which do not request IO ports, but did set INT_MEMORY_AND_IO:\nray_cs and b43. For those, we consistently only set INT_MEMORY in future.\n\nCC: netdev@vger.kernel.org\nCC: linux-wireless@vger.kernel.org\nCC: linux-ide@vger.kernel.org\nCC: linux-usb@vger.kernel.org\nCC: laforge@gnumonks.org\nCC: linux-mtd@lists.infradead.org\nCC: alsa-devel@alsa-project.org\nCC: linux-serial@vger.kernel.org\nCC: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCC: linux-scsi@vger.kernel.org\nAcked-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e (for drivers/bluetooth)\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "e8405f0f617856de0ceb7d04e65b663051451544",
      "tree": "06e9cd27419a40587bcec19b71010e52b7dfcba4",
      "parents": [
        "fb49fa533f9d211994c33efb752ffa5b30033729"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Thu Jul 29 15:50:55 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:21 2010 +0200"
      },
      "message": "pcmcia: move Vpp setup to struct pcmcia_device\n\nSome drivers prefer to explicitly set Vpp. Instead of passing the\nvoltage inside config_req_t, store it in struct pcmcia_device.\n\nCC: linux-ide@vger.kernel.org\nCC: netdev@vger.kernel.org\nCC: linux-mtd@lists.infradead.org\nCC: linux-wireless@vger.kernel.org\nCC: linux-serial@vger.kernel.org\nCC: linux-usb@vger.kernel.org\nCC: linux-scsi@vger.kernel.org\nAcked-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e (for drivers/bluetooth)\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "fb49fa533f9d211994c33efb752ffa5b30033729",
      "tree": "675d26cf01c23d9623f274971a065b0dedb10f3a",
      "parents": [
        "cdb138080b78146d1cdadba9f5dadbeb97445b91"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Thu Jul 29 14:06:42 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:21 2010 +0200"
      },
      "message": "pcmcia: split up modify_configuration() into two fixup functions\n\npcmcia_modify_configuration() was only used by two drivers to fix up\none issue each: setting the Vpp to a different value, and reducing\nthe IO width to 8 bit. Introduce two explicitly named functions\nhandling these things, and remove one further typedef.\n\nCC: netdev@vger.kernel.org\nCC: linux-mtd@lists.infradead.org\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "cdb138080b78146d1cdadba9f5dadbeb97445b91",
      "tree": "fae26f709ed0f19648db79059234faf9fa028051",
      "parents": [
        "899611ee7d373e5eeda08e9a8632684e1ebbbf00"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Jul 28 10:59:06 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Sep 29 17:20:21 2010 +0200"
      },
      "message": "pcmcia: do not use win_req_t when calling pcmcia_request_window()\n\nInstead of win_req_t, drivers are now requested to fill out\nstruct pcmcia_device *p_dev-\u003eresource[2,3,4,5] for up to four iomem\nranges. After a call to pcmcia_request_window(), the windows found there\nare reserved and may be used until pcmcia_release_window() is called.\n\nCC: netdev@vger.kernel.org\nCC: linux-wireless@vger.kernel.org\nCC: linux-mtd@lists.infradead.org\nCC: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCC: linux-scsi@vger.kernel.org\nTested-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "2548558445b43c1f18a61c0bd3629f92dffa612e",
      "tree": "eabc0c5ea0d82f703225520a8545b5b4e341ced4",
      "parents": [
        "a04e78b8579272c37c42a9badb6dae71f38fe4a9"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Wed Sep 29 15:52:13 2010 +1000"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Sep 29 15:28:14 2010 +0900"
      },
      "message": "of: MTD: Fix OF probing on little-endian systems\n\nConvert big-endian DTB to little-endian if necessary.\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "a88dbc5bfdd26132bbf0ad19dd672e036971d74d",
      "tree": "112aa4d073c606352a2fc938a953a913b21d18bc",
      "parents": [
        "8060ef4da9e73f461adf2ba1922ea5400a61cf98"
      ],
      "author": {
        "name": "Sekhar Nori",
        "email": "nsekhar@ti.com",
        "time": "Mon Aug 09 15:46:36 2010 +0530"
      },
      "committer": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Fri Sep 24 07:40:26 2010 -0700"
      },
      "message": "nand: davinci: add support for timing configuration\n\nThis patch modifies the DaVinci NAND driver to use the\nnew AEMIF timing setup API to configure the NAND access\ntimings.\n\nEarlier, AEMIF configuration was being done as a special\ncase for DM644x board, but now more boards emerge which have\ncapability to boot for other media (SPI flash, NOR flash) and\nhave the kernel access NAND flash. This means that kernel cannot\nalways  depend on the bootloader to setup the NAND.\n\nAlso, on platforms such as da850/omap-l138, the aemif input\nfrequency changes as cpu frequency changes; necessiating\nre-calculation of timimg values as part of cpufreq transtitions.\nThis patch forms the basis for adding that support.\n\nSigned-off-by: Sekhar Nori \u003cnsekhar@ti.com\u003e\nAcked-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "8060ef4da9e73f461adf2ba1922ea5400a61cf98",
      "tree": "c2b32a3ba886a40803aba15dd6f52852e912b846",
      "parents": [
        "13d36a923da6a1e0584e07d91320373c790c01c3"
      ],
      "author": {
        "name": "Sekhar Nori",
        "email": "nsekhar@ti.com",
        "time": "Mon Aug 09 15:46:35 2010 +0530"
      },
      "committer": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Fri Sep 24 07:40:26 2010 -0700"
      },
      "message": "davinci: add support for aemif timing configuration\n\nThis patch adds support to configure the AEMIF interface\nwith supplied timing values.\n\nSince this capability is useful both from NOR and NAND\nflashes, it is provided as a new interface and in a file\nof its own.\n\nAEMIF timing configuration is required in cases:\n\n1) Where the AEMIF clock rate can change at runtime (a side\n   affect of cpu frequency change).\n\n2) Where U-Boot does not support NAND/NOR but supports other\n   media like SPI Flash or MMC/SD and thus does not care about\n   setting up the AEMIF timing for kernel to use.\n\n3) Where U-Boot just hasn\u0027t configured the timing values and\n   cannot be upgraded because the box is already in the field.\n\nSince there is now a header file for AEMIF interface, the\ncommon (non-NAND specific) defines for AEMIF registers have\nbeen moved from nand.h into the newly created aemif.h\n\nSigned-off-by: Sekhar Nori \u003cnsekhar@ti.com\u003e\nAcked-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nSigned-off-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\n"
    },
    {
      "commit": "5aa82940b23d0c6e4083d48e387a16b8ad530a47",
      "tree": "ea6fe6dd8a545e104aa5a139d048123a522897a7",
      "parents": [
        "c45d15d24eb2b49bf734e1e5e7e103befb76b19b"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 02 14:28:52 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Sep 15 21:00:46 2010 +0200"
      },
      "message": "mtd: autoconvert trivial BKL users to private mutex\n\nAll these files use the big kernel lock in a trivial\nway to serialize their private file operations,\ntypically resulting from an earlier semi-automatic\npushdown from VFS.\n\nNone of these drivers appears to want to lock against\nother code, and they all use the BKL as the top-level\nlock in their file operations, meaning that there\nis no lock-order inversion problem.\n\nConsequently, we can remove the BKL completely,\nreplacing it with a per-file mutex in every case.\nUsing a scripted approach means we can avoid\ntypos.\n\nfile\u003d$1\nname\u003d$2\nif grep -q lock_kernel ${file} ; then\n    if grep -q \u0027include.*linux.mutex.h\u0027 ${file} ; then\n            sed -i \u0027/include.*\u003clinux\\/smp_lock.h\u003e/d\u0027 ${file}\n    else\n            sed -i \u0027s/include.*\u003clinux\\/smp_lock.h\u003e.*$/include \u003clinux\\/mutex.h\u003e/g\u0027 ${file}\n    fi\n    sed -i ${file} \\\n        -e \"/^#include.*linux.mutex.h/,$ {\n                1,/^\\(static\\|int\\|long\\)/ {\n                     /^\\(static\\|int\\|long\\)/istatic DEFINE_MUTEX(${name}_mutex);\n\n} }\"  \\\n    -e \"s/\\(un\\)*lock_kernel\\\u003e[ ]*()/mutex_\\1lock(\\\u0026${name}_mutex)/g\" \\\n    -e \u0027/[      ]*cycle_kernel_lock();/d\u0027\nelse\n    sed -i -e \u0027/include.*\\\u003csmp_lock.h\\\u003e/d\u0027 ${file}  \\\n                -e \u0027/cycle_kernel_lock()/d\u0027\nfi\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCc: linux-mtd@lists.infradead.org\n"
    },
    {
      "commit": "65e0b598bdb3fe1122ab9a9708fc785e7ac41671",
      "tree": "938f939493d27900fdfa50232158483e82b68697",
      "parents": [
        "d7a4b63b5138e29122e72a5192d98be86ca68cca",
        "99d389640b58052884fb231bce9dbffb4f595aa4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 14 17:05:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 14 17:05:39 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  mtd: pxa3xx: fix build error when CONFIG_MTD_PARTITIONS is not defined\n  mtd: mxc_nand: configure pages per block for v2 controller\n  mtd: OneNAND: Fix loop hang when DMA error at Samsung SoCs\n  mtd: OneNAND: Fix 2KiB pagesize handling at Samsung SoCs\n  mtd: Blackfin NFC: fix invalid free in remove()\n  mtd: Blackfin NFC: fix build error after nand_scan_ident() change\n  mxc_nand: Do not do byte accesses to the NFC buffer.\n"
    },
    {
      "commit": "99d389640b58052884fb231bce9dbffb4f595aa4",
      "tree": "ec7900017662bc1c6cfb9b11cdba967e5f9ad3c7",
      "parents": [
        "b8db2f51dcccbaf4d23ed44cd0c64856c58a16c0"
      ],
      "author": {
        "name": "Mark F. Brown",
        "email": "mark.brown314@gmail.com",
        "time": "Thu Aug 26 04:56:51 2010 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Sep 13 08:50:42 2010 +0100"
      },
      "message": "mtd: pxa3xx: fix build error when CONFIG_MTD_PARTITIONS is not defined\n\nSigned-off-by: Mark F. Brown \u003cmark.brown314@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "b8db2f51dcccbaf4d23ed44cd0c64856c58a16c0",
      "tree": "0ee47ccd841fbc340dec54864d2f40810bfa589a",
      "parents": [
        "53d1e137d5ddd8a1c5ec54c5375cb2832e1cbcd1"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Mon Aug 09 15:04:19 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Sep 13 08:50:34 2010 +0100"
      },
      "message": "mtd: mxc_nand: configure pages per block for v2 controller\n\nThis patch initializes the pages per block field in CONFIG1 for\nv2 controllers. It also sets the FP_INT field. This is the last\nfield not correctly initialized, so we can switch from\nread/modify/write the CONFIG1 reg to just write the correct\nvalue.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nAcked-by: John Ogness \u003cjohn.ogness@linutronix.de\u003e\nTested-by: John Ogness \u003cjohn.ogness@linutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "53d1e137d5ddd8a1c5ec54c5375cb2832e1cbcd1",
      "tree": "f053b9d0e773e2d379f79834630c1c1853e2258a",
      "parents": [
        "9aba97ad004ed0cde9747a9daf5b1484edb746cd"
      ],
      "author": {
        "name": "Kyungmin Park",
        "email": "kyungmin.park@samsung.com",
        "time": "Fri Aug 27 11:55:37 2010 +0900"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Sep 13 08:49:45 2010 +0100"
      },
      "message": "mtd: OneNAND: Fix loop hang when DMA error at Samsung SoCs\n\nWhen DMA error occurs. it\u0027s loop hang since it can\u0027t exit the loop.\nand it\u0027s the right DMA handling code as Spec.\n\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "9aba97ad004ed0cde9747a9daf5b1484edb746cd",
      "tree": "c44f1861042f9c69979713280eb775300d70ce92",
      "parents": [
        "8b865d5efd9205b131dd9a43a6f450c05d38aaa1"
      ],
      "author": {
        "name": "Kyungmin Park",
        "email": "kyungmin.park@samsung.com",
        "time": "Fri Aug 27 11:55:44 2010 +0900"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Sep 13 08:49:18 2010 +0100"
      },
      "message": "mtd: OneNAND: Fix 2KiB pagesize handling at Samsung SoCs\n\nWrong assumption bufferram can be switched between BufferRAM0 and BufferRAM1\n\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "8b865d5efd9205b131dd9a43a6f450c05d38aaa1",
      "tree": "f84291bbbda866bcd86227d5ecc369d52583a7bc",
      "parents": [
        "eac15a429a27cb74115daaf4c1127c5e854d50e4"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Sat Aug 28 16:42:04 2010 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Sep 13 08:49:03 2010 +0100"
      },
      "message": "mtd: Blackfin NFC: fix invalid free in remove()\n\nSince info-\u003emtd isn\u0027t dynamically allocated, we shouldn\u0027t attempt to\nkfree() it.  Otherwise we get random fun corruption when unloading\nthe driver built as a module.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "eac15a429a27cb74115daaf4c1127c5e854d50e4",
      "tree": "2b1878d27a8b0006afc756fb865e0359424ed5d7",
      "parents": [
        "f7b66e5e51d31c45c6039db9a6da7863fb75be1e"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Sat Aug 28 01:45:00 2010 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Sep 13 08:48:50 2010 +0100"
      },
      "message": "mtd: Blackfin NFC: fix build error after nand_scan_ident() change\n\nSeems some patches got out sync when being merged.  The Blackfin NFC\ndriver was updated to use nand_scan_ident(), but it missed the change\nwhere nand_scan_ident() now takes 3 arguments.  So update this driver\nto fix build failures.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "d3f6e6c666c0f68991d785177c4c62fcd1d651f2",
      "tree": "136f546ea12366f262b2d112b0795bf85c7e707c",
      "parents": [
        "1deacd7a1d4bb22f812908c34e3254de76e4faa8"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Aug 29 23:34:44 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Aug 30 13:32:31 2010 +0300"
      },
      "message": "UBI: do not oops when erroneous PEB is scheduled for scrubbing\n\nWhen an erroneous PEB is scheduling for scrubbing, we end up with the\nfollowing oops:\n\n[\u003cc0162404\u003e] (prot_queue_del+0x0/0x50) from [\u003cc01635b4\u003e] (ubi_wl_scrub_peb+0xec/0x13c)\n[\u003cc01634c8\u003e] (ubi_wl_scrub_peb+0x0/0x13c) from [\u003cc01603bc\u003e] (ubi_eba_read_leb+0x200/0x428)\n[\u003cc01601bc\u003e] (ubi_eba_read_leb+0x0/0x428) from [\u003cc015e3c0\u003e] (ubi_leb_read+0xe8/0x138)\n[\u003cc015e2d8\u003e] (ubi_leb_read+0x0/0x138) from [\u003cc00d6918\u003e] (ubifs_start_scan+0x7c/0xf4)\n[\u003cc00d689c\u003e] (ubifs_start_scan+0x0/0xf4) from [\u003cc00e3650\u003e] (ubifs_recover_leb+0x3c/0x730)\n[\u003cc00e3614\u003e] (ubifs_recover_leb+0x0/0x730) from [\u003cc00e444c\u003e] (ubifs_recover_log_leb+0xc8/0x2dc)\n[\u003cc00e4384\u003e] (ubifs_recover_log_leb+0x0/0x2dc) from [\u003cc00d7c20\u003e] (ubifs_replay_journal+0xb90/0x13a4)\n[\u003cc00d7090\u003e] (ubifs_replay_journal+0x0/0x13a4) from [\u003cc00cdd68\u003e] (ubifs_fill_super+0xb84/0x1054)\n[\u003cc00cd1e4\u003e] (ubifs_fill_super+0x0/0x1054) from [\u003cc00ced04\u003e] (ubifs_get_sb+0xc4/0x2ac)\n[\u003cc00cec40\u003e] (ubifs_get_sb+0x0/0x2ac) from [\u003cc007f04c\u003e] (vfs_kern_mount+0x58/0x94)\n[\u003cc007eff4\u003e] (vfs_kern_mount+0x0/0x94) from [\u003cc007f0e8\u003e] (do_kern_mount+0x40/0xe8)\n[\u003cc007f0a8\u003e] (do_kern_mount+0x0/0xe8) from [\u003cc0095628\u003e] (do_new_mount+0x68/0x8c)\n[\u003cc00955c0\u003e] (do_new_mount+0x0/0x8c) from [\u003cc00957a8\u003e] (do_mount+0x15c/0x1b8)\n[\u003cc009564c\u003e] (do_mount+0x0/0x1b8) from [\u003cc0095890\u003e] (sys_mount+0x8c/0xd4)\n[\u003cc0095804\u003e] (sys_mount+0x0/0xd4) from [\u003cc0023c00\u003e] (ret_fast_syscall+0x0/0x2c)\nKernel panic - not syncing: Fatal exception\n\nThe problem is that \u0027ubi_wl_scrub_peb()\u0027 does not expect that PEBs may\nbe in the erroneous tree, which is a bug. This patch fixes the bug\nand adds corresponding check to \u0027ubi_wl_scrub_peb()\u0027. Now it will simply\nignore erroneous PEBs, instead of causing an oops.\n\nReported-by: Matthieu CASTET \u003cmatthieu.castet@parrot.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "1deacd7a1d4bb22f812908c34e3254de76e4faa8",
      "tree": "a15a8b2b6083e9eb56077a1f874c5114e00a58bd",
      "parents": [
        "80c1c16fb89e7055acb560e6d90c881b5c7496c1"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Aug 12 12:10:59 2010 -0700"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Aug 30 13:31:34 2010 +0300"
      },
      "message": "UBI: fix kconfig unmet dependency\n\nwarning: (OPTPROBES \u0026\u0026 KPROBES \u0026\u0026 HAVE_OPTPROBES \u0026\u0026 !PREEMPT \u0026\u0026 DEBUG_KERNEL ||\nMTD_UBI_DEBUG \u0026\u0026 MTD \u0026\u0026 SYSFS \u0026\u0026 MTD_UBI || UBIFS_FS_DEBUG \u0026\u0026 MISC_FILESYSTEMS \u0026\u0026\nUBIFS_FS || LOCKDEP \u0026\u0026 DEBUG_KERNEL \u0026\u0026 TRACE_IRQFLAGS_SUPPORT \u0026\u0026\nSTACKTRACE_SUPPORT \u0026\u0026 LOCKDEP_SUPPORT || LATENCYTOP \u0026\u0026 HAVE_LATENCYTOP_SUPPORT \u0026\u0026\nDEBUG_KERNEL \u0026\u0026 STACKTRACE_SUPPORT \u0026\u0026 PROC_FS) selects KALLSYMS_ALL\nwhich has unmet direct dependencies (DEBUG_KERNEL \u0026\u0026 KALLSYMS)\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "80c1c16fb89e7055acb560e6d90c881b5c7496c1",
      "tree": "f84727cff89a3ac0cf7c0e502a189d3d20c289b1",
      "parents": [
        "01ebc12f5f2e88a1c6a5436b71a506ac2bf66d6b"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sat Aug 28 12:11:40 2010 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Aug 30 10:19:11 2010 +0300"
      },
      "message": "UBI: fix forward compatibility\n\nCommit 0798cea8c2e1afee59686c51d27d0e96b05e42d1 \"UBI: improve corrupted flash handling\"\nbroke delet-compatible volumes handling - it introduced a limit of 8 eraseblocks which\nmay be corrupted. And delete-compatible eraseblocks are added to the \"corrupted\" list,\nso if we\u0027d have a large delete-compatible volume, UBI would refuse it.\n\nThe fix is to add delete-compatible volumes to the erase list instead. Indeed, they are\ncorrupted, we just have to erase them.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "01ebc12f5f2e88a1c6a5436b71a506ac2bf66d6b",
      "tree": "7c3e748518efe1f42c82eb922d1d6625964282a2",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sat Aug 07 11:09:29 2010 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Aug 30 10:19:11 2010 +0300"
      },
      "message": "UBI: eliminate update of list_for_each_entry loop cursor\n\nlist_for_each_entry uses its first argument to move from one element to the\nnext, so modifying it can break the iteration.  The variable re1 is already\nused within the loop as a temporary variable, and is not live here.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r@\niterator name list_for_each_entry;\nexpression x,E;\nposition p1,p2;\n@@\n\nlist_for_each_entry@p1(x,...) { \u003c... x \u003d@p2 E ...\u003e }\n\n@@\nexpression x,E;\nposition r.p1,r.p2;\nstatement S;\n@@\n\n*x \u003d@p2 E\n...\nlist_for_each_entry@p1(x,...) S\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "f7b66e5e51d31c45c6039db9a6da7863fb75be1e",
      "tree": "6bb1e4514804a08c0231a653450dc01d467a4a63",
      "parents": [
        "76be97c1fc945db08aae1f1b746012662d643e97"
      ],
      "author": {
        "name": "John Ogness",
        "email": "john.ogness@linutronix.de",
        "time": "Fri Jun 18 18:59:47 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 27 00:29:09 2010 +0100"
      },
      "message": "mxc_nand: Do not do byte accesses to the NFC buffer.\n\nThis patch avoids byte access to the NFC buffer. Byte access to the\nNFC is not allowed.\n\nThe patch is against linux-next 20100618.\n\nSigned-off-by: John Ogness \u003cjohn.ogness@linutronix.de\u003e\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nTested-by: John Ogness \u003cjohn.ogness@linutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "69b26c7ad00fd5b6129400725e2ffb95134a0e1b",
      "tree": "1986375f189313cc5a32560663c635e9110588c9",
      "parents": [
        "ddb0c5a689c857bb13a42d9a3f0a7604497b3a29",
        "cfe3fdadb16162327773ef01a575a32000b8c7f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 12:47:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 12:47:05 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  mtd: nand: Fix probe of Samsung NAND chips\n  mtd: nand: Fix regression in BBM detection\n  pxa3xx: fix ns2cycle equation\n"
    },
    {
      "commit": "cfe3fdadb16162327773ef01a575a32000b8c7f4",
      "tree": "e93dd6e4a80c1cdb23f9a2b562d4cb2bfb955f37",
      "parents": [
        "065a1ed8de85583888b3d4f22c64b534a1fbdaaa"
      ],
      "author": {
        "name": "Tilman Sauerbeck",
        "email": "tilman@code-monkey.de",
        "time": "Fri Aug 20 14:01:47 2010 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 20 22:26:20 2010 +0100"
      },
      "message": "mtd: nand: Fix probe of Samsung NAND chips\n\nApparently, the check for a 6-byte ID string introduced by commit\n426c457a3216fac74e3d44dd39729b0689f4c7ab (\"mtd: nand: extend NAND flash\ndetection to new MLC chips\") is NOT sufficient to determine whether or\nnot a Samsung chip uses their new MLC detection scheme or the old,\nstandard scheme. This adds a condition to check cell type.\n\nSigned-off-by: Tilman Sauerbeck \u003ctilman@code-monkey.de\u003e\nSigned-off-by: Brian Norris \u003cnorris@broadcom.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "065a1ed8de85583888b3d4f22c64b534a1fbdaaa",
      "tree": "141e93d9d7db8412794cd6e34e9b91b88139a78c",
      "parents": [
        "93b352fce679945845664b56b0c3afbd655a7a12"
      ],
      "author": {
        "name": "Brian Norris",
        "email": "norris@broadcom.com",
        "time": "Wed Aug 18 11:25:04 2010 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 19 15:02:19 2010 +0100"
      },
      "message": "mtd: nand: Fix regression in BBM detection\n\nCommit c7b28e25cb9beb943aead770ff14551b55fa8c79 (\"mtd: nand: refactor BB \nmarker detection\") caused a regression in detection of factory-set bad \nblock markers, especially for certain small-page NAND. This fix removes \nsome unneeded constraints on using NAND_SMALL_BADBLOCK_POS, making the \ndetection code more correct.\n\nThis regression can be seen, for example, in Hynix HY27US081G1M and\nsimilar.\n\nSigned-off-by: Brian Norris \u003cnorris@broadcom.com\u003e\nTested-by: Michael Guntsche \u003cmike@it-loops.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "93b352fce679945845664b56b0c3afbd655a7a12",
      "tree": "066af0c86ff07111f5a569aae432ad657cf4d844",
      "parents": [
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Mon Aug 16 16:09:09 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 18 13:32:47 2010 +0100"
      },
      "message": "pxa3xx: fix ns2cycle equation\n\nTest on a PXA310 platform with Samsung K9F2G08X0B NAND flash,\nwith tCH\u003d5 and clk is 156MHz, ns2cycle(5, 156000000) returns -1.\n\nns2cycle returns negtive value will break NDTR0_tXX macros.\n\nAfter checking the commit log, I found the problem is introduced by\ncommit 5b0d4d7c8a67c5ba3d35e6ceb0c5530cc6846db7\n\"[MTD] [NAND] pxa3xx: convert from ns to clock ticks more accurately\"\n\nTo get num of clock cycles, we use below equation:\nnum of clock cycles \u003d time (ns) / one clock cycle (ns) + 1\nWe need to add 1 cycle here because integer division will truncate the result.\nIt is possible the developers set the Min values in SPEC for timing settings.\nThus the truncate may cause problem, and it is safe to add an extra cycle here.\n\nThe various fields in NDTR{01} are in units of clock ticks minus one,\nthus we should subtract 1 cycle then.\n\nThus the correct equation should be:\nnum of clock cycles \u003d time (ns) / one clock cycle (ns) + 1 - 1\n                    \u003d time (ns) / one clock cycle (ns)\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Lei Wen \u003cleiwen@marvell.com\u003e\nAcked-by: Eric Miao \u003ceric.y.miao@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "7a50d06e242614f02004faed2972a8f2c9336d61",
      "tree": "0d06eb21f37796d937879256cac069f441e5a200",
      "parents": [
        "f1ca09b2b5c9dd3988c61818a7d621b1400e4f0c"
      ],
      "author": {
        "name": "Graeme Smecher",
        "email": "graeme.smecher@mail.mcgill.ca",
        "time": "Tue Aug 17 10:13:44 2010 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Aug 17 13:16:47 2010 -0600"
      },
      "message": "of: fix missing headers for of_address_to_resource() in MTD and SysACE drivers\n\nThe drivers for Xilinx\u0027 SystemACE and physically mapped MTDs were missing\nprototypes for of_address_to_resource(). This patch adds the necessary\nheaders.\n\nSigned-off-by: Graeme Smecher \u003cgraeme.smecher@mail.mcgill.ca\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "7355a5a654ccbbfd2fd11bb1e2389910f786ea92",
      "tree": "a1aa0b16bab51f8c5c505fe237d3ba6ba20b88aa",
      "parents": [
        "7a1b29a82ba76427de791098c095ce31dab9333d",
        "84c4f46d9c0bd67b763b01a6b4c86dcfde6c818a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:32:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:32:47 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  mtd/nand_ids: Fix buswidth\n  mtd/m25p80: fix test for end of loop\n  mtd/m25p80: retlen is never NULL\n  MIPS: Fix gen_nand probe structures contents\n  gen_nand: Test if nr_chips field is valid\n  BFIN: Fix gen_nand probe structures contents\n  nand/denali: move all hardware initialization work to denali_hw_init\n  nand/denali: Add a page check in denali_read_page \u0026 denali_read_page_raw\n  nand/denali: use cpu_relax() while waiting for hardware interrupt\n  nand/denali: change read_status function method\n  nand/denali: Fixed check patch warnings\n  ARM: Fix gen_nand probe structures contents\n  mtd/nand_base: fix kernel-doc warnings \u0026 typos\n  nand/denali: use dev_xx debug function to replace nand_dbg_print and some printk\n  nand/denali: Fixed handle ECC error bugs\n  nand/denali: use iowrite32() to replace denali_write32()\n  nand/denali: Fixed probe function bugs\n"
    },
    {
      "commit": "84c4f46d9c0bd67b763b01a6b4c86dcfde6c818a",
      "tree": "3e6fea52757d165649c574d4ea9c80f3d5335d9f",
      "parents": [
        "f78ec6b2f32efad1fc6b2196e966dcec8122d689"
      ],
      "author": {
        "name": "Brian Norris",
        "email": "norris@broadcom.com",
        "time": "Fri Aug 13 10:29:14 2010 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 13 21:11:54 2010 +0100"
      },
      "message": "mtd/nand_ids: Fix buswidth\n\nThe buswidth for chips of ID 0xD7 is x8, not x16.\nThis was my previous typo.\n\nSigned-off-by: Brian Norris \u003cnorris@broadcom.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "58d4ea65b98f154f3326b038eecda32f90b46ea8",
      "tree": "636aed413349dece12c08a4bd3d1fea0254976d8",
      "parents": [
        "26f0cf91813bdc8e61595f8ad6660251e2ee9cf6",
        "fbe0f8348fd6c3d016a3f48756eb729b41a67c22"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 12 09:11:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 12 09:11:31 2010 -0700"
      },
      "message": "Merge branch \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  mmc_spi: Fix unterminated of_match_table\n  of/sparc: fix build regression from of_device changes\n  of/device: Replace struct of_device with struct platform_device\n"
    },
    {
      "commit": "f78ec6b2f32efad1fc6b2196e966dcec8122d689",
      "tree": "bd00138782ab4b654db4714df0b852f206341921",
      "parents": [
        "b06cd21e2f0f75686f95afa5b71219b1408f5458"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Aug 12 09:58:27 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 12:31:39 2010 +0100"
      },
      "message": "mtd/m25p80: fix test for end of loop\n\n\"plat_id\" is always non-NULL here.  There is a zero element on the end\nof the m25p_ids[] array and if we hit the end of the loop then plat_id\npoints to that.\n\nThis would lead to a NULL pointer dereference later on in the function.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nAcked-by: Anton Vorontsov \u003ccbouatmailru@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "b06cd21e2f0f75686f95afa5b71219b1408f5458",
      "tree": "e1a316a5e671b0ba4e483b615b866b5468e93f45",
      "parents": [
        "d2b5bbef2198f82280441ab1ea7f634d615d913b"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Aug 12 09:53:52 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 12:26:22 2010 +0100"
      },
      "message": "mtd/m25p80: retlen is never NULL\n\nThis is just a cleanup, it doesn\u0027t fix any bugs.\n\nThese functions all check retlen inconsistently and it generates a\nwarning in Smatch (http://smatch.sf.net).  If retlen were ever NULL it\nwould cause an oops and the code has been this way since 2006 so someone\nwould have complained.  Also I looked at other places that implemented\nthe mtd read and write functions and they dereference retlen without\nchecking.\n\nI removed the checks.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "01cd2ababddd55a127caa1cd20d570637e0d42e1",
      "tree": "34d555d43eb53faeaf6426afbe8f1d775c8cff23",
      "parents": [
        "ef56609f9c7fdf5baa9d9f86f84a7bd8a717cd25"
      ],
      "author": {
        "name": "Marek Vasut",
        "email": "marek.vasut@gmail.com",
        "time": "Thu Aug 12 03:53:55 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 12:17:36 2010 +0100"
      },
      "message": "gen_nand: Test if nr_chips field is valid\n\nSigned-off-by: Marek Vasut \u003cmarek.vasut@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "5eab6aaaaf0149ada4afd1aebce1978e1cc5a3e7",
      "tree": "bebb97e5504824c4dc857b6e6367531398dacf3a",
      "parents": [
        "7d8a26fd22c6944cb18a67c5b8d8255608a3ba98"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Thu Aug 12 10:07:18 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 11:10:40 2010 +0100"
      },
      "message": "nand/denali: move all hardware initialization work to denali_hw_init\n\nAll hardware initialization will be done in denali_hw_init before\nirq handler registered\nChange mtd name from \"DENALI NAND\" to be \"denali-nand\" since whitespace in\nname can cause problems if we use cmdlinepart\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7d8a26fd22c6944cb18a67c5b8d8255608a3ba98",
      "tree": "51291248a39228cb7bd097fb2402c177e5d48bfb",
      "parents": [
        "628bfd4164502fa531b6d284cb6a18e337ec3f20"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Wed Aug 11 18:19:23 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 11:10:40 2010 +0100"
      },
      "message": "nand/denali: Add a page check in denali_read_page \u0026 denali_read_page_raw\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "628bfd4164502fa531b6d284cb6a18e337ec3f20",
      "tree": "7b41a8e5fc648fa6374273f311bc3d7cfdeaf408",
      "parents": [
        "f0bc0c778fe12e43658193fae975fc5762e98773"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Wed Aug 11 17:53:29 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 11:10:39 2010 +0100"
      },
      "message": "nand/denali: use cpu_relax() while waiting for hardware interrupt\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "f0bc0c778fe12e43658193fae975fc5762e98773",
      "tree": "9d387a0de47c05cfef548cdaa149317aeb8ab51c",
      "parents": [
        "b292c341e2304b1d937843711c63d1e141d7b589"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Wed Aug 11 17:14:59 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 11:10:37 2010 +0100"
      },
      "message": "nand/denali: change read_status function method\n\nIn mtd-\u003ewrite, Denali controller will use MODE_11 mode to read\nNAND flash status, then return back to MODE_1O mode to do page\nwrite.\nHere comes a bug for this kind of using, sometimes controller will\nnot write data to NAND and just return a good interrupt to tell\ndriver writing work is done. The data in this page is all 0xff and\nthis page can not be written again. The reason is unknow.\n\nSo read Denali controller register WRITE_PROTECT to get NAND status\ninstead.\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "b292c341e2304b1d937843711c63d1e141d7b589",
      "tree": "1f408aeb08f4045c71d0ca2294f242320a0207b3",
      "parents": [
        "ef077179a2909d3d0d3accf29ad1ea9ebb19019b"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Wed Aug 11 17:46:00 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Aug 12 11:10:36 2010 +0100"
      },
      "message": "nand/denali: Fixed check patch warnings\n\nwaring: no space for starting a line\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "b6d676db35ca6c99180bb12dcbd4a8c3b2995e49",
      "tree": "fcbd8da68f277508df5d6d0266c2d72ed167af91",
      "parents": [
        "71740c423c52dc65fd2f40e4c7f6ed32c636c52b"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Aug 10 18:02:50 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 11 08:59:18 2010 -0700"
      },
      "message": "mtd/nand_base: fix kernel-doc warnings \u0026 typos\n\nFix mtd/nand_base.c kernel-doc warnings and typos.\n\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027mtd\u0027\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027ofs\u0027\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027len\u0027\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027invert\u0027\nWarning(drivers/mtd/nand/nand_base.c:930): No description found for parameter \u0027mtd\u0027\nWarning(drivers/mtd/nand/nand_base.c:930): No description found for parameter \u0027ofs\u0027\nWarning(drivers/mtd/nand/nand_base.c:930): No description found for parameter \u0027len\u0027\nWarning(drivers/mtd/nand/nand_base.c:987): No description found for parameter \u0027mtd\u0027\nWarning(drivers/mtd/nand/nand_base.c:987): No description found for parameter \u0027ofs\u0027\nWarning(drivers/mtd/nand/nand_base.c:987): No description found for parameter \u0027len\u0027\nWarning(drivers/mtd/nand/nand_base.c:2087): No description found for parameter \u0027len\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db9ebb7cd0b6329c46ba3cc326d6414647fcfe6b",
      "tree": "ecb412a00139d50b39daf4ba18dd5deaa2b6cea8",
      "parents": [
        "7cfffac06ca0d45040db228ce1835f5cf8623916"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon May 24 22:22:51 2010 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 11 00:29:15 2010 +0100"
      },
      "message": "mtd/nand_base: fix kernel-doc warnings \u0026 typos\n\nFix mtd/nand_base.c kernel-doc warnings and typos.\n\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027mtd\u0027\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027ofs\u0027\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027len\u0027\nWarning(drivers/mtd/nand/nand_base.c:893): No description found for parameter \u0027invert\u0027\nWarning(drivers/mtd/nand/nand_base.c:930): No description found for parameter \u0027mtd\u0027\nWarning(drivers/mtd/nand/nand_base.c:930): No description found for parameter \u0027ofs\u0027\nWarning(drivers/mtd/nand/nand_base.c:930): No description found for parameter \u0027len\u0027\nWarning(drivers/mtd/nand/nand_base.c:987): No description found for parameter \u0027mtd\u0027\nWarning(drivers/mtd/nand/nand_base.c:987): No description found for parameter \u0027ofs\u0027\nWarning(drivers/mtd/nand/nand_base.c:987): No description found for parameter \u0027len\u0027\nWarning(drivers/mtd/nand/nand_base.c:2087): No description found for parameter \u0027len\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7cfffac06ca0d45040db228ce1835f5cf8623916",
      "tree": "150019f9e6f393971bc1ee56f32fbf536f207235",
      "parents": [
        "8ae61ebddba8a0cf96f61e592acaa12800e50727"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Tue Aug 10 00:16:51 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 11 00:28:40 2010 +0100"
      },
      "message": "nand/denali: use dev_xx debug function to replace nand_dbg_print and some printk\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "8ae61ebddba8a0cf96f61e592acaa12800e50727",
      "tree": "f098bacb9c388ff44d6a9e62c4e87d72428ed65a",
      "parents": [
        "24c3fa36dedd12616c273bfa4adfed3bb652637f"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Tue Aug 10 00:07:01 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 11 00:28:39 2010 +0100"
      },
      "message": "nand/denali: Fixed handle ECC error bugs\n\nOnce the last ECC error was handled, controller will triger an\ninterrupt. If this interrupt can not be clean on time, controller\nmay corrupt.\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "24c3fa36dedd12616c273bfa4adfed3bb652637f",
      "tree": "0d0c60aeac278945b9d60e928e3eddb8e84a595d",
      "parents": [
        "5c0eb90094d64d56df8be23bb75d48e63c96c180"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Mon Aug 09 23:59:23 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 11 00:28:38 2010 +0100"
      },
      "message": "nand/denali: use iowrite32() to replace denali_write32()\n\ndenali_write32() just implements a debug function for iowrite32(),\nonly print out the write value. Remove this function since it\u0027s useless\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "5c0eb90094d64d56df8be23bb75d48e63c96c180",
      "tree": "042de2a2382a341e82fa80d9a3431af232f22623",
      "parents": [
        "e8a89cebdbaab14caaa26debdb4ffd493b8831af"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Mon Aug 09 18:37:00 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Aug 11 00:28:36 2010 +0100"
      },
      "message": "nand/denali: Fixed probe function bugs\n\nFixed a pci_resource_len function error;\nChanged returning sequence of probe function;\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "2f9e825d3e0e2b407ae8f082de5c00afcf7378fb",
      "tree": "f8b3ee40674ce4acd5508a0a0bf52a30904caf6c",
      "parents": [
        "7ae0dea900b027cd90e8a3e14deca9a19e17638b",
        "de75d60d5ea235e6e09f4962ab22541ce0fe176a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block: (149 commits)\n  block: make sure that REQ_* types are seen even with CONFIG_BLOCK\u003dn\n  xen-blkfront: fix missing out label\n  blkdev: fix blkdev_issue_zeroout return value\n  block: update request stacking methods to support discards\n  block: fix missing export of blk_types.h\n  writeback: fix bad _bh spinlock nesting\n  drbd: revert \"delay probes\", feature is being re-implemented differently\n  drbd: Initialize all members of sync_conf to their defaults [Bugz 315]\n  drbd: Disable delay probes for the upcomming release\n  writeback: cleanup bdi_register\n  writeback: add new tracepoints\n  writeback: remove unnecessary init_timer call\n  writeback: optimize periodic bdi thread wakeups\n  writeback: prevent unnecessary bdi threads wakeups\n  writeback: move bdi threads exiting logic to the forker thread\n  writeback: restructure bdi forker loop a little\n  writeback: move last_active to bdi\n  writeback: do not remove bdi from bdi_list\n  writeback: simplify bdi code a little\n  writeback: do not lose wake-ups in bdi threads\n  ...\n\nFixed up pretty trivial conflicts in drivers/block/virtio_blk.c and\ndrivers/scsi/scsi_error.c as per Jens.\n"
    },
    {
      "commit": "e8a89cebdbaab14caaa26debdb4ffd493b8831af",
      "tree": "e0843f082628408ce259c72db36da54dff603987",
      "parents": [
        "8196867c74890ccdf40a2b5e3e173597fbc4f9ac",
        "6ae0185fe201eae0548dace2a84acb5050fc8606"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:49:21 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:49:21 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (79 commits)\n  mtd: Remove obsolete \u003cmtd/compatmac.h\u003e include\n  mtd: Update copyright notices\n  jffs2: Update copyright notices\n  mtd-physmap: add support users can assign the probe type in board files\n  mtd: remove redwood map driver\n  mxc_nand: Add v3 (i.MX51) Support\n  mxc_nand: support 8bit ecc\n  mxc_nand: fix correct_data function\n  mxc_nand: add V1_V2 namespace to registers\n  mxc_nand: factor out a check_int function\n  mxc_nand: make some internally used functions overwriteable\n  mxc_nand: rework get_dev_status\n  mxc_nand: remove 0xe00 offset from registers\n  mtd: denali: Add multi connected NAND support\n  mtd: denali: Remove set_ecc_config function\n  mtd: denali: Remove unuseful code in get_xx_nand_para functions\n  mtd: denali: Remove device_info_tag structure\n  mtd: m25p80: add support for the Winbond W25Q32 SPI flash chip\n  mtd: m25p80: add support for the Intel/Numonyx {16,32,64}0S33B SPI flash chips\n  mtd: m25p80: add support for the EON EN25P{32, 64} SPI flash chips\n  ...\n\nFix up trivial conflicts in drivers/mtd/maps/{Kconfig,redwood.c} due to\nredwood driver removal.\n"
    },
    {
      "commit": "6ae0185fe201eae0548dace2a84acb5050fc8606",
      "tree": "f06bfb2302f84f178875d710c9ebb6425011fe2b",
      "parents": [
        "a1452a3771c4eb85bd779790b040efdc36f4274e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 21:19:42 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 21:19:42 2010 +0100"
      },
      "message": "mtd: Remove obsolete \u003cmtd/compatmac.h\u003e include\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "a1452a3771c4eb85bd779790b040efdc36f4274e",
      "tree": "a0fc935c63a4705dc012be3f795fd6be70ba850c",
      "parents": [
        "6088c0587706b2cf21ce50c11576718bff5fae0c"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 20:58:20 2010 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 20:58:20 2010 +0100"
      },
      "message": "mtd: Update copyright notices\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "d71048e22f47725a5808ea2e4e1e72fa36c1a788",
      "tree": "65debebb2964cb4cbde4d29e15730527d686a540",
      "parents": [
        "44d51a029f95d49c5c7ccd7808f81904c20c3abd",
        "d21872b3683ff37f73c68993749a6e6aeeaed265"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 08 10:01:46 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 08 10:01:46 2010 -0700"
      },
      "message": "Merge branch \u0027omap-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6\n\n* \u0027omap-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (143 commits)\n  omap: mailbox: reorganize headers\n  omap: mailbox: standarize on \u0027omap-mailbox\u0027\n  omap: mailbox: only compile for configured archs\n  omap: mailbox: simplify omap_mbox_register()\n  omap: mailbox: reorganize registering\n  omap: mailbox: add IRQ names\n  omap: mailbox: remove unecessary fields\n  omap: mailbox: don\u0027t export unecessary symbols\n  omap: mailbox: update omap1 probing\n  omap: mailbox: use correct config for omap1\n  omap: mailbox: 2420 should be detected at run-time\n  omap: mailbox: reorganize structures\n  omap: mailbox: trivial cleanups\n  omap mailbox: Set a device in logical mbox instance for traceability\n  omap: mailbox: convert block api to kfifo\n  omap: mailbox: remove (un)likely macros from cold paths\n  omap: mailbox cleanup: split MODULE_AUTHOR line\n  omap: mailbox: convert rwlocks to spinlock\n  Mailbox: disable mailbox interrupt when request queue\n  Mailbox: new mutext lock for h/w mailbox configuration\n  ...\n"
    },
    {
      "commit": "78ef7fab0eb0a5b159842bac89aed74bb0aa7bfe",
      "tree": "98aff2083703762b75e8ecb7e0e8a27ec9c8df9a",
      "parents": [
        "73ee5760253dc8893502e19a9cb118d25dab21ec"
      ],
      "author": {
        "name": "Barry Song",
        "email": "21cnbao@gmail.com",
        "time": "Fri Jan 15 15:50:14 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 08 12:28:15 2010 +0100"
      },
      "message": "mtd-physmap: add support users can assign the probe type in board files\n\nThere are three reasons to add this support:\n1. users probably know the interface type of their flashs, then probe\ncan be faster if they give the right type in platform data since wrong\ntypes will not be detected.\n2. sometimes, detecting can cause destory to system. For example, for\nkernel XIP, detecting can cause NOR enter a mode instructions can not\nbe fetched right, which will make kernel crash.\n3. For a new probe which is not listed in the rom_probe_types, if users\nassign it in board files, physmap can still probe it.\n\nSigned-off-by: Barry Song \u003c21cnbao@gmail.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "6e9624b8caec290d28b4c6d9ec75749df6372b87",
      "tree": "47225b544e1da82742795553dc4e8aa70c17afdc",
      "parents": [
        "8a6cfeb6deca3a8fefd639d898b0d163c0b5d368"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "message": "block: push down BKL into .open and .release\n\nThe open and release block_device_operations are currently\ncalled with the BKL held. In order to change that, we must\nfirst make sure that all drivers that currently rely\non this have no regressions.\n\nThis blindly pushes the BKL into all .open and .release\noperations for all block drivers to prepare for the\nnext step. The drivers can subsequently replace the BKL\nwith their own locks or remove it completely when it can\nbe shown that it is not needed.\n\nThe functions blkdev_get and blkdev_put are the only\nremaining users of the big kernel lock in the block\nlayer, besides a few uses in the ioctl code, none\nof which need to serialize with blkdev_{get,put}.\n\nMost of these two functions is also under the protection\nof bdev-\u003ebd_mutex, including the actual calls to\n-\u003eopen and -\u003erelease, and the common code does not\naccess any global data structures that need the BKL.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "8a6cfeb6deca3a8fefd639d898b0d163c0b5d368",
      "tree": "9a633ad48c3b1ada0519ee7bade0602f940037f6",
      "parents": [
        "34484062445fe905bf02c72f87ddda21881acda3"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jul 08 10:18:46 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:25:00 2010 +0200"
      },
      "message": "block: push down BKL into .locked_ioctl\n\nAs a preparation for the removal of the big kernel\nlock in the block layer, this removes the BKL\nfrom the common ioctl handling code, moving it\ninto every single driver still using it.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "33659ebbae262228eef4e0fe990f393d1f0ed941",
      "tree": "fcb537f09359c8dad3a6f6e16dc4319562dc42cc",
      "parents": [
        "7e005f79791dcd58436c88ded4a7f5aed1b82147"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Aug 07 18:17:56 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:17:56 2010 +0200"
      },
      "message": "block: remove wrappers for request type/flags\n\nRemove all the trivial wrappers for the cmd_type and cmd_flags fields in\nstruct requests.  This allows much easier grepping for different request\ntypes instead of unwinding through macros.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "73ee5760253dc8893502e19a9cb118d25dab21ec",
      "tree": "965dc929832102efa58a4b3b51529a45c9380a11",
      "parents": [
        "71ec51554a2c22ff03c7aac6866cdf395099994d"
      ],
      "author": {
        "name": "Christian Dietrich",
        "email": "qy03fugy@stud.informatik.uni-erlangen.de",
        "time": "Fri Jul 16 14:29:08 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 21:37:16 2010 +0100"
      },
      "message": "mtd: remove redwood map driver\n\nRemoving the redwood mtd mapping driver, because all REDWOOD_[456]\nconfiguration options were removed from the kernel, because they weren\u0027t\nreferenced anywhere.\n\nSigned-off-by: Christian Dietrich \u003cqy03fugy@stud.informatik.uni-erlangen.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "1685e633b396b0f3dabbc9fa5d65dfefe6435250",
      "tree": "ee83e26e2468ca1518a1b065c690159e12c8def9",
      "parents": [
        "1cfd2bda8c486ae0e7a8005354758ebb68172bca",
        "127c03cdbad9bd5af5d7f33bd31a1015a90cb77f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 12:25:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 12:25:06 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:\n  pcmcia: avoid buffer overflow in pcmcia_setup_isa_irq\n  pcmcia: do not request windows if you don\u0027t need to\n  pcmcia: insert PCMCIA device resources into resource tree\n  pcmcia: export resource information to sysfs\n  pcmcia: use struct resource for PCMCIA devices, part 2\n  pcmcia: remove memreq_t\n  pcmcia: move local definitions out of include/pcmcia/cs.h\n  pcmcia: do not use io_req_t when calling pcmcia_request_io()\n  pcmcia: do not use io_req_t after call to pcmcia_request_io()\n  pcmcia: use struct resource for PCMCIA devices\n  pcmcia: clean up cs.h\n  pcmcia: use pcmica_{read,write}_config_byte\n  pcmcia: remove cs_types.h\n  pcmcia: remove unused flag, simplify headers\n  pcmcia: remove obsolete CS_EVENT_ definitions\n  pcmcia: split up central event handler\n  pcmcia: simplify event callback\n  pcmcia: remove obsolete ioctl\n\nConflicts in:\n - drivers/staging/comedi/drivers/*\n - drivers/staging/wlags49_h2/wl_cs.c\ndue to dev_info_t and whitespace changes\n"
    },
    {
      "commit": "71ec51554a2c22ff03c7aac6866cdf395099994d",
      "tree": "02b4e6a734114d4327f0bf739e4eabb09106912b",
      "parents": [
        "6e85dfdc19ef526edec285aed47c83934882e9bd"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:11 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:38:09 2010 +0100"
      },
      "message": "mxc_nand: Add v3 (i.MX51) Support\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "6e85dfdc19ef526edec285aed47c83934882e9bd",
      "tree": "ba9fe60c6aab5cbc6dec94abd58b8eaf6f2f9d5e",
      "parents": [
        "94f77e50d658be1d3ff23fb65e4d075a6f4ebee3"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:10 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:38:03 2010 +0100"
      },
      "message": "mxc_nand: support 8bit ecc\n\nNand devices with at least 26 bytes of oob data per 512 byte block\ncan have 8bit ecc on v2 type controllers. This is currently not tested,\nbut at least this patch puts the ECC_MODE bit into a well defined state.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "94f77e50d658be1d3ff23fb65e4d075a6f4ebee3",
      "tree": "325e73dc7f558144f3fbd20900e531c14f69c1d4",
      "parents": [
        "1bc991808da890313c7a23ebc07e68ad8e79f42e"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:09 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:37:58 2010 +0100"
      },
      "message": "mxc_nand: fix correct_data function\n\nThe v2 controller has a totally different mechanism to check\nwhether the data we read had ecc errors or not. Implement this.\nThe mechanism in the v2 controller happens to be identical to\nthe v3 controller.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "1bc991808da890313c7a23ebc07e68ad8e79f42e",
      "tree": "dc1aef467a0447066386100fcab85781aba0be55",
      "parents": [
        "7aaf28ac02ff01f4202fc2e8a71ea33775da0f6f"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:08 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:37:29 2010 +0100"
      },
      "message": "mxc_nand: add V1_V2 namespace to registers\n\nThis prepares the driver for v3 support. The v3 controller\nhas a completely different register layout, so add a V1_V2_\nnamespace to the register defines to avoid confusion with\nthe v3 regs.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7aaf28ac02ff01f4202fc2e8a71ea33775da0f6f",
      "tree": "1edf8478c5cc57e86bc93f0945dc68003636d6b4",
      "parents": [
        "5f97304ef12b79f1a466971eefdf93ea3b2d341f"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:07 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:37:22 2010 +0100"
      },
      "message": "mxc_nand: factor out a check_int function\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "5f97304ef12b79f1a466971eefdf93ea3b2d341f",
      "tree": "ba279472202f9a0520dc61aadea7a1e9c4f0d876",
      "parents": [
        "c29c607afa2e94a43f249f19a2d3097e56aaedd7"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:06 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:36:59 2010 +0100"
      },
      "message": "mxc_nand: make some internally used functions overwriteable\n\nThis patch prepares the driver to add v3 controller support\nlater. The v3 controller is basically the same controller as v1\nand v2, but with a completely different register layout.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "c29c607afa2e94a43f249f19a2d3097e56aaedd7",
      "tree": "62ede8e280f1d5aaa6b1adf403c973d9cc594156",
      "parents": [
        "938cf997f998f3172e7cb9beafceccdec259b10d"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:05 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:34:54 2010 +0100"
      },
      "message": "mxc_nand: rework get_dev_status\n\nWe save/restore the value in the buffer anyway, so it makes\nno difference whether we use main_area0 or main_area1. So,\nwe can use main_area0 and remove main_area1 from the driver\nwhich is otherwise unused. Also, clean up the comments in\nget_dev_status.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "938cf997f998f3172e7cb9beafceccdec259b10d",
      "tree": "912704c1f85629adb882c794be4e51137f251293",
      "parents": [
        "08b9ab9996c7e582f86da319f43d2dcb8ff55993"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Aug 06 15:53:04 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:34:44 2010 +0100"
      },
      "message": "mxc_nand: remove 0xe00 offset from registers\n\nAdd the offset to the register base instead. This is done\nin preparation for v3 controller support.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "08b9ab9996c7e582f86da319f43d2dcb8ff55993",
      "tree": "de127bcf41c849449ecef88fae8b226f0e2f61fd",
      "parents": [
        "db9a321049ead6424848b1040a714290d5df39d7"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Fri Aug 06 18:19:09 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:30:26 2010 +0100"
      },
      "message": "mtd: denali: Add multi connected NAND support\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "db9a321049ead6424848b1040a714290d5df39d7",
      "tree": "952ba7180afaf4df44f86a2606be6eb5bf96235e",
      "parents": [
        "4c03bbdfed5497c3fed502226af1ef3fe8d23d08"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Fri Aug 06 18:02:03 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:30:18 2010 +0100"
      },
      "message": "mtd: denali: Remove set_ecc_config function\n\nset_ecc_config function only set ECC_CORRECTION register, so\nmove register setting to probe function.\nSince controller only support 15bit and 8bit ecc correction,\nupdated nand ecc layout information.\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "4c03bbdfed5497c3fed502226af1ef3fe8d23d08",
      "tree": "ac5a977a85498a30cd88ce07aa9eed0ff20708bd",
      "parents": [
        "66406524e50e32fde0dc01859ad3608ddefe107f"
      ],
      "author": {
        "name": "Chuanxiao Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Fri Aug 06 15:45:19 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:30:12 2010 +0100"
      },
      "message": "mtd: denali: Remove unuseful code in get_xx_nand_para functions\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "66406524e50e32fde0dc01859ad3608ddefe107f",
      "tree": "9ffc02c8565c925d23e84a4d7c0c5e4caf1ebaf8",
      "parents": [
        "0af18d27c36f28a8807297f21fa22979acd977f3"
      ],
      "author": {
        "name": "Chuanxiao.Dong",
        "email": "chuanxiao.dong@intel.com",
        "time": "Fri Aug 06 18:48:21 2010 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 16:30:00 2010 +0100"
      },
      "message": "mtd: denali: Remove device_info_tag structure\n\nHi David,\n   I sent 4 patches using my intel email account. If there is any\n   problem about the format of these patches, I will resend them after\n   I arrived at home by using my gmail account, and I will keep on\n   using gmail account to send patches.\n   Thanks.\n\n\u003eFrom 242e3bf5e17f54b1df8cf285154a7c7a61ff62e9 Mon Sep 17 00:00:00 2001\nFrom: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nDate: Fri, 6 Aug 2010 15:29:41 +0800\nSubject: [PATCH 1/4] mtd: denali: Remove device_info_tag structure.\n\nMost of the variables in this structure are useless, so just\nremove this structure and relevant codes.\n\nSigned-off-by: Chuanxiao Dong \u003cchuanxiao.dong@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    }
  ],
  "next": "2dc11581376829303b98eadb2de253bee065a56a"
}
