added init of HPSEL and LOSEL bits of register 0x76 for some AD codecs
Should fix speaker output git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15598 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
9d845483cf
commit
e619df91e4
@ -95,12 +95,14 @@ typedef struct codec_table_tag
|
||||
|
||||
void default_init(device_config *);
|
||||
void ad1886_init(device_config *);
|
||||
void ad198x_init(device_config *);
|
||||
|
||||
void default_amp_enable(device_config *, bool);
|
||||
void cs4299_amp_enable(device_config *, bool);
|
||||
|
||||
codec_ops default_ops = { default_init, default_amp_enable };
|
||||
codec_ops ad1886_ops = { ad1886_init, default_amp_enable };
|
||||
codec_ops ad198x_ops = { ad198x_init, default_amp_enable };
|
||||
codec_ops cs4299_ops = { default_init, cs4299_amp_enable };
|
||||
|
||||
codec_table codecs[] =
|
||||
@ -148,8 +150,11 @@ codec_table codecs[] =
|
||||
{ 0x41445361, 0xffffffff, &ad1886_ops, "Analog Devices AD1886 SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x41445362, 0xffffffff, &default_ops, "Analog Devices AD1887 SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x41445363, 0xffffffff, &default_ops, "Analog Devices AD1886A SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x41445368, 0xffffffff, &ad198x_ops, "Analog Devices AD1888 SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x41445370, 0xffffffff, &ad198x_ops, "Analog Devices AD1980 SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x41445371, 0xffffffff, &default_ops, "Analog Devices AD1981A SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x41445372, 0xffffffff, &default_ops, "Analog Devices AD1981A SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x41445375, 0xffffffff, &ad198x_ops, "Analog Devices AD1985 SoundMAX"B_UTF8_REGISTERED },
|
||||
{ 0x414c4320, 0xfffffff0, &default_ops, "Avance Logic (Realtek) ALC100/ALC100P, RL5383/RL5522" },
|
||||
{ 0x414c4730, 0xffffffff, &default_ops, "Avance Logic (Realtek) ALC101" },
|
||||
#if 0
|
||||
@ -244,12 +249,22 @@ void default_init(device_config *config)
|
||||
LOG(("default_init\n"));
|
||||
}
|
||||
|
||||
void ad1886_init(device_config *config)
|
||||
|
||||
void
|
||||
ad1886_init(device_config *config)
|
||||
{
|
||||
LOG(("ad1886_init\n"));
|
||||
auvia_codec_write(config, 0x72, 0x0010);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
ad198x_init(device_config *config)
|
||||
{
|
||||
LOG(("ad198x_init\n"));
|
||||
auvia_codec_write(config, 0x76, auvia_codec_read(config, 0x76) | 0x420);
|
||||
}
|
||||
|
||||
void default_amp_enable(device_config *config, bool yesno)
|
||||
{
|
||||
LOG(("default_amp_enable\n"));
|
||||
|
Loading…
Reference in New Issue
Block a user