)]}'
{
  "log": [
    {
      "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": "9a11cbf21a5078bcdb8db7584c44a9ee17020db4",
      "tree": "e67a9eadfdb7a71f81df36c7e97180474a8c59df",
      "parents": [
        "aabb3e0ff54e87c0136c91f105e506ed19184cc6"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Jan 13 01:19:07 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 09 10:40:04 2024 +0000"
      },
      "message": "Let the flash context directly point to the used master\n\nWe used to have a pointer to a full `registered_master` struct in\nour flash context. Beside the used master, this contained a bit\nmask of supported buses. Oddly convenient, this bit mask invited\nto bypass the chip driver and break the abstraction. It allowed\nto place bus-specific details virtually anywhere in flashprog,\nmaking it harder to find a good place for them.\n\nSo, get rid of the `buses_supported` bit mask by pointing directly\nto the master. Only the chip driver will implicitly know which type\nof master is used.\n\nChange-Id: I9ce13d8df0e7ccc67519d888dd9cb2e2ff8d6682\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/72533\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": "e3a26888e14d16592c2c79d1516828d3d32961a4",
      "tree": "02d401e60defd27fe7bee194978bac782284cb39",
      "parents": [
        "2b66ad9c4465432e6f2aff2e95f1e7a556bfc3f0"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jan 11 21:45:51 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 09 10:30:24 2024 +0000"
      },
      "message": "Pass programmer context to programmer-\u003einit()\n\nChange-Id: I064eb4e25c3d382e4e5bde802306698fafe5e1d0\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/72526\n"
    },
    {
      "commit": "c3b02dce51aad2766512d1939a1b7447c2d526b8",
      "tree": "58069f464bb8a777ef06e93767813a4c5a042cb0",
      "parents": [
        "a02df33fbf1c196395a61049e60895d4ae0e0a5b"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Aug 12 01:13:45 2023 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Sep 18 19:24:39 2023 +0000"
      },
      "message": "Rebrand to flashprog and update URLs\n\nMostly automated `sed` work. As of now, URLs to the old wiki are broken\neither way, so changing them shouldn\u0027t hurt. Other URLs (e.g. to mailing\nlist archives) were hopefully filtered correctly.\n\nChange-Id: I9d43bfd0e675eff2fcbad05f304b9ce9f5006b08\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashrom-stable/+/21\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": "0b587f921aebd36aaa9f69faea0d2601386d7379",
      "tree": "c13c57f89dd385d3ed1bd76893cf7a251f8eba1a",
      "parents": [
        "7310f19a07d70a16a0e6342ceb538854729282cd"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Fri Sep 09 23:01:05 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "spi: Make \u0027default_spi_write_aai\u0027 the default unless defined\n\nA NULL func pointer is necessary and sufficient for the\ncondition `NULL func pointer \u003d\u003e default_spi_write_aai\u0027 as to not\nneed this explicit specification of \u0027default\u0027.\n\nTherefore drop the explicit need to specify the \u0027default_spi_write_aai\u0027\ncallback function pointer in the spi_master struct. This is a reasonable\ndefault for every other driver in the tree with only a few exceptions.\n\nThis simplifies the code and driver development.\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: I7f14aaea0edcf0c08cea0e9cd27d58152707fb2a\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67479\nOriginal-Reviewed-by: Peter Marheine \u003cpmarheine@chromium.org\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72369\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "621208c341cb400b9b13b5874da49504818a9f49",
      "tree": "1a851dd54e96add7fe6e30de98fe3b5e4424a775",
      "parents": [
        "56684d9a2ed8a0f878472d5aa0518a3200526812"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Sep 07 22:21:39 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "drivers/: Make \u0027fallback_{un}map\u0027 the default unless defined\n\nDrop the explicit need to specify the default \u0027fallback_{un}map\u0027\ncallback function pointer from the \u0027programmer_entry\u0027 struct.\nThis is a reasonable default for every other driver in the tree\nwith only a select few exceptions [atavia, serprog, dummyflasher\nand internal].\n\nThus this simplifies driver development and paves way\nto remove the \u0027programmer\u0027 global handle.\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: I5ea7bd68f7ae2cd4af9902ef07255ab6ce0bfdb3\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67404\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\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/+/72360\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "56684d9a2ed8a0f878472d5aa0518a3200526812",
      "tree": "020c2d8db0e05a74981b5b381c37febd46fb796d",
      "parents": [
        "78ed668a924db5dd78c3530655127f895728fe59"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Sep 07 10:47:45 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "drivers/: Make \u0027internal_delay\u0027 the default unless defined\n\nDrop the explicit need to specify the default \u0027internal_delay\u0027\ncallback function pointer in the programmer_entry struct.\nThis is a reasonable default for every other driver in the\ntree with only the two exceptions of ch341a_spi.c and serprog.c.\n\nThus this simplifies driver development.\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: I17460bc2c0aebcbb48c8dfa052b260991525cc49\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67391\nOriginal-Reviewed-by: Peter Marheine \u003cpmarheine@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72359\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "c63d9184aaef45d5a970f045ae901bf9f7221108",
      "tree": "424ae7b122e2ff722d5fdf3ba486b701bd9bd052",
      "parents": [
        "72c02ff4b0ea4111d4f2632ba102506683607749"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Tue Jul 06 16:18:44 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "spi_master: Use new API to register shutdown function\n\nThis allows spi masters to register shutdown function in spi_master\nstruct, which means there is no need to call register_shutdown in init\nfunction, since this call is now a part of register_spi_master.\n\nAs a consequence of using new API, two things are happening here:\n1) No resource leakage anymore in case register_shutdown() would fail,\n2) Fixed propagation of register_spi_master() return values.\n\nBasic testing: when I comment out free(data) in linux_spi_shutdown, test\nfails with error\n../linux_spi.c:235: note: block 0x55a4db276510 allocated here\nERROR: linux_spi_init_and_shutdown_test_success leaked 1 block(s)\nMeans, shutdown function is invoked.\n\nTested:  1) builds and ninja test including CB:56911\n2) On ARMv7 device\nflashrom -p linux_spi -V\n-\u003e using linux_spi, chip found\n3) On x86_64 AMD device\nflashrom -p internal -V\n-\u003e this is actually using sb600spi, chip found\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: Ib60300f9ddb295a255d5ef3f8da0e07064207140\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/56103\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72231\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "346d54dda7dcbb1281a869641a2b35b45096bce5",
      "tree": "912b4cf499128134575aa4f86a8b14a610334b6f",
      "parents": [
        "d8f8c993a0b3622f3ec01b384448bae1187b3000"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Thu Jun 10 09:57:51 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "buspirate_spi.c: Drop bp_ prefix for spi data struct members\n\nThe name of the struct type already contains bp_ prefix, so\nprefix doesn\u0027t need to be repeated in members name.\n\nChange-Id: Ia463e3f58497e4b10be072bdd29244f4868098e7\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54886\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72210\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "d8f8c993a0b3622f3ec01b384448bae1187b3000",
      "tree": "4ef921b3210b299af7d60cf4549bc3b57943a7bf",
      "parents": [
        "4e9e99cca942890576b154b90571fe86cbba3058"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Thu May 06 07:47:04 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "buspirate_spi.c: Refactor singleton states into reentrant pattern\n\nMove global singleton states into a struct and store within\nthe spi_master data field for the life-time of the driver.\n\nThis is one of the steps on the way to move spi_master data\nmemory management behind the initialisation API, for more\ncontext see other patches under the same topic \"register_master_api\".\n\nChange-Id: I418bbfff15fb126b042fbc9be09dbf59f4d243b8\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/52958\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72209\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": "cf6b70883ea79aac874901184009a048bc46ec45",
      "tree": "23c4e7584b0f5e744066ec548126b71b6629f902",
      "parents": [
        "316ef019e04c402423bb4602aa9f5f231062b175"
      ],
      "author": {
        "name": "Felix Singer",
        "email": "felixsinger@posteo.net",
        "time": "Thu Aug 18 23:57:31 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "buspirate_spi.c: Retype appropriate variables with bool\n\nUse the bool type instead of integer for appropriate variables, since\nthis represents their purpose much better.\n\nSigned-off-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nChange-Id: I245616168796f2c7fe99388688b0f606bd3405bf\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66868\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/+/71479\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": "ee6d548becb29d4fce00a6f7dbe0c39e1e7be160",
      "tree": "940405142f24dcbcfd59f931a433fed297be48e7",
      "parents": [
        "38450ce384c8e6e05f34a0bd0246fcb919259222"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Thu Jun 24 16:25:43 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "buspirate_spi: Use non-zero return value from buspirate_sendrecv\n\nReturn values for buspirate_sendrecv come from serialport_write\nand serialport_read, and those return 1s for any error. No need\nto explicity assign ret \u003d 1, because it is already 1 for error.\n\nFollow up on commit 751afa88a7f22487069665c5d206ae490f158231\nwhere this idea was suggested.\n\nChange-Id: I31fd70f607dc965d5cac1cd0116faa447dbc177a\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55818\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71397\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": "98bdcb46de824e6671671ed83465cec3087f69ba",
      "tree": "08c53170c94b115596d4ca58b0e839cdc9a03ff3",
      "parents": [
        "7dcb6f33d0e97154b3533917fad3dea0dad676bc"
      ],
      "author": {
        "name": "Jeremy Kerr",
        "email": "jk@codeconstruct.com.au",
        "time": "Sun May 23 17:58:06 2021 +0800"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "buspirate: Add psus option\n\nThis change adds a \u0027psus\u003d\u003con|off\u003e\u0027 option, to control the external Vcc\nstate of the bus pirate, allowing hardware where the SPI flash chip is\npowered by the 3V3/5V lines directly.\n\nChange-Id: I8a7d4b40c0f7f04f6976f6757f05b61f2c9958f9\nSigned-off-by: Jeremy Kerr \u003cjk@codeconstruct.com.au\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54887\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71389\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": "7dcb6f33d0e97154b3533917fad3dea0dad676bc",
      "tree": "05d10b7288a928f72f231c29fc07d58bbb7ed066",
      "parents": [
        "1535db44bdc06e6cf52defc519af86197ca414e5"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Mon May 24 15:12:10 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "buspirate_spi.c: Separate shutdown from failed init cleanup\n\nShutdown function was covering two different jobs here: 1) the actual\nshutdown which is run at the end of the driver\u0027s lifecycle and\n2) cleanup in cases when initialisation failed. Now, shutdown is only\ndoing its main job (#1), and the driver itself is doing cleanup\nwhen init fails (#2).\n\nThe good thing is that now resources are released/closed immediately\nin cases when init fails (vs shutdown function which was run at some\npoint later), and the driver leaves clean space after itself if init\nfails.\n\nAnd very importantly this unlocks API change which plans to move\nregister_shutdown inside register master API, see\nhttps://review.coreboot.org/c/flashrom/+/51761\n\nChange-Id: I04d57e2552d23a1a4a906c68539f0ccefc13e8a0\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/52877\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71388\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": "cc853d84ed2f8ecafc1f6daa443f8baa4c871805",
      "tree": "8e5f3e0b7a75d272a109e20af5aeeeec11dfebf7",
      "parents": [
        "7e1345602641114c8eeb5cfef992bf1da8d7fa6a"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Tue May 04 15:32:17 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "programmer_table: move each entry to the associated programmer source\n\nChange-Id: I3d02bd789f0299e936eb86819b3b15b5ea2bb921\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/52946\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71373\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": "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": "4a84ec273a487c27f91bd3df70cbdf8894af70e1",
      "tree": "faee09346d0a195ac778befa68a87c5f669cfe22",
      "parents": [
        "de77ad4678cb33ca0b58edf89fab8113eb304bcd"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Thu Jul 25 19:12:31 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Oct 04 14:35:20 2019 +0000"
      },
      "message": "tree: Enable -Wwrite-strings\n\nWhen compiling, this warning gives string literals the type const char[]\nto help catch accidental modification (which is undefined behaviour).\nThere currently aren\u0027t any instances of this in flashrom, so let\u0027s\nenable this warning to keep it that way. This requires adding const\nqualifiers to the declarations of several variables that work with\nstring literals.\n\nChange-Id: I62d9bc194938a0c9a0e4cdff7ced8ea2e14cc1bc\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/34577\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\n"
    },
    {
      "commit": "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": "d82be7b2be34fb3273781e72f5d8e52a3103b961",
      "tree": "a2f2694e7cbbd18d52d3267167ffc3d4e3cff5b2",
      "parents": [
        "6eca76123ca765e4afcfac43bfe2f27a5f977a97"
      ],
      "author": {
        "name": "Richard Hughes",
        "email": "richard@hughsie.com",
        "time": "Wed Dec 19 15:38:51 2018 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jan 05 16:26:01 2019 +0000"
      },
      "message": "buspirate_spi: Fix a missing error check during _init()\n\nChange-Id: I17c6737853bf311b3f7aa9bfb10b54ce19e95ecc\nSigned-off-by: Richard Hughes \u003crichard@hughsie.com\u003e\nReviewed-on: https://review.coreboot.org/c/30407\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "e2c90c45f7d1dbdd02269f0a8f3c95cb8ee5fa91",
      "tree": "2abda8ef6e3506d00711dcf527b97f61a5b930fd",
      "parents": [
        "5bd11dc8476b4b17cef58d8d855f2b50e74da2f4"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Sat Aug 18 09:04:41 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Aug 19 10:42:45 2018 +0000"
      },
      "message": "Fix typos\n\nChange-Id: I20745d5f30f9577622e27abf2f45220f026f65ac\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/28206\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "2099c648b929cd36c500202089ef4b7a8c14680f",
      "tree": "d934dc4be97cd3e0e97b948f66463142c598b8cd",
      "parents": [
        "256835787229205b6522a3c12322b22303bb4152"
      ],
      "author": {
        "name": "Maxime Vincent",
        "email": "maxime.vince@gmail.com",
        "time": "Fri Nov 24 13:04:08 2017 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri May 11 16:15:19 2018 +0000"
      },
      "message": "buspirate_spi: Tristate IOs when using using pullup\u003don\n\nAvoid putting 3.3V on IO pins when pullup\u003don to avoid damage to 1.8V\nchips.\n\nSigned-off-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nChange-Id: I9ac4c6b7a0079bb1022f2d70030a6eb29996108f\nReviewed-on: https://review.coreboot.org/23864\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\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": "124ef38f7afc61ad7c713c22aad7c5c7f79bdb9b",
      "tree": "980f498681fcc053ec1e591e22bb16afbef0a191",
      "parents": [
        "3f7e3419887c6d37330387f8e32c86ba47bdf70c"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Tue Mar 27 12:15:09 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 24 20:18:58 2018 +0000"
      },
      "message": "Fix whitespace errors\n\nChange-Id: Ic2d3bb9d8581a0471a8568a130f893b34dddf113\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/25380\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "2b5adfb1b656dd6a6efbf45a7a411c87840c5394",
      "tree": "cfc4bf09d45d4ad59b645c0cadaec9507ba5c152",
      "parents": [
        "25fde40f8594b1c13ba7a4c3a605b96b200a4e11"
      ],
      "author": {
        "name": "Shawn Anastasio",
        "email": "shawnanastasio@yahoo.com",
        "time": "Sun Dec 31 00:17:15 2017 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Jan 26 15:23:10 2018 +0000"
      },
      "message": "buspirate_spi: Add support for variable serial speeds\n\nThis patch sets the default baud rate for communication between\nthe host device and the Bus Pirate for hardware versions 3.0\nand greater to 2M baud.\n\nIt also introduces the ability to manually set the baud rate via\nthe added \u0027serialspeed\u0027 programmer parameter.\n\nThis is done in two parts. Firstly, the requested serial speed is looked up\nin a table to determine the appropriate clock divisor and the divisor is sent\nto the bus pirate. Then, the system\u0027s baud rate for the selected serial port\nis set using serial.c\u0027s \u0027serialport_config\u0027. This function\u0027s prototype had to\nbe added to programmer.h.\n\nIn testing, using the 2M baud rate was able to significantly decrease\nflash times (down from 20+ minutes to less than 2 minutes for an 8MB flash).\n\nChange-Id: I3706f17a94fdf056063f2ad4a5f0a219665cdcbf\nSigned-off-by: Shawn Anastasio \u003cshawnanastasio@yahoo.com\u003e\nReviewed-on: https://review.coreboot.org/23057\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "1cf407b4f8d56035816efaf936a40553441eca46",
      "tree": "c8e41e1172aaeb567af161a9763521c53073bdc4",
      "parents": [
        "ed098d62d66d91cf7330a37f9b83e303eb7f56d8"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Nov 10 20:18:23 2017 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Jan 02 20:14:34 2018 +0000"
      },
      "message": "spi_master: Introduce SPI_MASTER_4BA feature flag\n\nAdd a feature flag SPI_MASTER_4BA to `struct spi_master` that advertises\nprogrammer-side support for 4-byte addresses in generic commands (and\nread/write commands if the master uses the default implementations). Set\nit for all masters that handle commands address-agnostic.\n\nDon\u0027t prefer native 4BA instructions if the master doesn\u0027t support them.\n\nChange-Id: Ife66e3fc49b9716f9c99cad957095b528135ec2c\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/22421\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\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": "1838591b684b515962b941018288366eb7276a2b",
      "tree": "d8118a4e310604b1c154bf9dd01225eb44d59d7a",
      "parents": [
        "907c3eb800a04c6266d1dae519cba2ba46de8f49"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Sat Apr 26 16:12:45 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Apr 26 16:12:45 2014 +0000"
      },
      "message": "CID1130006: Memory leaks in buspirate_spi_init()\n\nThe one in the error case of register_shutdown() was discovered while\nreviewing the other one found by Coverity and fixed by Stefan Reinauer.\n\nCorresponding to flashrom svn r1778.\n\nSigned-off-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "73dc0db7258121f260eeda04f50531f3eda943ee",
      "tree": "752c2840a2c207360bcabaebfdbd66ceabc26c87",
      "parents": [
        "02437458a603c112e503abc63ad32b09cfbc23f3"
      ],
      "author": {
        "name": "Maksim Kuleshov",
        "email": "mmcx@mail.ru",
        "time": "Fri Apr 05 08:06:10 2013 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Apr 05 08:06:10 2013 +0000"
      },
      "message": "Usleep() is not found in all versions of MinGW, use Sleep() on Windows\n\nHandle long sleeps on non-Windows correctly.\n\nCorresponding to flashrom svn r1667.\n\nSigned-off-by: Maksim Kuleshov \u003cmmcx@mail.ru\u003e\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "30dfdbaf3ab30974a6d76e085525d52c033e4215",
      "tree": "05451bdc93ffcab3935c6ac35f5f0dd480c9f012",
      "parents": [
        "e34e3e8a49172ba09eb058c9a028706647dca165"
      ],
      "author": {
        "name": "Brian Salcedo",
        "email": "bsalcedo@gmx.us",
        "time": "Thu Jan 03 20:44:30 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jan 03 20:44:30 2013 +0000"
      },
      "message": "Add user interface to activate the Bus Pirate pull-up resistors\n\nWhen working with some flash chips using the Bus Pirate programmer, the\nuse of the Bus Pirate\u0027s on-board pull-up resistors is sometimes\nnecessary.\n\nOn v3 hardware the use of said pull-up resistors requires the user to apply a\nvoltage to the VPU pin of the Bus Pirate, and then command it to use them.\nFor v4 hardware which supports also fixed internal 3.3V and 5V sources no\ndocumentation could be found.\n\nHere is a link to information pertaining to what this patch does:\nhttp://dangerousprototypes.com/docs/SPI_(binary)#0100wxyz_-_Configure_peripherals_w.3Dpower.2C_x.3Dpull-ups.2C_y.3DAUX.2C_z.3DCS\n\nBonus: small cleanup of superfluous stack variables.\n\nCorresponding to flashrom svn r1641.\n\nSigned-off-by: Brian Salcedo \u003cbsalcedo@gmx.us\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nTested-by: Brian Salcedo \u003cbsalcedo@gmx.us\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "acfc4c6c2fb66e8142df8ed69aa8c6374abc871a",
      "tree": "5ff0aa18b77638d51e0870ca1f1229fd393809f0",
      "parents": [
        "62574aa5c0bf0df43a2ed0182562f17f30825f0d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Nov 30 16:46:45 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Nov 30 16:46:45 2012 +0000"
      },
      "message": "Fix sp_openserport users on Windows\n\nCorresponding to flashrom svn r1627.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\n"
    },
    {
      "commit": "64263c7ed23dcace7e003cf0d46f143a8f9c61ec",
      "tree": "fb5d5440c137b72e16ffbe1d1beba4e72b152c8f",
      "parents": [
        "c31243e1739a4ba21d45e3569341aa671939cb8d"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Nov 01 23:38:51 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Nov 01 23:38:51 2012 +0000"
      },
      "message": "Support the new fast SPI mode present in Bus Pirate firmware v5.5 or newer\n\nCorresponding to flashrom svn r1621.\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": "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": "a16a892ca462b6034fd513bb92245ad827b2945f",
      "tree": "0f623d6207b8dd60a1b1bc939db0a431b7a4d0af",
      "parents": [
        "a8da224c63fd9e41d87e57f72050c0e23a285d86"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Aug 17 17:30:43 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Aug 17 17:30:43 2012 +0000"
      },
      "message": "Bus Pirate init cleanup and fixes\n\nThe Bus Pirate firmware (at least v6.1 and earlier) can\u0027t handle UART\ninput buffer overflow in BBIO mode, and sending a sequence of 0x00 too\nfast apparently triggers such an UART input buffer overflow. Wait 10 ms\nafter sending each 0x00 byte during init to give the Bus Pirate enough\ntime to handle the input. This fixes a Bus Pirate hang if the previous\nflashrom run was aborted by the user.\n\nThe Bus Pirate firmware v6.1 and earlier use the wrong (too slow) SPI\nspeed if more than 2 MHz are requested. Automatically downgrade SPI\nspeed to 2 MHz for affected firmware versions.\n\nDetect Bus Pirate hardware and firmware versions to allow quirk\nhandling.\n\nThe Bus Pirate init sequence has lots of open-coded sequences which wait\nfor a given string on the serial line. Refactor them into\nbuspirate_wait_for_string().\n\nCorresponding to flashrom svn r1576.\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": "2a95e8713b941f58a7f5ff94aee38edae70af15d",
      "tree": "f97dccd7ef57d80a4fbee2c5d23a67869c298cb0",
      "parents": [
        "00ec027368e5ef46d9dec430124357915dc8b903"
      ],
      "author": {
        "name": "Niklas Söderlund",
        "email": "niso@kth.se",
        "time": "Mon Jul 30 19:42:33 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Jul 30 19:42:33 2012 +0000"
      },
      "message": "Remove more exit calls\n\nThis patch removes the remaining exit calls from\n - sp_openserport\n - sp_opensocket\n - sp_docommand\n - internal_init\n\nAlmost all of this was done by Niklas.\n\nCorresponding to flashrom svn r1557.\n\nSigned-off-by: Niklas Söderlund \u003cniso@kth.se\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "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": "316fdfbf82a6183f75f4cca3e9fad0a21d3822e9",
      "tree": "77553e79f295eb5f9dec27812378b73ccedcc4a4",
      "parents": [
        "1c1554888875840f3d64231978aa891154b05f53"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 08 15:27:47 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 08 15:27:47 2012 +0000"
      },
      "message": "Bus Pirate buffer management revamp\n\nThe buffer management of the Bus Pirate driver has been revamped to use\ngrow-only buffers with a reasonable initial default size so realloc()\nwill not have to be called in normal operation. A side effect is the\nability to switch to a static buffer without major hassle.\nHandle OOM gracefully.\n\nCorresponding to flashrom svn r1541.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Patrick Georgi \u003cpatrick@georgi-clan.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": "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": "a63c7c449646147efe2bdeb80efeed479dc1d328",
      "tree": "da1a452c658ecb3120fffe6d084a46a85d5792a4",
      "parents": [
        "082c8b559cd9f3262c9af58ac2f17f2cc8a09d8b"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 16 12:08:22 2011 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Aug 16 12:08:22 2011 +0000"
      },
      "message": "Remove unneeded inclusions of chipdrivers.h\n\nThis is related to the spi split patch as discussed in:\nhttp://www.flashrom.org/pipermail/flashrom/2010-February/thread.html#2364\nthe old commit (r914) log notes:\n\"Some of the spi programmer drivers required chipdrivers.h, needs fixing later: it87spi.c\n  ichspi.c   sb600spi.c   wbsio_spi.c   buspirate_spi.c   ft2232spi.c   bitbang_spi.c   dediprog.c\"\n\nthere still remain a few cases where chipdrivers.h is needed:\ndediprog.c (spi_read_chunked and spi_write_chunked)\nit87spi.c (due to spi_write_enable and spi_read_status_register)\nwbsio_spi.c (spi_programmer registration only)\n\nbesides that, there are also non-spi files that do not need it.\nalso, add flash.h to chipdrivers.h because it uses some types of it\nand remove flashchips.h from print.c\n\nCorresponding to flashrom svn r1414.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "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": "9932c7bebfe3b1500edd31d478ede058f8c5b096",
      "tree": "956be8456c22c23e69fdc69b49fb645079678fb8",
      "parents": [
        "91199a1edd56e2a277c43c3d28000bb75e4d3525"
      ],
      "author": {
        "name": "Cristian Măgherușan-Stanciu",
        "email": "cristi.magherusan@gmail.com",
        "time": "Thu Jul 07 19:56:58 2011 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jul 07 19:56:58 2011 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 4\n\n- add Asus E35M1-I DELUXE to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-June/006918.html\n- add Asus M3A to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-July/007085.html\n- add Freetech P6F91i to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-June/006800.html\n- add GA-M720-US3 to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-July/007096.html\n- add GA-MA770-UD3 (rev. 2.1) to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-June/006879.html\n- add GA-965GM-S2 to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-June/006746.html\n- add HP xw4400 (0A68h) to boards_known\n  http://paste.flashrom.org/view.php?id\u003d686\n- add MSI MS-6566 (845 Ultra-C) to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-June/006908.html\n- add MSI MS-7698 (E350IA-E45) to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-June/007003.html\n- add PCCHIPS M863G (V5.1A) to boards_known\n  http://www.flashrom.org/pipermail/flashrom/2011-July/007084.html\n\n- modify the X8SIE entry in boards_known with the information from \"fuzzy\"\n  http://paste.flashrom.org/view.php?id\u003d669\n\n- mark W29C020(C)/W29C022 as fully tested\n  http://www.flashrom.org/pipermail/flashrom/2011-June/006800.html\n- mark W49V002A as fully tested\n  http://www.flashrom.org/pipermail/flashrom/2011-July/007084.html\n- mark M25P128 as fully tested\n  http://www.flashrom.org/pipermail/flashrom/2011-June/006843.html\n- mark SST39SF010A as fully tested\n  http://www.flashrom.org/pipermail/flashrom/2011-July/007115.html\n\n- correct entries for GA-K8NS Pro-939 (was ultra before. thanks uwe!)\n- another tiny fix for \"a small fix\"/r1321\n  Without this you will get broken bus names \"Unknow\" and \"Non-SP\".\n  Note to self: don\u0027t self-ack even fairly trivial patches.\n- fix spew output of spi_rems in spi25.c\n- add URL to ASUS M3A76-CM\n- rename all Winbond W25x chips to W25X\n- fixes some common misspellings/typos in comments:\n  lenght-\u003elength              2\n  ocassional-\u003eoccasional      1\n  unsucessfull-\u003eunsuccessful  1\n  upto-\u003eup to                 5\n\nCorresponding to flashrom svn r1367.\n\nthe patch for M25P128 is\nSigned-off-by: Cristian Măgherușan-Stanciu \u003ccristi.magherusan@gmail.com\u003e\n\nthe typos are\nSigned-off-by: Peter Huewe \u003cpeterhuewe@gmx.de\u003e\n\neverything else is\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": "8bb2021d77c8ee213b53d671687b7a1179335522",
      "tree": "a77cc4239b59731e98cf6c9681b5a7c665613038",
      "parents": [
        "9d9a1042332cd08aa66eee6f37d80c0f09f47d70"
      ],
      "author": {
        "name": "David Hendricks",
        "email": "dhendrix@google.com",
        "time": "Tue Jun 14 01:35:36 2011 +0000"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Tue Jun 14 01:35:36 2011 +0000"
      },
      "message": "Use shutdown callback mechanism to shutdown programmers\n\nThis patch attempts to resolve some programmer shutdown ordering issues\nby having the programmer init functions register shutdown callbacks explicitly\nwherever it makes most sense. Before, assumptions were made that could lead to\nthe internal programmer\u0027s state changing before the external programmer could be\nshut down properly. Now, each programmer cleans up after itself and (hopefully)\nperforms each operation in the correct order.\n\nAs a side-effect, this patch gives us a better usage model for reverse\noperations such as rpci_* and rmmio_*. In the long-run, this should make\nreversing the initialization process easier to understand, less tedious, and\nless error-prone.\n\nIn short, this patch does the following:\n- Registers a shutdown callback during initialization for each programmer.\n- Kills the .shutdown function pointer from programmer_entry struct. Also,\n  make most shutdown functions static.\n- Adds a few minor clean-ups and corrections (e.g. missing physunmap() calls).\n\nTODO: Remove forward declaration of serprog_shutdown() (added to simplify diff)\n\nCorresponding to flashrom svn r1338.\n\nSigned-off-by: David Hendricks \u003cdhendrix@google.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "c422484b84cc7a251166792a367b0a8143a3d206",
      "tree": "2c19fbeb3a083d9d489a6a7321bd092ac360eec2",
      "parents": [
        "60b83f98a858a0655aefac1c26257f497ea8e952"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jun 09 20:06:34 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jun 09 20:06:34 2011 +0000"
      },
      "message": "Fix compilation for CONFIG_INTERNAL\u003dno\n\nCONFIG_INTERNAL implies Super I/O support and NEED_PCI.\nNEED_PCI is only used to guard PCI stuff which may be needed for\nexternal PCI-based programmers. That way, using #if NEED_PCI can be\navoided inside #if CONFIG_INTERNAL.\n\nCorresponding to flashrom svn r1326.\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": "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": "627975196d0630a137548df631756e656a8139af",
      "tree": "9a01302678ba2ba642040e928b89c8877c080412",
      "parents": [
        "b713d2e35c5336da81f5fbc83393961d1d8aa7bd"
      ],
      "author": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Wed May 11 17:07:02 2011 +0000"
      },
      "committer": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Wed May 11 17:07:02 2011 +0000"
      },
      "message": "Factor out SPI write/read chunking wrappers\n\nCorresponding to flashrom svn r1298.\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": "18430a08aa144ee4bb5c5192970f2327a18d1ef9",
      "tree": "d8bb91fbf705263eccba22046515c5208a115acb",
      "parents": [
        "602de9829cc730e3fbc401297419e9acdfb0fe83"
      ],
      "author": {
        "name": "Stefan Reinauer",
        "email": "stepan@coresystems.de",
        "time": "Wed Oct 06 02:56:44 2010 +0000"
      },
      "committer": {
        "name": "Stefan Reinauer",
        "email": "stefan.reinauer@coreboot.org",
        "time": "Wed Oct 06 02:56:44 2010 +0000"
      },
      "message": "Remove duplicate includes from the code\n\nCorresponding to flashrom svn r1196.\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": "d2f007f98b64969bf788d251377c41e75abb69b1",
      "tree": "dd8ff0f4846f741f85d58af6b553ef690c453f87",
      "parents": [
        "f4925168c86e5f2c514e478af9f413eb855d663d"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Sep 16 22:34:25 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Sep 16 22:34:25 2010 +0000"
      },
      "message": "Handle Bus Pirates already in bit banging mode correctly\n\nThanks to Johannes Sjölund for reporting that the Bus Pirate init could\nnot deal with a Bus Pirate which is already in binary Bitbang mode.\n\nThis is caused by a combination of the slowness of the Bus Pirate, the\nslowness of USB and a fast serial port flush routine which just flushes\nthe buffer contents and does not wait until data arrival stops.\n\nMake the Bus Pirate init more robust by running the flush command 10\ntimes with 1.5 ms delay in between.\n\nThis code development was sponsored by Mattias Mattsson. Thanks! Tested\na few dozen times, should work reliably.\n\nCorresponding to flashrom svn r1178.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Mattias Mattsson \u003cvitplister@gmail.com\u003e\n"
    },
    {
      "commit": "04e18bea9fb28f64825b1c1edd28aeae9cb6919a",
      "tree": "8210f5452bb94ba4225c958302ba954e126f643f",
      "parents": [
        "6529b9fdc2340d7cfee198eea77f38424acaef86"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jul 29 16:24:09 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jul 29 16:24:09 2010 +0000"
      },
      "message": "Speed up Bus Pirate by exploiting the FTDI FIFO\n\nIf we violate the raw SPI communication protocol requirements of the Bus\nPirate (namely, waiting for the completion of one command before sending\nthe next one), we can reduce the number of round trips by a factor of 3.\nThe FT2232 chip present in the Bus Pirate has a big enough buffer (at\nleast 128 bytes IIRC) to avoid overflows in the tiny buffer of the Bus\nPirate PIC.\n\nThanks to Daniel Flinkmann for sponsoring development of this patch.\n\nCorresponding to flashrom svn r1120.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nTested-by: Daniel Flinkmann \u003cDFlinkmann@gmx.de\u003e\nAcked-by: Daniel Flinkmann \u003cdflinkmann@gmx.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": "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": "71127727dcff4f7e70b318d7a5eb87f0c8fcc4d7",
      "tree": "ecd2ba9f67c51b833d22051628b79ccb1dcde0a2",
      "parents": [
        "a0020df6309e4536fcb97bd93bc46e2068f0ffe8"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 31 15:27:27 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 31 15:27:27 2010 +0000"
      },
      "message": "So far, we have up to 4 different names for the same thing (ignoring capitalization)\n\nCONFIG_FT2232SPI (makefile config option)\nFT2232_SPI_SUPPORT (#define)\nft2232spi (programmer name)\nft2232_spi.c (programmer file)\n\nUse CONFIG_* with underscores for makefile config options and #defines\nand kill the useless _SUPPORT idiom.\nUse lowercase names with underscores for programmer names and programmer\nfiles.\n\nWith this, you can run \"grep -i ft2232_spi\" and find everything related\nto the ft2232_spi driver. Same applies to all other programmers.\n\nCorresponding to flashrom svn r1023.\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": "5824fbff010076cc0d2a4387c1b2f54644ae5785",
      "tree": "73c903182e7400386453acfbd7c738b3361849ff",
      "parents": [
        "d175e06ac305274d8e1a8a4658f7f5518c89b801"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri May 21 23:09:42 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri May 21 23:09:42 2010 +0000"
      },
      "message": "Introduce a generic SPI read function: spi_write_chunked()\n\nEvery SPI programmer driver had its own completely different chip write\nimplementation, and all of them were insufficiently commented. Create\nspi_write_chunked as a copy of spi_read_chunked and convert all SPI\nprogrammers to use it. No functional changes except: - Bus Pirate uses\n12 Byte writes instead of 8 Byte writes - SB600 uses 5 Byte writes\ninstead of 1 Byte writes\n\nCorresponding to flashrom svn r1005.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\nAcked-by: David Hendricks \u003cdhendrix@google.com\u003e\n"
    },
    {
      "commit": "408e47af32b06613576bff74c0f455fc00220d58",
      "tree": "df195f58fca631cc9e175305a8167b7249937f57",
      "parents": [
        "50415d2e48a510e8799217805a6bd12e49606272"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 22 03:30:58 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 22 03:30:58 2010 +0000"
      },
      "message": "Multibyte SPI write for the Bus Pirate\n\nCorresponding to flashrom svn r964.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    },
    {
      "commit": "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": "84f7bce91be68422efc24cb178fefb310114dd4c",
      "tree": "92b71fffaf8060b2aaa53a3ce8a23199da248b3e",
      "parents": [
        "8e5e73e49ce1e75e9148589ee33c418077215f60"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Jan 09 23:56:41 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Jan 09 23:56:41 2010 +0000"
      },
      "message": "Convert all messages in buspirate_spi.c to the new message infrastructure\n\nCorresponding to flashrom svn r851.\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": "5609fa752ca1c36d00d915e94d481a9a457c85cf",
      "tree": "ff145bc4ed987c3c81870ddb6e7ce6a929ca9b47",
      "parents": [
        "a84835a7eadadb715a61d993da6766bdf1b37c5e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jan 07 03:32:17 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Jan 07 03:32:17 2010 +0000"
      },
      "message": "Allow one to disable programmer debug messages at compile time\n\nProgrammer debug messages during programmer init/shutdown are useful\nbecause they print hardware settings and desired configuration.\n\nThey help in getting a quick overview of hardware and software state on\nstartup and shutdown.\n\nProgrammer debug messages during flash chip access are mostly a\ndistraction in logs and should only be enabled if someone is having\nproblems which are suspected to stem from a programmer hardware or\nprogrammer software bug. Disable those messages by default, they can be\nreenabled by #define COMM_DEBUG in the affected programmer file.\n\nAn added benefit is a tremendous size reduction in verbose\nprobe/read/write/erase logs because only flash chip driver messages\nremain. In some cases, logs will shrink from 65 MB to 10 kB or less.\n\nThe right(tm) fix would be two different debug levels (DEBUG and SPEW)\nand the ability to differentiate between programmer debug messages and\nflash chip debug messages. Until the design for the message printing\ninfrastructure is finished, this is the best stop-gap measure we can\nget.\n\nCorresponding to flashrom svn r834.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Sean Nelson \u003caudioahcked@gmail.com\u003e\n"
    },
    {
      "commit": "3b6237dbce5149c565a134394c6184118629464d",
      "tree": "ec6d0b820d2d153b32743d1d466ead3196fd677d",
      "parents": [
        "efa151eb10a11796bd36cf0f32c8202e60d9de01"
      ],
      "author": {
        "name": "Patrick Georgi",
        "email": "patrick.georgi@coresystems.de",
        "time": "Wed Jan 06 19:09:40 2010 +0000"
      },
      "committer": {
        "name": "Patrick Georgi",
        "email": "pgeorgi@google.com",
        "time": "Wed Jan 06 19:09:40 2010 +0000"
      },
      "message": "Multiple unrelated changes\n\n- replace the hand written serial input flush routine with the termios one.\n- serialport_discard_read isn\u0027t necessary anymore - it just wrapped\n  sp_flush_incoming with no extra value.\n- serialport_read and serialport_write would misbehave if read or write\n  didn\u0027t process everything in one go.\n- sp_flush_incoming should be #define\u0027d out for FAKE_COMMUNICATION like\n  serialport_discard_read was\n\nCorresponding to flashrom svn r831.\n\nSigned-off-by: Patrick Georgi \u003cpatrick.georgi@coresystems.de\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    },
    {
      "commit": "efa151eb10a11796bd36cf0f32c8202e60d9de01",
      "tree": "9f8668bc80e08d5a0293b27f608f4e40b17d9943",
      "parents": [
        "cc1802db50df74aa850d444ba0d7f6854bb7abd6"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jan 06 16:09:10 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Jan 06 16:09:10 2010 +0000"
      },
      "message": "Move OS-dependent serial code from buspirate_spi.c to serial.c\n\nWhile at it, also rename a few functions to make it obvious\nthat they are generic and not specific to the Bus Pirate.\n\nCorresponding to flashrom svn r830.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Patrick Georgi \u003cpatrick.georgi@coresystems.de\u003e\n"
    },
    {
      "commit": "d5b28fae1da48233753a19d3fa007c204786ec8c",
      "tree": "55b9f4704024f1e845fc1c8df44a2b1bd97d6884",
      "parents": [
        "d70b09ca13f118af02078e5fcd336b9f83c7565a"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Nov 24 18:27:10 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Nov 24 18:27:10 2009 +0000"
      },
      "message": "Add the ability to set Bus Pirate SPI speed via the command line\n\nExample usage:\nflashrom -p buspiratespi:spispeed\u003d2.6MHz,dev\u003d/dev/foo\nflashrom -p buspiratespi:dev\u003d/dev/foo,spispeed\u003d2.6M\n\nRefactor programmer option parsing (this allows cleanups in other\nprogrammers as well).\n\nIncrease SPI read size from 8 to 12 bytes (current single-transaction\nlimit of the Bus Pirate raw SPI protocol).\n\nAdd Bus Pirate to the list of programmers supporting 4 byte RDID.\n\nAdd Bus Pirate syntax to the man page.\n\nTested-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n\nCorresponding to flashrom svn r776.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    },
    {
      "commit": "5cca01f3943d888f9ee5f1efcf9faa0269bf8533",
      "tree": "1978ce52ae758b879635c7a8a9c2651f739844f8",
      "parents": [
        "e51ea10a8889544b942d3490bb721f160fe09517"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Nov 24 00:20:03 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Nov 24 00:20:03 2009 +0000"
      },
      "message": "Cleanly validate ICH SPI preopcodes\n\nThe code should work on Linux/*BSD/MacOSX and relies on the serial code\nimplementation in serial.c. Support for additional platforms (Windows)\nwill have to be added to serial.c for this to work. For tests without a\nBus Pirate (or with non-functional serial code) it is possible to\n#define FAKE_COMMUNICATION in buspirate_spi.c.\nThanks to Sean Nelson for the SPI mode settings code. I tweaked it a bit\nto make configuration from a commandline easier should anybody want that\nfeature.\n\nTested-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n\nCorresponding to flashrom svn r772.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\nAcked-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\n"
    }
  ]
}
