mirror of
https://github.com/joel16/android_kernel_sony_msm8994.git
synced 2024-11-29 15:11:12 +00:00
[ALSA] ASoC codecs: WM8750 support
This patch adds ASoC support for the WM8750 codec. Supported features:- o Capture/Playback/Sidetone/Bypass. o 16 & 24 bit audio. o 8k - 96k sample rates. o DAPM. Signed-off-by: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
This commit is contained in:
parent
40e0aa6466
commit
abadfc928a
@ -116,6 +116,7 @@
|
||||
#define I2C_DRIVERID_TLV320AIC23B 87 /* TI TLV320AIC23B audio codec */
|
||||
#define I2C_DRIVERID_ISL1208 88 /* Intersil ISL1208 RTC */
|
||||
#define I2C_DRIVERID_WM8731 89 /* Wolfson WM8731 audio codec */
|
||||
#define I2C_DRIVERID_WM8750 90 /* Wolfson WM8750 audio codec */
|
||||
|
||||
#define I2C_DRIVERID_I2CDEV 900
|
||||
#define I2C_DRIVERID_ARP 902 /* SMBus ARP Client */
|
||||
|
1131
sound/soc/codecs/wm8750.c
Normal file
1131
sound/soc/codecs/wm8750.c
Normal file
File diff suppressed because it is too large
Load Diff
66
sound/soc/codecs/wm8750.h
Normal file
66
sound/soc/codecs/wm8750.h
Normal file
@ -0,0 +1,66 @@
|
||||
/*
|
||||
* Copyright 2005 Openedhand Ltd.
|
||||
*
|
||||
* Author: Richard Purdie <richard@openedhand.com>
|
||||
*
|
||||
* Based on WM8753.h
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _WM8750_H
|
||||
#define _WM8750_H
|
||||
|
||||
/* WM8750 register space */
|
||||
|
||||
#define WM8750_LINVOL 0x00
|
||||
#define WM8750_RINVOL 0x01
|
||||
#define WM8750_LOUT1V 0x02
|
||||
#define WM8750_ROUT1V 0x03
|
||||
#define WM8750_ADCDAC 0x05
|
||||
#define WM8750_IFACE 0x07
|
||||
#define WM8750_SRATE 0x08
|
||||
#define WM8750_LDAC 0x0a
|
||||
#define WM8750_RDAC 0x0b
|
||||
#define WM8750_BASS 0x0c
|
||||
#define WM8750_TREBLE 0x0d
|
||||
#define WM8750_RESET 0x0f
|
||||
#define WM8750_3D 0x10
|
||||
#define WM8750_ALC1 0x11
|
||||
#define WM8750_ALC2 0x12
|
||||
#define WM8750_ALC3 0x13
|
||||
#define WM8750_NGATE 0x14
|
||||
#define WM8750_LADC 0x15
|
||||
#define WM8750_RADC 0x16
|
||||
#define WM8750_ADCTL1 0x17
|
||||
#define WM8750_ADCTL2 0x18
|
||||
#define WM8750_PWR1 0x19
|
||||
#define WM8750_PWR2 0x1a
|
||||
#define WM8750_ADCTL3 0x1b
|
||||
#define WM8750_ADCIN 0x1f
|
||||
#define WM8750_LADCIN 0x20
|
||||
#define WM8750_RADCIN 0x21
|
||||
#define WM8750_LOUTM1 0x22
|
||||
#define WM8750_LOUTM2 0x23
|
||||
#define WM8750_ROUTM1 0x24
|
||||
#define WM8750_ROUTM2 0x25
|
||||
#define WM8750_MOUTM1 0x26
|
||||
#define WM8750_MOUTM2 0x27
|
||||
#define WM8750_LOUT2V 0x28
|
||||
#define WM8750_ROUT2V 0x29
|
||||
#define WM8750_MOUTV 0x2a
|
||||
|
||||
#define WM8750_CACHE_REGNUM 0x2a
|
||||
|
||||
struct wm8750_setup_data {
|
||||
unsigned short i2c_address;
|
||||
unsigned int mclk;
|
||||
};
|
||||
|
||||
extern struct snd_soc_codec_dai wm8750_dai;
|
||||
extern struct snd_soc_codec_device soc_codec_dev_wm8750;
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user