Re: [PATCH] frv: add io{read,write}{16,32}be functions

From: Rob Herring
Date: Thu Apr 23 2015 - 00:11:55 EST


On Mon, Apr 20, 2015 at 10:36 AM, Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
> These functions are used in various drivers, including the latest
> version of the 8250 driver. The latter causes the following build
> failure.
>
> drivers/tty/serial/8250/8250_core.c: In function 'mem32be_serial_out':
> drivers/tty/serial/8250/8250_core.c:456:2: error:
> implicit declaration of function 'iowrite32be'
> drivers/tty/serial/8250/8250_core.c: In function 'mem32be_serial_in':
> drivers/tty/serial/8250/8250_core.c:462:2: error:
> implicit declaration of function 'ioread32be'
>
> Cc: Kevin Cernekee <cernekee@xxxxxxxxx>
> Cc: Rob Herring <robh@xxxxxxxxxx>
> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Fixes: c627f2ceb692 ("serial: 8250: Add support for big-endian MMIO
> accesses")
> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> ---
> Build failure seen in next-20150420.

Applied. Thanks.

Rob

>
> arch/frv/include/asm/io.h | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/arch/frv/include/asm/io.h b/arch/frv/include/asm/io.h
> index 99bb7ef..0b78bc8 100644
> --- a/arch/frv/include/asm/io.h
> +++ b/arch/frv/include/asm/io.h
> @@ -342,6 +342,11 @@ static inline void iowrite32(u32 val, void __iomem *p)
> __flush_PCI_writes();
> }
>
> +#define ioread16be(addr) be16_to_cpu(ioread16(addr))
> +#define ioread32be(addr) be32_to_cpu(ioread32(addr))
> +#define iowrite16be(v, addr) iowrite16(cpu_to_be16(v), (addr))
> +#define iowrite32be(v, addr) iowrite32(cpu_to_be32(v), (addr))
> +
> static inline void ioread8_rep(void __iomem *p, void *dst, unsigned long count)
> {
> io_insb((unsigned long) p, dst, count);
> --
> 2.1.0
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/