Hi,
On 11/11/2020 18.38, Michael Mrozek wrote:
Am Mittwoch, den 11.11.2020, 12:55 +0200 schrieb Peter Ujfalusi:
Hi,
Now, there's only one issue left: Noise on the headset. As soon as the stream is enabled, you can hear noise on the headset (when audio is silent - if you listen to music, you can't hear it anymore).
The HS is dead silent on omap5-uevm when doing: aplay -Dplughw:1,0 -i -v -fdat /dev/zero Can it be line another isolation issue? I recall hearing the pixels on the display via the headphone in a prototype I have have worked in the past, but if I put music on, it just masked the noise.
Dave tested it a bit more and he thinks it's the SD Card access you're hearing :)
Haha, cool audible storage device access LED :D
But yeah, either it's pixels or the SD Card, but something seems to add noise to the headset port.
Hm, I'm not sure what Nikolaus changed here. AFAIK, he used the uEVM as reference - so if he copied the headset schematics from the uEVM, it should be pretty noiseproof. Though it isn't.
Or is MIPI the difference? Or traces too close together?
Anyways, that seems like something we can't fix. But yes, as soon as you have audio playing, you can't here it anymore.
Which makes me wonder: Does the TWL maybe have a compressor included that increases the volume if audio isn't playing - which would explain you hear the noise only when no audio is being played.
The analog line receives load even when you play silence and the interference on the loaded lines might be audible. I think you should be able to see it with a scope. Just play /dev/null and do 'grep -R pyra /' at the same time.
I wonder how the noise will change after: amixer -c1 sset 'Headset Left Playback' 'Off' amixer -c1 sset 'Headset Right Playback' 'Off'
And what will the scope tell if you stop the /dev/null playback.
Phoenix might pull the analog lines down when the driver is turned off.
However, there's something weird I did notice: Even on Headset volume 0 in AlsaMixer, audio is pretty loud! In fact, it's probably the maximum volume I would personally use.
On omap5-uevm with Headset Volume on 0 (0.00dB gain) it is fine, I would prefer a bit lower volume, but it is not loud by all means.
Yes, that's what I mean :) But I expected it to be completely switched off on 0 :)
There is no real mute for the paths. I have added the DAC and driver as DAPM widgets as there is a certain sequence which needs to be followed to reduce the pop noise.
I think we could add dummy DAPM switch in a path to expose for muting/unmuting, but the gain control has no mute state.
So something seems to increase the volume even though you set it to 0 in AlsaMixer. I do wonder - is that some additional amplifier inside the TWL that is always switched on?
There is no more gain control in the HS path. We only have the Headset Driver.
Or why is the volume that loud?
That is a good question.
Dave mentioned on IRC that this is probably how the TWL is designed. You basically set the maximum volume in the headset driver - and the true volume control will be done via software mixing (this is probably how most Android devices do that as well :))
That might be true, but I think the Galaxy Nexus did used the HW gain controls as well as the SW. I can not recall. It had the AESS/ABE to play with the gains also...
- Péter
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki