serial: drivers/serial/pmac_zilog.c: add missing unlock

In an error handling case the lock is not unlocked.

A simplified version of the semantic patch that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
expression E1;
identifier f;
@@

f (...) { <+...
* spin_lock_irqsave (E1,...);
... when != E1
* return ...;
...+> }
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by Julia Lawall and committed by Greg Kroah-Hartman c61fae96 d9901660

+3 -1
+3 -1
drivers/serial/pmac_zilog.c
··· 752 752 uap->curregs[R5] = new_reg; 753 753 754 754 /* NOTE: Not subject to 'transmitter active' rule. */ 755 - if (ZS_IS_ASLEEP(uap)) 755 + if (ZS_IS_ASLEEP(uap)) { 756 + spin_unlock_irqrestore(&port->lock, flags); 756 757 return; 758 + } 757 759 write_zsreg(uap, R5, uap->curregs[R5]); 758 760 } 759 761