Page MenuHomeFreeBSD

Add hack to allow users to bypass pin widget initialization.
ClosedPublic

Authored by sbruno on Oct 30 2018, 11:49 PM.

Details

Summary

snd_hda(4) clears all pin widgets at attach, don't do that if the user requests it.

Diff Detail

Repository
rS FreeBSD src repository
Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 20527
Build 19955: arc lint + arc unit

Event Timeline

sbruno created this revision.Oct 30 2018, 11:49 PM

This is probably completely wrong on multiple levels, but this certainly does allow me to use my headphones again on my Skylake Intel HDA box.

sysctl.conf:dev.hdaa.0.init_clear=0

sbruno updated this revision to Diff 49814.Oct 31 2018, 12:04 AM

Add a man page update like a good dev.

dhw accepted this revision.Oct 31 2018, 3:13 AM

Works for me as-is in 13.0-CURRENT @r339912M & 12.0-BETA2 @r339910M. 11.2-STABLE @r339881M needed the original .Dd line in the man page patch tweaked a bit to match expectations, but the text of that change and the code changes work as-is.

This is on a Dell Precision M4800, and addresses this bug report.

This revision is now accepted and ready to land.Oct 31 2018, 3:13 AM
0mp requested changes to this revision.Oct 31 2018, 11:55 AM
0mp added a subscriber: 0mp.
0mp added inline comments.
share/man/man4/snd_hda.4
157

Style: please start every sentence on a new line.

158

Style: please start every sentence on a new line.

159

s/bios/BIOS/

This revision now requires changes to proceed.Oct 31 2018, 11:55 AM
sbruno updated this revision to Diff 49824.Oct 31 2018, 1:26 PM

Address man page style review for new lines and correct case of BIOS use.

sbruno marked 3 inline comments as done.Oct 31 2018, 1:26 PM

Address man page review comments. Word wrap at 80 columns.

0mp accepted this revision.Oct 31 2018, 1:31 PM

Looks good to me.

Remember, that there are two nice commands to check for common mistakes: mandoc -Tlint and igor (textproc/igor).

This revision is now accepted and ready to land.Oct 31 2018, 1:31 PM
mav added a comment.EditedOct 31 2018, 2:28 PM

Have you tried to investigate whether keeping only VREF_ENABLE_MASK would be enough? It could have some more sense in general, since the driver has no way to know what VREF is needed in specific case. Same time other bits there are pretty logical.

sbruno planned changes to this revision.Oct 31 2018, 2:36 PM
In D17772#379922, @mav wrote:

Have you tried to investigate whether keeping only VREF_ENABLE_MASK would be enough? It could have some more sense in general, since the driver has no way to know what VREF is needed in specific case. Same time other bits there are pretty logical.

No, but let me test that tonight and report back.

sbruno requested review of this revision.Mar 31 2019, 3:16 PM

Yeah, just changing VREF_ENABLE_MASK was insufficient. I think I'll just commit this so people can use it for their newer desktops/laptops.

This revision is now accepted and ready to land.Mar 31 2019, 3:16 PM
seanc added a subscriber: seanc.Apr 28 2019, 5:07 PM
rene added a subscriber: rene.May 1 2019, 6:56 PM

This fixes audio playback with headphones on my HDA ALC255 card (Acer Aspire E5-773G-78RN) :)

rene added inline comments.Jun 1 2019, 4:17 PM
share/man/man4/snd_hda.4
158

' widget' with an 'e' after the 'g' :)