diff options
Diffstat (limited to 'drivers/nfc/st21nfca/dep.c')
-rw-r--r-- | drivers/nfc/st21nfca/dep.c | 59 |
1 files changed, 18 insertions, 41 deletions
diff --git a/drivers/nfc/st21nfca/dep.c b/drivers/nfc/st21nfca/dep.c index 8874d605b14f..1ec651e31064 100644 --- a/drivers/nfc/st21nfca/dep.c +++ b/drivers/nfc/st21nfca/dep.c @@ -196,38 +196,29 @@ static int st21nfca_tm_recv_atr_req(struct nfc_hci_dev *hdev, skb_trim(skb, skb->len - 1); - if (!skb->len) { - r = -EIO; - goto exit; - } + if (!skb->len) + return -EIO; - if (skb->len < ST21NFCA_ATR_REQ_MIN_SIZE) { - r = -EPROTO; - goto exit; - } + if (skb->len < ST21NFCA_ATR_REQ_MIN_SIZE) + return -EPROTO; atr_req = (struct st21nfca_atr_req *)skb->data; - if (atr_req->length < sizeof(struct st21nfca_atr_req)) { - r = -EPROTO; - goto exit; - } + if (atr_req->length < sizeof(struct st21nfca_atr_req)) + return -EPROTO; r = st21nfca_tm_send_atr_res(hdev, atr_req); if (r) - goto exit; + return r; gb_len = skb->len - sizeof(struct st21nfca_atr_req); r = nfc_tm_activated(hdev->ndev, NFC_PROTO_NFC_DEP_MASK, NFC_COMM_PASSIVE, atr_req->gbi, gb_len); if (r) - goto exit; - - r = 0; + return r; -exit: - return r; + return 0; } static int st21nfca_tm_send_psl_res(struct nfc_hci_dev *hdev, @@ -280,25 +271,18 @@ static int st21nfca_tm_recv_psl_req(struct nfc_hci_dev *hdev, struct sk_buff *skb) { struct st21nfca_psl_req *psl_req; - int r; skb_trim(skb, skb->len - 1); - if (!skb->len) { - r = -EIO; - goto exit; - } + if (!skb->len) + return -EIO; psl_req = (struct st21nfca_psl_req *)skb->data; - if (skb->len < sizeof(struct st21nfca_psl_req)) { - r = -EIO; - goto exit; - } + if (skb->len < sizeof(struct st21nfca_psl_req)) + return -EIO; - r = st21nfca_tm_send_psl_res(hdev, psl_req); -exit: - return r; + return st21nfca_tm_send_psl_res(hdev, psl_req); } int st21nfca_tm_send_dep_res(struct nfc_hci_dev *hdev, struct sk_buff *skb) @@ -324,7 +308,6 @@ static int st21nfca_tm_recv_dep_req(struct nfc_hci_dev *hdev, { struct st21nfca_dep_req_res *dep_req; u8 size; - int r; struct st21nfca_hci_info *info = nfc_hci_get_clientdata(hdev); skb_trim(skb, skb->len - 1); @@ -332,20 +315,16 @@ static int st21nfca_tm_recv_dep_req(struct nfc_hci_dev *hdev, size = 4; dep_req = (struct st21nfca_dep_req_res *)skb->data; - if (skb->len < size) { - r = -EIO; - goto exit; - } + if (skb->len < size) + return -EIO; if (ST21NFCA_NFC_DEP_DID_BIT_SET(dep_req->pfb)) size++; if (ST21NFCA_NFC_DEP_NAD_BIT_SET(dep_req->pfb)) size++; - if (skb->len < size) { - r = -EIO; - goto exit; - } + if (skb->len < size) + return -EIO; /* Receiving DEP_REQ - Decoding */ switch (ST21NFCA_NFC_DEP_PFB_TYPE(dep_req->pfb)) { @@ -364,8 +343,6 @@ static int st21nfca_tm_recv_dep_req(struct nfc_hci_dev *hdev, skb_pull(skb, size); return nfc_tm_data_received(hdev->ndev, skb); -exit: - return r; } static int st21nfca_tm_event_send_data(struct nfc_hci_dev *hdev, |