From 66d83ff4bc53d9294e80b91857ce21f39c32f6a7 Mon Sep 17 00:00:00 2001 From: Miod Vallat Date: Fri, 20 Feb 2009 19:16:36 +0000 Subject: Let the sdmmc adapters tell the sdmmc layer how much sectors they can transfer with one command. Build on this and the recent minphys() changes in the sdmmc layer to crank transfers at the maximum possible size instead of a sad DEV_BSIZE. Depending on your controller, this can speed up sdmmc I/O up to 2.5 times. --- sys/arch/arm/xscale/pxa2x0_mmc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'sys/arch') diff --git a/sys/arch/arm/xscale/pxa2x0_mmc.c b/sys/arch/arm/xscale/pxa2x0_mmc.c index be75be2c588..a2dca15ded4 100644 --- a/sys/arch/arm/xscale/pxa2x0_mmc.c +++ b/sys/arch/arm/xscale/pxa2x0_mmc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pxa2x0_mmc.c,v 1.3 2007/08/22 18:47:16 mglocker Exp $ */ +/* $OpenBSD: pxa2x0_mmc.c,v 1.4 2009/02/20 19:16:34 miod Exp $ */ /* * Copyright (c) 2007 Uwe Stuehler @@ -182,6 +182,8 @@ pxammc_attach(struct pxammc_softc *sc, void *aux) saa.saa_busname = "sdmmc"; saa.sct = &pxammc_functions; saa.sch = sc; + saa.flags = SMF_STOP_AFTER_MULTIPLE; + saa.max_xfer = 1; sc->sc_sdmmc = config_found(&sc->sc_dev, &saa, NULL); if (sc->sc_sdmmc == NULL) { -- cgit v1.2.3