Re: 2.6.12-rc3-mm3: ALSA broken ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05.18, Takashi Iwai wrote:
> At Tue, 17 May 2005 22:39:45 +0000,
> J.A. Magallon wrote:
> > 
> > 
> > On 05.17, Takashi Iwai wrote:
> > ...
> > > > 
> > > > Example: go into 4ch mode. Check this control. Then switch to 6ch mode.
> > > > The Center jack has no sound (it should, shouldn't ?). Check it and voilà.
> > > > It looks that the logic in the channel selection needs to set this flag also...
> > > 
> > > Yep, you're right.  Try the patch below.
> > > 
> > > 
> > 
> > Thanks, this patch worked. When in 6ch mode, the boolen flag we talk about
> > still controls if the line jack is input or output. In 4ch mode, it is always
> > input. If i chech it, switching to 6ch does not toggle it. They are
> > independent controls.
> > 
> > Anyways. I can't get rid of the flag. It is initialized to on by default.
> > Isn't strange to have two ways of controlling this ?
> > 

Yehaaa, I got it...
There was a bug in your last patch.
This:

+	snd_ac97_update_bits(ac97, AC97_AD_SERIAL_CFG, 9 << 11,
+			     is_shared_micin(ac97) ? 0 : 9 << 11);

should be

+	snd_ac97_update_bits(ac97, AC97_AD_SERIAL_CFG, 1 << 9,
+			     is_shared_micin(ac97) ? 0 : 1 << 9);

Whit this, I can control the output just with the 2/4/6 ch mode, and get rid
of the 'Center as mic' flag...

btw, why the hell don't you use something as stupid as 

#define bit(n) (1<<(n))

???

A side note. In the process of solving all this, I tried to generate a patch
for 1.0.9rc4a against -mm. I noticed some things:
- Your code reverts some in-kernel changes related to
    if (ptr)
        kfree(ptr)
  The if is killed in mainline, as kfree accepts null pointers.

- When linking I got:
if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map
2.6.11-jam20; fi
WARNING: /lib/modules/2.6.11-jam20/kernel/sound/soundcore.ko needs unknown
symbol class_simple_device_add
WARNING: /lib/modules/2.6.11-jam20/kernel/sound/soundcore.ko needs unknown
symbol class_simple_destroy
WARNING: /lib/modules/2.6.11-jam20/kernel/sound/soundcore.ko needs unknown
symbol class_simple_device_remove
WARNING: /lib/modules/2.6.11-jam20/kernel/sound/soundcore.ko needs unknown
symbol class_simple_create
WARNING: /lib/modules/2.6.11-jam20/kernel/sound/core/snd.ko needs unknown
symbol class_simple_device_add
WARNING: /lib/modules/2.6.11-jam20/kernel/sound/core/snd.ko needs unknown
symbol class_simple_device_remove

I think all this have been unexported/killed...

Hope this helps.

--
J.A. Magallon <jamagallon()able!es>     \               Software is like sex:
werewolf!able!es                         \         It's better when it's free
Mandriva Linux release 2006.0 (Cooker) for i586
Linux 2.6.11-jam20 (gcc 4.0.0 (4.0.0-3mdk for Mandriva Linux release 2006.0))


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux