From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: Re: [PATCH v3 0/4] drm/panel: Handle the "panel is missing" case properly Date: Tue, 10 Jul 2018 11:19:04 +0200 Message-ID: <20180710091904.GA1504@ulmo> References: <20180509130042.9435-1-boris.brezillon@bootlin.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1110198406==" Return-path: Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4F7646E8BA for ; Tue, 10 Jul 2018 09:19:08 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id n17-v6so23543818wmh.2 for ; Tue, 10 Jul 2018 02:19:08 -0700 (PDT) In-Reply-To: <20180509130042.9435-1-boris.brezillon@bootlin.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Boris Brezillon Cc: David Airlie , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1110198406== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="AhhlLboLdkugWU4S" Content-Disposition: inline --AhhlLboLdkugWU4S Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, May 09, 2018 at 03:00:38PM +0200, Boris Brezillon wrote: > Hello, >=20 > This is a new attempt at fixing the "panel is missing" issue (described > in this thread [1]). I lost track of Eric's proposal, but I recently > proposed to address this problem through a new ->detect() hook in the > panel_funcs interface [2], which was rejected. >=20 > So here is a new version based on the feedback I had from Daniel, > Thierry and Rob. >=20 > The idea is to allow of_drm_find_panel() to return -ENODEV and let the > DRM driver decide what to do with that (silently ignore the missing > component and register the DRM device, or fail to register the DRM > device). >=20 > Patch 1 changes the semantic of of_drm_find_panel() so that it returns > an ERR_PTR() instead of NULL when the panel is not found. This way > we'll be able to differentiate the "panel is missing" from "panel has > not been probed yet" errors. >=20 > Patch 2 and 3 are adding new tests in of_drm_find_panel() and > drm_of_find_panel_or_bridge() to return -ENODEV when the status > property of the DT node is not set to "okay". >=20 > Patch 4 is patching the VC4 DSI encoder driver to gracefully handle the > -ENODEV case and allow the registration of the DRM device when the DSI > device is disabled. >=20 > Note that patch 6 which was modifying the panel status prop from the > I2C driver has been dropped because I'm not sure yet how to solve the > "force probe of deferred-probe devices even if no new devices have been > bound to drivers" problem. Anyway, even without this patch, the series > still makes sense to handle the case where devices are described in the > DT but marked "disabled" (either at compilation time or tweaked by the > bootloader). >=20 > Regards, >=20 > Boris >=20 > Changes in v3: > - Dropped patch 1 since it's been acked by Thierry and should be > applied soon (either through the drm-tegra or drm-misc tree) > - Dropped patch 6 because we are still discussing who should mark > the device "disabled" or "fail" and how we should trigger the > re-probe of deferred-probe devices in this case >=20 > Changes in v2: > - Everything :-) >=20 > [1]https://lists.freedesktop.org/archives/dri-devel/2017-November/157688.= html > [2]https://www.spinics.net/lists/dri-devel/msg174808.html I don't exactly remember what we decided should be the merge path for this, but I suspect someone else was supposed to pick it up because I ended up acking these patches. However, since this hasn't been applied yet, I decided to go ahead and apply this to drm-misc-next. Thierry --AhhlLboLdkugWU4S Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAltEegYACgkQ3SOs138+ s6FC/g//R+9g5EBP0evDWPtC8gKEG89i1V/QbbtE68r/KGW5fv3BTCMZqmzc2WFK OJpqSF3GDovBWjqrJOkm4aTUcr//ldc01Jzi3Vm6Z66/AJJjapNCuuJYYgshDhgD /INfwHNuU4M0luFp8bplQKckjiOxsokPamLeXWeE1IdBjqFEyYoGMbohQl+HW66y qScnvv7VTnw5eIpYVWKyO+ALVpIbbX9MlPeTBfrHjPh0XG30Hw9tJ6fWgu+DaNDB 6ZrXfnKiEFk/dOKyVg50eHKojD3rwDFeGpm/b+AlptDwLEUbvZ/QRr1fs/niK9hR ecKDdVDL4ygKJKQgXPxyw9WvtMV3xEXKgyP5KckHP0JntEQF61qO2CFHz6CA65lv How9lMkRJRtWQ0QCR+trdDru/dKbu95EaD28boY5YsYsYqoyAxJGn6LzvdVgeyA+ 9C2d8TamwSdFelLbh4pYi7fvvnniVO7MOrUAQspC87zzZrlBZAfp/d3oJebNNYcA SPB92hcl9LnvpcfiqRqSdZE+IkiZqjJIFMWzu0CIEhj6DQsYdSUSSudycjfJppZr beeEJqOsb/he4mE8OHaKofeuPdHKuHvV1L8skFvAm/eznSxGmhetvWwOmnTJfNuh tjcv6lJiPUarqQ78J/ILzszGkxZ+6BQXmEnEi7K6vuu4ab0PxTY= =QyFc -----END PGP SIGNATURE----- --AhhlLboLdkugWU4S-- --===============1110198406== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1110198406==--