@@ -3,6 +3,7 @@
#include <linux/io.h>
#include <linux/scatterlist.h>
+#include <linux/spi/spi-dw-platform.h>
/* Bit fields in CTRLR0 */
#define SPI_DFS_OFFSET 0
@@ -49,12 +50,6 @@
/* TX RX interrupt level threshold, max can be 256 */
#define SPI_INT_THRESHOLD 32
-enum dw_ssi_type {
- SSI_MOTO_SPI = 0,
- SSI_TI_SSP,
- SSI_NS_MICROWIRE,
-};
-
struct dw_spi_reg {
u32 ctrl0;
u32 ctrl1;
@@ -209,19 +204,6 @@ static inline void spi_umask_intr(struct dw_spi *dws, u32 mask)
dw_writel(dws, imr, new_mask);
}
-/*
- * Each SPI slave device to work with dw_api controller should
- * has such a structure claiming its working mode (PIO/DMA etc),
- * which can be save in the "controller_data" member of the
- * struct spi_device
- */
-struct dw_spi_chip {
- u8 poll_mode; /* 0 for contoller polling mode */
- u8 type; /* SPI/SSP/Micrwire */
- u8 enable_dma;
- void (*cs_control)(u32 command);
-};
-
extern int dw_spi_add_host(struct dw_spi *dws);
extern void dw_spi_remove_host(struct dw_spi *dws);
extern int dw_spi_suspend_host(struct dw_spi *dws);
new file mode 100644
@@ -0,0 +1,23 @@
+#ifndef SPI_DW_PLATFORM_HEADER_H
+#define SPI_DW_PLATFORM_HEADER_H
+
+enum dw_ssi_type {
+ SSI_MOTO_SPI = 0,
+ SSI_TI_SSP,
+ SSI_NS_MICROWIRE,
+};
+
+/*
+ * Each SPI slave device to work with dw_api controller should
+ * has such a structure claiming its working mode (PIO/DMA etc),
+ * which can be save in the "controller_data" member of the
+ * struct spi_device
+ */
+struct dw_spi_chip {
+ u8 poll_mode; /* 0 for contoller polling mode */
+ u8 type; /* SPI/SSP/Micrwire */
+ u8 enable_dma;
+ void (*cs_control)(u32 command);
+};
+
+#endif /* SPI_DW_PLATFORM_HEADER_H */
So that it could be used to setup slave device's platform data, when platform boot code enumerates and registers those spi slave devices. Signed-off-by: Feng Tang <feng.tang@intel.com> --- drivers/spi/spi-dw.h | 20 +------------------- include/linux/spi/spi-dw-platform.h | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 19 deletions(-) create mode 100644 include/linux/spi/spi-dw-platform.h