Re: [PATCH v2 1/1] x86/early_printk: Use __iomem address space for IO
From: Andy Shevchenko
Date: Fri Oct 09 2015 - 10:35:22 EST
On Fri, 2015-10-09 at 17:29 +0300, Andy Shevchenko wrote:
> There are following warnings on unpatched code:
>
> arch/x86/kernel/early_printk.c:198:32: warning: incorrect type in
> initializer (different address spaces)
> arch/x86/kernel/early_printk.c:198:32: expected void [noderef]
> <asn:2>*vaddr
> arch/x86/kernel/early_printk.c:198:32: got unsigned int [usertype]
> *<noident>
> arch/x86/kernel/early_printk.c:205:32: warning: incorrect type in
> initializer (different address spaces)
> arch/x86/kernel/early_printk.c:205:32: expected void [noderef]
> <asn:2>*vaddr
> arch/x86/kernel/early_printk.c:205:32: got unsigned int [usertype]
> *<noident>
This one is wrong, sorry for noise.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> ---
> v2:
> - amend subject line
> arch/x86/kernel/early_printk.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/kernel/early_printk.c
> b/arch/x86/kernel/early_printk.c
> index 076a4a7..77f2f5c 100644
> --- a/arch/x86/kernel/early_printk.c
> +++ b/arch/x86/kernel/early_printk.c
> @@ -195,14 +195,14 @@ static __init void early_serial_init(char *s)
> #ifdef CONFIG_PCI
> static void mem32_serial_out(unsigned long addr, int offset, int
> value)
> {
> - u32 *vaddr = (u32 *)addr;
> + void __iomem *vaddr = (void __iomem *)addr;
> /* shift implied by pointer type */
> writel(value, vaddr + offset);
> }
>
> static unsigned int mem32_serial_in(unsigned long addr, int offset)
> {
> - u32 *vaddr = (u32 *)addr;
> + void __iomem *vaddr = (void __iomem *)addr;
> /* shift implied by pointer type */
> return readl(vaddr + offset);
> }
--
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy
--
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/