)]}'
{
  "log": [
    {
      "commit": "11136c210e382258a72df44ffe625260a6394a45",
      "tree": "376f66e9e7a826dcf13f833e90291db7663205a4",
      "parents": [
        "610c1aad71bfa118c4f49ac01761f586b8dede69"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon May 01 12:00:09 2023 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 15 14:27:20 2026 +0000"
      },
      "message": "flashchips: Add a type enum to the chip identification\n\nWe used to imply what kind of ID (e.g. RES, REMS, RDID) a chip entry\nprovides, based on the given probing function. This works well as long\nas we call the respective probing function for every single chip entry.\nWith our ever growing chip database, however, this slows probing signi-\nficantly down. Especially with external programmers with a long command\nround-trip.\n\nWith the type of identification information stored in the chip entries\nexplicitly, we\u0027ll be able to implement bus-specific probing functions.\nThese would be called only once and their results would be used to look\na matching chip up in the chip database. Instead of looking for every\npossible chip on the buses, we can turn it around and search for the\nactually present chips in the database.\n\nChange-Id: Ie658ebf58f21c8994b9b66f7683f9490e8d12267\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/74898\n"
    },
    {
      "commit": "842d678f07439e133e69fc775a848dcd66369446",
      "tree": "c01716fbc4220c1211749772d6a566e6d70701d7",
      "parents": [
        "aa714dd3dd7090e1fa7175f3a32a252b04817261"
      ],
      "author": {
        "name": "Richard Hughes",
        "email": "richard@hughsie.com",
        "time": "Fri Jan 15 09:48:12 2021 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Mar 27 08:32:15 2024 +0000"
      },
      "message": "libflashrom: Return progress state to the library user\n\nProjects using libflashrom like fwupd expect the user to wait for the\noperation to complete. To avoid the user thinking the process has\n\"hung\" or \"got stuck\" report back the progress complete of the erase,\nwrite and read operations.\n\nAdd a new --progress flag to the CLI to report progress of operations.\n\nInclude a test for the dummy spi25 device.\n\nTested: ./test_build.sh; ./flashrom -p lspcon_i2c_spi:bus\u003d7 -r /dev/null --progress\n\nflashrom-stable:\n* Closer to original libflashrom API.\n* Split update_progress() into progress_start/_set/_add/_finish:\n  Simplifies progress calls scattered through the code base. We let\n  the core code in `flashprog.c` handle the total progress. Only API\n  is flashprog_progress_add().  Erase progress is completely handled\n  in `flashprog.c`. Fine grained read/write progress can be reported\n  at the chip/programmer level.\n* Add calls to all chip read/write paths and opaque programmers\n  except for read_memmapped() (which is handled in follow ups).\n* At least one wrinkle left: Erasing unaligned regions will slightly\n  overshoot total progress.\n\nChange-Id: I7197572bb7f19e3bdb2bde855d70a0f50fd3854c\nSigned-off-by: Richard Hughes \u003crichard@hughsie.com\u003e\nSigned-off-by: Daniel Campello \u003ccampello@chromium.org\u003e\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/49643\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/74731\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "2e003a0c9c0ce45fc7a34b68728227f1a83793ad",
      "tree": "15e9940fd1e3553643ba3ce7a7658de6f8369454",
      "parents": [
        "815eb796ae636641db4c7bc74d867d31b2be4a6c"
      ],
      "author": {
        "name": "Felix Singer",
        "email": "felixsinger@posteo.net",
        "time": "Fri Aug 19 02:36:28 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "82802ab.c: Retype appropriate variables with bool\n\nUse the bool type instead of an integer for appropriate variables, since\nthis represents their purpose much better.\n\nSigned-off-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nChange-Id: I5dfd9ed4856c37dd70706b2dd71fbb9a8acbdf4c\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66879\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71481\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "68c32db5b4d404d96f72d660457671022fa44a46",
      "tree": "a9ab406182ea0c52b715ea2b97b92bccd25e7700",
      "parents": [
        "abefc466e311de6b33eb0e0cf25fb72e558cc805"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Fri Jan 31 11:16:42 2020 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:07:04 2023 +0000"
      },
      "message": "82802ab.c: Remove duplicated check\n\nChange-Id: I5d511d7ec254bdbd9926e6d8efc308fb2339cb81\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/38661\nOriginal-Reviewed-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Philippe Mathieu-Daudé \u003cf4bug@amsat.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71310\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "519be66fc59558971dd653afe69ccaf1a633b492",
      "tree": "74f0912de156a86d56111f377db080246e5205e9",
      "parents": [
        "ef78de4a21323b8c459337356289218211f2c5ce"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Dec 23 20:03:35 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jul 31 08:26:59 2019 +0000"
      },
      "message": "Fix -Wsign-compare trouble\n\nMostly by changing to `unsigned` types where applicable, sometimes\n`signed` types, and casting as a last resort.\n\nChange-Id: I08895543ffb7a48058bcf91ef6500ca113f2d305\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/30409\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\n"
    },
    {
      "commit": "e083880279119677e443fc16b4694f8c81bf2c40",
      "tree": "03413b996779bc4c86ec41590f3e7bcdd97d0ef5",
      "parents": [
        "124ef38f7afc61ad7c713c22aad7c5c7f79bdb9b"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Mon Apr 02 11:14:02 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 24 20:21:41 2018 +0000"
      },
      "message": "Remove address from GPLv2 headers\n\nChange-Id: I7bfc339673cbf5ee2d2ff7564c4db04ca088d0a4\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/25381\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "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": "a8cf3620a42ca5927253822a813e3fbae1d6e7bf",
      "tree": "64ff1e62b06ee89492c914e11c86b54ddf126b0c",
      "parents": [
        "6697f71ade7b6428c7be6051c02dbb9768900e04"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Aug 08 08:33:01 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Aug 08 08:33:01 2014 +0000"
      },
      "message": "Unify non-shifted and shifted JEDEC access\n\nSome Parallel bus chips have a 16-bit mode and an 8-bit mode. They use\nnormal JEDEC addresses for 16-bit mode and shifted addresses (by 1 bit)\nfor 8-bit mode. Some programmers can access them in 16-bit mode, but on\nall flashrom-supported programmers so far, we access them in 8-bit mode.\nThis means we have to shift the addresses but apart from the addresses\nwe can share the code.\n\nThis patch makes this possible by checking the chip\u0027s FEATURE_ADDR_SHIFTED\nflag in common JEDEC functions and applying the right addresses respectively.\n\nCorresponding to flashrom svn r1840.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "ef3ac8ac17eac9d2041ea9c9e711a9b059412b59",
      "tree": "e5fec0cda5a546133a7440f65da442329ec3db48",
      "parents": [
        "2a41f0a2c0daeb0ee2a38a252ab96135d70a6b81"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Aug 03 13:05:34 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Aug 03 13:05:34 2014 +0000"
      },
      "message": "Refactor unlocking of many chips with locking at register space address +2\n\nThis includes PMC Pm49*, SST 49LF00*, ST M50* and Winbond W39* families.\nThe erase and write test status bits of all affected chips have been reset.\n\nCorresponding to flashrom svn r1833.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "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": "4404f73bd9ba7b4014bcd7a38e533f67027aa854",
      "tree": "6e759d9d533e8d1bd7e736607c411232412b18f8",
      "parents": [
        "4c6d3a4b732732eb20bfb0fc9d857abaa4c41c88"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 08:28:56 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Sep 12 08:28:56 2013 +0000"
      },
      "message": "Cleanup ST M50 driver\n\nThere are two locking strategies used by this umbrella family, one uniform\nand one that matches the sector layout of the chip. Refactor the functions\ninvolved and rename the overly complicated file to just stm50.c and the\nfunctions accordingly.\n\nThis fixes unlocking of some of the non-uniform chips and gets rid of the\nabuse of page_size.\n\nCorresponding to flashrom svn r1736.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "5a7cb847f096dacb0bf96b3aa909f79d76ae8204",
      "tree": "da511e990c1fdded61ee5dcefae38314c3a5a6cc",
      "parents": [
        "dd73d830f7370b5f0bbdaa0780b0ff8d6ff1776a"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Aug 25 01:17:58 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Aug 25 01:17:58 2012 +0000"
      },
      "message": "Make struct flashchip a field in struct flashctx instead of a complete copy\n\nAll the driver conversion work and cleanup has been done by Stefan.\nflashrom.c and cli_classic.c are a joint work of Stefan and Carl-Daniel.\n\nCorresponding to flashrom svn r1579.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "8a3c60cdd0e5632173567923ae1927763e31e857",
      "tree": "3a5514d022392cf4d8fa368f9f02653da21a93ca",
      "parents": [
        "63fd9026f1e82b67a65072fda862ba7af35839e1"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Dec 18 15:01:24 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Dec 18 15:01:24 2011 +0000"
      },
      "message": "Add struct flashctx * parameter to all functions accessing flash chips\n\nAll programmer access function prototypes except init have been made\nstatic and moved to the respective file.\n\nA few internal functions in flash chip drivers had chipaddr parameters\nwhich are no longer needed.\n\nThe lines touched by flashctx changes have been adjusted to 80 columns\nexcept in header files.\n\nCorresponding to flashrom svn r1474.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "63fd9026f1e82b67a65072fda862ba7af35839e1",
      "tree": "7d9ffba077715cf9e75c9f4a36d0d7f11a3181f6",
      "parents": [
        "83c92e983aaf11fb6f5bafb6744275c50add193c"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Dec 14 22:25:15 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Dec 14 22:25:15 2011 +0000"
      },
      "message": "Use struct flashctx instead of struct flashchip for flash chip access\n\nStruct flashchip is used only for the flashchips array and for\noperations which do not access hardware, e.g. printing a list of\nsupported flash chips.\n\nstruct flashctx (flash context) contains all data available in\nstruct flashchip, but it also contains runtime information like\nmapping addresses. struct flashctx is expected to grow additional\nmembers over time, a prime candidate being programmer info.\nstruct flashctx contains all of struct flashchip with identical\nmember layout, but struct flashctx has additional members at the end.\n\nThe separation between struct flashchip/flashctx shrinks the memory\nrequirement of the big flashchips array and allows future extension\nof flashctx without having to worry about bloat.\n\nCorresponding to flashrom svn r1473.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "c69c9c84e0341b701d9966fea8ce54d4e017bbb7",
      "tree": "2ea0b12abf9dd3483246423752239b88c6d7942e",
      "parents": [
        "8ca4255d7968dbf6301367074cc7267d22a25658"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Nov 23 09:13:48 2011 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Nov 23 09:13:48 2011 +0000"
      },
      "message": "Unsignify lengths and addresses in chip functions and structs\n\nPush those changes forward where needed to prevent new sign\nconversion warnings where possible.\n\nCorresponding to flashrom svn r1470.\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": "8c35745fcf3ed6eb2769beda0c8b941df07f6175",
      "tree": "2f3c43a3589edc55e7143b39d40df4a0cd039183",
      "parents": [
        "e3185c0599d77c06b9665c9721649b96108c894f"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Sep 18 22:42:18 2011 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Sep 18 22:42:18 2011 +0000"
      },
      "message": "Revert \"Unsignify lengths and addresses in chip functions and structs\"\n\n- probe_timing was changed to unsigned although we use negative values\n  for special cases\n- some code was not changed along hence did no longer compile:\n  * dediprog\u0027s read and write functions\n  * linux_spi\u0027s read and write functions\n- it introduced a number of new sign conversion warnings\n  (http://paste.flashrom.org/view.php?id\u003d832)\n\nTo be safe this patch reverts all changes made in r1448, a corrected\npatch will follow later.\n\nThanks to idwer for pointing out the problem first!\n\nCorresponding to flashrom svn r1450.\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": "d196e7c1387b30ac35e7b0f605c79823ac9b5ec9",
      "tree": "e0f40df44cb94c62f150a84080bf7171f8623aa8",
      "parents": [
        "75da80c17bbb992ce2b60ae15ef2fba7d23bfd8e"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Sep 18 00:41:33 2011 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Sep 18 00:41:33 2011 +0000"
      },
      "message": "Unsignify lengths and addresses in chip functions and structs\n\nCorresponding to flashrom svn r1448.\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": "fca3b012dae98c852e2dd492b191e2cecf728583",
      "tree": "8a7a9ab9f282b555bec39a58e833f3cb384cc8b7",
      "parents": [
        "14ab8d456a994ec3d84aaa43cc5e20a580aac0c0"
      ],
      "author": {
        "name": "Mattias Mattsson",
        "email": "vitplister@gmail.com",
        "time": "Thu Aug 25 22:44:11 2011 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 25 22:44:11 2011 +0000"
      },
      "message": "Add support for the Sharp LH28F008BJT-BTLZ1 chip\n\nTested by Mattias Mattsson \u003cvitplister@gmail.com\u003e on a PowerPC box.\n\nCorresponding to flashrom svn r1420.\n\nSigned-off-by: Mattias Mattsson \u003cvitplister@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "91f4afa1108a35783e9d3d546fe8ea41dc87708f",
      "tree": "a94991ce77532b8767d5d3c6ac0e9ab58f4b9a2c",
      "parents": [
        "1a227954f2c7d0a25d42bcea2ea0b901ceb0f464"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Jul 28 08:13:25 2011 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Jul 28 08:13:25 2011 +0000"
      },
      "message": "Random whitespace and coding-style fixes\n\nAlso, indentation fixes, e.g. due to conversion to msg_*, use ARRAY_SIZE\nwhere possible, wrap overly long line, etc.\n\nCompile-tested. There should be no functional changes.\n\nCorresponding to flashrom svn r1397.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "b4061f61cdf951760020c6d4789023d4001b9782",
      "tree": "99b4aec1edbe35372a0fe653b5448f52c0fe98c8",
      "parents": [
        "bfa021dd80594e51fa25feee56457d545849e312"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jun 26 17:04:16 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jun 26 17:04:16 2011 +0000"
      },
      "message": "Move erase verification to generic code\n\nErase functions are no longer called from chip drivers and thus their\ninternal erase verification can be moved to generic code. This also\nmakes it easier to skip the verify step if desired and to differentiate\nbetween failed command submission and failed erase verification.\n\nCorresponding to flashrom svn r1353.\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": "75a58f94cc641e8051169ec6bb9894a390a8e2bf",
      "tree": "eb3c0573cecfe70ded0b96003dc6f4d5e55975d4",
      "parents": [
        "79e6757d269b91ee759bd569df7093225f4f3715"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 13 22:26:56 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 13 22:26:56 2010 +0000"
      },
      "message": "Switch all flash chips to partial write\n\nThe inner write functions which handle partial write are renamed to the\noriginal name of their wrappers. The write wrappers are removed.\n\nCorresponding to flashrom svn r1211.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nTested-by: Maciej Pijanka \u003cmaciej.pijanka@gmail.com\u003e\nTested-by: Andrew Morgan \u003cziltro@ziltro.com\u003e\nTested-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nAcked-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nTested-by: Sean Nelson \u003caudiohacked@gmail.com\u003e \nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e \n"
    },
    {
      "commit": "79e6757d269b91ee759bd569df7093225f4f3715",
      "tree": "d77c280e33ab45e549d2b7493eab7bf50da57d53",
      "parents": [
        "184b95f449e4c314964b63c3170da216267d3b5e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 13 21:49:30 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 13 21:49:30 2010 +0000"
      },
      "message": "Refactor remaining write wrappers\n\nKill duplicated code.\n\nAnnotate write functions with their chunk size.\n\nMark Fujitsu MBM29F400BC and ST M29F400BB as untested because their\nwrite code no longer uses a broken layout.\n\nCorresponding to flashrom svn r1210.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nTested-by: Maciej Pijanka \u003cmaciej.pijanka@gmail.com\u003e\nTested-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nAcked-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nTested-by: Sean Nelson \u003caudiohacked@gmail.com\u003e \nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e \n"
    },
    {
      "commit": "184b95f449e4c314964b63c3170da216267d3b5e",
      "tree": "f5df1cca0b51c3227a47aa5968c816abcba49682",
      "parents": [
        "b30a5ed4afead1592224009230ea23500f91b230"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Oct 10 16:10:49 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Oct 10 16:10:49 2010 +0000"
      },
      "message": "Simplify calls to inner write functions\n\nNo behavioural changes, just equivalence transformations.\n\nCorresponding to flashrom svn r1209.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "b30a5ed4afead1592224009230ea23500f91b230",
      "tree": "0185573277197cab68874cedd1e00246ea2cf573",
      "parents": [
        "b28349f8bc40dd55524113e258b3185711e80366"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Oct 10 14:02:27 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Oct 10 14:02:27 2010 +0000"
      },
      "message": "Unify chip write functions\n\nThe currently used write functions (wrappers) all use helpers which\nperform the actual write (inner functions).\n\nThe signature of the write wrappers is: int write_chip(struct flashchip\n*flash, uint8_t * buf);\n\nThe signature of the inner write functions varied a lot. This patch\nchanges them to: int write_part(struct flashchip *flash, uint8_t *src,\nint start, int len);\n\nDid you know that flashrom has only 8 inner write functions for all\nflash chips? write_page_write_jedec_common write_sector_jedec_common\nwrite_sector_28sf040 spi_chip_write_256_new spi_chip_write_1_new\nspi_aai_write_new write_page_82802ab write_page_m29f400bt\n\nExport all inner write functions.\n\nChange the function signature of wait_82802ab to eliminate single-use\nvariables.\n\nRemove an error message in write_page_m29f400bt which was printed for\nevery byte written regardless of success.\n\nAdd sharplhf00l04.c to the list of flash chip drivers in the Makefile.\nWhile the functions in there are unused, I suspect we will need them\nlater, and by hooking the file up we ensure that compilation won\u0027t\nbreak.\n\nCorresponding to flashrom svn r1208.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "b28349f8bc40dd55524113e258b3185711e80366",
      "tree": "a4280b2c5eca9bb4cb8b767dc04bf8aaa0b6807f",
      "parents": [
        "f52f784bb300ec0acbd6c6bd9e6c3e5b435c4a90"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Oct 08 20:29:57 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Oct 08 20:29:57 2010 +0000"
      },
      "message": "Remove progress printing from individual flash chip drivers\n\nProgress printing should be handled in the generic code, and will end up\nthere once partial write is possible.\n\nCorresponding to flashrom svn r1207.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    },
    {
      "commit": "f52f784bb300ec0acbd6c6bd9e6c3e5b435c4a90",
      "tree": "957964a468245432abbd23cd06839898b64105ce",
      "parents": [
        "92c8b0cec2ed06db9c24c4d93cf38a596edf23ab"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Oct 08 18:52:29 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Oct 08 18:52:29 2010 +0000"
      },
      "message": "Move implicit erase out of chip drivers\n\nFlashrom had an implicit erase-on-write for most flash chip and\nprogrammer drivers, but it was not entirely consistent.\n\nSome drivers had their own hand-rolled partial update functionality\nwhich made handling partial updates from generic code impossible.\n\nMove implicit erase out of chip drivers, and kill some dead erase\nfunctions at the same time. A full chip erase is now performed in the\ngeneric code for all flash chips on write, and after that the whole chip\nis written.\n\nCorresponding to flashrom svn r1206.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "831e8f4abb29f1ff66ebb8ab5ff496050ff677f7",
      "tree": "8d19ef4871587dcaf0a3a1dec562dd6ef09024b6",
      "parents": [
        "4178760241c3b3dc46a806ee3621a2eb97f4cca5"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 30 22:24:40 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 30 22:24:40 2010 +0000"
      },
      "message": "Remove unneeded #include statements completely\n\nUnistd.h was only used to get a definition of NULL in all files. Add our\nown NULL #define and remove unistd.h from flash.h\nstdio.h has no place in flash.h, it should be included only in files\nwhich really need it.\nAdd #include statements in individual .c files where needed.\n\nReplace a few printf with msg_* to eliminate the need for stdio.h.\n\nCorresponding to flashrom svn r1021.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "ad0010a67a9d9fdfe03164bec8d10607b882cec2",
      "tree": "d94bd51665ece058ae418dd66f3bdffce0c202c5",
      "parents": [
        "253101e69e217e02802b6f7de453cb6b209f1dfa"
      ],
      "author": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Sat Apr 03 10:27:08 2010 +0000"
      },
      "committer": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Sat Apr 03 10:27:08 2010 +0000"
      },
      "message": "Intel 28F004/28F400 support\n\nRemove blockwise write for i82802ab chips. It will be reintroduced\nin post-0.9.2 in a generic way. This is needed to fix\nFWH-like chips with non-uniform sectors.\n\nThese are:\n  Intel 28F001\n  Sharp LHF00L04\n  ST M50FW002\n  ST M50LPW116\n\nCorresponding to flashrom svn r991.\n\nSigned-off-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "ed479d2a8728dc12f1f78170cacfaf542cd0b44e",
      "tree": "50b12e054fcff9b0cabbf916d2d049d00f2bf8e5",
      "parents": [
        "93539dad8d6c0336f60c50966a2dc3a34736165d"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Wed Mar 24 23:14:32 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Wed Mar 24 23:14:32 2010 +0000"
      },
      "message": "Convert chips\u0027 message printing to msg_c* Fixed suggestions by Carl-Daniel\n\nCorresponding to flashrom svn r982.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "12aa0be5d47d8759e27a1ee412b2f95b9906898b",
      "tree": "b34d080e817b9a94809b24734a0bf64ed9c5605c",
      "parents": [
        "12575e5bfe4292067d805404f6c6524f64a3ab86"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 22 23:47:38 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 22 23:47:38 2010 +0000"
      },
      "message": "Check 82802AB probing results for flash contents too\n\nJEDEC ID probing checks the parity of the vendor ID and verifies that\nthe ID differs from the flash chip contents. Add the same feature to\n82802AB ID probing.\n\nThis should reduce the number of lines we have to look at to determine\nif we\u0027re missing a chip definition or if we need a board enable. Just\nuse grep on the log: grep -v \"parity violation\" To narrow it down\nfurther, try: grep -v \"id1 is normal flash content, id2 is normal flash\ncontent\" And of course you want to ignore the skipped probes: grep -v\n\"skipped\" The remaining lines are worth examining, and if those look\nbogus as well, you can bet that we just need a board enable.\n\nCorresponding to flashrom svn r971.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "4e54de944dd97b7178c3847dfbf419f36c1459e6",
      "tree": "3d73535a8bd7f3d18b7673df0a7c4ad35d6299fa",
      "parents": [
        "8864710cd5ca23a365fb35e5ddc3a8b8368b658f"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Mar 22 07:03:26 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Mar 22 07:03:26 2010 +0000"
      },
      "message": "In unlock_28f004s5, variable \u0027i\u0027 needs to be int...\n\nCorresponding to flashrom svn r967.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    },
    {
      "commit": "8864710cd5ca23a365fb35e5ddc3a8b8368b658f",
      "tree": "f041c9db6f93706bf05306fa51589995469ebad9",
      "parents": [
        "dee4a83e1c97196ba22a25a8900ef804240061ef"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Mar 22 06:57:02 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Mar 22 06:57:02 2010 +0000"
      },
      "message": "Fix a few typos from the last commit\n\nCorresponding to flashrom svn r966.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    },
    {
      "commit": "dee4a83e1c97196ba22a25a8900ef804240061ef",
      "tree": "6cb766627da69c3d73e6c75b63fc207733d8f334",
      "parents": [
        "408e47af32b06613576bff74c0f455fc00220d58"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Mar 22 04:39:31 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Mon Mar 22 04:39:31 2010 +0000"
      },
      "message": "To access/read the lock bits, we use the same mode to read the chip id\n\nThis patch looks into the write situation for the Intel 28F001BX-{B,T}.\nLooks like they\u0027re just a 82802ab page write.\n\nUnlock_28f004s5 has been changed to read all the lock bits and if at\nleast one of the block lock bits are set, clear them all. If the master\nlock bit is set, we can\u0027t do anything about it, so we return.\n\nCorresponding to flashrom svn r965.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "46313198d8bb111325910b627b7d1dde6dba9ef8",
      "tree": "ec2d5b9fda859d48a51909a752a17501e3d7532a",
      "parents": [
        "fcc4f749f355aa3ee48a0d0a13c37adaefbc0f09"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Mar 20 15:15:36 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Mar 20 15:15:36 2010 +0000"
      },
      "message": "Unlock fixup\n\nCorresponding to flashrom svn r961.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "28accc27000d9589a86ecdf4f65bd009207a0a3f",
      "tree": "d51077c5234c888ac4d696e94bcc8f5cb0b0b90a",
      "parents": [
        "6499d5a68189625c30210cc242ee436ca70050eb"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Fri Mar 19 18:47:06 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Fri Mar 19 18:47:06 2010 +0000"
      },
      "message": "Various JEDEC refactorings touching 82802ab.c, sharplhf00l04.c and stm50flw0x0x.c\n\nRename print_82802ab_status to print_status_82802ab add unlock_82802ab strip unlock code from erase_block_82802ab rename erase_82802ab_block  to erase_block_80280ab delete sharplhf00l04.o from Makefile delete *_lhf00l04* from chipdrivers.h.\n\nadd unlock_stm50flw0x0x\ndelete wait_stm50flw0x0x\ndelete write_page_stm50flw0x0x\nconvert erase_stm50flw0x0x to erase_chip_stm50flw0x0x\ndelete write_stm50flw0x0x\nadd unlock_82802ab to two Intel chips with TEST_BAD_WRITE\nchange the status of 82802AB, 82802AC, M50FW040, M50FW080 to TEST_OK_PR\n\nCorresponding to flashrom svn r948.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "81449a2482237487f06e0cc35f01769b0d46b734",
      "tree": "d0a52cd813ab3249409a3d95cb1b66f9339bc75e",
      "parents": [
        "fd41670dd6ae7c216b96467c64ef294086499970"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 15 03:48:42 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 15 03:48:42 2010 +0000"
      },
      "message": "Add FEATURE_REGISTERMAP to some more chips and change the use of various probing functions\n\nAdd FEATURE_REGISTERMAP to * Intel 82802AB, 82802AC * Sharp LHF00L04 * SST SST49LF004C, SST49LF008C, SST49LF016C, SST49LF160C * ST M50FLW040A, M50FLW040B, M50FLW080A, M50FLW080B, M50FW002, M50FW016      M50FW040, M50FW080, M50LPW116.\n\nMake register mapping conditional on FEATURE_REGISTERMAP in 82802ab.c.\nReplace probe_49lfxxxc with probe_82802ab.\nReplace probe_28sf040 with probe_82802ab.\nReplace probe_sst_fwhub with probe_jedec.\nAdd printlock_sst_fwhub to chips which used probe_sst_fwhub.\n\nCorresponding to flashrom svn r937.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "14ba6682e99273273be74b8e8681d0604b85e9b9",
      "tree": "cd0212ae1ffe83aaea0a5ca9f5e2be86615c471a",
      "parents": [
        "cfa674fde7ee763844f82e38503cd997a3951197"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Fri Feb 26 05:48:29 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Fri Feb 26 05:48:29 2010 +0000"
      },
      "message": "Split spi.c into programmer and chip code Remove chipdriver.h include from flash.h\n\nSome of the spi programmer drivers required chipdrivers.h, needs fixing later:\n  it87spi.c\n  ichspi.c\n  sb600spi.c\n  wbsio_spi.c\n  buspirate_spi.c\n  ft2232spi.c\n  bitbang_spi.c\n  dediprog.c\n\nCorresponding to flashrom svn r914.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "54596379b444e6a526c99428aaad54444dc71e34",
      "tree": "9373efbba7456aeba406150af7d7977fbddc095e",
      "parents": [
        "3ac101c32bb8235a799b10482030d590d7623046"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Jan 09 05:30:14 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Jan 09 05:30:14 2010 +0000"
      },
      "message": "Block eraser conversions and support for Eon EN25B series\n\nConvert chips to block_erasers:\nASD AE49F2008\nAMIC A25L40P(T/U)\nAMIC A49LF040A\nEMST F49B002UA\nEon EN25B05\nEon EN25B10\nEon EN25B20\nEon EN25B40\nEon EN25B80\nEon EN25B16\nEon EN25B32\nEon EN25B64\nEon EN25D16\nEon EN25F05\nEon EN25F10\nEon EN25F20\nEon EN25F40\nEon EN25F80\nEon EN25F16\nEon EN25F32\nIntel 28F001BX-B\nIntel 28F001BX-T\nIntel 82802AB\nIntel 82802AC\nMacronix MX25L1635D\nMacronix MX25L3235D\nMacronix MX25L6405\nMacronix MX25L12805\nMacronix MX29F001B\nMacronix MX29F001T\nMacronix MX29LV040\n\nAdded new chips (according to datasheets):\nEon EN25B05T\nEon EN25B10T\nEon EN25B20T\nEon EN25B40T\nEon EN25B80T\nEon EN25B16T\nEon EN25B32T\nEon EN25B64T\n\nAdded minor Device IDs for Eon EN25Bxx{T,B} chips.\n\nCorresponding to flashrom svn r843.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "972cec282c061dadd3c501221d20d8b6437057e7",
      "tree": "10dd150d40a182f9911df4020e2b004ef097f17e",
      "parents": [
        "1db2b759026debc8f1cd45f3182b9e14124f9c7e"
      ],
      "author": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Thu Nov 26 14:50:52 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Nov 26 14:50:52 2009 +0000"
      },
      "message": "Refine support for the JEDEC Software Data Protection\n\nThis patch removes the extremely dangerous unprotect_jedec function\nwhich is not used at all within flashrom code, and renames the\nmisleadingly named protect_jedec function to start_program_jedec.\n\nCalls to protect_jedec after flashing are removed, because a) on LPC\nchips, the command sent by protoct_jedec is not even in the datasheet\nand b) on parallel chips, the block write command issued before already\ncontained the software protection sequence, so software protection is\ndefinitely enabled.\n\nThis patch also removes two clones of protect_jedec\n\nBackground: JEDEC Software Data Protection started as an optional\nfeature, which was disabled on the first single-voltage-flash chips.\nThe software data protection is the need to prefix a write with a magic\n\"write enable\" command, while without write protection every write\naccess into the chip\u0027s address space modifies flash content. This magic\nwrite enable command also tells the flash chip that the programmer\nobviously support sending write-enable commands and turns off the \"any\nwrite modifies flash content\" mode. There also exist a two-command (6\nwrites) sequence that disables Software Data Protection completey, which\nshould only ever be used to prepare updating with a device that can\u0027t\nhandle software data protection.\n\nCorresponding to flashrom svn r783.\n\nSigned-off-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "ab044b20a2b44097ce65c3fd4f232ee7170303ba",
      "tree": "4d4e3556312edc4be7fc90d073a2fbb79d86d687",
      "parents": [
        "9e72aa51a7a9ac5f041bacab75fd4be1e2a3356c"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Wed Sep 16 08:26:59 2009 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed Sep 16 08:26:59 2009 +0000"
      },
      "message": "Fix all remaining issues reported by LLVM/clang\u0027s scan-build\n\nCorresponding to flashrom svn r723.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Ronald G. Minnich \u003crminnich@gmail.com\u003e\n"
    },
    {
      "commit": "4e9cebb2fbf22519659a9dc0a8ff4d5d1293ede2",
      "tree": "2d17169c2f7f720fc40ac6184b15d46572d3086f",
      "parents": [
        "d271e79174c13d0a48320416bcd08449390052a1"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Sep 05 01:16:30 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Sep 05 01:16:30 2009 +0000"
      },
      "message": "Unify some probe functions that basically correspond to probe_jedec()\n\nUse the correct reset sequence for 82802AB. Detailed explanation:\nThe reset sequence before ID reading was correct, so ID always\nworked. But the reset sequence after ID reading was a copy-paste\nleftover from probe_jedec and didn\u0027t have any effect. I dug up\nflash_and_burn from the freebios-v1 tree and found out that 82802ab.c\nwas indeed a copy of jedec.c with lots of experimental unannotated #if 0\nand #if 1.\nAbout the wait_82802ab change:\nBefore the patch, wait_82802ab entered read status mode, switched to ID\nmode, then tried an incorrect and unsupported JEDEC command to exit ID\nmode. Nobody ever saw that this failed because all subsequent function\ncalls had the correct reset sequence at the beginning.\nWith the patch, wait_82802ab enters read status mode, then switches back\nto read mode with the official reset command.\n\nCorresponding to flashrom svn r717.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "04aa59a8645510f212fc6a270b48a883f3d00fa5",
      "tree": "95c8f6738fa4dbaa09b7ee0f058de130333dc84c",
      "parents": [
        "0d5db9a8f86a2663570b05a557b49e0fa13f8631"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Sep 02 22:09:00 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Sep 02 22:09:00 2009 +0000"
      },
      "message": "Standardize on using __func__ instead of __FUNCTION__\n\nThe __func__ variant is standardized in C99 and recommended to be\nused instead of __FUNCTION__ in the gcc info page.\n\nOnly _very_ old versions of gcc did not know about __func__, but we\u0027ve\nbeen using both __func__ and __FUNCTION__ for a long while now, and\nnobody complained about this, so all our users seem to use recent\nenough compilers.\n\nCorresponding to flashrom svn r711.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "30f7cb2f3c570c99b61bd5df72621f44f1bdd0d0",
      "tree": "d714754c298d7d247786e19c4b2b4afd6067a795",
      "parents": [
        "084546449983c1d6f147c1a3e381e225887e322c"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 15 17:23:36 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 15 17:23:36 2009 +0000"
      },
      "message": "Flashrom only checks for very few chips if the erase worked\n\nAnd even when it checks if the erase worked, the result of that check is\noften ignored.\n\nConvert all erase functions and actually check return codes\nalmost everywhere.\nCheck inside all erase_* routines if erase worked, not outside.\nerase_sector_jedec and erase_block_jedec have changed prototypes to\nenable erase checking.\n\nUwe successfully tested LPC on an CK804 box and SPI on some SB600 box.\n\nCorresponding to flashrom svn r595.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Urja Rannikko \u003curjaman@gmail.com\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "0bd2a2bdc10720776fe50b96d24d30323ec24c09",
      "tree": "1348763e5fa6f4ea9d13a5b84d63999dcf132749",
      "parents": [
        "ca8bfc6c22196e5d16c6d2625c65d6b50c04daaf"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 18:32:07 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 18:32:07 2009 +0000"
      },
      "message": "Sometimes we want to read/write more than 4 bytes of chip content at once\n\nAdd chip_{read,write}n to the external flasher infrastructure which\nread/write n bytes at once.\n\nFix a few places where the code used memcpy/memcmp although that is\nstrictly impossible with external flashers.\nPlace a FIXME in the layout.c code because usage is not totally clear\nand needs to be fixed to support external flashers.\n\nAs a nice side benefit, we get a noticeable speedup for builtin flash\nreading which is now a memcpy() of the full flash area instead of a\nseries of single-byte reads.\n\nCorresponding to flashrom svn r579.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "ca8bfc6c22196e5d16c6d2625c65d6b50c04daaf",
      "tree": "329ba3be9013c0a5934c66233a3c5205f0ed4b20",
      "parents": [
        "945d26a0d7eef8faf46453d5f2717c21b59bafc2"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 17:48:08 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 17:48:08 2009 +0000"
      },
      "message": "Add programmer-specific delay functions\n\nAdd external programmer delay functions so external programmers can\nhandle the delay on their own if needed.\n\nCorresponding to flashrom svn r578.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\n"
    },
    {
      "commit": "2cac6860c3f451a661d8281d25a72dd5db89f4e4",
      "tree": "7592a765da81385bff5cfe1aa62f215618be948e",
      "parents": [
        "8403ccb49f98d1583736984c92d62735d9d466b5"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat May 16 22:05:42 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat May 16 22:05:42 2009 +0000"
      },
      "message": "Drop unused/duplicated #includes and some dead code\n\nBuild-tested on 32bit x86.\n\nCorresponding to flashrom svn r521.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "5820f42ef209cfa0d4070fa9be96c9c91123a93f",
      "tree": "a505b6f813fc4f7601f77e7195e479dfddc73571",
      "parents": [
        "4059598a068f7694f2238a3811d85cbfa520a8d5"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 16 21:22:56 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 16 21:22:56 2009 +0000"
      },
      "message": "Introduce a type \"chipaddr\" to abstract the offsets within flash regions\n\nUse chipaddr instead of volatile uint8_t * because when we access chips\nin external flashers, they are not accessed via pointers at all.\n\nBenefits: This allows us to differentiate between volatile machine\nmemory accesses and flash chip accesses. It also enforces usage\nof chip_{read,write}[bwl] to access flash chips, so nobody will\nunintentionally use pointers to access chips anymore. Some unneeded\ncasts are removed as well. Grepping for chip operations and machine\nmemory operations doesn\u0027t yield any false positives anymore.\n\nCompile tested on 32 bit and 64 bit Linux.\n\nCorresponding to flashrom svn r519.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "0472f3d82624dcb19f25746172c6d59532e2463c",
      "tree": "a396b47eb0133b6a7543d69216933227a2c26b5c",
      "parents": [
        "b88556979b65914d8b0fc85861efeaa9ad9a1d3c"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Mar 06 22:26:00 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Mar 06 22:26:00 2009 +0000"
      },
      "message": "FreeBSD definitions of (read|write)[bwl] collide with our own\n\nBefore we attempt trickery, we can simply rename the accessor functions.\n\nPatch created with the help of Coccinelle.\n\nCorresponding to flashrom svn r420 and coreboot v2 svn r3984.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Idwer Vollering \u003cidwer_v@hotmail.com\u003e\nAcked-by: Patrick Georgi \u003cpatrick@georgi-clan.de\u003e\n"
    },
    {
      "commit": "61a8bd27fb5ff27db98e96b462957994e7cca946",
      "tree": "42326fb1bdeb491df1db567eacdec088bee46c7d",
      "parents": [
        "0677dfffc67ad2d0e973f558be86e66f225b4ddc"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 05 19:24:22 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 05 19:24:22 2009 +0000"
      },
      "message": "Use helper functions to access flash chips\n\nRight now we perform direct pointer manipulation without any abstraction\nto read from and write to memory mapped flash chips. That makes it\nimpossible to drive any flasher which does not mmap the whole chip.\n\nUsing helper functions readb() and writeb() allows a driver for external\nflash programmers like Paraflasher to replace readb and writeb with\ncalls to its own chip access routines.\n\nThis patch has the additional advantage of removing lots of unnecessary\ncasts to volatile uint8_t * and now-superfluous parentheses which caused\npoor readability.\n\nI used the semantic patcher Coccinelle to create this patch. The\nsemantic patch follows:\n@@\nexpression a;\ntypedef uint8_t;\nvolatile uint8_t *b;\n@@\n- *(b) \u003d (a);\n+ writeb(a, b);\n@@\nvolatile uint8_t *b;\n@@\n- *(b)\n+ readb(b)\n@@\ntype T;\nT b;\n@@\n(\n readb\n|\n writeb\n)\n (...,\n- (T)\n- (b)\n+ b\n )\n\nIn contrast to a sed script, the semantic patch performs type checking\nbefore converting anything.\n\nTested-by: Joe Julian\n\nCorresponding to flashrom svn r418 and coreboot v2 svn r3971.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: FENG Yu Ning \u003cfengyuning1984@gmail.com\u003e\n"
    },
    {
      "commit": "5cafc33831ddbc92a3b59c49e2c61ac87f8a948e",
      "tree": "a41dd813b366abe249924b0054f1caadd0b48173",
      "parents": [
        "9371dc3cb13a5382ddeb8b98ce2d3eca6a50d0ef"
      ],
      "author": {
        "name": "Peter Stuge",
        "email": "peter@stuge.se",
        "time": "Sun Jan 25 23:52:45 2009 +0000"
      },
      "committer": {
        "name": "Peter Stuge",
        "email": "peter@stuge.se",
        "time": "Sun Jan 25 23:52:45 2009 +0000"
      },
      "message": "Beautify flash chip ID verbose printout a little, always use %02x\n\nCorresponding to flashrom svn r390 and coreboot v2 svn r3895.\n\nSigned-off-by: Peter Stuge \u003cpeter@stuge.se\u003e\nAcked-by: Peter Stuge \u003cpeter@stuge.se\u003e\n"
    },
    {
      "commit": "ef300238b649b9a7229bb68c70690faa82b2d18d",
      "tree": "9f74ae012637bb920c84014f66446d79aaec1e84",
      "parents": [
        "47c94a5d48eb1143c26f9819ee70452860fc834b"
      ],
      "author": {
        "name": "Claus Gindhart",
        "email": "claus.gindhart@kontron.com",
        "time": "Thu Apr 24 09:07:57 2008 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Thu Apr 24 09:07:57 2008 +0000"
      },
      "message": "82802ab: touch only blocks that need updating\n\nFlash pages, which where excluded from updating using the exclude or the\nlayout option, as well as areas, whose flash contents already contain\nthe desired data, will be skipped. These ensures absolute data security\nof critical areas (BIOS boot block), e.g. against a sudden power off or\na CPU hangup during flashing. As a nice side effect, it speeds up the\nflash process, if the BIOS to be flashed is very similar to the version\nin flash.\n\nCorresponding to flashrom svn r217 and coreboot v2 svn r3260.\n\nSigned-off-by: Claus Gindhart \u003cclaus.gindhart@kontron.com\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "e7bcb19bf564808974d8f944acfbe30818a2bae1",
      "tree": "19c34c5b97df18769e286387fa4660c27c3afc10",
      "parents": [
        "eac10164378a08666ae4a8ce7279a1afc9962026"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Mar 14 00:02:25 2008 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Mar 14 00:02:25 2008 +0000"
      },
      "message": "Revert the delete of 82802ab.c in r3137\n\nCorresponding to flashrom svn r204 and coreboot v2 svn r3140.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "fe7e929f49a6f26ae2c35ecd6a40980d2359d87c",
      "tree": "cc8fafacf28c200416efcc35760c0d3d0d3f6530",
      "parents": [
        "7bd2f838c669213adde3d689aaa49857e21d4541"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 13 12:43:31 2008 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 13 12:43:31 2008 +0000"
      },
      "message": "Drop 82802ab.c as it is identical to sharplhf00l04.c\n\nCorresponding to flashrom svn r201 and coreboot v2 svn r3137.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Peter Stuge \u003cpeter@stuge.se\u003e\n"
    },
    {
      "commit": "a502dcea3df45326898b99dc9f5f3744a776339d",
      "tree": "9746755cc3c75130ac3a05755ebbbcaff8fd81f3",
      "parents": [
        "dca0ab18840775e1d423faff55045066344ccb87"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Oct 17 23:55:15 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Oct 17 23:55:15 2007 +0000"
      },
      "message": "Some cosmetic cleanups in the flashrom code and output\n\nCorresponding to flashrom svn r151 and coreboot v2 svn r2873.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "d22a1d4e539e9b594fc9a9cf149e239da1ba8a2f",
      "tree": "e801de4b9c81fbff8411a8c8ffcd57419b95d409",
      "parents": [
        "ca7f0e4668bf48c3e76458bfd009a575b5d78227"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Sep 09 20:21:05 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Sep 09 20:21:05 2007 +0000"
      },
      "message": "Add \u0027(C)\u0027 where it\u0027s missing (for consistency reasons)\n\nCorresponding to flashrom svn r136 and coreboot v2 svn r2768.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "d110764ccdd75bb3621d97c613eea392634696f2",
      "tree": "9687dcb7423d9eb7022308d1d974f07fc507c063",
      "parents": [
        "ffec5f3ab794167126c28e7253dbe9d7de676dc2"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Aug 29 17:52:32 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Aug 29 17:52:32 2007 +0000"
      },
      "message": "Change all flashrom license headers to use our standard format\n\nNo changes in content of the files.\n\nCorresponding to flashrom svn r131 and coreboot v2 svn r2751.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "ffec5f3ab794167126c28e7253dbe9d7de676dc2",
      "tree": "1645417f11a24ea1a316a7959246f5c4af75e789",
      "parents": [
        "fd37414dbb1996f91b07b08826e637c29c455c37"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 16:08:21 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 16:08:21 2007 +0000"
      },
      "message": "Cosmetic fixes\n\nCorresponding to flashrom svn r130 and coreboot v2 svn r2748.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "fd37414dbb1996f91b07b08826e637c29c455c37",
      "tree": "da25abf96e2265224d308cf7b7f6b4a591a2f167",
      "parents": [
        "0846f89b0a2819279b6a92c183721dfb56aab75d"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 15:20:38 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 15:20:38 2007 +0000"
      },
      "message": "Drop duplicated code (copies of plain JEDEC functions)\n\nCorresponding to flashrom svn r129 and coreboot v2 svn r2747.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "0846f89b0a2819279b6a92c183721dfb56aab75d",
      "tree": "3867a6aa46c1b5f056cd45269101f595d44b6a1d",
      "parents": [
        "51582f282ba230178aec0226ec6098460a2a25da"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 13:34:59 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 13:34:59 2007 +0000"
      },
      "message": "Drop a bunch of useless header files, merge them into flash.h\n\nCorresponding to flashrom svn r128 and coreboot v2 svn r2746.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "51582f282ba230178aec0226ec6098460a2a25da",
      "tree": "bbb6f4bfdbaa94a46047f0774f3bc009b3214547",
      "parents": [
        "966dc20cc330ba90a8e51e52c70303e41045ff9e"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 10:20:40 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Aug 23 10:20:40 2007 +0000"
      },
      "message": "Move code into *.c files, there\u0027s no reason to have it in header files\n\nCorresponding to flashrom svn r127 and coreboot v2 svn r2745.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "7ed78c88b6aa9830ff2d84dfca4bb62e4471a300",
      "tree": "ac4f669570573be9682c111c48d9a6171dcfdb10",
      "parents": [
        "5380d51c69a6fc9710396b600b42757fb9b0058e"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Thu May 24 09:26:39 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Thu May 24 09:26:39 2007 +0000"
      },
      "message": "Drop leftover includes\n\nCorresponding to flashrom svn r115 and coreboot v2 svn r2693.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "ff4f197a24d2b06162e062004874ac915ee353ac",
      "tree": "f0892c97e2f71c31bab955384efebffd8fb1621a",
      "parents": [
        "7c1402f2208f3240de9f28f6ac48a24f526c430d"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Thu May 24 08:48:10 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Thu May 24 08:48:10 2007 +0000"
      },
      "message": "Factor out register mapping code\n\nCorresponding to flashrom svn r113 and coreboot v2 svn r2691.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "7c1402f2208f3240de9f28f6ac48a24f526c430d",
      "tree": "dff2c9bdbc5f3555b7824f5c690c9571c7cf82a8",
      "parents": [
        "ce532975cbe35d88f767c6305d272c8b6f16ccf7"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Wed May 23 18:24:58 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed May 23 18:24:58 2007 +0000"
      },
      "message": "Unify mmap error messages\n\nCorresponding to flashrom svn r112 and coreboot v2 svn r2690.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "ce532975cbe35d88f767c6305d272c8b6f16ccf7",
      "tree": "f42ab029b4335a7d9e396bf85e0fc9f0f3d36aa1",
      "parents": [
        "bc1f1a01e4505bd1a2de45b7a23038a53a184c0d"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Wed May 23 17:20:56 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed May 23 17:20:56 2007 +0000"
      },
      "message": "Big cosmetic offensive on flashrom\n\n* Give decent names to virt_addr and virt_addr_2\n* add some comments\n* move virtual addresses to the end of the struct,\n  so they dont mess up the initializer.\n\nCorresponding to flashrom svn r111 and coreboot v2 svn r2689.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "a7e0548cea45ec60616936c536efbb2a34605093",
      "tree": "8d31e1c7e3343980b1c0724103f39dbb5baae77a",
      "parents": [
        "7977f4ef2ea478a5460e6730aa2adc23e9685be1"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed May 09 10:17:44 2007 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed May 09 10:17:44 2007 +0000"
      },
      "message": "Fix coding style of flashrom by running indent on all files\n\n  indent -npro -kr -i8 -ts8 -sob -l80 -ss -ncs *.[ch]\n\nSome minor fixups were required, and maybe a few more cosmetic\nchanges are needed.\n\nCorresponding to flashrom svn r108 and coreboot v2 svn r2643.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "7038564346f660ce043d7942398f3e8a3a2db7ad",
      "tree": "2d6573bc465284fa3fc57fe2afaa8f7b1dabd1ad",
      "parents": [
        "8e3a600123110d47076926cb8ee7c68195658f20"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Fri Apr 06 11:58:03 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Fri Apr 06 11:58:03 2007 +0000"
      },
      "message": "Trivial (cosmetic) cleanup\n\n* Only open /dev/mem once and do it early.\n* Drop extern for function prototypes.\n* Minimize ts5300 impact in probe_flash()\n\nThis cleanup will making ICH7 SPI support quite some easier.\n\nCorresponding to flashrom svn r100 and coreboot v2 svn r2585.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "064b1f23fa507878bddca3c308e5e6034b06c998",
      "tree": "53d889789d8317e36e0f3238902e3d268fd5d05e",
      "parents": [
        "474230ad421b2e2e4ca26493292d224a22a262c2"
      ],
      "author": {
        "name": "Adam Kaufman",
        "email": "adam.kaufman@pinnacle.com",
        "time": "Tue Feb 06 19:47:50 2007 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Tue Feb 06 19:47:50 2007 +0000"
      },
      "message": "This patch is a rework of Adam Kaufman\u0027s Solaris patch\n\n* flash.h:\n  - add a license header\n  - add system definitions\n* flash_enable.c:\n  - put io priviledge access in one single place\n  - add includes required for Solaris.\n* lbtable.c, flash_rom.c, 82802ab.c:\n  - use MEM_DEV so it works on Solaris\n* sst49lfxxxc.c, sharplhf00l04.c, sst_fwhub.c, 82802ab.c\n  - drop unneeded include to sys/io.h\n* Makefile\n  - adapt to Solaris specifics.\n\nCorresponding to flashrom svn r88 and coreboot v2 svn r2550.\n\nSigned-off-by: Adam Kaufman \u003cadam.kaufman@pinnacle.com\u003e\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Adam Kaufman \u003cadam.kaufman@pinnacle.com\u003e\n"
    },
    {
      "commit": "028f46fd2e639e981dca09a857fcd070ce376042",
      "tree": "40927d1c646d773133a88072f0c895931e67910a",
      "parents": [
        "f8337dd3986692bd1788ab254879d7f8424367e1"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed Aug 23 14:33:54 2006 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed Aug 23 14:33:54 2006 +0000"
      },
      "message": "Removing $Id$ tags as they have no meaning in SVN\n\nCorresponding to flashrom svn r60 and coreboot v2 svn r2386.\n"
    },
    {
      "commit": "184a4040333ccfe624d8765864458b21bb55d1e1",
      "tree": "730168012ceeb517f9c3d14e02f21be6c75cf107",
      "parents": [
        "8a10d5a631bddff703fdcfd5b33ac76cdc02fb63"
      ],
      "author": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Sat Nov 26 21:55:36 2005 +0000"
      },
      "committer": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Sat Nov 26 21:55:36 2005 +0000"
      },
      "message": "Flashrom update from Stefan, resolve issue 21\n\nCorresponding to flashrom svn r34 and coreboot v2 svn r2111.\n"
    },
    {
      "commit": "761bf1bdb7268f8818dd22b15e944365afdf1459",
      "tree": "ecbd632c87d64c6651f84a705ce4c3861108069d",
      "parents": [
        "73eca80d9b28bfc38fa4b8d2ef9c580840133a38"
      ],
      "author": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Sat Mar 20 16:46:10 2004 +0000"
      },
      "committer": {
        "name": "Ollie Lho",
        "email": "ollie@sis.com.tw",
        "time": "Sat Mar 20 16:46:10 2004 +0000"
      },
      "message": "Consolidate more jedec standard code\n\nCorresponding to flashrom svn r15 and coreboot v2 svn r1457.\n"
    },
    {
      "commit": "eaab50bb32edfe419eb472eacfdc82cbc3ecae8c",
      "tree": "4ddad443cb40d4f090ba476bb48ddd47b98790a6",
      "parents": [
        "ceec420c3db6c20c4b882e8bf3ad113db7fcd2de"
      ],
      "author": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Fri Sep 12 22:41:53 2003 +0000"
      },
      "committer": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Fri Sep 12 22:41:53 2003 +0000"
      },
      "message": "Changes from NIKI\n\nCorresponding to coreboot v1 svn r873.\n"
    },
    {
      "commit": "d4228fdc4793c900e3f5eb0d2db0576a6f36235d",
      "tree": "8b97e52b0701f641a3566e0448b699ce912e46a7",
      "parents": [
        "4d32e789a867bbf1419fc1f4f82b1145891d4d16"
      ],
      "author": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Fri Feb 28 17:21:38 2003 +0000"
      },
      "committer": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Fri Feb 28 17:21:38 2003 +0000"
      },
      "message": "Made the ids always print in hex less verbose verify step\n\nCorresponding to coreboot v1 svn r752.\n"
    },
    {
      "commit": "56439427500146bf125b081406275be55fa5d9e3",
      "tree": "5a0b1c587d80a2fcc65fe89acdaa8f203d0d31b3",
      "parents": [
        "6041bcda7ac8c8a7470bba58e8b26cdfd5746679"
      ],
      "author": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Fri Sep 06 16:58:14 2002 +0000"
      },
      "committer": {
        "name": "Ronald G. Minnich",
        "email": "rminnich@gmail.com",
        "time": "Fri Sep 06 16:58:14 2002 +0000"
      },
      "message": "Can now burn 82802ab\n\nCorresponding to coreboot v1 svn r633.\n"
    }
  ]
}
