[igt-dev] [PATCH i-g-t v3 09/10] tests/kms_chamelium: add a flatline audio test

Ser, Simon simon.ser at intel.com
Tue Jun 4 14:11:42 UTC 2019


On Tue, 2019-06-04 at 13:26 +0100, Peres, Martin wrote:
> On 04/06/2019 14:22, Ser, Simon wrote:
> > On Tue, 2019-06-04 at 09:38 +0100, Tvrtko Ursulin wrote:
> > > On 27/05/2019 15:34, Simon Ser wrote:
> > > > This commit adds a flatline test alongside the existing frequencies test.
> > > > 
> > > > The test sends a constant value and checks that the amplitude is correct. A
> > > > window is used to check that each sample is within acceptable bounds. The test
> > > > is stopped as soon as 3 audio pages pass the test.
> > > > 
> > > > Signed-off-by: Simon Ser <simon.ser at intel.com>
> > > > Reviewed-by: Martin Peres <martin.peres at linux.intel.com>
> > > > ---
> > > >   tests/kms_chamelium.c | 101 ++++++++++++++++++++++++++++++++++++++++++
> > > >   1 file changed, 101 insertions(+)
> > > > 
> > > > diff --git a/tests/kms_chamelium.c b/tests/kms_chamelium.c
> > > > index 40ca93687c20..451a616f1a2e 100644
> > > > --- a/tests/kms_chamelium.c
> > > > +++ b/tests/kms_chamelium.c
> > > > @@ -772,6 +772,9 @@ test_display_frame_dump(data_t *data, struct chamelium_port *port)
> > > >   /* A streak of 3 gives confidence that the signal is good. */
> > > >   #define MIN_STREAK 3
> > > >   
> > > > +#define FLATLINE_AMPLITUDE 0.9 /* normalized, ie. in [0, 1] */
> > > 
> > > I assume the test is making triple sure it only ever outputs this signal 
> > > to connectors connected to Chamelium, in all possible scenarios? (I am 
> > > thinking it could be dangerous to some amps/speakers if by some kind of 
> > > accident.)
> > 
> > Not at all. The signal is sent to all HDMI/DP ports.
> > 
> > I have to check whether it's easy to match ALSA outputs to monitor
> > names.
> > 
> > Martin, is this a concern?
> 
> This is true that a non-zero constant voltage could be damaging for
> speakers as it can make them overheat without us hearing anything
> (constant position == no sound heard, but Ohm's law still applies). It
> would take longer than 1s though... On top of this, all speakers (except
> subwoofers) have high-pass filters that should remove the DC-offset so
> all we should be left with is a nice pop which might or might not be
> loud depending on how powerful the speakers are and how loud their
> settings are. Multi-kW systems definitely don't like them, but how
> likely is it that people would run IGT on it? :D
> 
> That being said, if we can associate the alsa output to a certain
> connector (the one we are reading the sound from), then it would
> actually be a good thing to test the sound on this connector only, since
> it would allow us to verify that the mapping is indeed correct!

Yes, I agree. I'll look into this, but I'm not sure it's possible with
the current kernel API.

TBH that's something that could be useful to usespace too…


More information about the igt-dev mailing list