diff options
author | Mark Brown <broonie@linaro.org> | 2013-08-30 14:04:14 +0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-08-30 14:04:14 +0400 |
commit | c79c33af8f867e57ad4b84102db7901aee67485a (patch) | |
tree | aa619736b89a143cfc48f9647493c929523a928a /drivers/ata/sata_fsl.c | |
parent | 1c9a341bbdc14051a4d8c74ea67269786c7d3736 (diff) | |
parent | 824ef826f3c4d83d1925a5e351313bfd3e5ca6cb (diff) | |
download | linux-c79c33af8f867e57ad4b84102db7901aee67485a.tar.xz |
Merge remote-tracking branch 'asoc/topic/core' into tmp
Diffstat (limited to 'drivers/ata/sata_fsl.c')
-rw-r--r-- | drivers/ata/sata_fsl.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/ata/sata_fsl.c b/drivers/ata/sata_fsl.c index 19720a0a4a65..851bd3f43ac6 100644 --- a/drivers/ata/sata_fsl.c +++ b/drivers/ata/sata_fsl.c @@ -293,6 +293,7 @@ static void fsl_sata_set_irq_coalescing(struct ata_host *host, { struct sata_fsl_host_priv *host_priv = host->private_data; void __iomem *hcr_base = host_priv->hcr_base; + unsigned long flags; if (count > ICC_MAX_INT_COUNT_THRESHOLD) count = ICC_MAX_INT_COUNT_THRESHOLD; @@ -305,12 +306,12 @@ static void fsl_sata_set_irq_coalescing(struct ata_host *host, (count > ICC_MIN_INT_COUNT_THRESHOLD)) ticks = ICC_SAFE_INT_TICKS; - spin_lock(&host->lock); + spin_lock_irqsave(&host->lock, flags); iowrite32((count << 24 | ticks), hcr_base + ICC); intr_coalescing_count = count; intr_coalescing_ticks = ticks; - spin_unlock(&host->lock); + spin_unlock_irqrestore(&host->lock, flags); DPRINTK("interrupt coalescing, count = 0x%x, ticks = %x\n", intr_coalescing_count, intr_coalescing_ticks); |