summaryrefslogtreecommitdiffstats
path: root/drivers/spi
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2013-04-16 09:05:55 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2013-06-20 08:49:56 +0200
commit13a2b1465006a12880ca1a1d253a93cb3d06d3a3 (patch)
tree786c1d38f4d53d603d87e83aee81d57d485c293c /drivers/spi
parent3d8304d6284ea22f4ed8fdf3c59fe7a01ed98591 (diff)
downloadbarebox-13a2b1465006a12880ca1a1d253a93cb3d06d3a3.tar.gz
barebox-13a2b1465006a12880ca1a1d253a93cb3d06d3a3.tar.xz
spi: mxs: Use clk support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/mxs_spi.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/spi/mxs_spi.c b/drivers/spi/mxs_spi.c
index e15f2c2916..8dfd6d54e5 100644
--- a/drivers/spi/mxs_spi.c
+++ b/drivers/spi/mxs_spi.c
@@ -21,6 +21,7 @@
#include <errno.h>
#include <io.h>
#include <linux/clk.h>
+#include <linux/err.h>
#include <asm/mmu.h>
#include <mach/generic.h>
#include <mach/imx-regs.h>
@@ -52,7 +53,7 @@ static inline struct mxs_spi *to_mxs(struct spi_master *master)
static void imx_set_ssp_busclock(struct spi_master *master, uint32_t freq)
{
struct mxs_spi *mxs = to_mxs(master);
- const uint32_t sspclk = imx_get_sspclk(master->bus_num);
+ const uint32_t sspclk = clk_get_rate(mxs->clk);
uint32_t val;
uint32_t divide, rate, tgtclk;
@@ -266,6 +267,9 @@ static int mxs_spi_probe(struct device_d *dev)
mxs->mode = SPI_CPOL | SPI_CPHA;
mxs->regs = dev_request_mem_region(dev, 0);
+ mxs->clk = clk_get(dev, NULL);
+ if (IS_ERR(mxs->clk))
+ return PTR_ERR(mxs->clk);
spi_register_master(master);