Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 70430786 authored by David Howells's avatar David Howells Committed by Linus Torvalds
Browse files

MN10300: Handle removal of struct uart_info



Commit ebd2c8f6 removed struct uart_info and
commit bdc04e31 further moved delta_msr_wait.
Fix up the MN10300 on-chip serial port drivers to comply with this.

Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent a7077099
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -85,7 +85,7 @@ void foo(void)
	OFFSET(__rx_buffer,		mn10300_serial_port, rx_buffer);
	OFFSET(__rx_inp,		mn10300_serial_port, rx_inp);
	OFFSET(__rx_outp,		mn10300_serial_port, rx_outp);
	OFFSET(__tx_info_buffer,	mn10300_serial_port, uart.info);
	OFFSET(__uart_state,		mn10300_serial_port, uart.state);
	OFFSET(__tx_xchar,		mn10300_serial_port, tx_xchar);
	OFFSET(__tx_break,		mn10300_serial_port, tx_break);
	OFFSET(__intr_flags,		mn10300_serial_port, intr_flags);
+1 −1
Original line number Diff line number Diff line
@@ -130,7 +130,7 @@ ENTRY(mn10300_serial_vdma_tx_handler)
	or	d2,d2
	bne	mnsc_vdma_tx_xchar

	mov	(__tx_info_buffer,a3),a2 # get the uart_info struct for Tx
	mov	(__uart_state,a3),a2	# see if the TTY Tx queue has anything in it
	mov	(__xmit_tail,a2),d3
	mov	(__xmit_head,a2),d2
	cmp	d3,d2
+7 −7
Original line number Diff line number Diff line
@@ -391,7 +391,7 @@ static int mask_test_and_clear(volatile u8 *ptr, u8 mask)
static void mn10300_serial_receive_interrupt(struct mn10300_serial_port *port)
{
	struct uart_icount *icount = &port->uart.icount;
	struct tty_struct *tty = port->uart.info->port.tty;
	struct tty_struct *tty = port->uart.state->port.tty;
	unsigned ix;
	int count;
	u8 st, ch, push, status, overrun;
@@ -566,16 +566,16 @@ static void mn10300_serial_transmit_interrupt(struct mn10300_serial_port *port)
{
	_enter("%s", port->name);

	if (!port->uart.info || !port->uart.info->port.tty) {
	if (!port->uart.state || !port->uart.state->port.tty) {
		mn10300_serial_dis_tx_intr(port);
		return;
	}

	if (uart_tx_stopped(&port->uart) ||
	    uart_circ_empty(&port->uart.info->xmit))
	    uart_circ_empty(&port->uart.state->xmit))
		mn10300_serial_dis_tx_intr(port);

	if (uart_circ_chars_pending(&port->uart.info->xmit) < WAKEUP_CHARS)
	if (uart_circ_chars_pending(&port->uart.state->xmit) < WAKEUP_CHARS)
		uart_write_wakeup(&port->uart);
}

@@ -596,7 +596,7 @@ static void mn10300_serial_cts_changed(struct mn10300_serial_port *port, u8 st)
	*port->_control = ctr;

	uart_handle_cts_change(&port->uart, st & SC2STR_CTS);
	wake_up_interruptible(&port->uart.info->delta_msr_wait);
	wake_up_interruptible(&port->uart.state->port.delta_msr_wait);
}

/*
@@ -705,8 +705,8 @@ static void mn10300_serial_start_tx(struct uart_port *_port)

	_enter("%s{%lu}",
	       port->name,
	       CIRC_CNT(&port->uart.info->xmit.head,
			&port->uart.info->xmit.tail,
	       CIRC_CNT(&port->uart.state->xmit.head,
			&port->uart.state->xmit.tail,
			UART_XMIT_SIZE));

	/* kick the virtual DMA controller */