)]}'
{
  "log": [
    {
      "commit": "6f92355c6e7a680c8f61f3ae30e870d05843b98f",
      "tree": "33c0a271be8a56d234c24a4b78a1ef5e0a731557",
      "parents": [
        "dba76c033f1b88b6eb0fa697b824f954b11f8a97"
      ],
      "author": {
        "name": "Maxim Levitsky",
        "email": "maximlevitsky@gmail.com",
        "time": "Wed Jul 28 18:53:17 2010 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 06 09:21:40 2010 +0100"
      },
      "message": "mtd: update description on sm_ftl\n\nI think that scary description can go now...\n\nSigned-off-by: Maxim Levitsky \u003cmaximlevitsky@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": "8c1a1158c98b810d34b469c787840ac16904e5fa",
      "tree": "b9d033bc79946ee05c01ecdb05fc2b744f312079",
      "parents": [
        "6c49939869c20550512386610ece45aceb65e7f4"
      ],
      "author": {
        "name": "Kyle Spaans",
        "email": "kspaans@uwaterloo.ca",
        "time": "Tue Jun 08 09:48:22 2010 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Aug 02 09:01:42 2010 +0100"
      },
      "message": "mtd: remove redundant dependency checks in Kconfig files\n\nLook for dependency checks for \"FOO\" when inside of an \"if FOO\" block and remove them.\n\nSigned-off-by: Kyle Spaans \u003ckspaans@uwaterloo.ca\u003e\nReviewed-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "01de69c2b0e471844193532a85c173f51d9ea6b2",
      "tree": "9f0132c3dc3478a153a366243cda39d9567441f3",
      "parents": [
        "e5f710cfc6947e64672b7205f7992515868c7782"
      ],
      "author": {
        "name": "Maxim Levitsky",
        "email": "maximlevitsky@gmail.com",
        "time": "Fri Mar 19 14:05:51 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Mar 26 15:28:59 2010 +0000"
      },
      "message": "mtd: sm_ftl: remove CONFIG_SM_FTL_MUSEUM and make it always on\n\nThe sole purpose of this setting was to avoid a dependency on MTD_NAND. \nNow that we can depend on MTD_NAND_ECC without pulling in all the rest \nof the NAND code, we might as well do so unconditionally.\n\nSigned-off-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "e5f710cfc6947e64672b7205f7992515868c7782",
      "tree": "c72c3262e6a65b59f067b61cd910697edc071ecb",
      "parents": [
        "ca7081d96e39ea276892f0577f9cf37568547e88"
      ],
      "author": {
        "name": "Maxim Levitsky",
        "email": "maximlevitsky@gmail.com",
        "time": "Fri Mar 19 17:22:54 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Mar 26 15:26:27 2010 +0000"
      },
      "message": "mtd: nand: split out ECC module\n\nThis way drivers could use ecc routines without depedency on whole nand\n\nSigned-off-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7de6f798e13093536b6cb229213db2fab6e6555f",
      "tree": "1ab798388cf402ca4e63def5cc6b7f2ff38411ac",
      "parents": [
        "1f6ca0d6213278f8608c7e342e423ec0c0198040"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Mar 08 18:45:00 2010 -0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Mar 08 18:45:06 2010 -0800"
      },
      "message": "mtd: Make SM_FTL depend on MTD_NAND\n\nRandy Dunlap observed a build problem with the following config:\n\nCONFIG_SM_FTL\u003dy\nCONFIG_SM_FTL_MUSEUM\u003dy\n\nCONFIG_MTD_NAND\u003dm\n\nThe ECC calculation routines are then built as a module, but referenced\nby the sm_ftl code in the kernel, resulting in a build failure. The\nsimple fix is to make CONFIG_SM_FTL depend on MTD_NAND unconditionally\n-- it\u0027s pointless without hardware support anyway.\n\nFix some typos which Randy pointed out, too.\n\nReported-By: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "7d17c02a01a111f40986859f044c8c4cce8a4aa6",
      "tree": "b9fec0a8ad3073e3d7ca442fc1db17b054974e66",
      "parents": [
        "a7790532f5b7358c33a6b1834dc2b318de209f31"
      ],
      "author": {
        "name": "Maxim Levitsky",
        "email": "maximlevitsky@gmail.com",
        "time": "Mon Feb 22 20:39:41 2010 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Feb 26 19:06:50 2010 +0000"
      },
      "message": "mtd: Add new SmartMedia/xD FTL\n\nThis implements new readwrite SmartMedia/xd FTL.\n\nmtd driver must have support proper ECC and badblock verification\nbased on oob parts for 512 bytes nand.\n\nAlso mtd driver must define read_oob and write_oob, which are used\nto read and write both data and oob together.\n\nSigned-off-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "a6b49cb210f878709bdc0bddc16a853f18790d02",
      "tree": "6147078ef0ce584cb6a8dae7468f060ef5838d12",
      "parents": [
        "2c9871de0ae89a0e2c365ea6e277135fe031d8b4",
        "bfc8125858d777bd5bdba03a091c07cc2e0e17c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 09:01:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 09:01:44 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.monstr.eu/linux-2.6-microblaze\n\n* \u0027for-linus\u0027 of git://git.monstr.eu/linux-2.6-microblaze: (24 commits)\n  microblaze: Disable heartbeat/enable emaclite in defconfigs\n  microblaze: Support simpleImage.dts make target\n  microblaze: Fix _start symbol to physical address\n  microblaze: Use LOAD_OFFSET macro to get correct LMA for all sections\n  microblaze: Create the LOAD_OFFSET macro used to compute VMA vs LMA offsets\n  microblaze: Copy ppc asm-compat.h for clean handling of constants in asm and C\n  microblaze: Actually show KiB rather than pages in \"Freeing initrd memory:\"\n  microblaze: Support ptrace syscall tracing.\n  microblaze: Updated CPU version and FPGA family codes in PVR\n  microblaze: Generate correct signal and siginfo for integer div-by-zero\n  microblaze: Don\u0027t be noisy when userspace causes hardware exceptions\n  microblaze: Remove ipc.h file which points to non-existing asm-generic file\n  microblaze: Clear sticky FSR register after generating exception signals\n  microblaze: Ensure CPU usermode is set on new userspace processes\n  microblaze: Use correct kbuild variable KBUILD_CFLAGS\n  microblaze: Save and restore msr in hw exception\n  microblaze: Add architectural support for USB EHCI host controllers\n  microblaze: Implement include/asm/syscall.h.\n  microblaze: Improve checking mechanism for MSR instruction\n  microblaze: Add checking mechanism for MSR instruction\n  ...\n"
    },
    {
      "commit": "c2a32f0d758273fc1caa18b9d4544abb40cd58b1",
      "tree": "e075f3be140207e842699bd05b5bca6d19e1d761",
      "parents": [
        "ebc79c4f8da0f92efa968e0328f32334a2ce80cf"
      ],
      "author": {
        "name": "John Williams",
        "email": "john.williams@petalogix.com",
        "time": "Tue Aug 25 19:19:54 2009 +1000"
      },
      "committer": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Mon Sep 21 14:29:20 2009 +0200"
      },
      "message": "mtd: Enable Open Firmware initialisation of MTD devices and maps for MicroBlaze\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\n"
    },
    {
      "commit": "80f53da0ac752fe16a01ffeddaea658670974a05",
      "tree": "44c160b2cfa2c20951de066e76d8d8be1bf3a568",
      "parents": [
        "d79c326c048246b855b83a0092e6324df0717735"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Sat Jun 13 06:15:18 2009 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sat Sep 19 11:53:31 2009 -0700"
      },
      "message": "mtd: fix order of TEST/PARTITIONS kconfig options\n\nThe MTD_TEST config option was added in between the MTD_PARTITIONS config\nand its dependent options which causes the resulting menu system to\ndisplay incorrectly as MTD_TEST does not depend on MTD_PARTITIONS.  So\nmove it up a few lines where it won\u0027t cause a problem.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "0b1b51f50ed7b4225d0631140de8873fb235a6c0",
      "tree": "7c931ac4e9d855447319dde39f32ef4d349673f6",
      "parents": [
        "cf3f9130f48ed04f32a31cfad21f576d45b8788b"
      ],
      "author": {
        "name": "Paulius Zaleckas",
        "email": "paulius.zaleckas@teltonika.lt",
        "time": "Mon Apr 06 16:10:54 2009 +0300"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jun 12 18:01:45 2009 +0200"
      },
      "message": "trivial: mtd: fix Kconfig comment about \u0027armflash\u0027\n\nThe real \u0027armflash\u0027 map driver is selected by CONFIG_MTD_ARM_INTEGRATOR\n\nSigned-off-by: Paulius Zaleckas \u003cpaulius.zaleckas@teltonika.lt\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "572acc41274522b865440d0644d5f986e3c83755",
      "tree": "e1f6f2968299d35de6ef4ec04524f65d28342b1a",
      "parents": [
        "60f26520e7bd4479dbebf77317c45fc2255ba2e8",
        "9faa8153bef4d82395e6ff7f87cb7c457055007c"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 05 16:24:55 2009 +0000"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 05 16:24:55 2009 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.infradead.org/users/dedekind/mtd-tests-2.6\n\nConflicts:\n\tdrivers/mtd/Makefile\n"
    },
    {
      "commit": "60f26520e7bd4479dbebf77317c45fc2255ba2e8",
      "tree": "11eea5a993901aa3ec567a07383fa9ef0202ca5e",
      "parents": [
        "d81408304b06a71c28417445202af9cd6673168d"
      ],
      "author": {
        "name": "Alexey Korolev",
        "email": "akorolev@infradead.org",
        "time": "Tue Dec 16 18:24:14 2008 +0000"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jan 05 13:58:47 2009 +0100"
      },
      "message": "[MTD] LPDDR Makefile and KConfig\n\nWe have two components to manage LPDDR flash memories in Linux.\n1. It is a driver for chip probing and reading its capabilities\n2. It is a device operations driver.\n\nSigned-off-by: Alexey Korolev \u003cakorolev@infradead.org\u003e\nAcked-by: Jared Hulbert \u003cjaredeh@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "9faa8153bef4d82395e6ff7f87cb7c457055007c",
      "tree": "a0602abd31d029f5d74d73789ced50e435b9307a",
      "parents": [
        "4db451a7649decfdcb29d21016d7e031accc5cda"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Dec 08 13:39:25 2008 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Dec 10 17:00:44 2008 +0200"
      },
      "message": "MTD: add MTD tests to compilation\n\nAdd MTD tests to Kconfig and Makefiles.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "34a82443b79dcda4304b229d555586296da40c16",
      "tree": "e375cf274b6c2eb1f41c81db3a864facfb7cce46",
      "parents": [
        "623fa579e61f250c1913c70257ef3a753820bb68"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Jul 30 12:35:05 2008 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 01 21:47:47 2008 +0100"
      },
      "message": "[MTD] dataflash OTP support\n\nNow that we can tell when we have one of the newer DataFlash chips,\noptionally expose the 128 bytes of OTP memory they provide.  Tested\non at45db642 revision B and D chips.\n\nSwitch mtdchar over to a generic HAVE_MTD_OTP flag instead of adding\nanother #ifdef for each type of chip whose driver has OTP support.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Bryan Wu \u003ccooloney@kernel.org\u003e\nCc: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "59018b6d2acabb114ab58637e6ab95ba424a89d0",
      "tree": "360dc1c8d5b1f81a06f552a566ac150795788fb6",
      "parents": [
        "6eda7a55f786b75e7d3d636a9431e6c850b20d72"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue May 20 01:03:52 2008 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jun 04 17:50:17 2008 +0100"
      },
      "message": "MTD/JFFS2: remove CVS keywords\n\nOnce upon a time, the MTD repository was using CVS.\n\nThis patch therefore removes all usages of the no longer updated CVS\nkeywords from the MTD code.\n\nThis also includes code that printed them to the user.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "f0797881d59ab93d7d92c55411e0573977d909d4",
      "tree": "aeee6ac91a72631c57e201143e3d73af1a040c5e",
      "parents": [
        "5c249c5a57dce2b47f1fb92093201b3a7013cb57"
      ],
      "author": {
        "name": "Matteo Croce",
        "email": "technoboy85@gmail.com",
        "time": "Wed Mar 12 02:25:06 2008 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 22 20:48:12 2008 +0100"
      },
      "message": "[MTD] AR7 mtd partition map\n\nSigned-off-by: Matteo Croce \u003ctechnoboy85@gmail.com\u003e\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: Eugene Konev \u003cejka@imfi.kspu.ru\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "9a310d21196f38f6ad0ad146057548653e495c09",
      "tree": "ea623f5d0f8712bd300e6bebf5695a3e124cb9cb",
      "parents": [
        "c0d2a48a65a8fc286aa84871cfc20d8c10dbf492"
      ],
      "author": {
        "name": "Scott Wood",
        "email": "scottwood@freescale.com",
        "time": "Tue Jan 15 17:54:43 2008 -0600"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Feb 03 18:06:48 2008 +1100"
      },
      "message": "[MTD] Factor out OF partition support from the NOR driver.\n\nSigned-off-by: Scott Wood \u003cscottwood@freescale.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "256331d53a40f436cd0b16166621d819923145c8",
      "tree": "7e34271f045031864e78ec2418f2bb2a63d26aa8",
      "parents": [
        "2a1dba2931dc14a2a202eef435ab24cf6bc6dbd4"
      ],
      "author": {
        "name": "Peter Korsgaard",
        "email": "jacmet@sunsite.dk",
        "time": "Tue Nov 06 11:55:00 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Dec 03 14:00:06 2007 +0000"
      },
      "message": "[MTD] mtdoops: Document usage in Kconfig\n\nAdd usage instructions to Kconfig for mtdoops driver.\n\nSigned-off-by: Peter Korsgaard \u003cjacmet@sunsite.dk\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "4b23aff083649eafa141ed69ad0ff59ba639edf8",
      "tree": "92baaa2c23706f8a6b118ce17b99ee378863a9d0",
      "parents": [
        "1100b47ea557e1cd6d9b71fe7ba1a189ed8bf276"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "richard@openedhand.com",
        "time": "Tue May 29 13:31:42 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 20:18:02 2007 +0100"
      },
      "message": "[MTD] oops and panic message logging to MTD device\n\nKernel oops and panic messages are invaluable when debugging crashes.\nThese messages often don\u0027t make it to flash based logging methods (say a\nsyslog on jffs2) due to the overheads involved in writing to flash.\n\nThis patch allows you to turn an MTD partition into a circular log\nbuffer where kernel oops and panic messages are written to. The messages\nare obtained by registering a console driver and checking\noops_in_progress. Erases are performed in advance to maximise the\nchances of a saving messages.\n\nTo activate it, add console\u003dttyMTDx to the kernel commandline (where x\nis the mtd device number to use).\n\nSigned-off-by: Richard Purdie \u003crpurdie@openedhand.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "e25df1205f37c7bff3ab14fdfc8a5249f3c69c82",
      "tree": "e53c1f17d79a62bb845438d6af6a7693ef5440f3",
      "parents": [
        "eeca7a36a86db8bfc1945dd7f6f0c22a6b66b31d"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu May 10 15:45:57 2007 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu May 10 15:46:07 2007 +0200"
      },
      "message": "[S390] Kconfig: menus with depends on HAS_IOMEM.\n\nAdd \"depends on HAS_IOMEM\" to a number of menus to make them\ndisappear for s390 which does not have I/O memory.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d1da4e50e5d09f02c340927a4fcb7f54202fa033",
      "tree": "7f98317bdd45dbdb7644e9179891c5af6a3a8ef1",
      "parents": [
        "78ab67da1002d954ea4c3e2b441e2483c41f94e8",
        "a205752d1ad2d37d6597aaae5a56fc396a770868"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Apr 27 19:16:19 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Apr 27 19:16:19 2007 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tdrivers/mtd/Kconfig\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "801c135ce73d5df1caf3eca35b66a10824ae0707",
      "tree": "eaf6e7859650557192533b70746479de686c56e1",
      "parents": [
        "de46c33745f5e2ad594c72f2cf5f490861b16ce1"
      ],
      "author": {
        "name": "Artem B. Bityutskiy",
        "email": "dedekind@linutronix.de",
        "time": "Tue Jun 27 12:22:22 2006 +0400"
      },
      "committer": {
        "name": "Frank Haverkamp",
        "email": "haver@vnet.ibm.com",
        "time": "Fri Apr 27 14:23:33 2007 +0300"
      },
      "message": "UBI: Unsorted Block Images\n\nUBI (Latin: \"where?\") manages multiple logical volumes on a single\nflash device, specifically supporting NAND flash devices. UBI provides\na flexible partitioning concept which still allows for wear-levelling\nacross the whole flash device.\n\nIn a sense, UBI may be compared to the Logical Volume Manager\n(LVM). Whereas LVM maps logical sector numbers to physical HDD sector\nnumbers, UBI maps logical eraseblocks to physical eraseblocks.\n\nMore information may be found at\nhttp://www.linux-mtd.infradead.org/doc/ubi.html\n\nPartitioning/Re-partitioning\n\n  An UBI volume occupies a certain number of erase blocks. This is\n  limited by a configured maximum volume size, which could also be\n  viewed as the partition size. Each individual UBI volume\u0027s size can\n  be changed independently of the other UBI volumes, provided that the\n  sum of all volume sizes doesn\u0027t exceed a certain limit.\n\n  UBI supports dynamic volumes and static volumes. Static volumes are\n  read-only and their contents are protected by CRC check sums.\n\nBad eraseblocks handling\n\n  UBI transparently handles bad eraseblocks. When a physical\n  eraseblock becomes bad, it is substituted by a good physical\n  eraseblock, and the user does not even notice this.\n\nScrubbing\n\n  On a NAND flash bit flips can occur on any write operation,\n  sometimes also on read. If bit flips persist on the device, at first\n  they can still be corrected by ECC, but once they accumulate,\n  correction will become impossible. Thus it is best to actively scrub\n  the affected eraseblock, by first copying it to a free eraseblock\n  and then erasing the original. The UBI layer performs this type of\n  scrubbing under the covers, transparently to the UBI volume users.\n\nErase Counts\n\n  UBI maintains an erase count header per eraseblock. This frees\n  higher-level layers (like file systems) from doing this and allows\n  for centralized erase count management instead. The erase counts are\n  used by the wear-levelling algorithm in the UBI layer. The algorithm\n  itself is exchangeable.\n\nBooting from NAND\n\n  For booting directly from NAND flash the hardware must at least be\n  capable of fetching and executing a small portion of the NAND\n  flash. Some NAND flash controllers have this kind of support. They\n  usually limit the window to a few kilobytes in erase block 0. This\n  \"initial program loader\" (IPL) must then contain sufficient logic to\n  load and execute the next boot phase.\n\n  Due to bad eraseblocks, which may be randomly scattered over the\n  flash device, it is problematic to store the \"secondary program\n  loader\" (SPL) statically. Also, due to bit-flips it may become\n  corrupted over time. UBI allows to solve this problem gracefully by\n  storing the SPL in a small static UBI volume.\n\nUBI volumes vs. static partitions\n\n  UBI volumes are still very similar to static MTD partitions:\n\n    * both consist of eraseblocks (logical eraseblocks in case of UBI\n      volumes, and physical eraseblocks in case of static partitions;\n    * both support three basic operations - read, write, erase.\n\n  But UBI volumes have the following advantages over traditional\n  static MTD partitions:\n\n    * there are no eraseblock wear-leveling constraints in case of UBI\n      volumes, so the user should not care about this;\n    * there are no bit-flips and bad eraseblocks in case of UBI volumes.\n\n  So, UBI volumes may be considered as flash devices with relaxed\n  restrictions.\n\nWhere can it be found?\n\n  Documentation, kernel code and applications can be found in the MTD\n  gits.\n\nWhat are the applications for?\n\n  The applications help to create binary flash images for two purposes: pfi\n  files (partial flash images) for in-system update of UBI volumes, and plain\n  binary images, with or without OOB data in case of NAND, for a manufacturing\n  step. Furthermore some tools are/and will be created that allow flash content\n  analysis after a system has crashed..\n\nWho did UBI?\n\n  The original ideas, where UBI is based on, were developed by Andreas\n  Arnez, Frank Haverkamp and Thomas Gleixner. Josh W. Boyer and some others\n  were involved too. The implementation of the kernel layer was done by Artem\n  B. Bityutskiy. The user-space applications and tools were written by Oliver\n  Lohmann with contributions from Frank Haverkamp, Andreas Arnez, and Artem.\n  Joern Engel contributed a patch which modifies JFFS2 so that it can be run on\n  a UBI volume. Thomas Gleixner did modifications to the NAND layer. Alexander\n  Schmidt made some testing work as well as core functionality improvements.\n\nSigned-off-by: Artem B. Bityutskiy \u003cdedekind@linutronix.de\u003e\nSigned-off-by: Frank Haverkamp \u003chaver@vnet.ibm.com\u003e\n"
    },
    {
      "commit": "ec98c681a5355469eee70227b7e0a88f0d688483",
      "tree": "aa3704fde25d0428755d15ff89e8e1ffb24624f7",
      "parents": [
        "99f9b2431ed3da4a66cf1cfe74132a53a9569bba"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@linux01.gwdg.de",
        "time": "Thu Apr 19 16:21:41 2007 -0500"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Apr 19 16:21:41 2007 -0500"
      },
      "message": "Use menuconfig objects: MTD\n\nUse menuconfigs instead of menus, so the whole menu can be disabled at once\ninstead of going through all options.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "f6a7ecb18dabd88bd9f28e7bece564cabe8ffe82",
      "tree": "030fee5005717d55e66b2e3f9ba367e774d631fa",
      "parents": [
        "eb6cf7bb71baa109041c04357b930a0c0bfa0db7"
      ],
      "author": {
        "name": "Josh Boyer",
        "email": "jwboyer@linux.vnet.ibm.com",
        "time": "Mon Nov 20 20:15:36 2006 -0600"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Wed Nov 29 16:58:15 2006 +0200"
      },
      "message": "[MTD] add MTD_BLKDEVS Kconfig option\n\nAdd a MTD_BLKDEVS Kconfig option to cleanup the makefile a bit\n\nSigned-off-by: Josh Boyer \u003cjwboyer@linux.vnet.ibm.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\n"
    },
    {
      "commit": "1ef93a0f668c8736cb6b6c3a43a5b8101efa24af",
      "tree": "8597393b366e81653f90eb854c92ab2bb696ad36",
      "parents": [
        "a6b1d82d079a99d09761ee5fbc66c49f33b42324"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Oct 09 01:16:38 2006 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Oct 09 07:25:28 2006 +0100"
      },
      "message": "[MTD] SSFDC must depend on BLOCK\n\nThis patch fixes the following compile error with\nCONFIG_SSFDC\u003dm, CONFIG_BLOCK\u003dn:\n\n\u003c--  snip  --\u003e\n\n...\n  CC [M]  drivers/mtd/mtd_blkdevs.o\n/home/bunk/linux/kernel-2.6/git/linux-2.6/drivers/mtd/mtd_blkdevs.c:40: warning: ‘struct request’ declared inside parameter list\n/home/bunk/linux/kernel-2.6/git/linux-2.6/drivers/mtd/mtd_blkdevs.c:40: warning: its scope is only this definition or declaration, which is probably not what you want\n/home/bunk/linux/kernel-2.6/git/linux-2.6/drivers/mtd/mtd_blkdevs.c: In function ‘do_blktrans_request’:\n/home/bunk/linux/kernel-2.6/git/linux-2.6/drivers/mtd/mtd_blkdevs.c:45: error: dereferencing pointer to incomplete type\n...\nmake[3]: *** [drivers/mtd/mtd_blkdevs.o] Error 1\n\n\u003c--  snip  --\u003e\n\nBug report by Jesper Juhl.\n\nThis patch also removes a pointless \"default n\" from the SSFDC option.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "9361401eb7619c033e2394e4f9f6d410d6719ac7",
      "tree": "04b94a71f2366988c17740d1c16cfbdec41d5d2e",
      "parents": [
        "d366e40a1cabd453be6e2609caa7e12f9ca17b1f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat Sep 30 20:45:40 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:31 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Make it possible to disable the block layer [try #6]\n\nMake it possible to disable the block layer.  Not all embedded devices require\nit, some can make do with just JFFS2, NFS, ramfs, etc - none of which require\nthe block layer to be present.\n\nThis patch does the following:\n\n (*) Introduces CONFIG_BLOCK to disable the block layer, buffering and blockdev\n     support.\n\n (*) Adds dependencies on CONFIG_BLOCK to any configuration item that controls\n     an item that uses the block layer.  This includes:\n\n     (*) Block I/O tracing.\n\n     (*) Disk partition code.\n\n     (*) All filesystems that are block based, eg: Ext3, ReiserFS, ISOFS.\n\n     (*) The SCSI layer.  As far as I can tell, even SCSI chardevs use the\n     \t block layer to do scheduling.  Some drivers that use SCSI facilities -\n     \t such as USB storage - end up disabled indirectly from this.\n\n     (*) Various block-based device drivers, such as IDE and the old CDROM\n     \t drivers.\n\n     (*) MTD blockdev handling and FTL.\n\n     (*) JFFS - which uses set_bdev_super(), something it could avoid doing by\n     \t taking a leaf out of JFFS2\u0027s book.\n\n (*) Makes most of the contents of linux/blkdev.h, linux/buffer_head.h and\n     linux/elevator.h contingent on CONFIG_BLOCK being set.  sector_div() is,\n     however, still used in places, and so is still available.\n\n (*) Also made contingent are the contents of linux/mpage.h, linux/genhd.h and\n     parts of linux/fs.h.\n\n (*) Makes a number of files in fs/ contingent on CONFIG_BLOCK.\n\n (*) Makes mm/bounce.c (bounce buffering) contingent on CONFIG_BLOCK.\n\n (*) set_page_dirty() doesn\u0027t call __set_page_dirty_buffers() if CONFIG_BLOCK\n     is not enabled.\n\n (*) fs/no-block.c is created to hold out-of-line stubs and things that are\n     required when CONFIG_BLOCK is not set:\n\n     (*) Default blockdev file operations (to give error ENODEV on opening).\n\n (*) Makes some /proc changes:\n\n     (*) /proc/devices does not list any blockdevs.\n\n     (*) /proc/diskstats and /proc/partitions are contingent on CONFIG_BLOCK.\n\n (*) Makes some compat ioctl handling contingent on CONFIG_BLOCK.\n\n (*) If CONFIG_BLOCK is not defined, makes sys_quotactl() return -ENODEV if\n     given command other than Q_SYNC or if a special device is specified.\n\n (*) In init/do_mounts.c, no reference is made to the blockdev routines if\n     CONFIG_BLOCK is not defined.  This does not prohibit NFS roots or JFFS2.\n\n (*) The bdflush, ioprio_set and ioprio_get syscalls can now be absent (return\n     error ENOSYS by way of cond_syscall if so).\n\n (*) The seclvl_bd_claim() and seclvl_bd_release() security calls do nothing if\n     CONFIG_BLOCK is not set, since they can\u0027t then happen.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "892e4fba1cb5cdc70f3acc65e024e541c0b2d559",
      "tree": "0afa420b54842f9ac0fb048bcc0c316f3560c2b7",
      "parents": [
        "734a56285dbeedc6cc10aef6f700eeab7c65ea9f"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Sep 23 10:24:36 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Sep 23 10:24:36 2006 +0100"
      },
      "message": "[MTD] Fix dependencies with CONFIG_MTD\u003dm\n\nCMDLINEPARTS shouldn\u0027t be selectable, and neither should SSFDC, which\ncan be a tristate anyway.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "51197abf29657373bcf9803d87da3c3d8fc3a37e",
      "tree": "9adde058fc9a6817fe0fe45fc2e4e13de36f358f",
      "parents": [
        "98aacdfde05ccf512d4395eed0d4894eea2d163c"
      ],
      "author": {
        "name": "Claudio Lanconelli",
        "email": "lanconelli.claudio@eptar.com",
        "time": "Fri Sep 22 11:01:37 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Sep 22 11:01:37 2006 +0100"
      },
      "message": "[MTD] Add SSFDC (SmartMedia) read-only translation layer\n\nSigned-off-by: Claudio Lanconelli \u003clanconelli.claudio@eptar.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "2a2ed2db353d949c06b6ef8b6913f65b39111eab",
      "tree": "d835c3dd101da91089c3bdf51c8632e84be37232",
      "parents": [
        "972d19e837833b93466c6f6a8ef2a7d653000aa3",
        "070b98bfda3d27269519067c1c67eaef695f3e0c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:05:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:05:15 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (40 commits)\n  kbuild: trivial fixes in Makefile\n  kbuild: adding symbols in Kconfig and defconfig to TAGS\n  kbuild: replace abort() with exit(1)\n  kbuild: support for %.symtypes files\n  kbuild: fix silentoldconfig recursion\n  kbuild: add option for stripping modules while installing them\n  kbuild: kill some false positives from modpost\n  kbuild: export-symbol usage report generator\n  kbuild: fix make -rR breakage\n  kbuild: append -dirty for updated but uncommited changes\n  kbuild: append git revision for all untagged commits\n  kbuild: fix module.symvers parsing in modpost\n  kbuild: ignore make\u0027s built-in rules \u0026 variables\n  kbuild: bugfix with initramfs\n  kbuild: modpost build fix\n  kbuild: check license compatibility when building modules\n  kbuild: export-type enhancement to modpost.c\n  kbuild: add dependency on kernel.release to the package targets\n  kbuild: `make kernelrelease\u0027 speedup\n  kconfig: KCONFIG_OVERWRITECONFIG\n  ...\n"
    },
    {
      "commit": "e55a3e8aed99626dd9a9a6732fc0eb5b75ef29bd",
      "tree": "a30fd1b93d804a0badc031936c730363c05c5bd5",
      "parents": [
        "f001f7f89689d3226678ab3986f3a486f54aa069"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Thu Jun 08 22:12:49 2006 -0700"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.ravnborg.org",
        "time": "Fri Jun 09 16:28:07 2006 +0200"
      },
      "message": "kconfig: remove leading whitespace in menu prompts\n\nThis removes all the leading whitespace kconfig now warns about.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "4992a9e88886b0c5ebc3d27eb74d0344c873eeea",
      "tree": "23befdd7ccd4ed95b271144f98a6a27749ff3f68",
      "parents": [
        "752870707f2818b5f0d94ca05e46cb0ffee6cbf9"
      ],
      "author": {
        "name": "Egry Gábor",
        "email": "gaboregry@t-online.hu",
        "time": "Fri May 12 17:35:02 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri May 12 17:35:02 2006 +0100"
      },
      "message": "Trivial typo fixes in Kconfig files (MTD).\n\nSigned-off-by: Egry Gábor \u003cgaboregry@t-online.hu\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "97894cda5773e59bd13e87b72077751099419a9f",
      "tree": "9a039ab8c122ae9a4f64d285e2da0efd1356789e",
      "parents": [
        "b95f9609c761a14d1e7be1a89f2a66399b5ae343"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Nov 07 11:15:26 2005 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Mon Nov 07 13:37:38 2005 +0100"
      },
      "message": "[MTD] core: Clean up trailing white spaces\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "cd5f6346bc28a41375412b49b290d22ee4e4bbe8",
      "tree": "e90e028e7319f2787fd8660d10d8455aba95ddc5",
      "parents": [
        "4ce1f562189696605a84813cf71847c0cc698414"
      ],
      "author": {
        "name": "Kyungmin Park",
        "email": "kyungmin.park@samsung.com",
        "time": "Mon Jul 11 11:41:53 2005 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Sun Nov 06 21:17:24 2005 +0100"
      },
      "message": "[MTD] Add initial support for OneNAND flash chips\n\nOneNAND is a new flash technology from Samsung with integrated SRAM\nbuffers and logic interface.\n\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e27a9960af0506d84b9ca9dd3874b7d88901f230",
      "tree": "cac8c7876c3917c301e663d82b3877aa7f9935ab",
      "parents": [
        "45ca1b509ea156e87c99e529821fb3b548e14fe3"
      ],
      "author": {
        "name": "Sean Young",
        "email": "sean@mess.org",
        "time": "Thu Jun 16 09:49:33 2005 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Sun Nov 06 20:08:54 2005 +0100"
      },
      "message": "[MTD] Add Resident Flash Disk (RFD) support\n\nThis type of flash translation layer (FTL) is used by the Embedded BIOS\nby General Software. It is known as the Resident Flash Disk (RFD), see:\n\nhttp://www.gensw.com/pages/prod/bios/rfd.htm\n\nSigned-off-by: Sean Young \u003csean@mess.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
