)]}'
{
  "commit": "94abc56f4d90f289ea32a0a11d3577fcd8cb28fb",
  "tree": "6faefe4f3d4165536a6888db627a31734bfb0f4b",
  "parents": [
    "153d3d9be7ce6d87a83e4871ec94ddf6b9604814"
  ],
  "author": {
    "name": "Ning Jiang",
    "email": "ning.jiang@marvell.com",
    "time": "Mon Sep 05 16:28:18 2011 +0800"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@suse.de",
    "time": "Thu Sep 22 16:08:56 2011 -0700"
  },
  "message": "serial-core: power up uart port early before we do set_termios when resuming\n\nThe following patch removed uart_change_pm() in uart_resume_port():\n\ncommit 5933a161abcb8d83a2c145177f48027c3c0a8995\nAuthor: Yin Kangkai \u003ckangkai.yin@linux.intel.com\u003e\n    serial-core: reset the console speed on resume\n\nIt will break the pxa serial driver when the system resumes from suspend mode\nas it will try to set baud rate divider register in set_termios but with\nclock off. The register value can not be set correctly on some platform if\nthe clock is disabled. The pxa driver will check the value and report the\nfollowing warning:\n\n------------[ cut here ]------------\nWARNING: at drivers/tty/serial/pxa.c:545 serial_pxa_set_termios+0x1dc/0x250()\nModules linked in:\n[\u003cc0281f30\u003e] (unwind_backtrace+0x0/0xf0) from [\u003cc029341c\u003e] (warn_slowpath_common+0x4c/0x64)\n[\u003cc029341c\u003e] (warn_slowpath_common+0x4c/0x64) from [\u003cc029344c\u003e] (warn_slowpath_null+0x18/0x1c)\n[\u003cc029344c\u003e] (warn_slowpath_null+0x18/0x1c) from [\u003cc044b1e4\u003e] (serial_pxa_set_termios+0x1dc/0x250)\n[\u003cc044b1e4\u003e] (serial_pxa_set_termios+0x1dc/0x250) from [\u003cc044a840\u003e] (uart_resume_port+0x128/0x2dc)\n[\u003cc044a840\u003e] (uart_resume_port+0x128/0x2dc) from [\u003cc044bbe0\u003e] (serial_pxa_resume+0x18/0x24)\n[\u003cc044bbe0\u003e] (serial_pxa_resume+0x18/0x24) from [\u003cc0454d34\u003e] (platform_pm_resume+0x40/0x4c)\n[\u003cc0454d34\u003e] (platform_pm_resume+0x40/0x4c) from [\u003cc0457ebc\u003e] (pm_op+0x68/0xb4)\n[\u003cc0457ebc\u003e] (pm_op+0x68/0xb4) from [\u003cc0458368\u003e] (device_resume+0xb0/0xec)\n[\u003cc0458368\u003e] (device_resume+0xb0/0xec) from [\u003cc04584c8\u003e] (dpm_resume+0xe0/0x194)\n[\u003cc04584c8\u003e] (dpm_resume+0xe0/0x194) from [\u003cc0458588\u003e] (dpm_resume_end+0xc/0x18)\n[\u003cc0458588\u003e] (dpm_resume_end+0xc/0x18) from [\u003cc02c518c\u003e] (suspend_devices_and_enter+0x16c/0x1ac)\n[\u003cc02c518c\u003e] (suspend_devices_and_enter+0x16c/0x1ac) from [\u003cc02c5278\u003e] (enter_state+0xac/0xdc)\n[\u003cc02c5278\u003e] (enter_state+0xac/0xdc) from [\u003cc02c48ec\u003e] (state_store+0xa0/0xbc)\n[\u003cc02c48ec\u003e] (state_store+0xa0/0xbc) from [\u003cc0408f7c\u003e] (kobj_attr_store+0x18/0x1c)\n[\u003cc0408f7c\u003e] (kobj_attr_store+0x18/0x1c) from [\u003cc034a6a4\u003e] (sysfs_write_file+0x108/0x140)\n[\u003cc034a6a4\u003e] (sysfs_write_file+0x108/0x140) from [\u003cc02fb798\u003e] (vfs_write+0xac/0x134)\n[\u003cc02fb798\u003e] (vfs_write+0xac/0x134) from [\u003cc02fb8cc\u003e] (sys_write+0x3c/0x68)\n[\u003cc02fb8cc\u003e] (sys_write+0x3c/0x68) from [\u003cc027c700\u003e] (ret_fast_syscall+0x0/0x2c)\n---[ end trace 88289eceb4675b04 ]---\n\nThis patch fix the problem by adding the power on opertion back for uart\nconsole when console_suspend_enabled is true.\n\nSigned-off-by: Ning Jiang \u003cning.jiang@marvell.com\u003e\nTested-by: Mayank Rana \u003cmrana@codeaurora.org\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a32dc43622242bbc305c0628b3670418c3d1c76a",
      "old_mode": 33188,
      "old_path": "drivers/tty/serial/serial_core.c",
      "new_id": "e562b1224466a39a4d744f9f0bb2a5544b42bf08",
      "new_mode": 33188,
      "new_path": "drivers/tty/serial/serial_core.c"
    }
  ]
}
