Browse Source

mmc: usdhi6rol0: fix ack register write

The intent appears to be to clear only the bits which are set in status
(by setting them to zero in the ack write), like in the other interrupt
handlers, and not to always clear everything (by always writing zero).
Use the correct not operator.

Signed-off-by: Rabin Vincent <rabin.vincent@axis.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Rabin Vincent 10 năm trước cách đây
mục cha
commit
3fe95db19b
1 tập tin đã thay đổi với 1 bổ sung1 xóa
  1. 1 1
      drivers/mmc/host/usdhi6rol0.c

+ 1 - 1
drivers/mmc/host/usdhi6rol0.c

@@ -1611,7 +1611,7 @@ static irqreturn_t usdhi6_cd(int irq, void *dev_id)
 		return IRQ_NONE;
 
 	/* Ack */
-	usdhi6_write(host, USDHI6_SD_INFO1, !status);
+	usdhi6_write(host, USDHI6_SD_INFO1, ~status);
 
 	if (!work_pending(&mmc->detect.work) &&
 	    (((status & USDHI6_SD_INFO1_CARD_INSERT) &&