nvmem: core: validate nvmem config before parsing
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Tue, 10 Mar 2020 13:22:51 +0000 (13:22 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Mar 2020 06:41:03 +0000 (07:41 +0100)
nvmem provider has to provide either reg_read/write, add a check
to enforce this.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20200310132257.23358-9-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/nvmem/core.c

index c05c4f4a7b9e68b5d0ca485b2e5a66faa3b184e0..77d890d3623dc73aad2ef01f4dc583544c3dd491 100644 (file)
@@ -339,6 +339,9 @@ struct nvmem_device *nvmem_register(const struct nvmem_config *config)
        if (!config->dev)
                return ERR_PTR(-EINVAL);
 
+       if (!config->reg_read && !config->reg_write)
+               return ERR_PTR(-EINVAL);
+
        nvmem = kzalloc(sizeof(*nvmem), GFP_KERNEL);
        if (!nvmem)
                return ERR_PTR(-ENOMEM);