From 9572b1f23fb60dc2c55bde196a7070f57fc20a92 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 Aug 2012 19:02:14 +0100 Subject: [PATCH 023/196] Add module parameter for missing_status quirk. sdhci-bcm2708.missing_status=0 may improve interrupt latency --- drivers/mmc/host/sdhci-bcm2708.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/sdhci-bcm2708.c b/drivers/mmc/host/sdhci-bcm2708.c index c6d6bb0..8243593 100644 --- a/drivers/mmc/host/sdhci-bcm2708.c +++ b/drivers/mmc/host/sdhci-bcm2708.c @@ -134,6 +134,7 @@ static inline unsigned long int since_ns(hptime_t t) static bool allow_highspeed = 1; static int emmc_clock_freq = BCM2708_EMMC_CLOCK_FREQ; static bool sync_after_dma = 1; +static bool missing_status = 1; #if 0 static void hptime_test(void) @@ -1150,7 +1151,6 @@ static struct sdhci_ops sdhci_bcm2708_ops = { .spurious_crc_acmd51 = sdhci_bcm2708_quirk_spurious_crc, .voltage_broken = sdhci_bcm2708_quirk_voltage_broken, .uhs_broken = sdhci_bcm2708_uhs_broken, - .missing_status = sdhci_bcm2708_missing_status, }; /*****************************************************************************\ @@ -1189,6 +1189,9 @@ static int sdhci_bcm2708_probe(struct platform_device *pdev) ret = PTR_ERR(host); goto err; } + if (missing_status) { + sdhci_bcm2708_ops.missing_status = sdhci_bcm2708_missing_status; + } host->hw_name = "BCM2708_Arasan"; host->ops = &sdhci_bcm2708_ops; @@ -1380,6 +1383,7 @@ module_exit(sdhci_drv_exit); module_param(allow_highspeed, bool, 0444); module_param(emmc_clock_freq, int, 0444); module_param(sync_after_dma, bool, 0444); +module_param(missing_status, bool, 0444); MODULE_DESCRIPTION("Secure Digital Host Controller Interface platform driver"); MODULE_AUTHOR("Broadcom "); @@ -1389,5 +1393,6 @@ MODULE_ALIAS("platform:"DRIVER_NAME); MODULE_PARM_DESC(allow_highspeed, "Allow high speed transfers modes"); MODULE_PARM_DESC(emmc_clock_freq, "Specify the speed of emmc clock"); MODULE_PARM_DESC(sync_after_dma, "Block in driver until dma complete"); +MODULE_PARM_DESC(missing_status, "Use the missing status quirk"); -- 1.9.1