)]}'
{
  "log": [
    {
      "commit": "34d07f00b2990bec4a2ce12852acd42c08ddf217",
      "tree": "17ca5823749ac67144dc8e50c3f4c9b2f982522a",
      "parents": [
        "4139438943010c7aec6549d8b18865da5b70e978"
      ],
      "author": {
        "name": "Rosen Penev",
        "email": "rosenp@gmail.com",
        "time": "Tue Jul 02 00:14:01 2019 -0700"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Dec 14 15:29:21 2019 +0000"
      },
      "message": "flashrom: Add support for ARC platform\n\nSigned-off-by: Rosen Penev \u003crosenp@gmail.com\u003e\nChange-Id: I88cbe74b716d5fab16133fbf2ce9c35b74c25f32\nReviewed-on: https://review.coreboot.org/c/flashrom/+/35831\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "2d20d6db39547f013b66230f378ceb8e21fa36e3",
      "tree": "7816f91833c2540ec74f97fe5de4ad4dd81165e0",
      "parents": [
        "1a119498b43a8ed934bcfa0a16465aa4d6d2c74d"
      ],
      "author": {
        "name": "Miklós Márton",
        "email": "martonmiklosqdev@gmail.com",
        "time": "Tue Jan 30 20:20:15 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Nov 14 22:40:21 2019 +0000"
      },
      "message": "Add support for National Instruments USB-845x devices\n\nChange-Id: I9477b6f0193bfdf20bbe63421a7fb97b597ec549\nSigned-off-by: Miklós Márton \u003cmartonmiklosqdev@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/25683\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "9e2dc2fc818cc9c1b46924e103ce669ad154b7ab",
      "tree": "0aa6df52053c8e7cb9a04614551ce0779c589e3e",
      "parents": [
        "5374dc3461f1e74a56a4db1a8d684b29cb3a92e5"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Dec 23 22:00:47 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Oct 05 23:36:34 2019 +0000"
      },
      "message": "Makefile,meson.build: Enable/assume -Wextra\n\nEnable all -Wextra warnings but -Wunused-parameter. Nobody seems to\nmiss warnings about unused parameters and we have a lot unavoidable\noccurrences in flashrom because of common interfaces.\n\nChange-Id: Id2ece264c2d483e34019985dd3a7631c4889abe6\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/30411\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\n"
    },
    {
      "commit": "3d8868c2b46548be6885198987492d91933c9ff7",
      "tree": "2277db98f8b19982802f812b2a984a2591009e37",
      "parents": [
        "4a84ec273a487c27f91bd3df70cbdf8894af70e1"
      ],
      "author": {
        "name": "Konstantin Grudnev",
        "email": "grudnevkv@gmail.com",
        "time": "Tue Jul 23 00:48:54 2019 +0300"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Oct 04 17:41:01 2019 +0000"
      },
      "message": "Add support for M95M02-A125\n\nAutomotive 2 Mbit (256KiB) serial SPI bus EEPROM\nPREW tested successfully with use of ch341a programmer\non Linux host 5.2.0-1-MANJARO x86_64\n\nSigned-off-by: Konstantin Grudnev \u003cgrudnevkv@gmail.com\u003e\nChange-Id: Ic29cd9051c7eac4822d620c299834134f987f01b\nReviewed-on: https://review.coreboot.org/c/flashrom/+/34496\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "4a84ec273a487c27f91bd3df70cbdf8894af70e1",
      "tree": "faee09346d0a195ac778befa68a87c5f669cfe22",
      "parents": [
        "de77ad4678cb33ca0b58edf89fab8113eb304bcd"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Thu Jul 25 19:12:31 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Oct 04 14:35:20 2019 +0000"
      },
      "message": "tree: Enable -Wwrite-strings\n\nWhen compiling, this warning gives string literals the type const char[]\nto help catch accidental modification (which is undefined behaviour).\nThere currently aren\u0027t any instances of this in flashrom, so let\u0027s\nenable this warning to keep it that way. This requires adding const\nqualifiers to the declarations of several variables that work with\nstring literals.\n\nChange-Id: I62d9bc194938a0c9a0e4cdff7ced8ea2e14cc1bc\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/34577\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\n"
    },
    {
      "commit": "b221cd7048f9cde1fe789e686a0e0adaf9a688b3",
      "tree": "9937847a661fbf7b83ee7d341daf59367d4d3a6e",
      "parents": [
        "d2d3993a25c3236d397209f9c2118c3b17ce4f95"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Fri Apr 05 15:08:35 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jul 10 18:59:55 2019 +0000"
      },
      "message": "pickit2_spi: update to libusb1 and drop libusb0 dependency\n\nTESTED: read, write, verify\n\nChange-Id: Icfc5372aa1789d35ed22d68297d5e68a74d40388\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/32213\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "cd8aeba7f1cee4c2bd1f8598009fc3e6e7afd8bb",
      "tree": "4ad6bbf2cc48fa388bdbfd12f6dfe76819b9cdbc",
      "parents": [
        "cf3976e658e06464e84d04c5230c466e0ec44df7"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Fri Jun 21 15:43:19 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 23 21:40:20 2019 +0000"
      },
      "message": "Makefile: Enable -Wmissing-prototypes\n\nChange-Id: Ia2ea3dee11e505c04a9e7956417615e39d511886\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33670\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: HAOUAS Elyes \u003cehaouas@noos.fr\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "a724602fe0a573071c50a54e75dbe40ff43ecc1d",
      "tree": "2abea5c6783a7bcf8777550c594ba606d2c7de5a",
      "parents": [
        "84c6fb5fe2b58c61dc4ed6a2026d2041a5beec5d"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Jun 07 17:39:18 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jun 08 20:47:32 2019 +0000"
      },
      "message": "Makefile: Also blacklist J-Link SPI for DOS\n\nlibjaylink will probably never be available.\n\nChange-Id: Ie9222f82e16fe4c76fe7dd0f9aac7de6a862ab98\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33305\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "84c6fb5fe2b58c61dc4ed6a2026d2041a5beec5d",
      "tree": "1a91cb1f276a9a101b71740f74ff3af52e5cf238",
      "parents": [
        "129e938e4c79caccc376d05869d2b2d08a0664ec"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Jun 07 17:35:56 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jun 08 20:47:02 2019 +0000"
      },
      "message": "Makefile: Blacklist Digilent SPI (using USB) for DOS\n\nChange-Id: I9a7dd5a2afcd12dd247e1f5534db61b79d77525e\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33304\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "3578ec6a3d7187438c4093f4bb7ac2bb6d4184cb",
      "tree": "53c7ccc03fa21dcd4664e6fb1b48a9ec1661e023",
      "parents": [
        "9cecc7e25dc3fe27a801a745410825cfc2cfaac3"
      ],
      "author": {
        "name": "Marc Schink",
        "email": "flashrom-dev@marcschink.de",
        "time": "Thu Mar 17 16:23:03 2016 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jan 05 16:25:04 2019 +0000"
      },
      "message": "Add initial J-Link SPI programmer\n\nTested with SEGGER J-Link EDU, Flasher ARM and flash chip W25Q16.V.\n\nChange-Id: Ie03a054a75457ec9e1cab36ea124bb53b10e8d7e\nSigned-off-by: Marc Schink \u003cflashrom-dev@marcschink.de\u003e\nReviewed-on: https://review.coreboot.org/c/28087\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "c82900b661420989856a969cd9edf27410b758eb",
      "tree": "2f0ac2c60530769830ee6386047712fb46cdccd0",
      "parents": [
        "4acc3f3a8990cda15f04e5eabf028c5cda0d6619"
      ],
      "author": {
        "name": "Arthur Heymans",
        "email": "arthur@aheymans.xyz",
        "time": "Wed Jan 10 12:48:16 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Oct 23 21:15:05 2018 +0000"
      },
      "message": "Add support to get layout from fmap (e.g. coreboot rom)\n\nFlashmap, or simply fmap, is a binary data format for describing\nregion offsets, sizes, and certain attributes and is widely used by\ncoreboot. This patch adds support for the fmap data format version 1.1\nand adds --fmap and --fmap-file arguments.\n\nUsing --fmap will make flashrom to search the ROM content for fmap\ndata. Using --fmap-file will make flashrom search a supplied file\nfor fmap data.\n\nAn example of how to update the COREBOOT region of a ROM:\nflashrom -p programmer --fmap -w coreboot.rom -i COREBOOT\nflashrom -p programmer --fmap-file coreboot.rom -w coreboot.rom -i COREBOOT\n\nThe fmap functions are mostly copied from cbfstool.\n\nCurrently it is made mutually exclusive with other layout options until\nwe are more clever about this input.\n\nChange-Id: I0e7fad38ed79a84d41358e1f175c36d255786c12\nSigned-off-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nSigned-off-by: David Hendricks \u003cdhendricks@fb.com\u003e\nReviewed-on: https://review.coreboot.org/23203\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nTested-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-by: Werner Zeh \u003cwerner.zeh@siemens.com\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "1d507a07a919f49e74aa05803bf37919ac95adb1",
      "tree": "24d460c41877990f4a6724c0e8b4513e2d679daa",
      "parents": [
        "ccfa8f9d9a68b1e4238d2dbbc4e9c8bcf9bae8a6"
      ],
      "author": {
        "name": "Daniel Thompson",
        "email": "daniel.thompson@linaro.org",
        "time": "Thu Jul 12 11:02:28 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Aug 30 09:53:58 2018 +0000"
      },
      "message": "usbdev: Extract libusb1 device discovery into a separate file\n\nCurrently there is a TODO-like comment in the dediprog driver: \"Might be\nuseful for other USB devices as well\". Act on this comment by collecting\nall the device discovery code for libusb1 devices into a separate file.\n\nChange-Id: Idfcc79371241c2c1dea97faf5e532aa971546a79\nSigned-off-by: Daniel Thompson \u003cdaniel.thompson@linaro.org\u003e\nReviewed-on: https://review.coreboot.org/27443\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "45e91a278cd31019ad6ed5a465661001fbaee065",
      "tree": "c8cf0b31e69ff5efae8c283369fc67aeab4a6e5c",
      "parents": [
        "455a6fc86e833d1165c68d9dbaef8b0188875bc5"
      ],
      "author": {
        "name": "Daniel Thompson",
        "email": "daniel.thompson@linaro.org",
        "time": "Mon Jun 04 13:46:29 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Aug 17 21:17:13 2018 +0000"
      },
      "message": "programmer: Add Developerbox/CP2104 bit bang driver\n\nThe 96Boards Developerbox (a.k.a. Synquacer E-series) provides a CP2102\ndebug UART with its GPIO pins hooked up to the SPI NOR FLASH. The\ncircuit is intended to provide emergency recovery functions without\nrequiring any additional tools (such as a JTAG or SPI programmer). This\nwas expected to be very slow (and it is) but CP2102 is much cheaper than\na full dual channel USB comms chip.\n\nRead performance is roughly on par with a 2400 baud modem (between 60\nand 70 minutes per megabyte if you prefer) and write performance is 50%\nslower still. The full recovery process, with backup and verification of\n4MB data written takes between 14 and 15 hours. Thus it is only really\npractical as an emergency recovery tool, firmware developers will need\nto use an alternative programmer.\n\nChange-Id: I2547a96c1a2259ad0d52cd4b6ef42261b37cccf3\nSigned-off-by: Daniel Thompson \u003cdaniel.thompson@linaro.org\u003e\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/26948\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Paul Menzel \u003cpaulepanter@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "b2154e8a1d456875122cbbff2a18e5e1c55ef4d2",
      "tree": "ee5cf1e29adf35b89d6078ba117638b4009cfd89",
      "parents": [
        "ac01baa073b0f154ffd3ffdc7c9e75987f8b525c"
      ],
      "author": {
        "name": "Lubomir Rintel",
        "email": "lkundrak@v3.sk",
        "time": "Sun Jan 14 17:35:33 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Jun 26 10:02:38 2018 +0000"
      },
      "message": "digilent_spi: add a driver for the iCEblink40 development board\n\nThis is driver that supports the Lattice iCE40 evaluation kits. On the\nboard is a SPI flash memory chip labeled ST 25P10VP.\n\nTested to work read/write/erase with \"-p digilent_spi -c M25P10\" or\nwith a patch that resets the part beforehands (in which case it gets\ndetected as a M25P10-A and is way faster due to paged writes).\n\nChange-Id: I7ffcd9a2db4395816f0e8b6ce6c3b0d8e930c9e6\nSigned-off-by: Lubomir Rintel \u003clkundrak@v3.sk\u003e\nReviewed-on: https://review.coreboot.org/23338\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "a75a2edc05a006c10caa24ccbee12c2b3ddaee66",
      "tree": "9c1019723c739f5a3e1019bbcb6be88f9d2ff71c",
      "parents": [
        "0b59b0dafc219ba73ee2af5404ce626575d74c6f"
      ],
      "author": {
        "name": "Miklós Márton",
        "email": "martonmiklosqdev@gmail.com",
        "time": "Tue Jan 30 20:25:00 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jun 23 19:41:49 2018 +0000"
      },
      "message": "Fix mingw detection on Windows 7 (NT-6.1)\n\nHopefully also for other non-XP Windows build environments.\n\nChange-Id: I7f856dc4847c4ca9197b1935b7a9b9071b46c70a\nSigned-off-by: Miklós Márton \u003cmartonmiklosqdev@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/23865\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "f9a30554803a670f9b95a7794be00f03929d6ecd",
      "tree": "46da1dafce0c76ab5730540540aaf4093463f551",
      "parents": [
        "291764a70e6d8b212680e311bfb0825abf2b9a2f"
      ],
      "author": {
        "name": "David Hendricks",
        "email": "dhendricks@fb.com",
        "time": "Sat May 23 20:30:30 2015 -0700"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Thu May 17 16:49:16 2018 +0000"
      },
      "message": "linux_mtd: Import driver from ChromiumOS\n\nThis imports a series of patches from chromiumos for MTD support.\nThe patches are squashed to ease review and original Change-Ids have\nbeen removed to avoid confusing Gerrit.\n\nThere are a few changes to integrate the code:\n- Conflict resolution\n- Makefile changes\n- Remove file library usage from linux_mtd. We may revisit this and use\n  it for other Linux interfaces later on.\n- Switch to using file stream functions for reads and writes.\n\nThis consolidated patch is\nSigned-off-by: David Hendricks \u003cdhendricks@fb.com\u003e\n\nThe first commit\u0027s message is:\nInitial MTD support\n\nThis adds MTD support to flashrom so that we can read, erase, and\nwrite content on a NOR flash chip via MTD.\n\nBUG\u003dchrome-os-partner:40208\nBRANCH\u003dnone\nTEST\u003dread, write, and erase works on Oak\n\nSigned-off-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nReviewed-on: https://chromium-review.googlesource.com/272983\nReviewed-by: Shawn N \u003cshawnn@chromium.org\u003e\n\nThis is the 2nd commit message:\n\nlinux_mtd: Fix compilation errors\n\nThis fixes compilation errors from the initial import patch.\n\nSigned-off-by: David Hendricks \u003cdhendricks@fb.com\u003e\n\nThis is the 3rd commit message:\n\nlinux_mtd: Suppress message if NOR device not found\n\nThis just suppresses a message that might cause confusion for\nunsuspecting users.\n\nBUG\u003dnone\nBRANCH\u003dnone\nTEST\u003dran on veyron_mickey, \"NOR type device not found\" message\nno longer appears under normal circumstances.\nSigned-off-by: David Hendricks \u003cdhendrix@chromium.org\u003e\n\nReviewed-on: https://chromium-review.googlesource.com/302145\nCommit-Ready: David Hendricks \u003cdhendrix@chromium.org\u003e\nTested-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nReviewed-by: Shawn N \u003cshawnn@chromium.org\u003e\n\nThis is the 4th commit message:\n\nlinux_mtd: Support for NO_ERASE type devices\n\nSome mtd devices have the MTD_NO_ERASE flag set. This means\nthese devices don\u0027t require an erase to write and might not have\nimplemented an erase function. We should be conservative and skip\nerasing altogether, falling back to performing writes over the whole\nflash.\n\nBUG\u003db:35104688\nTESTED\u003dZaius flash is now written correctly for the 0xff regions.\n\nSigned-off-by: William A. Kennington III \u003cwak@google.com\u003e\nReviewed-on: https://chromium-review.googlesource.com/472128\nCommit-Ready: William Kennington \u003cwak@google.com\u003e\nTested-by: William Kennington \u003cwak@google.com\u003e\nReviewed-by: Brian Norris \u003cbriannorris@chromium.org\u003e\n\nThis is the 5th commit message:\n\nlinux_mtd: do reads in eraseblock-sized chunks\n\nIt\u0027s probably not the best idea to try to do an 8MB read in one syscall.\nTheoretically, this should work; but MTD just relies on the SPI driver\nto deliver the whole read in one transfer, and many SPI drivers haven\u0027t\nbeen tested well with large transfer sizes.\n\nI\u0027d consider this a workaround, but it\u0027s still good to have IMO.\n\nBUG\u003dchrome-os-partner:53215\nTEST\u003dboot kevin; `flashrom --read ...`\nTEST\u003dcheck for performance regression on oak\nBRANCH\u003dnone\n\nSigned-off-by: Brian Norris \u003cbriannorris@chromium.org\u003e\nReviewed-on: https://chromium-review.googlesource.com/344006\nReviewed-by: David Hendricks \u003cdhendrix@chromium.org\u003e\n\nThis is the 6th commit message:\n\nlinux_mtd: make read/write loop chunks consistent, and documented\n\nTheoretically, there should be no maximum size for the read() and\nwrite() syscalls on an MTD (well, except for the size of the entire\ndevice). But practical concerns (i.e., bugs) have meant we don\u0027t quite\ndo this.\n\nFor reads:\nBug https://b/35573113 shows that some SPI-based MTD drivers don\u0027t yet\nhandle very large transactions. So we artificially limit this to\nblock-sized chunks.\n\nFor writes:\nIt\u0027s not clear there is a hard limit. Some drivers will already split\nlarge writes into smaller chunks automatically. Others don\u0027t do any\nsplitting. At any rate, using *small* chunks can actually be a problem\nfor some devices (b:35104688), as they get worse performance (doing an\ninternal read/modify/write). This could be fixed in other ways by\nadvertizing their true \"write chunk size\" to user space somehow, but\nthis isn\u0027t so easy.\n\nAs a simpler fix, we can just increase the loop increment to match the\nread loop. Per David, the original implementation (looping over page\nchunks) was just being paranoid.\n\nSo this patch:\n * clarifies comments in linux_mtd_read(), to note that the chunking is\n   somewhat of a hack that ideally can be fixed (with bug reference)\n * simplifies the linux_mtd_write() looping to match the structure in\n   linux_mtd_read(), including dropping several unnecessary seeks, and\n   correcting the error messages (they referred to \"reads\" and had the\n   wrong parameters)\n * change linux_mtd_write() to align its chunks to eraseblocks, not page\n   sizes\n\nNote that the \"-\u003epage_size\" parameter is still somewhat ill-defined, and\nonly set by the upper layers for \"opaque\" flash. And it\u0027s not actually\nused in this driver now. If we could figure out what we really want to\nuse it for, then we could try to set it appropriately.\n\nBRANCH\u003dnone\nBUG\u003db:35104688\nTEST\u003dvarious flashrom tests on Kevin\nTEST\u003dReading and writing to flash works on our zaius machines over mtd\n\nChange-Id: I3d6bb282863a5cf69909e28a1fc752b35f1b9599\nSigned-off-by: Brian Norris \u003cbriannorris@chromium.org\u003e\nReviewed-on: https://chromium-review.googlesource.com/505409\nReviewed-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nReviewed-by: Martin Roth \u003cmartinroth@chromium.org\u003e\nReviewed-by: William Kennington \u003cwak@google.com\u003e\nReviewed-on: https://review.coreboot.org/25706\nTested-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Philipp Deppenwiese \u003czaolin.daisuki@gmail.com\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": "80ae14e5105bb938679193906d1ee43b7a51c094",
      "tree": "629130fad3e6b0b731429bb90dc8e285a91ea8ab",
      "parents": [
        "995f755ff569cbf6ed8d4eec5920b41628aa8ac9"
      ],
      "author": {
        "name": "Paul Kocialkowski",
        "email": "contact@paulk.fr",
        "time": "Mon Jan 15 01:07:46 2018 +0300"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 11 16:53:34 2018 +0000"
      },
      "message": "Add support for the ENE Embedded Debug Interface EDI and KB9012 EC\n\nThe ENE Embedded Debug Interface (EDI) is a SPI-based interface for\naccessing the memory of ENE embedded controllers.\n\nThe ENE KB9012 EC is an embedded controller found on various laptops\nsuch as the Lenovo G505s. It features a 8051 microcontroller and\nhas 128 KiB of internal storage for program data.\n\nEDI can be accessed on the KB9012 through pins 59-62 (CS-CLK-MOSI-MISO)\nwhen flash direct access is not in use. Some firmwares disable EDI at runtime\nso it might be necessary to ground pin 42 to reset the 8051 microcontroller\nbefore accessing the KB9012 via EDI.\n\nThe example of flashing KB9012 at Lenovo G505S laptop could be found here:\nhttp://dangerousprototypes.com/docs/Flashing_KB9012_with_Bus_Pirate\n\nChange-Id: Ib8b2eb2feeef5c337d725d15ebf994a299897854\nSigned-off-by: Mike Banon \u003cmikebdp2@gmail.com\u003e\nSigned-off-by: Paul Kocialkowski \u003ccontact@paulk.fr\u003e\nReviewed-on: https://review.coreboot.org/23259\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "7e3c81ae7122120fe10d43fcba61a513e2461de9",
      "tree": "f505342cd2879b9cc77c2cbf66dda0231869ee9c",
      "parents": [
        "0ee2dc06839d2f4f3197dd0ef51202e51e945bea"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Oct 14 18:56:50 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Dec 28 10:48:28 2017 +0000"
      },
      "message": "spi25: Merge remainder of spi4ba in\n\nChange-Id: If581e24347e45cbb27002ea99ffd70e334c110cf\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/22388\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "c8801734727e1e510cbd99e305007b73f9f57e93",
      "tree": "84c6914f12ad1f4e1b00ae5bc76d159951233af0",
      "parents": [
        "095522cceca4aede4b4a5e8cd74cbbd8f63e1116"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Dec 01 18:19:43 2017 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Dec 19 12:37:06 2017 +0000"
      },
      "message": "internal: Only build on x86 and mipsel\n\ninternal_init() explicitly fails on everything but x86 and mipsel.\nInstead, we can just never build the internal programmer on other\narchitectures and drop a lot of #if boilerplate.\n\nChange-Id: I672ddab0415df3baa49ff39a1c9db1b41d8143a4\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/22671\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-by: Patrick Rudolph \u003csiro@das-labor.org\u003e\n"
    },
    {
      "commit": "095522cceca4aede4b4a5e8cd74cbbd8f63e1116",
      "tree": "dacb6975b940eec5772060afe2af35bfc9adc090",
      "parents": [
        "19eb0792b8439198d7ef0077b8f79f275fa39a9d"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Dec 01 18:33:02 2017 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Dec 19 12:36:38 2017 +0000"
      },
      "message": "Move endianness definitions and provide it inside Makefile\n\nAdd an `endiantest.c` similar to `archtest.c` to provide the endianness\ninside the Makefile. The __FLASHROM_(LITTLE|BIG)_ENDIAN__ definitions\nhad to move from `hwaccess.h` into `platform.h`, therefor. This will\nbe used to decide whether to build the internal programmer in a follow-\nup.\n\nChange-Id: I55dcf5a88da48f885cda9ad89ab87395d895a891\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/22670\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\n"
    },
    {
      "commit": "e1a960e0a520263b380d898459b6909a8d7f59c5",
      "tree": "afbbff719b0b4dec023f26d8b074ed90be1c6c3a",
      "parents": [
        "4343e7d44006dcda2ea76b0e7625837832141539"
      ],
      "author": {
        "name": "David Hendricks",
        "email": "dhendricks@fb.com",
        "time": "Thu Oct 19 14:54:44 2017 -0700"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Sat Oct 21 02:15:58 2017 +0000"
      },
      "message": "Use bzip2 when making a tarball\n\nTarballs on download.flashrom.org are generally packaged using bzip2, so\nwe may as well be internally consistent.\n\nChange-Id: Ib9fb1ea6d5994cd0285ce8db9675640fae992773\nSigned-off-by: David Hendricks \u003cdhendricks@fb.com\u003e\nReviewed-on: https://review.coreboot.org/22116\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "615ba1849c1ad67503cf000c9fea311962175525",
      "tree": "94c2b9ad0d8f1e486c2b5ac41acd0b65ebd7225a",
      "parents": [
        "beaefe0f96758297d013bd48b598225410b44e34"
      ],
      "author": {
        "name": "Urja Rannikko",
        "email": "urjaman@gmail.com",
        "time": "Thu Jun 15 15:28:27 2017 +0300"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Oct 19 15:14:30 2017 +0000"
      },
      "message": "serial: Support custom baud rates on linux\n\nThe function to do this is contained in custom_baud.c because\nof broken include stuff.\n\nChange-Id: I2a20f9182cb85e7bce5d6654a2caf20e6202b195\nSigned-off-by: Urja Rannikko \u003curjaman@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/20224\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "50a5660c9c11c77c794783cd9a3343bc3ff07b6e",
      "tree": "7095a74f39788084a14c3657bc3b868f923f5340",
      "parents": [
        "f4d7772cee806d68a06db5394ab85a6e76904e88"
      ],
      "author": {
        "name": "Boris Baykov",
        "email": "dev@borisbaykov.com",
        "time": "Sat Jun 11 18:28:59 2016 +0200"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Sat Oct 14 00:46:41 2017 +0000"
      },
      "message": "4BA: Basic support for 4-bytes addressing mode extensions\n\nIf flash chip is switched to 4-bytes addressing mode then all\nread/erase/program instructions will be switched from 3-bytes mode\nto 4-bytes mode. Then well known instructions like 03h (Read),\n02h (Program) and 20h,52h,D8h (Erase) will become one byte longer\nand accept 4-bytes address instead of 3-bytes.\n\nThis patch provides support for well known instructions in 4-bytes\naddressing mode. Also here is the code to enter 4-bytes addressing\nmode by execute the instruction B7h (Enter 4-bytes mode).\n\nPatched files\n-------------\nchipdrivers.h\n+ added functions declarations for spi4ba.c\n\nflash.h\n+ feature definitions added\n\nMakefile\n+ added spi4ba.c\n\nAdded files\n-----------\nspi4ba.h\n+ definitions for 4-bytes addressing JEDEC commands\n+ functions declarations from spi4ba.c (same as in chipdrivers.h, just to see)\n\nspi4ba.c\n+ functions for enter 4-bytes addressing mode\n+ functions for read/write/erase in 4-bytes addressing mode\n\nChange-Id: Ie72e2a89cd75fb4d09f48e81c4c1d927c317b7a7\nSigned-off-by: Boris Baykov \u003cdev@borisbaykov.com\u003e, Russia, Jan 2014\n[clg: ported from\n      https://www.flashrom.org/pipermail/flashrom/2015-January/013199.html ]\nSigned-off-by: Cédric Le Goater \u003cclg@kaod.org\u003e\nReviewed-on: https://review.coreboot.org/20513\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "f4d7772cee806d68a06db5394ab85a6e76904e88",
      "tree": "355098516d28d14ac5f03bd7b4eff3848a9c4ac9",
      "parents": [
        "63bf222cbaa59b7552b9a268a878350b0919117d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Fri Oct 06 02:02:46 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Oct 06 08:36:00 2017 +0000"
      },
      "message": "fixup! Convert flashrom to git\n\nwithout the upcache there is no \"offline\" version (yet).\n\nChange-Id: Iac3bf11fbd55cfa034ef8af04ef90fe57182ee2b\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21836\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "fa25bc3cd433e2cdbf8d0922a29be71815a072cd",
      "tree": "c15a00533e57c120f7700284f991af4a9f51aa0f",
      "parents": [
        "5bf6b855d4083070390b5c0eb03bca678090d75d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Wed Oct 04 03:47:26 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Oct 05 10:43:05 2017 +0000"
      },
      "message": "fixup! Convert flashrom to git\n\n - exploit Make\u0027s -include statement to simplify execution flow\n - expand and refine respective comment to better describe and\n   match the new behavior\n\nChange-Id: I0c66f2508cc754cf9219211a06d6f305a32c422d\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21830\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "5bf6b855d4083070390b5c0eb03bca678090d75d",
      "tree": "ee7e58ceb379e20056a6a393f97b749ab29acee0",
      "parents": [
        "8eb1df69ab22829d61366e7d8e4eca6d7ed13657"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Wed Oct 04 03:46:51 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Oct 05 10:41:23 2017 +0000"
      },
      "message": "fixup! Convert flashrom to git\n\nRename getrevision\u0027s local_revision function to just revision.\nAll revisions are local in git and we certainly wont go back to\na non-distributed VCS :)\n\nChange-Id: I6689ac24077b3981b471ed69de7cc3ef79d435b1\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21829\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "9620912607d5e99650624f74545268bba0f310ca",
      "tree": "d5fdf853e610a0422e5c64284d68caf397a653a5",
      "parents": [
        "2dc5d294004f5d3ec37cc7bfd5d49ce1a41bf215"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Sun Oct 01 16:41:35 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Oct 05 10:39:25 2017 +0000"
      },
      "message": "fixup! Convert flashrom to git\n\n - make version string generation independent of the actual VCS\n   used by not generating \"unknown\" in the makefile but letting\n   getrevision do that\n - make hook installation independent of version string generation\n   since they have nothing to do with each other and there are no\n   synergies anymore\n\nChange-Id: Iedc9df4c033a70447b8b1b65c83764c769b02c3f\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21827\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "2dc5d294004f5d3ec37cc7bfd5d49ce1a41bf215",
      "tree": "e9a4ac8b9e11e5644f7f7f19788f6c1f33912949",
      "parents": [
        "e4136854f18adcf3e753ebe6a2cc2cc9b9e43201"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Wed Oct 04 02:18:33 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Oct 05 10:37:35 2017 +0000"
      },
      "message": "fixup! Convert flashrom to git\n\nUse a more generic file name for the exported VCS data.\n\nChange-Id: Ie57b20dc014ba44ded5783bdb432eb7d0e0e28ad\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21826\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "e4136854f18adcf3e753ebe6a2cc2cc9b9e43201",
      "tree": "6c7f39e023d2c4b636f5a4e906a2f3cbb7a4beac",
      "parents": [
        "60f7a221e080e1847b56bd8aa03451c2459efc1c"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Sun Oct 01 15:57:25 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Oct 05 10:37:15 2017 +0000"
      },
      "message": "fixup! Convert flashrom to git\n\nFix broken/one-off loop to restore file dates.\nExplain what the sed program actually does because it is non-trivial.\n\nChange-Id: Iff4021be49a9fab208b619c555b9f9e81f671ab8\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21825\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "60f7a221e080e1847b56bd8aa03451c2459efc1c",
      "tree": "30e22a28114d451775b7f5f81406e3d6a14cb576",
      "parents": [
        "f0cbbb05c909340607a5e7a14e80523752b6434c"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Sun Oct 01 15:45:06 2017 +0200"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Thu Oct 05 04:10:11 2017 +0000"
      },
      "message": "fixup! Convert flashrom to git\n\nFix broken export\n\nChange-Id: I9d0fe93291de81b4d303589fd01565f429a61e9a\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21824\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "f0cbbb05c909340607a5e7a14e80523752b6434c",
      "tree": "bd0f695ebf6db71d3fb111c5f65cfa681ce9c065",
      "parents": [
        "79d838d31696542105a4185758f23db13d8ea045"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Sun Oct 01 00:49:05 2017 +0200"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@gmx.at",
        "time": "Wed Oct 04 01:21:12 2017 +0000"
      },
      "message": "Add modification date to manpage header instead of the section\n\n\"System Manager\u0027s Manual\" or similar is way less interesting.\n\nChange-Id: I45c5d6a2316c51a57a49fd010682dc3f0f915382\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@gmx.at\u003e\nReviewed-on: https://review.coreboot.org/21822\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "026c7416515985f47fe26a0478a37c0a1c2466c5",
      "tree": "3b6367dd6c0d69fa6fb71d45d9c9a1616297d78d",
      "parents": [
        "7634708c98a6fa439443e0791dd62563f4baf746"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jun 20 20:47:54 2017 -0700"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Fri Jun 23 06:09:38 2017 +0000"
      },
      "message": "Remove djgpp-dos target\n\nIt is not different to other x-compilations.\n\nChange-Id: Ia582b4cf622e670f1af439095ff58d62554232aa\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nReviewed-on: https://review.coreboot.org/20293\nReviewed-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "7634708c98a6fa439443e0791dd62563f4baf746",
      "tree": "ab92caf9995bf2819ef31a8b4245a13c386027f9",
      "parents": [
        "8624e8cfa88ebd17ecf3bfd55c8dc1a799f47573"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Nov 27 17:45:49 2016 +0100"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Fri Jun 23 06:08:36 2017 +0000"
      },
      "message": "Convert flashrom to git\n\n - Drop support for Subversion in the getrevision script and Makefile.\n - Add .gitignore and .gitattributes file (the latter to limit exports).\n - Restore modification dates of the exported files from the SCM.\n - Stop exporting SCM log dumps to CHANGELOG. This makes no sense.\n - Do not export the pre-\"compiled\" manpage. It can be generated like\n   anything else from the code dump when we export the respective\n   variable.\n   The latter is added with this change.\n - Add some initial client-side git hooks\n   * When committing check for obvious stuff you never want anyway:\n     - white space errors\n   * When pushing to the upstream repository check mandatory rules:\n      - existing signoffs and acks in all new commits\n      - no deletions or creation of branches\n      - do not rewrite history of the precious branches, even if forced\n\nNOTE: This patch is adapted from Stefan Tauner\u0027s original commit:\nhttps://mail.coreboot.org/pipermail/flashrom/2016-November/014877.html\n\nThere are a few major differences:\n- This uses coreboot\u0027s commit-msg hook which includes support for\n  generating and appending Change-Id.\n- djgpp-dos target removal is moved to a follow-up patch.\n- Version string changes are moved to a follow-up patch.\n\nChange-Id: I64eef21982cac0a0a7419bcd2c8a936672ae9cb2\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nSigned-off-by: David Hendricks \u003cdhendricks@fb.com\u003e\nReviewed-on: https://review.coreboot.org/19206\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cf4bug@amsat.org\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "8624e8cfa88ebd17ecf3bfd55c8dc1a799f47573",
      "tree": "f61a16e60f193b5e3f13a377a81d1308b1b4f0ad",
      "parents": [
        "2d62572d1dd0c37eb626fd8faa17b26690f20b15"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Nov 05 21:46:33 2012 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jun 22 11:14:15 2017 +0000"
      },
      "message": "udelay: Use clock_gettime() if available and precise\n\nInstead of calibrating our busy loop against a coarse clock, check if\na precise clock is available and loop against that. The former is unre-\nliable by definition on any modern system that may dynamically reclock\nthe processor.\n\nv2: Apparently _POSIX_MONOTONIC_CLOCK being defined only means that\n    the library knows about CLOCK_MONOTONIC. So check for its support\n    at runtime and fall back to CLOCK_REALTIME if it\u0027s missing.\n\nTEST\u003dManually added a 10s loop and compared to real time. Run\n     on Linux RPi3, Linux x86 and my original use case Linux in\n     VirtualBox (Linux host).\n\nChange-Id: I85ad359823875237ada9cd027af3017d62e9a235\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/19391\nReviewed-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cf4bug@amsat.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "305f417ea565a18c1e87dcf5d97307369b721c6c",
      "tree": "75fd4a1087415f99a64d0a5f26eaddcb54969883",
      "parents": [
        "ad18631b59d814b38bb6757df93fac17937a6bc9"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Fri Jun 14 11:55:26 2013 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jun 14 11:43:32 2017 +0200"
      },
      "message": "Add option to read ROM layout from IFD\n\nAdd an option --ifd to read the ROM layout from an Intel Firmware\nDescriptor (IFD). Works the same as the -l option, if given, -i\nspecifies the images to update.\n\nv2: o Rebased on libflashrom, use libflashrom interface.\n    o Use functions from ich_descriptors.c.\n\nv3: o Move ich_descriptors.o to LIB_OBJS, thus build it independent\n      of arch and programmers.\n    o Bail out if we aren\u0027t compiled for little endian.\n    o Update flashrom.8.tmpl.\n\nv4: o Incorporated David\u0027s comments.\n    o Removed single-character `-d` option.\n\nv5: Changed region names to match the output of `ifdtool --layout ...`\n\nChange-Id: Ifafff2bf6d5c5e62283416b3269723f81fdc0fa3\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/17953\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\n"
    },
    {
      "commit": "1878110848f36c53667c9855f0a413c43e64597f",
      "tree": "66bacd63991be932b3d031dfe280576449b3280e",
      "parents": [
        "a9fc4f4ebf335f3f20a47a48f2b9c2b00a4de696"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Mon Dec 10 13:34:12 2012 +0000"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Sat Jun 03 20:15:56 2017 +0200"
      },
      "message": "Adapt CLI to use new libflashrom interface\u0027 print callback\n\nThis renames CLI\u0027s print() to flashrom_print_cb() and registers it\nthrough the new libflashrom interface.\n\nv2: Add libflashrom.o to LIB_OBJS now that everything can be linked\n    together.\n\nChange-Id: Idf19978eb8e340d258199193d2978f37409e9983\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/17948\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\n"
    },
    {
      "commit": "454f61338213f73ca74fda54c0bf86afb01947de",
      "tree": "5c981a1a181c130467d3c37b99cdeaf686ff49c8",
      "parents": [
        "7af0e79b44bdc86497a992a90855f284e74d73f1"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Mon Dec 10 13:34:10 2012 +0000"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Sat Jun 03 20:13:06 2017 +0200"
      },
      "message": "Add a convenient libflashrom interface\n\nThis adds a minimal libflashrom interface based on the draft in the\nwiki. While the glue code in libflashrom.c is build on top of the\nexisting code instead on overhauling it, the interface in libflashrom.h\nis supposed to be stable. So we can keep the interface and adapt\ninternals later if favoured, without breaking clients.\n\nA new make target, libinstall, is also added. It installs libflashrom.a\nand libflashrom.h in lib/ and include/ dirs respectively.\n\nHooking this into the build would break linking of the CLI and is post-\nponed until that got fixed.\n\nv2: Rebase and fixes by Anton Kochkov.\n\nv3: o fl_image_*() rewritten with layout support (touch only included regions).\n    o Moved read/erase/write/verify operations to flashrom.c.\n    o Added layout pointer and flags to the flash context.\n\nv4: Removed libflashrom.o from LIB_OBJS until CLI is adapted.\n\nv5: o Incorporated David\u0027s comments.\n    o Added `fl_flashprog_t` as dummy parameter to hide the fact that\n      we have global state all around, and for future-proofness ofc.\n\nv6: o Change namespace prefix to flashrom_.\n    o Remove typedefs.\n\nChange-Id: I00f169990830aa17b7dfae5eb74010d40c476181\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/17946\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\n"
    },
    {
      "commit": "40ba6fd0486b9845a951dbe042b1121687353c1a",
      "tree": "68ade5b915ea8d2c709b943983a9e7f84bd822ee",
      "parents": [
        "c1099d8f7ecdc18278a91ed545dc5e224a29ec54"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 13 17:46:08 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 13 17:46:08 2016 +0000"
      },
      "message": "Increase flashrom version number to 0.9.9\n\nCorresponding to flashrom svn r1954.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\n"
    },
    {
      "commit": "0be072cbe4d05b1e69d1c02291f3a2a544beb2af",
      "tree": "3c4270b0bdf66cd15fcc6b2525c0ff9aa4a803ab",
      "parents": [
        "fc3ecc2a812235fce1a4cdc7dc3338507150e8c7"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 13 15:16:30 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 13 15:16:30 2016 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 25\n\nTested mainboards:\nOK:\n - ASRock Fatal1ty 970 Performance and P4i65G\n   Reported by anonymous email message ID:\n   932677687262b1300eaf14260999d9262c31@guerrillamail.com\n   The latter actually had a tested board enable already.\n\nFlash chips:\n - Eon EN25Q128 to PREW (+PREW)\n   Reported by Adrian Graham\n - GigaDevice GD25VQ41B to PREW (+PREW)\n   Reported by David Hendricks\n - Winbond W39V040FB to PREW (+EW)\n   Reported by fjed on IRC\n\nMiscellaneous:\n - Change PCI IDs of \"MS-6577 (Xenon)\" board enable.\n   The previous IDs contained the on-board display adapter which is\n   disabled when a dedicated graphics card is installed.\n - Add a note to the README how to overcome the clang warning if only a\n   single programmer is enabled.\n - Fix some typo and manpage problems found by lintian\n - r1920 introduced some explicit calls to pkg-config instead of $(PKG_CONFIG).\n   This patch corrects that.\n - Make MS-7094 (K8T Neo2-F V2.0) board enable less contestable.\n   Previous PCI IDs were board-specific but ot the other of devices\n   that could be disabled by the firmware or that vary among\n   hardware revions. There are no good alternatives available.\n   However, since we always have a DMI decoder available now, we can\n   use non-board-specific devices without taking risks. Thanks to\n   Uwe Hermann for reporting and testing.\n - Some other small changes to clean up whitespace and fix some warnings\n   from Debian\u0027s lintian.\n\nCorresponding to flashrom svn r1951.\n\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": "fc3ecc2a812235fce1a4cdc7dc3338507150e8c7",
      "tree": "e9c299b36ffcc06cc3da2fbcf9b6153fc7915df1",
      "parents": [
        "57cdd6ba66219f568917e58c3dc585c7d725ce45"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 13 12:57:03 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 13 12:57:03 2016 +0000"
      },
      "message": "Fix compilation on SunOS\n\nThis came up when I was testing if building on SunOS still works\non the buildbot\u0027s instance of OmniOS r151014 which is based on illumos.\n\nThe fix is\n - to link against libnsl\n - a small C type fix in ich_descriptor_tool\n\nCorresponding to flashrom svn r1950.\n\nSigned-off-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": "601f4cd02d1368e6167c9d08dc264ab0a2148cc3",
      "tree": "ce883ad6470b87eabde61b41176613059e6676f2",
      "parents": [
        "fdb1659107b7a2de95dff0ec9af581ceff0f91e9"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Feb 28 22:04:51 2016 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Feb 28 22:04:51 2016 +0000"
      },
      "message": "Makefile: Fix driver blacklist dependencies\n\nAllow mstarddc_spi and pony_spi on Android.\nAllow mstarddc_spi and pony_spi on architectures with unsupported raw\naccess.\n\nCorresponding to flashrom svn r1946.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "f35033739decf208af0c32d9ef376290a6a71f59",
      "tree": "3e4ec3402a43e8b4eb272b4deb1740bf18ae5ae5",
      "parents": [
        "8d0d53fdd017897b698584326229ebd287708c2f"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Feb 26 23:51:21 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Feb 26 23:51:21 2016 +0000"
      },
      "message": "makefile: allow to disable all default-yes config variables with CONFIG_NOTHING\u003dyes\n\nAll credit for this should be given to Patrick Georgi (see r1869).\n\nCorresponding to flashrom svn r1944.\n\nSigned-off-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": "8d0d53fdd017897b698584326229ebd287708c2f",
      "tree": "c2072492ba8d691ef6cf5aca53da47478ac7e478",
      "parents": [
        "fdec7475bf9e321a3729d5ba2100e30e110870ea"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Feb 25 20:10:26 2016 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Feb 25 20:10:26 2016 +0000"
      },
      "message": "Partial architecture support for alpha hppa m68k sh s390\n\nOnly hardware not needing raw access (PCI, memory, port I/O) is supported.\n\nCorresponding to flashrom svn r1943.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "2a0feae6997c987899d7fb165a4d3d2175b2c8f5",
      "tree": "67230fe076881ffb6493f5150bfded14b044cb53",
      "parents": [
        "e016826a077abafc9ebe669c5fb8a809b6e6c2ea"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 21 18:17:14 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 21 18:17:14 2016 +0000"
      },
      "message": "Increase version number to 0.9.9-rc1\n\nCorresponding to flashrom svn r1939.\n\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\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\n"
    },
    {
      "commit": "e016826a077abafc9ebe669c5fb8a809b6e6c2ea",
      "tree": "dc32dd3ce3e3c88a88584eb58c4d15dcfaac0d4e",
      "parents": [
        "e0c7abf219b81ad049d09a4671ebc9196153d308"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 21 11:18:24 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 21 11:18:24 2016 +0000"
      },
      "message": "Automatically disable atapromise for libpayload as well\n\nThe atapromise module uses the rom_size field of the struct pci_dev found\nin pci.h that does not exist in libpayload\u0027s implementation and thus does\nnot compile with libpayload.\n\nCorresponding to flashrom svn r1938.\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": "4b2b3151e381e0f3b6f3247d97b8fed416961f2f",
      "tree": "84d1e065ef80aecdb876294bd8f8cb409db403f5",
      "parents": [
        "f636ffc4ef46d106ea123f01a2d01c193dc13f39"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Feb 20 22:28:16 2016 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Feb 20 22:28:16 2016 +0000"
      },
      "message": "Allow global disable of all drivers requiring libusb* or libpci\n\nThis is especially helpful for compile tests with CONFIG_EVERYTHING\u003dyes,\nbut can also be used without CONFIG_EVERYTHING.\n\nUsage:\nmake CONFIG_ENABLE_LIBUSB0_PROGRAMMERS\u003dno\nCONFIG_ENABLE_LIBUSB1_PROGRAMMERS\u003dno CONFIG_ENABLE_LIBPCI_PROGRAMMERS\u003dno\n\nCorresponding to flashrom svn r1936.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "f636ffc4ef46d106ea123f01a2d01c193dc13f39",
      "tree": "9d95341adf70f341fca7788c1f5d13232beab5fd",
      "parents": [
        "16c0aecebe6543a72b47f52022038450bda7df00"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Feb 20 22:04:39 2016 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Feb 20 22:04:39 2016 +0000"
      },
      "message": "Automatically disable atapromise on non-x86\n\nWe do not support PCI port I/O on non-x86 (yet).\nAtapromise needs PCI port I/O.\n\nCorresponding to flashrom svn r1935.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "16c0aecebe6543a72b47f52022038450bda7df00",
      "tree": "7f222799680877c7b790ef0b985b96569ce5e9d7",
      "parents": [
        "74367bf31492af2cfcea9efe3ad67ca5d5d3eadc"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Feb 20 21:43:56 2016 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Feb 20 21:43:56 2016 +0000"
      },
      "message": "Do not require PCI code for RayeR SPI driver\n\nCONFIG_RAYER_SPI only needs raw hardware access, but not libpci.\nDisable CONFIG_RAYER_SPI on Android because of missing inb/outb.\nIntroduce NEED_RAW_ACCESS for raw memory access, PCI port I/O\nand MSR access.\n\nCorresponding to flashrom svn r1934.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "45207061d8181c5df6a6bbd1fde82437fc86477e",
      "tree": "dd3329d7867b6a42361a0124b9e7a61485e320ae",
      "parents": [
        "1c2d23a22dd27b4c4b890fca1fcea6e0a6bd4de2"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Feb 19 08:17:24 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Feb 19 08:17:24 2016 +0000"
      },
      "message": "Makefile: fix overriding of make command line arguments\n\nCommand line arguments given when executing make should not stop us\nfrom setting commonly user-configurable variables like CPPFLAGS or\nLDFLAGS.\nWithout this patch \u0027make CPPFLAGS\u003d\"-Ifail\"\u0027 would fail to find\nlibusb1 headers and abort.\nAdd override statements where we append mandatory options to\nthese variables to make (Debian) packagers more happy.\n\nAlso, r1920 introduced some explicit calls to pkg-config instead of\n$(PKG_CONFIG). This patch corrects that as well.\n\nCorresponding to flashrom svn r1931.\n\nSigned-off-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": "d99a2bd049264cc327c6ef772d1ae9c11697a29e",
      "tree": "e1ec42d9aebfb5615ddedbbc0c141562610b7fd5",
      "parents": [
        "c05900f3dccddb5ffb4f1c9557b2ffc81683ec44"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Thu Feb 18 21:42:49 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Feb 18 21:42:49 2016 +0000"
      },
      "message": "dediprog: port to libusb1 and use asynchronous bulk transfers for reading\n\nThis patch is based on Nico Huber\u0027s original version that was rebased\nby David Hendricks for Chromium OS in\nChange-Id: I84384b9d8ed53911657cf2293733531a6e11fd23\n\nCorresponding to flashrom svn r1929.\n\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nSigned-off-by: David Hendricks \u003cdhendrix@chromium.org\u003e\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": "f2daacac7bd58ae886152c7f6de4c83ca77e382e",
      "tree": "f1796438679dfdbc6329f420bf95550cb0d95fcf",
      "parents": [
        "6800c953ef37820e2b0378ccb27064395d32ddf9"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Feb 17 22:25:12 2016 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Feb 17 22:25:12 2016 +0000"
      },
      "message": "List affected features for missing libraries\n\nIf libpci, libusb0 or libusb1 are missing, make will now tell you which\ncurrently enabled features require those libraries.\n\nExample output:\nChecking for libusb-0.1/libusb-compat headers... not found.\nThe following features require libusb-0.1/libusb-compat:\nCONFIG_PICKIT2_SPI CONFIG_DEDIPROG.\nPlease install libusb-0.1 headers or libusb-compat headers.\nSee README for more information.\n\nCorresponding to flashrom svn r1926.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\n"
    },
    {
      "commit": "0870b02516ec9ef90364c3feeb5d0d7dc9c0e785",
      "tree": "016c2ebed9c5ee0cc0f5e5d13b5e1859f4ca0258",
      "parents": [
        "e49edbb8989abe206d144e4ae7bc9f7ae636bada"
      ],
      "author": {
        "name": "Urja Rannikko",
        "email": "urjaman@gmail.com",
        "time": "Sun Jan 31 22:10:29 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 31 22:10:29 2016 +0000"
      },
      "message": "Add support for WCH CH341A as an SPI programmer\n\nCorresponding to flashrom svn r1921.\n\nSigned-off-by: Urja Rannikko \u003curjaman@gmail.com\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\n"
    },
    {
      "commit": "e49edbb8989abe206d144e4ae7bc9f7ae636bada",
      "tree": "c16666b44026940a364e557fb0cf5a8310f4da26",
      "parents": [
        "c83ddc17692a175b6c79885bdbe215852fc36000"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 31 22:10:14 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 31 22:10:14 2016 +0000"
      },
      "message": "Add infrastructure to support libusb-1.0\n\nCorresponding to flashrom svn r1920.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\n"
    },
    {
      "commit": "c83ddc17692a175b6c79885bdbe215852fc36000",
      "tree": "48a2a5a3d3a670d86e5cc30e30ba887d5f6bd882",
      "parents": [
        "ae61651bfab63139493f5ac18348125e8d5baeb0"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 24 22:37:10 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 24 22:37:10 2016 +0000"
      },
      "message": "Makefile: print compile commands of configure steps to the build details file\n\nThis allows for even more easy debugging of build failures due to\nproblems with libraries.\n\nCorresponding to flashrom svn r1919.\n\nSigned-off-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": "ae61651bfab63139493f5ac18348125e8d5baeb0",
      "tree": "4fcafc84ea8bd579b4cc21f8783cd8271ea00bb0",
      "parents": [
        "23e10b87801c22f34642895de8b0b726265eb016"
      ],
      "author": {
        "name": "Simon Glass",
        "email": "sjg@chromium.org",
        "time": "Sat Jan 23 23:27:58 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 23 23:27:58 2016 +0000"
      },
      "message": "dediprog: support new communication protocol, cleanup and enable by default\n\nThe new protocol changes some commands, so adjust the code to support\nthese. Use helper functions to reduce duplication in libusb calls. Testing\nwith real hardware showed that the maximum read size via the control\nendpoint is about 16 bytes although specification does not mention that.\n\nDediprog SF600 is not supported yet.\n\nBased on the following chromiumos changes:\nChange-Id: Ibd1e27d9e8273ba879b9b5d95675b99596255c89\nChange-Id: Ifc33e7b1eed5b0cb80f83458fa24741a577fa46a\nAdditionally, some ideas from Alex for cleaner code were incorporated as well.\n\nTested on an SF100 V4 with both firmware generations PREWing a M25PX80\nand AT45DB041D (the latter is using dediprog_spi_send_command() instead\nof optimized functions which make it a good test vehicle).\n\nCorresponding to flashrom svn r1918.\n\nSigned-off-by: Simon Glass \u003csjg@chromium.org\u003e\nSigned-off-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nSigned-off-by: Alexandru Gagniuc \u003cmr.nuke.me@gmail.com\u003e\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": "23e10b87801c22f34642895de8b0b726265eb016",
      "tree": "2d62c23191801afaecbf98925effb8b8c7a44ab6",
      "parents": [
        "c2644a3fc14088a2535c05edbd56c041b3a7370d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 23 16:16:49 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 23 16:16:49 2016 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 24\n\nTested mainboards:\nOK:\n - ASRock G31M-GS\n   Reported by Александр Трубицын\n - ASRock G41M-VS3\n   Reported by Александр Трубицын\n - ASRock N68C-S UCC\n   Reported by Alexey Belyaev\n - ASRock AMCP7AION-HT (ION 330HT(-BD))\n   Reported by Stefan Tauner\n - ASUS P5K SE\n   Reported by Александр Трубицын\n - ASUS P5KPL-VM\n   Reported by Marin Vlah\n - ASUS RAMPAGE III GENE\n   Reported by stevessss on IRC\n - GIGABYTE GA-945GM-S2\n   Reported by Александр Трубицын\n - GIGABYTE GA-945GCM-S2 (rev. 3.0)\n   Reported by Александр Трубицын\n - GIGABYTE GA-965P-S3\n   Reported by Александр Трубицын\n - GIGABYTE GA-EG43M-S2H\n   Reported by Александр Трубицын\n - GIGABYTE GA-EP31-DS3L (rev. 1.0)\n   Reported by Александр Трубицын\n - GIGABYTE GA-G33M-S2\n   Reported by Александр Трубицын\n - GIGABYTE GA-G33M-S2L\n   Reported by Александр Трубицын\n - GIGABYTE GA-H55M-S2\n   Reported by Александр Трубицын\n - GIGABYTE GA-J1900N-D3V\n   Reported by Marcos Truchado and Guillermo von Hünefeld\n - GIGABYTE GA-K8NS\n   Reported  by nicolae788\n - GIGABYTE GA-M56S-S3\n   Reported by Estevo Paz Freire\n - GIGABYTE GA-P31-DS3L\n   Reported by Александр Трубицын\n - GIGABYTE GA-P31-S3G\n   Reported by Александр Трубицын\n - MSI MS-7336\n   Reported by Benjamin Bellec\n - MSI X79A-GD45 (8D) (MS-7760)\"\n   Reported by mortehu on IRC\n - Supermicro A1SAi-2550F\n   Reported by Bernard Grymonpon\n - Supermicro X7DWT\n   Reported by Steven Stremciuc\n\nLaptop:\n - ASUS U38N\n   Reported by Ultra on IRC\n - Dell Latitude D630\n   Reported by Márton Miklós\n - Fujitsu Amilo Xi 3650\n   Reported by Elmar Stellnberger\n - Lenovo T400 (whitelisting only)\n\nChipsets:\n - Mark 8086:1f38 (Intel Avoton/Rangeley) as tested\n   Reported by Jeremy Porter and Bernard Grymonpon\n - Add Intel Sunrise Point IDs but no support yet.\n\nFlash chips:\n - Atmel AT45DB321D to PREW (+PREW)\n   Reported by The Raven\n - Eon EN25QH32 to PREW (+PREW)\n   Reported by Josua Mayer\n - Eon EN25QH64 to PREW (+EW)\n   Reported by David s. Alessio\n - GigaDevice GD25LQ64(B) to PREW (+PREW)\n   Reported by Greg Tippit\n - Intel 28F001BN/BX-T to PREW (+EW)\n   Reported by Lu Xie\n - Micron M25P10-A to PREW (+W)\n   Reported by the Raven\n - Micron M25PE40\n   Reported by David Wood\n - Micron N25Q128..3E to PREW (+PREW)\n   Reported by Miklós Márton\n - Macronix MX25L3273E to PREW (+PREW)\n   Reported by Roklobsta on IRC\n - Macronix MX23L6454 to PR (+PR)\n   Reported by Steven Honeyman\n - Macronix MX25U6435E/F to PREW (+PREW)\n   Reported by Marcos Truchado and Guillermo von Hünefeld\n - PMC Pm25LQ032C to PREW (+EW)\n   Reported by Dirk Knop\n - Spansion S25FL016A to PREW (+EW)\n   Reported by Márton Miklós\n - Spansion S25FL128S......0 to PREW (+PREW)\n   Reported by Jim Houston\n - Spansion S25FL204K to PR (+PR)\n   Reported by Thomas Debrunner\n - SST SST49LF016C to PREW (+EW)\n   Reported by Steven Stremciuc\n - SST SST39VF040 to PREW (+PREW)\n   Reported by Xavier Bourgeois\n - SST SST49LF040B to PREW (+EW)\n   Reported by Rikard Åhlund\n - ST M25P10-A to PREW (+W)\n   Reported by Martijn Schiedon\n - Winbond W39V040FA to PREW (+EW)\n   Reported by Евгений Черкашин\n - Winbond W39V080FA to PREW (+EW)\n   Reported by protagonist0 on IRC\n - Winbond W25Q80.W to PREW (+PREW)\n   Reported by Miklós Márton\n - Winbond W25X64 to PREW (+REW)\n   Reported by Johannes Krampf and Manuel Dejonghe\n - Fix ID of AMIC A25LQ64\n   Reported by Roman Titov\n - Fix page size of Spansion S25FL129P......1\n   Copy and paste error from the 128S uniform 256kB variant, probably.\n - Add Micron/Numonyx phase-change memory IDs\n\nMiscellaneous:\n - Detect Android target OS.\n   No changes are required to build flashrom (excluding programmers\n   with NEED_PCI) on Android.\n - Update rayerspi (spipgm) URL\n - Fix max_data_write handling of at45db.\n - Minor refinement of the README\n - Mark board enable for the GA-K8NS variants as tested.\n   Tested by \"nicolae788\" on a board with socket 754.\n - Mark \"Multi-system\" chassis as non-laptop case.\n - Remove W836xx log requests.\n   We got enough (and no one is looking at them for the time being anyway).\n - serprog: improve invalid reply error message, contributed by Urja Rannikko.\n - Remove default include paths for MinGW.\n - Disable implicit rules in the Makefile because we don\u0027t need them and they\n   just make the build (imperceptibly) slower.\n - Enable our own strnlen() implementation not only on DJGPP but also if\n   HAVE_STRNLEN is not defined. This is needed to get older BSDs\n   (e.g. NetBSD 6.0, FreeBSD \u003c 8.0) to work.\n - Tiny other stuff.\n\nCorresponding to flashrom svn r1917.\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": "c2644a3fc14088a2535c05edbd56c041b3a7370d",
      "tree": "1d1e9e3e05d2fa18a228ef22ef0f99873c767ab4",
      "parents": [
        "a3712817a2eff0173e664162fc441ee7846f6ea0"
      ],
      "author": {
        "name": "Joseph C. Lehner",
        "email": "joseph.c.lehner@gmail.com",
        "time": "Sat Jan 16 23:45:25 2016 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jan 16 23:45:25 2016 +0000"
      },
      "message": "Add atapromise programmer\n\nSupported controllers are Promise PDC20262 (FastTrak66/Ultra66),\nPDC20265 (FastTrak100 Lite/Ultra100), PDC20267 (FastTrak100/Ultra100).\nAt least the Ultra100 only has address lines A0-A14 wired up, limiting\naddressable chip size to 32 kB. The flash chips mounted on those\ncontrollers usually is 128 kB, i.e. parts of the flash chip are\ninaccessible. As a workaround, the driver implicitly truncates the\nsize of all flash chips to 32 kB. Works well for the factory installed\nflash.\nDo NOT use as a generic programmer for chips \u003e32 kB.\n\nCorresponding to flashrom svn r1916.\n\nSigned-off-by: Joseph C. Lehner \u003cjoseph.c.lehner@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\n"
    },
    {
      "commit": "1ca7c7ff1ba0f5ad43b6cc5b767853fa3248859c",
      "tree": "1fad05560179578a2997fff4443bdacdf20e0bd6",
      "parents": [
        "4c72315c10c0a760a6ed9181257aa7fe3ce9176d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 14 23:05:55 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 14 23:05:55 2016 +0000"
      },
      "message": "Set LC_ALL globally in Makefile\n\nThis won\u0027t work for the majority of relevant commands because they use the\n$(shell) function and GNU make does not relay variables exported within the\nmakefile to their evironment.\n\nCorresponding to flashrom svn r1914.\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": "4c72315c10c0a760a6ed9181257aa7fe3ce9176d",
      "tree": "a98688792c28001185f29bd30ce569ca38f888ce",
      "parents": [
        "bfb067b076c048935314635ffb16c0913a171744"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 14 22:47:55 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 14 22:47:55 2016 +0000"
      },
      "message": "Pimp the manpage to create nicer hyperlinks and HTML output\n\nAlso, add a target to the makefile to build a flashrom.8.html with groff.\nTo fix some formatting issues this adds some indention commands as well.\n\nCorresponding to flashrom svn r1913.\n\nSigned-off-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": "bfb067b076c048935314635ffb16c0913a171744",
      "tree": "91d84b42ac50cc531ab9eb7f4f06ddfcc81509a1",
      "parents": [
        "3f73ffec384ef77a5039deb96858623e0fe6f827"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 07 18:13:07 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 07 18:13:07 2016 +0000"
      },
      "message": "Add support for linking statically with CONFIG_STATIC\u003dyes\n\nThis is loosly based on the following changes of chromiumos:\n\n - flashrom: Add default pkg-config definition.\n   Change-Id: I28744af0fd2d2d0bcc4569a5fbef370321691267\n - Fix FT2232 feature on static builds.\n   Change-Id: I70d4a7bda573b64cb18429a21792455b018c4cba\n\nCorresponding to flashrom svn r1912.\n\nSigned-off-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": "3f73ffec384ef77a5039deb96858623e0fe6f827",
      "tree": "480357e8eb3e1d3cc8cc1266673d42b06264c37d",
      "parents": [
        "bfaf7b1feb35ac625424d3249cf9967295629283"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 07 17:45:59 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 07 17:45:59 2016 +0000"
      },
      "message": "Make make errors more less flashily\n\nPreviously we have hid almost all error messages from called tools like\npkg-config or the compiler in the \"configure\" step. Only exceptions were\nthe library checks because Carl-Daniel felt it improved usability in\ncase of missing headers etc.\n\nHowever, this makes the output of the makefile less readable and in\nthe case of pkg-config fallbacks the error messages are actually\nexpected. Instead of throwing a part of the detailed stderr outputs\nof the tools into the face of the users and completely hiding\nothers, write all of them into a separate log file instead.\n\nCorresponding to flashrom svn r1911.\n\nSigned-off-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": "bfaf7b1feb35ac625424d3249cf9967295629283",
      "tree": "61964a9021dcfcd2d8ab4b66b96f14dca1a28b80",
      "parents": [
        "dc44584e92a61b6493d8bb76a8de7a07b8cd8e78"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 07 09:50:26 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 07 09:50:26 2016 +0000"
      },
      "message": "makefile: fix exports of PKG_CONFIG_LIBDIR for pkg-config calls\n\nThe parenthesis pushed the exports into a subshell thus made them useless.\n\nCorresponding to flashrom svn r1910.\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": "3d06abef13b80d8063d2f66a6617665c745a1cd9",
      "tree": "7656b0f72792920d69170cc53ca20c169a5a060c",
      "parents": [
        "2f055dfba97a2798ab10ec6cbbac760346a4cebe"
      ],
      "author": {
        "name": "Alexandru Gagniuc",
        "email": "mr.nuke.me@gmail.com",
        "time": "Fri Dec 25 22:42:45 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Dec 25 22:42:45 2015 +0000"
      },
      "message": "Add support for libftdi1\n\nMany distros no longer provide libftdi 0.2, and as a result,\nprogrammers that depend on libftdi must be disabled to compile flashrom.\nLuckily the libftdi API did not change significantly, so for our\npurposes, we can simply use the newer headers and link to the newer\nlibrary if it is available.\n\nCorresponding to flashrom svn r1904.\n\nSigned-off-by: Alexandru Gagniuc \u003cmr.nuke.me@gmail.com\u003e\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": "f4651f612b2094fdf2e858c6489ee0667c0e93de",
      "tree": "f48fd5ba9279702a84330c6a7bc34e9d05933b30",
      "parents": [
        "74dc73f6907ea159c0d5d221309e266528ea6134"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 01 22:05:16 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 01 22:05:16 2015 +0000"
      },
      "message": "Increase flashrom version number to 0.9.8\n\nCorresponding to flashrom svn r1887.\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": "74dc73f6907ea159c0d5d221309e266528ea6134",
      "tree": "15dba04ff8d31e6a4dce586a520311cc9e58f1d7",
      "parents": [
        "adadca66f2ce2cb03ece016ab07fef604283c667"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 01 22:04:38 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Mar 01 22:04:38 2015 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 23\n\nTested mainboards:\nOK:\n - Elitegroup GF7050VT-M\n   Reported by Alex\n - Fujitsu D2724-A1x (used in ESPRIMO E5625)\n   Reported by Rainer Spillmann\n - Teclast X98 Air 3G\n   Reported by Antonio Ospite\n\nFlash chips:\n - Fix MX25L6405(D) definition by splitting it.\n   Reported by Reggie McMurtrey\n - Add Macronix MX25L..08E family and rearrange MX25L6436E.\n - Pm49FL004 to PREW (+EW)\n   Reported by Georg Sauthoff\n\nMiscellaneous:\n - Add board enable for abit KN9 Ultra.\n - Mark ARM-USB-OCD as working OK.\n - Use \"mobile devices\" instead of \"laptops\" in output.\n - Tiny other stuff.\n\nCorresponding to flashrom svn r1886.\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": "400b3adc8a4e073648e2512be9cd7bab94d8f8f8",
      "tree": "2ebc27d8ebbf4b7678665a9ffb1340bfdc559496",
      "parents": [
        "fb2d77cbaf09497a1d33ac7e3756d7af35b56c8c"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Feb 11 22:21:03 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Feb 11 22:21:03 2015 +0000"
      },
      "message": "Increase flashrom version number to 0.9.8-rc1\n\nCorresponding to flashrom svn r1883.\n\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": "fb2d77cbaf09497a1d33ac7e3756d7af35b56c8c",
      "tree": "340b3f1f7464cfe2a6ef92e2b4e9b7d48b559f41",
      "parents": [
        "66e554bc88a29ec6bc55c86320799c31b5b0e6c1"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Feb 10 08:03:10 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Feb 10 08:03:10 2015 +0000"
      },
      "message": "Add support for SPARC (maybe)\n\nWas implemented by SPARC newbies, does (cross-)compile but is not run-tested.\n\nCorresponding to flashrom svn r1882.\n\nSigned-off-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": "66e554bc88a29ec6bc55c86320799c31b5b0e6c1",
      "tree": "597dd6c02ecd223e56d3088682e1c5314409af1f",
      "parents": [
        "5673450316b0624f3b0a763babdcaf9f13fde12c"
      ],
      "author": {
        "name": "Justin Chevrier",
        "email": "jchevrier@gmail.com",
        "time": "Sun Feb 08 21:58:10 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 08 21:58:10 2015 +0000"
      },
      "message": "Add support for the Microchip PICkit2 as an SPI programmer\n\nThis patch was inspired by the code in AVRDude (open source Atmel AVR\nprogrammer) to support the PICkit2 written by Doug Brown [1]. The\nDediprog code in flashrom was used as the template for this code with\nsome reference to the ft2232 code as well.\n\n[1] - https://github.com/steve-m/avrdude/blob/master/pickit2.c\n\nCorresponding to flashrom svn r1881.\n\nSigned-off-by: Justin Chevrier \u003cjchevrier@gmail.com\u003e\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": "5673450316b0624f3b0a763babdcaf9f13fde12c",
      "tree": "c983ef2d2c6f99c099cd4bad2bb517b44389aeb4",
      "parents": [
        "5c316f954941241ed75a1f00f00bf1bff318488a"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 08 21:58:04 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 08 21:58:04 2015 +0000"
      },
      "message": "Refine version check of libpci function pci_get_dev\n\nThe way more elegant check for the header fails unfortunately on CentOS 4.9\nbecause PCI_LIB_VERSION is not defined at all although the domain parameter\nis present. This patch jumps through the hoops via an additional check in the\nMakefile to determine if the function accepts 5 parameters (new version) or\nnot (old version).\n\nCorresponding to flashrom svn r1880.\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": "5c316f954941241ed75a1f00f00bf1bff318488a",
      "tree": "ce836bcb29d7d9da86ee583a88236b020985ba36",
      "parents": [
        "dc627931848ed6af40be4f7d5bdb8e33d28b8333"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 08 21:57:52 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Feb 08 21:57:52 2015 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 22\n\nTested mainboards:\nOK:\n - AOpen UK79G-1394 (used in EZ18 barebones)\n   Reported by Lawrence Gough\n - ASUS M4N78 SE\n   Reported by Dima Veselov\n - ASUS P5LD2-VM\n   Mark board enable as tested (reported by Dima Veselov)\n - GIGABYTE GA-970A-UD3P (rev. 2.0)\n   Reported by trucmar on IRC\n - GIGABYTE GA-990FXA-UD3 (rev. 4.0)\n   Reported by ROKO__ on IRC\n - GIGABYTE GA-H77-DS3H (rev. 1.1)\n   Reported by Evgeniy Edigarev\n - GIGABYTE GA-P55-USB3 (rev. 2.0)\n   Reported by Måns Thörnqvist\n - MSI MS-7817 (H81M-E33)\n   Reported by Igor Kolker\n\nChipsets:\n - Marked Intel Bay Trail (0x0f1c) as tested OK\n   Reported by Antonio Ospite\n - Refine Intel IDs\n    * Add IDs for Braswell\n    * Add IDs for 9 Series PCHs (e.g. H97, Z97)\n    * Rename Wellsburg devices slightly\n\nFlash chips:\n - Atmel AT25DF041A to PREW (+PREW)\n   Reported by Tai-hwa Liang\n - Atmel AT26DF161 to PREW (+EW)\n   Reported by Steve Shenton\n - Atmel AT45DB011D to PREW (+PREW)\n   Reported by The Raven\n - Atmel AT45DB642D to PREW (+PREW)\n   Reported by Mahesh Mokal\n - Eon EN25F32 to PREW (+PREW)\n   Reported by Arman Khodabande\n - Eon EN25F40 to PREW (+REW)\n   Reported by Jerrad Pierce\n - Eon EN25QH16 to PREW (+EW)\n   Reported by Ben Johnson\n - GigaDevice GD25Q20(B) to PREW (+PREW)\n   Reported by Gilles Aurejac\n - Macronix MX25U6435E/F to PR (+PR)\n   Reported by Matt Taggart\n - PMC Pm25LV512(A) to PREW (+PREW)\n   Reported by The Raven\n - SST SST39VF020 to PREW (+PREW)\n   Reported by Urja Rannikko\n - Winbond W25Q40.V to PREW (+EW)\n   Reported by Torben Nielsen\n - Add E variants of MX25Lx006 (MX25L2006E, MX25L4006E, MX25L8006E).\n - Add MX25L6465E variant.\n - There was never a MX25L12805 AFAICT.\n - Split MX25L12805 from models with the same ID but an additional 32 kB\n   eraser: MX25L12835F/MX25L12845E/MX25L12865E.\n - Add a bunch of ST parallel NOR flash chip IDs.\n\nMiscellaneous:\n - Whitelist ThinkPad X200.\n - Constify master parameter of register_master().\n - Remove FEATURE_BYTEWRITES because it was never used at all.\n - Refine hwseq messages and make them less prominent.\n - Fix the yet unused PRIxCHIPADDR format string thingy.\n - Fix copy\u0026paste error in spi_prettyprint_status_register_bp().\n   Spotted by Pablo Cases.\n - Add an additional SMBus controller revision to identify another Yangtze\n   model. Thanks to Dan Christensen for reporting this issue.\n - dediprog: add missing include for stdlib.h.\n   This fixes (at least) building on FreeBSD and DragonflyBSD with gcc.\n - Remove references to struct pci_filter from programmer.h.\n   It is only needed in internal.c where it has a complete type. Having\n   it in programmer.h provokes a warning by some old versions of gcc.\n - Tiny other stuff.\n\nCorresponding to flashrom svn r1879.\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": "0cbd8c2558209432a0f51522cd2adffc59785dd0",
      "tree": "1d6ba57e182cb443c6296ae6faeed74ea8c1935f",
      "parents": [
        "e37735a99438f496a066d2ee86e55edc771730bb"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jan 26 22:06:04 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jan 26 22:06:04 2015 +0000"
      },
      "message": "Properly include current libusb-win32 header\n\nlibusb-win32 is using a different header file name (lusb0_usb.h) for\na while. Use that on Windows builds to make clear that this is\ncurrently the correct header to include.\n\nHopefully this will change soonish by migrating away from libusb-0.\n\nCorresponding to flashrom svn r1877.\n\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": "e37735a99438f496a066d2ee86e55edc771730bb",
      "tree": "e1c6b7d3dac2d8cd8a0e43b7a382142fb367ebc3",
      "parents": [
        "5d1ad35275cf0f3dd96925aa7ed3feb3ddebd2cf"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jan 26 22:03:35 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jan 26 22:03:35 2015 +0000"
      },
      "message": "Let pkg-config work with cross-compilers\n\nIn cross-compiler setups pkg-config often needs some help to\ndetermine the correct libraries. This can be done for example by\nsetting PKG_CONFIG_LIBDIR to point to the directory where the\ncross-compile .pc files are located. If PKG_CONFIG_LIBDIR was not\nset already outside of the Makefile we set it according to LIBS_BASE\nand add the respective path to the linker\u0027s rpath. This makes it\npossible to easily cross-compile by only setting CC and LIBS_BASE on\nthe command line.\n\nThis patch also removes the explicit default for LIBS_BASE again\nbecause it does not play well with this change and was a bad idea to\nbegin with.\n\nCorresponding to flashrom svn r1876.\n\nSigned-off-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": "5d1ad35275cf0f3dd96925aa7ed3feb3ddebd2cf",
      "tree": "19eb258579482cc69ebfe107b9dd762700631108",
      "parents": [
        "3e6b7bb9480ca0aff25f9d6bc7767bf4c5331447"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 25 23:57:08 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 25 23:57:08 2015 +0000"
      },
      "message": "Fix \"unterminated variable reference\" on ancient versions of GNU make\n\nAdd a workaround for the GNU make that shipped with CentOS 4.9, which\napparently does not like semicolons in shell code (and which also\nignores info functions altogether by the way).\n\nCorresponding to flashrom svn r1875.\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": "ced7ab66cfb1cc6f311f0ec5737b5d5ba368c3cf",
      "tree": "e9914b6029ec58eb56a5bbaefff7dd244119a2b8",
      "parents": [
        "a4617f7aedcba9662afd0768cd40a9a1569ba32a"
      ],
      "author": {
        "name": "Patrick Georgi",
        "email": "patrick@georgi-clan.de",
        "time": "Mon Jan 19 19:52:34 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jan 19 19:52:34 2015 +0000"
      },
      "message": "Allow to easily build all optional modules\n\nThis patch adds a CONFIG_EVERYTHING flag to the Makefile\nthat sets all CONFIG_* flags to \"yes\" if they were \"no\".\n\nThis provides a comfortable way to ensure maximum code exposure\nto tools like coverity[0] or clang\u0027s scan-build.\n\n[0] https://scan.coverity.com/projects/1020\n\nCorresponding to flashrom svn r1869.\n\nSigned-off-by: Patrick Georgi \u003cpatrick@georgi-clan.de\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": "8d21ff1d63e9ce1039fb1cba978e26ecbaec492d",
      "tree": "26e086e92fa8e798bbbd660b5a8c0bc2ecb47209",
      "parents": [
        "4c32af89998df9cae2a20d50e219c195070b012f"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:33:06 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:33:06 2015 +0000"
      },
      "message": "Refinements for DragonflyBSD\n\n - /usr/include/cpu/param.h defines PAGE_MASK already, hence use another\n   name for the respective macro in nicintel_eeprom.c.\n - Since DragonflyBSD 3.6 DPorts is used as the default package manager.\n   Therefore we should use /usr/local/ instead of /usr/pkg/ on default\n   to fetch libraries.\n\nCorresponding to flashrom svn r1866.\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": "4c32af89998df9cae2a20d50e219c195070b012f",
      "tree": "0a896cc927d9ed385499afcf5262931f7a9bc5e1",
      "parents": [
        "b0eee9b8d649efc3db9a6c5f333b0fff5204a979"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:33:00 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:33:00 2015 +0000"
      },
      "message": "Remove defaults for CC and AR\n\nAR defaults to \"ar\" anyway in GNU make and instead of gcc it is probably a\nbetter idea to use just cc. The latter allows to build on freebsd 10 without\noverriding CC or doing symlink tricks (because it uses clang as cc, provides\nmultiple gcc packages but only versioned binaries without any actual \"gcc\"\ncommand name in the path).\n\nCorresponding to flashrom svn r1865.\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": "b0eee9b8d649efc3db9a6c5f333b0fff5204a979",
      "tree": "fcba10fdf1451557f3bc58de6f39d669e5106c46",
      "parents": [
        "be62d3fc07194ec13f091aa06beff0a032f1a418"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:32:50 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:32:50 2015 +0000"
      },
      "message": "Unify target OS and CPU architecture checks\n\nWe do CPU architecture checks once for the makefile in arch.h and\nonce for HW access abstraction in hwaccess.c. This patch unifies\nrelated files so that they can share the checks to improve\nmaintainability and reduce the chance of inconsistencies.\nFurthermore, it refines some of the definitions, which\n - adds \"support\" for AARCH64 and PPC64,\n - adds big-endian handling on arm as well as LE handling on PPC64,\n - fixes compilation of internal.c on AARCH64 and PPC64.\n\nAdditionally, this patch continues to unify all OS checks in\nflashrom by adding a new helper macro IS_WINDOWS.\n\nThe old header file for architecture checking is renamed to platform.h\nto reflect its broader scope and all new macros are add in there.\n\nCorresponding to flashrom svn r1864.\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": "be62d3fc07194ec13f091aa06beff0a032f1a418",
      "tree": "a7e781102adcd18c72ce967f0dceeeb7f8ef92d2",
      "parents": [
        "d5ff8455455152b5590b34c11d3d5e8fb5048aa1"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:32:44 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:32:44 2015 +0000"
      },
      "message": "Allow to easily set a global path prefix for libraries and include files\n\nGets rid of a few DOS-specific Makefile hacks.\n\nCorresponding to flashrom svn r1863.\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": "d5ff8455455152b5590b34c11d3d5e8fb5048aa1",
      "tree": "ea4421ce2f5d172063cb4414447b063fdf445c3d",
      "parents": [
        "60dead4aee579f9da86549ce33d7de29de4e043b"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:32:07 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:32:07 2015 +0000"
      },
      "message": "Refine revision handling\n\nUp to now, when compiling flashrom outside a VCS it would print two\nwarnings that are not very clear to the user. This patch adds a new\nauxilary function to getrevision.sh and uses it in the makefile to print a\nsingle and more meaningful message to the user while hiding the\nwarnings from getrevision.sh.\n\nCorresponding to flashrom svn r1862.\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": "80e647158800d927c776d1278d8817f0ed8f17cd",
      "tree": "b5b0f8f09acac5f114c80ac1ed2ff316c7c0eb12",
      "parents": [
        "5859ced80f17217e7e829b61b02bb18b66b4f8e4"
      ],
      "author": {
        "name": "Alexandre Boeglin",
        "email": "alex@boeglin.org",
        "time": "Sat Dec 20 20:25:19 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Dec 20 20:25:19 2014 +0000"
      },
      "message": "Add support for the MSTAR I2C ISP protocol\n\nBasically, among other chips, MSTAR manufactures SoCs that equip TV sets\nand computer screens, and it seems that all of their products use the\nsame in-system programming protocol. Basically, they use the DDC channel\nof VGA or DVI connectors, which is actually an I2C bus, to encapsulate\nSPI frames (the flash chip is connected to the SoC through an SPI bus).\n\nI wrote this patch since the screen I bought had a software bug, and the\nmanufacturer only released a new firmware binary, but no tool or\ninstructions on flashing it.\n\nMore details can be found here:\nhttp://boeglin.org/blog/index.php?entry\u003dFlashing-a-BenQ-Z-series-for-free(dom)\n\nI only read code from Linux kernel archives published by Acer to figure\nout the protocol (for a touchscreen controller and an NFC chip, both by\nMSTAR, that share the same ISP protocol), so I don\u0027t think there are\nany legal problems with it.\n\nCompilation is currently disabled by default in the Makefile.\nIf in doubt, additional Makefile bugs were added by Stefan.\n\nCorresponding to flashrom svn r1860.\n\nSigned-off-by: Alexandre Boeglin \u003calex@boeglin.org\u003e\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": "9b32de94f5104cb7fa12816b7fa561b804df6ed8",
      "tree": "9501e463b76abf831d62bfd1a9a9ac2f8939476e",
      "parents": [
        "a8cf3620a42ca5927253822a813e3fbae1d6e7bf"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Aug 08 23:52:33 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Aug 08 23:52:33 2014 +0000"
      },
      "message": "Refactor some CLI-relevant parts\n\nBegin to move functions that clearly belong to the (command line)\nuser interface out of flashrom\u0027s core files like flashrom.c.\n\n - Refine messages within check_chip_supported(), rename it to\n   print_chip_support_status() and move it to newly created cli_common.c.\n - Move flashbuses_to_text() to cli_common.c as well.\n - Move global verbosity variables to cli_output.c.\n\nCorresponding to flashrom svn r1841.\n\nSigned-off-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": "a8cf3620a42ca5927253822a813e3fbae1d6e7bf",
      "tree": "64ff1e62b06ee89492c914e11c86b54ddf126b0c",
      "parents": [
        "6697f71ade7b6428c7be6051c02dbb9768900e04"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Aug 08 08:33:01 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Aug 08 08:33:01 2014 +0000"
      },
      "message": "Unify non-shifted and shifted JEDEC access\n\nSome Parallel bus chips have a 16-bit mode and an 8-bit mode. They use\nnormal JEDEC addresses for 16-bit mode and shifted addresses (by 1 bit)\nfor 8-bit mode. Some programmers can access them in 16-bit mode, but on\nall flashrom-supported programmers so far, we access them in 8-bit mode.\nThis means we have to shift the addresses but apart from the addresses\nwe can share the code.\n\nThis patch makes this possible by checking the chip\u0027s FEATURE_ADDR_SHIFTED\nflag in common JEDEC functions and applying the right addresses respectively.\n\nCorresponding to flashrom svn r1840.\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: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "ef3ac8ac17eac9d2041ea9c9e711a9b059412b59",
      "tree": "e5fec0cda5a546133a7440f65da442329ec3db48",
      "parents": [
        "2a41f0a2c0daeb0ee2a38a252ab96135d70a6b81"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Aug 03 13:05:34 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 03 13:05:34 2014 +0000"
      },
      "message": "Refactor unlocking of many chips with locking at register space address +2\n\nThis includes PMC Pm49*, SST 49LF00*, ST M50* and Winbond W39* families.\nThe erase and write test status bits of all affected chips have been reset.\n\nCorresponding to flashrom svn r1833.\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\n"
    },
    {
      "commit": "2a41f0a2c0daeb0ee2a38a252ab96135d70a6b81",
      "tree": "9d9c28c7560f4947c49e54e62c1f3a04f07aec45",
      "parents": [
        "a5bcbceb581f27cfc0055369d3dd9cfd1ae00bfa"
      ],
      "author": {
        "name": "Ricardo Ribalda Delgado",
        "email": "ricardo.ribalda@gmail.com",
        "time": "Mon Jul 28 20:35:21 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jul 28 20:35:21 2014 +0000"
      },
      "message": "Add new programmer for SPI EEPROMs attached to Intel 82580 NICs\n\nThis patch lets you read and write the EEPROM on 82580-based gigabit NIC\ncards. So far it has been tested on copper NICs only, but other variants\nemploying this controller should work too.\nIt is a nice substitution for the official eeupdate tool.\n\nSpeed is quite decent: less than 4 seconds for erases or writes of 32 kB.\n\nCorresponding to flashrom svn r1832.\n\nSigned-off-by: Ricardo Ribalda Delgado \u003cricardo.ribalda@gmail.com\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nTested-by: Ricardo Ribalda Delgado \u003cricardo.ribalda@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "6ad6e01e9b961fd5b25cc4d69319a7d29f110684",
      "tree": "5a7b62f60b10de6a9d9f4f862fdb9f1f8f500f3d",
      "parents": [
        "a60d408a78be0e0d34dda616977489a307cb98b6"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jun 12 00:04:32 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jun 12 00:04:32 2014 +0000"
      },
      "message": "Introduce helpers.c\n\nMove some suitable functions there, add it to the Makefile, but leave the\ndeclarations in flash.h for now.\n\nCorresponding to flashrom svn r1819.\n\nSigned-off-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": "265fcac1b64154b8419c469ded75ec77d6c87828",
      "tree": "2024a49710df58beb390dd05b425bf1b686a3eb8",
      "parents": [
        "0ccec8f21228fab9e5e57c9392f6feafbf296ef1"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:12:23 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:12:23 2014 +0000"
      },
      "message": "Add default arguments for the default programmer (only)\n\nThis code exists thanks to food for thought from Urja Rannikko.\n\nCorresponding to flashrom svn r1814.\n\nSigned-off-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": "72d42f87a9a01a1d27fba593ce4569331e079cbe",
      "tree": "b5850f2c7961641b0fbb0447be298ded5c3db3c6",
      "parents": [
        "4f094750fa38f442d575f9cd2f7ce144ae3218cb"
      ],
      "author": {
        "name": "Kyösti Mälkki",
        "email": "kyosti.malkki@gmail.com",
        "time": "Sun Jun 01 23:48:31 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 23:48:31 2014 +0000"
      },
      "message": "Add IT8212F as programmer\n\nThis PCI PATA controller can use 3V parallel flash up to 128 kB.\n\nMy card was identified as:\n  PCI 1283:8212, subsystem 1283:0001.\n\nand labelled as:\n  Innovision Multimedia LTD.\n  EIO ATA133 RAID\n  (DM-8401 Ver A)\n\nThis particular card did not require setting of any GPIO signals to\nenable flash writing. My card has Pm39LV512 in PLCC32 package without\nsocket.\n\nRebased by Stefan (automatic cleanup, some PCI changes, changed\nenable bit handling). Committed with test state NT because the\nrebased version was not tested on real hardware (yet).\n\nCorresponding to flashrom svn r1812.\n\nSigned-off-by: Kyösti Mälkki \u003ckyosti.malkki@gmail.com\u003e\nSigned-off-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": "4f094750fa38f442d575f9cd2f7ce144ae3218cb",
      "tree": "22c7e87424c339a7dea57c125b7df72b48bb89b8",
      "parents": [
        "c9d8b278256a18230582d4478c863ea9e5d61766"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 22:36:30 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 22:36:30 2014 +0000"
      },
      "message": "atavia: Fix a few problems overlooked/introduced while rebasing\n\nCorresponding to flashrom svn r1811.\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": "7f0f3fab4531c975245bf8f3553ff380ac802fc7",
      "tree": "1d2beb0dcc9fa121e7cfffc7e84d5c367cce9203",
      "parents": [
        "f2756fa240ccf5b2fe888c4abc9c4cdf33932e3a"
      ],
      "author": {
        "name": "Jonathan Kollasch",
        "email": "jakllsch@kollasch.net",
        "time": "Sun Jun 01 10:26:23 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 10:26:23 2014 +0000"
      },
      "message": "Add VIA VT6421A LPC programmer driver\n\nDue to the mysterious address handling of this chip the user can specify\na base address with the offset parameter, e.g.:\nflashrom -p atavia:offset\u003d0xFFF00000\n\nThanks to Idwer Vollering for his iterative testing of this code, as well as to\nMartijn Bastiaan who did the last tests before merging.\n\nCorresponding to flashrom svn r1809.\n\nSigned-off-by: Jonathan Kollasch \u003cjakllsch@kollasch.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\n"
    },
    {
      "commit": "c65b8555d5c002dfa102377849916327e05c7712",
      "tree": "38e32d281cb3e396de0ae7783ed71fce2d9c9ff5",
      "parents": [
        "4442b81fd8ba9236813a22bec77f5920033a7df5"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 15:48:39 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 15:48:39 2013 +0000"
      },
      "message": "BSD refinements\n\nMake it easier to compile flashrom under NetBSD and DragonFlyBSD:\n - Use /usr/pkg/ as prefix for includes and linking\n - Use pciutils as include path for the right(tm) libpci\n\nAlso, fix date handling in getrevision.sh to work with the various formats for\ninvoking \u0027date\u0027. This also uses svn\u0027s info --xml output instead of the regular one.\n\nCorresponding to flashrom svn r1742.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nTested-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "d6c17f6528fd3d3a30f6cf63885c269423777796",
      "tree": "989aec45575df7079b230c42c1f2f5b8a0f24ab4",
      "parents": [
        "6c67f1c1288b585a936fe90815d8029ba9af60c6"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 14:04:31 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 14:04:31 2013 +0000"
      },
      "message": "Makefile: Warn if user tries to compile for libpayload w/o crossgcc\n\nWhile flashrom is not as picky on compilers as coreboot, there is still a\nhigh probablilty of breakage when one combines libpayload and distribution\ncompilers. Print a warning if we detect that to give the daring user a hint\nhow to resolve the explosions potentially following below it.\n\nCorresponding to flashrom svn r1740.\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": "4404f73bd9ba7b4014bcd7a38e533f67027aa854",
      "tree": "6e759d9d533e8d1bd7e736607c411232412b18f8",
      "parents": [
        "4c6d3a4b732732eb20bfb0fc9d857abaa4c41c88"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 08:28:56 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 08:28:56 2013 +0000"
      },
      "message": "Cleanup ST M50 driver\n\nThere are two locking strategies used by this umbrella family, one uniform\nand one that matches the sector layout of the chip. Refactor the functions\ninvolved and rename the overly complicated file to just stm50.c and the\nfunctions accordingly.\n\nThis fixes unlocking of some of the non-uniform chips and gets rid of the\nabuse of page_size.\n\nCorresponding to flashrom svn r1736.\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": "4c6d3a4b732732eb20bfb0fc9d857abaa4c41c88",
      "tree": "2fb7c8a3f0fa3252481a29b2a2d272f6f5fabe07",
      "parents": [
        "449abe28ab764775f5483eb4288f070cfa6dc22b"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Wed Sep 11 23:35:03 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Sep 11 23:35:03 2013 +0000"
      },
      "message": "Add an internal DMI decoder\n\nPreviously we had to rely on dmidecode to decode the DMI/SMBIOS table.\nThis patch integrates a DMI decoder into flashrom. The old behavior of calling\ndmidecode can be brought back by using CONFIG_INTERNAL_DMI\u003dno.\n\nSignificant portions of this patch were taken from dmidecode, hence add its\nauthors to the copyright notice (dmidecode is also GPL2+). We do a few things\ndifferently though. First of all we do more bounds checking to prevent accessing\nunmapped memory. We do not support disovery via EFI (yet), but memory\nscanning only. We handle the chassis-type lock bit correctly which dmidecode\ndid not for a long while.\n\nThe API to the rest of flashrom remains stable, but the output changes slightly.\nTo share as much code as possible (which actually is not much), i have added\ndmi_fill methods that get called in dmi_init. They are reponsible to fill the\ndmi_strings array and setting the is_laptop variable. After it is called, dmi_init\nprints all dmi_strings. Previously the strings were printed in the order they were\ndiscovered, followed by the chassis-type, which is now output earlier (in dmi_fill).\n\nBecause DJGPP does not support strnlen a simple implementation was added\nfor it.\n\nThis is still only available on x86; actually it is not even compiled in for other\narchitectures at all anymore.\n\nCorresponding to flashrom svn r1735.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nTested-by: Maciej Pijanka \u003cmaciej.pijanka@gmail.com\u003e\nTested-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "449abe28ab764775f5483eb4288f070cfa6dc22b",
      "tree": "5097f031f37ab65a6915736c85e310ad71feeea3",
      "parents": [
        "cbd566548df4c752460268ed7f4a5f6c97d3062b"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Sep 11 23:34:57 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Sep 11 23:34:57 2013 +0000"
      },
      "message": "DOS refinements\n\nThis allows to use the DOS library trees stored in a user-specified directory.\n\nI have mirrored the needed patches, sources and binaries (the latter\nare properly licensed to allow that) in the flashrom wiki, so use those\nURLs instead of the original sources.\n\nCorresponding to flashrom svn r1734.\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": "a93d9dc54d7c7a98912632a3097fe853e813c28d",
      "tree": "9ffd6c3d805abab27369bce1e8d8e5f7d09777ed",
      "parents": [
        "ec7a35f7ec8be2cb541de86263a35b1d54206a6b"
      ],
      "author": {
        "name": "Joerg Mayer",
        "email": "jmayer@loplof.de",
        "time": "Thu Aug 29 00:38:19 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Aug 29 00:38:19 2013 +0000"
      },
      "message": "Automatically add version and date to the manpage\n\nTo avoid funny effects of ever changing files tracked by the VCS this patch\nmoves the manpage data to flashrom.8.tmpl and generates the actual\nmanpage with a new makefile target if needed.\n\nCorresponding to flashrom svn r1728.\n\nSigned-off-by: Joerg Mayer \u003cjmayer@loplof.de\u003e\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": "ec7a35f7ec8be2cb541de86263a35b1d54206a6b",
      "tree": "059d2268083b17410a117d28c7dfa2de7439471b",
      "parents": [
        "8e19b0414c16f8f67749594a1b4a5c59799fb50b"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Aug 29 00:38:14 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Aug 29 00:38:14 2013 +0000"
      },
      "message": "Improve getrevision.sh\n\n - remove bashism.\n - simplify some git-related code.\n - improved parameter and error handling.\n - additional -d/--date action which is similar to the timestamp action.\n - support for an optional path parameter.\n - there is only one sane time format.\n - and only one sane date format too.\n - use UTC dates and times only.\n - vastly improve git_url() to print the correct remote url and\n   \"nearest\" branch.\n - remove username from repository URLs.\n - add \"-dirty\" to local revisions if there are uncommitted changes.\n - indicate in local revisions how many git-only commits were done\n   since branching from upstream svn.\n - fix svn_revision() fallback to svn info and remove git-svn.\n - print leading r in script instead of hardcode it in the makefile;\n   no more \"0.9.7-runknown\".\n - make retrieving the upstream revision work even in cloned git-svn\n   repositories.\n - more abstractions and helper functions.\n - less fragmentation of actual functionality.\n\nCorresponding to flashrom svn r1727.\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": "8e19b0414c16f8f67749594a1b4a5c59799fb50b",
      "tree": "fd621ef7c6ec55edd126c96ab28d24c0ca6c4f98",
      "parents": [
        "1dd5d3aa6605ed8c6928d10f4fd48f3f0abf04c2"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 28 09:55:04 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 28 09:55:04 2013 +0000"
      },
      "message": "libpayload: By default build libflashrom.a instead of flashrom\n\nFlashrom won\u0027t build nor run as native payload very soon (or ever).\nThis patch changes a special GNU make variable that allows to select\nthe default goal which is taken if no goal is given explicitly on\nthe command line. Normally this would be the first rule in Makefile,\ni.e. all. This won\u0027t compile if the target OS is libpayload, hence\nchange it to \"libflashrom.a\" in that case.\n\nThis requires two not completely ancient GNU make features:\n - MAKECMDGOALS\n - .DEFAULT_GOAL\n\nChecking for these with ancient-only GNU make features is non-trivial\nand hereby postponed.\n\nCorresponding to flashrom svn r1726.\n\nSigned-off-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": "db4e87dccf040f29dca18571bc455ee23fb430eb",
      "tree": "d88ea1cd6abaa3cbad69fb447eb6dc0092fbb78e",
      "parents": [
        "6db8bad530612262a42c492f06816eb85b8598fc"
      ],
      "author": {
        "name": "Aidan Thornton",
        "email": "makosoft@gmail.com",
        "time": "Tue Aug 27 18:01:53 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 27 18:01:53 2013 +0000"
      },
      "message": "Add support for Atmel AT45DB* chips\n\nCorresponding to flashrom svn r1723.\n\nSigned-off-by: Aidan Thornton \u003cmakosoft@gmail.com\u003e\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": "037cd84889029ecc793e6f03e1ca8046b84e5b4a",
      "tree": "b49b6aa98e43f55001c6219d9cf1b003b4ec6922",
      "parents": [
        "4dd0f906c6ee620d16f2e87e56344a2cb0bf0a46"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 25 00:10:56 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 25 00:10:56 2013 +0000"
      },
      "message": "Makefile: Explain process of handling CONFIG_* variables\n\nCorresponding to flashrom svn r1721.\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"
    }
  ],
  "next": "36e9f4b3595c6e8b13f80f85785a91b65ecad62f"
}
