)]}'
{
  "commit": "55a06064339d9dd82f56f3c7263a5c29aea17714",
  "tree": "868c5fe2f3a761dabf0408c7dec235ca8514349b",
  "parents": [
    "61a5f64e7091517f79abe600a38b556a52b0556d"
  ],
  "author": {
    "name": "Karthikeyan Ramasubramanian",
    "email": "kramasub@google.com",
    "time": "Tue Jul 07 04:38:49 2026"
  },
  "committer": {
    "name": "chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Jul 08 21:02:50 2026"
  },
  "message": "firmweaver: Introduce GPIO tool for AP firmware config\n\nIntroduce the GPIO tool in ap_fw directory. This tool parses a GPIO\nmap CSV file (typically generated from a hardware spreadsheet) and\ngenerates C configuration code for different SoCs.\n\nCurrently supports Intel SoCs, with placeholder support for Qualcomm\nand MediaTek SoCs.\n\nThe Intel-specific logic is organized in intel_gpio_config.go, while\nthe main entry point and generic logic are in gpio_tool.go.\n\nInclude a Go module definition for building the tool, and update\nREADME.md with instructions.\nAlso include test data and expected output for verification.\n\nBUG\u003db:475292981, b:475293394\nTEST\u003dBuild the tool and run against the provided test CSV:\n./ap_fw/gpio_tool --soc intel --csv ap_fw/test/ExampleGpio.csv \\\n  --output /tmp/test.c\nVerify the output matches the expected ap_fw/test/gpio_config.c.\n\nChange-Id: Iafaa8f74510cdab0b6213c393350138f7fdbc7f2\nReviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/firmweaver/+/8051010\nCommit-Queue: Karthik Ramasubramanian \u003ckramasub@google.com\u003e\nTested-by: Karthik Ramasubramanian \u003ckramasub@google.com\u003e\nReviewed-by: Kshitij Shah \u003ctij@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5f044643004cf6387032e6d35082973800bf8b4c",
      "new_mode": 33188,
      "new_path": "LICENSE"
    },
    {
      "type": "modify",
      "old_id": "f24b6712cfea98a91605289c1bcf7f41f9f4c0fc",
      "old_mode": 33188,
      "old_path": "README.md",
      "new_id": "7e35dd2b1afbd1d4a0dcd3bc8bd99730bc36ee8b",
      "new_mode": 33188,
      "new_path": "README.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fe80d3ba331207e5a1c0d5b58d642c8377bafe39",
      "new_mode": 33188,
      "new_path": "ap_fw/go.mod"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f9f559708ce2c23ad2b8fcf63166d67919441bad",
      "new_mode": 33188,
      "new_path": "ap_fw/gpio_tool.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "936f1c2823319183fe50b678fd3930f9b1130d52",
      "new_mode": 33188,
      "new_path": "ap_fw/intel_gpio_config.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bdc557c7935c98ea47a40b014603701c7825a11b",
      "new_mode": 33188,
      "new_path": "ap_fw/test/ExampleGpio.csv"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2733801cb1dcfdb39357ea4f54c0b02579b208ef",
      "new_mode": 33188,
      "new_path": "ap_fw/test/gpio_config.c"
    }
  ]
}
