tty/serial/pmac_zilog: Fix suspend & resume
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Thu, 15 Dec 2011 00:13:03 +0000 (11:13 +1100)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 16 Dec 2011 00:10:01 +0000 (11:10 +1100)
commita79dd5ae5a8f49688d65b89a859f2b98a7ee5538
tree38c215db8b9e4a7be1a05a0e4d1e4081095cdb8f
parent43ca5d347acc0dcae988dbd38b5bb5a930744a75
tty/serial/pmac_zilog: Fix suspend & resume

This patch reworks & simplifies pmac_zilog handling of suspend/resume,
essentially removing all the specific code in there and using the
generic uart helpers.

This required properly registering the tty as a child of the macio (or platform)
device, so I had to delay the registration a bit (we used to register the ports
very very early). We still register the kernel console early though.

I removed a couple of unused or useless flags as well, relying on the
core to not call us when asleep. I also removed the essentially useless
interrupt mutex, simplifying the locking a bit.

I removed some code for handling unexpected interrupt which should never
be hit and could potentially be harmful (causing us to access a register
on a powered off SCC). We diable port interrupts on close always so there
should be no need to drain data on a closed port.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
drivers/tty/serial/pmac_zilog.c
drivers/tty/serial/pmac_zilog.h