On 2020/02/10 09:11 +0000, Kailang wrote:
Hi,
This platform speaker 2 bind DAC 0x2 was default.
No, 0x6 was the default. commits d2cd795c4ece & 54a6a7dc107d changed it to 0x2 which reduced the max volume.
Use ALC295_FIXUP_DISABLE_DAC3 model will place to DAC 0x3. DAC 0x3 was use as Headphone.
No, none of these quirks have an effect on the headphones.
Do you have a ThinkPad X1 Carbon 7th gen to actually test this code?
If you do, in the output of dmidecode, under "System Information", what's the "Product Name" and "Version"? And what's the pci sub device id for the audio device? The behavior you're describing doesn't match the behavior of the laptop I have here sitting in front of me.
Anyways, I've just tested the headphone port on my machine with the change I posted earlier and it still works as expected - when I plug in headphones, sound comes out through the headphones, when I unplug the headphones, sound comes out through the four speakers loud and clear.
Here's the relevant part of Node 0x17 from /proc/asound/card0/codec#0 with different quirks applied and the level of sound output through the speakers:
no quirk Connection: 3 0x02 0x03 0x06* -> loud volume ALC285_FIXUP_SPEAKER2_TO_DAC1 Connection: 3 0x02* 0x03 0x06 In-driver Connection: 1 0x02 -> weak volume ALC295_FIXUP_DISABLE_DAC3 Connection: 3 0x02 0x03* 0x06 In-driver Connection: 2 0x02 0x03 -> loud volume