RE: [PATCH] OMAP: HSMMC: Do not enable buffer ready interrupt if using DMA

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 06, 2009, Gadiyar, Anand wrote:
> On Tue, May 5, 2009, Jarkko Lavinen wrote: 
> > On Tue, Apr 21, 2009 at 09:39:22AM +0200, ext Gadiyar, Anand wrote:
> > > From: Anand Gadiyar <gadiyar@xxxxxx>
> > > 
> > > OMAP: HSMMC: Do not enable buffer ready interrupt if using DMA
> > > 
> > > This considerably reduces the number of interrupts during a transfer
> > > and ought to result in some power saving.
> > 
> > I tried the patch with reading from the raw mmc block device to
> > /dev/null with dd (with bs 32k and 1M).  I cannot see any
> > difference in interrupt count from /proc/interrupts or in read
> > speed. At least the patch works. Cpu was 34340es3.
> > 
> > I also trid without the patch just disabling the Buffer
> > Read/write Ready bits from INT_EN_MASK which is then written to
> > both MMCHS_IE and MMCHS_ISE.  Still no change in read speed nor
> > mmc irq count.
> > 
> > Cheers
> > Jarkko Lavinen
> 
> I discovered this while doing MMC writes. I did not check if there
> was any difference during a read. I notice you have only tested with
> MMC reads.
> 
> Here's what I get with and without the patch.
> 
> - Anand


Any comments on this? Is it safe to merge?

Thanks,
Anand



> 
> Without patch
> / # mount -t vfat /dev/mmcblk0 /mnt/mmc
> / # cat /proc/interrupts | grep mmc
>  83:         90        INTC  mmc0
> 384:          1     twl4030  mmc0
> / # dd if=/dev/zero of=/mnt/mmc/32kbs.txt bs=32k count=1000
> 1000+0 records in
> 1000+0 records out
> / # cat /proc/interrupts | grep mmc
>  83:       3760        INTC  mmc0
> 384:          1     twl4030  mmc0
> / # dd if=/dev/zero of=/mnt/mmc/1Mbs.txt bs=1M count=32
> 32+0 records in
> 32+0 records out
> / # cat /proc/interrupts | grep mmc
>  83:       7570        INTC  mmc0
> 384:          1     twl4030  mmc0
> / # ls -l /mnt/mmc
> -rwxr-xr-x    1 root     root     33554432 Dec 31 18:03 1Mbs.txt
> -rwxr-xr-x    1 root     root     32768000 Dec 31 18:03 32kbs.txt
> / # umount /mnt/mmc
> 
> 
> With patch
> / # mount -t vfat /dev/mmcblk0 /mnt/mmc
> / # cat /proc/interrupts | grep mmc
>  83:         67        INTC  mmc0
> 384:          0     twl4030  mmc0
> / # dd if=/dev/zero of=/mnt/mmc/32kbs.txt bs=32k count=1000
> 1000+0 records in
> 1000+0 records out
> / # cat /proc/interrupts | grep mmc
>  83:       3103        INTC  mmc0
> 384:          0     twl4030  mmc0
> / # dd if=/dev/zero of=/mnt/mmc/1Mbs.txt bs=1M count=32
> 32+0 records in
> 32+0 records out
> / # cat /proc/interrupts | grep mmc
>  83:       6170        INTC  mmc0
> 384:          0     twl4030  mmc0
> / # ls -l /mnt/mmc
> -rwxr-xr-x    1 root     root     33554432 Dec 31 18:01 1Mbs.txt
> -rwxr-xr-x    1 root     root     32768000 Dec 31 18:00 32kbs.txt
> / # umount /mnt/mmc 
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux