)]}'
{
  "commit": "735b186eeffb997a957075d7e610b9700b53cbe1",
  "tree": "1e27f0dc7f2cae492459530df208859221a1d3ca",
  "parents": [
    "197b7c7b03bc2bbfa6a706812fa69897a3eb7cdb"
  ],
  "author": {
    "name": "Nico Huber",
    "email": "nico.h@gmx.de",
    "time": "Sun Jan 29 18:28:45 2023 +0000"
  },
  "committer": {
    "name": "Nico Huber",
    "email": "nico.h@gmx.de",
    "time": "Tue Feb 28 23:42:48 2023 +0000"
  },
  "message": "amd_spi100: Add new driver for AMD SPI100 controllers\n\nStart with a very simple PIO driver. Reads are slow this way, but\nwe can optimize that later. A factor of 2 is possible simply by\naligning the FIFO reads, and another factor of 3 (at least) with\nmemory-mapped reads.\n\nWe override the SPI speed but choose a conservative value to be\non the safe side. Flashrom only supports normal read commands,\nhence we won\u0027t go over 33MHz. Also, if the firmware set a lower\nspeed for normal reads, we use that. We can\u0027t use dual/quad I/O\nwith the SPI command engine, and tests have shown that increasing\nthe SPI speed lifts the read speed only marginally. It seems to\nbe limited by the FIFO reads.\n\nChange-Id: I403d5f103b3ae72f3a91829d562984c54c2e2d00\nSigned-off-by: Nico Huber \u003cnico.h@gmx.de\u003e\nReviewed-on: https://review.coreboot.org/c/flashrom-stable/+/72577\nReviewed-by: Arthur Heymans \u003carthur@aheymans.xyz\u003e\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9b853b4ecb52b6f83484986cceef5e76bb10e03c",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "bcf795b1dfc9c0cac6ce2452b0bf4b506b6d5d28",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f8af0de54c43b4e0f67e043e5d744a52a4d0cc43",
      "new_mode": 33188,
      "new_path": "amd_spi100.c"
    },
    {
      "type": "modify",
      "old_id": "2b9a2cf2322c605c5f34950a5d8f22cf0bb706ad",
      "old_mode": 33188,
      "old_path": "chipset_enable.c",
      "new_id": "7728cb9c4196857c812138589e49639ca8dbfc73",
      "new_mode": 33188,
      "new_path": "chipset_enable.c"
    },
    {
      "type": "modify",
      "old_id": "2735467df85b8815ad2f4734a4a7b5ae956b03e4",
      "old_mode": 33188,
      "old_path": "include/programmer.h",
      "new_id": "9f33e231fc8db18587e57bd62811f952220b9885",
      "new_mode": 33188,
      "new_path": "include/programmer.h"
    },
    {
      "type": "modify",
      "old_id": "dc99d52b5c8c3a7994ae9199c8dd9f237e8b03a2",
      "old_mode": 33188,
      "old_path": "meson.build",
      "new_id": "cd98e5b519210c30e704423e787aa2bee78bc7e6",
      "new_mode": 33188,
      "new_path": "meson.build"
    }
  ]
}
