)]}'
{
  "commit": "197b7c7b03bc2bbfa6a706812fa69897a3eb7cdb",
  "tree": "bf6b57efe06c818f4dbec5d54466930930fa52c0",
  "parents": [
    "dafd51e22b30b7e13e79567c065e55d30c788fa2"
  ],
  "author": {
    "name": "Nicholas Chin",
    "email": "nic.c3.14@gmail.com",
    "time": "Sun Oct 23 13:10:31 2022 -0600"
  },
  "committer": {
    "name": "Nico Huber",
    "email": "nico.h@gmx.de",
    "time": "Sat Feb 25 00:42:12 2023 +0000"
  },
  "message": "ch347_spi: Add initial support for the WCH CH347\n\nAdd support for the WCH CH347, a high-speed USB to bus converter\nsupporting multiple protocols interfaces including SPI. Currently only\nmode 1 (vendor defined communication interface) is supported, mode 2\n(USB HID communication interface) support will be added later. The code\nis currently hard coded to use CS1 and a SPI clock of 15 MHz, though\nthere are 2 CS lines and 6 other GPIO lines available, as well as a\nconfigurable clock divisor for up to 60MHz operation. Support for these\nwill be exposed through programmer parameters in later commits.\n\nThis currently uses the synchronous libusb API. Performance seems to be\nalright so far, if it becomes an issue I may switch to the asynchronous\nAPI.\n\nTested with a MX25L1606E flash chip\n\nSigned-off-by: Nicholas Chin \u003cnic.c3.14@gmail.com\u003e\nChange-Id: I31b86c41076cc45d4a416a73fa1131350fb745ba\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/73106\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: Nico Huber \u003cnico.h@gmx.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d0f53bbad13525a31de24d432d50498b6dbcbf91",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "9b853b4ecb52b6f83484986cceef5e76bb10e03c",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "55e08b9a490724c7f69607f69277e2984a322c0b",
      "new_mode": 33188,
      "new_path": "ch347_spi.c"
    },
    {
      "type": "modify",
      "old_id": "3a11f89139ca7eb8173a0e99c073f87beb416b60",
      "old_mode": 33188,
      "old_path": "flashrom.8.tmpl",
      "new_id": "db2edb1372b37eff55a0d4858dcfcc191cc32e3f",
      "new_mode": 33188,
      "new_path": "flashrom.8.tmpl"
    },
    {
      "type": "modify",
      "old_id": "bbdbffba4b8023ebc50e06658da3eabffa51e528",
      "old_mode": 33188,
      "old_path": "include/programmer.h",
      "new_id": "2735467df85b8815ad2f4734a4a7b5ae956b03e4",
      "new_mode": 33188,
      "new_path": "include/programmer.h"
    },
    {
      "type": "modify",
      "old_id": "8d7228b7849a4c473a2dfbaa28bb70565a21a075",
      "old_mode": 33188,
      "old_path": "meson.build",
      "new_id": "dc99d52b5c8c3a7994ae9199c8dd9f237e8b03a2",
      "new_mode": 33188,
      "new_path": "meson.build"
    },
    {
      "type": "modify",
      "old_id": "d366a0c0df2d944455c3739edcb31993bee130c3",
      "old_mode": 33188,
      "old_path": "meson_options.txt",
      "new_id": "2d7f5a6620843b72562e0cb4d1b316778b8482a9",
      "new_mode": 33188,
      "new_path": "meson_options.txt"
    },
    {
      "type": "modify",
      "old_id": "4c1ea5d7a0e92ef8fe1657efbf9cd13ef7e6179f",
      "old_mode": 33188,
      "old_path": "programmer_table.c",
      "new_id": "7df088c65c4148798fc577da5d494b27fc522503",
      "new_mode": 33188,
      "new_path": "programmer_table.c"
    }
  ]
}
