[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <92a12cdb0705151430o66e11fc3m2ec0abd423dc4a6e@mail.gmail.com>
Date: Tue, 15 May 2007 22:30:02 +0100
From: "Adrian McMenamin" <adrianmcmenamin@...il.com>
To: "Heikki Orsila" <shdl@...alwe.fi>
Cc: alsa-devel@...a-project.org, linux-kernel@...r.kernel.org,
linuxsh-dev@...ts.sourceforge.net
Subject: Re: [PATCH] ALSA sound driver for SEGA Dreamcast AICA (pcm)
On 15/05/07, Heikki Orsila <shdl@...alwe.fi> wrote:
> I still noticed some type cleanups, and possibly a good debug message..
>
> On Mon, May 14, 2007 at 11:14:55PM +0100, Adrian McMenamin wrote:
> > +/* spu_memload - write to SPU address space */
> > +static void spu_memload(u32 toi, void __iomem * from, int length)
> > +{
> > + u32 __iomem *froml = from;
> > + u32 __iomem *to = (u32 __iomem *) (SPU_MEMORY_BASE + toi);
> > + int i, val;
>
> You should use "void *from" because it's not IO memory. Also, use "u32 val"
> since that is the native type of "u32 *from".
>
> > + length = DIV_ROUND_UP(length, 4);
> > + spu_write_wait();
> > + for (i = 0; i < length; i++) {
> > + val = *froml;
> > + writel(val, to);
> > + froml++;
> > + to++;
> > + if (i && !(i % 8))
> > + spu_write_wait();
> > + }
> > +}
>
> It seems a small simplification is possible:
>
> /* remove first spu_write_wait(); */
> for (i = 0; i < length; i++) {
> if (!(i % 8))
> spu_write_wait();
> val = *froml;
> ...
> }
>
No, that would be dangerous because we don't know what state the FIFO
is in when this is called.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists