lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 11 Feb 2020 14:56:49 +0100
From:   Jaroslav Kysela <perex@...ex.cz>
To:     Benjamin Poirier <benjamin.poirier@...il.com>
Cc:     Takashi Iwai <tiwai@...e.de>, Kailang Yang <kailang@...ltek.com>,
        alsa-devel@...a-project.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] ALSA: hda/realtek - Fix Lenovo Thinkpad X1 Carbon 7th
 quirk value

Dne 11. 02. 20 v 12:42 Benjamin Poirier napsal(a):
> On 2020/02/11 10:35 +0100, Jaroslav Kysela wrote:
>> Dne 11. 02. 20 v 9:16 Benjamin Poirier napsal(a):
> [...]
>>>>
>>>> Why PA handles the rear volume control with the current driver code in the
>>>> legacy ALSA driver? It should be handled like standard stereo device. I'll
>>>> check.
>>>
>>> The device comes up with "Analog Stereo Output" profile by default. I
>>> changed it to "Analog Surround 4.0 Output" to test controlling each
>>> channel individually:
>>
>> Yes, but does the volume control work (does PA change the appropriate ALSA
>> mixer volume)? Sometimes, it's difficult to see the difference between soft
>> volume attenuation and the hardware volume control.
> 
> I see what you mean.
> When set to the "Analog Surround 4.0 Output", pulseaudio didn't change
> the "Bass Speaker" mixer (always at 0dB gain). It used a combination of
> Master, Front and sometimes PCM mixers to control all four speakers.

Yes, that was the reason to keep only one volume control in the driver until 
we have a solution for this.

> For example:
> pacmd list-sinks
> 	name: <alsa_output.pci-0000_00_1f.3.analog-surround-40>
> 	volume: front-left: 10349 /  16% / -48.09 dB,   front-right:
> 	39377 /  60% / -13.27 dB,   rear-left: 23979 /  37% / -26.20 dB,
> 	rear-right: 47974 /  73% / -8.13 dB
>                  balance 0.61
> alsactl -f /tmp/output store 0
> 		iface MIXER
> 		name 'Front Playback Volume'
> 		value.0 33
> 		value.1 79
> 			range '0 - 87'
> 
> 		name 'Bass Speaker Playback Volume'
> 		value.0 87
> 		value.1 87
> 			range '0 - 87'
> 
> 		name 'Master Playback Volume'
> 		value 77
> 			range '0 - 87'
> 
> 		name 'PCM Playback Volume'
> 		value.0 255
> 		value.1 255
> 			range '0 - 255'
> 
>>>>
>>>> You should also test PA with UCM.
>>>
>>> Please let me know what do I need to test exactly? I'm not familiar with
>>> UCM.
>>
>> Just install the latest pulseaudio (latest from repo), alsa-lib and
>> alsa-ucm-conf (also from repo). If pulseaudio detects UCM, it has the
>> preference.
> 
> Using the packages in debian unstable, `pacmd list` shows "use_ucm=yes".
> alsa-ucm-conf was already installed. Hopefully that's enough.
> 
> ii  alsa-ucm-conf    1.2.1.2-2    all          ALSA Use Case Manager configuration files
> ii  libasound2:amd64 1.2.1.2-2    amd64        shared library for ALSA applications
> ii  pulseaudio       13.0-5       amd64        PulseAudio sound server

You should use the latest code. I will release ALSA packages version 1.2.2 
soon, but PA must be latest (not yet released 14.0). Previous versions do not 
handle the volume control and HDMI jack detection. There are many UCM changes 
in 14.0.

						Jaroslav

> 
> pacmd list
>          name: <module-alsa-card>
> 	argument: <device_id="0" name="pci-0000_00_1f.3"
> 	card_name="alsa_card.pci-0000_00_1f.3" namereg_fail=false
> 	tsched=yes fixed_latency_range=no ignore_dB=no
> 	deferred_volume=yes use_ucm=yes avoid_resampling=no
> 	card_properties="module-udev-detect.discovered=1">
> 


-- 
Jaroslav Kysela <perex@...ex.cz>
Linux Sound Maintainer; ALSA Project; Red Hat, Inc.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ