summaryrefslogtreecommitdiff
path: root/drivers/nfc
diff options
context:
space:
mode:
authorChristophe Ricard <christophe.ricard@gmail.com>2015-06-06 14:16:43 +0300
committerSasha Levin <sasha.levin@oracle.com>2015-07-04 06:02:25 +0300
commit9a7a8972b6e12a0dcea8fba94d8bcc636f6b7a5d (patch)
tree7884ee38986dd7e7e6d8101263a0767f5dd8863e /drivers/nfc
parenta119af5a95c10e72ee9b5b2e3cb7f1ea5094aed2 (diff)
downloadlinux-9a7a8972b6e12a0dcea8fba94d8bcc636f6b7a5d.tar.xz
NFC: st21nfcb: Do not remove header once the payload is sent
[ Upstream commit 09f39a950523b1bb830c30a8670b77e0067da092 ] Once the data is sent, we need to preserve the full frame for the ndlc state machine. If the NDLC ACK is not received in time, the ndlc layer will resend the same frame. Having the header byte pulled will corrupt the frame. Cc: stable@vger.kernel.org Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'drivers/nfc')
-rw-r--r--drivers/nfc/st21nfcb/i2c.c7
1 files changed, 0 insertions, 7 deletions
diff --git a/drivers/nfc/st21nfcb/i2c.c b/drivers/nfc/st21nfcb/i2c.c
index 2cf867b9796d..000e0e10dc15 100644
--- a/drivers/nfc/st21nfcb/i2c.c
+++ b/drivers/nfc/st21nfcb/i2c.c
@@ -90,11 +90,6 @@ static void st21nfcb_nci_i2c_disable(void *phy_id)
gpio_set_value(phy->gpio_reset, 1);
}
-static void st21nfcb_nci_remove_header(struct sk_buff *skb)
-{
- skb_pull(skb, ST21NFCB_FRAME_HEADROOM);
-}
-
/*
* Writing a frame must not return the number of written bytes.
* It must return either zero for success, or <0 for error.
@@ -124,8 +119,6 @@ static int st21nfcb_nci_i2c_write(void *phy_id, struct sk_buff *skb)
r = 0;
}
- st21nfcb_nci_remove_header(skb);
-
return r;
}