1 /* 2 * omap-mcbsp.h 3 * 4 * Copyright (C) 2008 Nokia Corporation 5 * 6 * Contact: Jarkko Nikula <jhnikula@gmail.com> 7 * Peter Ujfalusi <peter.ujfalusi@nokia.com> 8 * 9 * This program is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License 11 * version 2 as published by the Free Software Foundation. 12 * 13 * This program is distributed in the hope that it will be useful, but 14 * WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program; if not, write to the Free Software 20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 21 * 02110-1301 USA 22 * 23 */ 24 25 #ifndef __OMAP_I2S_H__ 26 #define __OMAP_I2S_H__ 27 28 /* Source clocks for McBSP sample rate generator */ 29 enum omap_mcbsp_clksrg_clk { 30 OMAP_MCBSP_SYSCLK_CLKS_FCLK, /* Internal FCLK */ 31 OMAP_MCBSP_SYSCLK_CLKS_EXT, /* External CLKS pin */ 32 OMAP_MCBSP_SYSCLK_CLK, /* Internal ICLK */ 33 OMAP_MCBSP_SYSCLK_CLKX_EXT, /* External CLKX pin */ 34 OMAP_MCBSP_SYSCLK_CLKR_EXT, /* External CLKR pin */ 35 OMAP_MCBSP_CLKR_SRC_CLKR, /* CLKR from CLKR pin */ 36 OMAP_MCBSP_CLKR_SRC_CLKX, /* CLKR from CLKX pin */ 37 OMAP_MCBSP_FSR_SRC_FSR, /* FSR from FSR pin */ 38 OMAP_MCBSP_FSR_SRC_FSX, /* FSR from FSX pin */ 39 }; 40 41 /* McBSP dividers */ 42 enum omap_mcbsp_div { 43 OMAP_MCBSP_CLKGDV, /* Sample rate generator divider */ 44 }; 45 46 #if defined(CONFIG_SOC_OMAP2420) 47 #define NUM_LINKS 2 48 #endif 49 #if defined(CONFIG_ARCH_OMAP15XX) || defined(CONFIG_ARCH_OMAP16XX) 50 #undef NUM_LINKS 51 #define NUM_LINKS 3 52 #endif 53 #if defined(CONFIG_ARCH_OMAP4) 54 #undef NUM_LINKS 55 #define NUM_LINKS 4 56 #endif 57 #if defined(CONFIG_ARCH_OMAP3) || defined(CONFIG_SOC_OMAP2430) 58 #undef NUM_LINKS 59 #define NUM_LINKS 5 60 #endif 61 62 int omap_mcbsp_st_add_controls(struct snd_soc_codec *codec, int mcbsp_id); 63 64 #endif 65