git: sdhci - Implement ADMA2 transfer support. Keep SDMA support for now.

Imre Vadasz ivadasz at crater.dragonflybsd.org
Sun May 14 10:03:09 PDT 2017


commit 4013580e521a076ec4ee86e0516e8652e0c087f8
Author: Imre Vadász <imre at vdsz.com>
Date:   Sat Jan 7 22:44:07 2017 +0100

    sdhci - Implement ADMA2 transfer support. Keep SDMA support for now.
    
    * Using ADMA2 transfers, only generates 1 or 2 interrupts for each
      bio transfer, whereas the existing SDMA code was only transferring
      in 4K blocks (with a completion interrupt for each 4K block).
    
    * Since support for UHS high-speed modes is still missing this might
      only give a small performance increase in many cases.
      With very aggressive CPU C-state power-management and/or very slow
      CPUs, this can improve performance a lot however. e.g. on an Atom
      x5-Z8300 at 480MHz using deepest mwait c-state setting:
        - eMMC read speed: ca. 17 MiB/s --> 30 MiB/s
        - SD-card read speed: ca. 11MiB/s --> 18MiB/s

Summary of changes:
 sys/dev/disk/sdhci/sdhci.c | 239 ++++++++++++++++++++++++++++++++++++++++-----
 sys/dev/disk/sdhci/sdhci.h |  15 ++-
 2 files changed, 227 insertions(+), 27 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/4013580e521a076ec4ee86e0516e8652e0c087f8


-- 
DragonFly BSD source repository



More information about the Commits mailing list