Hi Sergei

> > +                   if (card->host->caps2 & MMC_CAP2_2BLKS_LIMIT) {
> > +                           /*
> > +                            * In some controllers, when performing a
> > +                            * multiple block read of one or two blocks,
> > +                            * depending on the timing with which the
> > +                            * response register is read, the response
> > +                            * value may not be read properly.
> > +                            * Use single block read for this HW bug
> > +                            */
> > +                           if (brq->data.blocks == 2)
> > +                                   brq->data.blocks = 1;
> 
>     I don't understand: previous code set 'brq->data.blocks' to 1 in any case 
> without your extra flag. Why there's a need to set it specifically for 2 
> blocks (and not set for a larger # of blocks)? This looks like an 
> optimization 
> of some sort, not a workaround?..

Basically, we want to use multi block read.
Otherwise, the speed will be super slow
if it always use single block.
(Previous code force to single block)

But we need to switch to single block mode
if brq->data.blocks == 2.
Please read the above comment for detail.
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to