diff options
author | Jagan Teki <jagan@amarulasolutions.com> | 2019-02-27 20:02:09 +0530 |
---|---|---|
committer | Jagan Teki <jagan@amarulasolutions.com> | 2019-03-04 18:08:56 +0530 |
commit | 178fbd243daeb0a3137e46bdc3b63d8df049e982 (patch) | |
tree | 5c02b3f6148c239a473407c23ed0c0c1327a046f /drivers | |
parent | 8d9bf46847cd66989d944060d9ad4b37bb2bc460 (diff) | |
download | u-boot-178fbd243daeb0a3137e46bdc3b63d8df049e982.tar.gz |
spi: sun4i: Support fifo_depth via drvdata
Support fifo_depth via drvdata instead of macro definition, this would
eventually reduce another macro definition for new SPI controller fifo
depth support addition.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/spi/sun4i_spi.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/spi/sun4i_spi.c b/drivers/spi/sun4i_spi.c index be026e6554..82e69a6b6a 100644 --- a/drivers/spi/sun4i_spi.c +++ b/drivers/spi/sun4i_spi.c @@ -33,8 +33,6 @@ #include <linux/iopoll.h> -#define SUN4I_FIFO_DEPTH 64 - #define SUN4I_RXDATA_REG 0x00 #define SUN4I_TXDATA_REG 0x04 @@ -131,6 +129,7 @@ enum sun4i_spi_bits { struct sun4i_spi_variant { const unsigned long *regs; const u32 *bits; + u32 fifo_depth; }; struct sun4i_spi_platdata { @@ -359,7 +358,7 @@ static int sun4i_spi_xfer(struct udevice *dev, unsigned int bitlen, while (len) { /* Setup the transfer now... */ - nbytes = min(len, (u32)(SUN4I_FIFO_DEPTH - 1)); + nbytes = min(len, (priv->variant->fifo_depth - 1)); /* Setup the counters */ writel(SUN4I_BURST_CNT(nbytes), SPI_REG(priv, SPI_BC)); @@ -503,6 +502,7 @@ static const u32 sun4i_spi_bits[] = { static const struct sun4i_spi_variant sun4i_a10_spi_variant = { .regs = sun4i_spi_regs, .bits = sun4i_spi_bits, + .fifo_depth = 64, }; static const struct udevice_id sun4i_spi_ids[] = { |