diff options
author | Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> | 2021-10-25 16:49:36 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-11-02 17:38:11 +0100 |
commit | d880b93227a281908b4fac6bb207e5eca5dd7595 (patch) | |
tree | effb51bca6f9e877d37be8e5fc4b0b16fe4bb946 | |
parent | e215f19d81071a82692eea9358505ed191b2463d (diff) | |
download | linux-stable-d880b93227a281908b4fac6bb207e5eca5dd7595.tar.gz linux-stable-d880b93227a281908b4fac6bb207e5eca5dd7595.tar.bz2 linux-stable-d880b93227a281908b4fac6bb207e5eca5dd7595.zip |
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: <stable@vger.kernel.org>
Fixes: 0347a6ab300a ("NFC: port100: Commands mechanism implementation")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/nfc/port100.c | 4 |
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; |