)]}'
{
  "commit": "1f693db7ecb074c42172a3914ed63f4e08de7560",
  "tree": "a76bbbbd7bed2281f677bef1b2e3ce957e63ecb1",
  "parents": [
    "85c2cf81ffae0d1ef65d25652dd5422162d38187"
  ],
  "author": {
    "name": "Nico Huber",
    "email": "nico.h@gmx.de",
    "time": "Sat Feb 11 18:28:33 2023 +0100"
  },
  "committer": {
    "name": "Nico Huber",
    "email": "nico.h@gmx.de",
    "time": "Sun Nov 03 17:54:48 2024 +0000"
  },
  "message": "cli: Add new `config\u0027 CLI for status/config registers\n\nAdd a new CLI mode to query and update status and configuration\nregisters of SPI NOR chips.  Programmer initialization and chip\ninitialization works the same as with the classic CLI (`-p\u0027 and\n`-c\u0027 options). There are two commands `get\u0027 and `set\u0027 where the\nformer is implied if no command is given. For a start, only the\n`quad-enable\u0027 bit can be accessed  (for chips that advertise it\nin the database).\n\nThe `--temporary\u0027 option  allows to use a volatile write status\nregister command if the flash chip supports it. So changes made\nwith this option will not be written to flash and are lost when\nthe chip is reset.\n\nFor instance, the quad-enable bit can then be queried like this\n\n  $ flashprog config get -p ch341a_spi quad-enable\n\nor written with\n\n  $ flashprog config set -p ch341a_spi quad-enable 1\n\nor\n\n  $ flashprog config set -p ch341a_spi --temporary quad-enable 1\n\nChange-Id: I6b9d26c67e6ad65be5df367d2db7942bb98f27ac\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.sourcearcade.org/c/flashprog/+/195\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a75c280c531d66e5bed9931a6cef382712adc0c3",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "65b808b531d07c149d3f43f583dd100eef718741",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "modify",
      "old_id": "7bf94cc1028157d25b3364cd6f2f82206cdd7593",
      "old_mode": 33188,
      "old_path": "cli.c",
      "new_id": "f1d483ae72cc018007fc34ce8b0d43ecb87978e4",
      "new_mode": 33188,
      "new_path": "cli.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3ffa04872714d6014879c095424df5cf6f9c6db7",
      "new_mode": 33188,
      "new_path": "cli_config.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9fcb1ad3464a165e690791b65691a829d6d4f306",
      "new_mode": 33188,
      "new_path": "flashprog-config.8.tmpl"
    },
    {
      "type": "modify",
      "old_id": "54daef109924bec34ccc816e37cb362350026c2f",
      "old_mode": 33188,
      "old_path": "flashprog.8.tmpl",
      "new_id": "d9a59f9a86e79ef565bf8a29dd35d3746928644e",
      "new_mode": 33188,
      "new_path": "flashprog.8.tmpl"
    },
    {
      "type": "modify",
      "old_id": "06cd517391d6d2452548286281ed09e72ac223e3",
      "old_mode": 33188,
      "old_path": "include/cli.h",
      "new_id": "69b01466dfa78a692b412146d7ab9aa3934ae5c5",
      "new_mode": 33188,
      "new_path": "include/cli.h"
    },
    {
      "type": "modify",
      "old_id": "f308ec606e8ddc88dfd5fbc100188c2154df1c6f",
      "old_mode": 33188,
      "old_path": "meson.build",
      "new_id": "7a3d35c00a8bdd15c3e93e1978ec7d973242bb89",
      "new_mode": 33188,
      "new_path": "meson.build"
    }
  ]
}
