X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=drivers%2Fmmc%2Fwbsd.c;h=cf16e44c030198c05b1d4f0e9766d1b99ac1b1bf;hb=55db890a838c7b37256241b1fc53d6344aa79cc0;hp=7a282672f8e9037d9995859e9fbdb31504ecbf94;hpb=651857a1ecaf97a8ad9d324dd2a61675c53e541e;p=powerpc.git diff --git a/drivers/mmc/wbsd.c b/drivers/mmc/wbsd.c index 7a282672f8..cf16e44c03 100644 --- a/drivers/mmc/wbsd.c +++ b/drivers/mmc/wbsd.c @@ -1343,16 +1343,27 @@ static int __devinit wbsd_alloc_mmc(struct device *dev) mmc->max_phys_segs = 128; /* - * Maximum number of sectors in one transfer. Also limited by 64kB - * buffer. + * Maximum request size. Also limited by 64KiB buffer. */ - mmc->max_sectors = 128; + mmc->max_req_size = 65536; /* * Maximum segment size. Could be one segment with the maximum number - * of segments. + * of bytes. */ - mmc->max_seg_size = mmc->max_sectors * 512; + mmc->max_seg_size = mmc->max_req_size; + + /* + * Maximum block size. We have 12 bits (= 4095) but have to subtract + * space for CRC. So the maximum is 4095 - 4*2 = 4087. + */ + mmc->max_blk_size = 4087; + + /* + * Maximum block count. There is no real limit so the maximum + * request size will be the only restriction. + */ + mmc->max_blk_count = mmc->max_req_size; dev_set_drvdata(dev, mmc);