)]}'
{
  "log": [
    {
      "commit": "72e58063d63c5f0a7bf65312f1e3a5ed9bb5c2ff",
      "tree": "df5c21244d46aacef47e6b7fff3ad02c3612b15c",
      "parents": [
        "57c155d51e2f3d7411eeac5e7fd7634d2d1f6b4f",
        "489e176c71f36654dcb8835926f7e5717b8b4c19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 10:59:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 10:59:31 2010 -0700"
      },
      "message": "Merge branch \u0027davinci-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci\n\n* \u0027davinci-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci: (50 commits)\n  davinci: fix remaining board support after io_pgoffst removal\n  davinci: mityomapl138: make file local data static\n  arm/davinci: remove duplicated include\n  davinci: Initial support for Omapl138-Hawkboard\n  davinci: MityDSP-L138/MityARM-1808 read MAC address from I2C Prom\n  davinci: add tnetv107x touchscreen platform device\n  input: add driver for tnetv107x touchscreen controller\n  davinci: add keypad config for tnetv107x evm board\n  davinci: add tnetv107x keypad platform device\n  input: add driver for tnetv107x on-chip keypad controller\n  net: davinci_emac: cleanup unused cpdma code\n  net: davinci_emac: switch to new cpdma layer\n  net: davinci_emac: separate out cpdma code\n  net: davinci_emac: cleanup unused mdio emac code\n  omap: cleanup unused davinci mdio arch code\n  davinci: cleanup mdio arch code and switch to phy_id\n  net: davinci_emac: switch to new mdio\n  omap: add mdio platform devices\n  davinci: add mdio platform devices\n  net: davinci_emac: separate out davinci mdio\n  ...\n\nFix up trivial conflict in drivers/input/keyboard/Kconfig (two entries\nadded next to each other - one from the davinci merge, one from the\ninput merge)\n"
    },
    {
      "commit": "33081adf8b89d5a716d7e1c60171768d39795b39",
      "tree": "275de58bbbb5f7ddffcdc087844cfc7fbe4315be",
      "parents": [
        "c55960499f810357a29659b32d6ea594abee9237",
        "506ecbca71d07fa327dd986be1682e90885678ee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 08:32:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 08:32:05 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (365 commits)\n  ALSA: hda - Disable sticky PCM stream assignment for AD codecs\n  ALSA: usb - Creative USB X-Fi volume knob support\n  ALSA: ca0106: Use card specific dac id for mute controls.\n  ALSA: ca0106: Allow different sound cards to use different SPI channel mappings.\n  ALSA: ca0106: Create a nice spot for mapping channels to dacs.\n  ALSA: ca0106: Move enabling of front dac out of hardcoded setup sequence.\n  ALSA: ca0106: Pull out dac powering routine into separate function.\n  ALSA: ca0106 - add Sound Blaster 5.1vx info.\n  ASoC: tlv320dac33: Use usleep_range for delays\n  ALSA: usb-audio: add Novation Launchpad support\n  ALSA: hda - Add workarounds for CT-IBG controllers\n  ALSA: hda - Fix wrong TLV mute bit for STAC/IDT codecs\n  ASoC: tpa6130a2: Error handling for broken chip\n  ASoC: max98088: Staticise m98088_eq_band\n  ASoC: soc-core: Fix codec-\u003ename memory leak\n  ALSA: hda - Apply ideapad quirk to Acer laptops with Cxt5066\n  ALSA: hda - Add some workarounds for Creative IBG\n  ALSA: hda - Fix wrong SPDIF NID assignment for CA0110\n  ALSA: hda - Fix codec rename rules for ALC662-compatible codecs\n  ALSA: hda - Add alc_init_jacks() call to other codecs\n  ...\n"
    },
    {
      "commit": "3a99c6319064af3f2e18eb929f638d555dbf7a62",
      "tree": "e611927f41142123dc8efed7e07a3a91151edb01",
      "parents": [
        "1dfd166e93f98892aa4427069a23ed73259983c8",
        "49327ad2bbbaf1945d5ba431522201574219d150"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 07:59:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 07:59:01 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (75 commits)\n  Input: wacom - specify Cinitq supported tools\n  Input: ab8500-ponkey - fix IRQ freeing in error path\n  Input: adp5588-keys - use more obvious i2c_device_id name string\n  Input: ad7877 - switch to using threaded IRQ\n  Input: ad7877 - use attribute group to control visibility of attributes\n  Input: serio - add support for PS2Mult multiplexer protocol\n  Input: wacom - properly enable runtime PM\n  Input: ad7877 - filter events where pressure is beyond the maximum\n  Input: ad7877 - implement EV_KEY:BTN_TOUCH reporting\n  Input: ad7877 - implement specified chip select behavior\n  Input: hp680_ts_input - use cancel_delayed_work_sync()\n  Input: mousedev - correct lockdep annotation\n  Input: ads7846 - switch to using threaded IRQ\n  Input: serio - support multiple child devices per single parent\n  Input: synaptics - simplify pass-through port handling\n  Input: add ROHM BU21013 touch panel controller support\n  Input: omap4-keypad - wake-up on events \u0026 long presses\n  Input: omap4-keypad - fix interrupt line configuration\n  Input: omap4-keypad - SYSCONFIG register configuration\n  Input: omap4-keypad - use platform device helpers\n  ...\n"
    },
    {
      "commit": "aa5c14d5c0d3e4c587db4a1b220b9c86415c538f",
      "tree": "0114637e8be2b38176e7e91e6cea3501b22cb66a",
      "parents": [
        "79fc84c7e0d2fe89c4e82f3a26fd8b0d13c31703",
        "b11bdb5254ff17cb63e4ae5088b73fdcd2cc2602"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Oct 25 10:00:30 2010 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Oct 25 10:00:30 2010 +0200"
      },
      "message": "Merge branch \u0027topic/asoc\u0027 into for-linus\n\nConflicts:\n\tarch/powerpc/platforms/85xx/p1022_ds.c\n"
    },
    {
      "commit": "49327ad2bbbaf1945d5ba431522201574219d150",
      "tree": "47beb374d0cfb77d401220f20e8cece4ce4469db",
      "parents": [
        "f9ce6eb5b6fa8cbcf0a0fb7c5f4203f94730fc52",
        "6521d0bf984ab1cc25795d312e21c438aea8b5d5"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 24 22:11:17 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 24 22:11:17 2010 -0700"
      },
      "message": "Merge branch \u0027next\u0027 into for-linus\n"
    },
    {
      "commit": "6521d0bf984ab1cc25795d312e21c438aea8b5d5",
      "tree": "10446ddcacfa3abcfebdb8ed6d27c5f30b700a2a",
      "parents": [
        "c5fb514d2f0496ce58caed63bceb05fac40324b3"
      ],
      "author": {
        "name": "Ping Cheng",
        "email": "pingc@wacom.com",
        "time": "Sun Oct 24 21:53:40 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 24 21:56:32 2010 -0700"
      },
      "message": "Input: wacom - specify Cinitq supported tools\n\nCintiq, being a display tablet, doesn\u0027t have mouse and associated BTN_s.\nMake sure we do not specify them when registering Cintiq\u0027s input device\nso that userland can retrieve the exact tool set the device supports.\n\nSigned-off-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "c5fb514d2f0496ce58caed63bceb05fac40324b3",
      "tree": "d9ec96f5ca039078349b286cf5325a61c40819e7",
      "parents": [
        "d537155a09cd69f309fa31fc8bcc7a4b1d5a9f6c"
      ],
      "author": {
        "name": "Nicolas Kaiser",
        "email": "nikai@nikai.net",
        "time": "Sun Oct 24 21:48:11 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 24 21:56:17 2010 -0700"
      },
      "message": "Input: ab8500-ponkey - fix IRQ freeing in error path\n\nLooks like an obvious typo to me.\n\nSigned-off-by: Nicolas Kaiser \u003cnikai@nikai.net\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "229aebb873e29726b91e076161649cf45154b0bf",
      "tree": "acc02a3702215bce8d914f4c8cc3d7a1382b1c67",
      "parents": [
        "8de547e1824437f3c6af180d3ed2162fa4b3f389",
        "50a23e6eec6f20d55a3a920e47adb455bff6046e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)\n  Update broken web addresses in arch directory.\n  Update broken web addresses in the kernel.\n  Revert \"drivers/usb: Remove unnecessary return\u0027s from void functions\" for musb gadget\n  Revert \"Fix typo: configuation \u003d\u003e configuration\" partially\n  ida: document IDA_BITMAP_LONGS calculation\n  ext2: fix a typo on comment in ext2/inode.c\n  drivers/scsi: Remove unnecessary casts of private_data\n  drivers/s390: Remove unnecessary casts of private_data\n  net/sunrpc/rpc_pipe.c: Remove unnecessary casts of private_data\n  drivers/infiniband: Remove unnecessary casts of private_data\n  drivers/gpu/drm: Remove unnecessary casts of private_data\n  kernel/pm_qos_params.c: Remove unnecessary casts of private_data\n  fs/ecryptfs: Remove unnecessary casts of private_data\n  fs/seq_file.c: Remove unnecessary casts of private_data\n  arm: uengine.c: remove C99 comments\n  arm: scoop.c: remove C99 comments\n  Fix typo configue \u003d\u003e configure in comments\n  Fix typo: configuation \u003d\u003e configuration\n  Fix typo interrest[ing|ed] \u003d\u003e interest[ing|ed]\n  Fix various typos of valid in comments\n  ...\n\nFix up trivial conflicts in:\n\tdrivers/char/ipmi/ipmi_si_intf.c\n\tdrivers/usb/gadget/rndis.c\n\tnet/irda/irnet/irnet_ppp.c\n"
    },
    {
      "commit": "73ecf3a6e3f0206bf56a0fefe3b3eda042fb7034",
      "tree": "866f0ebb2b148479e93b5ac955097b1cc94ceb4e",
      "parents": [
        "b9da0571050c09863e59f94d0b8594a290d61b88",
        "cd3ecad19aea8debae9a48b53de2ec7a571f24e9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 19:59:04 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 19:59:04 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (49 commits)\n  serial8250: ratelimit \"too much work\" error\n  serial: bfin_sport_uart: speed up sport RX sample rate to be 3% faster\n  serial: abstraction for 8250 legacy ports\n  serial/imx: check that the buffer is non-empty before sending it out\n  serial: mfd: add more baud rates support\n  jsm: Remove the uart port on errors\n  Alchemy: Add UART PM methods.\n  8250: allow platforms to override PM hook.\n  altera_uart: Don\u0027t use plain integer as NULL pointer\n  altera_uart: Fix missing prototype for registering an early console\n  altera_uart: Fixup type usage of port flags\n  altera_uart: Make it possible to use Altera UART and 8250 ports together\n  altera_uart: Add support for different address strides\n  altera_uart: Add support for getting mapbase and IRQ from resources\n  altera_uart: Add support for polling mode (IRQ-less)\n  serial: Factor out uart_poll_timeout() from 8250 driver\n  serial: mark the 8250 driver as maintained\n  serial: 8250: Don\u0027t delay after transmitter is ready.\n  tty: MAINTAINERS: add drivers/serial/jsm/ as maintained driver\n  vcs: invoke the vt update callback when /dev/vcs* is written to\n  ...\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "c37927d4359e81b85de644f8fb08878717cf5f3f",
      "tree": "25dabf2d905e1410819d1bdaba0bf5f779100d3c",
      "parents": [
        "5704e44d283e907623e3775c1262f206a2c48cf3",
        "2a48fc0ab24241755dc93bfd4f01d68efab47f5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  block: autoconvert trivial BKL users to private mutex\n  drivers: autoconvert trivial BKL users to private mutex\n  ipmi: autoconvert trivial BKL users to private mutex\n  mac: autoconvert trivial BKL users to private mutex\n  mtd: autoconvert trivial BKL users to private mutex\n  scsi: autoconvert trivial BKL users to private mutex\n\nFix up trivial conflicts (due to addition of private mutex right next to\ndeletion of a version string) in drivers/char/pcmcia/cm40[04]0_cs.c\n"
    },
    {
      "commit": "de838a93cbf35671f890360b886a5c2a8a5d1aa4",
      "tree": "bc4507f747962f3ab424df45efcdf01a0b188280",
      "parents": [
        "30004ac9c090dcdcca99556b4587b3bad828731a"
      ],
      "author": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Mon Aug 09 18:22:50 2010 +0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:19:58 2010 -0700"
      },
      "message": "serport: place serport serio device correctly in the device tree\n\nMake serport serio device to be a child of corresponding tty device\ninstead of just hanging at /sys/devices/serioX.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b5153163ed580e00c67bdfecb02b2e3843817b3e",
      "tree": "b8c878601f07f5df8f694435857a5f3dcfd75482",
      "parents": [
        "a8cbf22559ceefdcdfac00701e8e6da7518b7e8e",
        "6451d7783ba5ff24eb1a544eaa6665b890f30466"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 16:42:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 16:42:32 2010 -0700"
      },
      "message": "Merge branch \u0027devel\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm\n\n* \u0027devel\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm: (278 commits)\n  arm: remove machine_desc.io_pg_offst and .phys_io\n  arm: use addruart macro to establish debug mappings\n  arm: return both physical and virtual addresses from addruart\n  arm/debug: consolidate addruart macros for CONFIG_DEBUG_ICEDCC\n  ARM: make struct machine_desc definition coherent with its comment\n  eukrea_mbimxsd-baseboard: Pass the correct GPIO to gpio_free\n  cpuimx27: fix compile when ULPI is selected\n  mach-pcm037_eet: fix compile errors\n  Fixing ethernet driver compilation error for i.MX31 ADS board\n  cpuimx51: update board support\n  mx5: add cpuimx51sd module and its baseboard\n  iomux-mx51: fix GPIO_1_xx \u0027s IOMUX configuration\n  imx-esdhc: update devices registration\n  mx51: add resources for SD/MMC on i.MX51\n  iomux-mx51: fix SD1 and SD2\u0027s iomux configuration\n  clock-mx51: rename CLOCK1 to CLOCK_CCGR for better readability\n  clock-mx51: factorize clk_set_parent and clk_get_rate\n  eukrea_mbimxsd: add support for DVI displays\n  cpuimx25 \u0026 cpuimx35: fix OTG port registration in host mode\n  i.MX31 and i.MX35 : fix errate TLSbo65953 and ENGcm09472\n  ...\n"
    },
    {
      "commit": "888a6f77e0418b049f83d37547c209b904d30af4",
      "tree": "42cdb9f781d2177e6b380e69a66a27ec7705f51f",
      "parents": [
        "31b7eab27a314b153d8fa07ba9e9ec00a98141e1",
        "6506cf6ce68d78a5470a8360c965dafe8e4b78e3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:12 2010 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (52 commits)\n  sched: fix RCU lockdep splat from task_group()\n  rcu: using ACCESS_ONCE() to observe the jiffies_stall/rnp-\u003eqsmask value\n  sched: suppress RCU lockdep splat in task_fork_fair\n  net: suppress RCU lockdep false positive in sock_update_classid\n  rcu: move check from rcu_dereference_bh to rcu_read_lock_bh_held\n  rcu: Add advice to PROVE_RCU_REPEATEDLY kernel config parameter\n  rcu: Add tracing data to support queueing models\n  rcu: fix sparse errors in rcutorture.c\n  rcu: only one evaluation of arg in rcu_dereference_check() unless sparse\n  kernel: Remove undead ifdef CONFIG_DEBUG_LOCK_ALLOC\n  rcu: fix _oddness handling of verbose stall warnings\n  rcu: performance fixes to TINY_PREEMPT_RCU callback checking\n  rcu: upgrade stallwarn.txt documentation for CPU-bound RT processes\n  vhost: add __rcu annotations\n  rcu: add comment stating that list_empty() applies to RCU-protected lists\n  rcu: apply TINY_PREEMPT_RCU read-side speedup to TREE_PREEMPT_RCU\n  rcu: combine duplicate code, courtesy of CONFIG_PREEMPT_RCU\n  rcu: Upgrade srcu_read_lock() docbook about SRCU grace periods\n  rcu: document ways of stalling updates in low-memory situations\n  rcu: repair code-duplication FIXMEs\n  ...\n"
    },
    {
      "commit": "31b7eab27a314b153d8fa07ba9e9ec00a98141e1",
      "tree": "47415377d5f9bcf8c06e501f1636088548202edf",
      "parents": [
        "1053e6bba091d9d18797f7789df6a7ef8735f20c",
        "4ba053c04aece1f4734056f21b751eee47ea3fb1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:49:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:49:31 2010 -0700"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: Check the depth of subclass\n  lockdep: Add improved subclass caching\n  affs: Use sema_init instead of init_MUTEX\n  hfs: Convert tree_lock to mutex\n  arm: Bcmring: semaphore cleanup\n  printk: Make console_sem a semaphore not a pseudo mutex\n  drivers/macintosh/adb: Do not claim that the semaphore is a mutex\n  parport: Semaphore cleanup\n  irda: Semaphore cleanup\n  net: Wan/cosa.c: Convert \"mutex\" to semaphore\n  net: Ppp_async: semaphore cleanup\n  hamradio: Mkiss: semaphore cleanup\n  hamradio: 6pack: semaphore cleanup\n  net: 3c527: semaphore cleanup\n  input: Serio/hp_sdc: semaphore cleanup\n  input: Serio/hil_mlc: semaphore cleanup\n  input: Misc/hp_sdc_rtc: semaphore cleanup\n  lockup_detector: Make callback function static\n  lockup detector: Fix grammar by adding a missing \"to\" in the comments\n  lockdep: Remove __debug_show_held_locks\n"
    },
    {
      "commit": "7940a34b2e1e0485211a17d8c3ab4da1ea3e1330",
      "tree": "fe08ba701cbf23ae44a16d3b7afa521fce943a8a",
      "parents": [
        "6451d7783ba5ff24eb1a544eaa6665b890f30466",
        "8939b3504dc35224cb9c88e5af925b22ea9eee71"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Thu Oct 21 11:21:55 2010 -0700"
      },
      "committer": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Thu Oct 21 11:21:55 2010 -0700"
      },
      "message": "Merge branch \u0027davinci-next\u0027 into davinci-for-linus\n\nConflicts:\n\tarch/arm/mach-davinci/board-da830-evm.c\n\tarch/arm/mach-davinci/board-da850-evm.c\n"
    },
    {
      "commit": "f779b7dd3259ec138c7aba793f0602b20262af83",
      "tree": "7ed94961b196c81fcd413e2b04d1e6945d6d227a",
      "parents": [
        "3c00079b31f910309b30ed5c2fd2b7a2d86bba60",
        "fe0cdec8bad919fd91cd344123906a55f3857209"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Oct 19 20:12:24 2010 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Oct 19 20:12:24 2010 +0100"
      },
      "message": "Merge branch \u0027for-rmk\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into devel-stable\n\nConflicts:\n\tarch/arm/mach-at91/include/mach/system.h\n\tarch/arm/mach-imx/mach-cpuimx27.c\n\nAT91 conflict resolution:\nAcked-by: Anders Larsen \u003cal@alarsen.net\u003e\nIMX conflict resolution confirmed by Uwe Kleine-König.\n"
    },
    {
      "commit": "d537155a09cd69f309fa31fc8bcc7a4b1d5a9f6c",
      "tree": "66cf4d424174409711712ab393b3483d1fde80c3",
      "parents": [
        "b534422b2d1189740c6144c3c7a296be89f581c7"
      ],
      "author": {
        "name": "Michael Hennerich",
        "email": "michael.hennerich@analog.com",
        "time": "Mon Oct 18 17:46:03 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 17:48:11 2010 -0700"
      },
      "message": "Input: adp5588-keys - use more obvious i2c_device_id name string\n\nKBUILD_MODNAME normalizes \"-\" to \"_\".  This is non-obvious and results in\nthe id name for ADP5588 being \"adp5588_keys\" while the other supported id\nis \"adp5587-keys\".  So avoid this define and use an explicit string as the\nid name.\n\nSigned-off-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "f2f108eb4511f22a6f7568090cfcf4e7b2dc0f62",
      "tree": "4b75771ec02543372808c7df31a1a65e37fdb361",
      "parents": [
        "756b0322e50aebc4b9afb4488a2d3f6c802b4e64",
        "2b666ca4a68cbc22483b0f2e1ba3c0e59b01ae9e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 18 18:43:43 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 18 18:43:46 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/locking\n\nMerge reason: Update to almost-final-.36\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b534422b2d1189740c6144c3c7a296be89f581c7",
      "tree": "6c0afd800547209aa715be93216bf2b0cdd1c109",
      "parents": [
        "2fd18abad179b11cbd881f2bd271b193ababfb65"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 09:24:22 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 09:35:13 2010 -0700"
      },
      "message": "Input: ad7877 - switch to using threaded IRQ\n\nInstead of using asynchronous SPI API and then spinning waiting for SPI\ntransfer to complete when disabling the device, let\u0027s use threaded IRQ\nmodel and spi_sync().\n\nAcked-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nTested-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "2fd18abad179b11cbd881f2bd271b193ababfb65",
      "tree": "547ac1f98babf973c1d091fc7a8890306b82bfdc",
      "parents": [
        "fc58d12be416eb51932eec594667ca3181903b9e"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 09:22:38 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 09:35:09 2010 -0700"
      },
      "message": "Input: ad7877 - use attribute group to control visibility of attributes\n\nInstead of manually creating one set of attributes or another set up\nis_visible method in attribute group structure to control whether\naux3 or gpio3 attribute is presented to userspace.\n\nAcked-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "fc58d12be416eb51932eec594667ca3181903b9e",
      "tree": "71c7b4d4a8f314c48e10dae89060b80b88842899",
      "parents": [
        "62ecae09a01df507ef52e1bc90fc233a1978c60a"
      ],
      "author": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Mon Oct 18 09:18:13 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 09:33:31 2010 -0700"
      },
      "message": "Input: serio - add support for PS2Mult multiplexer protocol\n\nPS2Mult is a simple serial protocol used for multiplexing several PS/2\nstreams into one serial data stream. It\u0027s used e.g. on TQM85xx series\nof boards.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "f9ce6eb5b6fa8cbcf0a0fb7c5f4203f94730fc52",
      "tree": "9bc3e516e458a7982e608c4dd0cb7cf3080dd6cc",
      "parents": [
        "0a74a1df3c13655b66b1908d76f2159654216326"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "zonque@gmail.com",
        "time": "Mon Oct 18 08:43:50 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 08:45:08 2010 -0700"
      },
      "message": "Input: evdev - fix EVIOCSABS regression\n\n448cd16 (\"Input: evdev - rearrange ioctl handling\") broke EVIOCSABS by\nchecking for the wrong direction bit.\n\nSigned-off-by: Daniel Mack \u003czonque@gmail.com\u003e\nReported-by: Sven Neumann \u003cs.neumann@raumfeld.com\u003e\nTested-by: Sven Neumann \u003cs.neumann@raumfeld.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "0a74a1df3c13655b66b1908d76f2159654216326",
      "tree": "faaafb23d29b7675d04e6108fb117b01e74acbc7",
      "parents": [
        "ca047fedd89bbb4b79b61e0656a7b799e4e45e6d"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "zonque@gmail.com",
        "time": "Mon Oct 18 08:43:30 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 18 08:45:02 2010 -0700"
      },
      "message": "Input: evdev - fix Ooops in EVIOCGABS/EVIOCSABS\n\nThis fixes a regression introduced by the dynamic allocation of absinfo\nfor input devices. We need to bail out early for input devices which\ndon\u0027t have absolute axis.\n\n[  929.664303] Pid: 2989, comm: input Not tainted 2.6.36-rc8+ #14 MS-7260/MS-7260\n[  929.664318] EIP: 0060:[\u003cc12bdc01\u003e] EFLAGS: 00010246 CPU: 0\n[  929.664331] EIP is at evdev_ioctl+0x4f8/0x59f\n[  929.664341] EAX: 00000040 EBX: 00000000 ECX: 00000006 EDX: f45a1efc\n[  929.664355] ESI: 00000000 EDI: f45a1efc EBP: f45a1f24 ESP: f45a1eb8\n[  929.664369]  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068\n[  929.664402]  f470da74 f6a30e78 f462c240 00000018 bfe4a260 00000000 f45b06fc 00000000\n[  929.664429] \u003c0\u003e 000000c4 b769d000 c3544620 f470da74 f45b06fc f45b06fc f45a1f38 c107dd1f\n[  929.664458] \u003c0\u003e f4710b74 000000c4 00000000 00000000 00000000 0000029d 00000a74 f4710b74\n[  929.664500]  [\u003cc107dd1f\u003e] ? handle_mm_fault+0x2be/0x59a\n[  929.664513]  [\u003cc12bd709\u003e] ? evdev_ioctl+0x0/0x59f\n[  929.664524]  [\u003cc1099d30\u003e] ? do_vfs_ioctl+0x494/0x4d9\n[  929.664538]  [\u003cc10432a1\u003e] ? up_read+0x16/0x29\n[  929.664550]  [\u003cc101c818\u003e] ? do_page_fault+0x2ff/0x32d\n[  929.664564]  [\u003cc108d048\u003e] ? do_sys_open+0xc5/0xcf\n[  929.664575]  [\u003cc1099db6\u003e] ? sys_ioctl+0x41/0x61\n[  929.664587]  [\u003cc1002710\u003e] ? sysenter_do_call+0x12/0x36\n[  929.684570] ---[ end trace 11b83e923bd8f2bb ]---\n\nSigned-off-by: Daniel Mack \u003czonque@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "631dd1a885b6d7e9f6f51b4e5b311c2bb04c323c",
      "tree": "c431fa3479c1d35842fb5635ed7ccd487d063a62",
      "parents": [
        "d7eccbbae84b2ee7dbb756e60287c4b47071444e"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Oct 18 11:03:14 2010 +0200"
      },
      "message": "Update broken web addresses in the kernel.\n\nThe patch below updates broken web addresses in the kernel\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nCc: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Dimitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier.adi@gmail.com\u003e\nAcked-by: Ben Pfaff \u003cblp@cs.stanford.edu\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nReviewed-by: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "62ecae09a01df507ef52e1bc90fc233a1978c60a",
      "tree": "0452f78a77dfb6a14c0cdda6e59f11b16b0f4317",
      "parents": [
        "3136baf8d09458bb04332b81494fd13ad90fe94a"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 10 14:24:16 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:20:46 2010 -0700"
      },
      "message": "Input: wacom - properly enable runtime PM\n\nWe need to always call usb_autopm_put_interface() in wacom_open(),\nnot only when initialization fails, otherwise the device will be\nmarked as PM-busy and will never be put in suspended state.\n\nBased on patch by Oliver Neukum.\n\nAcked-by: Oliver Neukum \u003coneukum@suse.de\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "3136baf8d09458bb04332b81494fd13ad90fe94a",
      "tree": "6593ef5894597bf6224cf0374e4d49b1499d347d",
      "parents": [
        "1d02ad436235080b8a95a2c86a66cb7b8f2e9df9",
        "ca047fedd89bbb4b79b61e0656a7b799e4e45e6d"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:20:19 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:20:19 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 into next\n"
    },
    {
      "commit": "1d02ad436235080b8a95a2c86a66cb7b8f2e9df9",
      "tree": "b7b1e19086ce8f3df55e0eb60c1354f4fe26b37a",
      "parents": [
        "47026b25fc6cd2d7ec85d4a83c472bca20946a94"
      ],
      "author": {
        "name": "Michael Hennerich",
        "email": "michael.hennerich@analog.com",
        "time": "Fri Oct 15 09:49:08 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:12:46 2010 -0700"
      },
      "message": "Input: ad7877 - filter events where pressure is beyond the maximum\n\nSuppress events where pressure \u003e pressure_max.\nThese events come typically along with inaccurate X and Y samples.\n\nSigned-off-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "47026b25fc6cd2d7ec85d4a83c472bca20946a94",
      "tree": "2a5d1c118a49c7d5c34271212dec4f30c3bb2915",
      "parents": [
        "e92c27fb5319d8b12f0c291c827e252f0e17afc4"
      ],
      "author": {
        "name": "Michael Hennerich",
        "email": "michael.hennerich@analog.com",
        "time": "Fri Oct 15 09:49:07 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:12:18 2010 -0700"
      },
      "message": "Input: ad7877 - implement EV_KEY:BTN_TOUCH reporting\n\nSome input users such as Android or X require BTN_TOUCH events.\nImplement EV_KEY:BTN_TOUCH and make sure that the release event\nis not erroneous scheduled without a preceding valid touch.\n\nSigned-off-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "e92c27fb5319d8b12f0c291c827e252f0e17afc4",
      "tree": "c01bf3f9bfe9b2dee980e2848987ab4b494ceda9",
      "parents": [
        "790d5c8dac35cf10cf6c52cc9b90ad20603ac2c1"
      ],
      "author": {
        "name": "Michael Hennerich",
        "email": "michael.hennerich@analog.com",
        "time": "Fri Oct 15 09:48:10 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:12:11 2010 -0700"
      },
      "message": "Input: ad7877 - implement specified chip select behavior\n\nAccording to the AD7877 datasheet:\n\nEach transfer operation is 16-bit. If multiple read/write operations are\nto be performed, CS must be taken high after the end of each read/write\noperation before another read/write operation can be performed by\ntaking CS low again.\n\nMake sure CS toggles after each transfer in the message.\n\nSigned-off-by: Michael Hennerich \u003cmichael.hennerich@analog.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "790d5c8dac35cf10cf6c52cc9b90ad20603ac2c1",
      "tree": "fa6e8d0c551eb429b1e77fa3533b9e2aec2ea472",
      "parents": [
        "f74eef95e33a07379aa2b950c7f313cbfd55ebbe"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Oct 15 09:47:15 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:12:00 2010 -0700"
      },
      "message": "Input: hp680_ts_input - use cancel_delayed_work_sync()\n\nMake hp680_ts_init/exit() call cancel_delayed_work_sync() instead of\ncalling cancel_delayed_work() followed by flush_scheduled_work().\n\nThis is to prepare for the deprecation and removal of\nflush_scheduled_work().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "f74eef95e33a07379aa2b950c7f313cbfd55ebbe",
      "tree": "be9f959dc8ec4053ec6161e3c9049de91c474239",
      "parents": [
        "2991a1ca6e9b13b639a82c0eec0cbc191bf1f42f"
      ],
      "author": {
        "name": "Hitoshi Mitake",
        "email": "mitake@dcl.info.waseda.ac.jp",
        "time": "Wed Oct 13 11:35:40 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:11:36 2010 -0700"
      },
      "message": "Input: mousedev - correct lockdep annotation\n\nWhen annotating mutex to avoid false lockdep reports we should not\nbe using MOUSEDEV_MIX as lock subclass but rather SINGLE_DEPTH_NESTING.\n\nSigned-off-by: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "2991a1ca6e9b13b639a82c0eec0cbc191bf1f42f",
      "tree": "ccf612f19613723148f9c40965af15a7f7c79af4",
      "parents": [
        "0982258264d2f615612ab957634efdeb874f47c8"
      ],
      "author": {
        "name": "Jason Wang",
        "email": "jason77.wang@gmail.com",
        "time": "Wed Oct 13 11:35:40 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 17 21:10:28 2010 -0700"
      },
      "message": "Input: ads7846 - switch to using threaded IRQ\n\nCommit 9114337 introduces regulator operations in ads7846 touchscreen\ndriver. Among these operations, some are called while holding a\nspinlock. On many platforms regulators reside on slow buses, such as\nI2C/SPI and require sleep while accessing them.\n\nThe touchscreen itself is also a SPI device and currently relies on\nasynchronous SPI access to avoid sleeping in interrupt context. Let\u0027s\nswitch to using threaded IRQ to be able to access SPI bus\nsynchronously (which simplifies driver a bit); it also allows safe\naccess to the regulators as well.\n\nThis has been tested on the ti_omap3530evm board:\n 1) using ts_lib after normal boot\n 2) using ts_lib after \"#echo 1/0 \u003e /sys/bus/spi/devices/spi0.1/disable\"\n 3) using ts_lib after \"#echo mem \u003e /sys/power/state\" and \"wake up\"\n\nAlso tested on pandora.\n\nBased on original patch by Dmitry Torokhov.\n\nTested-by: Grazvydas Ignotas \u003cnotasas@gmail.com\u003e\nSigned-off-by: Jason Wang \u003cjason77.wang@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "0982258264d2f615612ab957634efdeb874f47c8",
      "tree": "4667defc535f028e3ee4a11ded29b050cf5926e7",
      "parents": [
        "a8b3c0f57beaba9035e5339175628b63e551b243"
      ],
      "author": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Mon Oct 04 21:46:10 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:28 2010 -0700"
      },
      "message": "Input: serio - support multiple child devices per single parent\n\nSome (rare) serio devices need to have multiple serio children. One of\nthe examples is PS/2 multiplexer present on several TQC STKxxx boards,\nwhich connect PS/2 keyboard and mouse to single tty port.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "a8b3c0f57beaba9035e5339175628b63e551b243",
      "tree": "5ceea4d6288f16f4de22f89ffedd89e6da8d6173",
      "parents": [
        "4780c8df3856398020be2928d9e9fa8c457a09a4"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 04 21:46:10 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:27 2010 -0700"
      },
      "message": "Input: synaptics - simplify pass-through port handling\n\nThere was too much knowledge about internals if serio in the pass-through\nhandling, clean it up.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "4780c8df3856398020be2928d9e9fa8c457a09a4",
      "tree": "398c8111f0de21a74e871dcf8eb6c15ff88e8940",
      "parents": [
        "9a34bc61160167319fcfa59842cc0373487d533b"
      ],
      "author": {
        "name": "Naveen Kumar Gaddipati",
        "email": "naveen.gaddipati@stericsson.com",
        "time": "Mon Oct 04 22:32:48 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:27 2010 -0700"
      },
      "message": "Input: add ROHM BU21013 touch panel controller support\n\nAdd the ROHM BU21013 capacitive touch panel controller support with\ni2c interface.\n\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Naveen Kumar Gaddipati \u003cnaveen.gaddipati@stericsson.com\u003e\nAcked-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "9a34bc61160167319fcfa59842cc0373487d533b",
      "tree": "9f49f555ab0e0f3d5081e404ff91ab110db82a4b",
      "parents": [
        "f8038c425148ddd50c7e7223a9a6e71ce5f7e42d"
      ],
      "author": {
        "name": "Mike Turquette",
        "email": "mturquette@ti.com",
        "time": "Wed Sep 29 23:38:01 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:26 2010 -0700"
      },
      "message": "Input: omap4-keypad - wake-up on events \u0026 long presses\n\nProgram keyboard controller to generate a wake-up request on events and\non long key presses. It will not generate wake-up requests on timeouts\nsince driver code does not handle them.\n\nThis allows keyboard to wake-up OMAP from suspend.\n\nSigned-off-by: Mike Turquette \u003cmturquette@ti.com\u003e\nSigned-off-by: Abraham Arce \u003cx0066660@ti.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "f8038c425148ddd50c7e7223a9a6e71ce5f7e42d",
      "tree": "65d8c63170bc642b67b31550c1d50c980a3ea9af",
      "parents": [
        "05362f486bf6e6b8adc77424b6edf2f3cd6816ae"
      ],
      "author": {
        "name": "Abraham Arce",
        "email": "x0066660@ti.com",
        "time": "Wed Sep 29 23:37:04 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:26 2010 -0700"
      },
      "message": "Input: omap4-keypad - fix interrupt line configuration\n\nSelect correct interrupt line behaviour.\n\nSigned-off-by: Abraham Arce \u003cx0066660@ti.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "05362f486bf6e6b8adc77424b6edf2f3cd6816ae",
      "tree": "657e77275116102ade7a0f60ad0f9558886a18ee",
      "parents": [
        "f3a1ba60dbdbf46f2715cc4e3f8abc9d65c4d9bf"
      ],
      "author": {
        "name": "Abraham Arce",
        "email": "x0066660@ti.com",
        "time": "Wed Sep 29 23:36:48 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:25 2010 -0700"
      },
      "message": "Input: omap4-keypad - SYSCONFIG register configuration\n\nRemove SYSCONFIG register configuration, omap hwmod framework will\nuse internal API to modify as required.\n\nOther minor updates:\n\n- Change a variable name from DEF to VAL, this represents a value\n- Break line width to 80 characters\n\nSigned-off-by: Abraham Arce \u003cx0066660@ti.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "f3a1ba60dbdbf46f2715cc4e3f8abc9d65c4d9bf",
      "tree": "e6a3a21412ec023e18f8cbea07377b48da4f5f7e",
      "parents": [
        "4c61c8457ee92a2afc5a43aa0821971727ebd38c"
      ],
      "author": {
        "name": "Abraham Arce",
        "email": "x0066660@ti.com",
        "time": "Wed Sep 29 23:35:57 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:25 2010 -0700"
      },
      "message": "Input: omap4-keypad - use platform device helpers\n\nGet mem and irq resources using platform helpers\n\n - platform_get_base\n - platform_get_irq\n\nSigned-off-by: Abraham Arce \u003cx0066660@ti.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "1158f0f16224068e27e384c1a27218aa00243967",
      "tree": "a5b5c255d8fe21cdd9948f64ce22acae8af0f6c3",
      "parents": [
        "a9cc0202227caa4adb5e823d5fbce7790364941f"
      ],
      "author": {
        "name": "Sundar Iyer",
        "email": "sundar.iyer@stericsson.com",
        "time": "Wed Sep 29 19:42:14 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:24 2010 -0700"
      },
      "message": "Input: add support for Nomadik SKE keypad controller\n\nAdd support for the keypad controller in the Scroll Key Encoder (SKE)\nmodule on the Nomadik family and the DB8500 SoC.\n\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Sundar Iyer \u003csundar.iyer@stericsson.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "a9cc0202227caa4adb5e823d5fbce7790364941f",
      "tree": "4a47075935391b4510597cae52e10c4d9de46444",
      "parents": [
        "6792cbbb254712a8c0fa8a4c97c8d521c7c41c28"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 29 18:36:00 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:24 2010 -0700"
      },
      "message": "Input: twl4030_keypad - fix error handling path\n\nWe should not try to call free_irq() when request_irq() failed.\n\nReported-by: G, Manjunath Kondaiah \u003cmanjugk@ti.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "6792cbbb254712a8c0fa8a4c97c8d521c7c41c28",
      "tree": "3ab25c521042133a27f9875ad1d366e4b44ad68f",
      "parents": [
        "7aed3fb73f4ac7912ce9e0c232a15ee012bf4be5"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "dave@gnu.org",
        "time": "Wed Sep 29 18:53:35 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:23 2010 -0700"
      },
      "message": "Input: return -ENOMEM in select drivers when memory allocation fails\n\nInstead of using -1 let\u0027s start using proper error codes.\n\nSigned-off-by: Davidlohr Bueso \u003cdave@gnu.org\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "7aed3fb73f4ac7912ce9e0c232a15ee012bf4be5",
      "tree": "3a07769d97225612892db92a8917b3460465b9f5",
      "parents": [
        "05e93a746a0781429de73117b2f2ef48d2312759"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 29 18:50:17 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:23 2010 -0700"
      },
      "message": "Input: emu10k1 - do not leave device enabled when probe fails\n\nRework emu_probe() to make sure we leave the device disabled if probe\nfails for any reason.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "05e93a746a0781429de73117b2f2ef48d2312759",
      "tree": "dd7ee44ea977ea9c7ed58bbf5e45d4e5c8ffb8ff",
      "parents": [
        "1966cb225c6f9040ca163802cbd052c393d4448f"
      ],
      "author": {
        "name": "Dzianis Kahanovich",
        "email": "mahatma@bspu.unibel.by",
        "time": "Wed Sep 29 18:38:10 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Oct 13 07:49:05 2010 -0700"
      },
      "message": "Input: hil_kbd - add missing MODULE_DEVICE_TABLE()\n\nSigned-off-by: Dzianis Kahanovich \u003cmahatma@eu.by\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "4a4a506f81eebe63fb1b8e9e99f4bcd1fd9aac66",
      "tree": "d2f14f6b2e9300384c9e800f7c9bc1b23578dede",
      "parents": [
        "45e8492f594dcb17e8cbb26edb2dd3018a68dada"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 07 14:32:06 2010 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 17:36:08 2010 +0200"
      },
      "message": "input: Serio/hp_sdc: semaphore cleanup\n\nGet rid of init_MUTEX[_LOCKED]() and use sema_init() instead.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nLKML-Reference: \u003c20100907125055.079737758@linutronix.de\u003e\n\n"
    },
    {
      "commit": "45e8492f594dcb17e8cbb26edb2dd3018a68dada",
      "tree": "19c6362e9237bab50fbf869692fd14296f450899",
      "parents": [
        "10d0ff83078d5ef99aaf94a2aaceb740f5ced923"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 07 14:32:01 2010 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 17:36:08 2010 +0200"
      },
      "message": "input: Serio/hil_mlc: semaphore cleanup\n\nGet rid of init_MUTEX[_LOCKED]() and use sema_init() instead.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nLKML-Reference: \u003c20100907125054.985090435@linutronix.de\u003e\n\n"
    },
    {
      "commit": "10d0ff83078d5ef99aaf94a2aaceb740f5ced923",
      "tree": "624e52f122dcd4eb5a1f8d4b314a1b0b224da901",
      "parents": [
        "37eca0d64a2dbeece25969ec0698e1ff72bdcf39"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 07 14:31:58 2010 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 17:36:07 2010 +0200"
      },
      "message": "input: Misc/hp_sdc_rtc: semaphore cleanup\n\nGet rid of init_MUTEX[_LOCKED]() and use sema_init() instead.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nLKML-Reference: \u003c20100907125054.888438853@linutronix.de\u003e\n\n"
    },
    {
      "commit": "ca047fedd89bbb4b79b61e0656a7b799e4e45e6d",
      "tree": "bc11ac05e7ecb0dc55d0386c004452a5ebbec81e",
      "parents": [
        "f6cd378372bff06093d72f978c0150eeed3ea201"
      ],
      "author": {
        "name": "Aristeu Rozanski",
        "email": "aris@redhat.com",
        "time": "Sun Oct 10 14:12:33 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 10 14:16:09 2010 -0700"
      },
      "message": "Input: wacom - fix pressure in Cintiq 21UX2\n\nCurrently the pressure range in Cintiq 21UX2 is limited to half of the\nsupported. This patch fixes the problem.\n\nSigned-off-by: Aristeu Rozanski \u003caris@redhat.com\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nCC: stable@kernel.org\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "3587c258078479824342f33dc513ca7c66d729bc",
      "tree": "2df8b4f65663cddedbba2763a048ce3b0ac6ba43",
      "parents": [
        "2ce4389068129fb4a8756b5ba126da1260f5dbef"
      ],
      "author": {
        "name": "Mark F. Brown",
        "email": "mark.brown314@gmail.com",
        "time": "Fri Sep 03 18:28:09 2010 -0400"
      },
      "committer": {
        "name": "Eric Miao",
        "email": "eric.y.miao@gmail.com",
        "time": "Sat Oct 09 17:07:19 2010 +0800"
      },
      "message": "ARM: pxa27x_keypad: added wakeup event handler for keypad interrupts\n\nmach-mmp needs to clear wake event in order to clear the keypad interrupt\n\nSigned-off-by: Mark F. Brown \u003cmark.brown314@gmail.com\u003e\nSigned-off-by: Eric Miao \u003ceric.y.miao@gmail.com\u003e\n"
    },
    {
      "commit": "6d109465fb751fe4376c080e5fb10838d3414c28",
      "tree": "95149a8ec520557ec3f8c919c6a9030f7450f9f3",
      "parents": [
        "4a2490eac897e3648c4800b1068b56b7e1ad91b3"
      ],
      "author": {
        "name": "Mark F. Brown",
        "email": "mark.brown314@gmail.com",
        "time": "Fri Sep 03 18:28:07 2010 -0400"
      },
      "committer": {
        "name": "Eric Miao",
        "email": "eric.y.miao@gmail.com",
        "time": "Sat Oct 09 17:07:17 2010 +0800"
      },
      "message": "ARM: pxa168: added keypad support\n\nSigned-off-by: Mark F. Brown \u003cmark.brown314@gmail.com\u003e\nSigned-off-by: Eric Miao \u003ceric.y.miao@gmail.com\u003e\n"
    },
    {
      "commit": "4a2490eac897e3648c4800b1068b56b7e1ad91b3",
      "tree": "a9fce2171034c8fc3f5d05f7bc7616aa4f92f110",
      "parents": [
        "a754aea25e804d0635d1871558bee5024605ff92"
      ],
      "author": {
        "name": "Mark F. Brown",
        "email": "mark.brown314@gmail.com",
        "time": "Fri Sep 03 18:28:06 2010 -0400"
      },
      "committer": {
        "name": "Eric Miao",
        "email": "eric.y.miao@gmail.com",
        "time": "Sat Oct 09 17:07:10 2010 +0800"
      },
      "message": "ARM: pxa: moved pxa27x_keypad.h to platform pxa directory\n\nmach-mmp utilizes pxa27x_keypad code so we need to move header to\nplatform pxa directory.\n\nSigned-off-by: Mark F. Brown \u003cmark.brown314@gmail.com\u003e\nSigned-off-by: Eric Miao \u003ceric.y.miao@gmail.com\u003e\n"
    },
    {
      "commit": "d4f8f217b8a5d5bd02af979650418dca4caec472",
      "tree": "af047bfa9729c975e24cb7624107574e884d3a57",
      "parents": [
        "2dfbf4dfbe47a484bae20456c12b40763b9b6af7",
        "773e3f93577ffb493fb7c39b1a6ecf39b5748e87"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 07 09:43:11 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 07 09:43:11 2010 +0200"
      },
      "message": "Merge branch \u0027rcu/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/rcu\n"
    },
    {
      "commit": "613655fa39ff6957754fa8ceb8559980920eb8ee",
      "tree": "ad19600cb81207b24188683d7fc4ae88013339d1",
      "parents": [
        "609146fdb319cebce93be550938ab852f7bade90"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 02 14:28:52 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 05 15:01:04 2010 +0200"
      },
      "message": "drivers: autoconvert trivial BKL users to private mutex\n\nAll these files use the big kernel lock in a trivial\nway to serialize their private file operations,\ntypically resulting from an earlier semi-automatic\npushdown from VFS.\n\nNone of these drivers appears to want to lock against\nother code, and they all use the BKL as the top-level\nlock in their file operations, meaning that there\nis no lock-order inversion problem.\n\nConsequently, we can remove the BKL completely,\nreplacing it with a per-file mutex in every case.\nUsing a scripted approach means we can avoid\ntypos.\n\nThese drivers do not seem to be under active\nmaintainance from my brief investigation. Apologies\nto those maintainers that I have missed.\n\nfile\u003d$1\nname\u003d$2\nif grep -q lock_kernel ${file} ; then\n    if grep -q \u0027include.*linux.mutex.h\u0027 ${file} ; then\n            sed -i \u0027/include.*\u003clinux\\/smp_lock.h\u003e/d\u0027 ${file}\n    else\n            sed -i \u0027s/include.*\u003clinux\\/smp_lock.h\u003e.*$/include \u003clinux\\/mutex.h\u003e/g\u0027 ${file}\n    fi\n    sed -i ${file} \\\n        -e \"/^#include.*linux.mutex.h/,$ {\n                1,/^\\(static\\|int\\|long\\)/ {\n                     /^\\(static\\|int\\|long\\)/istatic DEFINE_MUTEX(${name}_mutex);\n\n} }\"  \\\n    -e \"s/\\(un\\)*lock_kernel\\\u003e[ ]*()/mutex_\\1lock(\\\u0026${name}_mutex)/g\" \\\n    -e \u0027/[      ]*cycle_kernel_lock();/d\u0027\nelse\n    sed -i -e \u0027/include.*\\\u003csmp_lock.h\\\u003e/d\u0027 ${file}  \\\n                -e \u0027/cycle_kernel_lock()/d\u0027\nfi\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "f6cd378372bff06093d72f978c0150eeed3ea201",
      "tree": "352d6d4e720c3e59f47865fb36bb2d78a702d7e6",
      "parents": [
        "d2520a426dc3033c00077e923a553fc6c98c7564"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 04 21:46:11 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 04 22:36:41 2010 -0700"
      },
      "message": "Input: wacom - fix runtime PM related deadlock\n\nWhen runtime PM is enabled by default for input devices, X hangs in\nwacom open:\n[\u003cffffffff814a00ea\u003e] mutex_lock+0x1a/0x40\n[\u003cffffffffa02bc94b\u003e] wacom_resume+0x3b/0x90 [wacom]\n[\u003cffffffff81327a32\u003e] usb_resume_interface+0xd2/0x190\n[\u003cffffffff81327b5d\u003e] usb_resume_both+0x6d/0x110\n[\u003cffffffff81327c24\u003e] usb_runtime_resume+0x24/0x40\n[\u003cffffffff8130a2cf\u003e] __pm_runtime_resume+0x26f/0x450\n[\u003cffffffff8130a23a\u003e] __pm_runtime_resume+0x1da/0x450\n[\u003cffffffff8130a53a\u003e] pm_runtime_resume+0x2a/0x50\n[\u003cffffffff81328176\u003e] usb_autopm_get_interface+0x26/0x60\n[\u003cffffffffa02bc626\u003e] wacom_open+0x36/0x90 [wacom]\n\nwacom_open() takes wacom-\u003elock and calls usb_autopm_get_interface(),\nwhich in turn calls wacom_resume() which tries to acquire the lock\nagain.\n\nThe fix is to call usb_autopm_get_interface() first, before we take\nthe lock.\n\nSince we do not do usb_autopm_put_interface() until wacom_close()\nis called runtime PM is effectively disabled for the driver, however\nchanging it now would risk regressions so the complete fix will\nhave to wait till the next merge window.\n\nReported-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nAcked-by: Oliver Neukum \u003coneukum@suse.de\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "594d63632024636a962be508dfe5ee6bfd309160",
      "tree": "6c18346b607362b370d15551eebf7cdb2c9293a1",
      "parents": [
        "d345d97012c3f8fb72c0c9d2ee319ea958b63229"
      ],
      "author": {
        "name": "Christoph Fritz",
        "email": "chf.fritz@googlemail.com",
        "time": "Wed Sep 29 18:04:21 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 29 18:26:00 2010 -0700"
      },
      "message": "Input: i8042 - use unsigned char for 0x90\n\nKeep the file consistent and make clear that we mean 144 instead of -112.\n\nSigned-off-by: Christoph Fritz \u003cchf.fritz@googlemail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "d345d97012c3f8fb72c0c9d2ee319ea958b63229",
      "tree": "534f39357cb21e4438627804889716e3224a207f",
      "parents": [
        "d8daece8f457883e8f2e3065a1e02322ed444ddb"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 29 18:17:16 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 29 18:25:56 2010 -0700"
      },
      "message": "Input: fm801-gp - add missing call to pci_disable_device()\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "d8daece8f457883e8f2e3065a1e02322ed444ddb",
      "tree": "c32ae47db4b4802f461fcdab15f3654489c04c59",
      "parents": [
        "727eeb7dbeac8a7ecd2ad943eb27a5566ab83601"
      ],
      "author": {
        "name": "Rahul Ruikar",
        "email": "rahul.ruikar@gmail.com",
        "time": "Wed Sep 29 18:12:46 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 29 18:25:52 2010 -0700"
      },
      "message": "Input: emu10k1-gp - add missing calls to pci_disable_device()\n\npci_disable_device() is called for following 2 cases\n- error path in emu_probe()\n- in emu_remove()\n\nSigned-off-by: Rahul Ruikar \u003crahul.ruikar@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "727eeb7dbeac8a7ecd2ad943eb27a5566ab83601",
      "tree": "6846095784092e72e9c6c75af67bf1d2755ac770",
      "parents": [
        "f5854fad395b93071292bff27c0121b6e32215e0"
      ],
      "author": {
        "name": "Xing Wei",
        "email": "weixing@hanwang.com.cn",
        "time": "Wed Sep 29 18:25:20 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 29 18:25:47 2010 -0700"
      },
      "message": "Input: hanwang - add support for Art Master HD 5012 tablet\n\nThis adds support for hanwang Art Master HD 5012 electromagnetic tablet.\n\nSigned-off-by: Xing Wei \u003cweixing@hanwang.com.cn\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "0fa6c773ad6e9ac6cfa6bad0a729e18babd602c3",
      "tree": "4ca2ba1e0566d88b41cb33692f18a6b9715f59d4",
      "parents": [
        "a1b4440314edca8e2016f2819d4655453e6aff44"
      ],
      "author": {
        "name": "Cyril Chemparathy",
        "email": "cyril@ti.com",
        "time": "Mon Sep 20 12:26:43 2010 -0400"
      },
      "committer": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Fri Sep 24 07:40:32 2010 -0700"
      },
      "message": "input: add driver for tnetv107x touchscreen controller\n\nThis patch adds support for tnetv107x\u0027s on-chip touchscreen controller.\n\nSigned-off-by: Cyril Chemparathy \u003ccyril@ti.com\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\n"
    },
    {
      "commit": "70614084402ae40aef40019b991bf44d10093122",
      "tree": "4ccafa4362934f40e3b4b5715773cb30fff95aa6",
      "parents": [
        "d4ef0d42313dffa1feb94142b4c4286169fd1b0e"
      ],
      "author": {
        "name": "Cyril Chemparathy",
        "email": "cyril@ti.com",
        "time": "Mon Sep 20 12:26:40 2010 -0400"
      },
      "committer": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Fri Sep 24 07:40:31 2010 -0700"
      },
      "message": "input: add driver for tnetv107x on-chip keypad controller\n\nThis patch adds support for tnetv107x\u0027s on-chip keypad controller.\n\nSigned-off-by: Cyril Chemparathy \u003ccyril@ti.com\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\n"
    },
    {
      "commit": "d2520a426dc3033c00077e923a553fc6c98c7564",
      "tree": "2da6646f8a1a588692830e51dca61e716639dc14",
      "parents": [
        "38e7afe96c7c0ad900824911c61fdb04078033dc"
      ],
      "author": {
        "name": "Kenneth Waters",
        "email": "kwwaters@gmail.com",
        "time": "Tue Sep 21 00:58:23 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Sep 21 00:59:43 2010 -0700"
      },
      "message": "Input: joydev - fix JSIOCSAXMAP ioctl\n\nFixed JSIOCSAXMAP ioctl to update absmap, the map from hardware axis to\nevent axis in addition to abspam.  This fixes a regression introduced\nby 999b874f.\n\nSigned-off-by: Kenneth Waters \u003ckwwaters@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "38e7afe96c7c0ad900824911c61fdb04078033dc",
      "tree": "537002b774b822af428dba93267d459325558301",
      "parents": [
        "af045b86662f17bf130239a65995c61a34f00a6b"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Sun Sep 19 16:25:36 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 19 16:29:57 2010 -0700"
      },
      "message": "Input: uinput - setup MT usage during device creation\n\nThe input devices created by uinput do not currently handle multitouch\nproperly. All events will appear as if they came from slot zero, and\nthe input event buffers are not adjusted. This patch creates the MT\nslots during setup, and sets the number of events per packet based\non the MT usage.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "1f7930c55e1c1a2b6d5793a1002b31590356558c",
      "tree": "f9991e00643f2d7eb9744142a8f529a8388d46e0",
      "parents": [
        "528487081aad32da85bf99802bdb7af32f4922b9"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 15 19:36:34 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 15 23:10:53 2010 -0700"
      },
      "message": "Input: ati_remote2 - switch to using new keycode interface\n\nSwitch the code to use new style of getkeycode and setkeycode\nmethods to allow retrieving and setting keycodes not only by\ntheir scancodes but also by index.\n\nAcked-by: Ville Syrjälä \u003csyrjala@sci.fi\u003e\nTested-by: Jarod Wilson \u003cjarod@wilsonet.com\u003e\nTested-by: Ville Syrjälä \u003csyrjala@sci.fi\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "53957b56d765f4602715fefb1c553f7a538b3230",
      "tree": "8517153f5eb9ba995d042dced20e79cc2a60ea97",
      "parents": [
        "24dd3b58228d463254ee57c3811afea831b8a024"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Sep 13 23:53:55 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Sep 14 00:22:50 2010 -0700"
      },
      "message": "Input: serio - do not include linux/freezer.h\n\nCommit ea486e681188d64c6a101d8d06414aef0f9f0cd3 changed kseriod thread\nto become not freezable so we do not need this include anymore.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "24dd3b58228d463254ee57c3811afea831b8a024",
      "tree": "6cdb9644a9afa4d7da832864a4120089f4a2b844",
      "parents": [
        "33d5f713a19b0f5cb93e0594f7206d2730cf39da"
      ],
      "author": {
        "name": "Xing Wei",
        "email": "weixing@hanwang.com.cn",
        "time": "Sun Sep 12 00:24:17 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 12 00:24:48 2010 -0700"
      },
      "message": "Input: hanwang - make compatible with xf86-input-wacom driver\n\nAdd necessary events so that Hanwang Art Master III tablet can be handled\nby the stock xf86-input-wacom driver.\n\nSigned-off-by: Xing Wei \u003cweixing@hanwang.com.cn\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "33d5f713a19b0f5cb93e0594f7206d2730cf39da",
      "tree": "a905f72db302f6dfd114a0e83325b844d6e06120",
      "parents": [
        "2aaacb153689dbe9064e4db7e9d00de0edfc1fa0"
      ],
      "author": {
        "name": "Chris Bagwell",
        "email": "chris@cnpbagwell.com",
        "time": "Sun Sep 12 00:12:28 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 12 00:13:38 2010 -0700"
      },
      "message": "Input: wacom - disable Bamboo touchpad when pen is being used\n\nSigned-off-by: Chris Bagwell \u003cchris@cnpbagwell.com\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "2aaacb153689dbe9064e4db7e9d00de0edfc1fa0",
      "tree": "0d4a108f6da71d2e3109d4f4456bc44b0befe1f2",
      "parents": [
        "e1d38e49ad97eec5024342e1244279b645e36688"
      ],
      "author": {
        "name": "Chris Bagwell",
        "email": "chris@cnpbagwell.com",
        "time": "Sun Sep 12 00:11:35 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 12 00:13:32 2010 -0700"
      },
      "message": "Input: wacom - add support for Bamboo Pen\n\nThis adds support for Pen on Bamboo Pen and Bamboo Pen\u0026Touch devices.\nTouchpad is handled by previous Bamboo Touch logic.\n\nSigned-off-by: Chris Bagwell \u003cchris@cnpbagwell.com\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "e1d38e49ad97eec5024342e1244279b645e36688",
      "tree": "e5ee786fef4b3976e66a73cb0446911fc186f1bd",
      "parents": [
        "3dc9f40de4dddf9147b80cf15be633189a2b70f4"
      ],
      "author": {
        "name": "Chris Bagwell",
        "email": "chris@cnpbagwell.com",
        "time": "Sun Sep 12 00:09:27 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 12 00:13:27 2010 -0700"
      },
      "message": "Input: wacom - move Bamboo Touch irq to its own function\n\nThis is in preparation of pen support in same irq handler.\n\nSigned-off-by: Chris Bagwell \u003cchris@cnpbagwell.com\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "3dc9f40de4dddf9147b80cf15be633189a2b70f4",
      "tree": "fd5229f44f7213652d05f0bc791d3206737148c8",
      "parents": [
        "a0bf0ea809ba0a7621e191ec4cab5775d502ef7e"
      ],
      "author": {
        "name": "Chris Bagwell",
        "email": "chris@cnpbagwell.com",
        "time": "Sun Sep 12 00:08:40 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 12 00:13:23 2010 -0700"
      },
      "message": "Input: wacom - request tablet data for Bamboo Pens\n\nBamboo P\u0026T need to use second form of usb_set_report() to\nask to report tablet data.\n\nWith previous addition of Bamboo Touch, BTN_TOOL_TRIPLETAP is now used\nfor both TABLETPC2FG and BAMBOO_PT types.  So reduced check to\nmatch type\u003dTABLETPC2FG.\n\nThis change shows redundant check for !TABLETPC2FG in else statement.\n\nSigned-off-by: Chris Bagwell \u003cchris@cnpbagwell.com\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "67127f3061cc486572a50990a1fd919ddde48c40",
      "tree": "c4d712c1966bb651f7a61f6983288a1992fba21c",
      "parents": [
        "8613e4c2872a87cc309a42de2c7091744dc54d0e"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 09 21:54:22 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 09 22:01:07 2010 -0700"
      },
      "message": "Input: sparse-keymap - switch to using new keycode interface\n\nSwitch sparse keymap library to use new style of getkeycode and\nsetkeycode methods to allow retrieving and setting keycodes not\nonly by their scancodes but also by index.\n\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "8613e4c2872a87cc309a42de2c7091744dc54d0e",
      "tree": "75b6513268aca8b614f3b2a55421c7a07b4a9899",
      "parents": [
        "a4e6aad64735702256e4feaa4724eb776ca4e637"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu Sep 09 21:54:22 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 09 22:00:50 2010 -0700"
      },
      "message": "Input: add support for large scancodes\n\nSeveral devices use a high number of bits for scancodes. One important\ngroup is the Remote Controllers. Some new protocols like RC-6 define a\nscancode space of 64 bits.\n\nThe current EVIO[CS]GKEYCODE ioctls allow replace the scancode/keycode\ntranslation tables, but it is limited to up to 32 bits for scancode.\n\nAlso, if userspace wants to clean the existing table, replacing it by\na new one, it needs to run a loop calling the ioctls over the entire\nsparse scancode space.\n\nTo solve those problems, this patch extends the ioctls to allow drivers\nhandle scancodes up to 32 bytes long (the length could be extended in\nthe future should such need arise) and allow userspace to query and set\nscancode to keycode mappings not only by scancode but also by index.\n\nCompatibility code were also added to handle the old format of\nEVIO[CS]GKEYCODE ioctls.\n\nFolded fixes by:\n- Dan Carpenter: locking fixes for the original implementation\n- Jarod Wilson: fix crash when setting keycode and wiring up get/set\n                handlers in original implementation.\n- Dmitry Torokhov: rework to consolidate old and new scancode handling,\n                   provide options to act either by index or scancode.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Jarod Wilson \u003cjarod@redhat.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "a4e6aad64735702256e4feaa4724eb776ca4e637",
      "tree": "df8b6bc9d996ca14d7c55182ca074aae5fc430d5",
      "parents": [
        "f4ccbef2886968ed409939531f6dd0474d53a12a"
      ],
      "author": {
        "name": "James Ketrenos",
        "email": "jketreno@linux.intel.com",
        "time": "Mon Sep 06 12:49:33 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Sep 06 12:49:54 2010 -0700"
      },
      "message": "Input: cy8ctmg110 - add fuzz to ABS_X and ABS_Y to remove jitter\n\nWithout this the jitter on the touchscreen makes it hard to use for\nmost GUI toolkits.\n\nSigned-off-by: James Ketrenos\u003cjketreno@linux.intel.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "f4ccbef2886968ed409939531f6dd0474d53a12a",
      "tree": "764b513e40b681bf3bd908e40e8e3a21015d7579",
      "parents": [
        "cb734c03680eaaad64a20a666300eafd1ac260b2"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Sun Sep 05 12:57:13 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:58:22 2010 -0700"
      },
      "message": "Input: wacom - add a quirk for low resolution Bamboo devices\n\nThe Bamboo Touch reports a sub-screen resolution of 480x320.  The\nsignal-to-noise ratio is only about 100, so filtering is needed in\norder to reduce the jitter to a usable level. However, the low\nresolution leads to round-off errors in the EWMA filter, resulting in\nextremely jerky pointer motion. This patch explicitly sets a higher\nresolution for those devices, and tells this to the completion handler\nvia a low-resolution quirk.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "cb734c03680eaaad64a20a666300eafd1ac260b2",
      "tree": "f32070df68914c35477e36662783d84b5a9ac9f2",
      "parents": [
        "bc73dd39e78dd6e5b34cd938b7f037a8bc041bdd"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Sun Sep 05 12:53:16 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:58:17 2010 -0700"
      },
      "message": "Input: wacom - add support for the Bamboo Touch trackpad\n\nAdd support for the Bamboo Touch trackpad, and make it work with\nboth the Synaptics X Driver and the Multitouch X Driver. The device\nuses MT slots internally, so the choice of protocol is a given.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "bc73dd39e78dd6e5b34cd938b7f037a8bc041bdd",
      "tree": "9a2a8c5ea217708646e76429d274cbf25d1ebd2e",
      "parents": [
        "4a88081e739a41d6d70bace7e0a027f9054ab540"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Sun Sep 05 12:26:16 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:58:12 2010 -0700"
      },
      "message": "Input: wacom - collect device quirks into single function\n\nCollect device-specific code into a single function, and use quirks to\nflag specific behavior instead.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "4a88081e739a41d6d70bace7e0a027f9054ab540",
      "tree": "8fd8ddd30cc3ad4c53debdb174b987060621fba5",
      "parents": [
        "fed87e655a2c20468d628b37424af58287803afe"
      ],
      "author": {
        "name": "Ping Cheng",
        "email": "pinglinux@gmail.com",
        "time": "Sun Sep 05 12:25:40 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:58:03 2010 -0700"
      },
      "message": "Input: wacom - parse the Bamboo device family\n\nThe Bamboo devices have multiple interfaces which need to be setup\nseparately. Use the HID parsing mechanism to achieve that.\n\nSigned-off-by: Ping Cheng \u003cpinglinux@gmail.com\u003e\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "fed87e655a2c20468d628b37424af58287803afe",
      "tree": "04e683df294ce2f1eff04196f9454539f236f986",
      "parents": [
        "92944c1c943647c7eb39c081feeecdd169f68ee4"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Sun Sep 05 12:25:11 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:57:58 2010 -0700"
      },
      "message": "Input: wacom - add fuzz parameters to features\n\nThe signal-to-noise ratio varies between devices, but currently all\ndevices are treated the same way. Add fuzz parameters to the feature\nstruct, allowing for tailored treatment of devices.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nAcked-by: Ping Cheng \u003cpingc@wacom.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "92944c1c943647c7eb39c081feeecdd169f68ee4",
      "tree": "1412deee46f6be19cf9b5a65a8d76ed4553866a8",
      "parents": [
        "77686517977e77d101c8a7b397717df00a88922b",
        "d4f5f937c3dfdea9f49c3cdeea8813b0d9f7715a"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:20:24 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:20:24 2010 -0700"
      },
      "message": "Merge branch \u0027mrst-touchscreen\u0027 into next\n\nConflicts:\n\tdrivers/input/touchscreen/Makefile\n"
    },
    {
      "commit": "77686517977e77d101c8a7b397717df00a88922b",
      "tree": "03e295f699d4795a594f0329e2434df6738b6755",
      "parents": [
        "144c0f8833d0458e4369a27a53aea8856c665c41"
      ],
      "author": {
        "name": "Sundar R Iyer",
        "email": "sundar.iyer@stericsson.com",
        "time": "Sun Sep 05 12:18:47 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:19:10 2010 -0700"
      },
      "message": "Input: add support for PowerOn button on the AB8500 MFD\n\nAdd the PowerOn (PonKey) button support to detect power on/off events.\n\nAcked-by: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nSigned-off-by: Sundar R Iyer \u003csundar.iyer@stericsson.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "144c0f8833d0458e4369a27a53aea8856c665c41",
      "tree": "fa0ee26cc25ea7deb2e5e11095ff77e115980bfa",
      "parents": [
        "eb54ddd4d78e62647b7096e4ada7389dbdf2cea7"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Sep 03 10:31:05 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:15:14 2010 -0700"
      },
      "message": "Input: fix a few typos\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "eb54ddd4d78e62647b7096e4ada7389dbdf2cea7",
      "tree": "cef6a031b465523fac6e0f5c1b1466e1aa986b02",
      "parents": [
        "d3622e6f05b2134deb5ba8ca2f6bcce5391e7e6d"
      ],
      "author": {
        "name": "Eric Millbrandt",
        "email": "emillbrandt@dekaresearch.com",
        "time": "Fri Sep 03 10:31:05 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:14:36 2010 -0700"
      },
      "message": "Input: wm97xx-core - add retries to wm97xx_read_aux_adc\n\nAdd logic to wm97xx_read_aux_adc() to retry reading the adc if the\nsample failed.  This could occur if the previous sample was still in\nthe return register or the sample timed-out.  Also avoid a pathologic\nfailure mode by disabling the digitizer and returning -EBUSY after 5\nretries.\n\nSigned-off-by: Eric Millbrandt \u003cemillbrandt@dekaresearch.com\u003e\nAcked-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "d3622e6f05b2134deb5ba8ca2f6bcce5391e7e6d",
      "tree": "2155e3ed454c2d8baa7d128eb3da72345dcb17b2",
      "parents": [
        "cdd194779b72fe6d5e1b5b67ef57a0fddbd60eac"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Fri Sep 03 10:31:04 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:12:57 2010 -0700"
      },
      "message": "Input: wm97xx-core - simplify error path in wm97xx_probe()\n\nUse platform_device_del() instead of platform_device_unregister() in error\nhandling path.\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nAcked-by: Liam Girdwood \u003clrg@slimlogic.co.uk\u003e\nAcked-by: Mark Brown \u003cbroonie@opensoruce.wolfsonmicro.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "cdd194779b72fe6d5e1b5b67ef57a0fddbd60eac",
      "tree": "999f398bac1e40138afe262368ff4febff7760aa",
      "parents": [
        "843cbfa74f1a443ce0def7fcc799803f34faa71c"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Thu Sep 02 19:54:27 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Sep 05 12:09:12 2010 -0700"
      },
      "message": "Input: stmpe-ts - return -ENOMEM when memory allocation fails\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nAcked-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "843cbfa74f1a443ce0def7fcc799803f34faa71c",
      "tree": "07c8aec14d5faba8612430981ae8868dcd8b49e2",
      "parents": [
        "b496acb7fe567546d414fb9807524ab92828ca25"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Thu Sep 02 19:52:49 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 02 20:14:14 2010 -0700"
      },
      "message": "Input: stmpe-ts - remove input_free_device() in stmpe_ts_remove()\n\nIt is forbidden to call input_free_device() after input_unregister_device().\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "b496acb7fe567546d414fb9807524ab92828ca25",
      "tree": "efa2f6d506c8a06b263f987d38cbe09789eae7c3",
      "parents": [
        "8a26f5d18d45d49ff38ad2ddfed9c783dd2a19ab"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Thu Sep 02 19:52:41 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 02 20:14:00 2010 -0700"
      },
      "message": "Input: tsc2007 - fix a redundant assignment for pdata\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "8a26f5d18d45d49ff38ad2ddfed9c783dd2a19ab",
      "tree": "4e61dff558320a44cab81ba83b8120ce99cfd2f3",
      "parents": [
        "98417884477eb3c2d9c19a69c070f7f347af6d76"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Thu Sep 02 19:52:37 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 02 20:12:42 2010 -0700"
      },
      "message": "Input: tps6507x-ts - properly unregister input device on removal\n\nOnce device is registered we should call input_unregister_device()\ninstead of input_free_device().\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "98417884477eb3c2d9c19a69c070f7f347af6d76",
      "tree": "664da56ac68fff34aaf089703c349271c6a64c45",
      "parents": [
        "ec1496b39576a3374e5461caac17b83b3275dbb7"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Thu Sep 02 10:26:35 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 02 20:12:07 2010 -0700"
      },
      "message": "Input: tps6507x-ts - add missing call to platform_set_drvdata()\n\nWe call platform_get_drvdata() in tps6507x_ts_remove(),\nthus we should call platform_set_drvdata() in tps6507x_ts_probe().\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "ec1496b39576a3374e5461caac17b83b3275dbb7",
      "tree": "5942deae147837fea830fce9d71b7cc087ec74a9",
      "parents": [
        "bba5394ad3bd23fff6987fc8bc3aaf9d12433c63"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Thu Sep 02 10:26:31 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Thu Sep 02 20:11:52 2010 -0700"
      },
      "message": "Input: s3c2410_ts - fix s3c2410ts_probe error path\n\nUse input_free_device() to free devices that have not been registered.\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "bba5394ad3bd23fff6987fc8bc3aaf9d12433c63",
      "tree": "a926dfceef5ddc5bf17295de7445814edf1d7960",
      "parents": [
        "a17f79553f052f04d47689a842118f775f81b7e3"
      ],
      "author": {
        "name": "Xing Wei",
        "email": "weixing@hanwang.com.cn",
        "time": "Wed Sep 01 23:25:35 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 01 23:26:18 2010 -0700"
      },
      "message": "Input: add support for Hanwang tablets\n\nAdd support for Art Master III tablet of BeiJing HanwangTechnology Co, Ltd.\n\nSigned-off-by: Xing Wei \u003cweixing@hanwang.com.cn\u003e\nAcked-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "d4f5f937c3dfdea9f49c3cdeea8813b0d9f7715a",
      "tree": "f78c963b180caeb9729d59846d5b9d321db691f7",
      "parents": [
        "a9cfa2537c503229eed029dcb9916ffd74695f56"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Aug 31 23:00:52 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Wed Sep 01 19:43:36 2010 -0700"
      },
      "message": "Input: mrst-touchscreen - move out of staging\n\nThe driver is in reasonable shape now so let\u0027s move it out of staging.\n\nAcked-by: Alan Cox \u003calan@linux.intel.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "af045b86662f17bf130239a65995c61a34f00a6b",
      "tree": "d4f9c03e7934ca04e17f6f0be91884c889052cf8",
      "parents": [
        "57157becdd1d23e6c2b8661ffe6c78d7d605d121"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Aug 31 17:27:02 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Aug 31 18:28:15 2010 -0700"
      },
      "message": "Input: i8042 - fix device removal on unload\n\nWe need to call platform_device_unregister(i8042_platform_device)\nbefore calling platform_driver_unregister() because i8042_remove()\nresets i8042_platform_device to NULL. This leaves the platform device\ninstance behind and prevents driver reload.\n\nFixes https://bugzilla.kernel.org/show_bug.cgi?id\u003d16613\n\nReported-by: Seryodkin Victor \u003cvvscore@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "a17f79553f052f04d47689a842118f775f81b7e3",
      "tree": "d903f4924272058bc41d8560c6415dcdf312ccdf",
      "parents": [
        "3045a5f5202a1e0ab6ba2bf90a786cf4cae6932a"
      ],
      "author": {
        "name": "Abraham Arce",
        "email": "x0066660@ti.com",
        "time": "Tue Aug 31 17:05:27 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Aug 31 18:07:54 2010 -0700"
      },
      "message": "Input: add support for OMAP4 keyboard controller\n\nOMAP4 keyboard controller includes:\n  - built-in scanning algorithm\n  - debouncing feature\n\nDriver implementation is based on matrix_keypad.c\n\nSigned-off-by: Syed Rafiuddin \u003crafiuddin.syed@ti.com\u003e\nSigned-off-by: Abraham Arce \u003cx0066660@ti.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\n"
    },
    {
      "commit": "57157becdd1d23e6c2b8661ffe6c78d7d605d121",
      "tree": "1ad2dd430aff4b12e06cdd837ebb41d22defe1e2",
      "parents": [
        "ba4d695a90c9176fca8e45d6c872bbf4e8bed315"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Tue Aug 31 17:27:02 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Aug 31 18:00:02 2010 -0700"
      },
      "message": "Input: bcm5974 - adjust major/minor to scale\n\nBy visual inspection, the reported touch_major and touch_minor axes\nare a factor of two too small. Presumably the device actually reports\nthe semi-major and semi-minor axes. Corrected with this patch.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "3045a5f5202a1e0ab6ba2bf90a786cf4cae6932a",
      "tree": "1aad58ca30bfb76704a6fa0be4197efb1c9be770",
      "parents": [
        "5e8b9140f306ce30e7c56c568198720514efc872"
      ],
      "author": {
        "name": "Kevin Wells",
        "email": "wellsk40@gmail.com",
        "time": "Sat Aug 28 22:45:22 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Aug 28 22:46:18 2010 -0700"
      },
      "message": "Input: add LPC32xx touchscreen controller driver\n\nThis patch set introduces support for the LPC32xx touchscreen\ncontroller driver. The LPC32xx touchscreen controller supports\nautomated event detection and X/Y data conversion for resistive\ntouchscreens.\n\nSigned-off-by: Kevin Wells \u003cwellsk40@gmail.com\u003e\nSigned-off-by: Durgesh Pattamatta \u003cdurgesh.pattamatta@nxp.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "5e8b9140f306ce30e7c56c568198720514efc872",
      "tree": "ff2389c6ac6c049d5bd51d00c439326cd86f6103",
      "parents": [
        "aaba933eeb8d7f804508bc74baa58656240107f8"
      ],
      "author": {
        "name": "Peter Hutterer",
        "email": "peter.hutterer@who-t.net",
        "time": "Sat Aug 28 22:00:47 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Aug 28 22:46:14 2010 -0700"
      },
      "message": "Input: wacom_w8001 - add multitouch slot support\n\nSome serial wacom devices support two-finger touch. Test for this during\ninit and parse the touch packets accordingly. Touch packets are\nprocessed using Protocol B (MT Slots).\n\nNote: there are several wacom versions that do touch but not two-finger\ntouch. These are not catered for here, touch events for these are simply\ndiscarded.\n\nSigned-off-by: Peter Hutterer \u003cpeter.hutterer@who-t.net\u003e\nAcked-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "aaba933eeb8d7f804508bc74baa58656240107f8",
      "tree": "c2d5d1e94601f04fe74bdd44131d619c4cbcf4ef",
      "parents": [
        "2072f8db625cbdaba839fe7bb1b607d06884e685"
      ],
      "author": {
        "name": "Peter Hutterer",
        "email": "peter.hutterer@who-t.net",
        "time": "Sat Aug 28 22:00:47 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Aug 28 22:46:10 2010 -0700"
      },
      "message": "Input: wacom_w8001 - support (and ignore) touch tablets\n\nTablets that support touch input may report different sized packages,\ndepending on the touch sensor in the tablet. For now, discard the\npackages until we report them as touch input proper.\n\nSigned-off-by: Peter Hutterer \u003cpeter.hutterer@who-t.net\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "2072f8db625cbdaba839fe7bb1b607d06884e685",
      "tree": "a091298fb8b89f5fe6505072e4dc99f3b0ba9e98",
      "parents": [
        "ba4d695a90c9176fca8e45d6c872bbf4e8bed315"
      ],
      "author": {
        "name": "Peter Hutterer",
        "email": "peter.hutterer@who-t.net",
        "time": "Sat Aug 28 22:00:05 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Aug 28 22:46:04 2010 -0700"
      },
      "message": "Input: wacom_w8001 - send BTN_TOOL_PEN/RUBBER and BTN_STYLUS events\n\nThe protocol used by the w8001 supports status fields for tip, side\nswitch and eraser as well as a RDY field for proximity.\n\nThe protocol has a double usage for the f2 bit in the packet. If set,\nthe data is either pen + side2 button or eraser. Assume eraser if the\ndevice comes into proximity with the f2 bit set, otherwise trigger the\nside2 button. If the device comes into proximity with the f2 bit and\nthat bit disappears afterwards, fake proximity out for the eraser and\nproximity in for the pen.\n\nSigned-off-by: Peter Hutterer \u003cpeter.hutterer@who-t.net\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "ba4d695a90c9176fca8e45d6c872bbf4e8bed315",
      "tree": "48e9cefe52865fe5d1f24268081dc87139b3618f",
      "parents": [
        "2c4e9671edfef534e9726366707d64e63d44e7e6"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Sat Aug 28 21:33:50 2010 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Aug 28 21:39:43 2010 -0700"
      },
      "message": "Input: MT - initialize slots to unused\n\nFor MT slots, the ABS_MT_TRACKING_ID determines whether a slot is in use,\nbut currently leaves initialization up to the drivers. This patch sets the\nslot state to unused upon creation.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    }
  ],
  "next": "d9f66c1a46163c7c83411058516a69da547262f8"
}
