)]}'
{
  "log": [
    {
      "commit": "fbc41d2a932ede9c02aa7803472c31f39ec200f2",
      "tree": "8b72b78abfd99bf8737b90cc2fece11f2dbe93d3",
      "parents": [
        "966dc9b776c2897d1245937639ab41fc834d7cb9"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 22 23:04:01 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "spi: Move SPI related things into new chipdrivers/spi.h\n\nA few things that rely heavily on `flash.h` are moved there instead:\n* function signatures containing `erasefunc_t`,\n* the inline default_wrsr_target() that needs to know struct flashctx.\n\nThis allows to keep the new header file free of a transitive `flash.h`\ninclude.\n\nChange-Id: Ib215821feeb822ea3fc11bf9f48c0328f9a394d4\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/416\n"
    },
    {
      "commit": "610c1aad71bfa118c4f49ac01761f586b8dede69",
      "tree": "8ad4cfd904cf909526b32b03561ad369f42720d9",
      "parents": [
        "b95fe9b9751746b269a3bbd7021cf731d8553715"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Feb 15 02:56:05 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 15 14:27:20 2026 +0000"
      },
      "message": "spi: Pass master instead of flash to .send_command\n\nIn the SPI-master API, `.send_command` should only forward commands to\nthe SPI bus. All details about the commands and the SPI slave should be\nhandled in the chip driver. Hence, replace the `flashctx` pointer with\none to the `spi_master` to enforce proper separation.\n\nChange-Id: I50934a1294217794b7e23cc98ade7e4279c059a1\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/74897\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\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": "89569d60e3aeeec651496b2e7a2e6064d782ab3b",
      "tree": "bf0c3951886de60086d32ff6e1a850adad926da6",
      "parents": [
        "929d2e1b17a448d3352dbecb6a620ee0c1e65a58"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 12 23:31:40 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 09 10:30:24 2024 +0000"
      },
      "message": "memory_mapped: Reduce `decode_sizes` to a single `max_rom_decode`\n\nWe used to store the maximum decode size, i.e. the maximum memory-mapped\nrange of the flash chip, per bus type (Parallel, LPC, FWH, SPI). There\nwas no programmer in the tree that really made use of it, though:\n* The chipset drivers usually focus on a single bus type. And even if\n  they advertise the whole default set (PAR, LPC, FWH), they only pro-\n  vide a maximum decode size for one of them. The latter is probably\n  wrong, should really more than one bus type be supported.\n* PCI and external programmers all support only a single bus type, with\n  the exception of `serprog` which doesn\u0027t set a maximum decode size.\n\nWhat made the distinction even less useful is that for some chips that\nsupport multiple bus types, i.e. LPC+FWH, we can\u0027t even detect which\ntype it is. The existing code around this also only tried to provide\nthe best possible warning message at the expense of breaking the pro-\ngrammer abstraction.\n\nHence, unify the set of sizes into a single `max_rom_decode` property.\nWe store it inside the `registered_master` struct right away, to avoid\nany more use of globals.\n\nChange-Id: I2aaea18d5b4255eb843a625b016ee74bb145ed85\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/72531\n"
    },
    {
      "commit": "55961909ea03d6affef188895fa0992bbea0b752",
      "tree": "6e9223a9d6c24091706276ed2caccaf6ac356811",
      "parents": [
        "46449b4d17c549a68d0b8ce287f20e4b46f13333"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jan 11 23:01:37 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 09 10:30:24 2024 +0000"
      },
      "message": "it87spi: Request memory mapping locally\n\nOur SPI chip drivers are not aware of any memory mapping. However, two\nof our SPI master drivers that implement an LPC-to-SPI bridge make use\nof the memory mapping originally intended for memory mapped flash chips.\n\nThis unnecessarily breaks the abstraction in core flashprog code. There\nis no other component than the master driver involved with the mapping,\nhence we can simply perform it locally in this driver.\n\nThe driver already assumed a maximum memory mapped space of 512KiB. We\nalways try to map this whole space and than adapt the address offsets\naccordingly.\n\nChange-Id: I1cd828d3286ce0f7a02d15b035df368c67e0b2db\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/72519\n"
    },
    {
      "commit": "0cea753aff33b78051febadf8786df83144b5ee7",
      "tree": "8972ea6cf44e249659ddad7ea3d9aa2dedffc0b6",
      "parents": [
        "ab9f25893f1fa87cbbaf656869e346391eccdb31"
      ],
      "author": {
        "name": "Aarya Chaumal",
        "email": "aarya.chaumal@gmail.com",
        "time": "Mon Jul 04 18:21:50 2022 +0530"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 19 13:50:18 2023 +0000"
      },
      "message": "spi: Add function to probe erase command opcode for all spi_master\n\nAdd a field, probe_opcode, to struct spi_master which points to a\nfunction returning a bool by checking if a given command is supported by\nthe programmer in use. This is used for getting a whitelist of commands\nsupported by the programmer, as some programmers like ichspi don\u0027t\nsupport all opcodes.\n\nMost programmers use the default function, which just returns true.\nICHSPI and dummyflasher use their specialized function.\n\nflashrom-stable: Added `.probe_opcode` for `dirtyjtag_spi`, `ich7`.\n\nChange-Id: I6852ef92788221f471a859c879f8aff42558d36d\nSigned-off-by: Aarya Chaumal \u003caarya.chaumal@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/65183\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72539\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "3f4d35daf4533650e75fcabb8f1ed9085e1fcf77",
      "tree": "ae3340f0a563d1d9ed48285cc861e7e90e2343ef",
      "parents": [
        "a6b45c4516e15aeb405028e5095e86259fcd9e34"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Mon Jan 17 15:11:43 2022 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "hwaccess: move mmio functions into hwaccess_physmap\n\nThe mmio_le/be_read/writex functions are used for raw memory access.\nBundle them with the physmap functions.\n\nChange-Id: I313062b078e89630c703038866ac93c651f0f49a\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/61160\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72278\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "a065520a7c7eedcca961de1fc891cc0b04e6df77",
      "tree": "f7a4c280f6d3114b98a52e147f988c4ae293271b",
      "parents": [
        "d96c97c77309f1cf1ff1cbe9fa521a75fc9d5698"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Tue Dec 14 16:36:05 2021 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "hwaccess: move x86 port I/O related code into own files\n\nAllow port I/O related code to be compiled independent from memory\nmapping functionality. This enables for a better selection of needed\nhardware access types.\n\nChange-Id: I372b4a409f036da766c42bc406b596bc41b0f75a\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/60110\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72265\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "51264d5def2188624a3354c62722a95e64224645",
      "tree": "f8b01a56582b453253d7a7b09b26cedd61bbe96f",
      "parents": [
        "121a5b8d63008db1d179ab69fc1c6b39e03d575c"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Tue Sep 21 10:00:14 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "remove compile guards\n\nThe build system handles the decision when to build a file.\nExtra compile guards for the source files are not necessary.\n\nChange-Id: I76a76e05c7a7dd27637325ab1e9d8946fd5f9076\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/57797\nOriginal-Reviewed-by:  Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72260\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "5e08e3e829e3f736e18cef7b8f4a8929c9e06257",
      "tree": "cfe9483275582e2ff2a50628824cf8e842c1feef",
      "parents": [
        "6c33185c81f4aab0d048be7c4b68dca1a91800c2"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue May 11 17:38:14 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "programmer: Smoothen register_spi_master() API\n\nIt was impossible to register a const struct spi_master that would\npoint to dynamically allocated `data`. Fix that so that we won\u0027t\nhave to create more mutable globals.\n\nChange-Id: I0c753b3db050fb87d4bbe2301a7ead854f28456f\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54066\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/+/72179\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "5dc7d949366c84833d9bf84e0ff3bf7c347c9273",
      "tree": "731e7610e4c796f23ce6d55465265a5f481a4407",
      "parents": [
        "2ab6bba5602a8a2f7e0a99cc94ccc9fe6a412723"
      ],
      "author": {
        "name": "Pete Smith",
        "email": "zailawee@protonmail.com",
        "time": "Wed May 11 10:01:25 2022 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "it87spi.c: Enable probing of IT8686E\n\nEnable probing for IT8686E allowing to use the `dualbiosindex`\nparameter. Dumped and verified both firmwares. Tested on GIGABYTE\nGA-H270N-WIFI.\n\nSigned-off-by: Pete Smith \u003czailawee@protonmail.com\u003e\nChange-Id: I5a1780275a92089c2d91c5da1c472f6d8bc39a56\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/64254\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71468\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": "2ab6bba5602a8a2f7e0a99cc94ccc9fe6a412723",
      "tree": "65cb4b8a6c7de64b6dbf1a41cc333ac4259831a1",
      "parents": [
        "43040f297e68cd4d826d58f57566581ef902d179"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Fri Jun 24 16:48:09 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "it85spi: EOL support\n\nThis code was originally introduced by ITE for now exceedingly old\nChromebooks. The code has had very little attention to maintain it,\nunlikely tested for a long time and now seems to be just a technical\nburden to the flashrom project.\n\nIf someone is later interested it could be resurrected for reference\nfrom git history. However, it needs quite a bit of work to bring it back\ninto maintainable order.\n\nTested: tree builds under meson+make and unit tests pass.\n\nChange-Id: I5e8cafd73db837941c518f0e2d72d8192274fd79\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/65378\nOriginal-Reviewed-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71467\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": "52916f678b35fe0e8f821b76218068ee5735a96e",
      "tree": "6f6beca13f3faefd9581829cac90c7e0b2bff0fd",
      "parents": [
        "317c67b37ba66f50c810938deacbc2e9ce5e11ac"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Fri Oct 09 13:00:17 2020 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:07:04 2023 +0000"
      },
      "message": "it87spi.c: Fix layering violation of default_spi_read\n\ndefault_spi_read() calls spi_read_chunked() with the correct\nmax_read value of 3 set in the spi master struct.\n\nChange-Id: I199c81e1ba501e86dbfb7cf18e2d1556e30db62e\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/46233\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Sam McNally \u003csammc@google.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71327\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "b8a90d0a8c4b9b1a037f763e8792ae4c5363b4fb",
      "tree": "85191d34786a8297b7618919e50b64095fa2cee0",
      "parents": [
        "a1d6865d1ef53626a6a4ae61a89da2ba7d75f8f3"
      ],
      "author": {
        "name": "Nikolai Artemiev",
        "email": "nartemiev@google.com",
        "time": "Thu Oct 28 16:18:28 2021 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Dec 30 01:16:47 2022 +0100"
      },
      "message": "spi25_statusreg: delete spi_read_status_register()\n\nDelete the spi_read_status_register() function because the generic\nspi_read_register() function can be used instead.\n\nThis patch also converts all call sites over to spi_read_register().\nA side effect is that error codes are now properly propagated and\nchecked.\n\nTested: flashrom -{r,w,E}\nTested: Tested with a W25Q128.W flash on a kasumi (AMD) dut.\n     Read SR1/SR2 with --wp-status and activated various WP ranges\n     that toggled bits in both SR1 and SR2.\n\nChange-Id: I146b4b5439872e66c5d33e156451a729d248c7da\nSigned-off-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/59529\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/70975\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "5eca427ae64519b70d1c4ccfb427305ca9974ba0",
      "tree": "1ca22ef1e0072a76650fdd182206844f8ebddd7d",
      "parents": [
        "1bbc501f79319cc6c8d839bc44fa55e96afab33a"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Sun Apr 12 17:27:53 2020 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Dec 30 01:16:34 2022 +0100"
      },
      "message": "const\u0027ify flashctx to align signatures with cros flashrom\n\nThe ChromiumOS flashrom fork has since const\u0027ify flashctx\nin a few places. This aligns the function signatures to\nmatch with downstream to ease forward porting patches\nout of downstream back into mainline flashrom.\n\nThis patch is minimum viable alignment and so feedback is\nwelcome.\n\nChange-Id: Iff6dbda13cb0d941481c0d204b9c30895630fbd1\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/40324\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/70933\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": "d92dd50bcac6b2d0dfffa9f983712f7400990f3d",
      "tree": "957fbc3c081425b31aeba3fb9c44451397323e94",
      "parents": [
        "4af3609828a980bad9ecaf99365f99305d4180f8"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Mon Oct 19 14:20:36 2020 +0200"
      },
      "committer": {
        "name": "Felix Singer",
        "email": "felixsinger@posteo.net",
        "time": "Thu Sep 29 17:05:10 2022 +0000"
      },
      "message": "it87spi.c: Prevent use-after-free bug\n\nThe memory for the `param` string is aliased by `dualbiosindex_suffix`.\nMoreover, `errno` could have been modified by the call to `free()`.\nTherefore, only free the former when there are no more uses of either.\n\nChange-Id: I79f18f6077c77c0cbb8bfa431e17f9b079f11c95\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/46551\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/67866\nReviewed-by: Felix Singer \u003cfelixsinger@posteo.net\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": "deeac7e41a311a0806af0e65a2ce5c6673f9cf92",
      "tree": "2ff1082bf9ed049c2863deff9a6d66b6980b1812",
      "parents": [
        "959aafa53eeae4f22766b9d098e5ca952af8c070"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Apr 22 00:09:42 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jun 27 10:25:15 2019 +0000"
      },
      "message": "spi: Drop spi_controller type\n\nNot needed anymore. Drop it fast before it encourages anyone to\nviolate layers again!\n\nChange-Id: I8eda93b429e3ebaef79e22aba76be62987e496f4\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33651\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "beeb8bc925bef6973e1c9fa6c4fd26a4113a1777",
      "tree": "30c63cf4ae4bb14a19849b1680622ad6eed86d63",
      "parents": [
        "cb44eb7dad17522f47792dca4fc499310ff7d6f3"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Fri Jun 21 15:24:17 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 23 21:39:31 2019 +0000"
      },
      "message": "tree: Make internal functions static\n\nNone of these functions are used outside of the files they are defined\nin, so make them all static.\n\nChange-Id: Ie9cbe12d289bcedacf2f1bf483ae64ef8039ccc1\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33667\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: HAOUAS Elyes \u003cehaouas@noos.fr\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "504215b9f68e26938eea75afcbc22bdf389af991",
      "tree": "85f3be7cd8fb2512a2eca63eb2ac3f3cf2456ce9",
      "parents": [
        "477e1693c830d3246c4fd7caae8a2f2b8e9f49c1"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Apr 22 00:13:15 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Jun 21 12:00:34 2019 +0000"
      },
      "message": "spi25: Fix layering violation in default_spi_write_aai()\n\nChange-Id: I8aa3e2992f64906edc669060936f9522d32637fb\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33649\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "0cacb11c6252b6e1f4f0a2a33b47717ff22995d9",
      "tree": "062ee516f90ae51baf0f5c0f8ffe27c8c91bc4bb",
      "parents": [
        "1cf369fb59546e705c5ca9368e629681c98b2893"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Mon Feb 04 12:16:38 2019 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Mar 04 15:46:25 2019 +0000"
      },
      "message": "Remove trailing whitespace\n\nChange-Id: I1ff9418bcf150558ce7c97fafa3a68e5fa59f11e\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/c/31227\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cf4bug@amsat.org\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "e083880279119677e443fc16b4694f8c81bf2c40",
      "tree": "03413b996779bc4c86ec41590f3e7bcdd97d0ef5",
      "parents": [
        "124ef38f7afc61ad7c713c22aad7c5c7f79bdb9b"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Mon Apr 02 11:14:02 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 24 20:21:41 2018 +0000"
      },
      "message": "Remove address from GPLv2 headers\n\nChange-Id: I7bfc339673cbf5ee2d2ff7564c4db04ca088d0a4\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/25381\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "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": "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": "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"
    },
    {
      "commit": "4dd0f906c6ee620d16f2e87e56344a2cb0bf0a46",
      "tree": "aac06804cc25ac6df6fcd9c93c37671fede2bbd5",
      "parents": [
        "bdead0d27dc03c2f40b36d98dc94b717f38d56e7"
      ],
      "author": {
        "name": "Vadim Girlin",
        "email": "vadimgirlin@gmail.com",
        "time": "Sat Aug 24 12:18:17 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Aug 24 12:18:17 2013 +0000"
      },
      "message": "IT87: Add ability to select between chips on GIGABYTE DualBIOS boards\n\nThanks to Vadim Girlin for finding out how to do that.\nThis is known to work on GA-MA770-UD3, GA-B75M-D3V, GA-B75N and\nGA-H61M-S1 (only M_BIOS is populated).\n\nCorresponding to flashrom svn r1720.\n\nSigned-off-by: Vadim Girlin \u003cvadimgirlin@gmail.com\u003e\nSigned-off-by: Damien Zammit \u003cdamien@zamaudio.com\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nTested-by: Damien Zammit \u003cdamien@zamaudio.com\u003e\nTested-by: Anton Kochkov \u003canton.kochkov@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "352e50b79e084c8f5f768d7b6f2ba6b6bd2ea8ce",
      "tree": "a0bc1780c6b7940f9d159d4342fa55563da80044",
      "parents": [
        "77fa67d2df7395047476b77946fa807fc851f737"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Feb 22 15:58:45 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Feb 22 15:58:45 2013 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 17\n\nTested Mainboards:\nOK:\n - Acer V75-M (used in IBM Aptiva 2170-G)\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010300.html\n - Acorp 6M810C\n   http://www.flashrom.org/pipermail/flashrom/2013-January/010433.html\n - ASRock G31M-S rev 2.0\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010538.html\n - ASUS F1A75-V PRO\n   http://paste.flashrom.org/view.php?id\u003d1528\n - ASUS M5A97 (rev. 1.0)\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010483.html\n - ASUS P5KPL-AM IN/GB\n   http://www.flashrom.org/pipermail/flashrom/2013-January/010455.html\n - GABYTE GA-H77M-D3H\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010538.html\n\nNOT OK:\n - GIGABYTE GA-Z77MX-D3H\n   http://paste.flashrom.org/view.php?id\u003d1529\n   http://paste.flashrom.org/view.php?id\u003d1530\n\nTested flash chips:\n - Winbond W25X10 to PREW (+PREW)\n   Reported on IRC(?)\n - Eon EN25Q32(A/B) to PREW (+REW)\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010533.html\n - Eon EN25Q64 to PREW (+PREW)\n   http://www.flashrom.org/pipermail/flashrom/2013-January/010466.html\n\nMiscellaneous:\n- Fix superflouos line breaks in wiki mainboard and laptop output.\n- Use the .nh (no hyphenation) command in the manpage to enforce\n  single-line URLs where useful.\n- Reference the manpage (besides the Laptops wiki page) in the laptop warning.\n- Minor output and whitespace fixes.\n- Add Fidelix IDs.\n- Add ISSE clones of PMC chips.\n- Fix typo: EMST -\u003e ESMT.\n- Add ID of ESMT F25D08QA.\n- Refine GigaDevice GD25Q series (missing voltages and comments).\n- Use underscore instead of lower-case x as wildcard in Sharp chip names.\n\nCorresponding to flashrom svn r1650.\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": "1c6d2ff03d16acf87c96d019153dcd10c779a5f6",
      "tree": "b211be01cc5f25fa78321dd434e42aafa9ea3f0e",
      "parents": [
        "6745d6f39d2642908035c7e4a6481f5349c767a7"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Aug 27 00:44:42 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Aug 27 00:44:42 2012 +0000"
      },
      "message": "Some ISO C fixes\n\nThis patch just fixes a limited number of bits not conforming to c99 by using\n - __asm__ instead of just asm\n - {0} instead of {} for struct initialization\n - h_addr_list[0] instead of h_addr to access the host address in\n   struct hostent\n - #include \u003cstrings.h\u003e where needed (for ffs and strcasecmp)\n\nBased on a previous patch by Carl-Daniel.\n\nCorresponding to flashrom svn r1585.\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": "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": "32508eb304428551cff40b291d44823aafec7574",
      "tree": "0641d77a791290f6842fd60446e87871f6867651",
      "parents": [
        "3834c2d7e5a08e09e580be0dc7f9369c941b2a70"
      ],
      "author": {
        "name": "Patrick Georgi",
        "email": "patrick.georgi@secunet.com",
        "time": "Fri Jul 20 20:35:14 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jul 20 20:35:14 2012 +0000"
      },
      "message": "Hide hwaccess.h from public API\n\nMove hwaccess.h #include from flash.h to individual drivers.\nlibflashrom users need flash.h, but they do not care about hwaccess.h\nand should not see its definitions because they may conflict with\nother hardware access functions and #defines used by the libflashrom\nuser.\n\nCorresponding to flashrom svn r1549.\n\nSigned-off-by: Patrick Georgi \u003cpatrick.georgi@secunet.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "7bca126561b80f626dea269d7a6284a7cde0a8ed",
      "tree": "45c6b31e39846a88d89d157d758134d7b8dc1db1",
      "parents": [
        "3464d05eb41ab4c7a6faba9a1a36bfbeda0de850"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Fri Jun 15 22:28:12 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 15 22:28:12 2012 +0000"
      },
      "message": "Let the programmer driver decide how to do AAI transfers\n\nCurrently spi_aai_write() is implemented without an abstraction\nmechanism for the programmer driver. This adds another function\npointer \u0027write_aai\u0027 to struct spi_programmer, which is set to\ndefault_spi_write_aai (renamed spi_aai_write) for all programmers\nfor now.\n\nA patch which utilises this abstraction in the dediprog driver will\nfollow.\n\nCorresponding to flashrom svn r1543.\n\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "5e695ab4d7555952f0b020f235d868955251e3ae",
      "tree": "2fbeddbc906b96de794bd02794d73360124277d6",
      "parents": [
        "dc704edad44995845727a231e3f1d6dda74708fd"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 06 17:03:40 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun May 06 17:03:40 2012 +0000"
      },
      "message": "dummyflasher: Add a status register to SPI chips\n\nCorresponding to flashrom svn r1532.\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": "ccd71c21222cd73c55284265d306d52e88d8c6c8",
      "tree": "d2ddcfc5b5c2f1e4f212280c7aa81f9ac2d42d96",
      "parents": [
        "8ee180d9114925c9337ed061502f4a02910e3ff7"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 01 22:38:27 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 01 22:38:27 2012 +0000"
      },
      "message": "Fix parallel-style programmer access from ITE IT87/Winbond W83627 SPI\n\nThe ITE IT87 SPI driver uses a trick to speed up reading and writing:\nIf a flash chip is 512 kByte or less, the flash chip can be completely\nmapped in memory and both read and write accesses are faster that way.\nThe current IT87 SPI code did use the parallel programmer interface for\nmemory mapped reads and writes, but that\u0027s the wrong abstraction. It has\nbeen fixed to use mmio_read*/mmio_write* for that purpose.\n\nThe Winbond W83627 SPI driver uses the same trick in its read path for\nall supported chip sizes. Fix it the same way.\n\nSwitch internal_chip_readn to use mmio_readn as proper abstraction.\n\nKudos to Michael Karcher for spotting the bugs.\n\nTested-by: Johan Svensson \u003cflashrom.js@crypt.se\u003e\n\nCorresponding to flashrom svn r1511.\n\nReported-by: Johan Svensson \u003cflashrom.js@crypt.se\u003e\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": "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": "eaacd2d4e7485d747e4e0bbd54b7bb44cf3fd179",
      "tree": "5e023363074cbe351bc6ded9f20c3f116e6c6f1c",
      "parents": [
        "f382e352ac63108ec0f912ff52b538c99f46c340"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Nov 09 23:40:00 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Nov 09 23:40:00 2011 +0000"
      },
      "message": "Register Parallel/LPC/FWH programmers the same way SPI programmers are registered\n\nAll programmers are now calling programmer registration functions and\ndirect manipulations of buses_supported are not needed/possible anymore.\n\nNote: Programmers without parallel/LPC/FWH chip support should not call\nregister_par_programmer().\n\nAdditional fixes:\nSet max_rom_decode.parallel for drkaiser.\nRemove abuse of programmer_map_flash_region in it85spi.\nAnnotate several FIXMEs in it85spi.\n\nCorresponding to flashrom svn r1463.\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": "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": "2e681601b10c26e0293f285dfcb17d006349e450",
      "tree": "c4bbc8a1958eeae3521810d75d2b90f4bd85625c",
      "parents": [
        "cb24ddbe128eb2ad7ef6e0ef11c4cec461dbbe44"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Sep 08 00:00:29 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Sep 08 00:00:29 2011 +0000"
      },
      "message": "Change programmer selection in cli and generic code\n\nBugfix: Do not accept multiple conflicting --programmer selections.\nRestriction: Do not accept multiple --programmer selections even if\n  there is no conflict.\nUnexport the programmer variable.\nprogrammer_init requires the programmer as first parameter.\nThe default programmer selection is now part of cli_classic.\n\nCorresponding to flashrom svn r1433.\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": "082c8b559cd9f3262c9af58ac2f17f2cc8a09d8b",
      "tree": "ce63847ee6cc1e63289e3f658a5d57ebd35b3619",
      "parents": [
        "0528b7fefa6daf35365c1dee0d21bc94e8120f78"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Aug 15 19:54:20 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Aug 15 19:54:20 2011 +0000"
      },
      "message": "Fixup of r1397\n\n- Mixing uninitialized and initialized local variables leads to\n  confusion.\n- ft2232_spi error cases should have gotten some error handling, and\n  that\u0027s the reason the curly braces were there.\n- Fixing typos/wording in some places would have been nice given that\n  those places were touched anyway.\n\nCorresponding to flashrom svn r1413.\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": "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": "1a227954f2c7d0a25d42bcea2ea0b901ceb0f464",
      "tree": "ff9f4d8bbe04e1e80755b43b36b990b74d6845b3",
      "parents": [
        "4deb8c6a7ad0d4290cb7272a11da94139019c6ae"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jul 27 07:13:06 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jul 27 07:13:06 2011 +0000"
      },
      "message": "Rename CHIP_BUSTYPE_FOO to BUS_FOO\n\nIt\u0027s shorter to type, and we have less problems with the 80 column limit.\n\nCorresponding to flashrom svn r1396.\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": "b9dbe48b77384e2faf0619161fc5c55afe388ea9",
      "tree": "8b556f82073e824bc1e9a4cc9547d67b1d902cee",
      "parents": [
        "627975196d0630a137548df631756e656a8139af"
      ],
      "author": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Wed May 11 17:07:07 2011 +0000"
      },
      "committer": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Wed May 11 17:07:07 2011 +0000"
      },
      "message": "Kill central list of SPI programmers\n\nRemove the array spi_programmer, replace it by dynamic registration\ninstead. Also initially start with no busses supported, and switch to\nthe default non-SPI only for the internal programmer.\n\nAlso this patch changes the initialization for the buses_supported variable\nfrom \"everything-except-SPI\" to \"nothing\". All programmers have to set the\nbus type on their own, and this enables register_spi_programmer to just add\nthe SPI both for on-board SPI interfaces (where the internal programmer\nalready detected the other bus types), as well as for external programmers\n(where we have the default \"none\").\n\nCorresponding to flashrom svn r1299.\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": "bfecef6986b25b630605054680264daf09046f65",
      "tree": "a54fe83e5bd047ca0ae0af1469973a76acddceb8",
      "parents": [
        "880e867ae823dbbd140731f2eaa2ea656b4b9153"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Apr 27 14:34:08 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Apr 27 14:34:08 2011 +0000"
      },
      "message": "Add support for more than one Super I/O or EC per machine\n\nFlashrom currently only supports exactly one Super I/O or Embedded\nController, and this means quite a few notebooks and a small subset of\ndesktop/server boards cannot be handled reliably and easily.\nAllow detection and initialization of up to 3 Super I/O and/or EC chips.\n\nWARNING! If a Super I/O or EC responds on multiple ports (0x2e and\n0x4e), the code will do the wrong thing (namely, initialize the hardware\ntwice). I have no idea if we should handle such situations, and whether\nwe should ignore the second chip with identical ID or not. Initializing\nthe hardware twice for the IT87* family is _not_ a problem, but I don\u0027t\nknow how well IT85* can handle it (and whether IT85* would listen at\nmore than one port anyway).\n\nCorresponding to flashrom svn r1289.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n\nThanks to Thomas Schneider for testing on a board with ITE IT87* SPI.\nTest report (success) is here: http://paste.flashrom.org/view.php?id\u003d379\n\nThanks to David Hendricks for testing on a Google Cr-48 laptop with\nITE IT85* EC SPI. Test report (success) is here:\nhttp://www.flashrom.org/pipermail/flashrom/2011-April/006275.html\nAcked-by: David Hendricks \u003cdhendrix@google.com\u003e\n"
    },
    {
      "commit": "ccfe0acbbf5256ecc5ee6d1fe964d634d08e391f",
      "tree": "5b8d6ec01a60208129a46e24a33ab0c18f9012c9",
      "parents": [
        "f59e2637d184eef8e3ef8914ac500161804fc526"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 27 22:07:11 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 27 22:07:11 2010 +0000"
      },
      "message": "Fix internal offset calculations for SPI BYTE PROGRAM and SPI AAI PROGRAM\n\nThe bug was invisible so far because we always started at offset 0. The\npending partial write patch uses nonzero start offsets and trips over\nthis bug.\n\nClarify a few comments in IT87 SPI.\n\nThanks to Idwer Vollering for reporting write breakage with my latest\npartial write patch. This should fix the underlying problem.\n\nCorresponding to flashrom svn r1217.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Idwer Vollering \u003cvidwer@gmail.com\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": "431f4f77f73af37e17d2f0371c856f84e58dba18",
      "tree": "c93a47aa3b91e7fe4dab81b84c7c700500c5f233",
      "parents": [
        "9017cecd10e7f756899ff0be13a89c79a53d9ec8"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Sep 05 12:41:25 2010 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Sep 05 12:41:25 2010 +0000"
      },
      "message": "Updates to the board and chips status tables\n\nMark the following boards as tested:\n\n - Tyan S2933 (Thunder n3600S) (reported by Pendic Peter \u003cnigma@bluewin.ch\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004375.html\n\n - MSI MS-7642 (890GXM-G65) (reported by Alan McMahon \u003cpam@aldersgate.co.uk\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004393.html\n\n - Shuttle X50/X50(B) (reported by Ed Driesen \u003ced@omts.be\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004472.html\n   (the \"B\" variant is just black instead of white, no hardware differences\n    as far as I can see)\n\n - ASUS M2NPV-VM (reported by Antti Palosaari \u003ccrope@iki.fi\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004476.html\n\n - ZOTAC ZBOX HD-ID11 (reported by s. ewgen \u003csewgen@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004512.html\n\n - ASRock A330GC (reported by Daniel Flinkmann \u003cDFlinkmann@gmx.de\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004517.html\n\n - Congatec conga-X852 (reported by Mario Rogen \u003cMario.Rogen@sie.at\u003e)\n   http://www.coreboot.org/pipermail/coreboot/2008-November/041433.html\n\n - IEI PICOe-9452 (reported by Mario Rogen \u003cMario.Rogen@sie.at\u003e)\n   http://www.coreboot.org/pipermail/coreboot/2008-November/041433.html\n\n - Lex CV700A (reported by Mario Rogen \u003cMario.Rogen@sie.at\u003e)\n   http://www.coreboot.org/pipermail/coreboot/2008-November/041433.html\n\n - Portwell PEB-4700VLA (reported by Mario Rogen \u003cMario.Rogen@sie.at\u003e)\n   http://www.coreboot.org/pipermail/coreboot/2008-November/041433.html\n\nMark the following chips as tested:\n\n - SST SST39SF040 (reported by Mattias Mattsson \u003cvitplister@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004414.html\n\n - Eon EN25F80 (reported by Ed Driesen \u003ced@omts.be\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004472.html\n\n - SyncMOS/MoselVitelic {F,S,V}29C51002T (reported by Mattias\n   Mattsson \u003cvitplister@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-August/004475.html\n\n - PMC Pm29F002T (reported by Tadas S \u003cmrtadis@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-September/004583.html\n\nAlso:\n\n - Fix a few whitespace issues and cosmetics while I\u0027m at it.\n\n - Add the board name (in addition to the Sxxxx number) to all Tyan boards.\n\nCorresponding to flashrom svn r1153.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "5b997c3ed66ddbbb9470f27d4e27ab4c263bc9cf",
      "tree": "adbaace5de6bb0d97a58143c7e3ae775a15d47ff",
      "parents": [
        "1d3a2fefbc636fb569bd1d018fb97b1b17c08e99"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 27 22:41:39 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 27 22:41:39 2010 +0000"
      },
      "message": "Split off programmer.h from flash.h\n\nProgrammer specific functions are of absolutely no interest to any file\nexcept those dealing with programmer specific actions (special SPI\ncommands and the generic core).\n\nThe new header structure is as follows (and yes, improvements are\npossible):\nflashchips.h  flash chip IDs\nchipdrivers.h  chip-specific read/write/... functions\nflash.h  common header for all stuff that doesn\u0027t fit elsewhere\nhwaccess.h hardware access functions\nprogrammer.h  programmer specific functions\ncoreboot_tables.h  header from coreboot, internal programmer only\nspi.h SPI command definitions\n\nCorresponding to flashrom svn r1112.\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": "29a1c66a23bc8685f456d548361b735bf36dcf2b",
      "tree": "963d487fa71ce4b6ad998d89fde9e167ce11e6bb",
      "parents": [
        "ca812d40d461e70a70df6079978e96642775e7b2"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jul 14 20:21:22 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jul 14 20:21:22 2010 +0000"
      },
      "message": "Use generic unlocking infrastructure for SPI chips\n\nActually check if the unlock worked instead of just assuming it worked.\n\nCorresponding to flashrom svn r1082.\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": "9a795d83fbb8842a271d5e037dc983a57b0419fd",
      "tree": "a9049f708d0ab7d42d122fecd23855aaa819c5bc",
      "parents": [
        "1748c5701f77ab7164ab3311f37abc356d825ccb"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jul 14 16:19:05 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jul 14 16:19:05 2010 +0000"
      },
      "message": "Convert SPI chips to partial write\n\nHowever, wrap the write functions in a compat layer to allow converting\nthe rest of flashrom later. Tested on Intel NM10 by David Hendricks.\n\nCorresponding to flashrom svn r1080.\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": "76d4b373ddbe191d621102c502aa4a9ab6c8bb25",
      "tree": "dc504608f4210643a4a0c5d3280fc7342530678e",
      "parents": [
        "2b6dcb36c4121ed12fa2fb66f133365bd88f2456"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 10 16:56:32 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 10 16:56:32 2010 +0000"
      },
      "message": "Generify support for ITE IT8705 Super I/O\n\nAutodetect the ITE IT8705 Super I/O and enable flash writes if it\nperforms LPC-\u003eParallel translation. Remove board enables which triggered\nthe IT8705 write enable manually. Change the IT87 SPI special case to\ncover IT87 LPC-\u003eSPI and LPC-\u003eParallel translation.\n\nCorresponding to flashrom svn r1073.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n\nTested on Syntax SV266A.\nAcked-by: Paul Menzel \u003cpaulepanter@users.sourceforge.net\u003e\n\nTested on Shuttle AK38N, all operations work fine.\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "2b6dcb36c4121ed12fa2fb66f133365bd88f2456",
      "tree": "bea24b22c91729fd1054a4d285bc8f051e5a8f3b",
      "parents": [
        "7af6cefa482d4ceadbd9b68d6db12ad9759c8b04"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jul 08 10:13:37 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jul 08 10:13:37 2010 +0000"
      },
      "message": "Unify programmer parameter extraction\n\nMake programmer_param static by converting all users to extract_programmer_param.\nProgrammer parameters can no longer be separated with a\ncolon, they have to be separated with a comma.\n\nCorresponding to flashrom svn r1072.\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": "744132af4b9f629716394f9c22f6add71cc73ef9",
      "tree": "46de6c5dc108fc2868603fdc606e7328a83f1703",
      "parents": [
        "d1be52d545329debd2128c1aa8685b31dfaa0a0e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 06 09:55:48 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 06 09:55:48 2010 +0000"
      },
      "message": "Various places in the flashrom source feature custom parameter extraction from programmer_param\n\nThis led to wildly differing syntax for programmer parameters, and\nit also voids pretty much every assumption you could make about\nprogrammer_param. The latter is a problem for libflashrom.\n\nUse extract_param everywhere, clean up related code and make it more\nfoolproof. Add two instances of exit(1) where we have no option to\nreturn an error. Remove six instances of exit(1) where returning an\nerror was possible.\n\nWARNING: This changes programmer parameter syntax for a few programmers!\n\nCorresponding to flashrom svn r1070.\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": "ad3cc55e139b2e239325815464fe5f7d828aa794",
      "tree": "46568cf766d19740418be5ca8eaa494c7e69cc36",
      "parents": [
        "b63b067ae22803689592db482611093b33a29eef"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 03 11:02:10 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 03 11:02:10 2010 +0000"
      },
      "message": "Kill global variables, constants and functions if local scope suffices\n\nConstify variables where possible.\nInitialize programmer-related variables explicitly in programmer_init to\nallow running programmer_init from a clean state after\nprogrammer_shutdown.\nProhibit registering programmer shutdown functions before init or after\nshutdown.\nKill some dead code.\nRename global variables with namespace-polluting names.\nUse a previously unused locking helper function in sst49lfxxxc.c.\n\nThis is needed for libflashrom.\n\nEffects on the binary size of flashrom are minimal (300 bytes\nshrinkage), but the data section shrinks by 4384 bytes, and that\u0027s a\ngood thing if flashrom is operating in constrained envionments.\n\nCorresponding to flashrom svn r1068.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "cceafa2ad073fe58b10b6f2317cbd36a63d7ccb5",
      "tree": "f07a19288da12246cf3da5d886be39915cfc59a5",
      "parents": [
        "8d341b5ae774bdf8249c68944a77b72b7c4be640"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed May 26 01:45:41 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed May 26 01:45:41 2010 +0000"
      },
      "message": "Handle the following architectures in generic flashrom code\n\n- x86/x86_64 (little endian)\n- PowerPC (big endian)\n- MIPS (big+little endian)\n\nNo changes to programmer specific code. This means any drivers with MMIO\naccess will _not_ suddenly start working on big endian systems, but with\nthis patch everything is in place to fix them.\n\nCompilation should work on all architectures listed above for all\ndrivers except nic3com and nicrealtek which require PCI Port IO which is\nx86-only for now.\n\nTo compile without nic3com and nicrealtek, run\nmake distclean\nmake CONFIG_NIC3COM\u003dno CONFIG_NICREALTEK\u003dno\n\nThanks to Misha Manulis for testing early versions of this patch on\nPowerPC (big endian) with the satasii programmer.\nThanks to Segher Boessenkool for design review and for helping out with\ncompiler tricks and pointing out that we need eieio on PowerPC.\nThanks to Vladimir Serbinenko for compile testing on MIPS (little\nendian) and PowerPC (big endian) and for runtime testing on MIPS (little\nendian).\nThanks to David Daney for compile testing on MIPS (big endian).\nThanks to Uwe Hermann for compile and runtime testing on x86_64.\n\nDO NOT RUN flashrom ON NON-X86 AFTER APPLYING THIS PATCH!\nThis patch only provides the infrastructure, but does not convert any\ndrivers, so flashrom will compile, but it won\u0027t do the right thing on\nnon-x86 platforms.\n\nCorresponding to flashrom svn r1013.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Misha Manulis \u003cmisha@manulis.com\u003e\nAcked-by: Vladimir \u0027phcoder/φ-coder\u0027 Serbinenko \u003cphcoder@gmail.com\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Segher Boessenkool \u003csegher@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "957d2605426531e763d35c0d8984f34a8d9dd5c3",
      "tree": "a91d660a8a82f1bb26f28d34bb951003d0284a25",
      "parents": [
        "dfdc56f4a03cc84cba67ffc2c10ff89b816c43ee"
      ],
      "author": {
        "name": "Vadim Girlin",
        "email": "vadimgirlin@gmail.com",
        "time": "Tue Mar 30 02:45:18 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Mar 30 02:45:18 2010 +0000"
      },
      "message": "Add ITE IT8720 SPI support\n\nOriginal patch by Vadim Girlin.\nMessage printing updated by Carl-Daniel Hailfinger.\n\nCorresponding to flashrom svn r989.\n\nSigned-off-by: Vadim Girlin \u003cvadimgirlin@gmail.com\u003e\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": "01f3ef4fd1b46cac6b2601c7ae3f4fa1fc1df462",
      "tree": "fbcfb9e21e27d3a33bdb778d3907f05a2af13659",
      "parents": [
        "ed479d2a8728dc12f1f78170cacfaf542cd0b44e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 25 02:50:40 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Mar 25 02:50:40 2010 +0000"
      },
      "message": "Autodetect ITE IT87* LPC-\u003eSPI translation on all boards without the need for a board enable\n\nMove boards which had an IT87* SPI board enable from the board enable\nlist to the OK list.\n\nMark the Gigabyte GA-MA78GPM-DS2H as OK.\n\nChange the it87spi forced port parameter to it87spiport\u003d...\n\nFix incorrect indentation in the man page.\n\nTested by Ward Vandewege on both variants of the Gigabyte GA-M57SLI-S4\nhttp://www.flashrom.org/pipermail/flashrom/2010-March/002712.html\n\nTested by 李彥學 (Ian-Xue Li) on the Gigabyte GA-MA78GPM-DS2H\nhttp://www.flashrom.org/pipermail/flashrom/2010-March/002723.html\n\nCorresponding to flashrom svn r983.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Ward Vandewege \u003cward@gnu.org\u003e\n"
    },
    {
      "commit": "439597032eae0f41745d9173805945c5c85475eb",
      "tree": "76c0a1816f51012775006aa8c82bdfe78901b5ab",
      "parents": [
        "645c6df21a9570da7f8ac07fe740a0df3a1d4d1c"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat Mar 13 17:28:29 2010 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat Mar 13 17:28:29 2010 +0000"
      },
      "message": "Various coding style and cosmetic changes\n\n - Fix coding-style, whitespace, and indentation in a few places.\n\n - Consistently use the same spelling (\"Super I/O\") everywhere.\n\nCorresponding to flashrom svn r933.\n\n - Make some flashrom stdout output look a bit nicer.\n \nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.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": "01e532da40cbffcbfa3c92ae2d9fa470be988af3",
      "tree": "31bee7afa3bd1bc4034643fff4698c27bb46e917",
      "parents": [
        "34b5db73be9c37e249e0f28b27792a3fbe4284a7"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sun Jan 10 01:09:58 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sun Jan 10 01:09:58 2010 +0000"
      },
      "message": "Convert all messages in it87spi.c to the new message infrastructure\n\nChange one msg_pdbg to msg_pinfo, change 7 msg_pinfo to msg_pdbg.\n\nCorresponding to flashrom svn r855.\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": "14e100c9335e310b3e84763f29306392574a14f4",
      "tree": "78dd44d70ae4c3bd0a80fbb959499d06becaa42f",
      "parents": [
        "72a9a02b3864fb730ae9a8cff35266633842e324"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Dec 22 23:42:04 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Dec 22 23:42:04 2009 +0000"
      },
      "message": "SuperI/O detection now happens unconditionally and before the chipset enable\n\nWe could run it after chipset enable, but it definitely has to happen\nbefore board enable because the board enable usually accesses the\nSuperI/O. With this patch, it is possible to add a struct superio to the\nboard enable table for more accurate matching in case subsystem IDs are\nambiguous. This patch focuses on the generic infrastructure aspect and\non support for IT8712F/IT8716F.\n\nThanks go to Adrian Glaubitz and Ward Vandewege for testing.\n\nCorresponding to flashrom svn r813.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Luc Verhaegen \u003clibv@skynet.be\u003e\nAcked-by: Adrian Glaubitz \u003cglaubitz@physik.fu-berlin.de\u003e\n"
    },
    {
      "commit": "f38431a5b23e578cff1299b8d69e7d650c060b60",
      "tree": "293fe367a94034d5b17d622c33e0365ec1a9b871",
      "parents": [
        "c04ee22c7006d6e006086c40651b8761cea0fbfc"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Sep 05 02:30:58 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Sep 05 02:30:58 2009 +0000"
      },
      "message": "Store block sizes and corresponding erase functions in struct flashchip\n\nI decided to fill in the info for a\nfew chips to illustrate how this works both for uniform and non-uniform\nsector sizes.\n\nstruct eraseblock{\nint size; /* Eraseblock size */\nint count; /* Number of contiguous blocks with that size */\n};\n\nstruct eraseblock doesn\u0027t correspond with a single erase block, but with\na group of contiguous erase blocks having the same size.\nGiven a (top boot block) flash chip with the following weird, but\nreal-life structure:\n\ntop\n16384\n8192\n8192\n32768\n65536\n65536\n65536\n65536\n65536\n65536\n65536\nbottom\n\nwe get the following encoding:\n{65536,7},{32768,1},{8192,2},{16384,1}\n\nAlthough the number of blocks is bigger than 4, the number of block\ngroups is only 4. If you ever add some flash chips with more than 4\ncontiguous block groups, the definition will not fit into the 4-member\narray anymore and gcc will recognize that and error out. No undetected\noverflow possible. In that case, you simply increase array size a bit.\nFor modern flash chips with uniform erase block size, you only need one\narray member anyway.\n\nOf course data types will need to be changed if you ever get flash chips\nwith more than 2^30 erase blocks, but even with the lowest known erase\ngranularity of 256 bytes, these flash chips will have to have a size of\na quarter Terabyte. I\u0027m pretty confident we won\u0027t see such big EEPROMs\nin the near future (or at least not attached in a way that makes\nflashrom usable). For SPI chips, we even have a guaranteed safety factor\nof 4096 over the maximum SPI chip size (which is 2^24). And if such a\nbig flash chip has uniform erase block size, you could even split it\namong the 4 array members. If you change int count to unsigned int\ncount, the storable size doubles. So with a split and a slight change of\ndata type, the maximum ROM chip size is 2 Terabytes.\n\nSince many chips have multiple block erase functions where the\neraseblock layout depends on the block erase function, this patch\ncouples the block erase functions with their eraseblock layouts.\nstruct block_eraser {\n  struct eraseblock{\n    unsigned int size; /* Eraseblock size */\n    unsigned int count; /* Number of contiguous blocks with that size */\n  } eraseblocks[NUM_ERASEREGIONS];\n  int (*block_erase) (struct flashchip *flash, unsigned int blockaddr, unsigned int blocklen);\n} block_erasers[NUM_ERASEFUNCTIONS];\n\nCorresponding to flashrom svn r719.\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": "ef58a9ce3f9ae3ce0db34861f0c2d24373712138",
      "tree": "07d03ad8b91541f09b13ac709ef85e93cbc339ca",
      "parents": [
        "415e513d90042b91c1a50a9afe1282e393e574b8"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Aug 12 13:32:56 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Aug 12 13:32:56 2009 +0000"
      },
      "message": "Use a common parameter variable for all programmers\n\nThis allows us to reduce #ifdef clauses a lot if we compile out some\nprogrammers completely.\n\nCorresponding to flashrom svn r679.\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": "116081a224c3b36a4a7d940cfdb1dac1ba35fc75",
      "tree": "e82fbd5e39ffa638a9f56d93e90f0f520d392a53",
      "parents": [
        "db41c59e3ba625659e397675384b08b4ec967fe6"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Aug 10 02:29:21 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Aug 10 02:29:21 2009 +0000"
      },
      "message": "Replace remaining explicit erases in SPI programmer drivers with auto-erases\n\nSome SPI chip drivers and the generic 1-byte SPI chip write functions\ndidn\u0027t include the automatic erase present in other chip drivers.\n\nSince the majority is definitely auto-erase, change the remaining\nexplicit-erase cases to be auto-erase as well.\n\nCorresponding to flashrom svn r673.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Carlos Arnau Perez \u003ccemede@gmail.com\u003e\n"
    },
    {
      "commit": "142e30fcaa1c3a63a1f0baf0b802ef888a0c250b",
      "tree": "c286d89dadacecee2e68b84ce5606467e9ae33e8",
      "parents": [
        "78e4e127129398454813d1552b516638837c423e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 14 10:26:56 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 14 10:26:56 2009 +0000"
      },
      "message": "Use a distinct return code for SPI commands with unsupported/invalid length\n\nSome drivers support only a few combinations of read/write length and\nreturn error otherwise. Having a distinct return code for this error\nmeans we can handle it in upper layers.\n\nCorresponding to flashrom svn r653.\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": "2f1b36fb35873c599442e1828756c1993524cd5e",
      "tree": "836e46a0ba0fcd1ce41a52eddcb3437c2d08e2e5",
      "parents": [
        "39fa9b55cd4c049f43124b873b464641fc9f79a9"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jul 12 12:06:18 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jul 12 12:06:18 2009 +0000"
      },
      "message": "Convert SPI byte program to use the multicommand infrastructure\n\nTested-by: Jakob Bornecrantz \u003cwallbraker@gmail.com\u003e\n\nCorresponding to flashrom svn r651.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nTested it on Epia-m700 worked okay.\nAcked-by: Jakob Bornecrantz \u003cwallbraker@gmail.com\u003e\n"
    },
    {
      "commit": "bb297f733dc78a22d6ee0eb37560207e0c2d424a",
      "tree": "8395175c9b6345f2058811636ed4fdbc5e38b945",
      "parents": [
        "d0478299b1d714a7001f19fb2cafeb257698a2c0"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 11 18:05:42 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 11 18:05:42 2009 +0000"
      },
      "message": "Add an optional flash port parameter for IT87* SPI controllers in standalone programmer mode\n\nIf the parameter is set, the IT87* SPI driver will set the I/O base\nport of the IT87* SPI controller interface to the port specified in the\nparameter. Usage: flashrom -p it87spi\u003dport\u003d0x820\n\nCorresponding to flashrom svn r646.\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": "d0478299b1d714a7001f19fb2cafeb257698a2c0",
      "tree": "4cd9e2881c6f02f26270149770210e6d1aa742cd",
      "parents": [
        "8ef7dce29aead4f17000e2c14b39f0723adc3953"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jul 10 21:08:55 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jul 10 21:08:55 2009 +0000"
      },
      "message": "Add SPI multicommand infrastructure\n\nSome SPI opcodes need to be sent in direct succession after each other\nwithout any chip deselect happening in between. A prominent example is\nWREN (Write Enable) directly before PP (Page Program). Intel calls the\nfirst opcode in such a row \"preopcode\".\n\nRight now, we ignore the direct succession requirement completely and it\nworks pretty well because most onboard SPI masters have a timing or\nheuristics which make the problem disappear.\nThe FT2232 SPI flasher is different. Since it is an external flasher,\ntiming is very different to what we can expect from onboard flashers and\nthis leads to failure at slow speeds.\n\nThis patch allows any function to submit multiple SPI commands in a\nstream to any flasher. Support in the individual flashers isn\u0027t\nimplemented yet, so there is one generic function which passes the each\ncommand in the stream one-by-one to the command functions of the\nselected SPI flash driver.\n\nTested-by: Jakob Bornecrantz \u003cwallbraker@gmail.com\u003e\n\nCorresponding to flashrom svn r645.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Jakob Bornecrantz \u003cwallbraker@gmail.com\u003e\n"
    },
    {
      "commit": "34cc6cc070b671da0a0f7de6c36fd7941e3ce2f9",
      "tree": "953fc3ab094716868fe397d7a0ae0bb4052782cb",
      "parents": [
        "0c854c0509ee41cff4e255d088f48484ca468eb1"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jun 28 10:57:58 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jun 28 10:57:58 2009 +0000"
      },
      "message": "Handle programmer init errors and abort\n\nIf the programmer didn\u0027t initialize correctly, it is pointless to\ncontinue.\n\nFix standalone IT87* SPI init to set flashbus to NONE if no IT87* SPI\ncommunication is possible. Print the I/O port detected by the IT87* SPI\ncode.\n\nCorresponding to flashrom svn r633.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Ward Vandewege \u003cward@gnu.org\u003e\n"
    },
    {
      "commit": "cbf563cbde925dae6971c7df305493a638de51c6",
      "tree": "29b0a806979474c3d8dcbc6acfa7022728ca4a15",
      "parents": [
        "30f7cb2f3c570c99b61bd5df72621f44f1bdd0d0"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jun 16 08:55:44 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jun 16 08:55:44 2009 +0000"
      },
      "message": "Support reads of arbitrary range\n\nThat means you can tell flashrom to read exactly bytes 12345-56789\n(start 12345, length 44445) and it will not fetch a single byte more.\n\nUwe tested this on one LPC, one SPI, and one parallel flash board.\n\nCorresponding to flashrom svn r596.\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": "38a059d6ef1ebb7145a04825fec0ebef1d8a66a7",
      "tree": "66c9108eda2f0f7129f2ba55b9cb757414d9466a",
      "parents": [
        "8b2f46b878a952a0ea0869624636cb4d6f5fa8c1"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jun 13 12:04:03 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jun 13 12:04:03 2009 +0000"
      },
      "message": "Every SPI host controller implemented its own way to read flash chips\n\nThis was partly due to a design problem in the abstraction layer.\n\nThere should be exactly two different functions for reading SPI chips:\n- memory mapped reads\n- SPI command reads.\n\nEach of them should be contained in a separate function, optionally\ntaking parameters where needed.\n\nThis patch solves the problems mentioned above, shortens the code and\nmakes the code logic a lot more obvious.\n\nSince open-coding the min() function leads to errors, include it in this\npatch as well.\n\nCorresponding to flashrom svn r589.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Ronald G. Minnich \u003crminnich@gmail.com\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": "b22918cadc5ba07c037935644f8c6dcef0583e23",
      "tree": "c2fd7bff346e61d3433a0c0e2fe66b7173e482de",
      "parents": [
        "3504b539bfa33693510d83402a344b1eafd7a592"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 01 02:08:58 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 01 02:08:58 2009 +0000"
      },
      "message": "Only probe for chips with compatible bus protocols\n\nIt doesn\u0027t make sense to probe for SPI chips on a LPC host, nor does it\nmake sense to probe for LPC chips on a Parallel host.\n\nThis change is backwards compatible, but adding host protocol info to\nchipset init functions will speed up probing.\n\nOnce all chipset init functions are updated and the Winbond W29EE011 and\nAMIC A49LF040A chip definitions are updated, the W29EE011 workaround can\nbe deleted as the W29/A49 conflict magically disappears.\n\nCorresponding to flashrom svn r560.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nTested on real hardware and\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "b8afecd0f5b87d319e5be385d670bb6bf368d7f8",
      "tree": "97fc6f5f98b27d821d7a3a917742ea8020bd4528",
      "parents": [
        "1dfe0ff1745118406f2ca0d03340dd346cc39770"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 31 18:00:57 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 31 18:00:57 2009 +0000"
      },
      "message": "Add IT87xx SPI as external flasher option\n\nThis is a fast way to test if a IT87xx board_enable() would work.\n\nCorresponding to flashrom svn r557.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nTested-by: Harald Gutmann \u003charald.gutmann@gmx.net\u003e\nAcked-by: Harald Gutmann \u003charald.gutmann@gmx.net\u003e\n"
    },
    {
      "commit": "1dfe0ff1745118406f2ca0d03340dd346cc39770",
      "tree": "8b0f6db0abbbd38355b6ddf8feadb7b06a4e9bab",
      "parents": [
        "ebd7b8393906876d4b450d8b83a9b748d43c64b4"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 31 17:57:34 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 31 17:57:34 2009 +0000"
      },
      "message": "Add bus type annotation to struct flashchips\n\nRight now, the annotation only differentiates between SPI and non-SPI.\nAnyone who knows more about a specific flash chip should feel free to\nupdate it.\n\nThe existing flashbus variable was abused to denote the SPI controller\ntype. Use an aptly named variable for that purpose.\n\nOnce this patch is merged, the chipset/programmer init functions can set\nsupported flash chip types and flashrom can automatically select only\nmatching probe/read/erase/write functions. A side benefit of that will\nbe the elimination of the Winbond W29EE011 vs. AMIC A49LF040A conflict.\n\nCorresponding to flashrom svn r556.\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": "24c1a160307b2a9c670ab97ae263f368cd722209",
      "tree": "c264e03cfe42da303a812d515de7361235ba986c",
      "parents": [
        "1fa386262c24c45348ac2fb5160217b873318b44"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 25 23:26:50 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 25 23:26:50 2009 +0000"
      },
      "message": "Refactor SuperIO accesses\n\nWe had duplicated code under different names and even open-coded some\nfunctions in some places.\n\nwbsio_read/regval -\u003e sio_read wbsio_write/regwrite -\u003e sio_write\nwbsio_mask -\u003e sio_mask\n\nboard_biostar_p4m80_m4 now uses existing IT87 functions.\n\nCorresponding to flashrom svn r547.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Luc Verhaegen \u003clibv@skynet.be\u003e\n"
    },
    {
      "commit": "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": "96930c39524225cc55a5625e6e45d7519b3f2528",
      "tree": "40368d966ea3689aa4c8c2b020984671cc45d1d9",
      "parents": [
        "03adbe12691d512c0d9f28caa93cb35e468fd5d3"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 09 02:30:21 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 09 02:30:21 2009 +0000"
      },
      "message": "Chips like the SST SST25VF080B can only handle single byte writes outside AAI mode\n\nChange SPI architecture to handle 1-byte chunk chip writing differently\nfrom 256-byte chunk chip writing.\n\nAnnotate SPI chip write functions with _256 or _1 suffix denoting the\nnumber of bytes they write at maximum.\n\nThe 1-byte chunk writing is cut-n-pasted to different SPI drivers right\nnow. A later patch can move them to the generic spi_chip_write_1.\n\nCorresponding to flashrom svn r485.\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": "03adbe12691d512c0d9f28caa93cb35e468fd5d3",
      "tree": "9bd6460e4a69d0647706ab139184870b32244441",
      "parents": [
        "c3129208648f241c0b6538235cd4e9854ae6539d"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 09 02:09:45 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 09 02:09:45 2009 +0000"
      },
      "message": "Refine handling of spi_write_enable() failures to fix chip erases on ichspi\n\nUntil the ICH SPI driver can handle preopcodes as standalone opcodes,\nwe should handle such special opcode failure gracefully on ICH and\ncompatible chipsets.\n\nThis fixes chip erase on almost all ICH+VIA SPI masters.\n\nThanks to Ali Nadalizadeh for helping track down this bug!\n\nCorresponding to flashrom svn r484.\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": "d3bce83599358722791b6051ea45de70628adb57",
      "tree": "94f81a93a4b675f5d8bf942449420ff0201fc29f",
      "parents": [
        "1fec0f35c70bede4c9d54e3007f609611b354f1e"
      ],
      "author": {
        "name": "Peter Stuge",
        "email": "peter@stuge.se",
        "time": "Mon Jan 12 21:28:03 2009 +0000"
      },
      "committer": {
        "name": "Peter Stuge",
        "email": "peter@stuge.se",
        "time": "Mon Jan 12 21:28:03 2009 +0000"
      },
      "message": "IT8718F works just like IT8716F\n\nCorresponding to flashrom svn r379 and coreboot v2 svn r3858.\n\nSigned-off-by: Peter Stuge \u003cpeter@stuge.se\u003e\nAcked-by: Yul Rottmann \u003cyulrottmann@bitel.net\u003e\n"
    },
    {
      "commit": "394131ef1447aa9019f9b03797955fb4fdda74bd",
      "tree": "8be1ee454d786c1aae0ea45be068e22b2a7c70a5",
      "parents": [
        "a88daa731de1612641a9a8df2a63f5529ac7a6b1"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat Oct 18 21:14:13 2008 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat Oct 18 21:14:13 2008 +0000"
      },
      "message": "Coding-style fixes for flashrom, partly indent-aided\n\nCorresponding to flashrom svn r326 and coreboot v2 svn r3669.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "f83221b6db1a35b559830c01fe40cdb4fa3f5fb2",
      "tree": "83dc53759cd8cca1419c8e1e43dc3e83d15995f2",
      "parents": [
        "6a214163c098f63a2fc3595d69f41b1cab0e64c9"
      ],
      "author": {
        "name": "Peter Stuge",
        "email": "peter@stuge.se",
        "time": "Mon Jul 07 06:38:51 2008 +0000"
      },
      "committer": {
        "name": "Peter Stuge",
        "email": "peter@stuge.se",
        "time": "Mon Jul 07 06:38:51 2008 +0000"
      },
      "message": "Trivial SPI cleanups\n\nWhile writing a new SPI driver I fixed some things in the SPI code:\nAll calls to spi_command() had unneccessary #define duplications, and in some\ncases the read count define could theoretically become harmful because NULL was\npassed for the read buffer. Avoid a crash, should someone change the #defines.\n\nI also noticed that the only caller of spi_page_program() was the it87 driver,\nand spi_page_program() could only call back into the it87 driver. Removed the\nfunction for easier-to-follow code and made it8716f_spi_page_program() static.\nThe ichspi driver\u0027s static page functions are already static.\n\nCorresponding to flashrom svn r302 and coreboot v2 svn r3418.\n\nSigned-off-by: Peter Stuge \u003cpeter@stuge.se\u003e\nAcked-by: Peter Stuge \u003cpeter@stuge.se\u003e\n"
    },
    {
      "commit": "2cb94e183be9c69afcf426f70a9b4cb2bbd8bded",
      "tree": "151967e33263eafe4b36b556765e565532349af0",
      "parents": [
        "e3eb9c1d69fcd878b8f6c153dbc1e15fd8b3d08d"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Mon Jun 30 23:45:22 2008 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Mon Jun 30 23:45:22 2008 +0000"
      },
      "message": "First attempt to clean up SPI probing and create a common construct: the flash bus\n\nAt some point the flash bus will be part of struct flashchip.\n\nPardon me for pushing this in, but I think it is important to beware of further\ndecay and it will improve things for other developers in the short run.\n\nCarl-Daniel, I will consider your suggestions in another patch. I want to keep\nthings from getting too much for now. The patch includes Rudolf\u0027s VIA SPI\nchanges though.\n\nCorresponding to flashrom svn r285 and coreboot v2 svn r3401.\n\nSigned-off-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "65c1b86fe7e0067b2c42e34c37265ddc0653d0f2",
      "tree": "02857d1503952dafdf3ff69e6ebf4daba347d609",
      "parents": [
        "cdbca5b23ce19744d36fbcc30111d963e23195f4"
      ],
      "author": {
        "name": "Andriy Gapon",
        "email": "avg@icyb.net.ua",
        "time": "Thu May 22 13:22:45 2008 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu May 22 13:22:45 2008 +0000"
      },
      "message": "Changes to make flashrom compile (and work) on FreeBSD\n\nThis patch addresses different argument order of outX() calls,\nFreeBSD-specific headers, difference in certain type names and system\ninterface names, and also FreeBSD-specific way of gaining IO port\naccess.\n\nCorresponding to flashrom svn r245 and coreboot v2 svn r3344.\n\nSigned-off-by: Andriy Gapon \u003cavg@icyb.net.ua\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "337df1d618327e9e440d21725dd9486f3c179898",
      "tree": "18ba00652c0b471ee9e4d93c2ef132f35ca869cc",
      "parents": [
        "f43e6428dbde77e6610ca891724c8f39ad8ba181"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri May 16 00:19:52 2008 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri May 16 00:19:52 2008 +0000"
      },
      "message": "IT8716F: Enable writes if decoding of any SPI addresses is enabled\n\nCorresponding to flashrom svn r238 and coreboot v2 svn r3324.\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": "bfe5b4ab74f2910c77ee0fe00d1586985115d6d2",
      "tree": "53600a9c1ec08e66702f08bdb95c63ad939a48a9",
      "parents": [
        "d6cbf76ee527da983b0405ca41ccd60a14d3d7be"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue May 13 23:03:12 2008 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue May 13 23:03:12 2008 +0000"
      },
      "message": "Move all IT87xx specific SPI routines from spi.c to a separate file it87spi.c\n\nNo behavioural changes, but greatly improved SPI abstraction.\n\nCorresponding to flashrom svn r229 and coreboot v2 svn r3305.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Peter Stuge \u003cpeter@stuge.se\u003e\n"
    }
  ]
}
