)]}'
{
  "commit": "454f61338213f73ca74fda54c0bf86afb01947de",
  "tree": "5c981a1a181c130467d3c37b99cdeaf686ff49c8",
  "parents": [
    "7af0e79b44bdc86497a992a90855f284e74d73f1"
  ],
  "author": {
    "name": "Nico Huber",
    "email": "nico.huber@secunet.com",
    "time": "Mon Dec 10 13:34:10 2012 +0000"
  },
  "committer": {
    "name": "David Hendricks",
    "email": "david.hendricks@gmail.com",
    "time": "Sat Jun 03 20:13:06 2017 +0200"
  },
  "message": "Add a convenient libflashrom interface\n\nThis adds a minimal libflashrom interface based on the draft in the\nwiki. While the glue code in libflashrom.c is build on top of the\nexisting code instead on overhauling it, the interface in libflashrom.h\nis supposed to be stable. So we can keep the interface and adapt\ninternals later if favoured, without breaking clients.\n\nA new make target, libinstall, is also added. It installs libflashrom.a\nand libflashrom.h in lib/ and include/ dirs respectively.\n\nHooking this into the build would break linking of the CLI and is post-\nponed until that got fixed.\n\nv2: Rebase and fixes by Anton Kochkov.\n\nv3: o fl_image_*() rewritten with layout support (touch only included regions).\n    o Moved read/erase/write/verify operations to flashrom.c.\n    o Added layout pointer and flags to the flash context.\n\nv4: Removed libflashrom.o from LIB_OBJS until CLI is adapted.\n\nv5: o Incorporated David\u0027s comments.\n    o Added `fl_flashprog_t` as dummy parameter to hide the fact that\n      we have global state all around, and for future-proofness ofc.\n\nv6: o Change namespace prefix to flashrom_.\n    o Remove typedefs.\n\nChange-Id: I00f169990830aa17b7dfae5eb74010d40c476181\nSigned-off-by: Nico Huber \u003cnico.huber@secunet.com\u003e\nReviewed-on: https://review.coreboot.org/17946\nTested-by: build bot (Jenkins) \u003cno-reply@coreboot.org\u003e\nReviewed-by: David Hendricks \u003cdavid.hendricks@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4ebde1efbe3fce9569ff061feadc12126b9a6c92",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "88130c8120c68e92bcb02dd3b16162494fabbc32",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "modify",
      "old_id": "b383edaf3986dea1fb8c90c1ed28cfacedabe85d",
      "old_mode": 33188,
      "old_path": "flash.h",
      "new_id": "1da7e4121b96843b66299f6f213f60554a5e5305",
      "new_mode": 33188,
      "new_path": "flash.h"
    },
    {
      "type": "modify",
      "old_id": "273eb9971bb559f37e9730eec4dd4e01cc1d7d21",
      "old_mode": 33188,
      "old_path": "flashrom.c",
      "new_id": "3be3d3214e2d157ae9cab714bdf27415d779eef7",
      "new_mode": 33188,
      "new_path": "flashrom.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5447bae9e13ebc579abe503bdcecb1a4d44adc66",
      "new_mode": 33188,
      "new_path": "libflashrom.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "42b02f9fa66f9bfb31de7017fc10d07f6b965544",
      "new_mode": 33188,
      "new_path": "libflashrom.h"
    }
  ]
}
