)]}'
{
  "log": [
    {
      "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": "dc627931848ed6af40be4f7d5bdb8e33d28b8333",
      "tree": "8a458f2a546da385a13b3662586000286e3aa02d",
      "parents": [
        "0cbd8c2558209432a0f51522cd2adffc59785dd0"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jan 27 18:07:50 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jan 27 18:07:50 2015 +0000"
      },
      "message": "Make strnlen() visible in old versions of glibc\n\nStrnlen() is in POSIX 2008 but was a GNU extension up to glibc 2.10\nrequiring to define _GNU_SOURCE. This fixes compilation on CentOS 4.9.\nAlso, move our implementation of strnlen() that was added to support\nDJGPP to helpers.c.\n\nCorresponding to flashrom svn r1878.\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": "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": "3e6b7bb9480ca0aff25f9d6bc7767bf4c5331447",
      "tree": "967316a348ac3ab343a9e02e1ce47c0dd883f576",
      "parents": [
        "05151b6dcbba16746aa803069dd6046a82e33599"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 25 23:45:14 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 25 23:45:14 2015 +0000"
      },
      "message": "Shadowing fix in nicintel_eeprom.c for ancient libpci\n\nVery old versions (\u003c2.2) of pciutils had a typedef named \"word\" in\ntypes.h. That does not play well with previous local variable names\nof nicintel_eeprom.c.\n\nCorresponding to flashrom svn r1874.\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": "05151b6dcbba16746aa803069dd6046a82e33599",
      "tree": "d652c4d3fdc85e6620a42a602a5e423f19528996",
      "parents": [
        "b4dd40c5da6e2bf862e587ec3c49d60bcec2f7ee"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 25 23:42:57 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 25 23:42:57 2015 +0000"
      },
      "message": "ftdi2232_spi: revert usage of DIS_DIV_5 macro\n\nIn r1872 we replaced some magic values with constant macros from\nftdi.h. Among them was DIS_DIV_5 that represents the opcode that\ndisables the use of the 5x prescaler on newer devices. Unfortunately\nthis macro was only introduced with support for FT232H and hence is\nnot available in older versions of the library. Revert back to using\nthe magic constant.\n\nCorresponding to flashrom svn r1873.\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": "b4dd40c5da6e2bf862e587ec3c49d60bcec2f7ee",
      "tree": "0b86b43f06def2e1c80b5ece8b94dd06e1b5a2f2",
      "parents": [
        "57f276f20831cd923f4dfa3e48cb974148b5daef"
      ],
      "author": {
        "name": "Antony Pavlov",
        "email": "antonynpavlov@gmail.com",
        "time": "Sun Jan 25 03:52:47 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jan 25 03:52:47 2015 +0000"
      },
      "message": "ft2232_spi.c: use constants from ftdi.h instead of magic numbers\n\nAlso, improve documentation of static variables cs_bits and pindir.\n\nCorresponding to flashrom svn r1872.\n\nSigned-off-by: Antony Pavlov \u003cantonynpavlov@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": "57f276f20831cd923f4dfa3e48cb974148b5daef",
      "tree": "912df59e7bf2f8de2a72dc44cbc3aee71c49578c",
      "parents": [
        "b175af5cb74c94e541d321100b1e76ea95cd8859"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 24 15:16:14 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 24 15:16:14 2015 +0000"
      },
      "message": "Fix the --mainboard parameter that controls board enables\n\nWe refactored board_match_name()/--mainboard handling in r1577 and\napparently broke it because since then we were always comparing to\nthe respective coreboot values of board and vendor names instead of\nthe user-supplied strings.\n\nCorresponding to flashrom svn r1871.\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": "b175af5cb74c94e541d321100b1e76ea95cd8859",
      "tree": "eb2970a707c33aee61afff4da161c386eba1d359",
      "parents": [
        "ced7ab66cfb1cc6f311f0ec5737b5d5ba368c3cf"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 24 15:06:27 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 24 15:06:27 2015 +0000"
      },
      "message": "Add support for Eon EN25P Series\n\nThese are very similar to Eon\u0027s EN25B series but unlike those the\nEN25P has uniform sectors (of 32 and 64 kB). They can not be\ndistinguished by RDID alone but the RES and REMS IDs are different\nand hence could be detected eventually in the future. This patch\nalso refines tiny bits of the EN25B series.\n\nThe series includes:\n - EN25P05\n - EN25P10\n - EN25P20\n - EN25P40\n - EN25P80\n - EN25P16\n - EN25P32\n - EN25P64\n\nCorresponding to flashrom svn r1870.\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": "a4617f7aedcba9662afd0768cd40a9a1569ba32a",
      "tree": "edeb7c1939ffe7db5c09807896e7295df2f54641",
      "parents": [
        "40bc96fca241970b7cd9632faa8dbbc9e1d617e8"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 15:59:54 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 15:59:54 2015 +0000"
      },
      "message": "Fix support for Macronix MX25L6495F\n\nCorresponding to flashrom svn r1868.\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": "40bc96fca241970b7cd9632faa8dbbc9e1d617e8",
      "tree": "d7ef2a84ca76a5d398dd9a1d61a4b48abcc450a8",
      "parents": [
        "8d21ff1d63e9ce1039fb1cba978e26ecbaec492d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:33:14 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 10 09:33:14 2015 +0000"
      },
      "message": "Add support for Macronix MX25L6495F\n\nThis is based on the code sent to the flashrom mailing list\nby Alex Lu (alexlu6@mxic.com.tw) without sign-off.\n\nCorresponding to flashrom svn r1867.\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": "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": "60dead4aee579f9da86549ce33d7de29de4e043b",
      "tree": "5ede315815890d8f8ff89c6f28590403d502c824",
      "parents": [
        "80e647158800d927c776d1278d8817f0ed8f17cd"
      ],
      "author": {
        "name": "Tai-Hong Wu",
        "email": "thwu@lunartoday.com",
        "time": "Mon Jan 05 23:00:14 2015 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jan 05 23:00:14 2015 +0000"
      },
      "message": "Fix wrong density encoding on Intel Silvermont\n\nSilvermont (Bay Trail, Rangeley, Avoton) seems to still use the old\ndensity encoding with 3 bits per chip. Documentation is unavailable\n(held concealed by Intel) but thanks to the efforts of Tai-Hong\n(Type) Wu the layout is clear now. This patch is based on his one\nbut solves the issue differently thus reducing the code complexity.\n\nCorresponding to flashrom svn r1861.\n\nSigned-off-by: Tai-Hong Wu \u003cthwu@lunartoday.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": "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": "5859ced80f17217e7e829b61b02bb18b66b4f8e4",
      "tree": "16c9266af61435d7f2603998a3730ec7be1e09ed",
      "parents": [
        "e814a9b6e83deea2bbc9d287e8a9ee0a409a969e"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Dec 20 16:45:31 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Dec 20 16:45:31 2014 +0000"
      },
      "message": "Fix handling of write protection at register space address +2\n\nSince r1833 we added the offset of the virtual register in several\nfunctions, which produced segfaults. This patch renames a few\nparameters and reorganizes/fixes various parts of the\nchangelock_regspace2_block() function - hence the rather big diff.\n\nThanks to Roman Lebedev for reporting this issue and testing numerous\nrevisions of this patch.\n\nCorresponding to flashrom svn r1859.\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": "e814a9b6e83deea2bbc9d287e8a9ee0a409a969e",
      "tree": "538c50b664d4222baaf5880a2f998fc4b482a7c7",
      "parents": [
        "b5f9d5c40221e645fd3a5c2d7ece3e8df1330b04"
      ],
      "author": {
        "name": "Jernej Škrabec",
        "email": "jernej.skrabec@planet.si",
        "time": "Fri Dec 12 00:32:03 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Dec 12 00:32:03 2014 +0000"
      },
      "message": "Add support for Spansion S25FL127S\n\nThis flash chip can be configured (one time) to use 64 KiB or 256 KiB sectors.\nAdditionally, in the 64 KiB mode it supports 16 4 KiB sub-sectors that can be\n(one time) programmed to be on the top or bottom of the device. The sub-sectors\ncan be erased with the 0x20 opcode but because this opcode does not work\nwith the remaining sectors and flashrom can not cope with that the 0x20\nopcode is not supported yet.\n\nThis patch adds two definitions, one for the 64 KiB and 256 KiB configuration\nrespectively. The device also shares the RDID with the various S25FL128\ndevices so we have to increase the maximum number of successfully probed\nchips to 8.\n\nThe 64 KiB mode was tested on real hardware.\n\nCorresponding to flashrom svn r1858.\n\nSigned-off-by: Jernej Škrabec \u003cjernej.skrabec@planet.si\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": "b5f9d5c40221e645fd3a5c2d7ece3e8df1330b04",
      "tree": "dfae816c1624a5b4fa483ee07635eea507f94695",
      "parents": [
        "33180dfb39603f6329a35264b85a4582059e394e"
      ],
      "author": {
        "name": "Denis \u0027GNUtoo\u0027 Carikli",
        "email": "GNUtoo@no-log.org",
        "time": "Sun Dec 07 21:57:53 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Dec 07 21:57:53 2014 +0000"
      },
      "message": "Add support for Eon EN29LV040 and EN29LV040A\n\nBoth use the same ID and are mostly identical.\n\nCorresponding to flashrom svn r1857.\n\nTested-by: Denis \u0027GNUtoo\u0027 Carikli \u003cGNUtoo@no-log.org\u003e\nSigned-off-by: Denis \u0027GNUtoo\u0027 Carikli \u003cGNUtoo@no-log.org\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "33180dfb39603f6329a35264b85a4582059e394e",
      "tree": "bdd08e70f0a4f1a06cc75fc63e41898e8f0b0996",
      "parents": [
        "7fbbbb80d22c2e7d90048574a31c4acd2a948bf8"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@skyportsystems.com",
        "time": "Fri Dec 05 22:56:13 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Dec 05 22:56:13 2014 +0000"
      },
      "message": "Add support for Intel 82599 10 GbE NICs\n\nThe Intel 82599 series of 10 GbE controllers has a bit-banged SPI\ninterface that\u0027s register-compatible with the one in the 1 GbE\ncontrollers, except the register addresses are shifted up by\n0x10000, cf. Intel document 331520:\nhttp://www.intel.com/content/dam/www/public/us/en/documents/datasheets/82599-10-gbe-controller-datasheet.pdf\n\nThis patch was tested with a board that has the 0x10fc device and a Micron\nM25P40 SPI flash chip. The PCI IDs and names for the devices are per Intel document 331521\nhttps://www-ssl.intel.com/content/dam/www/public/us/en/documents/specification-updates/82599-10-gbe-controller-spec-update.pdf\nand the PCI SIG device ID registry with small refinements.\n\nCorresponding to flashrom svn r1856.\n\nSigned-off-by: Ed Swierk \u003ceswierk@skyportsystems.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": "7fbbbb80d22c2e7d90048574a31c4acd2a948bf8",
      "tree": "a69d830138454bf74534baf82cc493bfe7ac886f",
      "parents": [
        "592d99c98fe9743a68d0dc14487f306b879ee359"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Nov 30 22:31:12 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Nov 30 22:31:12 2014 +0000"
      },
      "message": "Add board enable for GIGABYTE GA-8SIMLFS 2.0\n\nThis board was used/sold by Fujitsu. The board enabled was tested (sadly\nwith the wrong image, i.e. one of the GA-8SIMLH images directly from\nGIGABYTE instead of one from Fujitsu).\n\nCorresponding to flashrom svn r1855.\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": "592d99c98fe9743a68d0dc14487f306b879ee359",
      "tree": "b7f1fc04192c584cd02bdf6f1546b2e36ab61a65",
      "parents": [
        "b41d847d7292335ca5be8818a1ff0b6c2316c2d1"
      ],
      "author": {
        "name": "Paul Menzel",
        "email": "paulepanter@users.sourceforge.net",
        "time": "Sat Nov 01 23:12:33 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Nov 01 23:12:33 2014 +0000"
      },
      "message": "cbtable.c: Do not unnecessarily duplicate strings\n\nThe strdup calls were a leftover that slipped through the cleanup in\nr1577.\n\nFound-by: Valgrind 3.10.0\n\nCorresponding to flashrom svn r1854.\n\nSigned-off-by: Paul Menzel \u003cpaulepanter@users.sourceforge.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "b41d847d7292335ca5be8818a1ff0b6c2316c2d1",
      "tree": "7645efab7c6eb3a470e51ade1c88f62b00569eb9",
      "parents": [
        "ff9e6c32c37e685f25e5ba09611e6e7d1a556bd8"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Nov 01 22:56:06 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Nov 01 22:56:06 2014 +0000"
      },
      "message": "Move strtok_r implementation verbatim to helpers.c\n\nCorresponding to flashrom svn r1853.\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": "ff9e6c32c37e685f25e5ba09611e6e7d1a556bd8",
      "tree": "166d12b4f4831f114d046692dd712f7e96e40882",
      "parents": [
        "73f5bda01dbb1f6726593ab7a6139a1a8a1afb5a"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Oct 19 07:54:27 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Oct 19 07:54:27 2014 +0000"
      },
      "message": "dmi.c: make sure we call isprint() correctly\n\nISO C and POSIX require to call ctype functions with values representable\nby unsigned char. We have used a char as input so far which might be\nnegative and hence get sign-extended.\n\nCorresponding to flashrom svn r1852.\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": "73f5bda01dbb1f6726593ab7a6139a1a8a1afb5a",
      "tree": "a8c3f64554ab03d54bacd86bde92d60844cf9d89",
      "parents": [
        "5e27b0bc1371a75ecf2e0b0224ca4e0137f87d46"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Oct 19 07:53:45 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Oct 19 07:53:45 2014 +0000"
      },
      "message": "Make read before write configurable (infrastructure part)\n\n - Introduce a variable in doit() that allows to influence\n   read-before-write and its consequences.\n - Modify build_new_image so that it still works even if the old content\n   is not read before.\n - Add copy_old_content() to ease the pain for future patches.\n\nCorresponding to flashrom svn r1851.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\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": "5e27b0bc1371a75ecf2e0b0224ca4e0137f87d46",
      "tree": "f9b10dcbfdd9ae754f450ac6891712247c10edee",
      "parents": [
        "778c6d81c80a44a9edf705e8f9fe28f5d50da88f"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Sep 09 23:03:32 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Sep 09 23:03:32 2014 +0000"
      },
      "message": "Add support for Winbond W25Q40.V chips\n\nRead-tested by Peter Ruesch.\n\nCorresponding to flashrom svn r1850.\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": "778c6d81c80a44a9edf705e8f9fe28f5d50da88f",
      "tree": "5535c4c92c161534ff1f14a7a3c2f104ab873b46",
      "parents": [
        "2a1ed77f84e7cfc0a419c44edfbf41c78f211ac9"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Sep 05 16:14:11 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Sep 05 16:14:11 2014 +0000"
      },
      "message": "dmi.c: Duplicate returned strings because they are meant to be freed\n\nWithout this patch dmi_shutdown calls free() on read-only strings.\n\nCorresponding to flashrom svn r1849.\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": "2a1ed77f84e7cfc0a419c44edfbf41c78f211ac9",
      "tree": "1ce5908e88a7d94970f7f9fdd6a935db044599c5",
      "parents": [
        "4e32ec19b124a7431d1e3fd9f7e75196b7495a7e"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 31 00:09:21 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 31 00:09:21 2014 +0000"
      },
      "message": "Introduce generic shutdown_free() and remove redundant internal_shutdown()\n\nThe former will be useful in cases where cleanup equals a simple call to free().\n\nCorresponding to flashrom svn r1848.\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": "4e32ec19b124a7431d1e3fd9f7e75196b7495a7e",
      "tree": "5ca7051747f8161639957c37d984cbe8f878271a",
      "parents": [
        "583ea32911f67641daef9d05b3e65176b6923f94"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Aug 30 23:39:51 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Aug 30 23:39:51 2014 +0000"
      },
      "message": "Refine physical address mapping of flash chips\n\n - Create distinct functions for mapping and unmapping for flash chips.\n - Map only when needed: map before probing and unmap immediately\n   after it. Map again when a single chip was probed successfully before\n   taking any actual actions and clean up afterwards.\n - Map special function chip registers centrally together with flash space\n   instead of within (some) probing methods after successful probes.\n - Save the used base addresses of the mappings in struct flashctx as well.\n - Do not try to (un)map the zero-sized chip definitions that are merely hacks.\n   This also fixes the printing of wrong warnings for these chip definitions\n   introduced in r1765.\n\nCorresponding to flashrom svn r1847.\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": "583ea32911f67641daef9d05b3e65176b6923f94",
      "tree": "2bf475ade02027bae04875390ab01b8a697be9b2",
      "parents": [
        "823096e5270dc7ccd8b0315377428556d1987dcf"
      ],
      "author": {
        "name": "Michael Coppola",
        "email": "michael.n.coppola@gmail.com",
        "time": "Wed Aug 20 18:56:35 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 20 18:56:35 2014 +0000"
      },
      "message": "Add support for Macronix MX23L1654, MX23L6454 and MX23L12854 mask ROMs\n\nCorresponding to flashrom svn r1846.\n\nSigned-off-by: Michael Coppola \u003cmichael.n.coppola@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "823096e5270dc7ccd8b0315377428556d1987dcf",
      "tree": "53fbf8653802401b1a35a6046aa8c54e0f8b0d1a",
      "parents": [
        "4095ed797f87c92b52e15d9f6fdc0b895c414cc9"
      ],
      "author": {
        "name": "Duncan Laurie",
        "email": "dlaurie@chromium.org",
        "time": "Wed Aug 20 15:39:38 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 20 15:39:38 2014 +0000"
      },
      "message": "Add support for Intel Wildcat Point PCH\n\nThe Wildcat Point PCH can be paired with Broadwell or Haswell.\nThis patch was essentially backported from ChromiumOS commit 9bd2af8.\n\nCorresponding to flashrom svn r1845.\n\nSigned-off-by: Duncan Laurie \u003cdlaurie@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": "4095ed797f87c92b52e15d9f6fdc0b895c414cc9",
      "tree": "deaca4de25e5bafc24fe0a48a401a8d4f062a170",
      "parents": [
        "2ba9f6ebe56b208a1fb0b0ce5edf81097a0158be"
      ],
      "author": {
        "name": "Duncan Laurie",
        "email": "dlaurie@chromium.org",
        "time": "Wed Aug 20 15:39:32 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 20 15:39:32 2014 +0000"
      },
      "message": "Add support for Intel Silvermont: Bay Trail, Rangeley and Avoton\n\nThe core of this patch to support Bay Trail originally came from the\nChromiumos flashrom repo and was modified by Sage to support the\nRangeley/Avoton parts as well.\nBecause that was not complicated enough already Stefan Tauner refactored\nand refined everything. Bay Trail seems to be the first Atom SoC able to\nsupport hwseq. No SPI Programming Guide could be obtained so it is\nhandled similarly to Lynx Point which seems to be its nearest relative.\n\nCorresponding to flashrom svn r1844.\n\nSigned-off-by: Duncan Laurie \u003cdlaurie@chromium.org\u003e\nSigned-off-by: Martin Roth \u003cgaumless@gmail.com\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nTested-by: Marc Jones \u003cmarcj303@gmail.com\u003e\nTested-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nTested-by: Thomas Reardon \u003cthomas_reardon@hotmail.com\u003e\nTested-by: Wen Wang \u003cwen.wang@adiengineering.com\u003e\nAcked-by: Marc Jones \u003cmarcj303@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "2ba9f6ebe56b208a1fb0b0ce5edf81097a0158be",
      "tree": "06741544f702c84fa5fcbc5edb8a888530917481",
      "parents": [
        "9e3a6984da1bb38af37ce4bb54af8f7475b7c766"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 20 15:39:19 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 20 15:39:19 2014 +0000"
      },
      "message": "Refine Flash Component descriptor handling\n\nPossible values as well as encodings have changed in newer chipsets as follows.\n - Pre-PCH (i.e. ICH) chipsets had a maximum frequency of 33 MHz for all\n   operations\n - Since Cougar Point the chipsets support dual output fast reads (encoded\n   in bit 30).\n - Flash component density encoding has changed from 3 to 4 bits with Lynx\n   Point, currently allowing for up to 64 MB chips.\n\nCorresponding to flashrom svn r1843.\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": "9e3a6984da1bb38af37ce4bb54af8f7475b7c766",
      "tree": "409e4bf78b9d726f6aa413933987055b6a1c0439",
      "parents": [
        "9b32de94f5104cb7fa12816b7fa561b804df6ed8"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Aug 15 17:17:59 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Aug 15 17:17:59 2014 +0000"
      },
      "message": "Refine handling chips that exceed maximum programmer sizes\n\n - Change check_max_decode() to return the number of (common) busses\n   where the flash chip exceeds the supported size of the programmer.\n - Refine its signature to use a flashctx pointer only.\n - Move CLI-related bits to cli_classic.c.\n - Rename check_max_decode() to count_max_decode_exceedings() to\n   better reflect what it (now) really does.\n - Refine the messages printed by the caller to better integrate with the new\n   setup, and simplify them.\n\nCorresponding to flashrom svn r1842.\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": "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": "6697f71ade7b6428c7be6051c02dbb9768900e04",
      "tree": "23a2f8596d493396b7d9571ee91888e3f49c49f9",
      "parents": [
        "88b19257cb41c97123d832460c944abc588a8e89"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 06 15:09:15 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 06 15:09:15 2014 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 21\n\nTested mainboards:\nOK:\n - ASUS F2A85-M\n   Reported by various corebooters\n - ASUS M2N-MX SE Plus\n   Reported by Antonio\n - ASUS P5LD2\n   Reported by François Revol\n - Lenovo ThinkPad T530\n   Reported and partially authored by Edward O\u0027Callaghan\n - MSI MS-7502 (Medion MD8833)\n   Reported by naq on IRC\n - Shuttle AB61\n   Reported by olofolleola4\n - ZOTAC IONITX-F-E\n   Reported by Bernardo Kuri\n\nFlash chips:\n - Atmel AT45DB021D to PREW (+PREW)\n   Reported by The Raven\n - Atmel AT25F4096 to PREW (+PREW)\n   Reported by 공준혁\n - GigaDevice GD25Q16(B) to PREW (+PREW)\n   Reported by luxflow@live.com using a GD25Q16BSIG\n - Catalyst CAT28F512\n   Mark erase and write as known bad (not implemented)\n\nMiscellaneous:\n - Various spelling corrections by Daniele Forsi.\n - Added and refined a bunch of chips originally investigated by Carl-Daniel.\n - Marked the ARM-USB-OCD-H programmer as tested\n   (reported by Ruud Schramp).\n - Tiny other stuff.\n\nCorresponding to flashrom svn r1839.\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": "88b19257cb41c97123d832460c944abc588a8e89",
      "tree": "3d74f91b2cf63664a9054169f7cc2509e849be91",
      "parents": [
        "7608d368fcd566a60ab47755eb1c9263ca9d7b35"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 06 14:36:27 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 06 14:36:27 2014 +0000"
      },
      "message": "Add support for S25FL128P, S25FL129P and refine it for S25FL128S chips\n\nAdditionally to the existing S25FL128S......0 definition this patch\nadds S25FL128P......0, S25FL128P......1 and S25FL128S......1, as well as\nS25FL129P......0 and S25FL129P......1 definitions.\nS25FL12xP seem to be the predecessor families of S25FL128S. All\nassociated chips can not be distinguished with RDID alone.\n\nBesides the new chips, this patch also fixes the name of the  previously\nsupported S25FL128S model with uniform 256 kB sectors\n(S25FL128P......1 not 0) and adds the hybrid sector version (0) as well.\n\nDue to the shared IDs the user has to select the right chip manually\nwith the -c parameter. To make this even possible, this patch enlarges\nthe respective array for results to 6.\n\nTested-by: Antonio Ospite \u003cao2@ao2.it\u003e\nwith a S25FL129P......0.\n\nCorresponding to flashrom svn r1838.\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": "7608d368fcd566a60ab47755eb1c9263ca9d7b35",
      "tree": "89281c1e08bcc265ac38ba1f1497462f97627fbc",
      "parents": [
        "18f509780a3eb76ffe31b4bfc24016c408dec537"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 05 23:28:47 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 05 23:28:47 2014 +0000"
      },
      "message": "ichspi: fix missing set_addr on erases and possible crossings of 256 B boundaries\n\nApparently the erase function did never set any address before issuing the\nerase commands. How could this ever work?\nAlso, according to PCH documentation crossing 256 byte boundaries is invalid\nand may cause wraparound due to the flash chip\u0027s pages. Check for this on\nreads as well as writes.\n\nThanks to Vladimir \u0027φ-coder/phcoder\u0027 Serbinenko for noticing these issues\nand providing the initial patch.\n\nCorresponding to flashrom svn r1837.\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": "18f509780a3eb76ffe31b4bfc24016c408dec537",
      "tree": "a302ee3839d61da639b806e99b7aa7c9ec2fb43a",
      "parents": [
        "03a9c3c1bbfd1548888ff6386c30165efc4c7c00"
      ],
      "author": {
        "name": "David Riley",
        "email": "davidriley@chromium.org",
        "time": "Tue Aug 05 22:16:01 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 05 22:16:01 2014 +0000"
      },
      "message": "linux_spi: properly convert pointers to kernel\u0027s u64\n\nFor arm64 with 32-bit userspace, pointers such as 0xff96ebf8 were\nincorrectly getting converted to u64_t 0xffffffffff96ebf8 in the\nspi_ioc_transfer struct which was causing ioctl()s to be rejected by\nthe kernel. With this patch we first cast to uintptr_t (to avoid\nwarnings on architectures where char * are not 64b wide) and then to\nuint64_t which is always big enough and does not produce warnings.\n\nThis patch is taken from ChromiumOS\u0027\nChange-Id: I5a15b4ca5d9657c3cb1ddccd42eafd91c852dd26\n\nCorresponding to flashrom svn r1836.\n\nSigned-off-by: David Riley \u003cdavidriley@chromium.org\u003e\nReviewed-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "03a9c3c1bbfd1548888ff6386c30165efc4c7c00",
      "tree": "f10ff5edf6a8424d672f6774a00d03b51308629b",
      "parents": [
        "7de939325b1c984eefdc65d079b6fe4416c86a12"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 03 14:15:14 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 03 14:15:14 2014 +0000"
      },
      "message": "Add support for a bunch of 29GL parallel flash chips\n\n29GL chips use a new 3-Byte device ID probing function at addresses\n0x01, 0x0E, 0x0F.\n\nFlash chip families supported by this method include...\n - EON EN29GL\n - Gigadevice GD29GL (if they really exist)\n - ISSI (PMC) IS29GL\n - Macronix MX29GL (+MX68GL1G0F)\n - Spansion S29GL (+S70GL02G)\n - Winbond W29GL\n\nThis patch adds respective flash chip definitions for chips up to 16 MB from\nEon, ISSI, Macronix and Winbond. Bigger chips as well as those from\nGigadevice and Spansion are left out.\n\nCorresponding to flashrom svn r1835.\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": "7de939325b1c984eefdc65d079b6fe4416c86a12",
      "tree": "7e5bf19e1e0ccf8cd5c8802692ce85e68f074c9e",
      "parents": [
        "ef3ac8ac17eac9d2041ea9c9e711a9b059412b59"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 03 13:05:45 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 03 13:05:45 2014 +0000"
      },
      "message": "Add support for Atmel AT49LH004 and AT49LH00B4\n\nAlso, slightly refine the definition of AT49LH002.\n\nCorresponding to flashrom svn r1834.\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": "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": "a5bcbceb581f27cfc0055369d3dd9cfd1ae00bfa",
      "tree": "5daecd880a16b7011be28e064fb7550f3e6b7e58",
      "parents": [
        "82b6ec1df30d3fca55547f230c76718d6e613b2a"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 19 22:03:29 2014 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 19 22:03:29 2014 +0000"
      },
      "message": "Rename programmer registration functions\n\nRegister_programmer suggests that we register a programmer. However,\nthat function registers a master for a given bus type, and a programmer\nmay support multiple masters (e.g. SPI, FWH). Rename a few other\nfunctions to be more consistent.\n\nCorresponding to flashrom svn r1831.\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": "82b6ec1df30d3fca55547f230c76718d6e613b2a",
      "tree": "bf2c2e3b17f8673d2857b0d7021fc34d0c124bef",
      "parents": [
        "0e0a0dc05d8647ec5800ec439b7a8cb0586caa50"
      ],
      "author": {
        "name": "Martin Roth",
        "email": "martin.roth@se-eng.com",
        "time": "Tue Jul 15 13:50:58 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jul 15 13:50:58 2014 +0000"
      },
      "message": "Add support for AMD Bolton chipset\n\nSPI controller on the bolton chipset uses the same 3-bit speed\nsettings as Yangtze, but is otherwise the same as the Hudson chips.\nNote that the Bolton RRG doesn\u0027t specify a speed setting for the bit\nsetting of 0b111, so I\u0027m assuming that it\u0027s the same setting as\nYangtze.\n\nCorresponding to flashrom svn r1830.\n\nSigned-off-by: Martin Roth \u003cmartin.roth@se-eng.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": "0e0a0dc05d8647ec5800ec439b7a8cb0586caa50",
      "tree": "959356c3027e3008ee0d0b5d5b940bf4a267234c",
      "parents": [
        "9d8f53d8704685af654d41d789692820f0278010"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jul 15 13:50:17 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jul 15 13:50:17 2014 +0000"
      },
      "message": "Refine messages regarding AMD FCH flash protections\n\nCorresponding to flashrom svn r1829.\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": "9d8f53d8704685af654d41d789692820f0278010",
      "tree": "b689940270e5522eab748443f18195d048db7341",
      "parents": [
        "1687854423c34aeeaece48bdd9a52a28d01584f0"
      ],
      "author": {
        "name": "Dima Veselov",
        "email": "kab00m@lich.phys.spbu.ru",
        "time": "Mon Jul 14 18:04:15 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jul 14 18:04:15 2014 +0000"
      },
      "message": "Add Board Enable for ASUS Vintage 2 PH1 (P5LD2-MQ)\n\nASUS Vintage 2 PH1 barebone systems have a mainboard from the P5LD2 series,\nnamely the P5LD2-MQ (although it is labeled V2-PH1). Pin 16 GPIO needs to\nbe raised to enable write/erase like on other boards of the series.\nNB: it uses a ICH7DH southbridge and hence requires different PCI IDs.\n\nCorresponding to flashrom svn r1828.\n\nSigned-off-by: Dima Veselov \u003ckab00m@lich.phys.spbu.ru\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "1687854423c34aeeaece48bdd9a52a28d01584f0",
      "tree": "b0dee908a0c3173b9197347235dae532b04deceb",
      "parents": [
        "eff156ef6cc33c431429b20688af6aaf9c6a0ee1"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 23:53:40 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 23:53:40 2014 +0000"
      },
      "message": "Improve messages on failed erases with default verbosity\n\nWithout this...\nErasing and writing flash chip... ERASE FAILED at 0x00001000! Expected\u003d0xff, Read\u003d0xb4, failed byte count from 0x00000000-0x0000ffff: 0xef09\nERASE FAILED!\nReading current flash chip contents... done.\n\u003cloooooong break while the next eraser and writing is tried\u003e\nErase/write done.\nVerifying flash... VERIFIED.\n\nEven if there is not a long temporal pause, it is very confusing for\nthe user to first see a failed erase, followed by a read, a done\nmessage and eventually the verification message.\nThis patch inserts \"Looking for another erase function.\" where there is\njust a silent pause above.\n\nCorresponding to flashrom svn r1827.\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": "eff156ef6cc33c431429b20688af6aaf9c6a0ee1",
      "tree": "84fed33746ecda373b461ef93c0071779a625f04",
      "parents": [
        "6a18a93bd574200e83c3f731be16505d798d4def"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 17:06:11 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 17:06:11 2014 +0000"
      },
      "message": "Fix Intel FWH IDSEL message printing\n\nThis should get rid of extra and/or missing line breaks in verbose(+)\noutput on Intel chipsets.\n\nCorresponding to flashrom svn r1826.\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": "6a18a93bd574200e83c3f731be16505d798d4def",
      "tree": "1658f5b85f29ee32b34feaa789b9028fab507506",
      "parents": [
        "9972d15e12a1706d280e427becd80d1f79675859"
      ],
      "author": {
        "name": "Daniele Forsi",
        "email": "dforsi@gmail.com",
        "time": "Sun Jul 13 14:53:45 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 14:53:45 2014 +0000"
      },
      "message": "Add support for Macronix MX29F022(N)B and MX29F022(N)T\n\nThe MX29F022(N)T definition was successfully tested by Daniele.\n\nCorresponding to flashrom svn r1825.\n\nSigned-off-by: Daniele Forsi \u003cdforsi@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": "9972d15e12a1706d280e427becd80d1f79675859",
      "tree": "a2e8e2fd20756392fe86c8154dc610672c8e4f2d",
      "parents": [
        "440057a82e42c74c8769cfdd548fd93699bc3178"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 12:52:15 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 12:52:15 2014 +0000"
      },
      "message": "Fix garbage handling in DMI strings\n\nPreviously we tried to replace garbage characters with \u003cspace\u003e directly in\nthe read-only memory-mapped SMBIOS area(!). This could never have\nworked for any DMI strings with garbage and results in a segfault on\nmachines with such strings.\n\nThanks to Brian Rak (Supermicro X10SLE-F) and John Pohlman (HP XW9400)\nfor reporting this issue.\n\nWith this patch the strings are duplicated within dmi_string() already,\njust before we sanitize them. Also, the limit variable used everywhere\npoints to the first invalid byte address. Refine respective checks\naccordingly.\n\nCorresponding to flashrom svn r1824.\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": "440057a82e42c74c8769cfdd548fd93699bc3178",
      "tree": "f6f9b650aa97eeffbcc8fc3a2d0bedfc3254ca66",
      "parents": [
        "1b0e9fc8ea313cdffc4d38548cb0c8577481a467"
      ],
      "author": {
        "name": "Martin Roth",
        "email": "gaumless@gmail.com",
        "time": "Sun Jul 13 00:05:07 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jul 13 00:05:07 2014 +0000"
      },
      "message": "Add support for Macronix MX25U12835F\n\nCorresponding to flashrom svn r1823.\n\nSigned-off-by: Martin Roth \u003cgaumless@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": "1b0e9fc8ea313cdffc4d38548cb0c8577481a467",
      "tree": "bcd073d982639a0e055f777a48154bf026b99d18",
      "parents": [
        "600576b43d7f76adc49913a7a7dd21e318b063cf"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 16 22:36:17 2014 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 16 22:36:17 2014 +0000"
      },
      "message": "EEPROM support: handle implicit erase\n\nAdd support for EEPROMs with 1 byte granularity and implicit erase on\nwrite. flashrom will not try to erase before write on these chips.\nExplicitly requested erase with -E is done by writing 0xff.\n\nCorresponding to flashrom svn r1822.\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": "600576b43d7f76adc49913a7a7dd21e318b063cf",
      "tree": "58dda54c79c37a339ce3cfbdf6d03fdbf413b81c",
      "parents": [
        "7ba3d6ce160ed46913a63283e0b8822b80985044"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jun 12 22:57:36 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jun 12 22:57:36 2014 +0000"
      },
      "message": "Add selfcheck_board_enables()\n\nCheck for NULL termination of the array, that each board has the two\nmain PCI ID sets defined, that coreboot vendor and model fields are either\nboth set or unset, and that at least either an enable function or a max\ndecode size is available.\n\nCorresponding to flashrom svn r1821.\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": "7ba3d6ce160ed46913a63283e0b8822b80985044",
      "tree": "56995fe973def1b5d9a10931bc292c371e194aaf",
      "parents": [
        "6ad6e01e9b961fd5b25cc4d69319a7d29f110684"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jun 12 21:07:03 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jun 12 21:07:03 2014 +0000"
      },
      "message": "Remove MCP6/7/8 SPI log requests\n\nWe got enough (and no one is looking at them for the time being anyway).\nAlso, return an error code in the case no bus type could be detected.\n\nCorresponding to flashrom svn r1820.\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": "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": "a60d408a78be0e0d34dda616977489a307cb98b6",
      "tree": "012c6fd5e70fa651b144f556c7e3a0b3f605d18a",
      "parents": [
        "2a10e70cd3b3e974c173b035dae01bf53899c228"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Jun 04 16:17:03 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Jun 04 16:17:03 2014 +0000"
      },
      "message": "Add support for Sanyo LE25FW106\n\nAlso, add spi_disable_blockprotect_bp1_srwd().\n\nOriginally written and tested by The Raven \u003coriginalraven@hotmail.com\u003e.\n\nCorresponding to flashrom svn r1818.\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": "2a10e70cd3b3e974c173b035dae01bf53899c228",
      "tree": "877ba806d8a70e36baf003ed8130a38b2bbaaf4e",
      "parents": [
        "05aa0f4014f722696da407cb7172fbb7d817351e"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:46:02 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:46:02 2014 +0000"
      },
      "message": "print_wiki.c: there is only one way to represent time\n\nISO 8601.\n\nCorresponding to flashrom svn r1817.\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": "05aa0f4014f722696da407cb7172fbb7d817351e",
      "tree": "bfd2cbdfca28893acf03e3b569eb83a39f0f177d",
      "parents": [
        "428ba2b80775ee859d189318b113d08ee1b7fd0d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:45:57 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:45:57 2014 +0000"
      },
      "message": "print_wiki.c: refine header and include a legend explaining the test state representation\n\nCorresponding to flashrom svn r1816.\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": "428ba2b80775ee859d189318b113d08ee1b7fd0d",
      "tree": "204ad0caac12a4ee39a4c3a4fb175790573e847b",
      "parents": [
        "265fcac1b64154b8419c469ded75ec77d6c87828"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:34:58 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jun 02 00:34:58 2014 +0000"
      },
      "message": "Utilize new tested states for chipsets as well\n\nMark all ME-enabled Intel chipsets as DEP, alter print.c accordingly\n(print_wiki.c was already prepared). And realign the chipset enable\ntable when we are at it already.\n\nCorresponding to flashrom svn r1815.\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": "0ccec8f21228fab9e5e57c9392f6feafbf296ef1",
      "tree": "acd2e0d426a3ec0b7829df72f6a0cbb8a9c232e2",
      "parents": [
        "72d42f87a9a01a1d27fba593ce4569331e079cbe"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 23:49:03 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 23:49:03 2014 +0000"
      },
      "message": "Move global io_base_addr into compilation units\n\nCorresponding to flashrom svn r1813.\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": "c9d8b278256a18230582d4478c863ea9e5d61766",
      "tree": "43a35e330eee98395576356226ad0fc8618eee32",
      "parents": [
        "7f0f3fab4531c975245bf8f3553ff380ac802fc7"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 13:22:35 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 13:22:35 2014 +0000"
      },
      "message": "Add support for Atmel (now Adesto) AT25DL081 and AT25DL161\n\nCorresponding to flashrom svn r1810.\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": "f2756fa240ccf5b2fe888c4abc9c4cdf33932e3a",
      "tree": "c35a280fcd8ce8bb56337f783a12eea34203cc6d",
      "parents": [
        "1181ee251a831be43881d5a6403c33c4229d2ade"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 02:21:02 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 02:21:02 2014 +0000"
      },
      "message": "Combine block_erase*_en29lv640b and block_erase*_m29f400bt respectively\n\nThis patch combines two identical block and chip erase functions respectively:\n - Merge block_erase_m29f400bt and block_erase_en29lv640b into\n   erase_block_shifted_jedec.\n - Merge block_erase_chip_m29f400bt and block_erase_chip_en29lv640b into\n   erase_chip_block_shifted_jedec.\n\nLeave their implementations in en29lv640b.c for now.\n\nCorresponding to flashrom svn r1808.\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": "1181ee251a831be43881d5a6403c33c4229d2ade",
      "tree": "e7b240af0ef343511b247d5689f848d106b09c8d",
      "parents": [
        "becda742dc49fb2a2d3e5747f326d56b756852ae"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 02:13:23 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 02:13:23 2014 +0000"
      },
      "message": "print.c: improve device printing\n\nAdd headers and columns (i.e. print device entries in a table-like manner).\nAlso, add and use test_state_to_text() to support the new test states.\n\nCorresponding to flashrom svn r1807.\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": "becda742dc49fb2a2d3e5747f326d56b756852ae",
      "tree": "2131a17a6a505dc863916f12b2572cd88c86d9b4",
      "parents": [
        "0ab1e5d5e3d37aa97eb4ae36caac06a800c86654"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 30 19:34:00 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 30 19:34:00 2014 +0000"
      },
      "message": "Fix PMC Pm25LV512 and Pm25LV010 probing\n\nApparently PMC did not understand the purpose of the JEDEC\ncontinuation code. These chips reply to RES (the only supported ID\ncommand) with the prefix-less vendor ID, a device ID, eventually\nfollowed by the continuation byte for the vendor ID.\n\nThis fix uses only the first two bytes instead of appending the\ncontinuation code to the device ID. The problem was reported by The\nRaven who also tested the fix on a Pm25LV010 (with an imprint of\n\"Pm25LV010E\").\n\nCorresponding to flashrom svn r1806.\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": "0ab1e5d5e3d37aa97eb4ae36caac06a800c86654",
      "tree": "c5b314cb8b40888ee7cd4a2ef7d8bd8f7953aaeb",
      "parents": [
        "618d8972019e12e6c7eadd5a330774900e1c2f0f"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu May 29 11:51:24 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu May 29 11:51:24 2014 +0000"
      },
      "message": "jedec.c: constify a bit more\n\nAlso, include chipdrivers.h to find conflicting types between exported\ndeclarations and actual implementations.\n\nCorresponding to flashrom svn r1805.\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": "618d8972019e12e6c7eadd5a330774900e1c2f0f",
      "tree": "1825be549ec26a7e6b2fed8982edcdc53d572088",
      "parents": [
        "0df844668f1a22f2213a53fbc3e0c9bc2f173b10"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed May 28 13:02:13 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed May 28 13:02:13 2014 +0000"
      },
      "message": "print_wiki: simplify template handling\n\nAdd test_state_to_template() and use it everywhere to select the correct\ntemplate. This also enables the use of the new states in all tables.\n\nCorresponding to flashrom svn r1804.\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": "0df844668f1a22f2213a53fbc3e0c9bc2f173b10",
      "tree": "be7f11b60a21440482b93901985259620eda690b",
      "parents": [
        "12f3d51a8eec91f04fdd67652114d6d8529dc8b8"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Tue May 27 22:10:15 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue May 27 22:10:15 2014 +0000"
      },
      "message": "CID1129998/1129999: Unchecked return value from library\n\nCheck return values of various fcntl() invocations in\nserialport_config(), serialport_read_nonblock() and\nserialport_write_nonblock().\n\nAlso, remove some superfluous print conversion specifiers and refine\nmessages.\n\nCorresponding to flashrom svn r1803.\n\nSigned-off-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "12f3d51a8eec91f04fdd67652114d6d8529dc8b8",
      "tree": "886fdfa5be8927d516c8922f537a59dc461c78e7",
      "parents": [
        "85f09f72f18f14eb3b06dcfbc448e16145b75fd2"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue May 27 21:27:27 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue May 27 21:27:27 2014 +0000"
      },
      "message": "Rename some spi_prettyprint_status_register_* functions\n\nSpi_prettyprint_status_register_default_bpX -\u003e\nspi_prettyprint_status_register_bpX_srwd\n\nWhy was the default in there anyway? :)\n\nCorresponding to flashrom svn r1802.\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": "85f09f72f18f14eb3b06dcfbc448e16145b75fd2",
      "tree": "72094e403ba57a0e9746ce6b7230b635d1198f52",
      "parents": [
        "df64a42d6d6232af9aac20c7d2aedb4d527eaeef"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue May 27 21:27:14 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue May 27 21:27:14 2014 +0000"
      },
      "message": "Add support for ESMT F25L32PA\n\nCorresponding to flashrom svn r1801.\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": "df64a42d6d6232af9aac20c7d2aedb4d527eaeef",
      "tree": "ca9b3c08626c7c4a3dacefab3824b40bcf6f896f",
      "parents": [
        "96658be4073aaa55101b17e95c7b704a2cc7c83a"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue May 27 00:06:14 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue May 27 00:06:14 2014 +0000"
      },
      "message": "Fix various tiny problems in verify_range()\n\nFirst of all, fix CID1130010: Resource leak as reported by Stefan Reinauer.\nAlternatively to Stefan\u0027s approach, just move the malloc() out of the scope.\n\nAdditionally, get rid of an unnecessary exit(1) and correctly return -1 in all\nerror cases as documented.\n\nCorresponding to flashrom svn r1800.\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": "96658be4073aaa55101b17e95c7b704a2cc7c83a",
      "tree": "4240d774ca35015fb68fb32a2f2c2b0a2ca4b1ec",
      "parents": [
        "6455dff07b06e3b870f75e88652e0501810bd104"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon May 26 22:05:31 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon May 26 22:05:31 2014 +0000"
      },
      "message": "Fix selfcheck of various arrays\n\nStefan Reinauer has reported ridiculous NULL checks for arrays in our\nself_check function found by Coverity (CID1130005). This patch removes\nthe useless checks but keeps and fixes the one responsible for the\nflashchips array by exporting the array size in a new constant.\n\nCorresponding to flashrom svn r1799.\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": "6455dff07b06e3b870f75e88652e0501810bd104",
      "tree": "0ec4cf1c51ffbd549717d6c030422e37cddddca7",
      "parents": [
        "ffb0cf649c1c66c85441314434cd1cd57f89fe02"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon May 26 00:36:24 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon May 26 00:36:24 2014 +0000"
      },
      "message": "Add two new states to enum test_state and use it for flashchips\n\nThe new enum test_state looks like this:\nenum test_state {\n\tOK \u003d 0,\n\tNT \u003d 1,\t/* Not tested */\n\tBAD,\t/* Known to not work */\n\tDEP,\t/* Support depends on configuration (e.g. Intel flash descriptor) */\n\tNA,\t/* Not applicable (e.g. write support on ROM chips) */\n};\n\nThe second new state \u0027NA\u0027 is introduced, among other things, to indicate\nthe erase and write states of real ROMs correctly. This is also implemented\nby this patch and required to exchange the previous bit mask in struct\nflashchip with a new struct containing an enum test_state for each operation.\nThe -L output is changed accordingly to print \u0027-\u0027 in the case of an N/A state\nand the wiki output uses a new template producing a greyed out cell.\nPrevious users of enum test_state are not affected by this change (yet).\n\nCorresponding to flashrom svn r1798.\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": "ffb0cf649c1c66c85441314434cd1cd57f89fe02",
      "tree": "5bfba5b41be508abf21400e0110e2bfeb069b8db",
      "parents": [
        "33491b8f218455f901bc25c78e7969cbdc75c6f5"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 25 07:47:47 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 25 07:47:47 2014 +0000"
      },
      "message": "Constify dediprog\u0027s write functions too\n\nI forgot doing so in r1789 which broke compiling the dediprog module with\n-Werror (which is default). Thanks to Mike Hibbett for reporting this.\n\nCorresponding to flashrom svn r1797.\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": "33491b8f218455f901bc25c78e7969cbdc75c6f5",
      "tree": "84ad70dd8add13d7c695f64c58d34e8cd3ea82b4",
      "parents": [
        "21071b00e35e0e20861c8b9337675c19c8459983"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 18 21:36:04 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 18 21:36:04 2014 +0000"
      },
      "message": "Add support for Sanyo LE25FW406A\n\nNo datasheet available. Tested read, write and all erasers separately by\nThe Raven. He did also provide the patch but refused to sign it off.\n\nCorresponding to flashrom svn r1796.\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": "21071b00e35e0e20861c8b9337675c19c8459983",
      "tree": "9dd1c7b6bf85ac1d675cd7f6e41876503bb5495d",
      "parents": [
        "31402ee6872ce2880f7fe98dc933e5bc73e8613c"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 16 21:39:48 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 16 21:39:48 2014 +0000"
      },
      "message": "sbxxx: Add spispeed parameter\n\nAllow to set the SPI clock frequency on AMD chipsets with a programmer\nparameter. If the parameter is given (and matches a possible value), the\nSPI clock is set temporarily. Both registers are restored on programmer\nshutdown.\n\nExample: ./flashrom -p internal:spispeed\u003d\"33 MHz\" -V\n\nPossible values for spispeed are \"16.5 MHz\", \"22 MHz\", \"33 MHz\", \"66 MHz\",\n\"100 MHZ\" and \"800 kHz\" depending on the chipset generation.\n\nCorresponding to flashrom svn r1795.\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": "31402ee6872ce2880f7fe98dc933e5bc73e8613c",
      "tree": "e86b4bb62924ef524900d377dd3cc908a53a992e",
      "parents": [
        "d5b2aef69d4f4ab5e2ea69e3244e8e8e9a5221b9"
      ],
      "author": {
        "name": "Wei Hu",
        "email": "wei@aristanetworks.com",
        "time": "Fri May 16 21:39:33 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 16 21:39:33 2014 +0000"
      },
      "message": "sbxxx: Add support for new AMD SPI controller\n\nThis patch adds support for the \"SPI 100\" SPI engine in Yangtze FCHs\n(found in Kabini and Temash).\n\nTested reading/writing on ASRock IMB-A180 and PC Engines\u0027 APU board.\n\nCorresponding to flashrom svn r1794.\n\nSigned-off-by: Wei Hu \u003cwei@aristanetworks.com\u003e\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": "d5b2aef69d4f4ab5e2ea69e3244e8e8e9a5221b9",
      "tree": "51f4f61e1d20bb1b056bffa2196a21cda71faddd",
      "parents": [
        "7141b986497504727d2510c2d5cd98cb059056ce"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 16 21:39:28 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 16 21:39:28 2014 +0000"
      },
      "message": "sbxxx: Cleanup\n\n - Move programmer definition to the top.\n - Rewrite array accesses to use indices instead of using pointer arithmetic.\n - Move length check and opcode extraction to a function.\n - Move IMC parameter handling into existing IMC handling function.\n - Split comparing and resetting the FIFO pointer.\n\nCorresponding to flashrom svn r1793.\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": "7141b986497504727d2510c2d5cd98cb059056ce",
      "tree": "0baa0faba2c3b478cf20500dcab3d0ae820f1f39",
      "parents": [
        "a1e5374c894680f6cfad6f2431012f31574f5caa"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 16 17:52:04 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 16 17:52:04 2014 +0000"
      },
      "message": "AT45DB: fix read functions\n\nThis fixes segfaults on reads (implicit reads on writes too), ouch.\nThanks to The Raven for reporting the problem and testing my patch, and\nto Alexander Irenkov for providing a workable fix for it additionally.\n\nThere were actually two problems:\n1) The loop conditions were bogus which could lead to read errors\n   (e.g. on implicit erase verifications).\n2) The offset used within the read buffers provided to spi_nbyte_read()\n   and memcpy() were not starting at 0 but the offset of the block\n   within the flash chip (which has nothing to do with read buffer in\n   most cases).\n\nThis patch works similarly to Alexander\u0027s but is intended to be\nmore readable.\n\nCorresponding to flashrom svn r1792.\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": "a1e5374c894680f6cfad6f2431012f31574f5caa",
      "tree": "06313b45843d186697c32fcd559b29c09329ab7b",
      "parents": [
        "a58f6e9b547fd1930a673c526db4476f2ccfaa77"
      ],
      "author": {
        "name": "Jurij Munda",
        "email": "jurij.munda@uni-mb.si",
        "time": "Wed May 14 13:19:50 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed May 14 13:19:50 2014 +0000"
      },
      "message": "Add support for Sanyo LE25FU406B\n\nIt is very similar to LE25FW418A, except for HD_READ support (that\nis not implemented in flashrom anyway yet) and allowed voltage range.\n\nProbing, erasing, reading and writing has been tested.\n\nThis chip is found on Seagate Constellation hard drives.\n\nCorresponding to flashrom svn r1791.\n\nSigned-off-by: Jurij Munda \u003cjurij.munda@uni-mb.si\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "a58f6e9b547fd1930a673c526db4476f2ccfaa77",
      "tree": "e5023db15f8d89dd681843c8b2e195476445f5c2",
      "parents": [
        "f20b7beff054eb316088d590094d9efbc68dbee1"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat May 10 09:25:44 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat May 10 09:25:44 2014 +0000"
      },
      "message": "Refine messages related to erase/write recovery\n\nWe are more verbose inside erase_and_write_flash() although it does not\nmatter as much as at the end of the whole process in doit().\n\nNew output for the non-fatal (i.e. read-protected + successful recovery read) case:\n\nReading old flash chip contents... done.\nErasing and writing flash chip... spi_block_erase_d8 failed during command execution at address 0x8000\nReading current flash chip contents... done. spi_chip_erase_c7 failed during command execution\nFAILED!\nUh oh. Erase/write failed. Checking if anything has changed.\nReading current flash chip contents... done.\nGood, writing to the flash chip apparently didn\u0027t do anything.\nPlease check the connections (especially those to write protection pins) between\nthe programmer and the flash chip. If you think the error is caused by flashrom\nplease report this on IRC at chat.freenode.net (channel #flashrom) or\nmail flashrom@flashrom.org, thanks!\n\nCorresponding to flashrom svn r1790.\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": "f20b7beff054eb316088d590094d9efbc68dbee1",
      "tree": "6324be451385c9f9cea27381f35f300fbaa7f454",
      "parents": [
        "20da4aa82cc11f25a6a4a52fd2bed219e6e1d829"
      ],
      "author": {
        "name": "Mark Marshall",
        "email": "mark.marshall@omicron.at",
        "time": "Fri May 09 21:16:21 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri May 09 21:16:21 2014 +0000"
      },
      "message": "Add \u0027const\u0027 keyword to chip write and other function prototypes\n\nCorresponding to flashrom svn r1789.\n\nInspired by and mostly based on a patch\nSigned-off-by: Mark Marshall \u003cmark.marshall@omicron.at\u003e\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": "20da4aa82cc11f25a6a4a52fd2bed219e6e1d829",
      "tree": "37658633f881d908f9781bdf9e7b82d1395dac39",
      "parents": [
        "f3607d191aefa5bf4ffb301652be2f4e242eb88c"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed May 07 22:07:23 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed May 07 22:07:23 2014 +0000"
      },
      "message": "Remove programmer_shutdown() from doit()\n\nBecause the programmer initialization that has to be called way\nearlier and independently elsewhere, it does not make a lot of sense\nto deinit within doit(). Also, free the logfile name at the end of\nmain() to catch more execution paths and because this moves it to\nthe other cleanup instructions.\n\nCorresponding to flashrom svn r1788.\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": "f3607d191aefa5bf4ffb301652be2f4e242eb88c",
      "tree": "044d2d50e1aef71752b519a87fa8f25a5482da4f",
      "parents": [
        "598968a687f7853c1726ad8aa8621aac75708d3e"
      ],
      "author": {
        "name": "Idwer Vollering",
        "email": "vidwer@gmail.com",
        "time": "Wed May 07 15:25:04 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed May 07 15:25:04 2014 +0000"
      },
      "message": "Add support for SST25LF020A\n\nTested on hardware by Idwer too.\n\nCorresponding to flashrom svn r1787.\n\nSigned-off-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "598968a687f7853c1726ad8aa8621aac75708d3e",
      "tree": "c0d895e241161ea4be7a8d52b2176cbc836eda60",
      "parents": [
        "43ddef0fcde5a4010c003f2add422d4cb73ae561"
      ],
      "author": {
        "name": "Nikolay Martynov",
        "email": "mar.kolya@gmail.com",
        "time": "Sun May 04 21:44:13 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 04 21:44:13 2014 +0000"
      },
      "message": "Support for Spansion S25FL132K and S25FL164K\n\nTested with actual S25FL164K via Arduino SPI.\n\nCorresponding to flashrom svn r1786.\n\nSigned-off-by: Nikolay Martynov \u003cmar.kolya@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "43ddef0fcde5a4010c003f2add422d4cb73ae561",
      "tree": "816861b6d285029ceca7f68ac8865a92b3de72dc",
      "parents": [
        "4e7f36ec30bbc428beace0c99e83708e45274287"
      ],
      "author": {
        "name": "Jason Harper",
        "email": "jharper@iseis.com",
        "time": "Sun May 04 00:55:24 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 04 00:55:24 2014 +0000"
      },
      "message": "Add support for SST25WF080\n\nAlso, refine status register prettyprinting and unlocking of the whole family.\n\nCorresponding to flashrom svn r1785.\n\nSigned-off-by: Jason Harper \u003cjharper@iseis.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": "4e7f36ec30bbc428beace0c99e83708e45274287",
      "tree": "3d6d66452d111de88a0e691f639a313b77f73f9c",
      "parents": [
        "c2eec2c92015785ead5a5bcba4ce3a42501084c8"
      ],
      "author": {
        "name": "Michael Coppola",
        "email": "michael.n.coppola@gmail.com",
        "time": "Sat May 03 23:01:18 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat May 03 23:01:18 2014 +0000"
      },
      "message": "Add support for Macronix MX23L3254 mask ROM\n\nCorresponding to flashrom svn r1784.\n\nSigned-off-by: Michael Coppola \u003cmichael.n.coppola@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": "c2eec2c92015785ead5a5bcba4ce3a42501084c8",
      "tree": "830a7bc9e2b33e1e56809979affa14d6ca0915bd",
      "parents": [
        "f80419c75a344b303275e380add3b8cb750bab9d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat May 03 21:33:01 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat May 03 21:33:01 2014 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 20\n\nTested mainboards:\nOK:\n - abit BX6 2.0\n   Reported by Stefan Tauner\n - Acer EM61SM/EM61PM (used in Acer Aspire T180)\n   Reported by Benjamin Bellec\n - ADLINK Express-HR\n   Reported by Obermair Thomas\n - ASUS M3N-H/HDMI\n   Reported by Franc Serres\n - Attro G5G100-P\n   Reported by Christoph Grenz\n - ASRock 960GM-GS3 FX\n   Reported by Fuley Istvan\n - Elitegroup P6BAP-A+ (V2.2)\n   Reported by Arnaldo Pirrone\n - Elitegroup GeForce7050M-M (V2.0)\n   Reported by Leif Middelschulte\n - Fujitsu D3041-A1 (used in ESPRIMO P2560)\n   Reported by Daggi Duck\n - GIGABYTE GA-8S648\n   Reported by TeslaBIOS\n - GIGABYTE GA-970A-D3P (rev. 1.0)\n   Reported by Jean-Francois Pirus\n - GIGABYTE GA-B85M-D3H\n   Reported by Mladen Milinković\n - GIGABYTE GA-X79-UD3\n   Reported by Jeff O\u0027Neil\n - GIGABYTE GA-X79-UP4 (rev. 1.0)\n   Reported by George Spelvin\n - GIGABYTE GA-Z68MA-D2H-B3 (rev. 1.3)\n   Reported by Vangelis Skarmoutsos\n - GIGABYTE GA-Z87-HD3\n   Reported by virii5\n - Lenovo Tilapia CRB\n   Reported by jenkins56 on IRC\n - MSI GT60-2OD (notebook, only with layout patches)\n   Reported by Vasiliy Vylegzhanin\n - MSI MS-6704 (845PE Max2 PCB 1.0) (Pure Version w/o raid)\n   Reported by professorll\n - MSI MS-7399 1.1 (used in Acer Aspire M5640/M3640)\n   Reported by Koen Rousseau\n - MSI MS-7125 (K8N Neo4(-F/FI/FX))\n   We had a board enable for that one for years, but it was not (and still is not)\n   completely clear which boards are covered.\n - MSI MS-7522 (MSI X58 Pro-E)\n   Reported by Gianluigi Tiesi\n - PCWARE APM80-D3\n   Reported by César Augusto Jakoby\n - Pegatron IPP7A-CP\n   Reported by Илья Шипко\n - Supermicro H8QME-2\n   Reported by Greg Tippitt\n - Supermicro X7SPA-H\n   Reported by Kyle Bentley\n - Supermicro X7SPE-HF-D525\n   Reported by Micah Anderson\n - Supermicro X8DTE\n   Reported by Mark Nipper\n - Supermicro X8SIL-F\n   Reported by Peter Samuelson\n - ZOTAC IONITX-A (-E) version\n   Reported by Maciej Wroniecki\nNOT OK:\n - Supermicro X10SLM-F\n   Reported by Micah Anderson\n\nFlash chips:\n - Atmel AT29C020 to PREW (+PREW)\n   It was marked like that in the past, but I could not find the reason why the\n   test bits were reset. Urja Rannikko tested it again and it still works.\n - Eon EN25F10 to PREW (+PREW)\n   Reported by Stolmár Tamás\n - Eon EN25QH64 to PR (+PR)\n   Reported by Vladimir \u0027φ-coder\u0027 Serbinenko\n - GigaDevice GD25Q32(B) to PREW (+PREW)\n   Reported by mrnuke\n - Macronix MX25L512(E)/MX25V512(C) to PREW (+PREW)\n   Reported by Jamie Nichol\n - Macronix MX25L2005(C) to PREW (+PREW)\n   Reported by Давыдов Дмитрий\n - Micron/Numonyx/ST N25Q064..1E to PREW (+PREW)\n   Reported by Paolo Zambotti\n - Pmc Pm25LD010(C) to PREW (+PREW)\n   Reported by Vasile Ceteras\n - Micron/Numonyx/ST M25P16 to PREW (+EW)\n   Reported by raven\n - Micron/Numonyx/ST M25PX64 to PREW (+W)\n   Reported by Zaolin\n - SST SST25VF020B to PREW (+PREW)\n   Reported by Michaël Zweers\n - SST SST49LF040 to PREW (+W)\n   Reported by Oskar Enoksson\n - Add support for MX25L3273E (evil twin of MX25L3205 et al.)\n   Also, add MX25L1673 and MX25L6473E to the names of their twins and\n   add a note about MX25L8073E.\n - Winbond W25X32 to PREW (+REW)\n   Reported by The Raven\n - Winbond W29C010 etc. to PREW (+W)\n   Reported by san\n\nChipsets tested OK:\n - Intel NM70 (8086:1e5f)\n   Reported by mrnuke\n - Intel C204 (8086:1c54)\n   Reported by Vasiliy Vylegzhanin\n - Intel QM67 (8086:1c4f)\n   Reported by Obermair Thomas\n - Intel HM77 (8086:1e57)\n   Reported by Vasiliy Vylegzhanin\n - Intel B85 (8086:8c50)\n   Reported by Mladen Milinković\n - Intel HM87 (8086:8c4b)\n   Reported by Vasiliy Vylegzhanin\n - Intel Z87 (8086:8c44)\n   Reported by virii5\n - NVIDIA MCP51 (10de:0261)\n   Reported by Marcin Kościelnicki\n - SiS 648 (1039:0648)\n   Reported by TeslaBIOS\n\nMiscellaneous:\n - Mark ARM-USB-TINY-H as tested in ft2232_spi (reported by _nanodev_).\n - getrevision.sh: Ignore failing date calls.\n - getrevision.sh: Fix -u and -l for older git versions which require \u003d for the\n   git log grep parameter.\n - Corrected K8T Neo2-F entries due to a report from Stelios Tsampas.\n - Add \"-p internal\" to output that requests users to send flashrom -V logs.\n - Add Macbook2,1, Thinkpad X230, EasyNote LM85 to laptop whitelist.\n - Tiny other stuff.\n\nCorresponding to flashrom svn r1783.\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": "f80419c75a344b303275e380add3b8cb750bab9d"
}
