)]}'
{
  "log": [
    {
      "commit": "c3eaa9525d474faee3109bfc280c7b6cd2fc579d",
      "tree": "91edc5ed877ebd22d0dff3fd587b765d605f0f99",
      "parents": [
        "91f5152f499cb66540e69d78d3ee4b781ea31c57"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 07 23:22:54 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "opaque: Use bus probing\n\nChange-Id: I94f6f99144f28259efa358ed4d9fe82bd51c30b7\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/450\n"
    },
    {
      "commit": "91f5152f499cb66540e69d78d3ee4b781ea31c57",
      "tree": "26c3f7dfbffbdb889958dbce611ffc426589c3d8",
      "parents": [
        "05790290bfb9999fcde9fc7833882b95c828a40e"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 07 22:57:56 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "opaque: Move probing into PREPARE_POST_PROBE hook\n\nTo get rid of the flash context in probing, we have to split the\ndetection of chip parameters out into a preparation step. Below\nthe opaque-master API, things could actually stay as they are,\nwe rename `.probe` to `.prepare` though for completeness.\n\nChange-Id: Ic8418e6c5bdc49f5133cdb21efed0bf6dc2f820e\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/449\n"
    },
    {
      "commit": "05790290bfb9999fcde9fc7833882b95c828a40e",
      "tree": "17a5ae722ca47b10d936568023d88023e1f8d884",
      "parents": [
        "f1411ba8b9a7b7961c59c293e79be1a2feeede95"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Mar 09 17:24:08 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "opaque: Move last bits from chipdrivers.h into chipdrivers/opaque.h\n\nThere are only things related to opaque programmers left.\n\nChange-Id: Iffb702336ccbf9e8b67a2f57e25a5a06ba91b6a9\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/448\n"
    },
    {
      "commit": "3a3533716c10bd9aa5fd7960a916292503bcf3fa",
      "tree": "2a13a6b1657ae1f703f76d5c5e1b93acfb922a9a",
      "parents": [
        "b72fa1aec4e8729a43302c9057705894740b6eaa"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 08 15:06:51 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "jedec: Use common probing for EN29LV640B\n\nTurns out this is just common probing with respective feature bits\nand `.probe_timing`.\n\nChange-Id: I5bbf23198966c4520e2c344d198cba4e4dcbc49b\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/446\n"
    },
    {
      "commit": "2e94746997b3c46df3b925a4511f34c5f5b81437",
      "tree": "86f865121240490c8de65884016592be38b6d312",
      "parents": [
        "2cadbe3481ec133b91b33f985f54ed0828559e15"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 07 17:04:59 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "Use bus probing for standard JEDEC and JEDEC_29GL\n\nTo keep things close to as they were, we still run the probing many\ntimes, with a huge amount of different chip parameters and sizes.\n\nThis brings us down to 35 probing runs for 159 chips.  And there is\nstill room for improvement:  It\u0027s likely that chips respond already\nwhen longer delays are used. Also, many chips actually ignore addi-\ntional address bits when decoding commands (i.e. bits above a 0x555\npattern are simply ignored and we actually don\u0027t need the masking).\nMany (if not all) parallel flash chips also don\u0027t care about higher\naddress bits when reading the identification, so we might only have\nto probe for them with a single chip size.\n\nFor now, we keep the set of probing parameters close to what we did\nbefore. For power-of-two chip sizes from 64KiB to 1MiB, we run with\nthe most common parameters. 7 more parameter sets are used for more\nunusual cases. And the 29GL parts are probed for the three sizes we\nhave in our database: 4MiB, 8MiB, 16MiB.\n\nA note on the 29GL probing: All the chips have status UNTESTED, and\nmost if not all are x16 parts that need the addresses shifted (what\nwe don\u0027t do ATM). Overall it looks like standard jedec probing with\na short reset sequence. However, continuations of the device ID are\nalways 2 bytes long, at a different offset (0x0E) and prefixed with\n0x7E.\n\nChange-Id: If6ece7edc2291cae4824e5bcc2f83fd8aaef296e\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/444\n"
    },
    {
      "commit": "2cadbe3481ec133b91b33f985f54ed0828559e15",
      "tree": "e8b65ba8ebbb69732c24658d580621d6fb5550f4",
      "parents": [
        "3a2a4d5af905b0cc0fae1010cc7bae51e324c96f"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Thu Mar 05 18:34:57 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "Use bus probing for W29EE011\n\nThis peculiar probing function is only used for a single chip in our\ndatabase. Hence, we run it only for its 128KiB chip size. Because it\ncan cause trouble with other chips, it gets a lower priority, and is\nonly called if no higher-priority probing function returned any data.\n\nChange-Id: I90fb5aaea73e610a53b183383ebfe76a748ddffd\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/443\n"
    },
    {
      "commit": "3a2a4d5af905b0cc0fae1010cc7bae51e324c96f",
      "tree": "28578c9a46d361e4eedc3cf69c9d92c416445daf",
      "parents": [
        "dae9022046be147c87c32d56678053b2f85cdb1a"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 01 12:15:23 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "Use bus probing for 82802AB\n\nWe probe for chip sizes from 256KiB to 2MiB, with and without shifted\naddresses (for x16 chips).  That makes 8 probing calls that currently\ncover 28 chips in our database.\n\nChange-Id: I3dd753efb3152a8a103ca88b941802b815a8180a\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/442\n"
    },
    {
      "commit": "dae9022046be147c87c32d56678053b2f85cdb1a",
      "tree": "2b4551057e1e770283b71b180b29738a49215bc1",
      "parents": [
        "2ae63016844097ae1046c861e88b4d8bfb0ff43e"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon Mar 09 20:36:56 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "probing: Pass full struct flashchip into probes\n\nIn case we want to probe for a particular chip, we can filter the\nactual probing sequences by its properties.\n\nWe\u0027ll use `struct flashchip` internally and `struct flashprog_chip`\nwill be used only close to the libflashprog API.  This way, we can\nseparate the two later again if necessary.\n\nChange-Id: Id8b13d28fcaefee62746c9391fe86b4b3b09a428\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/441\n"
    },
    {
      "commit": "2ae63016844097ae1046c861e88b4d8bfb0ff43e",
      "tree": "522d3b5599e7ea9142f08ac3cc29c931498f7a2d",
      "parents": [
        "3d6bd5a35f94d06837e2ec6533eb3179a44bda11"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Mar 04 21:06:45 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "memory_bus: Add infrastructure for per-bus probing\n\nAll the probing functions for the traditional memory-mapped chips,\nparallel, LPC and FWH, are parameterized by additional chip proper-\nties like the chip size and feature bits like FEATURE_ADDR_SHIFTED.\nHence, we match against an extended `id_info\u0027 with chip size and\nfeature bits. For a match, all the feature bits assumed during\nprobing, need to be set for a given chip as well.\n\nChange-Id: Id5c3d8933cd6aeaf87a090b6f0798d2a5746ee17\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/440\n"
    },
    {
      "commit": "3d6bd5a35f94d06837e2ec6533eb3179a44bda11",
      "tree": "8edeec950ead06368fa6342e88300e7e626ee88b",
      "parents": [
        "10337f785ebd621b544d7f5929bb1050eb975431"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Feb 21 15:47:21 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "memory_bus: Export functions to ad-hoc map flash\n\nWe want to avoid `struct flashctx` during probing, hence need functions\nthat work without it.\n\nChange-Id: I65aa6bc8c563816ad69db11cc4065f5412aa463c\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/439\n"
    },
    {
      "commit": "10337f785ebd621b544d7f5929bb1050eb975431",
      "tree": "2efbd04d3f00fa7a71a46cd68e61ee5a142a4d1c",
      "parents": [
        "dd6e07ab3ab12346ab68f9e93f725d651a90964d"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Wed Mar 04 19:57:27 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Jun 28 09:29:37 2026 +0000"
      },
      "message": "memory_bus: Move related declarations into new `chipdrivers/memory_bus.h`\n\nChange-Id: I2bef65de77860d049ec3d9938ae777c5f929c258\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/438\n"
    },
    {
      "commit": "f3113acc7b51a1707764f90c0d423e79b59b7543",
      "tree": "4905c73004745c1c76d31f1b68db49b53b5d4ef0",
      "parents": [
        "4af02fe6355beb2ca7eac59a5c35856e1b4084d5"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Feb 21 12:50:19 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "edi: Turn edi_chip_probe() into a bus probing function\n\nLet our common bus-probing infrastructure handle the ID comparison.\nThis also makes the `flashchips\u0027 entry (KB9012) an actual chip entry\nthat carries its identification.\n\nChange-Id: I9533ece2b1337281ea70cb2e3be7a74353a4a758\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/424\n"
    },
    {
      "commit": "4af02fe6355beb2ca7eac59a5c35856e1b4084d5",
      "tree": "74632469db4c140b3a60a8b87a487a15607d5b19",
      "parents": [
        "a94ce1cf4713266d4d6f9e21c5048d70c3c21d51"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Feb 21 12:29:26 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "edi: Split preparation/finalization out of edi_probe_kb9012()\n\nThis turns edi_probe_kb9012() into a pure probing function. To avoid\nturning EDI off after probing, register edi_finish() only after full\npreparation.\n\nChange-Id: Icc342b8ab109d5621d8b65c79cecf71a44bea4bd\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/423\n"
    },
    {
      "commit": "6bd4f10ed9f24c1ac60f18598edef0b45b4885c3",
      "tree": "4e97539643c3599f8ff5577a462387f406dd9d99",
      "parents": [
        "2e0a0031139fe9aa4e7ad3259c6a864112b06f11"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 22 23:28:13 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "edi: Move EDI related things into new chipdrivers/edi.h\n\nChange-Id: I592449693647587b5817614b6c6cac07e8009a89\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/421\n"
    },
    {
      "commit": "2e0a0031139fe9aa4e7ad3259c6a864112b06f11",
      "tree": "453b9a47b06c404e7572945e6c23dc0aaa6c1c1c",
      "parents": [
        "b9e47cc321b4924e19d1a556462a8cd94361d1ea"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Mar 07 22:32:27 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "spi: Use bus probing for SFDP\n\nOnly probe for the SFDP signature and split the actual SFDP parsing\ninto a chip preparation function.\n\nChange-Id: I182d0a386bb2fd11951a1c9f2f965ce68ff57cf0\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/427\n"
    },
    {
      "commit": "b9e47cc321b4924e19d1a556462a8cd94361d1ea",
      "tree": "22676291abc0c0530863684f4f002f04038b4522",
      "parents": [
        "ac13873e102208d4a78d9c9e541a3eab29fbb1c6"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Feb 21 13:25:17 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "spi: Use bus probing for ST95 RDID\n\nAs the SPI instruction used for probing conflicts with AT45DB chips,\nlet it only run at priority `1\u0027, when no flash chip was detected.\n\nChange-Id: I61db0d6fa7be81d120bc84213c358498019dc52d\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/420\n"
    },
    {
      "commit": "ac13873e102208d4a78d9c9e541a3eab29fbb1c6",
      "tree": "2e55b347493cfd79f2c648726e1cefd57cf62fd9",
      "parents": [
        "64f53a1c9f5bd11b8b35cff757ac6d4aa37b0c59"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sat Feb 28 17:42:27 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "Introduce a priority for bus-probing functions\n\nWe want to stop probing once anything was detected by specific,\nhigh-priority probing functions. This can benefit, for example,\nthe probing of non-flash chips on the SPI bus. So far we didn\u0027t\nprobe for these automatically, because the probing commands can\nbe misunderstood by SPI flashes.\n\nWe\u0027ll invoke the probing functions in order of their priority,\nstarting with priority `0\u0027. Once any of them returns something\nthat doesn\u0027t look like continuous 0 or 1 bits,  we\u0027ll skip all\nprobing functions with less priority.\n\nChange-Id: Ibde3c348a2fb84b71c325a6c2719e9f2c8b5e784\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/418\n"
    },
    {
      "commit": "64f53a1c9f5bd11b8b35cff757ac6d4aa37b0c59",
      "tree": "d64e96af9998a13ba3e22eb1cce5a65d434b7be2",
      "parents": [
        "4312576b49dc77b53d5ebfa6686e3072c9368ea0"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 15 16:04:29 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "spi: Use bus probing for REMS, RES and AT25F\n\nChange-Id: Ic5d2a5283c5fb5e52c58c0b5937922371f56249f\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/417\n"
    },
    {
      "commit": "4312576b49dc77b53d5ebfa6686e3072c9368ea0",
      "tree": "5802bfef2623095f5fdccd98df15bdabac35f785",
      "parents": [
        "fbc41d2a932ede9c02aa7803472c31f39ec200f2"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon May 01 15:56:16 2023 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "spi: Use bus probing for RDID\n\nWe put 3 and 4 byte RDID into a single function. Only if we can\u0027t\nread 4 bytes, we try again with 3. There are no conflicts because\nthe only RDID4 manufacturer ID contains the 0x7f prefix, hence it\ncan\u0027t match any 3-byte ID.\n\nChange-Id: I5d35bc30255aae66da35d58431628512e50b39f0\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/74900\n"
    },
    {
      "commit": "fbc41d2a932ede9c02aa7803472c31f39ec200f2",
      "tree": "8b72b78abfd99bf8737b90cc2fece11f2dbe93d3",
      "parents": [
        "966dc9b776c2897d1245937639ab41fc834d7cb9"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Feb 22 23:04:01 2026 +0100"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "spi: Move SPI related things into new chipdrivers/spi.h\n\nA few things that rely heavily on `flash.h` are moved there instead:\n* function signatures containing `erasefunc_t`,\n* the inline default_wrsr_target() that needs to know struct flashctx.\n\nThis allows to keep the new header file free of a transitive `flash.h`\ninclude.\n\nChange-Id: Ib215821feeb822ea3fc11bf9f48c0328f9a394d4\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/416\n"
    },
    {
      "commit": "af9d738a66a885f19fdb0659455834f114d9d1e0",
      "tree": "e3596a537af16f3d9a0aee3dbe7bfc668fc5ce34",
      "parents": [
        "0069440fb0905b7ff3bf5184ffae34673be2e35d"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon May 01 13:33:26 2023 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 22 09:47:02 2026 +0000"
      },
      "message": "Add infrastructure to probe per bus\n\nAdd some infrastructure around per-bus probing functions.  Each function\nis provided a private parameter, e.g. the expected length of an ID. This\nwill allow us to implement probing functions that are only called as of-\nten as necessary. The results will be stored in the `registered_master`\nstructure, to be compared to database entries later.\n\nThe probe_buses() wrapper can be used for chip entries, and allows us to\ntransition the existing probing functions one by one. Once all functions\nhave been ported, probe_flash() can be adapted as well and the wrapper\nwill become obsolete.\n\nChange-Id: I6e82b6d61df50234096ac39acab58a4014203933\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/74899\n"
    },
    {
      "commit": "11136c210e382258a72df44ffe625260a6394a45",
      "tree": "376f66e9e7a826dcf13f833e90291db7663205a4",
      "parents": [
        "610c1aad71bfa118c4f49ac01761f586b8dede69"
      ],
      "author": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Mon May 01 12:00:09 2023 +0200"
      },
      "committer": {
        "name": "Nico Huber",
        "email": "nico.h@gmx.de",
        "time": "Sun Mar 15 14:27:20 2026 +0000"
      },
      "message": "flashchips: Add a type enum to the chip identification\n\nWe used to imply what kind of ID (e.g. RES, REMS, RDID) a chip entry\nprovides, based on the given probing function. This works well as long\nas we call the respective probing function for every single chip entry.\nWith our ever growing chip database, however, this slows probing signi-\nficantly down. Especially with external programmers with a long command\nround-trip.\n\nWith the type of identification information stored in the chip entries\nexplicitly, we\u0027ll be able to implement bus-specific probing functions.\nThese would be called only once and their results would be used to look\na matching chip up in the chip database. Instead of looking for every\npossible chip on the buses, we can turn it around and search for the\nactually present chips in the database.\n\nChange-Id: Ie658ebf58f21c8994b9b66f7683f9490e8d12267\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/74898\n"
    }
  ]
}
