static int pn544_mei_probe(struct mei_cl_device *device, const struct mei_cl_device_id *id) { struct nfc_mei_phy *phy; int r; pr_info("Probing NFC pn544\n"); phy = nfc_mei_phy_alloc(device); if (!phy) { pr_err("Cannot allocate memory for pn544 mei phy.\n"); return -ENOMEM; } r = mei_cl_register_event_cb(device, nfc_mei_event_cb, phy); if (r) { pr_err(PN544_DRIVER_NAME ": event cb registration failed\n"); goto err_out; } r = pn544_hci_probe(phy, &mei_phy_ops, LLC_NOP_NAME, MEI_NFC_HEADER_SIZE, 0, MEI_NFC_MAX_HCI_PAYLOAD, &phy->hdev); if (r < 0) goto err_out; return 0; err_out: nfc_mei_phy_free(phy); return r; }
static int pn544_mei_probe(struct mei_cl_device *cldev, const struct mei_cl_device_id *id) { struct nfc_mei_phy *phy; int r; pr_info("Probing NFC pn544\n"); phy = nfc_mei_phy_alloc(cldev); if (!phy) { pr_err("Cannot allocate memory for pn544 mei phy.\n"); return -ENOMEM; } r = pn544_hci_probe(phy, &mei_phy_ops, LLC_NOP_NAME, MEI_NFC_HEADER_SIZE, 0, MEI_NFC_MAX_HCI_PAYLOAD, NULL, &phy->hdev); if (r < 0) { nfc_mei_phy_free(phy); return r; } return 0; }