From: Ilan Elias <[email protected]>
When start_poll is called, and a target was implicitly activated,
we need to implicitly deactivate it.
On the other hand, when the target was activated by the user,
we should not deactivate it.
Signed-off-by: Ilan Elias <[email protected]>
---
net/nfc/nci/core.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/net/nfc/nci/core.c b/net/nfc/nci/core.c
index 895e5fd..361491b 100644
--- a/net/nfc/nci/core.c
+++ b/net/nfc/nci/core.c
@@ -365,8 +365,13 @@ static int nci_start_poll(struct nfc_dev *nfc_dev, __u32 protocols)
return -EBUSY;
}
+ if (ndev->target_active_prot) {
+ nfc_err("there is an active target");
+ return -EBUSY;
+ }
+
if (test_bit(NCI_POLL_ACTIVE, &ndev->flags)) {
- nfc_dbg("target already active, first deactivate...");
+ nfc_dbg("target is active, implicitly deactivate...");
rc = nci_request(ndev, nci_rf_deactivate_req, 0,
msecs_to_jiffies(NCI_RF_DEACTIVATE_TIMEOUT));
--
1.7.0.4
2011/9/22 <[email protected]>:
> From: Ilan Elias <[email protected]>
>
> When start_poll is called, and a target was implicitly activated,
> we need to implicitly deactivate it.
> On the other hand, when the target was activated by the user,
> we should not deactivate it.
>
> Signed-off-by: Ilan Elias <[email protected]>
Acked-by: Lauro Ramos Venancio <[email protected]>
Lauro