Hello Wolfram,

> > > +         /* if count was multiple of 4 */
> > > +         if (!(count & 0x3))
> > > +                 return;
> > > +         buf8 = (u8 *)(buf + (count >> 2));
> > > +         count %= 4;
> >
> > To skip the same operation done on 'count' twice, maybe?
> >
> >             buf8 = (u8 *)(buf + (count >> 2));
> >             count &= 3;
> >
> >             if (!count)
> >                     return;
> 
> 
> That looks like it should work.
> I can try it out and see if there is something we are missing.

Seems to work fine. Although I admit that because the driver is mostly being 
used as a block device (SD card), all the data requests are an even multiple of 
4 (I put a printk after "if (!count) return;" ). Not sure if that will be the 
case when I test SDIO devices, but I'll find out once I start porting SDIO 
device drivers to 4.9+.


I'll submit a v4 of this patch series tomorrow.

Thank you.

Chris

Reply via email to