aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-omap/include/plat
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@nokia.com>2010-03-03 08:08:08 -0500
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-03-12 06:12:25 -0500
commit7dc976ed38a927fc9880bd3dc498a6a903d1ba74 (patch)
tree3c1ac1b744c62412decaf7eef0d007dde4643e79 /arch/arm/plat-omap/include/plat
parenteeb309a8a6ff86ce462e072bc95ecbe85618505e (diff)
OMAP3: McBSP: Add interface for FIFO caused delay query
New functions for querying the FIFO caused delay on both TX and RX path. On TX path the return value shows the number of used locations in the FIFO. On RX papth it returns the number of locations to be filled to reach the threshold value (DMA will be triggered to read the data out from the FIFO). Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Tony Lindgren <tony@atomide.com> Acked-by: Jarkko Nikula <jhnikula@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'arch/arm/plat-omap/include/plat')
-rw-r--r--arch/arm/plat-omap/include/plat/mcbsp.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/include/plat/mcbsp.h b/arch/arm/plat-omap/include/plat/mcbsp.h
index 39748354ce45..1bd7021336c2 100644
--- a/arch/arm/plat-omap/include/plat/mcbsp.h
+++ b/arch/arm/plat-omap/include/plat/mcbsp.h
@@ -149,6 +149,8 @@
149#define OMAP_MCBSP_REG_WAKEUPEN 0xA8 149#define OMAP_MCBSP_REG_WAKEUPEN 0xA8
150#define OMAP_MCBSP_REG_XCCR 0xAC 150#define OMAP_MCBSP_REG_XCCR 0xAC
151#define OMAP_MCBSP_REG_RCCR 0xB0 151#define OMAP_MCBSP_REG_RCCR 0xB0
152#define OMAP_MCBSP_REG_XBUFFSTAT 0xB4
153#define OMAP_MCBSP_REG_RBUFFSTAT 0xB8
152#define OMAP_MCBSP_REG_SSELCR 0xBC 154#define OMAP_MCBSP_REG_SSELCR 0xBC
153 155
154#define OMAP_ST_REG_REV 0x00 156#define OMAP_ST_REG_REV 0x00
@@ -471,6 +473,8 @@ void omap_mcbsp_set_tx_threshold(unsigned int id, u16 threshold);
471void omap_mcbsp_set_rx_threshold(unsigned int id, u16 threshold); 473void omap_mcbsp_set_rx_threshold(unsigned int id, u16 threshold);
472u16 omap_mcbsp_get_max_tx_threshold(unsigned int id); 474u16 omap_mcbsp_get_max_tx_threshold(unsigned int id);
473u16 omap_mcbsp_get_max_rx_threshold(unsigned int id); 475u16 omap_mcbsp_get_max_rx_threshold(unsigned int id);
476u16 omap_mcbsp_get_tx_delay(unsigned int id);
477u16 omap_mcbsp_get_rx_delay(unsigned int id);
474int omap_mcbsp_get_dma_op_mode(unsigned int id); 478int omap_mcbsp_get_dma_op_mode(unsigned int id);
475#else 479#else
476static inline void omap_mcbsp_set_tx_threshold(unsigned int id, u16 threshold) 480static inline void omap_mcbsp_set_tx_threshold(unsigned int id, u16 threshold)
@@ -479,6 +483,8 @@ static inline void omap_mcbsp_set_rx_threshold(unsigned int id, u16 threshold)
479{ } 483{ }
480static inline u16 omap_mcbsp_get_max_tx_threshold(unsigned int id) { return 0; } 484static inline u16 omap_mcbsp_get_max_tx_threshold(unsigned int id) { return 0; }
481static inline u16 omap_mcbsp_get_max_rx_threshold(unsigned int id) { return 0; } 485static inline u16 omap_mcbsp_get_max_rx_threshold(unsigned int id) { return 0; }
486static inline u16 omap_mcbsp_get_tx_delay(unsigned int id) { return 0; }
487static inline u16 omap_mcbsp_get_rx_delay(unsigned int id) { return 0; }
482static inline int omap_mcbsp_get_dma_op_mode(unsigned int id) { return 0; } 488static inline int omap_mcbsp_get_dma_op_mode(unsigned int id) { return 0; }
483#endif 489#endif
484int omap_mcbsp_request(unsigned int id); 490int omap_mcbsp_request(unsigned int id);