On 10/1/18 10:56 PM, Johannes Lundberg wrote:
On Mon, Oct 1, 2018 at 8:37 PM Jakob Alvermark <ja...@alvermark.net> wrote:
On 10/1/18 5:57 PM, Johannes Lundberg wrote:
Hi
While sound work out of the box (with headphone switching) on the 1-2
year
older Latitude 7270, it does not on my new machine.
The internal speaker works fine. If I plug in external speakers in the
headphone jack, sound still goes to the internal speaker while a very
load
buzz comes from the external speakers.
Do we have a solution for this?
# cat /dev/sndstat
Installed devices:
pcm0: <Realtek ALC256 (Internal Analog)> (play/rec) default
pcm1: <Realtek ALC256 (Front Analog Headphones)> (play)
pcm2: <Intel Kabylake (HDMI/DP 8ch)> (play)
No devices installed from userspace.
# sysctl hw.snd
hw.snd.maxautovchans: 16
hw.snd.default_unit: 0
hw.snd.version: 2009061500/amd64
hw.snd.default_auto: 1
hw.snd.verbose: 0
hw.snd.vpc_mixer_bypass: 1
hw.snd.feeder_rate_quality: 1
hw.snd.feeder_rate_round: 25
hw.snd.feeder_rate_max: 2016000
hw.snd.feeder_rate_min: 1
hw.snd.feeder_rate_polyphase_max: 183040
hw.snd.feeder_rate_presets: 100:8:0.85 100:36:0.92 100:164:0.97
hw.snd.feeder_eq_exact_rate: 0
hw.snd.feeder_eq_presets:
PEQ:16000,0.2500,62,0.2500:-9,9,1.0:44100,48000,88200,96000,176400,192000
hw.snd.basename_clone: 1
hw.snd.compat_linux_mmap: 0
hw.snd.syncdelay: -1
hw.snd.usefrags: 0
hw.snd.vpc_reset: 0
hw.snd.vpc_0db: 45
hw.snd.vpc_autoreset: 1
hw.snd.timeout: 5
hw.snd.latency_profile: 1
hw.snd.latency: 5
hw.snd.report_soft_matrix: 1
hw.snd.report_soft_formats: 1
# sysctl dev.pcm
dev.pcm.2.bitperfect: 0
dev.pcm.2.buffersize: 65536
dev.pcm.2.play.vchanformat: s16le:2.0
dev.pcm.2.play.vchanrate: 48000
dev.pcm.2.play.vchanmode: passthrough
dev.pcm.2.play.vchans: 1
dev.pcm.2.play.32bit: 24
dev.pcm.2.%parent: hdaa1
dev.pcm.2.%pnpinfo:
dev.pcm.2.%location: nid=3
dev.pcm.2.%driver: pcm
dev.pcm.2.%desc: Intel Kabylake (HDMI/DP 8ch)
dev.pcm.1.bitperfect: 0
dev.pcm.1.buffersize: 65536
dev.pcm.1.play.vchanformat: s16le:2.0
dev.pcm.1.play.vchanrate: 48000
dev.pcm.1.play.vchanmode: fixed
dev.pcm.1.play.vchans: 1
dev.pcm.1.play.32bit: 24
dev.pcm.1.%parent: hdaa0
dev.pcm.1.%pnpinfo:
dev.pcm.1.%location: nid=33
dev.pcm.1.%driver: pcm
dev.pcm.1.%desc: Realtek ALC256 (Front Analog Headphones)
dev.pcm.0.bitperfect: 0
dev.pcm.0.buffersize: 65536
dev.pcm.0.rec.vchanformat: s16le:2.0
dev.pcm.0.rec.vchanrate: 48000
dev.pcm.0.rec.vchanmode: fixed
dev.pcm.0.rec.vchans: 1
dev.pcm.0.rec.autosrc: 2
dev.pcm.0.rec.32bit: 24
dev.pcm.0.play.vchanformat: s16le:2.0
dev.pcm.0.play.vchanrate: 48000
dev.pcm.0.play.vchanmode: fixed
dev.pcm.0.play.vchans: 2
dev.pcm.0.play.32bit: 24
dev.pcm.0.%parent: hdaa0
dev.pcm.0.%pnpinfo:
dev.pcm.0.%location: nid=20,18
dev.pcm.0.%driver: pcm
dev.pcm.0.%desc: Realtek ALC256 (Internal Analog)
dev.pcm.%parent:
You could try
sysctl dev.hdaa.0.nid33_config="as=1 seq=15 device=Headphones"
sysctl dev.hdaa.0.reconfig=1
It should result in you having only one pcm device for the two outputs
and it should switch from
internal to external when you plug in the external speakers and vice versa.
To make it permanent put 'hint.hdaa.0.nid33.config="as=1 seq=15
device=Headphones"' in your loader.conf
The loud buzz is a bit worrying, it could be related to the problem I
have been having, where I got strange sound
when using headphones on my laptop. I have worked around it by patching
the sound driver, I have kept my local
patch for years.
With that hint it does turn off the internal speakers but I can hear
nothing in my headphones. Turning the volume to 100% I can hear the
playback in my internal speakers at very low volume (with headphones
connected).
The headphones has no buzzing sound, that is only my external speakers and
they only act like that when connect to this laptop (kind of like the buzz
noise you get when the connector touches something (ground?))...
Do the headphones work with this patch?
Index: sys/dev/sound/pci/hda/hdaa.c
===================================================================
--- sys/dev/sound/pci/hda/hdaa.c (revision 339076)
+++ sys/dev/sound/pci/hda/hdaa.c (working copy)
@@ -5034,11 +5034,13 @@
pincap = w->wclass.pin.cap;
/* Disable everything. */
+ /*
w->wclass.pin.ctrl &= ~(
HDA_CMD_SET_PIN_WIDGET_CTRL_HPHN_ENABLE |
HDA_CMD_SET_PIN_WIDGET_CTRL_OUT_ENABLE |
HDA_CMD_SET_PIN_WIDGET_CTRL_IN_ENABLE |
HDA_CMD_SET_PIN_WIDGET_CTRL_VREF_ENABLE_MASK);
+ */
if (w->enable == 0) {
/* Pin is unused so left it disabled. */
_______________________________________________
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"