)]}'
{
  "commit": "4abd844d8eb108736e1cf8fbf3dbf61f2d5fc11b",
  "tree": "f588abd874ccf7b01f422c62644652fb86f930c2",
  "parents": [
    "6fe2946f198481254a6ee9600d7456b8316a4083"
  ],
  "author": {
    "name": "Andy Fleming",
    "email": "afleming@freescale.com",
    "time": "Mon Mar 31 20:45:56 2008 -0500"
  },
  "committer": {
    "name": "Gerald Van Baren",
    "email": "vanbaren@cideas.com",
    "time": "Wed Apr 02 11:07:15 2008 -0400"
  },
  "message": "Fix fdt set command to conform to dts spec\n\nThe fdt set command was treating properties specified as \u003c00\u003e and \u003c0011\u003e\nas byte streams, rather than as an array of cells.  As we already have\nsyntax for expressing the desire for a stream of bytes ([ xx xx ...]),\nwe should use the \u003c\u003e syntax to describe arrays of cells, which are always\n32-bits per element.  If we imagine this likely (IMHO) scenario:\n\n\u003e fdt set /ethernet-phy@1 reg \u003c1\u003e\n\nWith the old code, this would create a bad fdt, since the reg cell would be\nmade to be one byte in length.  But the cell must be 4 bytes, so this would\nbreak mysteriously.\n\nAlso, the dts spec calls for constants inside the angle brackets (\u003c\u003e)\nto conform to C constant standards as they pertain to base.\nTake this scenario:\n\n\u003e fdt set /ethernet@f00 reg \u003c0xe250000\\ 0x1000\u003e\n\nThe old fdt command would complain that it couldn\u0027t parse that.  Or, if you\nwanted to specify that a certain clock ran at 33 MHz, you\u0027d be required to\ndo this:\n\n\u003e fdt set /mydev clock \u003c1f78a40\u003e\n\nWhereas the new code will accept decimal numbers.\n\nWhile I was in there, I extended the fdt command parser to handle property\nstrings which are split across multiple arguments:\n\n\u003e fdt set /ethernet@f00 interrupts \u003c 33 2 34 2 36 2 \u003e\n\u003e fdt p /ethernet@f00\nethernet@f00 {\n\tinterrupts \u003d \u003c0x21 0x2 0x22 0x2 0x24 0x2\u003e;\n};\n\nLastly, the fdt print code was rearranged slightly to print arrays of cells\nif the length of the property is a multiple of 4 bytes, and to not print\nleading zeros.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a52284e2fee798d2c71d6bf78199fd5a76cc4b4c",
      "old_mode": 33188,
      "old_path": "common/cmd_fdt.c",
      "new_id": "7436a95153c378004acb68e9e1d759e0dd91d254",
      "new_mode": 33188,
      "new_path": "common/cmd_fdt.c"
    }
  ]
}
