blob: a9ac0c11da71dd784ed26286e46d064f0cca66c9 [file] [log] [blame]
Chaithrika U Sb67f4482009-06-05 06:28:40 -04001/*
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>
Hebbar, Gururaja896f66b2012-08-27 18:56:41 +053022#include <linux/platform_data/davinci_asp.h>
23
Chaithrika U Sb67f4482009-06-05 06:28:40 -040024#include "davinci-pcm.h"
25
Daniel Mack393a53c2012-10-04 15:08:38 +020026#define DAVINCI_MCASP_RATES SNDRV_PCM_RATE_8000_192000
Chaithrika U Sb67f4482009-06-05 06:28:40 -040027#define DAVINCI_MCASP_I2S_DAI 0
28#define DAVINCI_MCASP_DIT_DAI 1
29
Chaithrika U Sb67f4482009-06-05 06:28:40 -040030struct davinci_audio_dev {
Troy Kisky92e2a6f2009-09-11 14:29:03 -070031 struct davinci_pcm_dma_params dma_params[2];
Chaithrika U Sb67f4482009-06-05 06:28:40 -040032 void __iomem *base;
Hebbar, Gururaja10884342012-08-08 20:40:32 +053033 struct device *dev;
Chaithrika U Sb67f4482009-06-05 06:28:40 -040034
35 /* McASP specific data */
36 int tdm_slots;
37 u8 op_mode;
38 u8 num_serializer;
39 u8 *serial_dir;
Chaithrika U S6a99fb52009-08-11 16:58:52 -040040 u8 version;
Michal Bachratyd486fea2013-04-19 15:28:44 +020041 u16 bclk_lrclk_ratio;
Chaithrika U S6a99fb52009-08-11 16:58:52 -040042
43 /* McASP FIFO related */
44 u8 txnumevt;
45 u8 rxnumevt;
Chaithrika U Sb67f4482009-06-05 06:28:40 -040046};
47
48#endif /* DAVINCI_MCASP_H */