update wm8994 driver

This commit is contained in:
陈金泉 2011-08-08 16:47:29 +08:00
parent d865e6d0d7
commit 6d339c6e2c
5 changed files with 2117 additions and 1923 deletions

View File

@ -1510,6 +1510,20 @@ CONFIG_SND_RK29_SOC_I2S_8CH=y
# CONFIG_SND_RK29_SOC_alc5631 is not set
# CONFIG_SND_RK29_SOC_RT5625 is not set
CONFIG_SND_RK29_SOC_WM8994=y
# CONFIG_SND_INSIDE_EARPIECE is not set
# CONFIG_SND_OUTSIDE_EARPIECE is not set
CONFIG_SND_NO_EARPIECE=y
CONFIG_SND_BB_NORMAL_INPUT=y
# CONFIG_SND_BB_DIFFERENTIAL_INPUT is not set
CONFIG_WM8994_SPEAKER_INCALL_VOL=15
CONFIG_WM8994_SPEAKER_INCALL_MIC_VOL=15
CONFIG_WM8994_SPEAKER_NORMAL_VOL=15
CONFIG_WM8994_HEADSET_INCALL_VOL=6
CONFIG_WM8994_HEADSET_INCALL_MIC_VOL=30
CONFIG_WM8994_HEADSET_NORMAL_VOL=15
CONFIG_WM8994_BT_INCALL_VOL=30
CONFIG_WM8994_BT_INCALL_MIC_VOL=-20
CONFIG_WM8994_RECORDER_VOL=40
# CONFIG_SND_RK29_SOC_CS42L52 is not set
# CONFIG_SND_RK29_CODEC_SOC_MASTER is not set
CONFIG_SND_RK29_CODEC_SOC_SLAVE=y

View File

@ -764,6 +764,13 @@ static struct i2c_board_info __initdata board_i2c0_devices[] = {
.flags = 0,
},
#endif
#if defined (CONFIG_SND_SOC_WM8994)
{
.type = "wm8994",
.addr = 0x1A,
.flags = 0,
},
#endif
#if defined (CONFIG_BATTERY_STC3100)
{
.type = "stc3100",

File diff suppressed because it is too large Load Diff

View File

@ -14,6 +14,8 @@
#ifndef _WM8994_H
#define _WM8994_H
#define WM8994_NUM_REG 0x44
/* WM8994 register space */
#define WM8994_RESET 0x00
#define wm8994_SYSCLK_3072M 0

View File

@ -75,6 +75,94 @@ config SND_RK29_SOC_WM8994
Say Y if you want to add support for SoC audio on rockchip
with the WM8994.
if SND_SOC_WM8994
choice
prompt "Chose earpiece type"
config SND_INSIDE_EARPIECE
tristate "Inside earpiece"
config SND_OUTSIDE_EARPIECE
tristate "Outside earpiece"
config SND_NO_EARPIECE
tristate "No earpiece"
endchoice
choice
prompt "Chose BB input signal type"
config SND_BB_NORMAL_INPUT
tristate "BB normal singnal input"
config SND_BB_DIFFERENTIAL_INPUT
tristate "BB differential singnal input"
endchoice
config WM8994_SPEAKER_INCALL_VOL
default 15
int "Setting the wm8994 speaker incall vol"
help
-21dB to 12dB
config WM8994_SPEAKER_INCALL_MIC_VOL
default 15
int "Setting the wm8994 speaker incall mic vol"
help
-22dB to 30dB
config WM8994_SPEAKER_NORMAL_VOL
default 15
int "Setting the wm8994 speaker normal vol"
help
-57dB to 18dB
if SND_INSIDE_EARPIECE||SND_OUTSIDE_EARPIECE
config WM8994_EARPIECE_INCALL_VOL
default 0
int "Setting the wm8994 earpiece incall vol(normal)"
help
-27dB to 30dB
endif
config WM8994_HEADSET_INCALL_VOL
default 6
int "Setting the wm8994 headset incall vol"
help
-12dB to 6dB
config WM8994_HEADSET_INCALL_MIC_VOL
default 30
int "Setting the wm8994 headset incall mic vol"
help
-22dB to 30dB
config WM8994_HEADSET_NORMAL_VOL
default 15
int "Setting the wm8994 headset normal vol"
help
-57dB to 6dB
config WM8994_BT_INCALL_VOL
default 30
int "Setting the wm8994 BT incall vol"
help
0dB or 30dB
config WM8994_BT_INCALL_MIC_VOL
default -20
int "Setting the wm8994 BT incall mic vol"
help
-57dB to 6dB
config WM8994_RECORDER_VOL
default 40
int "Setting the wm8994 recorder vol"
help
-16dB to 60dB
endif
config SND_RK29_SOC_CS42L52
tristate "SoC I2S Audio support for rockchip - CS42L52"
depends on SND_RK29_SOC && I2C_RK29