)]}'
{
  "log": [
    {
      "commit": "10337f785ebd621b544d7f5929bb1050eb975431",
      "tree": "2efbd04d3f00fa7a71a46cd68e61ee5a142a4d1c",
      "parents": [
        "dd6e07ab3ab12346ab68f9e93f725d651a90964d"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Mar 04 19:57:27 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "memory_bus: Move related declarations into new `chipdrivers/memory_bus.h`\n\nChange-Id: I2bef65de77860d049ec3d9938ae777c5f929c258\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/438\n"
    },
    {
      "commit": "519be66fc59558971dd653afe69ccaf1a633b492",
      "tree": "74f0912de156a86d56111f377db080246e5205e9",
      "parents": [
        "ef78de4a21323b8c459337356289218211f2c5ce"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Dec 23 20:03:35 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jul 31 08:26:59 2019 +0000"
      },
      "message": "Fix -Wsign-compare trouble\n\nMostly by changing to `unsigned` types where applicable, sometimes\n`signed` types, and casting as a last resort.\n\nChange-Id: I08895543ffb7a48058bcf91ef6500ca113f2d305\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/30409\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\n"
    },
    {
      "commit": "6c68363d0c1db0fd5e2ac95fb4adeaf254f669a7",
      "tree": "d04d0449d10e7d37744447aebae8530af02edd9a",
      "parents": [
        "beeb8bc925bef6973e1c9fa6c4fd26a4113a1777"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Fri Jun 21 15:33:09 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 23 21:39:48 2019 +0000"
      },
      "message": "tree: Include missing headers for function prototypes\n\nThese files all contain functions whose prototypes are in header files,\nso make sure those header files are included.\n\nChange-Id: I0189a1550bf90d4a0b87dcef9f8a8449590cc9d7\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33668\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "5bd11dc8476b4b17cef58d8d855f2b50e74da2f4",
      "tree": "1d11b50457a755374ede6d3981248d7e1cd5cfd2",
      "parents": [
        "c6fe5d83373783973cfa3c0ab8499f05b23da02f"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Sat Aug 18 09:24:26 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Aug 19 10:41:55 2018 +0000"
      },
      "message": "Remove empty line at EOF\n\nChange-Id: Id6063cb5d406d7139abf7fcdf2ae265363640f9f\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/28207\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "e083880279119677e443fc16b4694f8c81bf2c40",
      "tree": "03413b996779bc4c86ec41590f3e7bcdd97d0ef5",
      "parents": [
        "124ef38f7afc61ad7c713c22aad7c5c7f79bdb9b"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Mon Apr 02 11:14:02 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 24 20:21:41 2018 +0000"
      },
      "message": "Remove address from GPLv2 headers\n\nChange-Id: I7bfc339673cbf5ee2d2ff7564c4db04ca088d0a4\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/25381\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "c6fa32d2b5c08d2fcc92fee2974a3fc02a3ca1f7",
      "tree": "7ac561c734007cfe88577cdad895f87524e3184f",
      "parents": [
        "5561955b1158e8bd29299735abef1e26a5a9cdbc"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Jan 04 22:54:07 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Jan 04 22:54:07 2013 +0000"
      },
      "message": "Introduce msg_*warn\n\nAlso, unify all outputs of \"Warning:\" and \"Error:\" to use normal\ncapitalization instead of mixing it with all capitals.\n\nCorresponding to flashrom svn r1643.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\n"
    },
    {
      "commit": "5a7cb847f096dacb0bf96b3aa909f79d76ae8204",
      "tree": "da511e990c1fdded61ee5dcefae38314c3a5a6cc",
      "parents": [
        "dd73d830f7370b5f0bbdaa0780b0ff8d6ff1776a"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Aug 25 01:17:58 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Aug 25 01:17:58 2012 +0000"
      },
      "message": "Make struct flashchip a field in struct flashctx instead of a complete copy\n\nAll the driver conversion work and cleanup has been done by Stefan.\nflashrom.c and cli_classic.c are a joint work of Stefan and Carl-Daniel.\n\nCorresponding to flashrom svn r1579.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "8a3c60cdd0e5632173567923ae1927763e31e857",
      "tree": "3a5514d022392cf4d8fa368f9f02653da21a93ca",
      "parents": [
        "63fd9026f1e82b67a65072fda862ba7af35839e1"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Dec 18 15:01:24 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Dec 18 15:01:24 2011 +0000"
      },
      "message": "Add struct flashctx * parameter to all functions accessing flash chips\n\nAll programmer access function prototypes except init have been made\nstatic and moved to the respective file.\n\nA few internal functions in flash chip drivers had chipaddr parameters\nwhich are no longer needed.\n\nThe lines touched by flashctx changes have been adjusted to 80 columns\nexcept in header files.\n\nCorresponding to flashrom svn r1474.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "63fd9026f1e82b67a65072fda862ba7af35839e1",
      "tree": "7d9ffba077715cf9e75c9f4a36d0d7f11a3181f6",
      "parents": [
        "83c92e983aaf11fb6f5bafb6744275c50add193c"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Dec 14 22:25:15 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Dec 14 22:25:15 2011 +0000"
      },
      "message": "Use struct flashctx instead of struct flashchip for flash chip access\n\nStruct flashchip is used only for the flashchips array and for\noperations which do not access hardware, e.g. printing a list of\nsupported flash chips.\n\nstruct flashctx (flash context) contains all data available in\nstruct flashchip, but it also contains runtime information like\nmapping addresses. struct flashctx is expected to grow additional\nmembers over time, a prime candidate being programmer info.\nstruct flashctx contains all of struct flashchip with identical\nmember layout, but struct flashctx has additional members at the end.\n\nThe separation between struct flashchip/flashctx shrinks the memory\nrequirement of the big flashchips array and allows future extension\nof flashctx without having to worry about bloat.\n\nCorresponding to flashrom svn r1473.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "a63c7c449646147efe2bdeb80efeed479dc1d328",
      "tree": "da1a452c658ecb3120fffe6d084a46a85d5792a4",
      "parents": [
        "082c8b559cd9f3262c9af58ac2f17f2cc8a09d8b"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 16 12:08:22 2011 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 16 12:08:22 2011 +0000"
      },
      "message": "Remove unneeded inclusions of chipdrivers.h\n\nThis is related to the spi split patch as discussed in:\nhttp://www.flashrom.org/pipermail/flashrom/2010-February/thread.html#2364\nthe old commit (r914) log notes:\n\"Some of the spi programmer drivers required chipdrivers.h, needs fixing later: it87spi.c\n  ichspi.c   sb600spi.c   wbsio_spi.c   buspirate_spi.c   ft2232spi.c   bitbang_spi.c   dediprog.c\"\n\nthere still remain a few cases where chipdrivers.h is needed:\ndediprog.c (spi_read_chunked and spi_write_chunked)\nit87spi.c (due to spi_write_enable and spi_read_status_register)\nwbsio_spi.c (spi_programmer registration only)\n\nbesides that, there are also non-spi files that do not need it.\nalso, add flash.h to chipdrivers.h because it uses some types of it\nand remove flashchips.h from print.c\n\nCorresponding to flashrom svn r1414.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "ad3cc55e139b2e239325815464fe5f7d828aa794",
      "tree": "46568cf766d19740418be5ca8eaa494c7e69cc36",
      "parents": [
        "b63b067ae22803689592db482611093b33a29eef"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 03 11:02:10 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 03 11:02:10 2010 +0000"
      },
      "message": "Kill global variables, constants and functions if local scope suffices\n\nConstify variables where possible.\nInitialize programmer-related variables explicitly in programmer_init to\nallow running programmer_init from a clean state after\nprogrammer_shutdown.\nProhibit registering programmer shutdown functions before init or after\nshutdown.\nKill some dead code.\nRename global variables with namespace-polluting names.\nUse a previously unused locking helper function in sst49lfxxxc.c.\n\nThis is needed for libflashrom.\n\nEffects on the binary size of flashrom are minimal (300 bytes\nshrinkage), but the data section shrinks by 4384 bytes, and that\u0027s a\ngood thing if flashrom is operating in constrained envionments.\n\nCorresponding to flashrom svn r1068.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "831e8f4abb29f1ff66ebb8ab5ff496050ff677f7",
      "tree": "8d19ef4871587dcaf0a3a1dec562dd6ef09024b6",
      "parents": [
        "4178760241c3b3dc46a806ee3621a2eb97f4cca5"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 30 22:24:40 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 30 22:24:40 2010 +0000"
      },
      "message": "Remove unneeded #include statements completely\n\nUnistd.h was only used to get a definition of NULL in all files. Add our\nown NULL #define and remove unistd.h from flash.h\nstdio.h has no place in flash.h, it should be included only in files\nwhich really need it.\nAdd #include statements in individual .c files where needed.\n\nReplace a few printf with msg_* to eliminate the need for stdio.h.\n\nCorresponding to flashrom svn r1021.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "ed479d2a8728dc12f1f78170cacfaf542cd0b44e",
      "tree": "50b12e054fcff9b0cabbf916d2d049d00f2bf8e5",
      "parents": [
        "93539dad8d6c0336f60c50966a2dc3a34736165d"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Wed Mar 24 23:14:32 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Wed Mar 24 23:14:32 2010 +0000"
      },
      "message": "Convert chips\u0027 message printing to msg_c* Fixed suggestions by Carl-Daniel\n\nCorresponding to flashrom svn r982.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "ccf7a2a231a213fe987a675ca6869456dbbd37da",
      "tree": "d9264e9d63564e55fcaa38d819e69d6ae3715087",
      "parents": [
        "b3289c904c0242333d1283e85d88e61ee2d3e923"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Tue Mar 16 03:09:10 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Tue Mar 16 03:09:10 2010 +0000"
      },
      "message": "Further cleanup after JEDEC refactorings\n\nConvert _sst_fwhub functions to jedec.\n\nCorresponding to flashrom svn r943.\n\nkill unused sst_fwhub.c functions\nmake unlock_* check if unlock was successful and only return 0 when fully successful\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "81449a2482237487f06e0cc35f01769b0d46b734",
      "tree": "d0a52cd813ab3249409a3d95cb1b66f9339bc75e",
      "parents": [
        "fd41670dd6ae7c216b96467c64ef294086499970"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 15 03:48:42 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 15 03:48:42 2010 +0000"
      },
      "message": "Add FEATURE_REGISTERMAP to some more chips and change the use of various probing functions\n\nAdd FEATURE_REGISTERMAP to * Intel 82802AB, 82802AC * Sharp LHF00L04 * SST SST49LF004C, SST49LF008C, SST49LF016C, SST49LF160C * ST M50FLW040A, M50FLW040B, M50FLW080A, M50FLW080B, M50FW002, M50FW016      M50FW040, M50FW080, M50LPW116.\n\nMake register mapping conditional on FEATURE_REGISTERMAP in 82802ab.c.\nReplace probe_49lfxxxc with probe_82802ab.\nReplace probe_28sf040 with probe_82802ab.\nReplace probe_sst_fwhub with probe_jedec.\nAdd printlock_sst_fwhub to chips which used probe_sst_fwhub.\n\nCorresponding to flashrom svn r937.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "14ba6682e99273273be74b8e8681d0604b85e9b9",
      "tree": "cd0212ae1ffe83aaea0a5ca9f5e2be86615c471a",
      "parents": [
        "cfa674fde7ee763844f82e38503cd997a3951197"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Fri Feb 26 05:48:29 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Fri Feb 26 05:48:29 2010 +0000"
      },
      "message": "Split spi.c into programmer and chip code Remove chipdriver.h include from flash.h\n\nSome of the spi programmer drivers required chipdrivers.h, needs fixing later:\n  it87spi.c\n  ichspi.c\n  sb600spi.c\n  wbsio_spi.c\n  buspirate_spi.c\n  ft2232spi.c\n  bitbang_spi.c\n  dediprog.c\n\nCorresponding to flashrom svn r914.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "51c83fb2b204a369e1b1825b66c56e5babcf8022",
      "tree": "af901ed6d2a2214445035d483c29492217ee7727",
      "parents": [
        "21f54963611aa0f3ee3ad16a45395d0cec8363f1"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Wed Jan 20 20:55:53 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Wed Jan 20 20:55:53 2010 +0000"
      },
      "message": "Convert various SST chips to use block_erasers\n\nConvert the following chips to block_erasers: SST28SF040A SST29EE010\nSST29LE010 SST29EE020A SST29LE020 SST39SF010A SST39SF020A SST39SF040\nSST39VF512 SST39VF010 SST39VF020 SST39VF040 SST39VF080 SST49LF002A/B\nSST49LF003A/B SST49LF004C SST49LF008A SST49LF008C SST49LF016C SST49LF020\nSST49LF020A SST49LF040 SST49LF040B SST49LF080A SST49LF160C .\n\nExtend sst28sf040 to include chip and sector functions for block_eraser.\nExtend sst49lfxxxc to include chip, sector, block erasers functions for\nblock_erasers. Extend sst_fwhub to include chip and sector functions for\nblock_erasers. Add copyrights to changed files. Killed erase_sst_fwhub.\nKilled erase_49lfxxxc. NULL A/A mux mode full chip erasers. Ignore block\nlocks in erase/write. Change comments from \"PP mode\" to \"A/A mux mode\"\n\nCorresponding to flashrom svn r877.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e \nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "e9404668a19701ace750148624378461bc9fece5",
      "tree": "522479a7a1cd5669f763de7e6b86aa7a93c60986",
      "parents": [
        "3646c8f31fbb4f52cac04129b8d6898fb00e1eab"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jan 09 02:24:17 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jan 09 02:24:17 2010 +0000"
      },
      "message": "Use the register mapping feature bit\n\nAll functions which just call probe_jedec and then map flash registers\nare replaced by probe_jedec. All functions which call probe_jedec, map\nflash registers and do something else can at least eliminate mapping\nflash registers.\nFix logic inversion in probe_jedec to map flash registers on success\ninstead of on failure.\nChange a few TIMING_IGNORED to TIMING_FIXME where probe_jedec is used.\n\nTotal savings: One probe function simplified, three probe functions\neliminated.\n\nCorresponding to flashrom svn r839.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    },
    {
      "commit": "c57a920f3495526102daaff052942ab05be6cde0",
      "tree": "dda6bfc4455a771f8074f7ae1c4d66debeff712a",
      "parents": [
        "009c51b06206839ea0fc1124724e5bd3e0ec149d"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Jan 04 17:15:23 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Jan 04 17:15:23 2010 +0000"
      },
      "message": "Generify jedec functions by introducing an address mask\n\nThe patch converts jedec functions into mask-based generics which can\nbe used for many chip provided the only changes are the addresses are\nconverted from 0x5555/0x2AAA to 0x555/0x2AA or similar.\n\nThe patch mostly changes jedec.c, but a few other files are changed\nbecause they use the jedec functions within their own functions.\n\nThe patch also adds a copyright line to flashchips.c because of my\nrecent work in converting AMD and Atmel chips to use struct erase_block.\n\nCorresponding to flashrom svn r828.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "411d7c15261f47a1ef9eb22660acf9800c6ed9f4",
      "tree": "6457c79a82a3e2c6175d660b333ef04e1614d7a4",
      "parents": [
        "96123034f4c28800fe2c3693be82970f2b9148c3"
      ],
      "author": {
        "name": "Adam Jurkowski",
        "email": "adam.jurkowski@kontron.pl",
        "time": "Wed Nov 25 15:04:28 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Nov 25 15:04:28 2009 +0000"
      },
      "message": "Optimized write_sst_fwhub for safety and speed\n\nNow uses block erase instead of chip erase. Also introduced auto skip\nfeature.\n\nCorresponding to flashrom svn r778.\n\nSigned-off-by: Adam Jurkowski \u003cadam.jurkowski@kontron.pl\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "a06287c9a04cfb055be958839ec18ce5e091c7fb",
      "tree": "3fb7bd7382a884657b9eccce36d3f6f0a1583edf",
      "parents": [
        "c025268340dec1a53ba5e3117cc3245fa9c4a7ea"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Sep 23 22:01:33 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Sep 23 22:01:33 2009 +0000"
      },
      "message": "Switch SST49LF004A/B to block erase, remove the hack which simulated (unsupported) chip erase\n\nAnnotate SST49LF004B quirks for TBL#.\n\nAdd TEST_OK_PRW which is useful when a PREW chip gets a new erase\nroutine.\n\nChange a few erase function prototypes to use unsigned int instead of\nint.\n\nCorresponding to flashrom svn r731.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Luc Verhaegen \u003clibv@skynet.be\u003e\n"
    },
    {
      "commit": "30f7cb2f3c570c99b61bd5df72621f44f1bdd0d0",
      "tree": "d714754c298d7d247786e19c4b2b4afd6067a795",
      "parents": [
        "084546449983c1d6f147c1a3e381e225887e322c"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 15 17:23:36 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 15 17:23:36 2009 +0000"
      },
      "message": "Flashrom only checks for very few chips if the erase worked\n\nAnd even when it checks if the erase worked, the result of that check is\noften ignored.\n\nConvert all erase functions and actually check return codes\nalmost everywhere.\nCheck inside all erase_* routines if erase worked, not outside.\nerase_sector_jedec and erase_block_jedec have changed prototypes to\nenable erase checking.\n\nUwe successfully tested LPC on an CK804 box and SPI on some SB600 box.\n\nCorresponding to flashrom svn r595.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Urja Rannikko \u003curjaman@gmail.com\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "2cac6860c3f451a661d8281d25a72dd5db89f4e4",
      "tree": "7592a765da81385bff5cfe1aa62f215618be948e",
      "parents": [
        "8403ccb49f98d1583736984c92d62735d9d466b5"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat May 16 22:05:42 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat May 16 22:05:42 2009 +0000"
      },
      "message": "Drop unused/duplicated #includes and some dead code\n\nBuild-tested on 32bit x86.\n\nCorresponding to flashrom svn r521.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "5820f42ef209cfa0d4070fa9be96c9c91123a93f",
      "tree": "a505b6f813fc4f7601f77e7195e479dfddc73571",
      "parents": [
        "4059598a068f7694f2238a3811d85cbfa520a8d5"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 16 21:22:56 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 16 21:22:56 2009 +0000"
      },
      "message": "Introduce a type \"chipaddr\" to abstract the offsets within flash regions\n\nUse chipaddr instead of volatile uint8_t * because when we access chips\nin external flashers, they are not accessed via pointers at all.\n\nBenefits: This allows us to differentiate between volatile machine\nmemory accesses and flash chip accesses. It also enforces usage\nof chip_{read,write}[bwl] to access flash chips, so nobody will\nunintentionally use pointers to access chips anymore. Some unneeded\ncasts are removed as well. Grepping for chip operations and machine\nmemory operations doesn\u0027t yield any false positives anymore.\n\nCompile tested on 32 bit and 64 bit Linux.\n\nCorresponding to flashrom svn r519.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "01624f40eeec33c546150a240f194f057f6dd36e",
      "tree": "5ef84e3f82ae6d3d7643bc85faafe63eff3256a9",
      "parents": [
        "24f9fbe075107b58a2729a8f5d7da346ebe730e6"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue May 12 15:38:55 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue May 12 15:38:55 2009 +0000"
      },
      "message": "Use helper functions chip_{read,write}[bwl] to access flash chips\n\nThe semantic patch I used in r418 to make the original conversion to\naccessor functions was missing one isomorphism:\na[b] \u003c\u003d\u003e *(a+b)\n\nThe semantic patcher Coccinelle was used to create this patch. Semantic\npatch follows:\n@@\ntypedef uint8_t;\nexpression a;\nvolatile uint8_t *b;\n@@\n- b[a]\n+ *(b + a)\n@@\nexpression a;\nvolatile uint8_t *b;\n@@\n- *(b) \u003d (a);\n+ chip_writeb(a, b);\n@@\nvolatile uint8_t *b;\n@@\n- *(b)\n+ chip_readb(b)\n@@\ntype T;\nT b;\n@@\n(\n chip_readb\n|\n chip_writeb\n)\n (...,\n- (T)\n- (b)\n+ b\n )\n\nCorresponding to flashrom svn r498.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "d0fc9469fd740c2036536a3656a56c11fe0b386e",
      "tree": "a0e8389cfb6d9bbb8ec7710858dff2bbd8d678b8",
      "parents": [
        "dbfa02911fe6f32503a574f84d1627a370cb7fc2"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 11 14:01:17 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 11 14:01:17 2009 +0000"
      },
      "message": "Handle (un)locking of SST FWH chips\n\nAdd lock bit handling (printing, setting and checking) to SST FWH chips\nand abort any writes to locked sectors. Verbose mode gives you all the\ninfo. Normal mode only tells you of unlocking failed, but gives enough\ndetails to debug.\n\nAdd a comment about flash register placement to flashrom.c.\n\nThanks to Uwe for testing multiple iterations of this patch.\n\nCorresponding to flashrom svn r492.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "0472f3d82624dcb19f25746172c6d59532e2463c",
      "tree": "a396b47eb0133b6a7543d69216933227a2c26b5c",
      "parents": [
        "b88556979b65914d8b0fc85861efeaa9ad9a1d3c"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Mar 06 22:26:00 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Mar 06 22:26:00 2009 +0000"
      },
      "message": "FreeBSD definitions of (read|write)[bwl] collide with our own\n\nBefore we attempt trickery, we can simply rename the accessor functions.\n\nPatch created with the help of Coccinelle.\n\nCorresponding to flashrom svn r420 and coreboot v2 svn r3984.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Idwer Vollering \u003cidwer_v@hotmail.com\u003e\nAcked-by: Patrick Georgi \u003cpatrick@georgi-clan.de\u003e\n"
    },
    {
      "commit": "61a8bd27fb5ff27db98e96b462957994e7cca946",
      "tree": "42326fb1bdeb491df1db567eacdec088bee46c7d",
      "parents": [
        "0677dfffc67ad2d0e973f558be86e66f225b4ddc"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 05 19:24:22 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 05 19:24:22 2009 +0000"
      },
      "message": "Use helper functions to access flash chips\n\nRight now we perform direct pointer manipulation without any abstraction\nto read from and write to memory mapped flash chips. That makes it\nimpossible to drive any flasher which does not mmap the whole chip.\n\nUsing helper functions readb() and writeb() allows a driver for external\nflash programmers like Paraflasher to replace readb and writeb with\ncalls to its own chip access routines.\n\nThis patch has the additional advantage of removing lots of unnecessary\ncasts to volatile uint8_t * and now-superfluous parentheses which caused\npoor readability.\n\nI used the semantic patcher Coccinelle to create this patch. The\nsemantic patch follows:\n@@\nexpression a;\ntypedef uint8_t;\nvolatile uint8_t *b;\n@@\n- *(b) \u003d (a);\n+ writeb(a, b);\n@@\nvolatile uint8_t *b;\n@@\n- *(b)\n+ readb(b)\n@@\ntype T;\nT b;\n@@\n(\n readb\n|\n writeb\n)\n (...,\n- (T)\n- (b)\n+ b\n )\n\nIn contrast to a sed script, the semantic patch performs type checking\nbefore converting anything.\n\nTested-by: Joe Julian\n\nCorresponding to flashrom svn r418 and coreboot v2 svn r3971.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: FENG Yu Ning \u003cfengyuning1984@gmail.com\u003e\n"
    },
    {
      "commit": "b7c83233993bd1ff602c53def439f8cbff0f372a",
      "tree": "44a8bacbeef826f95eda6b387f5e0e5b9a85e89a",
      "parents": [
        "fc425e81cef5465ff6188468101be1c110f43531"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Sun Mar 16 19:44:13 2008 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Sun Mar 16 19:44:13 2008 +0000"
      },
      "message": "Check whether SST FWH chip was successfully erased on flashchip -E, too\n\nCorresponding to flashrom svn r212 and coreboot v2 svn r3153.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "a502dcea3df45326898b99dc9f5f3744a776339d",
      "tree": "9746755cc3c75130ac3a05755ebbbcaff8fd81f3",
      "parents": [
        "dca0ab18840775e1d423faff55045066344ccb87"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Oct 17 23:55:15 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Oct 17 23:55:15 2007 +0000"
      },
      "message": "Some cosmetic cleanups in the flashrom code and output\n\nCorresponding to flashrom svn r151 and coreboot v2 svn r2873.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "d22a1d4e539e9b594fc9a9cf149e239da1ba8a2f",
      "tree": "e801de4b9c81fbff8411a8c8ffcd57419b95d409",
      "parents": [
        "ca7f0e4668bf48c3e76458bfd009a575b5d78227"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Sep 09 20:21:05 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Sep 09 20:21:05 2007 +0000"
      },
      "message": "Add \u0027(C)\u0027 where it\u0027s missing (for consistency reasons)\n\nCorresponding to flashrom svn r136 and coreboot v2 svn r2768.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "d110764ccdd75bb3621d97c613eea392634696f2",
      "tree": "9687dcb7423d9eb7022308d1d974f07fc507c063",
      "parents": [
        "ffec5f3ab794167126c28e7253dbe9d7de676dc2"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Aug 29 17:52:32 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Aug 29 17:52:32 2007 +0000"
      },
      "message": "Change all flashrom license headers to use our standard format\n\nNo changes in content of the files.\n\nCorresponding to flashrom svn r131 and coreboot v2 svn r2751.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "ffec5f3ab794167126c28e7253dbe9d7de676dc2",
      "tree": "1645417f11a24ea1a316a7959246f5c4af75e789",
      "parents": [
        "fd37414dbb1996f91b07b08826e637c29c455c37"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 16:08:21 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 16:08:21 2007 +0000"
      },
      "message": "Cosmetic fixes\n\nCorresponding to flashrom svn r130 and coreboot v2 svn r2748.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "0846f89b0a2819279b6a92c183721dfb56aab75d",
      "tree": "3867a6aa46c1b5f056cd45269101f595d44b6a1d",
      "parents": [
        "51582f282ba230178aec0226ec6098460a2a25da"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 13:34:59 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 13:34:59 2007 +0000"
      },
      "message": "Drop a bunch of useless header files, merge them into flash.h\n\nCorresponding to flashrom svn r128 and coreboot v2 svn r2746.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "7ed78c88b6aa9830ff2d84dfca4bb62e4471a300",
      "tree": "ac4f669570573be9682c111c48d9a6171dcfdb10",
      "parents": [
        "5380d51c69a6fc9710396b600b42757fb9b0058e"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Thu May 24 09:26:39 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Thu May 24 09:26:39 2007 +0000"
      },
      "message": "Drop leftover includes\n\nCorresponding to flashrom svn r115 and coreboot v2 svn r2693.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "ff4f197a24d2b06162e062004874ac915ee353ac",
      "tree": "f0892c97e2f71c31bab955384efebffd8fb1621a",
      "parents": [
        "7c1402f2208f3240de9f28f6ac48a24f526c430d"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Thu May 24 08:48:10 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Thu May 24 08:48:10 2007 +0000"
      },
      "message": "Factor out register mapping code\n\nCorresponding to flashrom svn r113 and coreboot v2 svn r2691.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "7c1402f2208f3240de9f28f6ac48a24f526c430d",
      "tree": "dff2c9bdbc5f3555b7824f5c690c9571c7cf82a8",
      "parents": [
        "ce532975cbe35d88f767c6305d272c8b6f16ccf7"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Wed May 23 18:24:58 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed May 23 18:24:58 2007 +0000"
      },
      "message": "Unify mmap error messages\n\nCorresponding to flashrom svn r112 and coreboot v2 svn r2690.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "ce532975cbe35d88f767c6305d272c8b6f16ccf7",
      "tree": "f42ab029b4335a7d9e396bf85e0fc9f0f3d36aa1",
      "parents": [
        "bc1f1a01e4505bd1a2de45b7a23038a53a184c0d"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Wed May 23 17:20:56 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed May 23 17:20:56 2007 +0000"
      },
      "message": "Big cosmetic offensive on flashrom\n\n* Give decent names to virt_addr and virt_addr_2\n* add some comments\n* move virtual addresses to the end of the struct,\n  so they dont mess up the initializer.\n\nCorresponding to flashrom svn r111 and coreboot v2 svn r2689.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "7038564346f660ce043d7942398f3e8a3a2db7ad",
      "tree": "2d6573bc465284fa3fc57fe2afaa8f7b1dabd1ad",
      "parents": [
        "8e3a600123110d47076926cb8ee7c68195658f20"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Fri Apr 06 11:58:03 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Fri Apr 06 11:58:03 2007 +0000"
      },
      "message": "Trivial (cosmetic) cleanup\n\n* Only open /dev/mem once and do it early.\n* Drop extern for function prototypes.\n* Minimize ts5300 impact in probe_flash()\n\nThis cleanup will making ICH7 SPI support quite some easier.\n\nCorresponding to flashrom svn r100 and coreboot v2 svn r2585.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "0b7afe65fb83bece914bb314e2c707d6d4b7ec4c",
      "tree": "3dbee147f9d1e292cd914e216f77790c5a895345",
      "parents": [
        "3ad2518939fb496df4544c7876cf412597bb3b03"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Apr 01 19:44:21 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Apr 01 19:44:21 2007 +0000"
      },
      "message": "Coding style fixes\n\nCorresponding to flashrom svn r97 and coreboot v2 svn r2577.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "064b1f23fa507878bddca3c308e5e6034b06c998",
      "tree": "53d889789d8317e36e0f3238902e3d268fd5d05e",
      "parents": [
        "474230ad421b2e2e4ca26493292d224a22a262c2"
      ],
      "author": {
        "name": "Adam Kaufman",
        "email": "adam.kaufman@pinnacle.com",
        "time": "Tue Feb 06 19:47:50 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Tue Feb 06 19:47:50 2007 +0000"
      },
      "message": "This patch is a rework of Adam Kaufman\u0027s Solaris patch\n\n* flash.h:\n  - add a license header\n  - add system definitions\n* flash_enable.c:\n  - put io priviledge access in one single place\n  - add includes required for Solaris.\n* lbtable.c, flash_rom.c, 82802ab.c:\n  - use MEM_DEV so it works on Solaris\n* sst49lfxxxc.c, sharplhf00l04.c, sst_fwhub.c, 82802ab.c\n  - drop unneeded include to sys/io.h\n* Makefile\n  - adapt to Solaris specifics.\n\nCorresponding to flashrom svn r88 and coreboot v2 svn r2550.\n\nSigned-off-by: Adam Kaufman \u003cadam.kaufman@pinnacle.com\u003e\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Adam Kaufman \u003cadam.kaufman@pinnacle.com\u003e\n"
    },
    {
      "commit": "e60fd351825ecc4800d3626593b976e895886feb",
      "tree": "48ddb64a3cb3937db78f44c7c6732c951f197890",
      "parents": [
        "987942dcbdd3f139f2fb0ddcd9593a39bba7ff5b"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Tue Nov 07 13:48:46 2006 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Tue Nov 07 13:48:46 2006 +0000"
      },
      "message": "Instead of checking the first byte only, the whole part is checked now\n\nThis\n\nCorresponding to flashrom svn r71 and coreboot v2 svn r2494.\n\nwill detect any improper erase, closes #31\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e \n"
    },
    {
      "commit": "184a4040333ccfe624d8765864458b21bb55d1e1",
      "tree": "730168012ceeb517f9c3d14e02f21be6c75cf107",
      "parents": [
        "8a10d5a631bddff703fdcfd5b33ac76cdc02fb63"
      ],
      "author": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Sat Nov 26 21:55:36 2005 +0000"
      },
      "committer": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Sat Nov 26 21:55:36 2005 +0000"
      },
      "message": "Flashrom update from Stefan, resolve issue 21\n\nCorresponding to flashrom svn r34 and coreboot v2 svn r2111.\n"
    },
    {
      "commit": "efa28589b1c2c402e62c8d5b1e32e5e45b164c2d",
      "tree": "745e579906240cfce9f3f6bca9b1d5e63630289e",
      "parents": [
        "1b8b66000f6c8f18193cd93fff1e852faaa9715f"
      ],
      "author": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Wed Dec 08 20:10:01 2004 +0000"
      },
      "committer": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Wed Dec 08 20:10:01 2004 +0000"
      },
      "message": "Add -E option for chip erase, remove duplicated code\n\nCorresponding to flashrom svn r30 and coreboot v2 svn r1815.\n"
    },
    {
      "commit": "1b8b66000f6c8f18193cd93fff1e852faaa9715f",
      "tree": "243aa40ddfcb6c075f1c4dc329e003b341033091",
      "parents": [
        "d11f36180814c45b82142b168c95c6515278a926"
      ],
      "author": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Wed Dec 08 02:10:33 2004 +0000"
      },
      "committer": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Wed Dec 08 02:10:33 2004 +0000"
      },
      "message": "Add retry to write_byte_program_jedec(), 99% success rate\n\nCorresponding to flashrom svn r29 and coreboot v2 svn r1814.\n"
    },
    {
      "commit": "d11f36180814c45b82142b168c95c6515278a926",
      "tree": "4ba8e20b6ff46368133403fe87aa91565d9499da",
      "parents": [
        "98bea8aba5a1dad1abc2b1d191f873e1d45d5b50"
      ],
      "author": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Tue Dec 07 17:19:04 2004 +0000"
      },
      "committer": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Tue Dec 07 17:19:04 2004 +0000"
      },
      "message": "Enable LPC decoding for 1 MB more addresss, for supporting SST49LF00xA/B\n\nCorresponding to flashrom svn r28 and coreboot v2 svn r1813.\n"
    },
    {
      "commit": "98bea8aba5a1dad1abc2b1d191f873e1d45d5b50",
      "tree": "9d6bd66ce4d93b8adabc83aeae4e1c94c94ff862",
      "parents": [
        "ad8ffd2e7646b8d5a5c08cab9252f69f1156a6fe"
      ],
      "author": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Tue Dec 07 03:15:51 2004 +0000"
      },
      "committer": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Tue Dec 07 03:15:51 2004 +0000"
      },
      "message": "SST49LF00[2,3,4] should use the same driver as 49LF008\n\nCorresponding to flashrom svn r27 and coreboot v2 svn r1812.\n"
    },
    {
      "commit": "1f4d653d8cb34ad17de722eef45bc9db9bbb1aa3",
      "tree": "41b598f0e40964f48d3a66944954b452d37496da",
      "parents": [
        "9ffaf0b42308d26cfc7bf2711ea1c662c3093e0d"
      ],
      "author": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Thu Sep 30 16:37:01 2004 +0000"
      },
      "committer": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Thu Sep 30 16:37:01 2004 +0000"
      },
      "message": "Support for sst firmware hub\n\nCorresponding to flashrom svn r25 and coreboot v2 svn r1651.\n"
    }
  ]
}
