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 |
|
---|
13 | #include <linux/platform_data/dma-dw.h>
|
---|
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.
|
---|
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;
|
---|
35 | int reset_pin;
|
---|
36 | };
|
---|
37 |
|
---|
38 | #endif /* __INCLUDE_SOUND_ATMEL_AC97C_H */
|
---|