)]}'
{
  "log": [
    {
      "commit": "dd6e07ab3ab12346ab68f9e93f725d651a90964d",
      "tree": "384798d6614b860a9cff68e3ed5fe0665f15dcad",
      "parents": [
        "47aa85c8fdf82b4e3b92dbcdfa3e4490c6782b69"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Feb 21 17:55:26 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "memory_bus: Pass master instead of flash to .chip_read/write\n\nThere is / should be no need to know flash-chip details in a programmer\ndriver. They should only pass data around and leave the chip details to\neach chip driver.\n\nThis will allow us to probe for chips before knowing the details and as\na bonus gets rid of many `flash.h` dependencies.\n\nChange-Id: Iae78fbbd95567134da890613114999cb14c3a011\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/437\n"
    },
    {
      "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": "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": "621208c341cb400b9b13b5874da49504818a9f49",
      "tree": "1a851dd54e96add7fe6e30de98fe3b5e4424a775",
      "parents": [
        "56684d9a2ed8a0f878472d5aa0518a3200526812"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Sep 07 22:21:39 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "drivers/: Make \u0027fallback_{un}map\u0027 the default unless defined\n\nDrop the explicit need to specify the default \u0027fallback_{un}map\u0027\ncallback function pointer from the \u0027programmer_entry\u0027 struct.\nThis is a reasonable default for every other driver in the tree\nwith only a select few exceptions [atavia, serprog, dummyflasher\nand internal].\n\nThus this simplifies driver development and paves way\nto remove the \u0027programmer\u0027 global handle.\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: I5ea7bd68f7ae2cd4af9902ef07255ab6ce0bfdb3\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67404\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72360\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "56684d9a2ed8a0f878472d5aa0518a3200526812",
      "tree": "020c2d8db0e05a74981b5b381c37febd46fb796d",
      "parents": [
        "78ed668a924db5dd78c3530655127f895728fe59"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Sep 07 10:47:45 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "drivers/: Make \u0027internal_delay\u0027 the default unless defined\n\nDrop the explicit need to specify the default \u0027internal_delay\u0027\ncallback function pointer in the programmer_entry struct.\nThis is a reasonable default for every other driver in the\ntree with only the two exceptions of ch341a_spi.c and serprog.c.\n\nThus this simplifies driver development.\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: I17460bc2c0aebcbb48c8dfa052b260991525cc49\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67391\nOriginal-Reviewed-by: Peter Marheine \u003cpmarheine@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72359\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "3f4d35daf4533650e75fcabb8f1ed9085e1fcf77",
      "tree": "ae3340f0a563d1d9ed48285cc861e7e90e2343ef",
      "parents": [
        "a6b45c4516e15aeb405028e5095e86259fcd9e34"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Mon Jan 17 15:11:43 2022 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "hwaccess: move mmio functions into hwaccess_physmap\n\nThe mmio_le/be_read/writex functions are used for raw memory access.\nBundle them with the physmap functions.\n\nChange-Id: I313062b078e89630c703038866ac93c651f0f49a\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/61160\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72278\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "ca195dca145673a6cd216c52392e153e601c9072",
      "tree": "e548886f7e9eed6eaa99d56ee7684b2ca9b597e1",
      "parents": [
        "06c58fa3ed4840915c639da412d5f9aee7121a41"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Thu Jan 06 15:01:43 2022 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "satasii: remove unused rget_io_perms()\n\nThe satasii programmer does not use x86 IO Ports. Remove the dependency\nto it.\n\nChange-Id: I54d65561ff024d3c181d11c6518a4612c2ab0399\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/60848\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72276\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "74b4aa0b15439a2ab2474889a7abed978439757a",
      "tree": "a3e6d01052b04bbae7c71af7c1148d3619ba1ab1",
      "parents": [
        "b3287b43dc2fc90913686eb7ca9adfdedac2fdb4"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Tue Dec 14 17:52:30 2021 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "physmap: rename to hwaccess_physmap, create own header\n\nLine up physmap with the other hwaccess related code.\n\nChange-Id: Ieba6f4e94cfc3e668fcb8b3c978de5908aed2592\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/60113\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72267\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "a065520a7c7eedcca961de1fc891cc0b04e6df77",
      "tree": "f7a4c280f6d3114b98a52e147f988c4ae293271b",
      "parents": [
        "d96c97c77309f1cf1ff1cbe9fa521a75fc9d5698"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Tue Dec 14 16:36:05 2021 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "hwaccess: move x86 port I/O related code into own files\n\nAllow port I/O related code to be compiled independent from memory\nmapping functionality. This enables for a better selection of needed\nhardware access types.\n\nChange-Id: I372b4a409f036da766c42bc406b596bc41b0f75a\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/60110\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72265\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "d96c97c77309f1cf1ff1cbe9fa521a75fc9d5698",
      "tree": "2ca206a0bb2873472e243eb2138c7f1e0345abf2",
      "parents": [
        "b7c6a66d5167a9cb6d83081f4c84b7a6c0d28046"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Tue Nov 02 21:03:00 2021 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "pci.h: move include into own wrapper\n\nSplit the include of hwaccess and libpci. There is no need to have pci.h\nincluded in hwaccess.\n\nChange-Id: Ibf00356f0ef5cc92e0ec99f8fe5cdda56f47b166\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/58883\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72264\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "c1f2a47c9b7b909542a65d2138e9c3c95227bac6",
      "tree": "2423f24cf00b4ea1bac6ce60845e22e716216d00",
      "parents": [
        "d66dded9e302ae471f1069ab439d763418501ff1"
      ],
      "author": {
        "name": "Anastasia Klimchuk",
        "email": "aklm@chromium.org",
        "time": "Fri Aug 27 15:47:46 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "par_master: Fix propagation of register_par_master() return values\n\nThis patch checks return value of register_par_master()\nso that in case of an error this error is not ignored anymore.\n\nTested: builds and ninja test\n\nChange-Id: I377afae41708c7433a56615e2f096bce9c5349f1\nSigned-off-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/57192\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72234\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": "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": "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": "e083880279119677e443fc16b4694f8c81bf2c40",
      "tree": "03413b996779bc4c86ec41590f3e7bcdd97d0ef5",
      "parents": [
        "124ef38f7afc61ad7c713c22aad7c5c7f79bdb9b"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Mon Apr 02 11:14:02 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 24 20:21:41 2018 +0000"
      },
      "message": "Remove address from GPLv2 headers\n\nChange-Id: I7bfc339673cbf5ee2d2ff7564c4db04ca088d0a4\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/25381\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "a5bcbceb581f27cfc0055369d3dd9cfd1ae00bfa",
      "tree": "5daecd880a16b7011be28e064fb7550f3e6b7e58",
      "parents": [
        "82b6ec1df30d3fca55547f230c76718d6e613b2a"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 19 22:03:29 2014 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 19 22:03:29 2014 +0000"
      },
      "message": "Rename programmer registration functions\n\nRegister_programmer suggests that we register a programmer. However,\nthat function registers a master for a given bus type, and a programmer\nmay support multiple masters (e.g. SPI, FWH). Rename a few other\nfunctions to be more consistent.\n\nCorresponding to flashrom svn r1831.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "89edf36c177eec2b1a2cbbcaff48c4e9a946a190",
      "tree": "20c63c2ef9a36bd6ba61248d8bbc337cf4a509e5",
      "parents": [
        "184c52c94191a354afb0cd2c91e9932e66a5cd3d"
      ],
      "author": {
        "name": "Niklas Söderlund",
        "email": "niso@kth.se",
        "time": "Fri Aug 23 23:29:23 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Aug 23 23:29:23 2013 +0000"
      },
      "message": "Add additional error handling to pcidev_readbar() callers\n\nThis is mostly a leftover of Niklas\u0027 \"remove exit call from pcidev_init\" patch.\nWhile not explicitly necessary detecting errors early is usually a good idea.\n\nCorresponding to flashrom svn r1718.\n\nSigned-off-by: Niklas Söderlund \u003cniso@kth.se\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\n"
    },
    {
      "commit": "7fb5aa049bee3c685835dc24c8184c5897e4a6bd",
      "tree": "3d193e98d25da24307824ab8d0939f3538ec2e50",
      "parents": [
        "36e9f4b3595c6e8b13f80f85785a91b65ecad62f"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 14 15:48:44 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 14 15:48:44 2013 +0000"
      },
      "message": "Automatically unmap physmap()s\n\nSimilarly to the previous PCI self-clean up patch this one allows to get rid\nof a huge number of programmer shutdown functions and makes introducing\nbugs harder. It adds a new function rphysmap() that takes care of unmapping\nat shutdown. Callers are changed where it makes sense.\n\nCorresponding to flashrom svn r1714.\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": "a2faddf7d38e4651ce6654c62b668ab02b909b58",
      "tree": "1a13a2aa0134dbede16c017dd102efc81eb97ee0",
      "parents": [
        "c6fa32d2b5c08d2fcc92fee2974a3fc02a3ca1f7"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jan 05 23:52:45 2013 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jan 05 23:52:45 2013 +0000"
      },
      "message": "Decouple BAR reading from pci device init, handle errors gracefully\n\nPcidev_init() now returns struct pci_device * instead of a BAR stored in\nPCI config space. This allows for real error checking instead of having\nexit(1) everywhere in pcidev.c.\nThanks to Niklas Söderlund for coming up with the original error\nhandling patch which was slightly modified and folded into this patch.\nMove the declaration of struct pci_device in programmer.h before the\nfirst user.\n\nCorresponding to flashrom svn r1644.\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": "c6fa32d2b5c08d2fcc92fee2974a3fc02a3ca1f7",
      "tree": "7ac561c734007cfe88577cdad895f87524e3184f",
      "parents": [
        "5561955b1158e8bd29299735abef1e26a5a9cdbc"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Jan 04 22:54:07 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Jan 04 22:54:07 2013 +0000"
      },
      "message": "Introduce msg_*warn\n\nAlso, unify all outputs of \"Warning:\" and \"Error:\" to use normal\ncapitalization instead of mixing it with all capitals.\n\nCorresponding to flashrom svn r1643.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Idwer Vollering \u003cvidwer@gmail.com\u003e\n"
    },
    {
      "commit": "5561955b1158e8bd29299735abef1e26a5a9cdbc",
      "tree": "5284fff71cacd837b0bea9b80977dee26a08765a",
      "parents": [
        "30dfdbaf3ab30974a6d76e085525d52c033e4215"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Jan 04 22:24:58 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Fri Jan 04 22:24:58 2013 +0000"
      },
      "message": "Unify PCI init and let pcidev clean itself up\n\nPreviously the internal programmer used its own code to initialize pcilib.\nThis patch extracts the common code from the internal programmer and\npcidev_init() into pcidev_init_common().\nThis fixes the non-existent PCI cleanup of the internal programmer and adds\nan additional safety by checking for an already existing PCI context.\n\nWe got a nice shutdown function registration infrastructure, but did not use it\nvery wisely. Instead we added shutdown functions to a myriad of programmers\nunnecessarily. In this patch we get rid of those that do only call pci_cleanup(pacc)\nby adding a shutdown function the pcidev.c itself that gets registered by\npcidev_init().\n\nCorresponding to flashrom svn r1642.\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": "4b24a2d70b79f3288370fd5b4f472bdf218f16e8",
      "tree": "b4ba0971a1d5ff2f8e1693ae66b33e8c8cda1843",
      "parents": [
        "af358d6af23b21f93f6e27278e76eec21a3d148f"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Dec 27 18:40:36 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Thu Dec 27 18:40:36 2012 +0000"
      },
      "message": "Unify usbdev_status and pcidev_status into dev_entry\n\nOnce upon a time usbdev_status was created for the ft2232\nprogrammer. Its IDs are semantically different to pcidev_status\nbecause they indicate USB instead of PCI IDs, but apart from that\nboth data structures are equal. This change makes life easier for\neverything involved in handling and printing the status of devices\nthat is noted in those structures by combining them into dev_entry.\n\nIt is still possible to distinguish between PCI and USB devices\nindirectly by using the struct programmer\u0027s type field.\n\nAlso, add a programmer column to the PCI and USB devices lists.\n\nCorresponding to flashrom svn r1632.\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": "250c321a9d10d05959ff002be7e5f178b8c9637e",
      "tree": "d45db97be9afb075aa376da6b39e8518011255ed",
      "parents": [
        "e3adea08648c4ba0e0ebed702aba0adcf21e3925"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Aug 29 03:41:57 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Wed Aug 29 03:41:57 2012 +0000"
      },
      "message": "Remove potential endless loops from satasii.c\n\nCorresponding to flashrom svn r1588.\n\nThis is based on the idea from the \"Make satasii driver more robust\" patch\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n\nIt factors out the wait loop and replaces all potential endless\nloops instead of just a few.\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": "1c6d2ff03d16acf87c96d019153dcd10c779a5f6",
      "tree": "b211be01cc5f25fa78321dd434e42aafa9ea3f0e",
      "parents": [
        "6745d6f39d2642908035c7e4a6481f5349c767a7"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Aug 27 00:44:42 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Mon Aug 27 00:44:42 2012 +0000"
      },
      "message": "Some ISO C fixes\n\nThis patch just fixes a limited number of bits not conforming to c99 by using\n - __asm__ instead of just asm\n - {0} instead of {} for struct initialization\n - h_addr_list[0] instead of h_addr to access the host address in\n   struct hostent\n - #include \u003cstrings.h\u003e where needed (for ffs and strcasecmp)\n\nBased on a previous patch by Carl-Daniel.\n\nCorresponding to flashrom svn r1585.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "61b4cfa29f218975dbaa4fbc3ae61318336a8725",
      "tree": "791e559595e9c513c96d00e6c05aa5a8f7db27d4",
      "parents": [
        "5a7cb847f096dacb0bf96b3aa909f79d76ae8204"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Aug 25 02:07:20 2012 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sat Aug 25 02:07:20 2012 +0000"
      },
      "message": "Clean up satasii.c\n\nCorresponding to flashrom svn r1580.\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": "d6bb828b017eaf89d5a4c52803ebc0029725383b",
      "tree": "722abce67e8d8864158ec9261405461a28e313b0",
      "parents": [
        "0b9af36772b655f4de118ddb296207b6ca49cb58"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 21 17:27:08 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 21 17:27:08 2012 +0000"
      },
      "message": "Automatically release I/O permissions on shutdown\n\nGet_io_perms() is renamed to rget_io_perms() and automatically registers\na function to release I/O permissions on shutdown.\n\nActually release I/O permissions on Solaris and iopl()-supporting\noperating systems like Linux.\n\nThis patch fixes quite a few programmers which forgot to release I/O\npermissions on shutdown, and it simplifies the shutdown and error\nhandling code for all others.\n\nDo not call exit(1) if I/O permissions are denied and return an error\ninstead. This part of the patch was written by Niklas Söderlund.\n\nCorresponding to flashrom svn r1551.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nSigned-off-by: Niklas Söderlund \u003cniso@kth.se\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "32508eb304428551cff40b291d44823aafec7574",
      "tree": "0641d77a791290f6842fd60446e87871f6867651",
      "parents": [
        "3834c2d7e5a08e09e580be0dc7f9369c941b2a70"
      ],
      "author": {
        "name": "Patrick Georgi",
        "email": "patrick.georgi@secunet.com",
        "time": "Fri Jul 20 20:35:14 2012 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Fri Jul 20 20:35:14 2012 +0000"
      },
      "message": "Hide hwaccess.h from public API\n\nMove hwaccess.h #include from flash.h to individual drivers.\nlibflashrom users need flash.h, but they do not care about hwaccess.h\nand should not see its definitions because they may conflict with\nother hardware access functions and #defines used by the libflashrom\nuser.\n\nCorresponding to flashrom svn r1549.\n\nSigned-off-by: Patrick Georgi \u003cpatrick.georgi@secunet.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "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": "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": "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": "40446eef1b52599a14b19552f5843302f38c1212",
      "tree": "381d046fea47f794966eae15695917e0f19c0eba",
      "parents": [
        "c6f71462c90cce60ad9e94d865865acbb12b75bd"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 07 01:08:09 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Mar 07 01:08:09 2011 +0000"
      },
      "message": "Remove vendorid parameter from pcidev_init()\n\nSimplify pcidev_init by killing the vendorid parameter which was pretty\nuseless anyway since it was present in the pcidevs parameter as well.\n\nThis also allows us to handle multiple programmers with different vendor\nIDs in the same driver.\n\nFix compilation of flashrom with only the nicrealtek driver.\n\nCorresponding to flashrom svn r1274.\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": "9017cecd10e7f756899ff0be13a89c79a53d9ec8",
      "tree": "63686313b86eaee01d93c65599e92ac30d1f2e30",
      "parents": [
        "004f4b7954aebedff506119a12a752be9e4e9334"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Sep 04 23:37:40 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Sep 04 23:37:40 2010 +0000"
      },
      "message": "Various status updates\n\nSuccess report for Atmel AT26DF081A from \nOliver Schnatz \u003coliver.schnatz@mysys.de\u003e \nhttp://www.flashrom.org/pipermail/flashrom/2009-October/000760.html.\n\nSuccess report for Winbond W25Q32 from\nDavid Hendricks \u003cdhendrix@google.com\u003e\nhttp://www.flashrom.org/pipermail/flashrom/2010-April/002891.html\n\nSuccess report for SST SST39VF512 from\nAlec Wright \u003calecjw@member.fsf.org\u003e\nhttp://www.flashrom.org/pipermail/flashrom/2010-August/004549.html\nhttp://www.flashrom.org/pipermail/flashrom/2010-August/004548.html\n\nSuccess report for Silicon Image SiI 3512 and AMD Am29LV040B from\nMichael Manulis \u003cmichael@manulis.com\u003e\nhttp://www.flashrom.org/pipermail/flashrom/2010-July/003944.html\n\nAnnotate listing with reporter/owner name for boards marked broken, flag\nboards for which no reports exist.\n- Abit IS-10\n- ASRock K7VT4A+\n- ASUS MEW-AM\n- ASUS MEW-VM\n- ASUS P3B-F\n- ASUS P5BV-M\n- Biostar M6TBA\n- Boser HS-6637\n- DFI 855GME-MGF\n- FIC VA-502\n- MSI MS-6178\n- MSI MS-7260\n- Soyo SY-5VD\n- Sun Fire x4150\n- Sun Fire x4200\n- Sun Fire x4540\n- Sun Fire x4600\n\nRemove comments which are no longer appropriate:\n- ASRock K8S8X\n\nCorresponding to flashrom svn r1152.\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": "c2521ab610e6a53ea4fabf73798e16c28d531291",
      "tree": "2917e5161429cec30635a76203f585c8d92a043f",
      "parents": [
        "12a58b2b0b60b466d449a92074cc23d82af6325d"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Jul 29 22:39:47 2010 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Thu Jul 29 22:39:47 2010 +0000"
      },
      "message": "Mark the following chips/boards/PCI-cards as OK\n\nChips:\n\n - Winbond W25x80 (reported by Michael Cole \u003cmichaelcole@michaelcole.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-July/004176.html\n\n - Winbond W25Q80 (reported by Jonathan A. Kollasch \u003cjakllsch@kollasch.net\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-July/003847.html\n\n - SST SST25VF080B (reported by Mattias Mattsson \u003cvitplister@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-July/003807.html\n\n   Also reported by Daniel Flinkmann \u003cdflinkmann@gmx.de\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003659.html\n\n - Winbond W25x16 (reported by Michael Dunphy \u003cmdunphy@uwaterloo.ca\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003631.html\n\n - Atmel AT25DF321 (reported by\n   Ramakrishna Kvv \u003cRamakrishna.Koduri@emerson.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003529.html\n\n - Winbond W25x40 (reported by Prakash J Kokkatt \u003cpjkonweb@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003502.html\n\n - Winbond W49V002A (reported by David \u003cdung@aon.at\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003375.html\n\n - Macronix MX25L8005 (reported by Peter Lemenkov \u003clemenkov@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003373.html\n\n   Also reported by Alec Wright \u003calecjw@member.fsf.org\u003e.\n   http://www.flashrom.org/pipermail/flashrom/2010-July/004186.html\n   http://www.flashrom.org/pipermail/flashrom/2010-July/004159.html\n\n   Also reported by Jörg Fischer \u003cturboj@gmx.de\u003e.\n   http://www.flashrom.org/pipermail/flashrom/2010-July/004080.html\n\n   Also reported by Kevin Malec \u003ckevin.010@gmail.com\u003e.\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003698.html\n\n   Heck, also reported by myself (tested on hardware, never sent mail).\n\n - SST SST49LF002A/B (reported by Udu Ogah \u003cputlinuxonit@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-July/004184.html\n\n - SST SST49LF160C (reported by Ed Swierk \u003ceswierk@aristanetworks.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003634.html\n\nMark the following boards as supported:\n\n - ASUS M3A76-CM (reported by Kevin Malec \u003ckevin.010@gmail.com\u003e)\n   http://www.flashrom.org/pipermail/flashrom/2010-June/003698.html\n\nMark the following PCI cards as supported:\n\n - \"Silicon Image SiI 3124 PCI-X SATA Ctrl\" (1095:3124)\n   Reported by Max Kalashnikov \u003cmmt@maxkalashnikov.com\u003e\n   http://www.flashrom.org/pipermail/flashrom/2010-July/004007.html\n\nCorresponding to flashrom svn r1126.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "5b997c3ed66ddbbb9470f27d4e27ab4c263bc9cf",
      "tree": "adbaace5de6bb0d97a58143c7e3ae775a15d47ff",
      "parents": [
        "1d3a2fefbc636fb569bd1d018fb97b1b17c08e99"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 27 22:41:39 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 27 22:41:39 2010 +0000"
      },
      "message": "Split off programmer.h from flash.h\n\nProgrammer specific functions are of absolutely no interest to any file\nexcept those dealing with programmer specific actions (special SPI\ncommands and the generic core).\n\nThe new header structure is as follows (and yes, improvements are\npossible):\nflashchips.h  flash chip IDs\nchipdrivers.h  chip-specific read/write/... functions\nflash.h  common header for all stuff that doesn\u0027t fit elsewhere\nhwaccess.h hardware access functions\nprogrammer.h  programmer specific functions\ncoreboot_tables.h  header from coreboot, internal programmer only\nspi.h SPI command definitions\n\nCorresponding to flashrom svn r1112.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "1d3a2fefbc636fb569bd1d018fb97b1b17c08e99",
      "tree": "a384be3a9c9c890870117baf435a0312ecfd4a78",
      "parents": [
        "695fb5d0ac60c399fac4bac8595bfb8a0efdb30f"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 27 22:03:46 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 27 22:03:46 2010 +0000"
      },
      "message": "Convert MMIO accesses of non-internal PCI-based programmers to be endian-agnostic\n\nConvert all PCI-based external programmers to use special little-endian\naccessors for all MMIO regions of PCI devices. This patch does _not_\ntouch the internal programmer (which is PCI-based as well).\n\nHuge thanks go to Misha Manulis who worked with me to create a first\nversion of this patch for the satasii programmer based on modification\nof generic code.\n\nHuge thanks also go to Segher Boessenkool for suggesting the pci_mmio_\nprefix for the abstraction layer.\n\nNOTE to package maintainers: With this patch, compilation and usage of\nflashrom should be safe on x86, x86_64, MIPS (little and big endian) and\nPowerPC (big endian).\n\nThe internal programmer is disabled on non-x86/x86_64 (but it\ncompiles). The atahpt, nic3com, nicnatsemi, nicrealtek and rayer_spi\ncan not be compiled on non-x86/x86_64 because port space I/O is\nnot (yet) supported. Please compile with default settings on\nx86/x86_64 and with the following settings on all other architectures:\nmake CONFIG_NIC3COM\u003dno CONFIG_NICREALTEK\u003dno CONFIG_NICNATSEMI\u003dno\nCONFIG_RAYER_SPI\u003dno\n\nCorresponding to flashrom svn r1111.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Misha Manulis \u003cmisha@manulis.com\u003e\n"
    },
    {
      "commit": "744132af4b9f629716394f9c22f6add71cc73ef9",
      "tree": "46de6c5dc108fc2868603fdc606e7328a83f1703",
      "parents": [
        "d1be52d545329debd2128c1aa8685b31dfaa0a0e"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 06 09:55:48 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Tue Jul 06 09:55:48 2010 +0000"
      },
      "message": "Various places in the flashrom source feature custom parameter extraction from programmer_param\n\nThis led to wildly differing syntax for programmer parameters, and\nit also voids pretty much every assumption you could make about\nprogrammer_param. The latter is a problem for libflashrom.\n\nUse extract_param everywhere, clean up related code and make it more\nfoolproof. Add two instances of exit(1) where we have no option to\nreturn an error. Remove six instances of exit(1) where returning an\nerror was possible.\n\nWARNING: This changes programmer parameter syntax for a few programmers!\n\nCorresponding to flashrom svn r1070.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "ad3cc55e139b2e239325815464fe5f7d828aa794",
      "tree": "46568cf766d19740418be5ca8eaa494c7e69cc36",
      "parents": [
        "b63b067ae22803689592db482611093b33a29eef"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 03 11:02:10 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sat Jul 03 11:02:10 2010 +0000"
      },
      "message": "Kill global variables, constants and functions if local scope suffices\n\nConstify variables where possible.\nInitialize programmer-related variables explicitly in programmer_init to\nallow running programmer_init from a clean state after\nprogrammer_shutdown.\nProhibit registering programmer shutdown functions before init or after\nshutdown.\nKill some dead code.\nRename global variables with namespace-polluting names.\nUse a previously unused locking helper function in sst49lfxxxc.c.\n\nThis is needed for libflashrom.\n\nEffects on the binary size of flashrom are minimal (300 bytes\nshrinkage), but the data section shrinks by 4384 bytes, and that\u0027s a\ngood thing if flashrom is operating in constrained envionments.\n\nCorresponding to flashrom svn r1068.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\n"
    },
    {
      "commit": "831e8f4abb29f1ff66ebb8ab5ff496050ff677f7",
      "tree": "8d19ef4871587dcaf0a3a1dec562dd6ef09024b6",
      "parents": [
        "4178760241c3b3dc46a806ee3621a2eb97f4cca5"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 30 22:24:40 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun May 30 22:24:40 2010 +0000"
      },
      "message": "Remove unneeded #include statements completely\n\nUnistd.h was only used to get a definition of NULL in all files. Add our\nown NULL #define and remove unistd.h from flash.h\nstdio.h has no place in flash.h, it should be included only in files\nwhich really need it.\nAdd #include statements in individual .c files where needed.\n\nReplace a few printf with msg_* to eliminate the need for stdio.h.\n\nCorresponding to flashrom svn r1021.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "844863933d12ec9b9b51de440313f014a81dafbf",
      "tree": "0f6aa87fa00e980b781677209816fe0b8a9198b6",
      "parents": [
        "01f6d7d15d27ec07b86ebd0e5c34007dba3fb4c7"
      ],
      "author": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Wed Feb 24 00:04:40 2010 +0000"
      },
      "committer": {
        "name": "Michael Karcher",
        "email": "flashrom@mkarcher.dialup.fu-berlin.de",
        "time": "Wed Feb 24 00:04:40 2010 +0000"
      },
      "message": "Replace PCI_OK/PCI_NT by OK/NT\n\nWe don\u0027t need to duplicate OK and NT as PCI_OK and PCI_NT if the symbols\nare already there (defined for the chipset enable table).\n\nCorresponding to flashrom svn r911.\n\nSigned-off-by: Michael Karcher \u003cflashrom@mkarcher.dialup.fu-berlin.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "05ce54204f97c37ac1714427827eebddc455e096",
      "tree": "dceb1e813e38850fd26497cc23e7ee176ef92af8",
      "parents": [
        "ebb4f5fc4ae402b2135cf60fd7e37447c8695be3"
      ],
      "author": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Jan 09 23:50:27 2010 +0000"
      },
      "committer": {
        "name": "Sean Nelson",
        "email": "audiohacked@gmail.com",
        "time": "Sat Jan 09 23:50:27 2010 +0000"
      },
      "message": "Convert all messages in satasii.c to the new message infrastructure\n\nCorresponding to flashrom svn r849.\n\nSigned-off-by: Sean Nelson \u003caudiohacked@gmail.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    },
    {
      "commit": "b0912c0adbe3d46bc49babe8c22388da7230d473",
      "tree": "6329f60d35e478942631b8f210b288e67dd96926",
      "parents": [
        "04aa59a8645510f212fc6a270b48a883f3d00fa5"
      ],
      "author": {
        "name": "TURBO J",
        "email": "turboj@gmx.de",
        "time": "Wed Sep 02 23:00:46 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed Sep 02 23:00:46 2009 +0000"
      },
      "message": "Add support for parallel flash on Dr. Kaiser PC-Waechter PCI devices\n\nThe vendor sold different designs under that name, the patch works with\nthe one that has an Actel FPGA as PCI-to-Flash bridge.\n\nThe Flash chip is a \"Macronix MX29F001B\" (128 KB, parallel) soldered\ndirectly to the PCB.\nFlash operations (PROBE, READ, ERASE, WRITE) work as expected.\n\nCorresponding to flashrom svn r712.\n\nSigned-off-by: TURBO J \u003cturboj@gmx.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "ef58a9ce3f9ae3ce0db34861f0c2d24373712138",
      "tree": "07d03ad8b91541f09b13ac709ef85e93cbc339ca",
      "parents": [
        "415e513d90042b91c1a50a9afe1282e393e574b8"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Aug 12 13:32:56 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Aug 12 13:32:56 2009 +0000"
      },
      "message": "Use a common parameter variable for all programmers\n\nThis allows us to reduce #ifdef clauses a lot if we compile out some\nprogrammers completely.\n\nCorresponding to flashrom svn r679.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nAcked-by: Stefan Reinauer \u003cstepan@coresystems.de\u003e\n"
    },
    {
      "commit": "db41c59e3ba625659e397675384b08b4ec967fe6",
      "tree": "f46b32f2d22db4fcbec9f2d33a3566f71e7dbb07",
      "parents": [
        "be726817f770572f4d950c7e572c308112a69e3b"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Aug 09 21:50:24 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Sun Aug 09 21:50:24 2009 +0000"
      },
      "message": "Releasing IO permissions was done by hand everywhere\n\nUse a proper abstraction. Kill unneeded #include statements.\n\nCorresponding to flashrom svn r672.\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": "a8b3727a1e68e6579498f1ad25baa02bd7c5c2bf",
      "tree": "32360db687534ad972e7dc004ac277b4fc39805b",
      "parents": [
        "95b67f7ad54a7280ac9af6e8c839b373bbcd5503"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Fri Jun 19 15:54:39 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Fri Jun 19 15:54:39 2009 +0000"
      },
      "message": "Add support for the AMD Am29F010A/B chips\n\nAlso, add support for the Silicon Image 3112(A) SATA controller.\n\nBoth have been tested by Andrew Morgan \u003cziltro@ziltro.com\u003e on hardware\nand work fine.\n\nCorresponding to flashrom svn r613.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Andrew Morgan \u003cziltro@ziltro.com\u003e\n"
    },
    {
      "commit": "b22918cadc5ba07c037935644f8c6dcef0583e23",
      "tree": "c2fd7bff346e61d3433a0c0e2fe66b7173e482de",
      "parents": [
        "3504b539bfa33693510d83402a344b1eafd7a592"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 01 02:08:58 2009 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jun 01 02:08:58 2009 +0000"
      },
      "message": "Only probe for chips with compatible bus protocols\n\nIt doesn\u0027t make sense to probe for SPI chips on a LPC host, nor does it\nmake sense to probe for LPC chips on a Parallel host.\n\nThis change is backwards compatible, but adding host protocol info to\nchipset init functions will speed up probing.\n\nOnce all chipset init functions are updated and the Winbond W29EE011 and\nAMIC A49LF040A chip definitions are updated, the W29EE011 workaround can\nbe deleted as the W29/A49 conflict magically disappears.\n\nCorresponding to flashrom svn r560.\n\nSigned-off-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\nTested on real hardware and\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "211fa97ce8c3cf9c527fbf2d004f9f98420f8a60",
      "tree": "a7ff2b396b165ad4e221155a51bf16d54876d8dd",
      "parents": [
        "b8afecd0f5b87d319e5be385d670bb6bf368d7f8"
      ],
      "author": {
        "name": "Urja Rannikko",
        "email": "urjaman@gmail.com",
        "time": "Sun May 31 21:35:10 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun May 31 21:35:10 2009 +0000"
      },
      "message": "Fix warning in satasii.c when compiling with gcc 4.4.0\n\nCorresponding to flashrom svn r558.\n\nSigned-off-by: Urja Rannikko \u003curjaman@gmail.com\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "e8ba538d034fb50549bb838b6446d8c1fad8379f",
      "tree": "47f8b213464e6d7b60bb9a0187d12b291c5de684",
      "parents": [
        "690bcbaf7f310c49a8c7ba9300d454f1dbc044ce"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Fri May 22 11:37:27 2009 +0000"
      },
      "committer": {
        "name": "Patrick Georgi",
        "email": "pgeorgi@google.com",
        "time": "Fri May 22 11:37:27 2009 +0000"
      },
      "message": "A bunch of output beautifications and improvements, as well as doc fixes\n\n - Update manpage, we now report supported boards via -L.\n \n - Add some missing escaping for \u0027-\u0027 characters in the manpage.\n\nCorresponding to flashrom svn r543.\n\n - Shorten some of the really long device names, so that -L output looks\n   nicer.\n   \n - Display a \"table header\" for all entries/columns in -L output.\n \n - Make -L output tabular for all lists for better readability.\n \n - Do not print \"unknown XXXX SPI chip\" entries in -L output.\n \n - And random other cosmetics...\n \nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Patrick Georgi \u003cpatrick.georgi@coresystems.de\u003e\n"
    },
    {
      "commit": "b2f7a2f30922a9ecd909fa4715ed534c10f6fead",
      "tree": "032ffb57f22269f2d8fc7371804d7795d0d866ac",
      "parents": [
        "cdde6da8e58bbc4087df71b8c8230e02c38c8b9c"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed May 20 17:09:43 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Wed May 20 17:09:43 2009 +0000"
      },
      "message": "The Silicon Image PCI0680 has bit 26 marked as reserved, so don\u0027t use it\n\nCorresponding to flashrom svn r537.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "cdde6da8e58bbc4087df71b8c8230e02c38c8b9c",
      "tree": "8e0bf8234f7f44d0ef18d5b76984d05674384e88",
      "parents": [
        "c7e8a0ce1e2c5c08a43060ead373aebe62e68afe"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Tue May 19 21:03:31 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Tue May 19 21:03:31 2009 +0000"
      },
      "message": "Mark the Silicon Image PCI0680 Ultra ATA-133 controller as working\n\nI tested identify, read, write, erase, verify successfully, HOWEVER,\nthis will only work (at least on my card) after de-soldering the\nsoldered-on PLCC32 one-time programmable (OTP) chip (Holtek HT27C010)\nand soldering on a (re-)programmable flash ROM chip or a socket.\n\nExample:\n\nhttp://www.coreboot.org/File:Sii_controller1.jpg\nhttp://www.coreboot.org/File:Sii_controller2.jpg\n\nThe OTP chip which came on my card does not react to the standard JEDEC\nidentify/read/write/erase commands anymore, so if all other such PCI0680\ncontrollers which are around also have the same OTP chip (that\u0027s not\nnecessarily the case), they cannot be used as \"external programmer\" in\nflashrom without the above mentioned modifications.\n\nCorresponding to flashrom svn r536.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "c6915939d962b4414b1890f6049f7fa19e1602eb",
      "tree": "046978a97e7de417a0abdc4286552a01ccb68760",
      "parents": [
        "3def09d401e2282a6296639fdf935fb0a7790b7a"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun May 17 23:12:17 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun May 17 23:12:17 2009 +0000"
      },
      "message": "Factor out fallback_map/unmap, most external programmers don\u0027t need and special handling here\n\nCorresponding to flashrom svn r531.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "3def09d401e2282a6296639fdf935fb0a7790b7a",
      "tree": "21980f58cc591de96a93115a999351d16bf518d0",
      "parents": [
        "eaefb48ee5137db9c508acbb8b5a59c6f8fa1a94"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun May 17 22:58:41 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun May 17 22:58:41 2009 +0000"
      },
      "message": "Rename sata_sii.c to satasii.c for consistency\n\nCorresponding to flashrom svn r530.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "eaefb48ee5137db9c508acbb8b5a59c6f8fa1a94",
      "tree": "07041ee05a931c6a5fda882d9ac44632e94663ea",
      "parents": [
        "525339c32b6ec965117442bcc188b3261fb006ff"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun May 17 22:57:34 2009 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun May 17 22:57:34 2009 +0000"
      },
      "message": "Various smaller flashrom improvements\n\n - Document new \u0027satasii\u0027 programmer in -L output and manpage.\n\n - Drop PCI_IO_BASE_ADDRESS, pci.h has such #defines already.\n\n - Beautify flashrom output and make it more consistent.\n \n - Same for the \u0027make\u0027 output (reordered some $CC parameters).\n   Build-tested on i386, shouldn\u0027t break any builds, I think.\n\n - Some variable renaming and other cosmetic fixes.\n\nCorresponding to flashrom svn r529.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    },
    {
      "commit": "525339c32b6ec965117442bcc188b3261fb006ff",
      "tree": "3ffd75d7967e1fe9523d5ce33fd68af543c16ee5",
      "parents": [
        "68720c7bed9294907dfc49c6f40b692947b52299"
      ],
      "author": {
        "name": "Rudolf Marek",
        "email": "r.marek@assembler.cz",
        "time": "Sun May 17 19:46:43 2009 +0000"
      },
      "committer": {
        "name": "Rudolf Marek",
        "email": "r.marek@assembler.cz",
        "time": "Sun May 17 19:46:43 2009 +0000"
      },
      "message": "This patch adds support for BIOS flashing on the all SiliconImage SATA controllers\n\nIt was easy because\n\n1) flashrom has now nice API 2) documentation is public on the web site\n\nDon\u0027t forget to add a files. Because I do.\n\nCorresponding to flashrom svn r528.\n\nSigned-off-by: Rudolf Marek \u003cr.marek@assembler.cz\u003e\nAcked-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\n"
    }
  ]
}
