)]}'
{
  "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": "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": "51264d5def2188624a3354c62722a95e64224645",
      "tree": "f8b01a56582b453253d7a7b09b26cedd61bbe96f",
      "parents": [
        "121a5b8d63008db1d179ab69fc1c6b39e03d575c"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Tue Sep 21 10:00:14 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "remove compile guards\n\nThe build system handles the decision when to build a file.\nExtra compile guards for the source files are not necessary.\n\nChange-Id: I76a76e05c7a7dd27637325ab1e9d8946fd5f9076\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/57797\nOriginal-Reviewed-by:  Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72260\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "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": "0ccec8f21228fab9e5e57c9392f6feafbf296ef1",
      "tree": "acd2e0d426a3ec0b7829df72f6a0cbb8a9c232e2",
      "parents": [
        "72d42f87a9a01a1d27fba593ce4569331e079cbe"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 23:49:03 2014 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Sun Jun 01 23:49:03 2014 +0000"
      },
      "message": "Move global io_base_addr into compilation units\n\nCorresponding to flashrom svn r1813.\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": "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": "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": "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": "e34e3e8a49172ba09eb058c9a028706647dca165",
      "tree": "6aec75d2f7b08469e9b95a8844ba3ad9180c6b04",
      "parents": [
        "bcb2e5a7080cbe0ff21c8ffa5f77b5ba1ea0c472"
      ],
      "author": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jan 01 00:06:51 2013 +0000"
      },
      "committer": {
        "name": "Stefan Tauner",
        "email": "stefan.tauner@alumni.tuwien.ac.at",
        "time": "Tue Jan 01 00:06:51 2013 +0000"
      },
      "message": "Add a bunch of new/tested stuff and various small changes 16\n\nTested Mainboards:\nOK:\n - Acer V75-M (used in IBM Aptiva 2170-G\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010300.html\n - ASRock 4CoreDual-VSTA with W39V040FB\n   http://paste.flashrom.org/view.php?id\u003d1446\n - ASRock 775Dual-VSTA\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010294.html\n - ASRock E350M1/USB3\n   http://paste.flashrom.org/view.php?id\u003d1465\n - ASUS P5B-VM\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010351.html\n - ASUS SABERTOOTH 990FX R2.0\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010210.html\n - Elitegroup A928 (including a laptop whitelist board enable)\n   http://www.flashrom.org/pipermail/flashrom/2012-November/010119.html\n - EVGA 122-CK-NF68\n   Reported by Stephanie Daugherty on IRC\n   http://paste.flashrom.org/view.php?id\u003d1431\n - GIGABYTE GA-A75M-UD2H\n   Reported by Soul_keeper on IRC\n   http://paste.flashrom.org/view.php?id\u003d1490\n - Intel D945GCNL\n   Add board enable to override laptop detection too.\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010276.html\n - MSI G33M (MS-7357)\n   http://www.flashrom.org/pipermail/flashrom/2012-October/010056.html\n - Shuttle FB61\n   http://www.flashrom.org/pipermail/flashrom/2012-November/010105.html\n - Tyan S4882 (Thunder K8QS Pro)\n   Reported on IRC\nNOT OK:\n   Alienware Aurora-R2\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010225.html\n   Biostar H61MU3\n   http://www.flashrom.org/pipermail/flashrom/2012-November/010144.html\n   Dell OptiPlex 7010\n   http://paste.flashrom.org/view.php?id\u003d1481\n   Intel DH67CL\n   http://www.flashrom.org/pipermail/flashrom/2012-November/010112.html\n   Supermicro X9DRT-HF+\n   http://www.flashrom.org/pipermail/flashrom/2012-November/010155.html\n   Supermicro X9DRW\n   http://www.flashrom.org/pipermail/flashrom/2012-November/010150.html\n\nTested flash chips:\n - Atmel AT25FS010 to PREW (+PREW)\n   http://paste.flashrom.org/view.php?id\u003d1484\n - Eon EN25F64 to PREW (+EW)\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010210.html\n - Spansion S25FL032A/P to PREW (+EW)\n   http://paste.flashrom.org/view.php?id\u003d1510\n - ST M29F002T/NT to PREW (+PREW)\n   http://www.flashrom.org/pipermail/flashrom/2012-December/010300.html\n - Winbond W25X10 to PREW (+PREW)\n   http://paste.flashrom.org/view.php?id\u003d1486\n\nTested chipsets:\n - NVIDIA MCP78S http://www.flashrom.org/pipermail/flashrom/2012-November/010176.html\n - SiS 650 http://www.flashrom.org/pipermail/flashrom/2012-November/010119.html\n\nMiscellaneous:\n- Typo in GA-X58A-UDR3 (correct is GA-X58A-UD3R).\n- Force 2-digit hex numbers in prints were it makes sense.\n- Share code between enable_flash_sis530() and enable_flash_sis540().\n- Some SST 25 series chips support both WRSR enable commands...\n- S25FL032A and S25FL064A share the IDs with their P versions, so rename them.\n- Fix a few memleaks in serprog.\n- Dediprog uses UINT_MAX so include limits.h (fixes the Windows build of dediprog)\n- Add (another) hint regarding the mandatory -p parameter to the manpage\n  to make Debian bug #690478 happy.\n  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug\u003d690478\n- Fix whitespace issues.\n- On shutdown, reset count of registered programmers (by Nico Huber)\n- Fix atahpt.c shutdown.\n  The order of pcidev_init, register_shutdown and rpci_write_* is important!\n  Thanks to Roy for reporting the problem and testing the fix.\n\nCorresponding to flashrom svn r1640.\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": "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": "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": "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": "a07438302eac1eb8eb6831366d2e36dd14489f4b",
      "tree": "a099eaaf6f37612952110f627ad51d5fc5a1f38f",
      "parents": [
        "941a273c6956e2ec435c14126e064d7805629349"
      ],
      "author": {
        "name": "Andrew Morgan",
        "email": "ziltro@ziltro.com",
        "time": "Mon Jul 25 22:07:05 2011 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Mon Jul 25 22:07:05 2011 +0000"
      },
      "message": "Enforce compile-time errors in satamv and atahp for non-x86 targets\n\nSatamv and atahpt require PCI port I/O which isn\u0027t currently supported\non any architecture except x86/x86_64. Generate the same compiler error\nas other programmer drivers.\n\nCorresponding to flashrom svn r1388.\n\nSigned-off-by: Andrew Morgan \u003cziltro@ziltro.com\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\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": "2bee8cf898007687c58ddb29eb119b461704f18a",
      "tree": "b219ae51fc082062a2a0dd28a5a65c4559bc166e",
      "parents": [
        "caf2d42d9a9654477bcbb27e2e3c5a8ab5fe7971"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Nov 10 15:25:18 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Nov 10 15:25:18 2010 +0000"
      },
      "message": "Revert PCI config space writes on shutdown\n\nThis means all chipset enables etc. will be undone on shutdown.\nReversible PCI config space writes now use rpci_write_*().\nPCI config space writes which are one-shot (e.g. communication via\nconfig space) should continue to use the permanent pci_write_*\nvariants.\n\nExtend the number of available register_shutdown slots to 32.\n\nCorresponding to flashrom svn r1232.\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": "a73fb4983df7284e3d0e0a3fa79aa197bed324db",
      "tree": "bb46efa05f3782f03b7aeaab68eac36af5344d31",
      "parents": [
        "f992c19fcaba3567fb11767ad0b9aaf22459abc2"
      ],
      "author": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 06 23:48:34 2010 +0000"
      },
      "committer": {
        "name": "Carl-Daniel Hailfinger",
        "email": "c-d.hailfinger.devel.2006@gmx.net",
        "time": "Wed Oct 06 23:48:34 2010 +0000"
      },
      "message": "Refine -L output to include all programmer modules\n\nFlashrom -L output did not contain a list of programmers nor were\nall programmers listed. Fix it and mention at least the name of each\nprogrammer. Wiki output is unchanged, and will need separate fixups.\n\nCorresponding to flashrom svn r1199.\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": "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": "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": "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": "ddd5c9e147e99430ed031cbf20380d745850c046",
      "tree": "523c9d402056eebfa075643e8cce2ca2853ca32c",
      "parents": [
        "6e0b912f469a5595c138b3f7ddad77d691330e2f"
      ],
      "author": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Feb 21 21:17:00 2010 +0000"
      },
      "committer": {
        "name": "Uwe Hermann",
        "email": "uwe@hermann-uwe.de",
        "time": "Sun Feb 21 21:17:00 2010 +0000"
      },
      "message": "Add initial (non-working) code for Highpoint ATA/RAID controllers\n\nIt\u0027s disabled by default. The current status is detailed at:\nhttp://www.flashrom.org/pipermail/flashrom/2010-January/001828.html\n\nCorresponding to flashrom svn r908.\n\nSigned-off-by: Uwe Hermann \u003cuwe@hermann-uwe.de\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n"
    }
  ]
}
