[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPY8ntA0dsNwiyEiSHR7AuL1ESyPvTpKWAAg=MK3Gx9HKhq5qg@mail.gmail.com>
Date: Mon, 21 Jun 2021 17:18:22 +0100
From: Dave Stevenson <dave.stevenson@...pberrypi.com>
To: Maxime Ripard <maxime@...no.tech>
Cc: Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Marek Vasut <marex@...x.de>,
Nicolas Saenz Julienne <nsaenzjulienne@...e.de>,
Eric Anholt <eric@...olt.net>,
Tim Gover <tim.gover@...pberrypi.com>,
LKML <linux-kernel@...r.kernel.org>,
DRI Development <dri-devel@...ts.freedesktop.org>,
Andrzej Hajda <a.hajda@...sung.com>,
bcm-kernel-feedback-list@...adcom.com,
linux-rpi-kernel@...ts.infradead.org,
Phil Elwell <phil@...pberrypi.com>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH] drm/vc4: dsi: Only register our component once a DSI
device is attached
Hi Maxime
On Mon, 21 Jun 2021 at 17:05, Maxime Ripard <maxime@...no.tech> wrote:
>
> Hi Laurent,
>
> On Sun, Jun 20, 2021 at 04:44:33AM +0300, Laurent Pinchart wrote:
> > Hi Maxime,
> >
> > I'm testing this, and I'm afraid it causes an issue with all the
> > I2C-controlled bridges. I'm focussing on the newly merged ti-sn65dsi83
> > driver at the moment, but other are affected the same way.
> >
> > With this patch, the DSI component is only added when the DSI device is
> > attached to the host with mipi_dsi_attach(). In the ti-sn65dsi83 driver,
> > this happens in the bridge attach callback, which is called when the
> > bridge is attached by a call to drm_bridge_attach() in vc4_dsi_bind().
> > This creates a circular dependency, and the DRM/KMS device is never
> > created.
>
> We discussed it on IRC, but it makes more sense here.
>
> The thing is, that patch is fixing a circular dependency we discussed
> with Andrzej a year ago:
>
> https://lore.kernel.org/dri-devel/20200630132711.ezywhvoiuv3swo57@gilmour.lan/
>
> It seems like we have to choose between having the panels or bridges
> working :/
The Pi panel using the panel-raspberrypi-touchscreen driver is flawed
as it controls the power to the FT5406 touchscreen element as well as
the display. If DRM powers down the display, power goes to the
touchscreen too, but the edt-ft5x06 touchscreen driver has no notion
of this :-(
The two parts have been broken into bridge/tc358762 and
regulator/rpi-panel-attiny-regulator which then allows the edt-ft5x06
driver to keep control over power. I haven't had it be 100% reliable
though, so I'm still investigating as time allows, but this seems like
the better solution than panel-raspberrypi-touchscreen.
With the tc358762 node back under the DSI host node, I think that
circular dependency you were trying to solve goes away.
However with sn65dsi83 being I2C configured, is that an issue again?
Dave
Powered by blists - more mailing lists