/* * linux/include/linux/l3/uda1341.h * * Philips UDA1341 mixer device driver for ALSA * * Copyright (c) 2002 Tomas Kasparek * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License. * * History: * * 2002-03-13 Tomas Kasparek Initial release - based on uda1341.h from OSS * 2002-03-30 Tomas Kasparek Proc filesystem support, complete mixer and DSP * features support */ /* $Id: uda1341.h,v 1.8 2005/11/17 14:17:21 tiwai Exp $ */ #define UDA1341_ALSA_NAME "snd-uda1341" /* * Default rate set after inicialization */ #define AUDIO_RATE_DEFAULT 44100 /* * UDA1341 L3 address and command types */ #define UDA1341_L3ADDR 5 #define UDA1341_DATA0 (UDA1341_L3ADDR << 2 | 0) #define UDA1341_DATA1 (UDA1341_L3ADDR << 2 | 1) #define UDA1341_STATUS (UDA1341_L3ADDR << 2 | 2) enum uda1341_onoff { OFF=0, ON, }; enum uda1341_format { I2S=0, LSB16, LSB18, LSB20, MSB, LSB16MSB, LSB18MSB, LSB20MSB, }; enum uda1341_fs { F512=0, F384, F256, Funused, }; enum uda1341_peak { BEFORE=0, AFTER, }; enum uda1341_filter { FLAT=0, MIN, MIN2, MAX, }; enum uda1341_mixer { DOUBLE, LINE, MIC, MIXER, }; enum uda1341_deemp { NONE, D32, D44, D48, }; enum uda1341_config { CMD_READ_REG = 0, CMD_RESET, CMD_FS, CMD_FORMAT, CMD_OGAIN, CMD_IGAIN, CMD_DAC, CMD_ADC, CMD_VOLUME, CMD_BASS, CMD_TREBBLE, CMD_PEAK, CMD_DEEMP, CMD_MUTE, CMD_FILTER, CMD_CH1, CMD_CH2, CMD_MIC, CMD_MIXER, CMD_AGC, CMD_IG, CMD_AGC_TIME, CMD_AGC_LEVEL, #ifdef CONFIG_PM CMD_SUSPEND, CMD_RESUME, #endif CMD_LAST, }; enum write_through { //used in update_bits (write_cfg) to avoid l3_write - just update local copy of regs. REGS_ONLY=0, //update local regs and write value to uda1341 - do l3_write FLUSH, }; int __init snd_chip_uda1341_mixer_new(struct snd_card *card, struct l3_client **clnt); /* * Local variables: * indent-tabs-mode: t * End: */