summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGriffin Kroah-Hartman <griffin@kroah.com>2026-07-07 16:22:17 +0200
committerDavid Heidelberg <david@ixit.cz>2026-08-11 18:13:59 +0200
commitd832b95697384a2b67f20b35106bbf925358cde9 (patch)
treefd84e04b0ffa1bd9ab5a604e260e3a91aa83f00b
parent9efd35acb385d8cba179ac833430596f1674a2dc (diff)
nfc: mrvl: spi: Unregister dev on allocation fail
Call nfcmrvl_nci_unregister_dev() if nci_spi_allocate_spi() fails, unwrapping the previous call to nfcmrvl_nci_register_dev() during the nfcmrvl_spi_probe() function. Assisted-by: gkh-clanker-2000 Cc: David Heidelberg <david@ixit.cz> Signed-off-by: Griffin Kroah-Hartman <griffin@kroah.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://patch.msgid.link/2026070716-crucial-slouchy-b8a9@gregkh Signed-off-by: David Heidelberg <david@ixit.cz>
-rw-r--r--drivers/nfc/nfcmrvl/spi.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/nfc/nfcmrvl/spi.c b/drivers/nfc/nfcmrvl/spi.c
index 9c8cde1250fb..dad07c8e13b8 100644
--- a/drivers/nfc/nfcmrvl/spi.c
+++ b/drivers/nfc/nfcmrvl/spi.c
@@ -168,6 +168,10 @@ static int nfcmrvl_spi_probe(struct spi_device *spi)
drv_data->nci_spi = nci_spi_allocate_spi(drv_data->spi, 0, 10,
drv_data->priv->ndev);
+ if (!drv_data->nci_spi) {
+ nfcmrvl_nci_unregister_dev(drv_data->priv);
+ return -ENOMEM;
+ }
/* Init completion for slave handshake */
init_completion(&drv_data->handshake_completion);