|
List Info
Thread: Re: nForce 430 / ASUS M2NPV-VM snd_hda_intel (surround) sound problems
|
|
| Re: nForce 430 / ASUS M2NPV-VM
snd_hda_intel (surround) sound problems |
  Germany |
2007-04-14 04:24:49 |
Am Freitag 13 April 2007 schrieb Trevor Bradley:
> I *didn't* get it working. I eventually got stereo
sound working by
> eliminating all references to 5.1 sound (try
eliminating your .asoundrc
> file if you've already created one).
[..]
> Prakash Punnoor wrote:
> > Am Donnerstag 22 Februar 2007 schrieb Trevor
Bradley:
> >> For reference, I've fixed this problem. Be
sure not to just do an rmmod
> >> of snd_hda_codec, but *every* snd module. Do
an lsmod and rmmod
> >> everything that looks like snd*. I was trying
to reload snd_hda_codec
> >> while leaving other alsa 1.0.11 drivers
loaded.
> >>
> >> That should have been obvious, but it wasn't.
> >>
> >> No clue if 1.0.14rc2 works at all (I'm sshing
to home to fix it), but at
> >> least I have updated drivers.
> >>
> >> Thanks for the advice Oliver. Eventually I
got it.
> >
> > Could you tell me how you got it working? I have
the same mobo and I only
> > managed to get stereo out of it. I am currently
using kernel 2.6.21-rc6.
> > I am testing with
> >
> > speaker-test -Dplug:surround51 -c 6
> >
> > I have unmuted and set vol to high/max for pcm,
front, surround, center
> > and lfe. I have set channel to 6ch. Everything
else is muted.
> >
> > :-(
Hah! I managed it!!! Just tested with speaker-test, so far.
I hacked the
driver a bit:
In patch_analog.c in static int patch_ad1986a(struct
hda_codec *codec)
case AD1986A_3STACK:
spec->num_mixers = 2;
spec->mixers[1] = ad1986a_3st_mixers;
//spec->num_init_verbs = 3;
//spec->init_verbs[1] = ad1986a_3st_init_verbs;
//spec->init_verbs[2] = ad1986a_ch2_init;
spec->channel_mode = ad1986a_modes;
spec->num_channel_mode = ARRAY_SIZE(ad1986a_modes);
spec->need_dac_fix = 0;//1;
spec->multiout.max_channels = 6;//2;
spec->multiout.num_dacs = 3;//1;
break;
I don't yet know whether it is completely correct what I did
and what is the
minimal change needed.
Perhaps some of the changes will lead to regressions, I need
to check further.
I think setting max channels and num_dacs has nor meaning,
as probably the get
overwritten on ch set, right? dac_fix probably changes the
way num_dacs are
assigned to?
So my guess is that probably setting ad1986a_3st_init_verbs
is wrong for my
mobo.
{0x0f, AC_VERB_SET_CONNECT_SEL, 0x2},
{0x10, AC_VERB_SET_CONNECT_SEL, 0x1},
What do those magic number 0x1 and 0x2 mean here? I looked
into hda specs and
ad1986a specs. 0xf is mic selector and 0x10 is line
selector. Does is select
which physical output is chosen?
I will test later whether leaking dac_fix as 1 and ust
taking out
ad1986a_3st_init_verbs will be enough.
Cheers,
--
(°= =°)
// Prakash Punnoor /\
V_/ _V
------------------------------------------------------------
-------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the
chance to share your
opinions on IT & business topics through brief
surveys-and earn cash
http://www.techsay.com/default.
php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Alsa-user mailing list
Alsa-user lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user
|
|
| Re: nForce 430 / ASUS M2NPV-VM
snd_hda_intel (surround) sound problems |
  Germany |
2007-04-14 07:13:57 |
Am Samstag 14 April 2007 schrieb Prakash Punnoor:
> Hah! I managed it!!! Just tested with speaker-test, so
far. I hacked the
> driver a bit:
>
> In patch_analog.c in static int patch_ad1986a(struct
hda_codec *codec)
>
> case AD1986A_3STACK:
> spec->num_mixers = 2;
> spec->mixers[1] = ad1986a_3st_mixers;
> //spec->num_init_verbs = 3;
> //spec->init_verbs[1] = ad1986a_3st_init_verbs;
> //spec->init_verbs[2] = ad1986a_ch2_init;
> spec->channel_mode = ad1986a_modes;
> spec->num_channel_mode =
ARRAY_SIZE(ad1986a_modes);
> spec->need_dac_fix = 0;//1;
> spec->multiout.max_channels = 6;//2;
> spec->multiout.num_dacs = 3;//1;
> break;
>
> I don't yet know whether it is completely correct what
I did and what is
> the minimal change needed.
>
> Perhaps some of the changes will lead to regressions, I
need to check
> further.
>
> I think setting max channels and num_dacs has nor
meaning, as probably the
> get overwritten on ch set, right? dac_fix probably
changes the way num_dacs
> are assigned to?
>
> So my guess is that probably setting
ad1986a_3st_init_verbs is wrong for my
> mobo.
>
> {0x0f, AC_VERB_SET_CONNECT_SEL, 0x2},
> {0x10, AC_VERB_SET_CONNECT_SEL, 0x1},
>
> What do those magic number 0x1 and 0x2 mean here? I
looked into hda specs
> and ad1986a specs. 0xf is mic selector and 0x10 is line
selector. Does is
> select which physical output is chosen?
>
> I will test later whether leaking dac_fix as 1 and ust
taking out
> ad1986a_3st_init_verbs will be enough.
>
> Cheers,
OK, I was right. Taking out ad1986a_3st_init_verbs is enough
for making it
work:
case AD1986A_3STACK:
spec->num_mixers = 2;
spec->mixers[1] = ad1986a_3st_mixers;
spec->num_init_verbs = 1;//2;
//spec->init_verbs[1] = ad1986a_3st_init_verbs;
spec->init_verbs[2] = ad1986a_ch2_init;
spec->channel_mode = ad1986a_modes;
spec->num_channel_mode = ARRAY_SIZE(ad1986a_modes);
spec->need_dac_fix = 1;
spec->multiout.max_channels = 2;
spec->multiout.num_dacs = 1;
break;
There is still one bug left for me: If I change ch setting,
I need to adjust
vol for sur, cl/lfe again, otherwise they stay mute. Bug of
driver or
alsamixer?
Would be nice if we got a real fix for kernel 2.6.21.
Cheers,
--
(°= =°)
// Prakash Punnoor /\
V_/ _V
------------------------------------------------------------
-------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the
chance to share your
opinions on IT & business topics through brief
surveys-and earn cash
http://www.techsay.com/default.
php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Alsa-user mailing list
Alsa-user lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user
|
|
| Re: nForce 430 / ASUS M2NPV-VM
snd_hda_intel (surround) sound problems |
  France |
2007-04-14 11:05:47 |
Prakash Punnoor <prakash punnoor.de> writes:
> So my guess is that probably setting
ad1986a_3st_init_verbs is wrong
> for my mobo.
>
> {0x0f, AC_VERB_SET_CONNECT_SEL, 0x2},
> {0x10, AC_VERB_SET_CONNECT_SEL, 0x1},
>
> What do those magic number 0x1 and 0x2 mean here? I
looked into hda
> specs and ad1986a specs. 0xf is mic selector and 0x10
is line
> selector. Does is select which physical output is
chosen?
As far as I have understood the spec, 0x2 means that NID 0xf
widget's
input is connected to the third widget listed in NID 0xf
widget's
connection list. It's like a pointer into the connection
list.
So you need widget's 0x0f connection list to know the actual
widget
connected its input.
Likewise for 0x1.
HTH
------------------------------------------------------------
-------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and
take
control of your XML. No limits. Just data. Click to get it
now.
http://sourcefor
ge.net/powerbar/db2/
_______________________________________________
Alsa-user mailing list
Alsa-user lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user
|
|
| Re: nForce 430 / ASUS M2NPV-VM
snd_hda_intel (surround) sound problems |
  Germany |
2007-04-16 04:14:44 |
At Sat, 14 Apr 2007 11:24:49 +0200,
Prakash Punnoor wrote:
>
> Am Freitag 13 April 2007 schrieb Trevor Bradley:
> > I *didn't* get it working. I eventually got
stereo sound working by
> > eliminating all references to 5.1 sound (try
eliminating your .asoundrc
> > file if you've already created one).
>
> [..]
> > Prakash Punnoor wrote:
> > > Am Donnerstag 22 Februar 2007 schrieb Trevor
Bradley:
> > >> For reference, I've fixed this problem.
Be sure not to just do an rmmod
> > >> of snd_hda_codec, but *every* snd module.
Do an lsmod and rmmod
> > >> everything that looks like snd*. I was
trying to reload snd_hda_codec
> > >> while leaving other alsa 1.0.11 drivers
loaded.
> > >>
> > >> That should have been obvious, but it
wasn't.
> > >>
> > >> No clue if 1.0.14rc2 works at all (I'm
sshing to home to fix it), but at
> > >> least I have updated drivers.
> > >>
> > >> Thanks for the advice Oliver. Eventually
I got it.
> > >
> > > Could you tell me how you got it working? I
have the same mobo and I only
> > > managed to get stereo out of it. I am
currently using kernel 2.6.21-rc6.
> > > I am testing with
> > >
> > > speaker-test -Dplug:surround51 -c 6
> > >
> > > I have unmuted and set vol to high/max for
pcm, front, surround, center
> > > and lfe. I have set channel to 6ch.
Everything else is muted.
> > >
> > > :-(
>
>
> Hah! I managed it!!! Just tested with speaker-test, so
far. I hacked the
> driver a bit:
>
> In patch_analog.c in static int patch_ad1986a(struct
hda_codec *codec)
>
> case AD1986A_3STACK:
> spec->num_mixers = 2;
> spec->mixers[1] = ad1986a_3st_mixers;
> //spec->num_init_verbs = 3;
> //spec->init_verbs[1] = ad1986a_3st_init_verbs;
> //spec->init_verbs[2] = ad1986a_ch2_init;
> spec->channel_mode = ad1986a_modes;
> spec->num_channel_mode =
ARRAY_SIZE(ad1986a_modes);
> spec->need_dac_fix = 0;//1;
> spec->multiout.max_channels = 6;//2;
> spec->multiout.num_dacs = 3;//1;
> break;
>
> I don't yet know whether it is completely correct what
I did and what is the
> minimal change needed.
>
> Perhaps some of the changes will lead to regressions, I
need to check further.
>
> I think setting max channels and num_dacs has nor
meaning, as probably the get
> overwritten on ch set, right? dac_fix probably changes
the way num_dacs are
> assigned to?
>
> So my guess is that probably setting
ad1986a_3st_init_verbs is wrong for my
> mobo.
>
> {0x0f, AC_VERB_SET_CONNECT_SEL, 0x2},
> {0x10, AC_VERB_SET_CONNECT_SEL, 0x1},
You're using older version. The latet HG version has
different values
there. Please try the HG version first then further
debugging...
Takashi
------------------------------------------------------------
-------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and
take
control of your XML. No limits. Just data. Click to get it
now.
http://sourcefor
ge.net/powerbar/db2/
_______________________________________________
Alsa-user mailing list
Alsa-user lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user
|
|
[1-4]
|
|