Skip to content

Commit c6851e9

Browse files
committed
Add module parameter for missing_status quirk. sdhci-bcm2708.missing_status=0 may improve interrupt latency
1 parent 37443a0 commit c6851e9

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

drivers/mmc/host/sdhci-bcm2708.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ static inline unsigned long int since_ns(hptime_t t)
139139
static bool allow_highspeed = 1;
140140
static int emmc_clock_freq = BCM2708_EMMC_CLOCK_FREQ;
141141
static bool sync_after_dma = 1;
142+
static bool missing_status = 1;
142143

143144
#if 0
144145
static void hptime_test(void)
@@ -1271,7 +1272,6 @@ static struct sdhci_ops sdhci_bcm2708_ops = {
12711272
.spurious_crc_acmd51 = sdhci_bcm2708_quirk_spurious_crc,
12721273
.voltage_broken = sdhci_bcm2708_quirk_voltage_broken,
12731274
.uhs_broken = sdhci_bcm2708_uhs_broken,
1274-
.missing_status = sdhci_bcm2708_missing_status,
12751275
};
12761276

12771277
/*****************************************************************************\
@@ -1310,6 +1310,9 @@ static int __devinit sdhci_bcm2708_probe(struct platform_device *pdev)
13101310
ret = PTR_ERR(host);
13111311
goto err;
13121312
}
1313+
if (missing_status) {
1314+
sdhci_bcm2708_ops.missing_status = sdhci_bcm2708_missing_status;
1315+
}
13131316

13141317
host->hw_name = "BCM2708_Arasan";
13151318
host->ops = &sdhci_bcm2708_ops;
@@ -1509,6 +1512,7 @@ module_exit(sdhci_drv_exit);
15091512
module_param(allow_highspeed, bool, 0444);
15101513
module_param(emmc_clock_freq, int, 0444);
15111514
module_param(sync_after_dma, bool, 0444);
1515+
module_param(missing_status, bool, 0444);
15121516

15131517
MODULE_DESCRIPTION("Secure Digital Host Controller Interface platform driver");
15141518
MODULE_AUTHOR("Broadcom <[email protected]>");
@@ -1518,5 +1522,6 @@ MODULE_ALIAS("platform:"DRIVER_NAME);
15181522
MODULE_PARM_DESC(allow_highspeed, "Allow high speed transfers modes");
15191523
MODULE_PARM_DESC(emmc_clock_freq, "Specify the speed of emmc clock");
15201524
MODULE_PARM_DESC(sync_after_dma, "Block in driver until dma complete");
1525+
MODULE_PARM_DESC(missing_status, "Use the missing status quirk");
15211526

15221527

0 commit comments

Comments
 (0)