spi: spi-mem: Check if exec_op function is set before calling it
authorBernhard Messerklinger <bernhard.messerklinger@br-automation.com>
Tue, 26 Mar 2019 09:01:24 +0000 (10:01 +0100)
committerJagan Teki <jagan@amarulasolutions.com>
Fri, 12 Apr 2019 05:47:39 +0000 (11:17 +0530)
Add check if exec_op is set before calling it.
At the moment it is called unconditionally, which leads to a crash if it
is not set correctly.

Signed-off-by: Bernhard Messerklinger <bernhard.messerklinger@br-automation.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
drivers/spi/spi-mem.c

index 1bb0987..b86eee7 100644 (file)
@@ -214,7 +214,7 @@ int spi_mem_exec_op(struct spi_slave *slave, const struct spi_mem_op *op)
        if (ret < 0)
                return ret;
 
-       if (ops->mem_ops) {
+       if (ops->mem_ops && ops->mem_ops->exec_op) {
 #ifndef __UBOOT__
                /*
                 * Flush the message queue before executing our SPI memory