* via82xx: DXS channels
@ 2004-01-12 22:33 Timo Hirvonen
2004-01-13 16:10 ` Takashi Iwai
2004-01-14 1:22 ` Gustavo Guillermo
0 siblings, 2 replies; 3+ messages in thread
From: Timo Hirvonen @ 2004-01-12 22:33 UTC (permalink / raw)
To: alsa-devel
[-- Attachment #1: Type: text/plain, Size: 439 bytes --]
Hi!
I tested DXS channels of my via82xx chip. My motherboard is ASRock
K7VT2 and the kernel is 2.6.1-mm2.
With dxs_support=1 option DXS channels did not work (bad sound quality)
but they did with dxs_support=4.
I noticed the volume ranges for DXS channels are wrong (0-255),
should be 0-31. Here is a patch which fixes the problem and adds
ASRock K7VT2 to the dxs_whitelist. I don't know if this works on other
motherboards!
Timo
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: via82xx.patch --]
[-- Type: text/x-patch; charset=unknown-8bit, Size: 2107 bytes --]
--- sound/pci/via82xx.c.orig 2004-01-12 15:56:21.000000000 +0200
+++ sound/pci/via82xx.c 2004-01-13 00:12:48.721787059 +0200
@@ -1481,7 +1481,7 @@ static int snd_via8233_dxs_volume_info(s
uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
uinfo->count = 2;
uinfo->value.integer.min = 0;
- uinfo->value.integer.max = 0xff;
+ uinfo->value.integer.max = 31;
return 0;
}
@@ -1489,8 +1489,8 @@ static int snd_via8233_dxs_volume_get(sn
{
via82xx_t *chip = snd_kcontrol_chip(kcontrol);
unsigned int idx = snd_ctl_get_ioff(kcontrol, &ucontrol->id);
- ucontrol->value.integer.value[0] = 0xff - chip->playback_volume[idx][0];
- ucontrol->value.integer.value[1] = 0xff - chip->playback_volume[idx][1];
+ ucontrol->value.integer.value[0] = 31 - chip->playback_volume[idx][0];
+ ucontrol->value.integer.value[1] = 31 - chip->playback_volume[idx][1];
return 0;
}
@@ -1502,13 +1502,13 @@ static int snd_via8233_dxs_volume_put(sn
unsigned char val;
int change;
- val = 0xff - ucontrol->value.integer.value[0];
+ val = 31 - ucontrol->value.integer.value[0];
change = val != chip->playback_volume[idx][0];
if (change) {
chip->playback_volume[idx][0] = val;
outb(val, port + VIA_REG_OFS_PLAYBACK_VOLUME_L);
}
- val = 0xff - ucontrol->value.integer.value[1];
+ val = 31 - ucontrol->value.integer.value[1];
change |= val != chip->playback_volume[idx][1];
if (change) {
chip->playback_volume[idx][1] = val;
@@ -1986,6 +1986,7 @@ static int __devinit check_dxs_list(stru
{ .vendor = 0x1043, .device = 0x80a1, .action = VIA_DXS_NO_VRA }, /* ASUS A7V8-X */
{ .vendor = 0x1043, .device = 0x80b0, .action = VIA_DXS_ENABLE }, /* ASUS A7V600 */
{ .vendor = 0x10cf, .device = 0x118e, .action = VIA_DXS_ENABLE }, /* FSC laptop */
+ { .vendor = 0x1106, .device = 0x4161, .action = VIA_DXS_NO_VRA }, /* ASRock K7VT2 */
{ .vendor = 0x1297, .device = 0xc160, .action = VIA_DXS_ENABLE }, /* Shuttle SK41G */
{ .vendor = 0x1458, .device = 0xa002, .action = VIA_DXS_ENABLE }, /* Gigabyte GA-7VAXP */
{ .vendor = 0x147b, .device = 0x1401, .action = VIA_DXS_ENABLE }, /* ABIT KD7(-RAID) */
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: via82xx: DXS channels
2004-01-12 22:33 via82xx: DXS channels Timo Hirvonen
@ 2004-01-13 16:10 ` Takashi Iwai
2004-01-14 1:22 ` Gustavo Guillermo
1 sibling, 0 replies; 3+ messages in thread
From: Takashi Iwai @ 2004-01-13 16:10 UTC (permalink / raw)
To: Timo Hirvonen; +Cc: alsa-devel
At Tue, 13 Jan 2004 00:33:51 +0200,
Timo Hirvonen wrote:
>
> [1 <text/plain; ISO-8859-1 (8bit)>]
> Hi!
>
> I tested DXS channels of my via82xx chip. My motherboard is ASRock
> K7VT2 and the kernel is 2.6.1-mm2.
>
> With dxs_support=1 option DXS channels did not work (bad sound quality)
> but they did with dxs_support=4.
>
> I noticed the volume ranges for DXS channels are wrong (0-255),
> should be 0-31. Here is a patch which fixes the problem and adds
> ASRock K7VT2 to the dxs_whitelist. I don't know if this works on other
> motherboards!
thanks!
applied to cvs with a minor modification.
ciao,
Takashi
-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: via82xx: DXS channels
2004-01-12 22:33 via82xx: DXS channels Timo Hirvonen
2004-01-13 16:10 ` Takashi Iwai
@ 2004-01-14 1:22 ` Gustavo Guillermo
1 sibling, 0 replies; 3+ messages in thread
From: Gustavo Guillermo @ 2004-01-14 1:22 UTC (permalink / raw)
To: Timo Hirvonen, alsa-devel
I will test it. for A7v8X-X
>>>>>>>>>>>>>>>>>> Mensaje original <<<<<<<<<<<<<<<<<<
El 13/01/04, 4:33:51, Timo Hirvonen <tihirvon@ee.oulu.fi> escribió sobre el
tema [Alsa-devel] via82xx: DXS channels:
> Hi!
> I tested DXS channels of my via82xx chip. My motherboard is ASRock
> K7VT2 and the kernel is 2.6.1-mm2.
> With dxs_support=1 option DXS channels did not work (bad sound quality)
> but they did with dxs_support=4.
> I noticed the volume ranges for DXS channels are wrong (0-255),
> should be 0-31. Here is a patch which fixes the problem and adds
> ASRock K7VT2 to the dxs_whitelist. I don't know if this works on other
> motherboards!
> Timo
-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2004-01-14 1:22 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-01-12 22:33 via82xx: DXS channels Timo Hirvonen
2004-01-13 16:10 ` Takashi Iwai
2004-01-14 1:22 ` Gustavo Guillermo
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.