Commit | Line | Data |
---|---|---|
4ede028f HCE |
1 | /* |
2 | * Driver for the Atmel AC97C controller | |
3 | * | |
4 | * Copyright (C) 2005-2009 Atmel Corporation | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or modify it | |
7 | * under the terms of the GNU General Public License version 2 as published | |
8 | * by the Free Software Foundation. | |
9 | */ | |
10 | #ifndef __INCLUDE_SOUND_ATMEL_AC97C_H | |
11 | #define __INCLUDE_SOUND_ATMEL_AC97C_H | |
12 | ||
3d598f47 | 13 | #include <linux/platform_data/dma-dw.h> |
4ede028f HCE |
14 | |
15 | #define AC97C_CAPTURE 0x01 | |
16 | #define AC97C_PLAYBACK 0x02 | |
17 | #define AC97C_BOTH (AC97C_CAPTURE | AC97C_PLAYBACK) | |
18 | ||
19 | /** | |
20 | * struct atmel_ac97c_pdata - board specific AC97C configuration | |
21 | * @rx_dws: DMA slave interface to use for sound capture. | |
22 | * @tx_dws: DMA slave interface to use for sound playback. | |
23 | * @reset_pin: GPIO pin wired to the reset input on the external AC97 codec, | |
24 | * optional to use, set to -ENODEV if not in use. AC97 layer will | |
25 | * try to do a software reset of the external codec anyway. | |
4ede028f HCE |
26 | * |
27 | * If the user do not want to use a DMA channel for playback or capture, i.e. | |
28 | * only one feature is required on the board. The slave for playback or capture | |
29 | * can be set to NULL. The AC97C driver will take use of this when setting up | |
30 | * the sound streams. | |
31 | */ | |
32 | struct ac97c_platform_data { | |
33 | struct dw_dma_slave rx_dws; | |
34 | struct dw_dma_slave tx_dws; | |
4ede028f HCE |
35 | int reset_pin; |
36 | }; | |
37 | ||
38 | #endif /* __INCLUDE_SOUND_ATMEL_AC97C_H */ |