diff options
author | Nava kishore Manne <nava.manne@xilinx.com> | 2018-09-03 15:10:51 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-09-18 16:07:22 +0200 |
commit | 4b9d33c6a30688344a3e95179654ea31b07f59b7 (patch) | |
tree | f9d84dce8aab7406722201c4b5e334a6b3d09e4d /drivers/misc/ibmasm/module.c | |
parent | 77ec669f257b2d71a641a5c67fc9ca826a8e227e (diff) |
serial: uartps: Fix suspend functionality
The driver's suspend/resume functions were buggy.
If UART node contains any child node in the DT and
the child is established a communication path with
the parent UART. The relevant /dev/ttyPS* node will
be not available for other operations.
If the driver is trying to do any operations like
suspend/resume without checking the tty->dev status
it leads to the kernel crash/hang.
This patch fix this issue by call the device_may_wake()
with the generic parameter of type struct device.
in the uart suspend and resume paths.
It also fixes a race condition in the uart suspend
path(i.e uart_suspend_port() should be called at the
end of cdns_uart_suspend API this path updates the same)
Signed-off-by: Nava kishore Manne <navam@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/ibmasm/module.c')
0 files changed, 0 insertions, 0 deletions