All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
To: Marek Vasut <marex@denx.de>
Cc: Jernej Skrabec <jernej.skrabec@siol.net>,
	Jonas Karlman <jonas@kwiboo.se>,
	Neil Armstrong <narmstrong@baylibre.com>,
	DRI Development <dri-devel@lists.freedesktop.org>,
	Andrzej Hajda <a.hajda@samsung.com>,
	Laurent Pinchart <Laurent.pinchart@ideasonboard.com>,
	Sam Ravnborg <sam@ravnborg.org>
Subject: Re: [PATCH 2/4] drm/bridge: tc358767: Move hardware init to enable callback
Date: Tue, 7 Dec 2021 13:34:27 +0000	[thread overview]
Message-ID: <CAPY8ntBd1o-OpXAUf3s-OHCHrJ2VOt0HVn9sGOcXRd_2kUYG3g@mail.gmail.com> (raw)
In-Reply-To: <77d26622-843b-1009-b331-5834d2d195d6@denx.de>

On Mon, 6 Dec 2021 at 20:24, Marek Vasut <marex@denx.de> wrote:
>
> On 12/6/21 19:01, Dave Stevenson wrote:
> > Hi Marek
>
> Hi,
>
> >> The TC358767/TC358867/TC9595 are all capable of operating either from
> >> attached Xtal or from DSI clock lane clock. In case the later is used,
> >> all I2C accesses will fail until the DSI clock lane is running and
> >> supplying clock to the chip.
> >>
> >> Move all hardware initialization to enable callback to guarantee the
> >> DSI clock lane is running before accessing the hardware. In case Xtal
> >> is attached to the chip, this change has no effect.
> >
> > This puzzles me as there seem to be a couple of ambiguities over how
> > it would be used.
> >
> > Firstly the DT binding lists the clock as a required property, but
> > there isn't one present if deriving the clock from the DSI clock lane.
>
> That's correct, the clock for the internal PLLs are derived from the DSI
> clock lane.

Does that mean you're creating a dummy clock device?
If it's a required property then presumably yes, but it seems a little
odd as that reflck does not exist.

> > Secondly the datasheet states that the DSI Reference Clock Source
> > Division Selection is done by the MODE1 pin, and switches between
> > HSCKBY2 divided by 7 and HSCKBY2 divided by 9. There is a stated
> > assumption that HSCK is either 364MHz or 468MHz, thereby ending up
> > with 26MHz. To do this we have to be running DSI in burst mode, but
> > the support for that in DRM is near zero.
>
> Yes, you have to run the DSI clock lane at either of the two clock
> frequencies, that is rather limiting. The DSI has to be running in
> continuous clock mode, this has nothing to do with burst mode, the burst
> mode is a DSI host setting which is supported by most DSI hosts.

OK burst mode is technically dropping the lane to LP mode, and you
don't need that state transition.

To quote the Toshiba datasheet:
"As the clock derived from the
DSICLK has to be fixed at 13, 26, 19.2 or 38.4 MHz, the DSI Host may
need to run DSI clock lane at
higher frequency than needed by frame rate and may have to send the
DSI video mode transmissions in
burst mode (explained in DSI section of this specification) "

So where are you configuring the DSI clock lane to be running at one
of those frequencies? Or are you requiring your panel to be running
with a matching pixel clock?

> > Can I ask how the chip has actually been configured and run in this mode?
>
> REFCLK Xtal disconnected and HSCKBY2/7 MODE0=H MODE1=L , that should be
> all you need. Do you plan to develop a board with this bridge ?

Yes, I have a board with this chip in DSI to DPI mode that I'm trying
to get to work. The intent was to configure it via DSI LP commands
rather than I2C, but currently it's refusing to do anything.

  Dave

  reply	other threads:[~2021-12-07 13:34 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-27  3:24 [PATCH 1/4] dt-bindings: display: bridge: tc358867: Document DPI output support Marek Vasut
2021-11-27  3:24 ` Marek Vasut
2021-11-27  3:24 ` [PATCH 2/4] drm/bridge: tc358767: Move hardware init to enable callback Marek Vasut
2021-12-06 18:01   ` Dave Stevenson
2021-12-06 20:24     ` Marek Vasut
2021-12-07 13:34       ` Dave Stevenson [this message]
2021-12-07 13:59         ` Marek Vasut
2021-12-07 16:28           ` Dave Stevenson
2021-12-07 16:43             ` Marek Vasut
2021-11-27  3:24 ` [PATCH 3/4] drm/bridge: tc358767: Move bridge endpoint parsing into dedicated function Marek Vasut
2021-11-27  3:24 ` [PATCH 4/4] drm/bridge: tc358767: Add DSI-to-DPI mode support Marek Vasut
2022-01-17  3:02   ` Marek Vasut
2022-02-03 12:26   ` Maxime Ripard
2021-12-07 16:43 ` [PATCH 1/4] dt-bindings: display: bridge: tc358867: Document DPI output support Laurent Pinchart
2021-12-07 16:43   ` Laurent Pinchart
2021-12-07 16:47   ` Marek Vasut
2021-12-07 16:47     ` Marek Vasut
2021-12-07 17:03     ` Laurent Pinchart
2021-12-07 17:03       ` Laurent Pinchart
2021-12-07 17:32       ` Marek Vasut
2021-12-07 17:32         ` Marek Vasut
2022-02-03 12:23         ` Maxime Ripard
2022-02-03 12:23           ` Maxime Ripard
2022-02-17 20:57           ` Marek Vasut
2022-02-17 20:57             ` Marek Vasut

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAPY8ntBd1o-OpXAUf3s-OHCHrJ2VOt0HVn9sGOcXRd_2kUYG3g@mail.gmail.com \
    --to=dave.stevenson@raspberrypi.com \
    --cc=Laurent.pinchart@ideasonboard.com \
    --cc=a.hajda@samsung.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=jernej.skrabec@siol.net \
    --cc=jonas@kwiboo.se \
    --cc=marex@denx.de \
    --cc=narmstrong@baylibre.com \
    --cc=sam@ravnborg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.