diff options
authorKrzysztof Kozlowski <>2021-10-25 16:49:36 +0200
committerGreg Kroah-Hartman <>2021-11-02 17:38:11 +0100
commitd880b93227a281908b4fac6bb207e5eca5dd7595 (patch)
parente215f19d81071a82692eea9358505ed191b2463d (diff)
nfc: port100: fix using -ERRNO as command type mask
commit 2195f2062e4cc93870da8e71c318ef98a1c51cef upstream. During probing, the driver tries to get a list (mask) of supported command types in port100_get_command_type_mask() function. The value is u64 and 0 is treated as invalid mask (no commands supported). The function however returns also -ERRNO as u64 which will be interpret as valid command mask. Return 0 on every error case of port100_get_command_type_mask(), so the probing will stop. Cc: <> Fixes: 0347a6ab300a ("NFC: port100: Commands mechanism implementation") Signed-off-by: Krzysztof Kozlowski <> Signed-off-by: David S. Miller <> Signed-off-by: Greg Kroah-Hartman <>
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/nfc/port100.c b/drivers/nfc/port100.c
index 3ffbed72adf7..3ded31873d11 100644
--- a/drivers/nfc/port100.c
+++ b/drivers/nfc/port100.c
@@ -936,11 +936,11 @@ static u64 port100_get_command_type_mask(struct port100 *dev)
skb = port100_alloc_skb(dev, 0);
if (!skb)
- return -ENOMEM;
+ return 0;
resp = port100_send_cmd_sync(dev, PORT100_CMD_GET_COMMAND_TYPE, skb);
if (IS_ERR(resp))
- return PTR_ERR(resp);
+ return 0;
if (resp->len < 8)
mask = 0;