serial: atmel: allow compile testing on non-atmel architectures
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Wed, 30 Sep 2015 08:19:38 +0000 (10:19 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 4 Oct 2015 17:45:18 +0000 (18:45 +0100)
This commit also fixes compiler warnings and errors seen when building
on x86_64.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/Kconfig
drivers/tty/serial/atmel_serial.c

index 9e2cc51d205a75d8c27b5127187a4eb9a3bbbc0e..835ef4d3028f520a3785952f2a32b658d1874ab7 100644 (file)
@@ -115,9 +115,9 @@ config SERIAL_SB1250_DUART_CONSOLE
 
 config SERIAL_ATMEL
        bool "AT91 / AT32 on-chip serial port support"
-       depends on ARCH_AT91 || AVR32
+       depends on ARCH_AT91 || AVR32 || COMPILE_TEST
        select SERIAL_CORE
-       select SERIAL_MCTRL_GPIO
+       select SERIAL_MCTRL_GPIO if GPIOLIB
        help
          This enables the driver for the on-chip UARTs of the Atmel
          AT91 and AT32 processors.
index 98c84038518e2ee92a3c0a86d078997c2a720ee1..a89fd2998dbc78c237848158c0dbcf5889e655a9 100644 (file)
@@ -927,7 +927,7 @@ static int atmel_prepare_tx_dma(struct uart_port *port)
        sg_set_page(&atmel_port->sg_tx,
                        virt_to_page(port->state->xmit.buf),
                        UART_XMIT_SIZE,
-                       (int)port->state->xmit.buf & ~PAGE_MASK);
+                       (unsigned long)port->state->xmit.buf & ~PAGE_MASK);
        nent = dma_map_sg(port->dev,
                                &atmel_port->sg_tx,
                                1,
@@ -937,10 +937,10 @@ static int atmel_prepare_tx_dma(struct uart_port *port)
                dev_dbg(port->dev, "need to release resource of dma\n");
                goto chan_err;
        } else {
-               dev_dbg(port->dev, "%s: mapped %d@%p to %x\n", __func__,
+               dev_dbg(port->dev, "%s: mapped %d@%p to %pad\n", __func__,
                        sg_dma_len(&atmel_port->sg_tx),
                        port->state->xmit.buf,
-                       sg_dma_address(&atmel_port->sg_tx));
+                       &sg_dma_address(&atmel_port->sg_tx));
        }
 
        /* Configure the slave DMA */
@@ -1109,7 +1109,7 @@ static int atmel_prepare_rx_dma(struct uart_port *port)
        sg_set_page(&atmel_port->sg_rx,
                    virt_to_page(ring->buf),
                    sizeof(struct atmel_uart_char) * ATMEL_SERIAL_RINGSIZE,
-                   (int)ring->buf & ~PAGE_MASK);
+                   (unsigned long)ring->buf & ~PAGE_MASK);
        nent = dma_map_sg(port->dev,
                          &atmel_port->sg_rx,
                          1,
@@ -1119,10 +1119,10 @@ static int atmel_prepare_rx_dma(struct uart_port *port)
                dev_dbg(port->dev, "need to release resource of dma\n");
                goto chan_err;
        } else {
-               dev_dbg(port->dev, "%s: mapped %d@%p to %x\n", __func__,
+               dev_dbg(port->dev, "%s: mapped %d@%p to %pad\n", __func__,
                        sg_dma_len(&atmel_port->sg_rx),
                        ring->buf,
-                       sg_dma_address(&atmel_port->sg_rx));
+                       &sg_dma_address(&atmel_port->sg_rx));
        }
 
        /* Configure the slave DMA */