spi: Add a utility pointer for the application on SPI callback
It might be needed sometime to get some private data forwarded to the
callback, thus such user_data pointer is the easiest way to proceed.
Adding a macro to set the word size as well.
Change-Id: I68cbe2d480120253ccb13f13c656a38c27e21604
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
diff --git a/drivers/spi/intel_spi.c b/drivers/spi/intel_spi.c
index a08d741..bb14c2c 100644
--- a/drivers/spi/intel_spi.c
+++ b/drivers/spi/intel_spi.c
@@ -172,7 +172,7 @@
_spi_control_cs(dev, 0);
if (spi->callback) {
- spi->callback(dev, cb_type);
+ spi->callback(dev, cb_type, spi->user_data);
}
}
@@ -236,7 +236,8 @@
spi->t_len -= cnt;
}
-static int spi_intel_configure(struct device *dev, struct spi_config *config)
+static int spi_intel_configure(struct device *dev,
+ struct spi_config *config, void *user_data)
{
struct spi_intel_config *info = dev->config->config_info;
struct spi_intel_data *spi = dev->driver_data;
@@ -288,6 +289,7 @@
spi->tx_buf = spi->rx_buf = NULL;
spi->tx_buf_len = spi->rx_buf_len = spi->t_len = 0;
spi->callback = config->callback;
+ spi->user_data = user_data;
return DEV_OK;
}