浏览代码

NFC: st21nfcb: Fix st21nfcb_nci_close

When closing st21nfcb driver, flag ST21NFCB_NCI_RUNNING can be cleared
only once the ndlc and the transport (i2c or spi) layers are released.

Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Christophe Ricard 10 年之前
父节点
当前提交
cc1417eb24
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      drivers/nfc/st21nfcb/st21nfcb.c

+ 3 - 1
drivers/nfc/st21nfcb/st21nfcb.c

@@ -47,11 +47,13 @@ static int st21nfcb_nci_close(struct nci_dev *ndev)
 {
 	struct st21nfcb_nci_info *info = nci_get_drvdata(ndev);
 
-	if (!test_and_clear_bit(ST21NFCB_NCI_RUNNING, &info->flags))
+	if (!test_bit(ST21NFCB_NCI_RUNNING, &info->flags))
 		return 0;
 
 	ndlc_close(info->ndlc);
 
+	clear_bit(ST21NFCB_NCI_RUNNING, &info->flags);
+
 	return 0;
 }