These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / net / nfc / nci / rsp.c
index 02486bc..9b6eb91 100644 (file)
@@ -296,6 +296,15 @@ void nci_rsp_packet(struct nci_dev *ndev, struct sk_buff *skb)
        /* strip the nci control header */
        skb_pull(skb, NCI_CTRL_HDR_SIZE);
 
+       if (nci_opcode_gid(rsp_opcode) == NCI_GID_PROPRIETARY) {
+               if (nci_prop_rsp_packet(ndev, rsp_opcode, skb) == -ENOTSUPP) {
+                       pr_err("unsupported rsp opcode 0x%x\n",
+                              rsp_opcode);
+               }
+
+               goto end;
+       }
+
        switch (rsp_opcode) {
        case NCI_OP_CORE_RESET_RSP:
                nci_core_reset_rsp_packet(ndev, skb);
@@ -346,6 +355,8 @@ void nci_rsp_packet(struct nci_dev *ndev, struct sk_buff *skb)
                break;
        }
 
+       nci_core_rsp_packet(ndev, rsp_opcode, skb);
+end:
        kfree_skb(skb);
 
        /* trigger the next cmd */