)]}'
{
  "log": [
    {
      "commit": "c3b02dce51aad2766512d1939a1b7447c2d526b8",
      "tree": "58069f464bb8a777ef06e93767813a4c5a042cb0",
      "parents": [
        "a02df33fbf1c196395a61049e60895d4ae0e0a5b"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Aug 12 01:13:45 2023 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Sep 18 19:24:39 2023 +0000"
      },
      "message": "Rebrand to flashprog and update URLs\n\nMostly automated `sed` work. As of now, URLs to the old wiki are broken\neither way, so changing them shouldn\u0027t hurt. Other URLs (e.g. to mailing\nlist archives) were hopefully filtered correctly.\n\nChange-Id: I9d43bfd0e675eff2fcbad05f304b9ce9f5006b08\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashrom-stable/+/21\n"
    },
    {
      "commit": "a02df33fbf1c196395a61049e60895d4ae0e0a5b",
      "tree": "74b57107a33e26ea4989deab69b9ee1d2a4b71e7",
      "parents": [
        "d96e70348ee5cad2eefe7a319a7eb14f65ce2150"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jan 14 23:06:27 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu May 18 14:51:17 2023 +0000"
      },
      "message": "flashrom.c: Use a simpler for-loop in init_eraseblock()\n\nChange-Id: I3b0b51a48e9de8522e0d39c2781e980405af84ba\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72554\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "d96e70348ee5cad2eefe7a319a7eb14f65ce2150",
      "tree": "5aa86db61a7f06252f3a3748dc55a7a15e2d6c2c",
      "parents": [
        "ad5b71994ef7cdf7ecacd967d27d13b487805607"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jan 14 22:31:48 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu May 18 14:51:17 2023 +0000"
      },
      "message": "flashrom.c: Rewrite calculate_block_count()\n\nThere is not need to do address calculations in calculate_block_count().\nWe only want to return the final count, so only add that up. As a bonus,\nwe only need to pass the eraser and not the whole chip reference.\n\nChange-Id: I0cdfaad85aeda90513268d08da47acbe72ca57e5\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72553\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "c09fca49c925e62271632ac7bf6ad40fe53b5d98",
      "tree": "9b62ce0616858d4f187d12ef4892434c893a8586",
      "parents": [
        "1494f8e35e761d8205ac2260506a7770cf05e8d6"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 15:58:09 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Integrate new erase-function selection\n\nThis requires almost a rewrite of walk_eraseblocks(): Instead of walking\nall blocks for a given function, we walk the presented erase layout.\nHowever, the overall structure stays the same.\n\nwalk_by_layout() now runs the new erase-function selection per region\nto present walk_eraseblocks() the new erase layout.\n\nChange-Id: I2535f211c49d050d21983cadb4df5005fa2e5659\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72562\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "1494f8e35e761d8205ac2260506a7770cf05e8d6",
      "tree": "1bc60efc1c6c2d3191b06deb9eeffd3e5f3c5637",
      "parents": [
        "cf6ff0ab5baac7cfb295d0b393e7476693106b12"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 15:48:00 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Allow to use select_erase_function() for explicit erase\n\nWhen we are explicitly called to erase, we simply select every block\nthat overlaps the given region.\n\nChange-Id: I2085855adb4406fdc6d6e813ea4bd912db13473d\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72561\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "cf6ff0ab5baac7cfb295d0b393e7476693106b12",
      "tree": "8162b3d4bcd813587255c8fa7c444bab2e89b774",
      "parents": [
        "a62124848abcbaffefc747b545c6cf2752d85f00"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 15:45:06 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Allow unaligned erase blocks in select_erase_function()\n\nSimply check if an erase block overlaps the given region.\n\nChange-Id: I06f64dad2cbf7e710d4129aec55496518d7c452e\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72560\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "a62124848abcbaffefc747b545c6cf2752d85f00",
      "tree": "181638ff0ab3ddf3932410e69f2505df8048a533",
      "parents": [
        "b11b72c60d8b7009906ed7b12887771a3b0b3c76"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 15:39:26 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Don\u0027t check for erase outside of selected region\n\nOriginally, select_erase_functions() was intended to be called only\nwith regions that are erase-block aligned. To prepare for unaligned\nregions, we limit the range passed to need_erase() to what should be\nwritten.\n\nChange-Id: Iae38ecbf79bf6fccc0ff6f874056e0c071636f89\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72559\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "b11b72c60d8b7009906ed7b12887771a3b0b3c76",
      "tree": "25409fb6b5826e47647af1e10c9988ba19b61c85",
      "parents": [
        "00d1b9fece5368a9335f8439d6329e5b5bd20ea9"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 15:33:11 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Wrap recursive select_erase_functions()\n\nRename the recursive function to select_erase_functions_rec() and handle\nthe first erase-function level in a separate function.\n\nChange-Id: I2cf0c14eb0038ecb8b457c1b5b0f7d7b8a4bcb55\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72558\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "00d1b9fece5368a9335f8439d6329e5b5bd20ea9",
      "tree": "94631a75784b80a107755695ec8db601c7257d7c",
      "parents": [
        "13f97a500a4935eb8b18ba8f38c69bf5dcd4affc"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 15:07:33 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Refactor parameters of select_erase_functions()\n\nReplace separate parameters with a pointer to the current `walk_info`.\n\nChange-Id: I46890589971183ca91684a8e275112d822780253\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72557\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "13f97a500a4935eb8b18ba8f38c69bf5dcd4affc",
      "tree": "61cb02939794f04f7e1dab903e1f8f88c5a19ccc",
      "parents": [
        "d34864bf82b472370d0d1e5d12da7942c5dc2fe4"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jan 14 23:55:06 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Declare loop index outside of `for`\n\nRight now it\u0027s still needed to compile everywhere (where we test).\n\nChange-Id: Ie303d35c83dbc08e4a1d8686e38c8ee4988a0144\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72556\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "d34864bf82b472370d0d1e5d12da7942c5dc2fe4",
      "tree": "c6bc8865ad7d9ef9df20ef8ff62e42959df4d999",
      "parents": [
        "632131590aa13544515f84822f94eb8f54d78e38"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jan 14 23:47:19 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun May 14 15:20:17 2023 +0000"
      },
      "message": "flashrom.c: Sort initial error checks in create_erase_layout()\n\nWith the original order, we might report the wrong error in case\ncalloc() returns `NULL` for `nmemb \u003d\u003d 0`.\n\nChange-Id: If1330ab1cbde817fb7ef91f7dc6ace219cb6ecbc\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72555\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "d33bea4a0cb0921ba85f69fb6ca1fa27c68dc67b",
      "tree": "f751dd7908b3a17a9def2d66ba496c65f7f4662d",
      "parents": [
        "18cc8d3deb67ddf42ac0cb47e8ab303481b38c17"
      ],
      "author": {
        "name": "Aarya Chaumal",
        "email": "aarya.chaumal@gmail.com",
        "time": "Thu Jul 14 12:51:14 2022 +0530"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Apr 20 21:01:25 2023 +0000"
      },
      "message": "flashrom.c: Add a function to get list of sectors that need erasing\n\nAdd a function that returns a list of sectors (as seen by the first\nerase function) that need erasing.\n\nChange-Id: Ic57ca1cca3d1646543f6b5939ba9c35db8d08256\nSigned-off-by: Aarya Chaumal \u003caarya.chaumal@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72552\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "18cc8d3deb67ddf42ac0cb47e8ab303481b38c17",
      "tree": "f6bb6635687853025a72151369829df1acb1d64b",
      "parents": [
        "05017c10ea859170973cc3163767e70c117ad21a"
      ],
      "author": {
        "name": "Aarya Chaumal",
        "email": "aarya.chaumal@gmail.com",
        "time": "Fri Jul 15 16:51:27 2022 +0530"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Apr 20 21:01:25 2023 +0000"
      },
      "message": "flashrom.c: Add function to get a flattened view of the chip erase blocks\n\nAdd a function to flatten out the addresses of the flash chip as per the\ndifferent erase functions. This function will return a list of layouts\nwhich is dynamically allocated. So after use all the layouts as well as\nthe list itself should be freed. The free_erase_layout function does\nthat.\n\nChange-Id: Iafe78de00daa55f7114bd4ce09465dd88074ece4\nSigned-off-by: Aarya Chaumal \u003caarya.chaumal@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72551\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "5ff6fdc75bdbdbeac9bb43bee7c72bed82dbe059",
      "tree": "3990b4ed4aec9d2df88bb31791cb945aa99181d1",
      "parents": [
        "3b9c86dca807b8940e4af74c42ee911d4c03530e"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 15 23:43:12 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 04 10:12:02 2023 +0000"
      },
      "message": "flashrom.c: Write whole layout regions at once\n\nWe used to write per erase block, right after erasing in case\nwe had to. To ease integration of a new erase-block selection,\nthe write step is postponed now, after all blocks in a region\nthat need erasing are erased.\n\nThis also moves the decision whether to call erase_block() on\na given block to a higher level and prepares for the new erase-\nblock selection algorithm.\n\nChange-Id: I325c4873f9bde8183e9f43239929075ac31b80cc\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72550\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "3b9c86dca807b8940e4af74c42ee911d4c03530e",
      "tree": "ca9870bdd95c42ef2da7027a5fbd19066b938f51",
      "parents": [
        "b8e81051b451a993cb6c21a49b51dad5f096adad"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 15 22:58:06 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 04 10:12:02 2023 +0000"
      },
      "message": "flashrom.c: Extract write loop into new write_range()\n\nerase_block() and write_block() use the same loop logic to decide what\nparts of a range need to be written. Move that into a new function,\nwrite_range().\n\nChange-Id: I13637978c03419ef06fbf3d4e0640c4630c49964\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72549\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "b8e81051b451a993cb6c21a49b51dad5f096adad",
      "tree": "b37dfbfbfcdfa0f3213f85b08e7adf9bda43bc75",
      "parents": [
        "d34af7a7d741c4b71b7d560984058a5f96900597"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 15 22:40:14 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 04 10:12:02 2023 +0000"
      },
      "message": "flashrom.c: Simplify read_erase_write_block()\n\nSince erase_block() learned to handle potentially unaligned regions,\nand read_erase_write_block() uses it internally, we don\u0027t have to\nhandle that inside the latter anymore. This allows a much simpler\nimplementation. Also change the name to write_block().\n\nChange-Id: I46826951d8bd345957368da83f8d4e8b3b6c53b2\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72548\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "d34af7a7d741c4b71b7d560984058a5f96900597",
      "tree": "555984700c27b5975526bdfcb21ba1619190bdab",
      "parents": [
        "3ac761c3c47a6476b8b0f9ce613b32914b163c46"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 15 23:58:18 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 04 10:12:02 2023 +0000"
      },
      "message": "flashrom.c: Drop retry logic for failed erase/write\n\nNow that we check first if an erase function should work with the\ngiven programmer, we can drop the retry logic. This also simplifies\nsurrounding return codes a little.\n\nChange-Id: I6db645dd3496f7c7f97c51aa5e8e088119012261\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72547\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "3ac761c3c47a6476b8b0f9ce613b32914b163c46",
      "tree": "146db2e06439bf76f4c66fd48facb10ec3c0bf79",
      "parents": [
        "b77607f048e5cdfbf8fb1e9ad3b110c9a67e80e0"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Jan 16 02:43:17 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 04 10:12:02 2023 +0000"
      },
      "message": "layout: Verify that regions to be written are granularity aligned\n\nThis will be important with the new erase/write strategy when we don\u0027t\nwrite per erase block anymore.\n\nChange-Id: Ie3c74ff4313c9d72ac92d3226804e0407088c17d\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72546\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "b77607f048e5cdfbf8fb1e9ad3b110c9a67e80e0",
      "tree": "700075b85574ba14e043073866ef3e3946d2a357",
      "parents": [
        "2f75379fa20f5415c70b837001473ff8ba070ab7"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Jan 16 02:25:45 2023 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 04 10:12:02 2023 +0000"
      },
      "message": "flashrom.c: Introduce gran_to_bytes()\n\nChange-Id: Ib41f9581060350f41620e9e377b9bafa58677882\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72545\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "6d98aece44f6f3458c79160adf4dddc7f8500378",
      "tree": "5a2455824ee3f88232328c08512a3480cc9e2bc2",
      "parents": [
        "e7a41e3cec25165b6564b62b6aa64f90bd2dab71"
      ],
      "author": {
        "name": "Aarya Chaumal",
        "email": "aarya.chaumal@gmail.com",
        "time": "Sun Aug 14 23:16:44 2022 +0530"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 19 13:50:18 2023 +0000"
      },
      "message": "flashrom.c: Update check_block_eraser function to use probe opcode\n\nUpdate the check_block_eraser function to use probe_opcode to see if the\ngiven block_eraser is supported by the spi master. This will help to get\na real count of usable block_erasers.\n\nflashrom-stable: Query `flash-\u003echip-\u003ebustype`.\n\nChange-Id: I6591a84ae1fe5bc1648051cc30b9393450033852\nSigned-off-by: Aarya Chaumal \u003caarya.chaumal@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66717\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72544\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "6edf9f8b8340904f88027e2d7c425b3509dae037",
      "tree": "37a416cffe047f9d57687c1d612f8c4fdc341b9d",
      "parents": [
        "92ae5bbb4c1a7666d0ea36e93194070b402e30f3"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Sat Nov 12 12:08:46 2022 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom.c: Replace \u0027exit(1)\u0027 leaks with return codes on err paths\n\nDo not just exit in the middle of the process, rather return\na value back up to the caller to allow proper resource cleanup\u0027s\nto occur.\n\nflashrom-stable:\n* Dropped change to extract_param() because it can\u0027t return errors\n\nChange-Id: Ie4186a40071e9a7296d601582ff15ad7df09c70a\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/69474\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72365\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "aba3658513da245a61ba59cfab9dba5facdb1054",
      "tree": "5924d8009154e6b59aa2e10a2f66a263fcf2d358",
      "parents": [
        "00ea3898669aa35bb3f208c1d17f34e3a5c50795"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Mon Sep 05 11:09:28 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom.c: Move count_max_decode_exceeding() to cli\n\nThe count_max_decode_exceeding() function is only ever called\nwithin the cli_classic logic so move it there and make it\nstatic. This further cleans up the flashrom.c symbol namespace.\n\nChange-Id: If050eab7db8560676c03d5005a2b391313a0d642\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/68438\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72362\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "00ea3898669aa35bb3f208c1d17f34e3a5c50795",
      "tree": "e29e9590c5be29a0676bb9c099143b2d7f261679",
      "parents": [
        "621208c341cb400b9b13b5874da49504818a9f49"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Tue Oct 11 21:27:37 2022 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom.c: Separate out default layout init\n\nget_default_layout() is undefined without a\ninit_default_layout() so separate out that logic\nfrom probe_flash().\n\nChange-Id: I8fd0af8fb1c32dc9f2b00cc39b518d2f4d98e3ac\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/68296\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/+/72361\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "621208c341cb400b9b13b5874da49504818a9f49",
      "tree": "1a851dd54e96add7fe6e30de98fe3b5e4424a775",
      "parents": [
        "56684d9a2ed8a0f878472d5aa0518a3200526812"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Sep 07 22:21:39 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "drivers/: Make \u0027fallback_{un}map\u0027 the default unless defined\n\nDrop the explicit need to specify the default \u0027fallback_{un}map\u0027\ncallback function pointer from the \u0027programmer_entry\u0027 struct.\nThis is a reasonable default for every other driver in the tree\nwith only a select few exceptions [atavia, serprog, dummyflasher\nand internal].\n\nThus this simplifies driver development and paves way\nto remove the \u0027programmer\u0027 global handle.\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: I5ea7bd68f7ae2cd4af9902ef07255ab6ce0bfdb3\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67404\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72360\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "56684d9a2ed8a0f878472d5aa0518a3200526812",
      "tree": "020c2d8db0e05a74981b5b381c37febd46fb796d",
      "parents": [
        "78ed668a924db5dd78c3530655127f895728fe59"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Sep 07 10:47:45 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "drivers/: Make \u0027internal_delay\u0027 the default unless defined\n\nDrop the explicit need to specify the default \u0027internal_delay\u0027\ncallback function pointer in the programmer_entry struct.\nThis is a reasonable default for every other driver in the\ntree with only the two exceptions of ch341a_spi.c and serprog.c.\n\nThus this simplifies driver development.\n\nflashrom-stable: Updated `dirtyjtag_spi` which was added earlier.\n\nChange-Id: I17460bc2c0aebcbb48c8dfa052b260991525cc49\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67391\nOriginal-Reviewed-by: Peter Marheine \u003cpmarheine@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72359\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "3b64d8107b56dc437cde606e17abaae435d7ba35",
      "tree": "3971e382111e87d2dc6d00e38e4198d78ec46eb7",
      "parents": [
        "23b2b864777a09b4d9a9024675670a7d694c1e06"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Fri Aug 12 13:07:51 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom.c: Move print logic to print.c\n\nThis free\u0027s up flashrom.c from namespace pollution.\n\nChange-Id: I2724f7910fa3e01bcf49b8093260a4f1643df777\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66652\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72351\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "63f6a37984cf361229b433343ea9146c57a87f18",
      "tree": "0ebdaca6bbf8168b6bbb93da3b3be9dcc0336fe3",
      "parents": [
        "ee3fbd7c7c05efbdea2ded8484bcfe96238f0124"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Fri Aug 12 12:56:43 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "parallel.c: Consoldiate parallel master registration logic\n\nThis is analogous to spi.c and opaque.c however parallel\nlogic was previously never consoldiated.\n\nThis free\u0027s up flashrom.c from namespace pollution.\n\nTested: builds with both make and meson.\n\nChange-Id: Ie08e2e6c51ccef5281386bf7e3df439b91573974\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66651\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72349\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "ee3fbd7c7c05efbdea2ded8484bcfe96238f0124",
      "tree": "6a364d738bf3a0881623bdc37e84b4ffa453e11b",
      "parents": [
        "4c76c73e5f1ca1bb33199270714f650ad7bf4c53"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Mon Aug 15 10:53:32 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom.c: Move write_buf_to_file() to helpers_fileio.c\n\nConstructing a written file from a buffer is auxiliary\nfunctionality to the core flashrom algorithms. Move\naside to decrease the overall complexity of flashrom.c\n\nChange-Id: Ib613e74597d4bdd689043ba93aeb6a87ec80cc14\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66646\nOriginal-Reviewed-by: Evan Benn \u003cevanbenn@google.com\u003e\nOriginal-Reviewed-by: Sam McNally \u003csammc@google.com\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72348\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "4c76c73e5f1ca1bb33199270714f650ad7bf4c53",
      "tree": "1b74060951e91a9cbdc7e2b5ea54d0e8684aa577",
      "parents": [
        "7a9daa0bc996b8a676187c6157a35a4d3ab5267e"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Fri Aug 12 11:03:00 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom.c: Move read_buf_from_file() to helpers_fileio.c\n\nConstructing a buffer from a read file is auxiliary\nfunctionality to the core flashrom algorithms. Move\naside to decrease the overall complexity of flashrom.c\n\nChange-Id: Ia6e1eeb876722899defb5b75346d1f22c70bfbd1\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66645\nOriginal-Reviewed-by: Evan Benn \u003cevanbenn@google.com\u003e\nOriginal-Reviewed-by: Sam McNally \u003csammc@google.com\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72347\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "2d17041c5e170b42785e99d2aaedb98abb9bf040",
      "tree": "b60bbb992860f4c8d5bca7ff2c67ebcba2f26647",
      "parents": [
        "f6a273b353355fd3817a00135019fd71e3543683"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Mon Nov 15 15:47:15 2021 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom: Drop read_flash_to_file() usage\n\nAspire towards a goal of making cli_classic more of just\na user of libflashrom than having quasi-parallel paths in\nflashrom.c\n\nThis converts remaining read_flash_to_file() usage to the\ndo_read() provider wrapper around libflashrom.\n\nTested: `\nsudo ./flashrom -p ft2232_spi:type\u003d232H,divisor\u003d1000 -f -r out -c W25X05\nFlashrom output:\n\nNo EEPROM/flash device found.\nForce read (-f -r -c) requested, pretending the chip is there:\nAssuming Winbond flash chip \"W25X05\" (64 kB, SPI) on ft2232_spi.\nPlease note that forced reads most likely contain garbage.\nBlock protection could not be disabled!\nReading flash... done.\nData read:\n\nxxd out-1khz\n00000000: 0000 07ff ffff e000 0000 7fff fffe 0000  ................\n00000010: 0007 ffff ffe0 0000 007f ffff fe00 0000  ................\n00000020: 07ff ffff e000 0000 7fff fffe 0000 0007  ................\n00000030: ffff ffe0 0000 007f ffff fe00 0000 0fff  ................\nxxd out-100khz\n00000000: b6db 6db6 db6d b6db 6db6 db6d b6db 6db6  ..m..m..m..m..m.\n00000010: db6d b6db 6db6 db6d b6db 6db6 db6d b6db  .m..m..m..m..m..\n00000020: 6db6 db6d b6db 6db6 db24 9249 2492 4924  m..m..m..$.I$.I$\n00000030: 9249 2492 4924 9249 2492 4924 9249 2492  .I$.I$.I$.I$.I$.\n`\n\nChange-Id: I4b690b688acf9d5deb46e8642a252a2132ea8c73\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Tested-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/59291\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72336\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "4925d02f2b128d5fa79a00d434fb9298fcb6180a",
      "tree": "758cc12fb72e48e8abf8907ba24455fca41bf17d",
      "parents": [
        "f8d9a272845cd96cf5a33560fe0b4ad54a13bfc3"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Tue Mar 15 12:39:13 2022 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "print_buildinfo: remove unreachable print of libpci version\n\nThe libpci header is neither directly nor indirectly included in\nflashrom.c. `PCILIB_VERSION` is therefore never set and the following\nprint statement is dead code. Since libpci is the only library in\nbuildinfo, Drop it.\n\nChange-Id: I0b5dbf3bd82a2ffe64b73881383e92f7dad4c382\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/62833\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72319\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "98cfa69207c6558fce9b71f8d0510b3130afd67e",
      "tree": "82a951c69051eb9d9491cf4a87dbf0a9de4e3ce0",
      "parents": [
        "306c8b76f7fd6326371b2208f516d5090cdb8370"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Mon Dec 13 12:46:12 2021 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom.c: Move do_*() helpers into cli_classic.c\n\nThese helpers are only used by the CLI logic and so we localise\nthem here to move towards cli_classic being a pure libflashrom\nuser.\n\nChange-Id: If1112155e2421e0178fd73f847cbb80868387433\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/60070\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72290\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "c9824fb3d422a64237c5fa0f8282ada56ecab835",
      "tree": "3691fd28f2604cd19ee5f7b277e622fde8f957f0",
      "parents": [
        "c72d20aa8f6a05dda4e0d0a616cdeccc897736e2"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Dec 29 10:57:12 2021 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "flashrom: Convert do_read() into a libflashrom user\n\nAspire towards a goal of making cli_classic more of just\na user of libflashrom than having quasi-parallel paths in\nflashrom.c\n\nThis converts the do_read() provider wrapper into a pure\nlibflashrom user.\n\nTested: `$ sudo ./flashrom -p internal -r /tmp/bios.bin`\nTested: `$ sudo ./flashrom -p internal -l /tmp/layout -i FOO -r /tmp/foo.bin`\n\nChange-Id: Id2addadb891c482ee3f69da806062d7a88776675\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/60430\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72288\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "c72d20aa8f6a05dda4e0d0a616cdeccc897736e2",
      "tree": "5e2166c061b70a2b6e653e8fd9f5f616295c0513",
      "parents": [
        "83aa6afc09f89d78b27f02d1005847b17128e81e"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Mon Dec 13 12:30:03 2021 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "cli_classic.c: Convert do_erase() to libflashrom call\n\nInline emergency_help_message() to cli_classic call site.\nThis leaves do_erase() a redudant wrapper and moves us a step\ncloser to cli_classic as a pure libflashrom user by using\nflashrom_flash_erase().\n\nTested: `flashrom -E`\n\nChange-Id: I8566164e7dbad69cf478b24208014f10fb99e4d0\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/60068\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72287\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\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": "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": "e0ed4120f70c9642951c74ba6698405fbec75c08",
      "tree": "fad22f015b4c60157d85214aef0eeae99be93b82",
      "parents": [
        "efe96a939e08bad88890531a7961925e03c5196e"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri May 14 00:48:28 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "layout: Rework normalize_romentries() API\n\nRename it to layout_sanity_checks() as that is what it does and\nlet it work on the currently active layout instead of the global\nlayout.\n\nChange-Id: Ifae3480d4bd68c939c291f05734544e93f00306c\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54285\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72221\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "671c0f006770588881ea5162a2bcc79001356fa7",
      "tree": "acba42f4e71562450455acc083c1b3d5fc46ce74",
      "parents": [
        "49258610ebd4cec764c2d01e8fdf713b7067c96a"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 16 20:17:19 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "layout: Drop `count` parameter of flashrom_layout_new()\n\nChange-Id: I22c180c9971068b1ae101845ce88484c6842b852\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/33544\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72218\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "74d09d47dbb0b3c1fbdaf3a052bb02148f24300c",
      "tree": "6f35cd53aca59e5db99e1e2d116f6f8a8e681ce1",
      "parents": [
        "8edcd1509ddabcbfba5c251475663213b7bd0472"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 16 03:27:26 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "Pass layout directly to verify_by_layout()\n\nIt used the current layout from the flash context, before. This made\nit necessary to replace the pointer on-the-fly. Passing the layout\ndirectly, works without that stunt.\n\nChange-Id: Id496deec85c18bdfe968df6a798b626eb9cfbed5\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/33520\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Peter Marheine \u003cpmarheine@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72216\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "5bd990c2ab8ceb263d598a2348d7020ce774784f",
      "tree": "0ee2bdd6b6aa9af15becf68d7afd4142df0bf99c",
      "parents": [
        "92e0b62fc37a6d89975ced41f5ec3c3715404f33"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 16 19:46:46 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "layout: Introduce flashrom_layout_new()\n\nIt initializes an empty layout. Currently the maximum number of entries\nhas to be specified, which will vanish once we use dynamic allocation\nper entry.\n\nWe replace the two special cases `single_layout` and `ich_layout` with\ndynamically allocated layouts. As a result, we have to take care to\nrelease the `default_layout` in a flashctx once we are done with it.\n\nChange-Id: I2ae7246493ff592e631cce924777925c7825e398\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/33543\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72214\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "92e0b62fc37a6d89975ced41f5ec3c3715404f33",
      "tree": "9a9426d80db30846f31b2de2788df143fe75aa2d",
      "parents": [
        "3a97fd5d46fe4d0f6f1be7a99123fd80645fe736"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jun 15 15:55:11 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "layout: Introduce flashrom_layout_add_region()\n\nAdds a region to an existing layout, as long as there is space.\n\nChange-Id: I50d473d0d5d1fb38bd6f9ae3d7127e9ea66a94e1\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/33517\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Peter Marheine \u003cpmarheine@chromium.org\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72213\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "3a97fd5d46fe4d0f6f1be7a99123fd80645fe736",
      "tree": "ebe7f7e1c92890374084f03ebaeee0efb99f5ea9",
      "parents": [
        "354766b2fcc53d621a2c9f9c0b9f5f4c71ca0c8b"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jun 15 15:44:39 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jan 29 12:29:02 2023 +0000"
      },
      "message": "layout: Add `capacity` field\n\nUse it to keep track of the size of the `entries` array. An interim\nsolution until we have dynamic allocation.\n\nChange-Id: Ib5f431bc0a72a79a53fa1376c3417942b19dd3a0\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/33516\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Peter Marheine \u003cpmarheine@chromium.org\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72212\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "ac90af6cdc747bfe3dc38c83c0b7272addf37659",
      "tree": "ec67fd7c4d01db82b5a1ffd8c8ed36a7229108dd",
      "parents": [
        "bb4f3b06dcfb60a6ab84750c9b149482dc5ee579"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Dec 18 00:22:47 2022 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Jan 13 01:34:15 2023 +0000"
      },
      "message": "Change references to flashrom-stable\n\nAdapt all mentions of the mailing list and also the version print.\n\nChange-Id: Ib4a3271422ee6cf4d0efb8c3fa858b66a22c0a33\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/70922\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "f60f64fe5aa6c3f30a994b35d614a048f026e501",
      "tree": "5893ca00ee1a07fae312c95ee963b4a358af63e7",
      "parents": [
        "245973b44fe9702f74894068840128d8a11eb8ee"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Sat Nov 12 12:08:01 2022 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:46:20 2023 +0000"
      },
      "message": "flashrom.c: Position heap alloc along side check in compare_range()\n\nChange-Id: I0386ac4c09a541cb9a659b2410ce49c3292ecc6e\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/69473\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Alexander Goncharov \u003cchat@joursoir.net\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71499\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "a31a572b44f95841c74d48e692586a46595dd928",
      "tree": "72fb17517f6e6084c4443d0aa7b9332b315519af",
      "parents": [
        "bd27581be60e7c59b3d0f814467260196c261281"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Sat Nov 12 12:05:36 2022 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:46:20 2023 +0000"
      },
      "message": "tree/: Make heap alloc checks err msg consistent\n\nChange-Id: Id84a9f15c33781efc494ed36a1c7cec82a0333d6\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/69472\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71497\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": "7db7059e0ebe1b655c352dec8cf99fe31cc3876b",
      "tree": "3136dc58205030072618b10f1b42cc2f0151e51c",
      "parents": [
        "9441c6e36f4ad152125f110ed83a6d72a97a4b02"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Sat Nov 12 12:00:24 2022 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "flashrom.c: Drop redundant chip read validation in verify_range()\n\nThe \u0027chip_safety_check()\u0027 already validates the chip structure\nwithin \u0027prepare_flash_access()\u0027 before all subsequent chip operations\nsuch as \u0027verify_range()\u0027 and therefore the chip structure is\nguaranteed to be valid in the domain of those operations.\n\nChange-Id: Ifc57dd89715115e03d013691352463a8b3c0dc52\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/69471\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71495\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": "6a2ebebfabff9ae72f8f03076b015a6b21bf8b90",
      "tree": "1828bbf5c718a40a07c75eee81aa6df2062ed593",
      "parents": [
        "dd5f69301cb36a00ce28868af9df1711eaf9fc17"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Aug 26 11:36:48 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "programmer_init: Work on a mutable copy of programmer params\n\nThe signature of extract_param() was wrong all the time. It actually\nmodifies the passed, global `programmer_param` string. This only com-\npiled w/o warnings because of a deficiency of the strstr() API. It\ntakes a const string as argument but returns a mutable pointer to\na substring of it.\n\nAs we take a const parameter string in the libflashrom API and should\nnot change that, we create a copy in programmer_init() instead.\n\nNow that we free our copy of the programmer parameters at the end of\nprogrammer_init() it\u0027s more obvious that the string can only be used\nduring initialization. So also clear `programmer_param` inside\nprogrammer_init() instead of programmer_shutdown().\n\nChange-Id: If6bb2e5e4312b07f756615984bd3757e92b86b0a\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/67094\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71491\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "980d6b8d712d26711dcd5a71007e4626c7198cd5",
      "tree": "38e926243e6a10734971066fd1602d373fd04784",
      "parents": [
        "f25447e5724bd8664338b69b12399f101abed76b"
      ],
      "author": {
        "name": "Felix Singer",
        "email": "felixsinger@posteo.net",
        "time": "Fri Aug 19 02:48:15 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "tree: Retype variable `programmer_may_write` with bool\n\nUse the bool type instead of an integer for the variable\n`programmer_may_write`, since this represents its purpose much better.\n\nSigned-off-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nChange-Id: I69958527ae018a92f1c42734a7990d0c532dee0c\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66885\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/+/71483\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": "f25447e5724bd8664338b69b12399f101abed76b",
      "tree": "98ffb81be1bf94c2f82dfe01a1441944c2b8be04",
      "parents": [
        "2e003a0c9c0ce45fc7a34b68728227f1a83793ad"
      ],
      "author": {
        "name": "Felix Singer",
        "email": "felixsinger@posteo.net",
        "time": "Fri Aug 19 02:44:28 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "flashrom.c: Retype appropriate variables with bool\n\nUse the bool type instead of an integer for appropriate variables, since\nthis represents their purpose much better.\n\nSigned-off-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nChange-Id: I6629f391284c8f1266e4ba66c9976f3df43955d4\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/66883\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/+/71482\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": "a1805097309f7d230f3596550fc673b109d5b19d",
      "tree": "1a2772c9df3563a3ec5dc167dd900501b665744e",
      "parents": [
        "2fc70dcfe988928e97e69e98d91e7e3999ecd352"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Mon May 16 11:10:36 2022 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "flashrom.c: Make need_erase() helper static local\n\nThe need_erase() helper is only used within flashrom.c\n\nChange-Id: Ic0946bb109fca2fc18e15eefa11cccea284ded0b\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/64369\nOriginal-Reviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71460\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": "f6c1cb1a856e67b8cf7eaf7a90b09bc3923a3718",
      "tree": "9776b733a8f851fe90b582068baae97e64425e40",
      "parents": [
        "137f02f887144eae222e44adb675cb299fd00337"
      ],
      "author": {
        "name": "Martin Roth",
        "email": "gaumless@gmail.com",
        "time": "Tue Mar 15 10:55:25 2022 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "Global cleanup: Fix a few spelling errors\n\nJust a trivial patch to fix a few errors found by codespell.\n\nHere\u0027s the command I used:\ncodespell -S subprojects,out \\\n-L fwe,dout,tast,crate,parms,claus,nt,nd,te,truns,trun\n\nSigned-off-by: Martin Roth \u003cgaumless@gmail.com\u003e\nChange-Id: I4e3b277f220fa70dcab21912c30f1d26d9bd8749\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/62840\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Elyes Haouas \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71455\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": "15095dbb7b9d7f1938d43e5ff3b99054b0798803",
      "tree": "ceb67bedd9544117f89b2e06504171d2cd42c4b3",
      "parents": [
        "0ac29566c7a4a8977875b65497904f05e5ceeb47"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.com",
        "time": "Wed Apr 06 20:45:02 2022 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:35:01 2023 +0000"
      },
      "message": "flashrom.c: remove unused include\n\ngetopt.h is only needed in cli_classic.c\n\nChange-Id: I09b3233a128582bc98c5af77b6c89bd49984800e\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/63412\nOriginal-Reviewed-by: Felix Singer \u003cfelixsinger@posteo.net\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71452\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": "6ae640b1f33464969d401e00b44b3b5157f1ce09",
      "tree": "d8a5dd7c6fde8db17b2e14fb73577ef5f3c22adc",
      "parents": [
        "69c324a7d4015c3ca4ba8d39a1c42670369f5afb"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Nov 17 14:24:04 2021 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "flashrom.c: Validate before allocate in verify_range()\n\nSimplify a goto away for free\u0027ing a buffer by validating\nbefore attempting to allocate.\n\nChange-Id: Iae886f203d1c59ae9a89421f7483a4ec3f747256\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/59372\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71439\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": "fa959bacf06a1db31cc82b5d601cc208faf11859",
      "tree": "ceec0521602a491188ae7df029b62691c7060b58",
      "parents": [
        "bb37973298b95a28d36fa83017148cbe28971a94"
      ],
      "author": {
        "name": "Simon Buhrow",
        "email": "simon.buhrow@sieb-meyer.de",
        "time": "Fri Oct 29 08:28:51 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "flashrom.c: Delete obsolete comment\n\nChange-Id: Ibd53fe34c05f87d7ecc0d6eee6463f9da3a174d4\nSigned-off-by: Simon Buhrow \u003csimon.buhrow@posteo.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/58742\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71435\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": "d75e1b1fda75e3573140912cb0af246ccf86c8ee",
      "tree": "0b20aa11090ab199fe70055e964f78aa5a0fe096",
      "parents": [
        "f55ca20fcf7fcc8a8c95d034c7126217a117e88e"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Wed Jul 14 15:06:04 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "flashrom.c: Make extract_param() static local\n\nThe function is only ever used within flashrom.c.\n\nChange-Id: I81f1cdb9df98c151201390edeb69c74defe7881f\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/56295\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71414\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "3795c9d43d0b6ea71fb7ec499f6fdbb5e5bf0960",
      "tree": "95c8c787f2e7010cd2c293767b8ffe94b7f259f1",
      "parents": [
        "84e9c913082ce2d243593e3659ec3a0af22ea9cd"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Tue Jun 01 16:25:52 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "enum programmer: not needed anymore. Remove\n\nChange-Id: I53cdb160616911a4beea6b5e8e56d582621818a4\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55124\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71381\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": "e0e93cf59fe2fb45f1e325e0dcc939cc054cbfa8",
      "tree": "38f1faaae8d2a12dba5a80bad703e3d2c8d68c9e",
      "parents": [
        "9163b814032c566b224ee8e58742448a99a3b73d"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Tue Jun 01 14:37:12 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "programmer_init: use struct programmer_entry*\n\nChange-Id: Iacf0f25abc94a84c5d52c8d69a3e8640817b060a\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55121\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71378\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": "9163b814032c566b224ee8e58742448a99a3b73d",
      "tree": "8f25a2a94f5dbd3d31e57a0470e8cbe0947e9d9f",
      "parents": [
        "c7e5b8b4880984db47491bbf7a01ed7c7d470075"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Tue Jun 01 14:25:01 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "flashrom.c: replace enum programmer with size_t\n\nUsing size_t since programmer_table_size uses ARRAY_SIZE which returns\nsize_t.\n\nChange-Id: Id2ad9630fbc41e98d182768b553788e069fa5095\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55120\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71377\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": "c7e5b8b4880984db47491bbf7a01ed7c7d470075",
      "tree": "b8a0a67add5427260d6f69ff9f634600ea0f8117",
      "parents": [
        "79088ab06fe92e2b898ddbb682782e06159e87f7"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Tue Jun 01 14:21:41 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "flashrom.c: replace enum programmer with struct programmer_entry*\n\nChange-Id: I478c56354d5f482010bfe1560489700bc889717a\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55119\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71376\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": "d45cb595e031ea6917f154f01eda3b234226f4f0",
      "tree": "2073712010f8c8e680ba82fa6d75e59f1edceab6",
      "parents": [
        "cc853d84ed2f8ecafc1f6daa443f8baa4c871805"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Wed May 19 14:12:18 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "programmer_table: replace PROGRAMMER_INVALID with programmer_table_size\n\nChange-Id: Icaaeefe001de604df9d7fdd06f05a5ed39fdbd84\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55117\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71374\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": "7e1345602641114c8eeb5cfef992bf1da8d7fa6a",
      "tree": "ce19124575cfd893449c754800c757d096dd3130",
      "parents": [
        "690a944066619ff9d450d71cdcfe2e0bcb1120f3"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Mon Jun 07 13:29:13 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "treewide: Drop unnecessary uses of memset/memcpy\n\nSimply provide an initialiser or use a direct assignment instead.\n\nChange-Id: I07385375cd8eec8a95874001b402b2c17ec09e09\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55267\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71372\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "690a944066619ff9d450d71cdcfe2e0bcb1120f3",
      "tree": "e8da9e733570d6ebb25251f2362f17af5c59d626",
      "parents": [
        "c40ca200100fe6fc451ab7f9bdf9751af1899d02"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Mon Jun 07 12:33:53 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "treewide: Drop most cases of `sizeof(struct ...)`\n\nSpelling out the struct type name hurts readability and introduces\nopportunities for bugs to happen when the pointer variable type is\nchanged but the corresponding sizeof is (are) not.\n\nTested: `make CONFIG_EVERYTHING\u003dyes CONFIG_JLINK_SPI\u003dno VERSION\u003dnone -j`\nwith and without this patch; the flashrom executable does not change.\n\nflashrom-stable: Applied partially.\n\nChange-Id: Icc0b60ca6ef9f5ece6ed2a0e03600bb6ccd7dcc6\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55266\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71371\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "633d6db1b5718305cf4daf87cf4a93d17bc3821e",
      "tree": "59ec962a28ab34ea99554db9b44ec804fead7e2d",
      "parents": [
        "bbfacffca88042d7f85d910b732bf88253573c76"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Wed Mar 31 19:09:44 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "programmer_table: convert entries to pointers\n\nAllows us to move the individual entries into their respective\ndriver files.\n\nChange-Id: Ifbb0ee4db5a85b1cd2afeafe4dca838579f79878\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/52945\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71369\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": "bbfacffca88042d7f85d910b732bf88253573c76",
      "tree": "afcd64ef5cffb9b33c7b9c4e1048574d9b1c1116",
      "parents": [
        "d0fcce2507d7a5ada93902cc7522ee06e91c4872"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Wed Mar 31 20:40:01 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "programmer_table: move array content to an own file\n\nChange-Id: I8e6d704e845ee4152c8676dd19dff0934fff007b\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/52944\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71368\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": "d0fcce2507d7a5ada93902cc7522ee06e91c4872",
      "tree": "52643af250240e68608a311a51b54cd8cc4b91fb",
      "parents": [
        "b7076368df57398d36146d0234f924b0be9db881"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Wed May 19 13:53:34 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "programmer_table: add table size constant\n\nMakes the array size known to other compilation units.\n\nChange-Id: Idacb4b7b0dd98af8bc7cbecf567d33daafb4b24d\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55116\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71367\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": "b7076368df57398d36146d0234f924b0be9db881",
      "tree": "5c866a82c797eb7749c1603c42f66ab73d564c92",
      "parents": [
        "3c55c79c7fd8adcf1503921392aba99cb8569638"
      ],
      "author": {
        "name": "Thomas Heijligen",
        "email": "thomas.heijligen@secunet.de",
        "time": "Wed May 19 13:05:36 2021 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "programmer_table: remove null termination\n\nThe {0} object at the end of programmer_table which corresponds\nto PROGRAMMER_INVALID has no use in current code.\n\nChange-Id: Ib63c2d2941f23a0788e26e5a5feb25d8669acb42\nSigned-off-by: Thomas Heijligen \u003cthomas.heijligen@secunet.de\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/55115\nOriginal-Reviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71366\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": "8eaef7d9d3e189fcffd0afbe55c8ddbadcc524f8",
      "tree": "ed8ade2bb6610993a27aa9b240d5cbdfd7ecc42d",
      "parents": [
        "b499b67d1b112141792a71ad9119d51dd9052684"
      ],
      "author": {
        "name": "Daniel Campello",
        "email": "campello@chromium.org",
        "time": "Thu Apr 15 10:36:04 2021 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:15:22 2023 +0000"
      },
      "message": "flashrom.c: allow - as filename for stdin\n\nAllows - as filename for -w/-v options. It is sometimes useful to\nscript flashrom and allowing it to work with pipes allows for more\nflexibility in this specific use-case.\n\nSigned-off-by: Daniel Campello \u003ccampello@chromium.org\u003e\nChange-Id: I97889cfdf7ba9a257e182c4ee2b20075cfa58d4d\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/52383\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71350\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": "acb24d435a4d2f523f7814adfd69b4aa7d8a97a2",
      "tree": "e85be0c48ced47bd090665f5ac5759a5a70420cd",
      "parents": [
        "281ed26f700e14ec823230c999b93caaaa07463d"
      ],
      "author": {
        "name": "Edward O\u0027Callaghan",
        "email": "quasisec@google.com",
        "time": "Thu Apr 15 13:44:39 2021 +1000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Jan 05 16:07:04 2023 +0000"
      },
      "message": "flashrom.c: Fix up stale FIXME comment when doit() was removed\n\nOnce upon a time flashrom had a entry point function called\ndoit(). Excise the last mention of it here so that we may\nnever mention it again.\n\nChange-Id: I40d815b7154456c323b4230cd3fed2cc2e8e3641\nSigned-off-by: Edward O\u0027Callaghan \u003cquasisec@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/52365\nOriginal-Reviewed-by: Anastasia Klimchuk \u003caklm@chromium.org\u003e\nOriginal-Reviewed-by: Paul Menzel \u003cpaulepanter@mailbox.org\u003e\nOriginal-Reviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/71344\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "478e179f2d5ecf6a8b82984444b9111913a8f50f",
      "tree": "a87192cf8ab508ce56cb441147d00d0658355e29",
      "parents": [
        "1e6aabc39de5ca46a69ef1b164ce55a4288753c3"
      ],
      "author": {
        "name": "Aarya Chaumal",
        "email": "aarya.chaumal@gmail.com",
        "time": "Sat Jun 04 01:34:44 2022 +0530"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Dec 30 01:16:50 2022 +0100"
      },
      "message": "flashrom.c, flashcips.c: Test the order of erase functions\n\nAdd a check so that the erase functions for all flashchips are in\nincreasing order of their respective eraseblock sizes. This is required\nfor the implentation of the improved erasing algorithm. The patch uses\nthe count of eraseblocks in each erase function to determine the order\n(More eraseblocks means that the function has smaller eraseblock size).\nAlso fix the structs in flashchips.c which were found to be not\nconforming to this test.\n\nTested: make \u0026\u0026 ./flashrom\n\nChange-Id: I137cb40483fa690ecc6c7eaece2d9d3f7a851bb4\nSigned-off-by: Aarya Chaumal \u003caarya.chaumal@gmail.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/64961\nOriginal-Reviewed-by: Thomas Heijligen \u003csrc@posteo.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/70987\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Aarya \u003caarya.chaumal@gmail.com\u003e\n"
    },
    {
      "commit": "4ad486465ccceedce372c498ad19ac84edbc0078",
      "tree": "b278a2499ed1ac3101b4e74f48a8a622640c15d3",
      "parents": [
        "73ae5efbc36e8523d1f2fce1258a9ab2eef02e5e"
      ],
      "author": {
        "name": "Nikolai Artemiev",
        "email": "nartemiev@google.com",
        "time": "Thu Nov 05 13:54:27 2020 +1100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Dec 30 01:16:36 2022 +0100"
      },
      "message": "flashrom.c: implement chip restore callback registration\n\nAllows drivers to register a callback function to reset the\nchip state once programming has finished. This is used by\nthe s25f driver added in a later patch, which needs to change\nthe chip\u0027s sector layout to be able to write to the entire flash.\n\nAdapted from cros flashrom at\n`9c4c9a56b6a0370b383df9c75d71b3bd469e672d`.\n\nChange-Id: I2a522dc1fd3952793fbcad70afc6dd43850fbbc5\nSigned-off-by: Nikolai Artemiev \u003cnartemiev@google.com\u003e\nOriginal-Reviewed-on: https://review.coreboot.org/c/flashrom/+/47276\nOriginal-Reviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/70940\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "1900e1d5d39d91b762c9a02ef2445868b323ca87",
      "tree": "a95c01537af1a6a2a643f696c5e33df886471619",
      "parents": [
        "87aa19314523d1cffdef57fbdf65d8328824026c"
      ],
      "author": {
        "name": "Angel Pons",
        "email": "th3fanbus@gmail.com",
        "time": "Fri Jul 02 12:42:23 2021 +0200"
      },
      "committer": {
        "name": "Felix Singer",
        "email": "felixsinger@posteo.net",
        "time": "Thu Oct 06 01:00:37 2022 +0000"
      },
      "message": "Replace freenode references\n\nThe flashrom project no longer uses freenode. To avoid having outdated\nman pages in the future, the contact methods are now listed in the wiki.\n\nChange-Id: I75e8f43c50dc4c3feede0250334a877cdaac8103\nSigned-off-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/56031\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Edward O\u0027Callaghan \u003cquasisec@chromium.org\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/68063\n"
    },
    {
      "commit": "324929c3d725ce264b2390525dbc9070f6029cc4",
      "tree": "73ee656c8bc1933329e4239214e4b0eaaadb36f8",
      "parents": [
        "728062f7ff7c2dca31bc99fe45eb5cacd7cf2d53"
      ],
      "author": {
        "name": "Miklós Márton",
        "email": "martonmiklosqdev@gmail.com",
        "time": "Thu Aug 01 19:14:10 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Dec 31 17:25:41 2019 +0000"
      },
      "message": "Add support for STLINK V3 debugger/programmer via its SPI bridge\n\nChange-Id: Icffab87ac8f2c570187ed753ec70f054541873a4\nSigned-off-by: Miklós Márton \u003cmartonmiklosqdev@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/34661\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "2d20d6db39547f013b66230f378ceb8e21fa36e3",
      "tree": "7816f91833c2540ec74f97fe5de4ad4dd81165e0",
      "parents": [
        "1a119498b43a8ed934bcfa0a16465aa4d6d2c74d"
      ],
      "author": {
        "name": "Miklós Márton",
        "email": "martonmiklosqdev@gmail.com",
        "time": "Tue Jan 30 20:20:15 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Nov 14 22:40:21 2019 +0000"
      },
      "message": "Add support for National Instruments USB-845x devices\n\nChange-Id: I9477b6f0193bfdf20bbe63421a7fb97b597ec549\nSigned-off-by: Miklós Márton \u003cmartonmiklosqdev@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/25683\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "519be66fc59558971dd653afe69ccaf1a633b492",
      "tree": "74f0912de156a86d56111f377db080246e5205e9",
      "parents": [
        "ef78de4a21323b8c459337356289218211f2c5ce"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Dec 23 20:03:35 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Jul 31 08:26:59 2019 +0000"
      },
      "message": "Fix -Wsign-compare trouble\n\nMostly by changing to `unsigned` types where applicable, sometimes\n`signed` types, and casting as a last resort.\n\nChange-Id: I08895543ffb7a48058bcf91ef6500ca113f2d305\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/30409\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\n"
    },
    {
      "commit": "cf3976e658e06464e84d04c5230c466e0ec44df7",
      "tree": "a5d76371a4e67765060f63693568c9a3f26da8c1",
      "parents": [
        "6c68363d0c1db0fd5e2ac95fb4adeaf254f669a7"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Fri Jun 21 15:40:33 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 23 21:40:09 2019 +0000"
      },
      "message": "tree: Remove unused functions with no prototypes\n\nThese functions are no longer used, or were never used in the first place.\n\ngenerate_testpattern() - Introduced in commit eaac68bf8b, never used\nlist_programmers() - Introduced in commit 552420b0d6, never used\npci_dev_find_filter() - Prototype removed in commit 5c316f9549\nerase_chip_jedec() - Usage and prototype removed in commit f52f784bb3\nprintlock_regspace2_blocks() - Introduced in commit ef3ac8ac17, never used\nspi_write_status_enable() - Usage dropped in commit fcbdbbc0d4\n\nChange-Id: I742164670521fea65ffa3808446594848ce63cec\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33669\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "beeb8bc925bef6973e1c9fa6c4fd26a4113a1777",
      "tree": "30c63cf4ae4bb14a19849b1680622ad6eed86d63",
      "parents": [
        "cb44eb7dad17522f47792dca4fc499310ff7d6f3"
      ],
      "author": {
        "name": "Jacob Garber",
        "email": "jgarber1@ualberta.ca",
        "time": "Fri Jun 21 15:24:17 2019 -0600"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 23 21:39:31 2019 +0000"
      },
      "message": "tree: Make internal functions static\n\nNone of these functions are used outside of the files they are defined\nin, so make them all static.\n\nChange-Id: Ie9cbe12d289bcedacf2f1bf483ae64ef8039ccc1\nSigned-off-by: Jacob Garber \u003cjgarber1@ualberta.ca\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33667\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: HAOUAS Elyes \u003cehaouas@noos.fr\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "5ca5523fd8f6800c32cbc8f3724b393e791cebd6",
      "tree": "f68209e48c9c54006a5af5c09e6d0b5d4ad1c9d9",
      "parents": [
        "70461a9524fc84ec5c095f11927cffa0429a6267"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jun 15 22:29:08 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Jun 17 08:33:09 2019 +0000"
      },
      "message": "layout: Introduce layout_next_included()\n\nChange-Id: Ib01c8af06c3f84eafbd585760e74c3c287b9fa7d\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33518\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "70461a9524fc84ec5c095f11927cffa0429a6267",
      "tree": "0df6b67aec1d936bf8b39a86d5d9ed97ef5aa125",
      "parents": [
        "4f213285d78974c4b8915b311aff88449279f554"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jun 15 14:56:19 2019 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Jun 17 08:32:43 2019 +0000"
      },
      "message": "layout: Make `romentry.name` a pointer\n\nThis should provide more flexibility while we don\u0027t have to allocate\n256B extra per layout entry.\n\nChange-Id: Ibb903113550ec13f43cbbd0a412c8f35fe1cf454\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/33515\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\n"
    },
    {
      "commit": "dc5af547df8b2f852deb5ddad86bb90ff0fc50c0",
      "tree": "3b23dcce1e43e520ca0a6db314d6920a89b1f72a",
      "parents": [
        "3d7b1e3b5c04304d3680bd950e7672f6336b01d6"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Dec 22 16:54:59 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 02 16:55:43 2019 +0000"
      },
      "message": "dediprog: Disable 4BA completely\n\nThis is an interim solution. We\u0027ll have to enable 4BA step-by-step for\neach dediprog protocol version.\n\nChange-Id: I08efcbb09ab3499ef6902a698e9ce3d6232237c4\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/30386\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\n"
    },
    {
      "commit": "3d7b1e3b5c04304d3680bd950e7672f6336b01d6",
      "tree": "f316ba1bd2474850ff3267ff1acbbb2b9c7336cd",
      "parents": [
        "0cacb11c6252b6e1f4f0a2a33b47717ff22995d9"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Dec 22 00:53:14 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 02 16:42:53 2019 +0000"
      },
      "message": "Fix verification with sparse layouts\n\nThe full verification step was not accounting for sparse layouts.\nInstead of the old contents, combine_image_by_layout() implicitly\nassumed the new contents for unspecified regions.\n\nChange-Id: I44e0cea621f2a3d4dc70fa7e93c52ed95e54014a\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom/+/30370\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Philipp Deppenwiese \u003czaolin.daisuki@gmail.com\u003e\n"
    },
    {
      "commit": "6e61e0cf9cf038d5f95bcbe5b6516d58ecd81d7d",
      "tree": "00ef055c999d0c6ddec61f0dd500859908e22425",
      "parents": [
        "db7482bb72035fab8386226d1720cde09e0c700e"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.huber@secunet.com",
        "time": "Wed Jan 23 17:07:49 2019 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Mar 04 15:01:59 2019 +0000"
      },
      "message": "Fix erasing of unaligned regions\n\nThe erase (-E) feature is somehow a brute force method, but still, if we\nare given a region to erase, we should make sure to restore surrounding\ndata if the erase block expands beyond the region.\n\nIt shares a lot of code with the write path. Though, experiments with\ncommon functions have shown that it would make the whole function even\nharder to read. Maybe we could add some abstraction if we ever need\nsimilar code on a third path.\n\nChange-Id: I5fc35310f0b090f218cd1d660e27fb39dd05c3c5\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/c/31068\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\nReviewed-by: Patrick Georgi \u003cpgeorgi@google.com\u003e\n"
    },
    {
      "commit": "84b453e4d4140230bd4d72d530b2b08f9a51b4e2",
      "tree": "103cd0d186c54a7e80921a3813abd8d24292e581",
      "parents": [
        "df4905822754ac1f303f7939f5b77b35e5ac4a67"
      ],
      "author": {
        "name": "Richard Hughes",
        "email": "richard@hughsie.com",
        "time": "Wed Dec 19 15:30:39 2018 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 03 19:08:33 2019 +0000"
      },
      "message": "Fix a trivial calloc warning\n\nChange-Id: Id457c15555a6ca6333474601f92982446afa40ab\nSigned-off-by: Richard Hughes \u003crichard@hughsie.com\u003e\nReviewed-on: https://review.coreboot.org/c/31223\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "93e1625f9fb5f1080c40685488d006b2982062d7",
      "tree": "810e5b2807d6f5c102059e2b8a99a91a17c8f9c7",
      "parents": [
        "d82be7b2be34fb3273781e72f5d8e52a3103b961"
      ],
      "author": {
        "name": "Richard Hughes",
        "email": "richard@hughsie.com",
        "time": "Wed Dec 19 11:54:47 2018 +0000"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 03 18:31:45 2019 +0000"
      },
      "message": "Fix several -Wold-style-declaration warnings\n\nChange-Id: Iffe5e652779a13ee7f64696fb5df4a781fe9a632\nSigned-off-by: Richard Hughes \u003crichard@hughsie.com\u003e\nReviewed-on: https://review.coreboot.org/c/30404\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Angel Pons \u003cth3fanbus@gmail.com\u003e\n"
    },
    {
      "commit": "3578ec6a3d7187438c4093f4bb7ac2bb6d4184cb",
      "tree": "53c7ccc03fa21dcd4664e6fb1b48a9ec1661e023",
      "parents": [
        "9cecc7e25dc3fe27a801a745410825cfc2cfaac3"
      ],
      "author": {
        "name": "Marc Schink",
        "email": "flashrom-dev@marcschink.de",
        "time": "Thu Mar 17 16:23:03 2016 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Jan 05 16:25:04 2019 +0000"
      },
      "message": "Add initial J-Link SPI programmer\n\nTested with SEGGER J-Link EDU, Flasher ARM and flash chip W25Q16.V.\n\nChange-Id: Ie03a054a75457ec9e1cab36ea124bb53b10e8d7e\nSigned-off-by: Marc Schink \u003cflashrom-dev@marcschink.de\u003e\nReviewed-on: https://review.coreboot.org/c/28087\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "2f1d0076b3e3b8a85ae0e698949079305cac87a2",
      "tree": "3654cda71f7827f494b2817632edc705ae2ae11a",
      "parents": [
        "1a7fb6e0c327bc23290ad02a2b97410f15fdde4a"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Thu Oct 04 10:42:42 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Oct 05 11:36:07 2018 +0000"
      },
      "message": "Remove unneeded whitespace\n\nChange-Id: I0e72e3e3736a39685b7f166c5e6b06cc241b26be\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/28707\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "86bddb5d52659f23531282db137350cbf7fb5992",
      "tree": "2f2b2da3f475065c9e86218b79ded18547c6b2c3",
      "parents": [
        "57dbd64b33143964bb8eb91d33d72a2147f0091c"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Mar 13 18:14:52 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Oct 03 13:14:57 2018 +0000"
      },
      "message": "Enable 4BA mode for Spansion 25FL256S\n\n4BA mode is entered by setting bit 7 for the extended address register.\n\nChange-Id: I807bf55d65763a9f48a6a3377f14f4e5288a7a4c\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: Michael Fuckner \u003cmichael@fuckner.net\u003e\nReviewed-on: https://review.coreboot.org/25133\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\n"
    },
    {
      "commit": "45e91a278cd31019ad6ed5a465661001fbaee065",
      "tree": "c8cf0b31e69ff5efae8c283369fc67aeab4a6e5c",
      "parents": [
        "455a6fc86e833d1165c68d9dbaef8b0188875bc5"
      ],
      "author": {
        "name": "Daniel Thompson",
        "email": "daniel.thompson@linaro.org",
        "time": "Mon Jun 04 13:46:29 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Aug 17 21:17:13 2018 +0000"
      },
      "message": "programmer: Add Developerbox/CP2104 bit bang driver\n\nThe 96Boards Developerbox (a.k.a. Synquacer E-series) provides a CP2102\ndebug UART with its GPIO pins hooked up to the SPI NOR FLASH. The\ncircuit is intended to provide emergency recovery functions without\nrequiring any additional tools (such as a JTAG or SPI programmer). This\nwas expected to be very slow (and it is) but CP2102 is much cheaper than\na full dual channel USB comms chip.\n\nRead performance is roughly on par with a 2400 baud modem (between 60\nand 70 minutes per megabyte if you prefer) and write performance is 50%\nslower still. The full recovery process, with backup and verification of\n4MB data written takes between 14 and 15 hours. Thus it is only really\npractical as an emergency recovery tool, firmware developers will need\nto use an alternative programmer.\n\nChange-Id: I2547a96c1a2259ad0d52cd4b6ef42261b37cccf3\nSigned-off-by: Daniel Thompson \u003cdaniel.thompson@linaro.org\u003e\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/26948\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Paul Menzel \u003cpaulepanter@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "b2154e8a1d456875122cbbff2a18e5e1c55ef4d2",
      "tree": "ee5cf1e29adf35b89d6078ba117638b4009cfd89",
      "parents": [
        "ac01baa073b0f154ffd3ffdc7c9e75987f8b525c"
      ],
      "author": {
        "name": "Lubomir Rintel",
        "email": "lkundrak@v3.sk",
        "time": "Sun Jan 14 17:35:33 2018 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Jun 26 10:02:38 2018 +0000"
      },
      "message": "digilent_spi: add a driver for the iCEblink40 development board\n\nThis is driver that supports the Lattice iCE40 evaluation kits. On the\nboard is a SPI flash memory chip labeled ST 25P10VP.\n\nTested to work read/write/erase with \"-p digilent_spi -c M25P10\" or\nwith a patch that resets the part beforehands (in which case it gets\ndetected as a M25P10-A and is way faster due to paged writes).\n\nChange-Id: I7ffcd9a2db4395816f0e8b6ce6c3b0d8e930c9e6\nSigned-off-by: Lubomir Rintel \u003clkundrak@v3.sk\u003e\nReviewed-on: https://review.coreboot.org/23338\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "f9a30554803a670f9b95a7794be00f03929d6ecd",
      "tree": "46da1dafce0c76ab5730540540aaf4093463f551",
      "parents": [
        "291764a70e6d8b212680e311bfb0825abf2b9a2f"
      ],
      "author": {
        "name": "David Hendricks",
        "email": "dhendricks@fb.com",
        "time": "Sat May 23 20:30:30 2015 -0700"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Thu May 17 16:49:16 2018 +0000"
      },
      "message": "linux_mtd: Import driver from ChromiumOS\n\nThis imports a series of patches from chromiumos for MTD support.\nThe patches are squashed to ease review and original Change-Ids have\nbeen removed to avoid confusing Gerrit.\n\nThere are a few changes to integrate the code:\n- Conflict resolution\n- Makefile changes\n- Remove file library usage from linux_mtd. We may revisit this and use\n  it for other Linux interfaces later on.\n- Switch to using file stream functions for reads and writes.\n\nThis consolidated patch is\nSigned-off-by: David Hendricks \u003cdhendricks@fb.com\u003e\n\nThe first commit\u0027s message is:\nInitial MTD support\n\nThis adds MTD support to flashrom so that we can read, erase, and\nwrite content on a NOR flash chip via MTD.\n\nBUG\u003dchrome-os-partner:40208\nBRANCH\u003dnone\nTEST\u003dread, write, and erase works on Oak\n\nSigned-off-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nReviewed-on: https://chromium-review.googlesource.com/272983\nReviewed-by: Shawn N \u003cshawnn@chromium.org\u003e\n\nThis is the 2nd commit message:\n\nlinux_mtd: Fix compilation errors\n\nThis fixes compilation errors from the initial import patch.\n\nSigned-off-by: David Hendricks \u003cdhendricks@fb.com\u003e\n\nThis is the 3rd commit message:\n\nlinux_mtd: Suppress message if NOR device not found\n\nThis just suppresses a message that might cause confusion for\nunsuspecting users.\n\nBUG\u003dnone\nBRANCH\u003dnone\nTEST\u003dran on veyron_mickey, \"NOR type device not found\" message\nno longer appears under normal circumstances.\nSigned-off-by: David Hendricks \u003cdhendrix@chromium.org\u003e\n\nReviewed-on: https://chromium-review.googlesource.com/302145\nCommit-Ready: David Hendricks \u003cdhendrix@chromium.org\u003e\nTested-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nReviewed-by: Shawn N \u003cshawnn@chromium.org\u003e\n\nThis is the 4th commit message:\n\nlinux_mtd: Support for NO_ERASE type devices\n\nSome mtd devices have the MTD_NO_ERASE flag set. This means\nthese devices don\u0027t require an erase to write and might not have\nimplemented an erase function. We should be conservative and skip\nerasing altogether, falling back to performing writes over the whole\nflash.\n\nBUG\u003db:35104688\nTESTED\u003dZaius flash is now written correctly for the 0xff regions.\n\nSigned-off-by: William A. Kennington III \u003cwak@google.com\u003e\nReviewed-on: https://chromium-review.googlesource.com/472128\nCommit-Ready: William Kennington \u003cwak@google.com\u003e\nTested-by: William Kennington \u003cwak@google.com\u003e\nReviewed-by: Brian Norris \u003cbriannorris@chromium.org\u003e\n\nThis is the 5th commit message:\n\nlinux_mtd: do reads in eraseblock-sized chunks\n\nIt\u0027s probably not the best idea to try to do an 8MB read in one syscall.\nTheoretically, this should work; but MTD just relies on the SPI driver\nto deliver the whole read in one transfer, and many SPI drivers haven\u0027t\nbeen tested well with large transfer sizes.\n\nI\u0027d consider this a workaround, but it\u0027s still good to have IMO.\n\nBUG\u003dchrome-os-partner:53215\nTEST\u003dboot kevin; `flashrom --read ...`\nTEST\u003dcheck for performance regression on oak\nBRANCH\u003dnone\n\nSigned-off-by: Brian Norris \u003cbriannorris@chromium.org\u003e\nReviewed-on: https://chromium-review.googlesource.com/344006\nReviewed-by: David Hendricks \u003cdhendrix@chromium.org\u003e\n\nThis is the 6th commit message:\n\nlinux_mtd: make read/write loop chunks consistent, and documented\n\nTheoretically, there should be no maximum size for the read() and\nwrite() syscalls on an MTD (well, except for the size of the entire\ndevice). But practical concerns (i.e., bugs) have meant we don\u0027t quite\ndo this.\n\nFor reads:\nBug https://b/35573113 shows that some SPI-based MTD drivers don\u0027t yet\nhandle very large transactions. So we artificially limit this to\nblock-sized chunks.\n\nFor writes:\nIt\u0027s not clear there is a hard limit. Some drivers will already split\nlarge writes into smaller chunks automatically. Others don\u0027t do any\nsplitting. At any rate, using *small* chunks can actually be a problem\nfor some devices (b:35104688), as they get worse performance (doing an\ninternal read/modify/write). This could be fixed in other ways by\nadvertizing their true \"write chunk size\" to user space somehow, but\nthis isn\u0027t so easy.\n\nAs a simpler fix, we can just increase the loop increment to match the\nread loop. Per David, the original implementation (looping over page\nchunks) was just being paranoid.\n\nSo this patch:\n * clarifies comments in linux_mtd_read(), to note that the chunking is\n   somewhat of a hack that ideally can be fixed (with bug reference)\n * simplifies the linux_mtd_write() looping to match the structure in\n   linux_mtd_read(), including dropping several unnecessary seeks, and\n   correcting the error messages (they referred to \"reads\" and had the\n   wrong parameters)\n * change linux_mtd_write() to align its chunks to eraseblocks, not page\n   sizes\n\nNote that the \"-\u003epage_size\" parameter is still somewhat ill-defined, and\nonly set by the upper layers for \"opaque\" flash. And it\u0027s not actually\nused in this driver now. If we could figure out what we really want to\nuse it for, then we could try to set it appropriately.\n\nBRANCH\u003dnone\nBUG\u003db:35104688\nTEST\u003dvarious flashrom tests on Kevin\nTEST\u003dReading and writing to flash works on our zaius machines over mtd\n\nChange-Id: I3d6bb282863a5cf69909e28a1fc752b35f1b9599\nSigned-off-by: Brian Norris \u003cbriannorris@chromium.org\u003e\nReviewed-on: https://chromium-review.googlesource.com/505409\nReviewed-by: David Hendricks \u003cdhendrix@chromium.org\u003e\nReviewed-by: Martin Roth \u003cmartinroth@chromium.org\u003e\nReviewed-by: William Kennington \u003cwak@google.com\u003e\nReviewed-on: https://review.coreboot.org/25706\nTested-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-by: Philipp Deppenwiese \u003czaolin.daisuki@gmail.com\u003e\n"
    },
    {
      "commit": "e083880279119677e443fc16b4694f8c81bf2c40",
      "tree": "03413b996779bc4c86ec41590f3e7bcdd97d0ef5",
      "parents": [
        "124ef38f7afc61ad7c713c22aad7c5c7f79bdb9b"
      ],
      "author": {
        "name": "Elyes HAOUAS",
        "email": "ehaouas@noos.fr",
        "time": "Mon Apr 02 11:14:02 2018 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Apr 24 20:21:41 2018 +0000"
      },
      "message": "Remove address from GPLv2 headers\n\nChange-Id: I7bfc339673cbf5ee2d2ff7564c4db04ca088d0a4\nSigned-off-by: Elyes HAOUAS \u003cehaouas@noos.fr\u003e\nReviewed-on: https://review.coreboot.org/25381\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n"
    },
    {
      "commit": "f701f343117270b4373320eb25ae259b8e513b7d",
      "tree": "2749940aec9f2b1dc0ad53069079b78f225d76cf",
      "parents": [
        "3a826043dbd389b4be2f5783c1b984ba297b8179"
      ],
      "author": {
        "name": "Paul Kocialkowski",
        "email": "contact@paulk.fr",
        "time": "Mon Jan 15 01:10:36 2018 +0300"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 11 16:54:14 2018 +0000"
      },
      "message": "Add support for reading the current flash contents from a file\n\nWhen developing software that has to be flashed to a flash chip to be\nexecuted, it often takes a long time to read the current flash contents\n(for flashrom to know what pages to erase and reprogram) each time\nwhen writing the new image. However, when the flash was just reprogrammed,\nits current state is known to be the previous image that was flashed\n(assuming it was verified).\n\nThus, it makes sense to provide that image as a file for the flash contents\ninstead of wasting valuable time read the whole flash each time.\n\nChange-Id: Idf153b6955f37779ae9bfb228a434ed10c304947\nSigned-off-by: Mike Banon \u003cmikebdp2@gmail.com\u003e\nSigned-off-by: Paul Kocialkowski \u003ccontact@paulk.fr\u003e\nReviewed-on: https://review.coreboot.org/23263\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "995f755ff569cbf6ed8d4eec5920b41628aa8ac9",
      "tree": "8bf525250f29a35eac59e1140da8c039790842cd",
      "parents": [
        "31b5e3bfe6c01180d9a079813ecd199b4808315d"
      ],
      "author": {
        "name": "Paul Kocialkowski",
        "email": "contact@paulk.fr",
        "time": "Mon Jan 15 01:06:09 2018 +0300"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 11 16:52:48 2018 +0000"
      },
      "message": "Add support for selecting the erased bit value with a flag\n\nMost flash chips are erased to ones and programmed to zeros. However, some\nother chips, such as the ENE KB9012 internal flash, work the opposite way.\n\nChange-Id: Ia7b0de8568e31f9bf263ba0ad6b051e837477b6b\nSigned-off-by: Mike Banon \u003cmikebdp2@gmail.com\u003e\nSigned-off-by: Paul Kocialkowski \u003ccontact@paulk.fr\u003e\nReviewed-on: https://review.coreboot.org/23258\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "31b5e3bfe6c01180d9a079813ecd199b4808315d",
      "tree": "3acefe04a94524cf9f3fdd47d4136f7c5b137b60",
      "parents": [
        "305a2b3ed36ce87663aea177a806c6f435a4ceec"
      ],
      "author": {
        "name": "Mike Banon",
        "email": "mikebdp2@gmail.com",
        "time": "Mon Jan 15 01:10:00 2018 +0300"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 11 16:52:30 2018 +0000"
      },
      "message": "Add a SPI command class to `struct flashchip`\n\nBy default, we want to probe for SPI25 chips only. Other SPI use cases,\nlike the ENE/EDI protocol, might use commands that can confuse these\ncommon chips.\n\nNow, flashrom will probe for a chip only if one of these conditions is\ntrue:\n1) no chip has been specified AND the chip uses the SPI25 commands\n2) this chip has been specified by -c | --chip \u003cchipname\u003e\n\nThe CLI can later be extended to probe for a specific class of chips.\n\nChange-Id: I89a53ccaef2791a2ac32904d7ab813da7478a6f0\nSigned-off-by: Mike Banon \u003cmikebdp2@gmail.com\u003e\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/23262\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Paul Kocialkowski \u003ccontact@paulk.fr\u003e\n"
    },
    {
      "commit": "fe34d2af28bd81aaa1e23ba38febaa98ec4bb90c",
      "tree": "53bda4d3445a94505455ffb12a96da602ba97af6",
      "parents": [
        "1cf407b4f8d56035816efaf936a40553441eca46"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Fri Nov 10 21:10:20 2017 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Tue Jan 02 20:15:30 2018 +0000"
      },
      "message": "spi25: Revise decision when to enter/exit 4BA mode\n\nInstead of arbitrarily deciding whether to enter 4BA mode in the flash\nchip\u0027s declaration, advertise that entering 4BA mode is supported and\nonly enter it if the SPI master supports 4-byte addresses. If not, exit\n4BA mode (the chip might be in 4BA mode after reset). If we can\u0027t assure\nthe state of 4BA mode, we bail out to simplify the code (we\u0027d have to\nensure that we don\u0027t run any instructions that can usually be switched\nto 4BA mode otherwise).\n\nTwo new feature flags are introduced:\n\n* FEATURE_4BA_ENTER:\n  Can enter/exit 4BA mode with instructions 0xb7/0xe9 w/o WREN.\n* FEATURE_4BA_ENTER_WREN\n  Can enter/exit 4BA mode with instructions 0xb7/0xe9 after WREN.\n\nFEATURE_4BA_SUPPORT is dropped, it\u0027s completely implicit now.\n\nAlso, draw the with/without WREN distinction into the enter/exit\nfunctions to reduce code redundancy.\n\nChange-Id: I877fe817f801fc54bd0ee2ce4e3ead324cbb3673\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/22422\nReviewed-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\n"
    },
    {
      "commit": "7a077222566c84546dca4a56c1a509626036e429",
      "tree": "b4cd487275dd4ffc92ad6ac885268842efbe9eb3",
      "parents": [
        "a1672f829328e877d9b8dea7777f25e2eba52d0e"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Oct 14 18:18:30 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Dec 28 10:46:54 2017 +0000"
      },
      "message": "spi25: Remove now obsolete `four_bytes_addr_funcs` path\n\nChange-Id: Idb7c576cb159630da2268813388b497cb5f46b43\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/22386\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "f43c654ad0dcb11b2738bbfac9246d09bb1949e5",
      "tree": "1d1f74d771dc2e8e8a67dab985945c00f68e0097",
      "parents": [
        "0ecbacbfca7f919f1780f5062c775d94c7869d81"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Oct 14 17:47:28 2017 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Dec 28 10:44:17 2017 +0000"
      },
      "message": "spi25: Integrate 4BA support\n\nAllow 4-byte addresses for instructions usually used with 3-byte\naddresses. Decide in which way the 4th byte will be communicated\nbased on the state of the chip (i.e. have we enabled 4BA mode)\nand a new feature bit for an extended address register. If we\nare not in 4BA mode and no extended address register is available\nor the write to it fails, bail out.\n\nWe cache the state of 4BA mode and the extended address register\nin the flashctx.\n\nChange-Id: I644600beaab9a571b97b67f7516abe571d3460c1\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/22384\nReviewed-by: Stefan Reinauer \u003cstefan.reinauer@coreboot.org\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "57a3b731daa8f0a6ed9d193b1b9e03216b66a802",
      "tree": "3ff81dcdd9f0991d076757b16979e8ba5b792ed4",
      "parents": [
        "48729d31a6d5dcf9ed887df332518594e1ac6310"
      ],
      "author": {
        "name": "Martin Schiller",
        "email": "ms@dev.tdt.de",
        "time": "Thu Nov 23 06:24:57 2017 +0100"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Mon Dec 11 03:37:30 2017 +0000"
      },
      "message": "Do not stop probing for flashchips after map_flash() failed\n\nInstead, continue probing the next chip.\n\nThis fixes the problem that flashrom aborts probing for\nflashchips if one big flashchip (e.g. 32M/64M) can\u0027t be mapped\nbecause of activated CONFIG_STRICT_DEVMEM kernel option.\n\nChange-Id: Iaecfb6d30a5152c8c4b5d2804efacac85fc615f9\nSigned-off-by: Martin Schiller \u003cms@dev.tdt.de\u003e\nReviewed-on: https://review.coreboot.org/22685\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "beaefe0f96758297d013bd48b598225410b44e34",
      "tree": "044fcb25328c80d0c57a9bc5b07cf60be9810ab7",
      "parents": [
        "af111e25a9d00c3d99eae6196c616461cfdfb193"
      ],
      "author": {
        "name": "dhendrix",
        "email": "dhendrix@chromium.org",
        "time": "Sun Sep 03 18:06:53 2017 -0700"
      },
      "committer": {
        "name": "David Hendricks",
        "email": "david.hendricks@gmail.com",
        "time": "Tue Oct 17 06:49:59 2017 +0000"
      },
      "message": "Move get_layout() from flashrom.c to layout.c\n\nChange-Id: Ic67cf53abddc0aa905674acbcde717d9aed2f66e\nSigned-off-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nReviewed-on: https://review.coreboot.org/21367\nReviewed-by: Philippe Mathieu-Daudé \u003cf4bug@amsat.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "cc20a9b08e849437a58402f4a64d63d3710684af",
      "tree": "01975202af6298ab6c357532b0e1d6e1d77715b8",
      "parents": [
        "d94d254262594b912c65511b5d0675c6ab900d60"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@skyportsystems.com",
        "time": "Mon Jul 03 13:17:18 2017 -0700"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Oct 15 12:37:03 2017 +0000"
      },
      "message": "4BA: Allow disabling 4-byte address mode for SPI flash\n\nThis allows us to support flash chips in any of the following\nconfigurations, regardless of whether the chip powers up in 3-byte or\n4-byte address mode.\n\n- standard commands with extended address register (*_4ba_ereg) or\n  direct commands (*_4ba_direct) in 3-byte address mode (.set_4ba \u003d\n  spi_exit_4ba_*)\n- standard commands (*_4ba) or direct commands (*_4ba_direct) in\n  4-byte address mode (.set_4ba \u003d spi_enter_4ba_*)\n- direct commands (*_4ba_direct) in either address mode (.set_4ba \u003d\n  NULL)\n\nChange-Id: I0b25309d731426940fc50956b744b681ab599e87\nSigned-off-by: Ed Swierk \u003ceswierk@skyportsystems.com\u003e\nReviewed-on: https://review.coreboot.org/20510\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    },
    {
      "commit": "7fe85694c4a597abb2a83c2f0f3a62a1a22e130e",
      "tree": "0da033666d79e9b3dc471762d1b02ee41a7a7a8d",
      "parents": [
        "5de3b9b7263196b1d2bf41659ca44c7ea386b8ab"
      ],
      "author": {
        "name": "Boris Baykov",
        "email": "dev@borisbaykov.com",
        "time": "Sat Jun 11 18:29:03 2016 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Oct 15 12:35:08 2017 +0000"
      },
      "message": "4BA: Support for new direct-4BA instructions + W25Q256.V update\n\nLarge flash chips usually support special instructions to work with\n4-bytes address directly from 3-bytes addressing mode and without\ndo switching to 4-bytes mode. There are 13h (4BA Read), 12h (4BA Program)\nand 21h,5Ch,DCh (4BA Erase), correspondingly. However not all these\ninstructions are supported by all large flash chips. Some chips\nsupport 13h only, some 13h,12h,21h and DCh, but not 5Ch. This depends\non the manufacturer of the chip.\n\nThis patch provides code to use direct 4-bytes addressing instructions.\n\nThis code should work but it tested partially only. My W25Q256FV has\nsupport for 4BA_Read (13h), but doesn\u0027t have support 4BA_Program (12h)\nand 4BA_Erase instructions. So, direct 4BA program and erase\nshould be tested after.\n\nPatched files\n-------------\nchipdrivers.h\n+ added functions declarations for spi4ba.c\n\nflash.h\n+ feature definitions added\n\nflashchips.c\n+ modified definition of Winbond W25Q256BV/W25Q256FV chips\n\nflashrom.c\n+ modified switch to 4-bytes addressing for direct-4BA instructions\n\nspi4ba.h\n+ definitions for 4-bytes addressing JEDEC commands\n+ functions declarations from spi4ba.c (same as in chipdrivers.h, just to see)\n\nspi4ba.c\n+ functions for read/write/erase directly with 4-bytes address (from any mode)\n\nChange-Id: Ib51bcc5de7826b30ad697fcbb9a5152bde2c2ac9\nSigned-off-by: Boris Baykov \u003cdev@borisbaykov.com\u003e, Russia, Jan 2014\n[clg: ported from\n      https://www.flashrom.org/pipermail/flashrom/2015-January/013198.html ]\nSigned-off-by: Cédric Le Goater \u003cclg@kaod.org\u003e\nReviewed-on: https://review.coreboot.org/20508\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n"
    }
  ],
  "next": "5de3b9b7263196b1d2bf41659ca44c7ea386b8ab"
}
