)]}'
{
  "commit": "b98348bdd08dc4ec11828aa98a78edde15c53cfa",
  "tree": "a0b4618bf8ec436581f29080c32ddb07e7489bd0",
  "parents": [
    "b72540c30c9c8c2c3f17cae29962cfb50fbe166a"
  ],
  "author": {
    "name": "David Brownell",
    "email": "dbrownell@users.sourceforge.net",
    "time": "Mon Feb 04 22:28:28 2008 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@woody.linux-foundation.org",
    "time": "Tue Feb 05 09:44:13 2008 -0800"
  },
  "message": "gpiolib: avr32 at32ap platform support\n\nTeach AVR32 to use the \"GPIO Library\" when exposing its GPIOs, so that signals\non external chips (like GPIO expanders) can easily be used.\n\nThis mostly reorganizes some existing logic, with two minor changes in\nbehavior:\n\n - The PSR registers are used instead of the previous \"gpio_mask\" values,\n   matching AT91 behavior and removing some duplication between that role\n   and that of \"pinmux_mask\".\n\n - NR_IRQs grew to acommodate a bank of external GPIOs.  Eventually this\n   number should probably become a board-specific config option.\n\nThere\u0027s a debugfs dump of status for the built-in GPIOs, showing which pins\nhave deglitching, pullups, or open drain drive enabled, as well as the ID\nstring used when requesting each IRQ.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Eric Miao \u003ceric.miao@marvell.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Philipp Zabel \u003cphilipp.zabel@gmail.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ben Gardner \u003cbgardner@wabtec.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c816f29154c929be053fd48c6b48f98913779b30",
      "old_mode": 33188,
      "old_path": "arch/avr32/Kconfig",
      "new_id": "28e0caf4156ca68bb066d8300fd1947264e28037",
      "new_mode": 33188,
      "new_path": "arch/avr32/Kconfig"
    },
    {
      "type": "modify",
      "old_id": "d61a02da898cd68bd08316474ee2c2762dfd8036",
      "old_mode": 33188,
      "old_path": "arch/avr32/mach-at32ap/pio.c",
      "new_id": "38a8fa31c0b5c8de591ae8f39a08c2e90d2a862b",
      "new_mode": 33188,
      "new_path": "arch/avr32/mach-at32ap/pio.c"
    },
    {
      "type": "modify",
      "old_id": "50fa3aca32c58c23f471469e2def0c02767b2491",
      "old_mode": 33188,
      "old_path": "arch/avr32/mach-at32ap/pio.h",
      "new_id": "7795116a483af37707a66ae57c1f1da49e59a41a",
      "new_mode": 33188,
      "new_path": "arch/avr32/mach-at32ap/pio.h"
    },
    {
      "type": "modify",
      "old_id": "99684d6f39677fbb29a1a4481be58bc226d31204",
      "old_mode": 33188,
      "old_path": "include/asm-avr32/arch-at32ap/at32ap700x.h",
      "new_id": "31e48b0e732414aff872d901dd4c0f33a5f5b54d",
      "new_mode": 33188,
      "new_path": "include/asm-avr32/arch-at32ap/at32ap700x.h"
    },
    {
      "type": "modify",
      "old_id": "af7f9535bab32bcaf29a1d253756cfb3f7526142",
      "old_mode": 33188,
      "old_path": "include/asm-avr32/arch-at32ap/gpio.h",
      "new_id": "0180f584ef03d81cc432197e4a23f29eecc2f873",
      "new_mode": 33188,
      "new_path": "include/asm-avr32/arch-at32ap/gpio.h"
    },
    {
      "type": "modify",
      "old_id": "5adffab9a577948bd3ed0d74b3a953838d118df9",
      "old_mode": 33188,
      "old_path": "include/asm-avr32/arch-at32ap/irq.h",
      "new_id": "608e350368c7c7ea58c74dcb2a924c46f9bb8834",
      "new_mode": 33188,
      "new_path": "include/asm-avr32/arch-at32ap/irq.h"
    }
  ]
}
