)]}'
{
  "log": [
    {
      "commit": "47aa85c8fdf82b4e3b92dbcdfa3e4490c6782b69",
      "tree": "965bb18274b8fb44beb583b34a8a9098b4a87ad2",
      "parents": [
        "84914db6304ccd0f6f41ba7b4f6c0a83ef66e5d0"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Feb 21 14:57:20 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "memory_bus: Turn flashbase into a par_master member `rom_base`\n\nGet rid of the global `flashbase`. Treat overrides for the `rom_base`\nsimilar to `max_rom_decode`: Gather the information in `internal_data`\nand then pass it to register_par_master().\n\nChange-Id: Ib9ed7234a849fe3550200fd602226d0036da15f0\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/436\n"
    },
    {
      "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": "afb5dd03a3ce88e642a3c8d518590623bae62ec7",
      "tree": "d1baa207d970826557f389fdf56ee2ea0a7662ef",
      "parents": [
        "dfea68c563c4f23318e26897846fd2d79e27eefd"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 15 13:26:10 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 15 14:43:03 2026 +0000"
      },
      "message": "dummyflasher: Add emulation for M25P10-A\n\nThis one has a database entry that is actually tested.\n\nChange-Id: I1d6f7fe4f9ae1eb9680544eea82db631b224a330\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/412\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": "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": "0e76d99a7c0eda11515923c5457f0b5a4af9893f",
      "tree": "c914d5266909dad441bece2705593131f032c19c",
      "parents": [
        "9eec40780207a110f3ba7ea70d11c042c6d86abf"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 12 20:22:55 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 09 10:30:24 2024 +0000"
      },
      "message": "memory_bus: Move (un)map_flash_region into par master\n\nNow that the map/unmap_flash functions are only called from memory-\nmapped chip drivers, we can safely move the hooks into the parallel\nmasters.\n\nThis also allows us to move the code away from the globals in\n`flashprog.c` into a new `memory_bus.c`.\n\nChange-Id: Ic476cf4d96200232900537b997e1d07bb4e8b809\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/72522\nReviewed-by: Riku Viitanen \u003criku.viitanen@protonmail.com\u003e\n"
    },
    {
      "commit": "0d929fe12e8b8f4c517f8b1ec269f8a1e6fce0a2",
      "tree": "e5658f8dba563e9d689baf83a2d01351cc518bb8",
      "parents": [
        "e03b17584e720dfa5226cf7f7a94449a2aff6a9a"
      ],
      "author": {
        "name": "Alexander Goncharov",
        "email": "chat@joursoir.net",
        "time": "Tue Jan 24 14:43:12 2023 +0400"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Mar 06 23:36:26 2023 +0000"
      },
      "message": "dummyflasher: fix propagation of register_*_master() return values\n\nThis patch checks return value of register_*_master()\nso that in case of an error this error is not ignored anymore.\n\nChange-Id: I3a7eeb3cdd814db18b0717ae8b40ecadb4c32f7c\nSigned-off-by: Alexander Goncharov \u003cchat@joursoir.net\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/72430\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/73477\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "e7a41e3cec25165b6564b62b6aa64f90bd2dab71",
      "tree": "a635e566992d379fa1acca5de7fd7517e5c13580",
      "parents": [
        "b0be3200954bebf2431c4d7bd441096f157f621e"
      ],
      "author": {
        "name": "Nikolai Artemiev",
        "email": "nartemiev@google.com",
        "time": "Mon Nov 28 17:40:56 2022 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 19 13:50:18 2023 +0000"
      },
      "message": "tree/: Make probe_opcode() flashctx argument const\n\nProbing an opcode generally shouldn\u0027t involve mutating the flashctx\nstate and currently no probe_opcode functions do that.\n\nMake the flashctx arg const so that call sites don\u0027t need to have a\nnon-const pointer.\n\nTested: ninja test\n\nChange-Id: I19e98be50d682de2d2715417f8b7b8c62b871617\nSigned-off-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/70030\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/+/72543\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\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": "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": "4e9e99cca942890576b154b90571fe86cbba3058",
      "tree": "8db6babbfc9dee54ea6485067fb93b46bcb7450b",
      "parents": [
        "c6ff17bc79f7d6019295c1e3ec5973d2f53f8009"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Wed Jun 09 18:08:48 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "dummyflasher: Replace another case of `sizeof(struct ...)`\n\nUsing the pointer\u0027s type instead ensures that we get the right size even\nif code changes in the future.\n\nChange-Id: If88ba394095f86c598dcc5cf1751e1c23b132d04\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55358\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72208\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "b131342f07e526e35cac4bae8f0c5c7c6dffdcf8",
      "tree": "83a8b24277cced0cc8cad56b5e518b0f59cdcd82",
      "parents": [
        "f7504a954460f14565cb052c6cef1c9f57988acd"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Thu May 20 20:27:59 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "dummyflasher.c: Move \u0027spi_write_256_chunksize\u0027 into emu_data\n\nMove \u0027spi_write_256_chunksize\u0027 out of global scope and\ninto the emu_data reentrent struct.\n\nChange-Id: I633f4df4bd47e661cd69801f21910b667899d505\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54721\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72206\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "f7504a954460f14565cb052c6cef1c9f57988acd",
      "tree": "5ce18791eb60743c39d3c365ff2caa463acc8367",
      "parents": [
        "a7389154d56492548c2c1865081c25cc297d967f"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Thu May 20 20:21:13 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "dummyflasher.c: Make entry struct names consistent\n\nJust make spi_master_dummyflasher and par_master_dummyflasher\nidentifiers consistently named for easier parsing.\n\nChange-Id: Ib8ade96c47b4e4d358ba1fe34d06f22de326c60a\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54720\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72205\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "a7389154d56492548c2c1865081c25cc297d967f",
      "tree": "4c3693e28ee0b86303a47eb5110f537b7e330296",
      "parents": [
        "842b4ee5857614b64f685be914916f6c9b322d91"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Fri May 21 09:45:53 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "programmer: Make use of new register_par_master() API\n\nPass pointers to dynamically allocated data to register_par_master().\nThis way we can avoid a mutable global.\n\nChange-Id: I76572e43d01f8a5e1aa73b1b9e8a187465ed8fef\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54172\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72204\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "b91a203091fc43824bc57f3c8e2db0bcc311da59",
      "tree": "8fffff062afae6b9ce853c69a6636bc33bcabbbc",
      "parents": [
        "03f3a6d13e8bd62ef84ef6a4a6f21d6fb8b2a7b8"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Fri May 21 09:40:58 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "programmer: Smoothen register_par_master API\n\nIt was impossible to register a const struct par_master that would\npoint to dynamically allocated `data`. Fix that so that we won\u0027t\nhave to create more mutable globals.\n\nChange-Id: I95bc92f6c54c5bcdac1c522ca87054aaffed0f40\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54169\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72201\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "03f3a6d13e8bd62ef84ef6a4a6f21d6fb8b2a7b8",
      "tree": "0fc0ec55b781d30d58a9b2fbc4b2e0c1ec83aab2",
      "parents": [
        "5e08e3e829e3f736e18cef7b8f4a8929c9e06257"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue May 11 17:53:34 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "programmer: Make use of new register_spi_master() API\n\nPass pointers to dynamically allocated data to register_spi_master().\nThis way we can avoid some mutable globals.\n\nflashrom-stable: Updated `dirtyjtag_spi` and `dediprog`\n                 that were added/refactored earlier.\n\nChange-Id: Id7821f1db3284b7b5b3d0abfd878b979c53870a1\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54067\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72200\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": "2fb53b1f30ae7c811e3bfcf9fc96b8db9182e61f",
      "tree": "17ce3c1dc60eae86942d8e9302f7c173acfa6304",
      "parents": [
        "d68a0ece50b2250ba25be67d27e8606247d5306c"
      ],
      "author": {
        "name": "Felix Singer",
        "email": "felixsinger@posteo.net",
        "time": "Fri Aug 19 03:29:32 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "dummyflasher.c: Retype appropriate variables and attributes with bool\n\nUse the bool type instead of an integer for appropriate variables and\nattributes, since this represents their purpose much better.\n\nSigned-off-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nChange-Id: I712b1ef7e1ad74d3e004dcf36c82898c88072c63\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66901\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/+/71489\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": "43040f297e68cd4d826d58f57566581ef902d179",
      "tree": "a8357aba5a8dbfd43f3e7949c865f2682bf5962d",
      "parents": [
        "4203a47a102e2622f404ee6567b240882d584116"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Thu Jun 23 14:38:35 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "tree: indent struct *_master consistently with tabs\n\nUse `\u003ctab\u003e.key\u003ctab\u003e*\u003d \u003cvalue\u003e,`\n\nTEST: `make VERSION\u003d0 MAN_DATE\u003d0` returns the same flashrom binary\nbefore and after the patch\n\nChange-Id: I1c45ea9804ca09e040d7ac98255042f58b01f8ef\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/65363\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/+/71466\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": "4203a47a102e2622f404ee6567b240882d584116",
      "tree": "57656409f88916ec1c9c70cfcfb20007406ccf10",
      "parents": [
        "bbccdb275537493ec252362fc5fb792a879ae3d7"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat May 28 17:28:05 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "dummyflasher: Add emulation for S25FL128L\n\nUsed to test WRSR_EXT2/3 support.\n\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nChange-Id: Ic3cbea87218c973331b9b83e809e7d438407bc13\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/64748\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71464\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "bbccdb275537493ec252362fc5fb792a879ae3d7",
      "tree": "3666bfc60d97ba51abcaa3c6c7d62be23c449cdc",
      "parents": [
        "58cf5197a6f89fd146ce0fbc340d67ef7cbe191c"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat May 28 16:48:26 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "spi25_statusreg: Allow WRSR_EXT for Status Register 3 (dummy part)\n\nSpansion flash chips S25FL128L and S25FL256L use the WRSR instruction to\nwrite more than 2 registers. So align SR2 and SR3 support: The current\nFEATURE_WRSR_EXT is renamed to FEATURE_WRSR_EXT2 and FEATURE_WRSR_EXT3\nis added. Also, WRSR3 needs a separate flag now.\n\nVerified that FEATURE_WRSR_EXT2 still works using the `dummy_flasher`.\n\nflashrom-stable:\nOriginal patch was split, this is the `dummy_flasher.c` part.\n\nChange-Id: I81153cb758b9fc29b803959683ad7acf8fb771e4\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Change-Id: Ibdfc6eb3d2cfecbf8da0493d067031ddb079a094\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/64746\nOriginal-Reviewed-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nOriginal-Reviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71463\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "2fc70dcfe988928e97e69e98d91e7e3999ecd352",
      "tree": "b9d2b757606242debe22d8107fbae41c668937a9",
      "parents": [
        "27835eaf1a0384293dcd1f3ad6ad506d919f3b43"
      ],
      "author": {
        "name": "Sergii Dmytruk",
        "email": "sergii.dmytruk@3mdeb.com",
        "time": "Mon Nov 08 01:38:52 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "dummyflasher: enforce write protection for W25Q128FV\n\nStart taking bits related to write protection into account.\n\nAlso add \"hwwp\" parameter for dummy programmer that sets state of WP\npin (not inverted value).\n\nTested: use command-line interface to run WP-related commands\n\ndummyflasher doesn\u0027t store state of the chip between runs and flashrom\nallows running only one command, so testing WP in this way is limited.\nHowever, WP options can be combined with other operations and are\nexecuted prior to them, so certain scenarios can be checked.\n\nList possible ranges:\n    flashrom -p dummy:emulate\u003dW25Q128FV,hwwp\u003dyes --wp-list\n\nSet a particular range and check status is correct:\n    flashrom -p dummy:emulate\u003dW25Q128FV,hwwp\u003dyes \\\n             --wp-enable \\\n             --wp-range\u003d0x00100000,0x00f00000 \\\n             --wp-status\n\nEnable write protection and try erasing/writing (erasing here):\n    # this fails\n    flashrom -p dummy:emulate\u003dW25Q128FV,hwwp\u003dyes \\\n             --wp-range\u003d0,0x00c00000 \\\n             --wp-enable \\\n             --erase\n\nWrite protecting empty range has no effect:\n    # this succeeds\n    flashrom -p dummy:emulate\u003dW25Q128FV,hwwp\u003dyes \\\n             --wp-range\u003d0,0 \\\n             --wp-enable \\\n             --erase\n\nDisabling WP is possible if hwwp is off:\n    # this fails\n    flashrom -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x80,hwwp\u003dyes \\\n             --wp-disable\n    # this succeeds\n    flashrom -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x80,hwwp\u003dno \\\n             --wp-disable\n\nChange-Id: I9fd1417f941186391bd213bd355530143c8f04a0\nSigned-off-by: Sergii Dmytruk \u003csergii.dmytruk@3mdeb.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/59074\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71459\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": "27835eaf1a0384293dcd1f3ad6ad506d919f3b43",
      "tree": "6f2043a3506fa43952717d16dffdcc0829987638",
      "parents": [
        "59151a4b508e2b8037bc18f46232f6ca0ee90ea2"
      ],
      "author": {
        "name": "Sergii Dmytruk",
        "email": "sergii.dmytruk@3mdeb.com",
        "time": "Mon Nov 08 00:06:33 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "dummyflasher: emulate SR2 and SR3 for W25Q128FV\n\nEnable emulation of SR2 and SR3 for W25Q128FV and provide logic for\nupdating them (masks of read-only bits that can\u0027t be set from outside).\n\nTested: check how input value affects status registers of emulated chip\n\nflashrom -V -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x12 |\n        grep -A3 \u0027Initial status registers\u0027\nflashrom -V -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x1234 |\n        grep -A3 \u0027Initial status registers\u0027\nflashrom -V -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x123456 |\n        grep -A3 \u0027Initial status registers\u0027\n\nChange-Id: I79f9b4a0b604663d3288ad70dcbe3ea4075dede5\nSigned-off-by: Sergii Dmytruk \u003csergii.dmytruk@3mdeb.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/59073\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71458\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": "59151a4b508e2b8037bc18f46232f6ca0ee90ea2",
      "tree": "3b1c6092c3b9c501cba4600946725edc4399275a",
      "parents": [
        "885917c1594fa68ddbf5213099d99167105c046b"
      ],
      "author": {
        "name": "Sergii Dmytruk",
        "email": "sergii.dmytruk@3mdeb.com",
        "time": "Mon Nov 08 00:05:12 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "dummyflasher: add SR2 and SR3 emulation harness\n\nPrepare everything for emulating SR2 and SR3 for chips that have it.\n\nThis is needed for accessing SRP1 and WPS bits which are involved in\nwrite protection. The emulated register doesn\u0027t affect anything yet\nand will be tested by write-protection tests.\n\nTested: check how input value affects status registers of emulated chip\n\nflashrom -V -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x12 |\n        grep \u0027Initial status register\u0027\nflashrom -V -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x1234 |\n        grep \u0027Initial status register\u0027\nflashrom -V -p dummy:emulate\u003dW25Q128FV,spi_status\u003d0x123456 |\n        grep \u0027Initial status register\u0027\n\nMind that at this point there are no chips that emulate more than one\nstatus register.\n\nChange-Id: I177ae3f068f03380f5b3941d9996a07205672e59\nSigned-off-by: Sergii Dmytruk \u003csergii.dmytruk@3mdeb.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/59072\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71457\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": "ab69629daab4c091870b3f7d27f80085a415b286",
      "tree": "8f03b87d3480fd91f5dbbc5bc80c14633706bdbe",
      "parents": [
        "3795c9d43d0b6ea71fb7ec499f6fdbb5e5bf0960"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Wed Jun 09 18:10:07 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher: Re-arrange includes\n\nGather library includes at the top.\n\nChange-Id: Ib20a3245cae3206dca1d8f88f705ac3628473f43\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55359\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71382\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": "c40ca200100fe6fc451ab7f9bdf9751af1899d02",
      "tree": "595754e4ac3f84de465c9e3b1dee95d10a12db28",
      "parents": [
        "633d6db1b5718305cf4daf87cf4a93d17bc3821e"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Mon Jun 07 12:08:27 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Drop useless macros\n\nThe `EMULATE_CHIP` and `EMULATE_SPI_CHIP` macros are unconditionally\ndefined as `1`, with no way to change their values. Since this means\nthat the code never gets build-tested using other values, drop these\nnoisy macros.\n\nTested: Build with `make distclean \u0026\u0026 make VERSION\u003dnone -j` with and\n     without this patch, the flashrom executable does not change.\n\nChange-Id: If46e1c37c3b04b28b4ba1f82c9b3def1e549368f\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55265\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Namyoon Woo \u003cnamyoon@google.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71370\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "3c55c79c7fd8adcf1503921392aba99cb8569638",
      "tree": "c1f0254bfa72d301449ef2983c65d2b03081fdeb",
      "parents": [
        "69d09ba2898d4457acd5fe53a43beb927706c905"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Mon May 31 09:42:36 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Fix data leak in params processing error paths\n\nThis patch extracts params processing into a separate function. Now\nall error paths of params processing return 1 back to init function\nwhich frees data.\n\nAnd there was just one more error path in init function where\nfree(data) needed to be added.\n\nThis is a follow up on commit 3b8fe0f8e907c0ba9f7c7935e950f3e1538d427f\nwhich moves global state into spi_master data.\n\nA good side-effect of the change is: init function becomes easier\nto read.\n\nTested: ninja test\n\nChange-Id: I04f55f77bb4703f1d88b2191c45a22be3c97bf87\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54748\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71365\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "c24846407041eae3617e5480f62fcdad867fb0a2",
      "tree": "867a1c772ddac1444ede4b609b1a500693204230",
      "parents": [
        "328898a911438ab4e133610e0c901d00264624eb"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Tue May 25 13:03:24 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Prevent use-after-free bug\n\nThe memory for the `status` string is aliased by the `endptr` pointer.\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: I1b56834004fe18918213a7df0a09a8a7ecb56985\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54909\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/+/71363\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "328898a911438ab4e133610e0c901d00264624eb",
      "tree": "1f700788e8861ef176d67bb4c7615f7d4cb05c5b",
      "parents": [
        "02b9ae240f7f7ea4a8f7c723c128a415a384ce02"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Tue May 25 12:56:18 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Move `flashchip_contents` allocation\n\nPlace `flashchip_contents` allocation next to the code that initialises\nthe newly-allocated buffer. This also avoids leaking it if the handling\nof `spi_status` fails.\n\nChange-Id: Ie907ac88dfe4ca018c97d9ce6ce042b4ffacf36a\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54908\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/+/71362\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "02b9ae240f7f7ea4a8f7c723c128a415a384ce02",
      "tree": "0b2ba5caa5cbcefb2b802d7d0cb9bf7e1507282a",
      "parents": [
        "f02db806eb522a748de702b96d08a8785e74df5d"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Tue May 25 12:46:43 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Don\u0027t leak `emu_persistent_image`\n\nEnsure `emu_persistent_image` doesn\u0027t end up leaking memory.\n\nChange-Id: I76529973cefcc6a1472681e1f4da8239fcbf07a6\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54905\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71361\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "c785f88929c6802e8e3715b04c2be394f680ce95",
      "tree": "db5a108e2a39fdbf98375ada8e1a5a9f279f3bc1",
      "parents": [
        "9425022c7bc1b002beeb9c7c7841e8fe16458fba"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Sun May 23 22:14:36 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Replace atoi() with strtoul()\n\nflashrom-stable: Squashed fixup\n\nChange-Id: Ib9e66016a2f4ce2d13b833c261f900cab80916b7\nSpotted-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54854\nOriginal-Reviewed-by: Sam McNally \u003csammc@google.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71359\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": "9425022c7bc1b002beeb9c7c7841e8fe16458fba",
      "tree": "e523b701a57fbe3798f726680258545fcd285a77",
      "parents": [
        "3fa321d784f21bc3654b563bc11d63cde1f65218"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Thu May 20 20:34:02 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Move \u0027flashchip_contents\u0027 into emu_data\n\nMove \u0027flashchip_contents\u0027 out of global scope and\ninto the emu_data reentrent struct.\n\nChange-Id: I11dfe713dd2fecfd3981ab50e31c9215d00bc787\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54722\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71358\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": "3fa321d784f21bc3654b563bc11d63cde1f65218",
      "tree": "65df68524c5a825a6d8b3035f15de4b0919ca36e",
      "parents": [
        "67aaed75e4f92ec61d265e8f0d7f05ed6fd23c68"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Mon May 17 20:01:27 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "dummyflasher.c: Use BUS_NONSPI where appropriate\n\nThe BUS_NONSPI is short-hand and is intended to be\nthe collection, therefore use it.\n\nChange-Id: I368e8865c446d9b9ffd580c90eac034850dd53d8\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54356\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Sam McNally \u003csammc@google.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71357\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": "c753c40971c1481943e8a18dc24b33037e2a579d",
      "tree": "63d730f2195ac8f19740b9f2ed4cce9592790049",
      "parents": [
        "13f90e64821fb8af412c7d692c72d2663dc9ce04"
      ],
      "author": {
        "name": "Lachlan Bishop",
        "email": "lxb@google.com",
        "time": "Thu Sep 10 14:57:05 2020 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:07:04 2023 +0000"
      },
      "message": "dummyflasher.c: Factor out global state\n\nMoves global state into spi_master data.\n\nflashrom-stable: Squashed many fixups\n\nChange-Id: I972b085875f1277d9ff33326669d2676a3bcd3aa\nSigned-off-by: Lachlan Bishop \u003clxb@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/45230\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71323\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": "3531123fda54237b096ec67a932ce2ff8f544a1f",
      "tree": "e497c4992beedcbb1727f0aff43ce7463be4ec16",
      "parents": [
        "1592fe589725cccbc72db60fdb1858b6edb7432c"
      ],
      "author": {
        "name": "Namyoon Woo",
        "email": "namyoon@google.com",
        "time": "Fri Aug 28 07:56:00 2020 -0700"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:07:04 2023 +0000"
      },
      "message": "dummyflasher.c: Only write back emulated image if modified\n\nWhen the image is not modified, there is no point in writing it back.\nIn fact we may not have file permissions to do so.\n\nSigned-off-by: Namyoon Woo \u003cnamyoon@google.com\u003e\nChange-Id: I3bf2d7edb28a9a1e5406b67a88a0ee6e07db83e3\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/44907\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71321\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": "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": "961f4a1f29787cbb6bd9a8a43b6ac4f3f0d024c0",
      "tree": "13023be2c6cc0140cbfa97dee108a441e696b638",
      "parents": [
        "b417c0c2d2616feff30cc87316a278055da8c64a"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Oct 04 17:34:22 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Oct 05 23:26:25 2019 +0000"
      },
      "message": "Fix more sign-compare issues\n\nThe one in the `dummyflasher` is a little peculiar. We actually never\nknew the type of the `st_size` field in `struct stat`. It happens to\nbe `signed` in some systems (e.g. DJGPP).\n\nChange-Id: If36ba22606021400b385ea6083eacc7b360c20c5\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/35800\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-by: Patrick Georgi \u003cpgeorgi@google.com\u003e\n"
    },
    {
      "commit": "ca598dabc3e658b3b80fd41143417d884d436e06",
      "tree": "9404e4002f46fb82bd9db759422274a06830fb31",
      "parents": [
        "1c0c8fd9da34d29d549803f3ddff9a68dd95dfed"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Mon Aug 12 10:44:17 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Sep 24 19:12:51 2019 +0000"
      },
      "message": "dummyflasher: Add error check for file read\n\nPrint an error message and return if the read from emu_persistent_image\nfails.\n\nChange-Id: Icd1a72f9171e547f2081ba4bc53834a17ef7fcab\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nFound-by: Coverity CID 1403912\nReviewed-on: https://review.coreboot.org/c/flashrom/+/34845\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\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": "afc3ad64300bbcc14266e645beec897ef06df13d",
      "tree": "d356edb82af5f5d530c36626b575467c80136211",
      "parents": [
        "cd8aeba7f1cee4c2bd1f8598009fc3e6e7afd8bb"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Mon Jun 24 16:05:28 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jun 26 07:25:01 2019 +0000"
      },
      "message": "tree: Make internal variables static\n\nAll these variables are only used in the files they are defined in, so\nthey can be made static.\n\nChange-Id: I1e55138adef540e9d3a2237aa5b289cb338c0608\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33747\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "f9632d82634bbbdc7e90357d3ea7c4a631ab4376",
      "tree": "7534151dac52915dd1b1ebf8e462dc1a411a98e9",
      "parents": [
        "4ca575dc5a81587da5affecd2cd97b7c8b4596b3"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 20 11:23:49 2019 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Jun 03 10:46:01 2019 +0000"
      },
      "message": "dummyflasher: Add emulation for Winbond W25Q128FV\n\nJust needed a 16MiB chip.\n\nChange-Id: Ic01d45c1f709808404ad53bb31f8b998c6977a9d\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/31011\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-by: Thomas Heijligen \u003csrc@posteo.de\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": "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": "23e10b87801c22f34642895de8b0b726265eb016",
      "tree": "2d62c23191801afaecbf98925effb8b8c7a44ab6",
      "parents": [
        "c2644a3fc14088a2535c05edbd56c041b3a7370d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 23 16:16:49 2016 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jan 23 16:16:49 2016 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 24\n\nTested mainboards:\nOK:\n - ASRock G31M-GS\n   Reported by Александр Трубицын\n - ASRock G41M-VS3\n   Reported by Александр Трубицын\n - ASRock N68C-S UCC\n   Reported by Alexey Belyaev\n - ASRock AMCP7AION-HT (ION 330HT(-BD))\n   Reported by Stefan Tauner\n - ASUS P5K SE\n   Reported by Александр Трубицын\n - ASUS P5KPL-VM\n   Reported by Marin Vlah\n - ASUS RAMPAGE III GENE\n   Reported by stevessss on IRC\n - GIGABYTE GA-945GM-S2\n   Reported by Александр Трубицын\n - GIGABYTE GA-945GCM-S2 (rev. 3.0)\n   Reported by Александр Трубицын\n - GIGABYTE GA-965P-S3\n   Reported by Александр Трубицын\n - GIGABYTE GA-EG43M-S2H\n   Reported by Александр Трубицын\n - GIGABYTE GA-EP31-DS3L (rev. 1.0)\n   Reported by Александр Трубицын\n - GIGABYTE GA-G33M-S2\n   Reported by Александр Трубицын\n - GIGABYTE GA-G33M-S2L\n   Reported by Александр Трубицын\n - GIGABYTE GA-H55M-S2\n   Reported by Александр Трубицын\n - GIGABYTE GA-J1900N-D3V\n   Reported by Marcos Truchado and Guillermo von Hünefeld\n - GIGABYTE GA-K8NS\n   Reported  by nicolae788\n - GIGABYTE GA-M56S-S3\n   Reported by Estevo Paz Freire\n - GIGABYTE GA-P31-DS3L\n   Reported by Александр Трубицын\n - GIGABYTE GA-P31-S3G\n   Reported by Александр Трубицын\n - MSI MS-7336\n   Reported by Benjamin Bellec\n - MSI X79A-GD45 (8D) (MS-7760)\"\n   Reported by mortehu on IRC\n - Supermicro A1SAi-2550F\n   Reported by Bernard Grymonpon\n - Supermicro X7DWT\n   Reported by Steven Stremciuc\n\nLaptop:\n - ASUS U38N\n   Reported by Ultra on IRC\n - Dell Latitude D630\n   Reported by Márton Miklós\n - Fujitsu Amilo Xi 3650\n   Reported by Elmar Stellnberger\n - Lenovo T400 (whitelisting only)\n\nChipsets:\n - Mark 8086:1f38 (Intel Avoton/Rangeley) as tested\n   Reported by Jeremy Porter and Bernard Grymonpon\n - Add Intel Sunrise Point IDs but no support yet.\n\nFlash chips:\n - Atmel AT45DB321D to PREW (+PREW)\n   Reported by The Raven\n - Eon EN25QH32 to PREW (+PREW)\n   Reported by Josua Mayer\n - Eon EN25QH64 to PREW (+EW)\n   Reported by David s. Alessio\n - GigaDevice GD25LQ64(B) to PREW (+PREW)\n   Reported by Greg Tippit\n - Intel 28F001BN/BX-T to PREW (+EW)\n   Reported by Lu Xie\n - Micron M25P10-A to PREW (+W)\n   Reported by the Raven\n - Micron M25PE40\n   Reported by David Wood\n - Micron N25Q128..3E to PREW (+PREW)\n   Reported by Miklós Márton\n - Macronix MX25L3273E to PREW (+PREW)\n   Reported by Roklobsta on IRC\n - Macronix MX23L6454 to PR (+PR)\n   Reported by Steven Honeyman\n - Macronix MX25U6435E/F to PREW (+PREW)\n   Reported by Marcos Truchado and Guillermo von Hünefeld\n - PMC Pm25LQ032C to PREW (+EW)\n   Reported by Dirk Knop\n - Spansion S25FL016A to PREW (+EW)\n   Reported by Márton Miklós\n - Spansion S25FL128S......0 to PREW (+PREW)\n   Reported by Jim Houston\n - Spansion S25FL204K to PR (+PR)\n   Reported by Thomas Debrunner\n - SST SST49LF016C to PREW (+EW)\n   Reported by Steven Stremciuc\n - SST SST39VF040 to PREW (+PREW)\n   Reported by Xavier Bourgeois\n - SST SST49LF040B to PREW (+EW)\n   Reported by Rikard Åhlund\n - ST M25P10-A to PREW (+W)\n   Reported by Martijn Schiedon\n - Winbond W39V040FA to PREW (+EW)\n   Reported by Евгений Черкашин\n - Winbond W39V080FA to PREW (+EW)\n   Reported by protagonist0 on IRC\n - Winbond W25Q80.W to PREW (+PREW)\n   Reported by Miklós Márton\n - Winbond W25X64 to PREW (+REW)\n   Reported by Johannes Krampf and Manuel Dejonghe\n - Fix ID of AMIC A25LQ64\n   Reported by Roman Titov\n - Fix page size of Spansion S25FL129P......1\n   Copy and paste error from the 128S uniform 256kB variant, probably.\n - Add Micron/Numonyx phase-change memory IDs\n\nMiscellaneous:\n - Detect Android target OS.\n   No changes are required to build flashrom (excluding programmers\n   with NEED_PCI) on Android.\n - Update rayerspi (spipgm) URL\n - Fix max_data_write handling of at45db.\n - Minor refinement of the README\n - Mark board enable for the GA-K8NS variants as tested.\n   Tested by \"nicolae788\" on a board with socket 754.\n - Mark \"Multi-system\" chassis as non-laptop case.\n - Remove W836xx log requests.\n   We got enough (and no one is looking at them for the time being anyway).\n - serprog: improve invalid reply error message, contributed by Urja Rannikko.\n - Remove default include paths for MinGW.\n - Disable implicit rules in the Makefile because we don\u0027t need them and they\n   just make the build (imperceptibly) slower.\n - Enable our own strnlen() implementation not only on DJGPP but also if\n   HAVE_STRNLEN is not defined. This is needed to get older BSDs\n   (e.g. NetBSD 6.0, FreeBSD \u003c 8.0) to work.\n - Tiny other stuff.\n\nCorresponding to flashrom svn r1917.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "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": "0554ca5cd33fe2cc599cfdbe91fff03c8fa752c5",
      "tree": "1d37d76b5b3d810c6b2a1286a5de7c2b60ce69a0",
      "parents": [
        "305e0b999a7d452a845709d5558c17a31afe178c"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jul 25 22:54:25 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Jul 25 22:54:25 2013 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 18\n\nTested mainboards:\nOK:\n - ASUS C60M1-I\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010578.html\n - ASUS P8H77-I\n   http://www.flashrom.org/pipermail/flashrom/2013-March/010607.html\n - ASUS P8H77-M\n   http://www.flashrom.org/pipermail/flashrom/2013-May/010994.html\n - ASUS P8P67 LE (B2)\n   http://www.flashrom.org/pipermail/flashrom/2013-May/010972.html\n - Elitegroup GeForce6100PM-M2 (V3.0)\n   http://www.flashrom.org/pipermail/flashrom/2013-July/011177.html\n - GIGABYTE GA-P55A-UD7\n   http://www.flashrom.org/pipermail/flashrom/2013-July/011302.html\n - MSI B75MA-E33 (MS-7808)\n   http://www.flashrom.org/pipermail/flashrom/2013-March/010659.html\n - MSI H77MA-G43 (MS-7756)\n   http://www.flashrom.org/pipermail/flashrom/2013-April/010853.html\n - MSI KA780G (MS-7551)\n   http://paste.flashrom.org/view.php?id\u003d1617\n - SAPPHIRE IPC-E350M1\n   Reported by xvilka on IRC\n - Supermicro X8DTG-D\n   http://www.flashrom.org/pipermail/flashrom/2013-July/011305.html\nNOT OK:\n - ASRock Fatal1ty Z77 Performance\n   http://www.flashrom.org/pipermail/flashrom/2013-January/010467.html\n - ASRock Z68 Extreme4\n   http://www.flashrom.org/pipermail/flashrom/2013-May/010984.html\n - ASUS P8B75-M LE\n   http://www.flashrom.org/pipermail/flashrom/2013-April/010867.html\n - ASUS P8P67-M PRO\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010541.html\n - ASUS P8Z68-V LE\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010582.html\n - Intel DQ77MK\n   http://paste.flashrom.org/view.php?id\u003d1603\n - Supermicro X9DRD-7LN4F\n   http://paste.flashrom.org/view.php?id\u003d1582\n - Supermicro X9SCE-F\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010588.html\n - Supermicro X9SCM-F\n   http://www.flashrom.org/pipermail/flashrom/2013-February/010527.html\n - Tyan S7066\n   http://www.flashrom.org/pipermail/flashrom/2013-March/010630.html\n\nChipsets:\n - Marked Intel B75 as tested\n   http://www.flashrom.org/pipermail/flashrom/2013-March/010659.html\n - Marked Intel H77 as tested\n   http://www.flashrom.org/pipermail/flashrom/2013-March/010607.html\n - Removed 10de:03e2 because it is apparently the MCP61 host bridge.\n   It was reclassified to Host Bridge in the PCI device ID database and there\n   is at least one report suggesting this configuration too:\n   http://www.flashrom.org/pipermail/flashrom/2012-August/009716.html\n - Added MCP89 which hopefully works with the code for previous versions.\n   Thanks to James Laird for submitting this change.\n\nTested flash chips:\n - Atmel AT25DF641(A) to PREW (+PREW)\n   http://www.flashrom.org/pipermail/flashrom/2013-June/011113.html\n - Atmel AT25F512 to PREW (+PREW)\n   http://www.flashrom.org/pipermail/flashrom/2013-April/010904.html\n   Also, change its ID according to Modification of PCN SC040401A:\n   \"There has been a change in the returned value of the Product Identification\n   (RDID) command, the AT25F512A RDID code is 65h compared to 60h from\n   the AT25F512 product.\"\n   It seems to be quite likely that all AT25F512 are fully functional relabeled\n   AT25F1024 chips. There are even some hints in the datasheet:\n   in table 6 they stress that address pin 16 needs to be low under all circum-\n   stances; while continuous reads can wrap around on the AT25F1024 the DS\n   notes \"For the AT25F512, the read command must be terminated when the\n   highest address (00FFFF) is reached.\" OTOH the lock bit semantics are\n   different, but this has not been tested thoroughly\n - Atmel AT25F512A to PREW (+PREW)\n   http://paste.flashrom.org/view.php?id\u003d1569\n - Eon EN25F05 to PREW (+PREW)\n   http://paste.flashrom.org/view.php?id\u003d1571\n - Macronix MX25L12805(D) to PREW (+REW)\n   http://www.flashrom.org/pipermail/flashrom/2013-April/010913.html\n - Spansion S25FL256S......0 and S25FL512S to P/!R!E!W (+P)\n   Tested by Stefan Tauner\n - Micron/Numonyx/ST M25PX80 to PREW (+PREW)\n   Tested by Stefan Tauner\n - Micron/Numonyx/ST N25Q032..3E and N25Q128..3E to PREW (+PREW)\n   Tested by Stefan Tauner\n - Micron/Numonyx/ST N25Q256..3E and N25Q512..3G to P/!R!E!W (+P)\n   Tested by Stefan Tauner\n - SST SST25VF040B to PREW (+PREW)\n   http://paste.flashrom.org/view.php?id\u003d1574\n - SST SST25VF040B.REMS to PREW (+EW)\n   http://paste.flashrom.org/view.php?id\u003d1575\n - ST M25P05-A to PREW (+PREW)\n   http://paste.flashrom.org/view.php?id\u003d1576\n - ST M29W512B to PREW (+W)\n   http://www.flashrom.org/pipermail/flashrom/2013-March/010635.html\n - Winbond W25Q64.W to PREW (+PREW)\n   Tested by the chromiumos guys.\n - Winbond W25Q128.V to PREW (+REW)\n   http://www.flashrom.org/pipermail/flashrom/2013-June/011108.html\n - Winbond W25X20 to PREW (+PREW)\n   http://www.flashrom.org/pipermail/flashrom/2013-May/010990.html\n\nMiscellaneous:\n - Add Lenovo X201 to the laptop whitelist.\n - Add chip IDs for the ESMT F25L..QA family.\n - Add chip IDs for a few Macronix MX25 models.\n - The list of flashchips is not sorted strictly alphabetically and should not be\n   either. Refine the comment explaining the scheme on top of the list.\n - Support -L output of chip sizes with up to 6 decimal places (up to 4 Gb).\n - Use z length modifier in (more) prints for size_t types.\n - Remove chips \u003e16MB again because our current implementation of memory mapping\n   the flash chip violates common rules by mapping a window as large as the chip.\n   This leads to failing mmaps as can be seen here:\n   http://paste.flashrom.org/view.php?id\u003d1695\n - Document spispeed parameter of linux_spi (and fix some leaks).\n - Rephrase the \"multiple chips detected\" message because it was confusing.\n - Skip verification step if the image is equal to the flash contents.\n - Tiny other stuff.\n\nCorresponding to flashrom svn r1702.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "305e0b999a7d452a845709d5558c17a31afe178c",
      "tree": "3b65c3cd627ff55d683f26bf0819913a3e63c5d8",
      "parents": [
        "4a03865cd9b192e6e65b5dbc5a928af87322385d"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Jul 17 23:46:44 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Jul 17 23:46:44 2013 +0000"
      },
      "message": "Uintptr_t-ify map_flash_region functions\n\nUnsigned long is not the right type for manipulating pointer values.\nSince C99 there are suitable unsigned and signed types available, namely\nuintptr_t and intptr_t respectively.\n\nUse them in functions assigned to programmers\u0027 map_flash_region fields and\ntheir callers where applicable.\n\nThis patch also changes the display width of all associated address values in\nphysmap.c to 16/8 hex characters depending on the actual size by\nintroducing a macro PRIxPTR_WIDTH and exploiting printf\u0027s * field width\nspecifier.\n\nCorresponding to flashrom svn r1701.\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": "c2333751c411b5265326d866f810017cd561643c",
      "tree": "574e4a82e15854b6bc4393c5f56005fe2b4bda9c",
      "parents": [
        "11990da1d3a4ca913ed5b85888a37188c4a621db"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jul 13 23:31:37 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Jul 13 23:31:37 2013 +0000"
      },
      "message": "Use uintptr_t for chipaddr instead of unsigned long\n\nCorresponding to flashrom svn r1698.\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": "67d163d2fa6e7db9673e8ec820b8ef21bca5e907",
      "tree": "3cfa28408caa64594638f4a5cad7f5deafa8506a",
      "parents": [
        "8225868465f6ad75958a1f81514d9c4978487184"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jan 15 17:37:48 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jan 15 17:37:48 2013 +0000"
      },
      "message": "Fix duplicate \u0027const\u0027 declaration specifiers\n\nThanks to Idwer and clang for noticing these problems.\n\nCorresponding to flashrom svn r1646.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nSigned-off-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "e0ff1652a60e3fdcd82e3def8c9d13b071a4d05d",
      "tree": "71c48f27dadf37c78b9e9da5defba243ea3a2be3",
      "parents": [
        "5609f9d408645657ef0dd2ca986ada5aaad4c875"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Sep 22 22:56:09 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Sep 22 22:56:09 2012 +0000"
      },
      "message": "Fix a memleak in the dummyflasher\n\nEmu_persistent_image was not freed correctly.\n\nThis bug was found thanks to valgrind.\n\nCorresponding to flashrom svn r1603.\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": "af2cac0e13dafbf9e26328a85e9e423f2ca5ccfa",
      "tree": "9e350ad5215d0cd91fa77818834b2e7557305748",
      "parents": [
        "250c321a9d10d05959ff002be7e5f178b8c9637e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Aug 30 21:41:00 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Aug 30 21:41:00 2012 +0000"
      },
      "message": "Add RES/REMS support to all dummyflasher emulated chips as a test case\n\nFix a few odd corner cases in RES/REMS support in dummyflasher\nemulation which became noticeable once RES/REMS was used heavily.\n\nCorresponding to flashrom svn r1589.\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": "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": "0b9df97a84ce79217623e2bb32cf86458cdbb043",
      "tree": "ae201b62f7bba335f7ec9151cc24bc761dea79a7",
      "parents": [
        "f5e62cb151b4f109a319b58baedcd83976c9ac35"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon May 07 22:12:16 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon May 07 22:12:16 2012 +0000"
      },
      "message": "dummyflasher.c: add support for SFDP by adding a new emulator chip: MX25L6436\n\nThe chip features a complete 1.0 SFDP JEDEC flash parameter table and also a\nvendor-specific extension table (defining voltages, lock bits etc).\nNB: the MX25L6436 uses the same RDID as the MX25L6405.\n\nCorresponding to flashrom svn r1534.\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": "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": "ac427b22c4fa45936fe94af31a5e0422dd95c152",
      "tree": "185514486da4a8d244f71ba62f18261d948cd631",
      "parents": [
        "8541d2312150943069bb96addeed564769057af2"
      ],
      "author": {
        "name": "Paul Menzel",
        "email": "paulepanter@users.sourceforge.net",
        "time": "Thu Feb 16 21:07:07 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Feb 16 21:07:07 2012 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 10\n\nTested mainboards:\nOK:\n - ABIT A-S78H\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008603.html\n - ASRock AM2NF6G-VSTA\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008534.html\n - ASUS KFSN4-DRE/SAS\n   reported by ted on IRC\n - ASUS M2A-VM (HDMI variant)\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008509.html\n - ASUS M4N78 PRO\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008598.html\n - ASUS P5K-V\n   http://www.flashrom.org/pipermail/flashrom/2012-February/008737.html\n - ASUS P5KPL-CM\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008522.html\n - ASUS P5N7A-VM\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008508.html\n - ASUS P5QPL-AM\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008557.html\n - ECS GF7100PVT-M3\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008412.html\n - ECS K7SEM\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008362.html\n - ECS P4M800PRO-M V2.0\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008478.html\n - Gigabyte 880GMA-USB3\n   http://www.flashrom.org/pipermail/flashrom/2012-February/008715.html\n - Gigabyte GA-EP31-DS3L\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008601.html\n - Gigabyte GA-X58A-UDR3\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008572.html\n - Gigabyte GA-Z68XP-UD3\n   http://paste.flashrom.org/view.php?id\u003d1058\n - HP ProLiant N40L\n   http://www.flashrom.org/pipermail/flashrom/2012-February/008650.html\n - MSI MS-7309 (K9N6PGM2-V2)\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008441.html\n - MSI MS-7548 (Aspen-GL8E used in HP Pavilion a6750f)\n   http://www.flashrom.org/pipermail/flashrom/2012-February/008666.html\n - MSI MS-7676 (H67MA-ED55(B3))\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008547.html\n - PC Engines Alix.6f2\n   Reported by Philip Prindeville on IRC\n - Shuttle AV18E2\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008459.html\n - Supermicro X8DTE-F\n   http://www.flashrom.org/pipermail/flashrom/2011-November/008304.html\n - Supermicro X8DTT-HIBQF\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008520.html\nNOT OK:\n - ASUS P8H61-M LE/USB3\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008491.html\n - ASUS P8H67-M PRO\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008321.html\n - ASUS P8Z68-V PRO\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008469.html\n - Clevo P150HM (laptop)\n   http://www.flashrom.org/pipermail/flashrom/2012-February/008717.html\n - Intel D425KT\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008600.html\n - Supermicro X9SCA-F\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008313.html\n\nTested flash chips:\n - mark AT29C512 as TEST_OK_PREW\n   http://paste.flashrom.org/view.php?id\u003d977\n - mark M25P40 as TEST_OK_PREW\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008351.html\n - mark M25PE80 as TEST_OK_PREW\n   http://paste.flashrom.org/view.php?id\u003d1061\n - mark MX25L6405 as TEST_OK_PREW\n   tested myself with an MX25L6436E variant on serprog\n - mark W39V080A as TEST_OK_PREW\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008509.html\n\nTested chipsets:\n - SiS 730 (:0730)\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008362.html\n - NVIDIA MCP61 (:03e0)\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008534.html\n - NVIDIA MCP73 (:07d7)\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008412.html\n - NVIDIA MCP79 (:0aac)\n   http://www.flashrom.org/pipermail/flashrom/2012-January/008508.html\n - VIA VT82C69x (0691) and VT82C686A/B (:0686)\n   http://www.flashrom.org/pipermail/flashrom/2011-December/008459.html\n\n - AMD\u0027s SB950 (and presumably also SB920) have the same PCI ID as previous\n   generations, hence change the chipset enable device string. Thanks to\n   Christian Ruppert for the suggestion.\n - Fix the board enable of the abit NF-M2 nView which had the IDs of its onboard\n   graphics card in its pattern. Change this to the LPC controller.\n - Intel X79 SPI registers are identical to 6 Series\u0027, so use the chipsetenable\n   wrapper of it (enable_flash_pch6).\n - Fix two paranoid checks for address \u003c 0 in ichspi.c which became futile (and\n   generate clang warnings) with the unsignify patch committed in r1470.\n - Rename AT25DF641 to AT25DF641(A). They are almost idencical, but could\n   be distinguished by an extended RDID probe (Atmel\u0027s patented EDI procedure),\n   which we do not support yet, hence handle them as one model for now.\n - Source format fixes and typos\n\nCorresponding to flashrom svn r1499.\n\nthe addition of the ASRock AM2NF6G-VSTA to print.c is\nSigned-off-by: Paul Menzel \u003cpaulepanter@users.sourceforge.net\u003e\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": "5b5547126d9e80ce6e9c8572b7eb810990618b57",
      "tree": "3df3b2547bfb8a58b79153912b6f15fec8b06da1",
      "parents": [
        "5210e72d136158ccadfb1b5641eb20ce34066f25"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Feb 16 01:43:06 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu Feb 16 01:43:06 2012 +0000"
      },
      "message": "Workaround missing %hhx support in MinGW sscanf\n\nMinGW uses standard Windows C libraries and those apparently don\u0027t\nsupport %hhx for sscanf into a uint8_t. SCNx8 isn\u0027t available either.\n\nCorresponding to flashrom svn r1495.\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": "1b83be5cd45b86d2a52ec6962de2910901972b38",
      "tree": "4bea7df2226bbaf8a68ab01a1410bf43acb24f4b",
      "parents": [
        "23907d8903487dc350783e85e190cf21e47e82e4"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Feb 08 23:28:54 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Feb 08 23:28:54 2012 +0000"
      },
      "message": "SPI command black-/ignorelisting for the flash chip emulator in the dummy programmer\n\nUsage:\nflashrom -p dummy:spi_blacklist\u003dcommandlist\nflashrom -p dummy:spi_ignorelist\u003dcommandlist\n\nIf commandlist is 0302, flashrom will refuse (blacklist) or ignore\n(ignorelist) command 0x03 (READ) and command 0x02 (WRITE). The\ncommandlist can be up to 512 bytes (256 commands) long.\nSpecifying flash chip emulation is a good idea to get useful results.\n\nVery useful for testing corner cases if you don\u0027t own a locked down\nIntel chipset and want to simulate such a thing.\n\nExample usage:\ndd if\u003d/dev/zeros bs\u003d1024k count\u003d4 of\u003ddummy_simulator.rom\ndd if\u003d/dev/urandom bs\u003d1024k count\u003d4 of\u003drandomimage.rom\nflashrom -p dummy:emulate\u003dSST25VF032B,image\u003ddummy_simulator.rom,\\\nspi_blacklist\u003d20,spi_ignorelist\u003d52 -w randomimage.rom -V\n\nCorresponding to flashrom svn r1490.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: David Hendricks \u003cdhendrix@google.com\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": "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": "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": "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": "146b77d77778a0dadb7e5ad5c9d1d0e9dde3fc9c",
      "tree": "43cbc163c84812a0c51daf8ff1141e0d024375b0",
      "parents": [
        "9a1105cffffce126a8c7c4a98d24e6b92d86e817"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Feb 04 22:52:04 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Feb 04 22:52:04 2011 +0000"
      },
      "message": "Improve debugging for unaligned erase in the flash chip emulator\n\nFix out-of-bounds access for chip erase in the flash chip emulator.\n\nCorresponding to flashrom svn r1259.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: David Hendricks \u003cdhendrix@google.com\u003e\n"
    },
    {
      "commit": "c24413879c42c24a534735ef71859ab1054a4716",
      "tree": "c229d9a277e2a2fc95f210ce0f01ce3d5b025d27",
      "parents": [
        "12d6d821416436cf3ede3dbabcd688887ef7ba76"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Nov 09 22:00:31 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Nov 09 22:00:31 2010 +0000"
      },
      "message": "Support setting the Dediprog SF100 SPI voltage\n\nAdd a generic voltage parameter parser.\nMove tolower_string() from dummyflasher.c to flashrom.c to make it\navailable everywhere.\n\nCorresponding to flashrom svn r1226.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coreboot.org\u003e\n"
    },
    {
      "commit": "f68aa8aca0a7e2852269f1b85b16535a3fb7cd14",
      "tree": "4c85236da301f711301b7a49b0c213e7d7e2ab37",
      "parents": [
        "04c8379e49ce843ac7235d9b1ffd98617724332e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Nov 01 22:07:04 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Nov 01 22:07:04 2010 +0000"
      },
      "message": "Add SPI flash emulation capability to the dummy programmer\n\nYou have to choose between\n- no emulation\n- ST M25P10.RES SPI flash chip (RES, page write)\n- SST SST25VF040.REMS SPI flash chip (REMS, byte write)\n- SST SST25VF032B SPI flash chip (RDID, AAI write)\nExample usage: flashrom -p dummy:emulate\u003dSST25VF032B\n\nFlash image persistence is available as well.\nExample usage: flashrom -p dummy:image\u003ddummy_simulator.rom\n\nAllow setting the max chunksize for page write with the dummy\nprogrammer.\nExample usage: flashrom -p dummy:spi_write_256_chunksize\u003d5\n\nFlash emulation is compiled in by default. \n\nThis code helped me find and fix various bugs in the SPI write code\nas well as in the testsuite.\n\nCorresponding to flashrom svn r1220.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: David Hendricks \u003cdhendrix@google.com\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": "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": "1b0ba893529cf93ae54b91607d93d3ad49c259e5",
      "tree": "af751b638928cfed22ad9411d0cb7169fe9feef8",
      "parents": [
        "9c62d11d55a492f59781874cb74ce84f8dde1bfc"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jun 20 10:58:32 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Jun 20 10:58:32 2010 +0000"
      },
      "message": "Add SPI chip read support to the dummy flasher\n\nThis allows using the dummy flasher for SPI read debugging.\n\nCorresponding to flashrom svn r1053.\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": "d8dfc441ed2e03f97875a64046e23646bbd4dc4f",
      "tree": "af68fc5ba8a397345deca2fc632c130e0e3ba01e",
      "parents": [
        "cc389fc6b105572a0ed214e0e0795fb63b92f784"
      ],
      "author": {
        "name": "Jonathan A. Kollasch",
        "email": "jakllsch@kollasch.net",
        "time": "Tue Feb 16 00:49:50 2010 +0000"
      },
      "committer": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Tue Feb 16 00:49:50 2010 +0000"
      },
      "message": "More NetBSD fixes (w/ patch)\n\nCast input to tolower() to unsigned char to work around how tolower() is\nimplemented on NetBSD.\n\nAlso, use CPPFLAGS (rather than overriding CFLAGS) for the\nNetBSD/DragonFly build example.\n\nCorresponding to flashrom svn r905.\n\nSigned-off-by: Jonathan A. Kollasch \u003cjakllsch@kollasch.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "3ac101c32bb8235a799b10482030d590d7623046",
      "tree": "8c4e12115cf62f02d90275cfe09c5e6544fc2bb2",
      "parents": [
        "f8dda683591a9ab2ff498500d2eda77068517a64"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jan 09 04:32:23 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jan 09 04:32:23 2010 +0000"
      },
      "message": "Convert dummyflasher to msg_* and make good use of msg_pspew\n\nRule of thumb: Diagnostic programmer init messages are msg_pdbg, all\nother debug stuff (except warnings, which should be pmsg_pinfo or\nmsg_perr) is msg_pspew.\n\nThis makes \"flashrom -p dummy -V\" output a whole lot more readable\n(try it!). In case someone wants the full barfed output, it is\npossible to specify -VV instead of -V.\n\nCorresponding to flashrom svn r842.\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": "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": "be726817f770572f4d950c7e572c308112a69e3b",
      "tree": "f6c67448c4b98b1f49e89826f451f51de027b1e5",
      "parents": [
        "5b2f52fa6caab4bda5aaf8b6128eb3044a930c47"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Aug 09 12:44:08 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Aug 09 12:44:08 2009 +0000"
      },
      "message": "Remove unnecessary #include files\n\nSerprog compilation is now controlled by a Makefile variable.\nReplace munmap with physunmap where appropriate.\n\nCorresponding to flashrom svn r671.\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": "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": "0bd2a2bdc10720776fe50b96d24d30323ec24c09",
      "tree": "1348763e5fa6f4ea9d13a5b84d63999dcf132749",
      "parents": [
        "ca8bfc6c22196e5d16c6d2625c65d6b50c04daaf"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 18:32:07 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 18:32:07 2009 +0000"
      },
      "message": "Sometimes we want to read/write more than 4 bytes of chip content at once\n\nAdd chip_{read,write}n to the external flasher infrastructure which\nread/write n bytes at once.\n\nFix a few places where the code used memcpy/memcmp although that is\nstrictly impossible with external flashers.\nPlace a FIXME in the layout.c code because usage is not totally clear\nand needs to be fixed to support external flashers.\n\nAs a nice side benefit, we get a noticeable speedup for builtin flash\nreading which is now a memcpy() of the full flash area instead of a\nseries of single-byte reads.\n\nCorresponding to flashrom svn r579.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Urja Rannikko \u003curjaman@gmail.com\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "945d26a0d7eef8faf46453d5f2717c21b59bafc2",
      "tree": "0d47525793ba4523f1c12721a24e92ddcf701d5d",
      "parents": [
        "2bc020bf295fa84b6137e22766480402a991035d"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 17:04:37 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jun 05 17:04:37 2009 +0000"
      },
      "message": "Fix a bug in dummyflasher.c special case where no type parameter is given\n\nCorresponding to flashrom svn r577.\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": "e9d04d40ce1008ca2cd2d2ccf6e7372392bf38d0",
      "tree": "1bba4b4317be168693fed28bed621bf0ecfa6ea3",
      "parents": [
        "bc2bbd285168dc97a39e31ea9f5f49905b01c02c"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Tue Jun 02 19:54:22 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Tue Jun 02 19:54:22 2009 +0000"
      },
      "message": "Mark 3COM \"3C905B: Cyclone 10/100/BNC\" as fully tested\n\nAlso do some random cleanups while I\u0027m at it.\n\nCorresponding to flashrom svn r567.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "3504b539bfa33693510d83402a344b1eafd7a592",
      "tree": "188831bf4243fd81eb83eb983a06731d21021529",
      "parents": [
        "211fa97ce8c3cf9c527fbf2d004f9f98420f8a60"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 01 00:02:11 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 01 00:02:11 2009 +0000"
      },
      "message": "Add bus type support to the dummy external programmer\n\nThe syntax is explained in the man page.\nExample: flashrom -p dummy\u003dlpc,fwh\n\nTested, works perfectly. ;-)\n\nAs a nice benefit, it allows easy testing of the \"probe only compatible\nflashes\" patch.\n\nCorresponding to flashrom svn r559.\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": "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": "2cac6860c3f451a661d8281d25a72dd5db89f4e4",
      "tree": "7592a765da81385bff5cfe1aa62f215618be948e",
      "parents": [
        "8403ccb49f98d1583736984c92d62735d9d466b5"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat May 16 22:05:42 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sat May 16 22:05:42 2009 +0000"
      },
      "message": "Drop unused/duplicated #includes and some dead code\n\nBuild-tested on 32bit x86.\n\nCorresponding to flashrom svn r521.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "5820f42ef209cfa0d4070fa9be96c9c91123a93f",
      "tree": "a505b6f813fc4f7601f77e7195e479dfddc73571",
      "parents": [
        "4059598a068f7694f2238a3811d85cbfa520a8d5"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 16 21:22:56 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat May 16 21:22:56 2009 +0000"
      },
      "message": "Introduce a type \"chipaddr\" to abstract the offsets within flash regions\n\nUse chipaddr instead of volatile uint8_t * because when we access chips\nin external flashers, they are not accessed via pointers at all.\n\nBenefits: This allows us to differentiate between volatile machine\nmemory accesses and flash chip accesses. It also enforces usage\nof chip_{read,write}[bwl] to access flash chips, so nobody will\nunintentionally use pointers to access chips anymore. Some unneeded\ncasts are removed as well. Grepping for chip operations and machine\nmemory operations doesn\u0027t yield any false positives anymore.\n\nCompile tested on 32 bit and 64 bit Linux.\n\nCorresponding to flashrom svn r519.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "bfe2e0cf677ef4609e3eacb337efc669c869f209",
      "tree": "6bd9710ba48b8b27fd99469669e6cc8925ab7043",
      "parents": [
        "d02b73f9e9a717706dc820eca04128958238df37"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu May 14 12:59:36 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Thu May 14 12:59:36 2009 +0000"
      },
      "message": "Add a dummy SPI controller driver, similar to the dummy LPC/FWH/Parallel flasher driver\n\nDoes not support reading or writing the fake chip yet.\n\nflashrom --programmer dummy\nalso enables the dummy SPI controller driver.\n\nTesting the dummy SPI driver revealed a RDID debug printing bug in the\nSPI core. Fix that as well.\n\nCorresponding to flashrom svn r507.\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": "1e334e619b5bc5e29034dd4a305ddc9ec39a9033",
      "tree": "86589a217a4cd7fdec5c7746f1bd4c4bb436e4d8",
      "parents": [
        "8130f2d3ec2f7c32876d470edffbe44394d84d16"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 11 15:46:43 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 11 15:46:43 2009 +0000"
      },
      "message": "Print dummy programmer messages only if verbose mode is selected\n\nPrint the return value of dummy_chip_read[bwl].\nAlign entries in programmer_table.\n\nThis is a cosmetic patch and has no effect on code flow.\n\nCorresponding to flashrom svn r495.\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": "1455b2baea9f4379086cabf1dcc1388c478c745c",
      "tree": "bfa1507d50bf32cc52f03f21f2922520061d9c3f",
      "parents": [
        "d0fc9469fd740c2036536a3656a56c11fe0b386e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 11 14:13:25 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon May 11 14:13:25 2009 +0000"
      },
      "message": "Abstract mapping/unmapping of flash regions\n\nFlash mapping/unmapping was performed without an abstraction layer,\nso even the dummy flasher caused memory mappings to be set up. Add\nmap/unmap functions to the external flasher abstraction.\n\nFix a possible scribble-over-low-memory corner case which fortunately\nnever triggered so far.\n\nWith this patch, --programmer dummy works fine as non-root.\n\nCorresponding to flashrom svn r493.\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"
    }
  ],
  "next": "c3129208648f241c0b6538235cd4e9854ae6539d"
}
