spi: spi-mem: Kill the spi_mem_dtr_supports_op() helper
[linux-2.6-microblaze.git] / drivers / spi / spi-mxic.c
index 4588994..6bec0a7 100644 (file)
@@ -335,8 +335,6 @@ static int mxic_spi_data_xfer(struct mxic_spi *mxic, const void *txbuf,
 static bool mxic_spi_mem_supports_op(struct spi_mem *mem,
                                     const struct spi_mem_op *op)
 {
-       bool all_false;
-
        if (op->data.buswidth > 8 || op->addr.buswidth > 8 ||
            op->dummy.buswidth > 8 || op->cmd.buswidth > 8)
                return false;
@@ -348,13 +346,7 @@ static bool mxic_spi_mem_supports_op(struct spi_mem *mem,
        if (op->addr.nbytes > 7)
                return false;
 
-       all_false = !op->cmd.dtr && !op->addr.dtr && !op->dummy.dtr &&
-                   !op->data.dtr;
-
-       if (all_false)
-               return spi_mem_default_supports_op(mem, op);
-       else
-               return spi_mem_dtr_supports_op(mem, op);
+       return spi_mem_default_supports_op(mem, op);
 }
 
 static int mxic_spi_mem_exec_op(struct spi_mem *mem,
@@ -448,6 +440,10 @@ static const struct spi_controller_mem_ops mxic_spi_mem_ops = {
        .exec_op = mxic_spi_mem_exec_op,
 };
 
+static const struct spi_controller_mem_caps mxic_spi_mem_caps = {
+       .dtr = true,
+};
+
 static void mxic_spi_set_cs(struct spi_device *spi, bool lvl)
 {
        struct mxic_spi *mxic = spi_master_get_devdata(spi->master);
@@ -580,6 +576,7 @@ static int mxic_spi_probe(struct platform_device *pdev)
 
        master->num_chipselect = 1;
        master->mem_ops = &mxic_spi_mem_ops;
+       master->mem_caps = &mxic_spi_mem_caps;
 
        master->set_cs = mxic_spi_set_cs;
        master->transfer_one = mxic_spi_transfer_one;