1/* 2 * ALSA SoC McASP Audio Layer for TI DAVINCI processor 3 * 4 * MCASP related definitions 5 * 6 * Author: Nirmal Pandey <n-pandey@ti.com>, 7 * Suresh Rajashekara <suresh.r@ti.com> 8 * Steve Chen <schen@.mvista.com> 9 * 10 * Copyright: (C) 2009 MontaVista Software, Inc., <source@mvista.com> 11 * Copyright: (C) 2009 Texas Instruments, India 12 * 13 * This program is free software; you can redistribute it and/or modify 14 * it under the terms of the GNU General Public License version 2 as 15 * published by the Free Software Foundation. 16 */ 17 18#ifndef DAVINCI_MCASP_H 19#define DAVINCI_MCASP_H 20 21#include <linux/io.h> 22#include <linux/platform_data/davinci_asp.h> 23 24#include "davinci-pcm.h" 25 26#define DAVINCI_MCASP_RATES SNDRV_PCM_RATE_8000_192000 27#define DAVINCI_MCASP_I2S_DAI 0 28#define DAVINCI_MCASP_DIT_DAI 1 29 30struct davinci_audio_dev { 31 struct davinci_pcm_dma_params dma_params[2]; 32 void __iomem *base; 33 struct device *dev; 34 35 /* McASP specific data */ 36 int tdm_slots; 37 u8 op_mode; 38 u8 num_serializer; 39 u8 *serial_dir; 40 u8 version; 41 u16 bclk_lrclk_ratio; 42 43 /* McASP FIFO related */ 44 u8 txnumevt; 45 u8 rxnumevt; 46 47#ifdef CONFIG_PM_SLEEP 48 struct { 49 u32 txfmtctl; 50 u32 rxfmtctl; 51 u32 txfmt; 52 u32 rxfmt; 53 u32 aclkxctl; 54 u32 aclkrctl; 55 u32 pdir; 56 } context; 57#endif 58}; 59 60#endif /* DAVINCI_MCASP_H */ 61