Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753933AbbDPQPE (ORCPT ); Thu, 16 Apr 2015 12:15:04 -0400 Received: from mail-oi0-f52.google.com ([209.85.218.52]:33296 "EHLO mail-oi0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752100AbbDPQO4 (ORCPT ); Thu, 16 Apr 2015 12:14:56 -0400 MIME-Version: 1.0 In-Reply-To: <1429191546-1398-1-git-send-email-peter.senna@gmail.com> References: <20150413122911.GW10964@mwanda> <1429191546-1398-1-git-send-email-peter.senna@gmail.com> Date: Thu, 16 Apr 2015 18:14:55 +0200 X-Google-Sender-Auth: hiVxTMTT8iDyLTgHRRjhYMmdYTE Message-ID: Subject: Re: [PATCH V4] Fix pointer cast for 32 bits arch From: Geert Uytterhoeven To: Peter Senna Tschudin Cc: Greg Kroah-Hartman , Loic Pefferkorn , Alan , Jun Tian , Octavian Purdila , Garret Kelly , =?UTF-8?Q?Kristina_Mart=C5=A1enko?= , Nick Kralevich , Andreas , driverdevel , "linux-kernel@vger.kernel.org" , Dan Carpenter Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2932 Lines: 63 On Thu, Apr 16, 2015 at 3:39 PM, Peter Senna Tschudin wrote: > --- a/drivers/staging/goldfish/goldfish_audio.c > +++ b/drivers/staging/goldfish/goldfish_audio.c > @@ -63,7 +63,7 @@ struct goldfish_audio { > #define AUDIO_READ(data, addr) (readl(data->reg_base + addr)) > #define AUDIO_WRITE(data, addr, x) (writel(x, data->reg_base + addr)) > #define AUDIO_WRITE64(data, addr, addr2, x) \ > - (gf_write64((u64)(x), data->reg_base + addr, data->reg_base+addr2)) > + (gf_write_ptr((void *)(x), data->reg_base + addr, data->reg_base+addr2)) This one should not be converted, as all callers pass a dma_addr_t, which may be 64-bit on 32-bit systems, i.e. larger than void *. > diff --git a/drivers/tty/goldfish.c b/drivers/tty/goldfish.c > index 0655fec..8cbfa02 100644 > --- a/drivers/tty/goldfish.c > +++ b/drivers/tty/goldfish.c > @@ -59,8 +59,8 @@ static void goldfish_tty_do_write(int line, const char *buf, unsigned count) > struct goldfish_tty *qtty = &goldfish_ttys[line]; > void __iomem *base = qtty->base; > spin_lock_irqsave(&qtty->lock, irq_flags); > - gf_write64((u64)buf, base + GOLDFISH_TTY_DATA_PTR, > - base + GOLDFISH_TTY_DATA_PTR_HIGH); > + gf_write_ptr((void *)buf, base + GOLDFISH_TTY_DATA_PTR, Please drop the unneeded "void *" cast, as it will hide warnings if a type is changed some future time. > + base + GOLDFISH_TTY_DATA_PTR_HIGH); > writel(count, base + GOLDFISH_TTY_DATA_LEN); > writel(GOLDFISH_TTY_CMD_WRITE_BUFFER, base + GOLDFISH_TTY_CMD); > spin_unlock_irqrestore(&qtty->lock, irq_flags); > @@ -81,8 +81,8 @@ static irqreturn_t goldfish_tty_interrupt(int irq, void *dev_id) > > count = tty_prepare_flip_string(&qtty->port, &buf, count); > spin_lock_irqsave(&qtty->lock, irq_flags); > - gf_write64((u64)buf, base + GOLDFISH_TTY_DATA_PTR, > - base + GOLDFISH_TTY_DATA_PTR_HIGH); > + gf_write_ptr((void *)buf, base + GOLDFISH_TTY_DATA_PTR, Idem. > + base + GOLDFISH_TTY_DATA_PTR_HIGH); > writel(count, base + GOLDFISH_TTY_DATA_LEN); > writel(GOLDFISH_TTY_CMD_READ_BUFFER, base + GOLDFISH_TTY_CMD); > spin_unlock_irqrestore(&qtty->lock, irq_flags); Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/