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 */ 32struct 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 */ 39