diff options
Diffstat (limited to 'drivers/nfc/nfcwilink.c')
-rw-r--r-- | drivers/nfc/nfcwilink.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/drivers/nfc/nfcwilink.c b/drivers/nfc/nfcwilink.c index 50b1ee41afc6..3b731acbc408 100644 --- a/drivers/nfc/nfcwilink.c +++ b/drivers/nfc/nfcwilink.c | |||
@@ -526,7 +526,7 @@ static int nfcwilink_probe(struct platform_device *pdev) | |||
526 | 526 | ||
527 | nfc_dev_dbg(&pdev->dev, "probe entry"); | 527 | nfc_dev_dbg(&pdev->dev, "probe entry"); |
528 | 528 | ||
529 | drv = kzalloc(sizeof(struct nfcwilink), GFP_KERNEL); | 529 | drv = devm_kzalloc(&pdev->dev, sizeof(struct nfcwilink), GFP_KERNEL); |
530 | if (!drv) { | 530 | if (!drv) { |
531 | rc = -ENOMEM; | 531 | rc = -ENOMEM; |
532 | goto exit; | 532 | goto exit; |
@@ -542,12 +542,13 @@ static int nfcwilink_probe(struct platform_device *pdev) | |||
542 | 542 | ||
543 | drv->ndev = nci_allocate_device(&nfcwilink_ops, | 543 | drv->ndev = nci_allocate_device(&nfcwilink_ops, |
544 | protocols, | 544 | protocols, |
545 | NFC_SE_NONE, | ||
545 | NFCWILINK_HDR_LEN, | 546 | NFCWILINK_HDR_LEN, |
546 | 0); | 547 | 0); |
547 | if (!drv->ndev) { | 548 | if (!drv->ndev) { |
548 | nfc_dev_err(&pdev->dev, "nci_allocate_device failed"); | 549 | nfc_dev_err(&pdev->dev, "nci_allocate_device failed"); |
549 | rc = -ENOMEM; | 550 | rc = -ENOMEM; |
550 | goto free_exit; | 551 | goto exit; |
551 | } | 552 | } |
552 | 553 | ||
553 | nci_set_parent_dev(drv->ndev, &pdev->dev); | 554 | nci_set_parent_dev(drv->ndev, &pdev->dev); |
@@ -566,9 +567,6 @@ static int nfcwilink_probe(struct platform_device *pdev) | |||
566 | free_dev_exit: | 567 | free_dev_exit: |
567 | nci_free_device(drv->ndev); | 568 | nci_free_device(drv->ndev); |
568 | 569 | ||
569 | free_exit: | ||
570 | kfree(drv); | ||
571 | |||
572 | exit: | 570 | exit: |
573 | return rc; | 571 | return rc; |
574 | } | 572 | } |
@@ -588,8 +586,6 @@ static int nfcwilink_remove(struct platform_device *pdev) | |||
588 | nci_unregister_device(ndev); | 586 | nci_unregister_device(ndev); |
589 | nci_free_device(ndev); | 587 | nci_free_device(ndev); |
590 | 588 | ||
591 | kfree(drv); | ||
592 | |||
593 | dev_set_drvdata(&pdev->dev, NULL); | 589 | dev_set_drvdata(&pdev->dev, NULL); |
594 | 590 | ||
595 | return 0; | 591 | return 0; |