From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,USER_AGENT_NEOMUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 67868C43381 for ; Wed, 6 Mar 2019 13:22:40 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 35AD820661 for ; Wed, 6 Mar 2019 13:22:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="SZQlR2Ey" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 35AD820661 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=bootlin.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type:Cc: List-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id: In-Reply-To:MIME-Version:References:Message-ID:Subject:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=oraEPoQRq2Iu6DHC87yi8JEFR5PXFDrYb21Sld4hgtg=; b=SZQlR2EyA2R8NPA2ijkLBWmua B9b0T8X1jiFCW+/ZHlp4larWZR/tWTlm7NTVhMlqXMvwEJVGpZa8urT/r+EwVgwde1ksqbD5EIjz7 c6G4VVma+u/Ho/MibXskFZZJ7BF0GXM7DPL7QEDdlgTYYbm2jyIyy/NGd6vnH05yKp+rjyN7OBcFp GDrI99sh0jmzqKTZm4776xwYXTxyxM5RyTRMytWgL9lDBQDi6Tx3LIY4pUL/qq932svfmlN7U0uHl +HN7SQ+sc/zWLXIfjU/dESsAxcTofQykeDzL1Vh4v4V4qXNRRuYik8gaw8lkcKP/r/6jV1LLcFFZF iqS+3qYTg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h1WVG-0003Lo-9a; Wed, 06 Mar 2019 13:22:34 +0000 Received: from relay11.mail.gandi.net ([217.70.178.231]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h1WVC-0003LJ-G3 for linux-arm-kernel@lists.infradead.org; Wed, 06 Mar 2019 13:22:32 +0000 Received: from localhost (aaubervilliers-681-1-31-179.w90-88.abo.wanadoo.fr [90.88.150.179]) (Authenticated sender: maxime.ripard@bootlin.com) by relay11.mail.gandi.net (Postfix) with ESMTPSA id 2840A10000B; Wed, 6 Mar 2019 13:22:19 +0000 (UTC) Date: Wed, 6 Mar 2019 14:22:19 +0100 From: Maxime Ripard To: Eric Anholt Subject: Re: [PATCH 2/7] drm/edid: Allow to ignore the audio EDID data Message-ID: <20190306132219.fghl47wdqgecgndo@flea> References: <4914bea9fc3ef3deaffa39ab691dbd9a76461e97.1551711042.git-series.maxime.ripard@bootlin.com> <87wole76ws.fsf@anholt.net> <20190305091240.sbkvdwosocaytx22@flea> <87woldm1s5.fsf@anholt.net> MIME-Version: 1.0 In-Reply-To: <87woldm1s5.fsf@anholt.net> User-Agent: NeoMutt/20180716 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190306_052230_835659_7762E90B X-CRM114-Status: GOOD ( 26.35 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: eben@raspberrypi.org, David Airlie , Maarten Lankhorst , Maling list - DRI developers , Paul Kocialkowski , Sean Paul , Thomas Petazzoni , Alex Deucher , Daniel Vetter , linux-arm-kernel Content-Type: multipart/mixed; boundary="===============0032606042401325640==" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org --===============0032606042401325640== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="nxhpzfnz3zt2fgbd" Content-Disposition: inline --nxhpzfnz3zt2fgbd Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Mar 05, 2019 at 01:47:38PM -0800, Eric Anholt wrote: > Maxime Ripard writes: >=20 > > [ Unknown signature status ] > > On Mon, Mar 04, 2019 at 03:05:31PM -0500, Alex Deucher wrote: > >> On Mon, Mar 4, 2019 at 2:53 PM Eric Anholt wrote: > >> > > >> > Maxime Ripard writes: > >> > > >> > > In some cases, in order to accomodate with displays with poor EDID= s, we > >> > > need to ignore that the monitor alledgedly supports audio output a= nd > >> > > disable the audio output. > >> > > > >> > > Signed-off-by: Maxime Ripard > >> > > --- > >> > > drivers/gpu/drm/drm_edid.c | 8 ++++++++ > >> > > 1 file changed, 8 insertions(+) > >> > > > >> > > diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid= =2Ec > >> > > index 990b1909f9d7..c0258b011bb2 100644 > >> > > --- a/drivers/gpu/drm/drm_edid.c > >> > > +++ b/drivers/gpu/drm/drm_edid.c > >> > > @@ -4190,6 +4190,11 @@ bool drm_detect_hdmi_monitor(struct edid *e= did) > >> > > } > >> > > EXPORT_SYMBOL(drm_detect_hdmi_monitor); > >> > > > >> > > +static bool ignore_edid_audio =3D false; > >> > > +module_param(ignore_edid_audio, bool, 0644); > >> > > +MODULE_PARM_DESC(ignore_edid_audio, > >> > > + "Ignore the EDID and always consider that a monitor= doesn't have audio capabilities"); > >> > > + > >> > > /** > >> > > * drm_detect_monitor_audio - check monitor audio capability > >> > > * @edid: EDID block to scan > >> > > @@ -4209,6 +4214,9 @@ bool drm_detect_monitor_audio(struct edid *e= did) > >> > > bool has_audio =3D false; > >> > > int start_offset, end_offset; > >> > > > >> > > + if (ignore_edid_audio) > >> > > + goto end; > >> > > + > >> > > edid_ext =3D drm_find_cea_extension(edid); > >> > > if (!edid_ext) > >> > > goto end; > >> > > >> > It looks like the motivation for the original flag on Raspberry Pi w= as > >> > "I've got a non-audio monitor, but the system comes up trying to play > >> > audio to HDMI instead of the analog jack". Do we have some way for = DRM > >> > to communicate to ALSA that this is not the right place to try to pl= ay > >> > audio by default? > >>=20 > >> Apparently not. We have users using debug knobs in our drivers to > >> disable display audio because ALSA defaults to that rather than other > >> audio. > > > > I guess one way to do this would be to register the card only when an > > audio-capable monitor is connected instead of doing this at probe > > time. I'm not sure how convenient it is for userspace though. >=20 > Oh, right, the HDMI encoder passes the ELD to ALSA, and userspace gets > to use that. So, open source is already doing the right thing, and the > problem was that the old driver talking to the firmware wouldn't, thus > the need for a flag. I started to look into this, and while on my laptop, the ELD seems to be exposed as part of /proc/asound/card0/eld*, there's no such file on the RPi with a 5.0 kernel (and an HDMI monitor with audio support, obviously). Is it something that used to work at some point? Maxime --=20 Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com --nxhpzfnz3zt2fgbd Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCXH/JiwAKCRDj7w1vZxhR xRw5AQCCDIWq12KUk6HPXjANllrh93ZV/DCMerPfNY4NyUueaAD/abq82bjvA12h Fi3Za8dEi49kCLKQbldu1/TlE0pgXwo= =B0QG -----END PGP SIGNATURE----- --nxhpzfnz3zt2fgbd-- --===============0032606042401325640== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel --===============0032606042401325640==--