aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorJason Liu <r64343@freescale.com>2010-07-07 05:34:55 +0800
committerJason Liu <r64343@freescale.com>2010-07-07 05:35:42 +0800
commit65d7ce607bd4a831c3da00884d7bf00fc412928f (patch)
treec47fa5a2c954f9cfcd15120164745954035c71e3 /drivers
parentc6433f273a5b05472cc412148355bdefb252808e (diff)
ENGR00124908 CSPI: make spi_get_cfg platform specific
CSPI: make spi_get_cfg platform specific move the spi_get_cfg out of the cspi/ecspi driver Signed-off-by:Jason Liu <r64343@freescale.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/spi/imx_cspi.c24
-rw-r--r--drivers/spi/imx_ecspi.c33
2 files changed, 6 insertions, 51 deletions
diff --git a/drivers/spi/imx_cspi.c b/drivers/spi/imx_cspi.c
index a4a3049ac..438ab8df5 100644
--- a/drivers/spi/imx_cspi.c
+++ b/drivers/spi/imx_cspi.c
@@ -1,5 +1,5 @@
/*
- * (C) Copyright 2008-2009 Freescale Semiconductor, Inc.
+ * (C) Copyright 2008-2010 Freescale Semiconductor, Inc.
*
* See file CREDITS for list of people who contributed to this
* project.
@@ -30,31 +30,13 @@
#include <imx_spi.h>
+extern s32 spi_get_cfg(struct imx_spi_dev_t *dev);
+
static inline struct imx_spi_dev_t *to_imx_spi_slave(struct spi_slave *slave)
{
return container_of(slave, struct imx_spi_dev_t, slave);
}
-static s32 spi_get_cfg(struct imx_spi_dev_t *dev)
-{
- switch (dev->slave.cs) {
- case 0:
- /* cpld */
- dev->base = CSPI1_BASE;
- dev->freq = 25000000;
- dev->ss_pol = IMX_SPI_ACTIVE_LOW;
- dev->ss = 0;
- dev->fifo_sz = 32;
- dev->us_delay = 0;
- break;
- default:
- printf("Invalid Bus ID! \n");
- break;
- }
-
- return 0;
-}
-
static s32 spi_reset(struct spi_slave *slave)
{
u32 clk_src = mxc_get_clock(MXC_CSPI_CLK);
diff --git a/drivers/spi/imx_ecspi.c b/drivers/spi/imx_ecspi.c
index d9345daa2..1e86cf1fa 100644
--- a/drivers/spi/imx_ecspi.c
+++ b/drivers/spi/imx_ecspi.c
@@ -1,5 +1,5 @@
/*
- * (C) Copyright 2008-2009 Freescale Semiconductor, Inc.
+ * (C) Copyright 2008-2010 Freescale Semiconductor, Inc.
*
* See file CREDITS for list of people who contributed to this
* project.
@@ -53,40 +53,13 @@ static void memdump(const void *pv, int num)
#endif /* DEBUG */
+extern s32 spi_get_cfg(struct imx_spi_dev_t *dev);
+
static inline struct imx_spi_dev_t *to_imx_spi_slave(struct spi_slave *slave)
{
return container_of(slave, struct imx_spi_dev_t, slave);
}
-static s32 spi_get_cfg(struct imx_spi_dev_t *dev)
-{
- switch (dev->slave.cs) {
- case 0:
- /* pmic */
- dev->base = CSPI1_BASE_ADDR;
- dev->freq = 2500000;
- dev->ss_pol = IMX_SPI_ACTIVE_HIGH;
- dev->ss = 0;
- dev->fifo_sz = 64 * 4;
- dev->us_delay = 0;
- break;
- case 1:
- /* spi_nor */
- dev->base = CSPI1_BASE_ADDR;
- dev->freq = 2500000;
- dev->ss_pol = IMX_SPI_ACTIVE_LOW;
- dev->ss = 1;
- dev->fifo_sz = 64 * 4;
- dev->us_delay = 0;
- break;
- default:
- printf("Invalid Bus ID! \n");
- break;
- }
-
- return 0;
-}
-
static s32 spi_reset(struct spi_slave *slave)
{
u32 clk_src = mxc_get_clock(MXC_CSPI_CLK);