)]}'
{
  "commit": "1e14639f4268c21a9200fe45a8c8235472cde1c2",
  "tree": "522d54a0740bb86c1e3307823a09c37098dfe667",
  "parents": [
    "c93f5f123239121fdeba03c02f9e448ed97c52a4"
  ],
  "author": {
    "name": "Stefan Tauner",
    "email": "stefan.tauner@alumni.tuwien.ac.at",
    "time": "Thu Sep 15 23:52:55 2011 +0000"
  },
  "committer": {
    "name": "Stefan Tauner",
    "email": "stefan.tauner@alumni.tuwien.ac.at",
    "time": "Thu Sep 15 23:52:55 2011 +0000"
  },
  "message": "ichspi: add ICH/PCH flash descriptor decoding via FDOC/FDOD\n\nBased on the work of Matthias \u0027mazzoo\u0027 Wenzel this patch adds pretty\nprinting of those ICH/PCH flash descriptor sections that are\ncached/mapped by the chipset (and which are therefore reachable via\nFDOC/FDOD registers).\n\nthis includes the following:\n- content section:\n    describes the image and some generic properties (number of\n    sections, offset of sections, PCH/ICH and MCH/PROC strap\n    offsets and lengths)\n- component section:\n    identify the different SPI flash chips and their capabilities.\n- region section\n    similarly to a partition table this describes the different regions.\n    the content of FLREG* is derived from this section.\n- master section\n    defines SPI master (host, ME, GbE) access rights of the\n    individual regions. the content of PR* is derived from this section.\n\nthis is only a part of the data included in the descriptor. other\ninformation can be retrieved from a complete binary dump of the\ndescriptor region only.\n\nthis patch also adds macros and pretty printing for \"Vendor Specific\nComponent Capabilities\" registers: there are two of them: lower and\nupper. they describe the properties of the address space divided by\nFPBA (which allows to use multiple flash chips or partitions with\ndifferent properties). the properties of all supported flash chips\n(together with their RDIDs) are stored in the same format in table\nin a descriptor section (which is used by the ME apparently). a\nlater patch will use the macros outside of ichspi.c which is the\nreason why the prettyprinting function and the register bit macros\nare not defined in ichspi.c but ich_descriptors.h (else they would\nbe moved in the follow-up patch).\n\nbecause this patch relies on (compiler) implementation-specific\nlayouting of bit-fields, it checks for correct layout before taking\nany action on runtime.\n\nCorresponding to flashrom svn r1443.\n\nSigned-off-by: Stefan Tauner \u003cstefan.tauner@alumni.tuwien.ac.at\u003e\nAcked-by: Carl-Daniel Hailfinger \u003cc-d.hailfinger.devel.2006@gmx.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6407e6b4ca48dc88fa3b99401d70e5c5893f4104",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "4a8dc2c754b8251bc5ca7a6e1f372c2e51dccd39",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "da1326ee4fc6e899d58d84e18e86b27570bafb22",
      "new_mode": 33188,
      "new_path": "ich_descriptors.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "886fc7cf9ae506e881fdc0406c7579503d5c18f8",
      "new_mode": 33188,
      "new_path": "ich_descriptors.h"
    },
    {
      "type": "modify",
      "old_id": "8b4210ee3fcddbcf0eeeaad7445c22f3b899d07c",
      "old_mode": 33188,
      "old_path": "ichspi.c",
      "new_id": "3bc43f5e1f2c15da16d338ac7d46ffab54c7c377",
      "new_mode": 33188,
      "new_path": "ichspi.c"
    }
  ]
}
