spi: fsl-espi: expose maximum transfer size limit
authorMichal Suchanek <hramrach@gmail.com>
Wed, 2 Dec 2015 10:38:21 +0000 (10:38 +0000)
committerMark Brown <broonie@kernel.org>
Tue, 5 Jan 2016 16:33:54 +0000 (16:33 +0000)
The fsl-espi hardware can trasfer at most 64K data so report teh
limitation.

Based on patch by Heiner Kallweit <hkallweit1@gmail.com>

CC: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Michal Suchanek <hramrach@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-fsl-espi.c

index c27124a5ec8ee02264df2feaf283fdbb92991cf3..7fd6a4c009d25d8ebfd3f739bd72220f1701320a 100644 (file)
@@ -643,6 +643,11 @@ static int fsl_espi_runtime_resume(struct device *dev)
 }
 #endif
 
+static size_t fsl_espi_max_transfer_size(struct spi_device *spi)
+{
+       return SPCOM_TRANLEN_MAX;
+}
+
 static struct spi_master * fsl_espi_probe(struct device *dev,
                struct resource *mem, unsigned int irq)
 {
@@ -670,6 +675,7 @@ static struct spi_master * fsl_espi_probe(struct device *dev,
        master->cleanup = fsl_espi_cleanup;
        master->transfer_one_message = fsl_espi_do_one_msg;
        master->auto_runtime_pm = true;
+       master->max_transfer_size = fsl_espi_max_transfer_size;
 
        mpc8xxx_spi = spi_master_get_devdata(master);