)]}'
{
  "commit": "168a3dacbe5c54b676fe6f3aa2a83541b7bb9122",
  "tree": "2ae1ca0df1c78d7705d91b7b76e2e0e64b27c32d",
  "parents": [
    "51cec356b99dbe0f4bd2d1d3e54611ded296eb18"
  ],
  "author": {
    "name": "Jes B. Klinke",
    "email": "jbk@chromium.org",
    "time": "Fri Feb 10 23:06:40 2023 -0800"
  },
  "committer": {
    "name": "cfrantz",
    "email": "frantzcj+github@gmail.com",
    "time": "Thu Mar 09 13:25:12 2023 -0800"
  },
  "message": "[opentitantool] Eeprom primitives in Spi trait\n\nThis PR introduces a new method on the spi::Target trait, for doing SPI\ntransactions following the EEPROM format, that is, consisting of a few\nbytes of command/address, followed by a chuck of data to be either read\nor written, optionally followed by repeated polling a status bit, to see\nif the operation is complete.\n\nA default implementation of the new method is provided for transport\nbackends which support generic SPI read/write transactions, in effect\nmoving part of the code from the existing SpiFlash struct into the\nspi::Target trait.\n\nGoing forward, transports that do not implement generic SPI\ntransactions, but supports only EEPROM/Flash-style protocol, can provide\ntheir own implementation of the new trait method, and leave the existing\ngeneric Spi transaction method either unimplemented, or severely\nrestricted.\n\nSigned-off-by: Jes B. Klinke \u003cjbk@chromium.org\u003e\nChange-Id: Ibc33c37e7200eccdea2b2b5a370b4cd924c50bdd\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4620172169d1855cc8db2a7e15c4fb6747ebdec2",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/BUILD",
      "new_id": "d7ab74aece3a15837f0a04118e6ba7b7bea76795",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/BUILD"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "39c926352aad88414e75b520217f4e47440ff1f4",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/io/eeprom.rs"
    },
    {
      "type": "modify",
      "old_id": "b987a971af98f9b0f185e8489152e30faf3e69d2",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/io/mod.rs",
      "new_id": "b52129d960042293e477b519d7f6774884661078",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/io/mod.rs"
    },
    {
      "type": "modify",
      "old_id": "44ed19ecd2dcdd0eafdf01c449e43c6baaaa9d95",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/io/spi.rs",
      "new_id": "e669ac474a2355e5e380e06325588484288079cc",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/io/spi.rs"
    },
    {
      "type": "modify",
      "old_id": "1f1ff08f0e3170109efcaa7c0bd0651ffee299e1",
      "old_mode": 33188,
      "old_path": "sw/host/opentitanlib/src/spiflash/flash.rs",
      "new_id": "e8bad7e8b2a8b07b652b0c29dea685753720779b",
      "new_mode": 33188,
      "new_path": "sw/host/opentitanlib/src/spiflash/flash.rs"
    }
  ]
}
