diff options
author | Tony Lindgren <tony@atomide.com> | 2007-11-29 15:38:16 -0800 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2008-02-08 10:37:57 -0800 |
commit | 1cccd2a728673da00a05fe19c5ba4897257d6b8a (patch) | |
tree | af517aac0c76d0ba75e9541c891f27b28919f146 /arch/arm/plat-omap | |
parent | a4ffc0a0b240a29cbe489f6db9dae112a49ef1c1 (diff) | |
download | blackbird-obmc-linux-1cccd2a728673da00a05fe19c5ba4897257d6b8a.tar.gz blackbird-obmc-linux-1cccd2a728673da00a05fe19c5ba4897257d6b8a.zip |
ARM: OMAP: Request DSP memory for McBSP
On OMAP1 some McBSP features depend on DSP. Also export
polling functions as suggested by Luis Cargnini.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/plat-omap')
-rw-r--r-- | arch/arm/plat-omap/mcbsp.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/mcbsp.c b/arch/arm/plat-omap/mcbsp.c index 2af5bd5a1344..9cf83c4da9fa 100644 --- a/arch/arm/plat-omap/mcbsp.c +++ b/arch/arm/plat-omap/mcbsp.c @@ -201,6 +201,14 @@ static int omap_mcbsp_check(unsigned int id) static void omap_mcbsp_dsp_request(void) { if (cpu_is_omap15xx() || cpu_is_omap16xx()) { + int ret; + + ret = omap_dsp_request_mem(); + if (ret < 0) { + printk(KERN_ERR "Could not get dsp memory: %i\n", ret); + return; + } + clk_enable(mcbsp_dsp_ck); clk_enable(mcbsp_api_ck); @@ -219,6 +227,7 @@ static void omap_mcbsp_dsp_request(void) static void omap_mcbsp_dsp_free(void) { if (cpu_is_omap15xx() || cpu_is_omap16xx()) { + omap_dsp_release_mem(); clk_disable(mcbsp_dspxor_ck); clk_disable(mcbsp_dsp_ck); clk_disable(mcbsp_api_ck); @@ -1024,6 +1033,8 @@ EXPORT_SYMBOL(omap_mcbsp_set_io_type); EXPORT_SYMBOL(omap_mcbsp_free); EXPORT_SYMBOL(omap_mcbsp_start); EXPORT_SYMBOL(omap_mcbsp_stop); +EXPORT_SYMBOL(omap_mcbsp_pollread); +EXPORT_SYMBOL(omap_mcbsp_pollwrite); EXPORT_SYMBOL(omap_mcbsp_xmit_word); EXPORT_SYMBOL(omap_mcbsp_recv_word); EXPORT_SYMBOL(omap_mcbsp_xmit_buffer); |