iir = serial_in(up, UART_IIR);
        if (iir & UART_IIR_NO_INT)
                return IRQ_NONE;
-       spin_lock(&up->port.lock);
+       uart_port_lock(&up->port);
        lsr = serial_in(up, UART_LSR);
        if (lsr & UART_LSR_DR)
                receive_chars(up, &lsr);
        check_modem_status(up);
        if (lsr & UART_LSR_THRE)
                transmit_chars(up);
-       spin_unlock(&up->port.lock);
+       uart_port_unlock(&up->port);
        return IRQ_HANDLED;
 }
 
        unsigned long flags;
        unsigned int ret;
 
-       spin_lock_irqsave(&up->port.lock, flags);
+       uart_port_lock_irqsave(&up->port, &flags);
        ret = serial_in(up, UART_LSR) & UART_LSR_TEMT ? TIOCSER_TEMT : 0;
-       spin_unlock_irqrestore(&up->port.lock, flags);
+       uart_port_unlock_irqrestore(&up->port, flags);
 
        return ret;
 }
        struct uart_pxa_port *up = (struct uart_pxa_port *)port;
        unsigned long flags;
 
-       spin_lock_irqsave(&up->port.lock, flags);
+       uart_port_lock_irqsave(&up->port, &flags);
        if (break_state == -1)
                up->lcr |= UART_LCR_SBC;
        else
                up->lcr &= ~UART_LCR_SBC;
        serial_out(up, UART_LCR, up->lcr);
-       spin_unlock_irqrestore(&up->port.lock, flags);
+       uart_port_unlock_irqrestore(&up->port, flags);
 }
 
 static int serial_pxa_startup(struct uart_port *port)
         */
        serial_out(up, UART_LCR, UART_LCR_WLEN8);
 
-       spin_lock_irqsave(&up->port.lock, flags);
+       uart_port_lock_irqsave(&up->port, &flags);
        up->port.mctrl |= TIOCM_OUT2;
        serial_pxa_set_mctrl(&up->port, up->port.mctrl);
-       spin_unlock_irqrestore(&up->port.lock, flags);
+       uart_port_unlock_irqrestore(&up->port, flags);
 
        /*
         * Finally, enable interrupts.  Note: Modem status interrupts
        up->ier = 0;
        serial_out(up, UART_IER, 0);
 
-       spin_lock_irqsave(&up->port.lock, flags);
+       uart_port_lock_irqsave(&up->port, &flags);
        up->port.mctrl &= ~TIOCM_OUT2;
        serial_pxa_set_mctrl(&up->port, up->port.mctrl);
-       spin_unlock_irqrestore(&up->port.lock, flags);
+       uart_port_unlock_irqrestore(&up->port, flags);
 
        /*
         * Disable break condition and FIFOs
         * Ok, we're now changing the port state.  Do it with
         * interrupts disabled.
         */
-       spin_lock_irqsave(&up->port.lock, flags);
+       uart_port_lock_irqsave(&up->port, &flags);
 
        /*
         * Ensure the port will be enabled.
        up->lcr = cval;                                 /* Save LCR */
        serial_pxa_set_mctrl(&up->port, up->port.mctrl);
        serial_out(up, UART_FCR, fcr);
-       spin_unlock_irqrestore(&up->port.lock, flags);
+       uart_port_unlock_irqrestore(&up->port, flags);
 }
 
 static void
        if (up->port.sysrq)
                locked = 0;
        else if (oops_in_progress)
-               locked = spin_trylock(&up->port.lock);
+               locked = uart_port_trylock(&up->port);
        else
-               spin_lock(&up->port.lock);
+               uart_port_lock(&up->port);
 
        /*
         *      First save the IER then disable the interrupts
        serial_out(up, UART_IER, ier);
 
        if (locked)
-               spin_unlock(&up->port.lock);
+               uart_port_unlock(&up->port);
        local_irq_restore(flags);
        clk_disable(up->clk);