)]}'
{
  "commit": "d1c6314887c4d6712f7bd9ba7428b6517e7732e0",
  "tree": "a9024f1d034b79cf87dba9d49037e3b7543a9920",
  "parents": [
    "05a22ba096fb996bb69ab020a8d08aafac2c28ba"
  ],
  "author": {
    "name": "David Gibson",
    "email": "david@gibson.dropbear.id.au",
    "time": "Tue Mar 09 17:39:14 2010 +1100"
  },
  "committer": {
    "name": "Gerald Van Baren",
    "email": "gvb@unssw.com",
    "time": "Thu Jul 14 21:10:34 2011 -0400"
  },
  "message": "libfdt: Implement property iteration functions\n\nFor ages, we\u0027ve been talking about adding functions to libfdt to allow\niteration through properties.  So, finally, here are some.\n\nI got bogged down on this for a long time because I didn\u0027t want to\nexpose offsets directly to properties to the callers.  But without\nthat, attempting to make reasonable iteration functions just became\nhorrible.  So eventually, I settled on an interface which does now\nexpose property offsets.  fdt_first_property_offset() and\nfdt_next_property_offset() are used to step through the offsets of the\nproperties starting from a particularly node offset.  The details of\nthe property at each offset can then be retrieved with either\nfdt_get_property_by_offset() or fdt_getprop_by_offset() which have\ninterfaces similar to fdt_get_property() and fdt_getprop()\nrespectively.\n\nNo explicit testcases are included, but we do use the new functions to\nreimplement the existing fdt_get_property() function.\n\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\n\nThis was extracted from the DTC commit:\n73dca9ae0b9abe6924ba640164ecce9f8df69c5a Mon Sep 17 00:00:00 2001\n\nSigned-off-by: Gerald Van Baren \u003cvanbaren@cideas.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d23d40e07b14cc93761ca3c8c2a2b19316e3d97c",
      "old_mode": 33188,
      "old_path": "include/libfdt.h",
      "new_id": "de82ed5ffdf7f4d98049fbe60f544de96a1f0f40",
      "new_mode": 33188,
      "new_path": "include/libfdt.h"
    },
    {
      "type": "modify",
      "old_id": "b09ea6f04d0a04abd14d32ab82da329783432b6e",
      "old_mode": 33188,
      "old_path": "lib/libfdt/fdt.c",
      "new_id": "4157b21efda2eb11585a0e1bf08d94cd8e754a24",
      "new_mode": 33188,
      "new_path": "lib/libfdt/fdt.c"
    },
    {
      "type": "modify",
      "old_id": "91a354e108a3496f9b54fa34ea8149f82371e6b9",
      "old_mode": 33188,
      "old_path": "lib/libfdt/fdt_ro.c",
      "new_id": "1933010fd8f170a020ee1ab7cffd282ce2ff00d2",
      "new_mode": 33188,
      "new_path": "lib/libfdt/fdt_ro.c"
    },
    {
      "type": "modify",
      "old_id": "d2dcbd65ee3039dab5f94fb1c15b0e6e915f0e03",
      "old_mode": 33188,
      "old_path": "lib/libfdt/libfdt_internal.h",
      "new_id": "381133ba81df7d02c375d7a1462d650136abd6d1",
      "new_mode": 33188,
      "new_path": "lib/libfdt/libfdt_internal.h"
    }
  ]
}
