From: Adam Ford <aford173@gmail.com>
To: dri-devel@lists.freedesktop.org
Cc: marex@denx.de, aford@beaconembedded.com,
Adam Ford <aford173@gmail.com>,
Andrzej Hajda <andrzej.hajda@intel.com>,
Neil Armstrong <neil.armstrong@linaro.org>,
Robert Foss <rfoss@kernel.org>,
Laurent Pinchart <Laurent.pinchart@ideasonboard.com>,
Jonas Karlman <jonas@kwiboo.se>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
Inki Dae <inki.dae@samsung.com>,
Jagan Teki <jagan@amarulasolutions.com>,
Marek Szyprowski <m.szyprowski@samsung.com>,
linux-kernel@vger.kernel.org
Subject: [PATCH V3 0/7] drm: bridge: samsung-dsim: Support variable clocking
Date: Mon, 1 May 2023 20:07:52 -0500 [thread overview]
Message-ID: <20230502010759.17282-1-aford173@gmail.com> (raw)
This series fixes the blanking pack size and the PMS calculation. It then
adds support to allows the DSIM to dynamically DPHY clocks, and support
non-burst mode while allowing the removal of the hard-coded clock values
for the PLL for imx8m mini/nano/plus, and it allows the removal of the
burst-clock device tree entry when burst-mode isn't supported by connected
devices like an HDMI brige. In that event, the HS clock is set to the value
requested by the bridge chip.
This has been tested on both an i.MX8M Nano and i.MX8M Plus, and should work
on i.MX8M Mini as well.
Adam Ford (6):
drm: bridge: samsung-dsim: Fix PMS Calculator on imx8m[mnp]
drm: bridge: samsung-dsim: Fetch pll-clock-frequency automatically
drm: bridge: samsung-dsim: Select GENERIC_PHY_MIPI_DPHY
drm: bridge: samsung-dsim: Dynamically configure DPHY timing
drm: bridge: samsung-dsim: Support non-burst mode
drm: bridge: samsung-dsim: Let blanking calcuation work in non-burst
mode
Lucas Stach (1):
drm: bridge: samsung-dsim: fix blanking packet size calculation
drivers/gpu/drm/bridge/Kconfig | 1 +
drivers/gpu/drm/bridge/samsung-dsim.c | 150 ++++++++++++++++++++++----
include/drm/bridge/samsung-dsim.h | 5 +
3 files changed, 136 insertions(+), 20 deletions(-)
---
V3: When checking if the bust-clock is present, only check for it
in the device tree, and don't check the presence of the
MIPI_DSI_MODE_VIDEO_BURST flag as it breaks an existing Exynos
board.
Add a new patch to the series to select GENERIC_PHY_MIPI_DPHY in
Kconfig otherwise the build breaks on the 32-bit Exynos.
Change vco_min variable name to min_freq
Added tested-by from Chen-Yu Tsai
V2: Instead of using my packet blanking calculation, this integrates
on from Lucas Stach which gets modified later in the series to
cache the value of the HS-clock instead of having to do the
calucations again.
Instead of completely eliminating the PLL clock frequency from
the device tree, this makes it optional to avoid breaking some
Samsung devices. When the samsung,pll-clock-frequency is not
found, it reads the value of the clock named "sclk_mipi"
This also maintains backwords compatibility with older device
trees.
This also changes the DPHY calcuation from a Look-up table,
a reverse engineered algorithm which uses
phy_mipi_dphy_get_default_config to determine the standard
nominal values and calculates the cycles necessary to update
the DPHY timings accordingly.
--
2.39.2
next reply other threads:[~2023-05-02 1:08 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20230502010811eucas1p1df7fcdcb3e3d363d39eb711f19618628@eucas1p1.samsung.com>
2023-05-02 1:07 ` Adam Ford [this message]
2023-05-02 1:07 ` [PATCH V3 1/7] drm: bridge: samsung-dsim: fix blanking packet size calculation Adam Ford
2023-05-03 15:17 ` Frieder Schrempf
2023-05-02 1:07 ` [PATCH V3 2/7] drm: bridge: samsung-dsim: Fix PMS Calculator on imx8m[mnp] Adam Ford
2023-05-03 15:18 ` Frieder Schrempf
2023-05-02 1:07 ` [PATCH V3 3/7] drm: bridge: samsung-dsim: Fetch pll-clock-frequency automatically Adam Ford
2023-05-03 15:20 ` Frieder Schrempf
2023-05-04 9:21 ` Alexander Stein
2023-05-04 12:00 ` Adam Ford
2023-05-04 12:40 ` Alexander Stein
2023-05-04 12:57 ` Adam Ford
2023-05-04 13:18 ` Alexander Stein
2023-05-04 13:30 ` Adam Ford
2023-05-02 1:07 ` [PATCH V3 4/7] drm: bridge: samsung-dsim: Select GENERIC_PHY_MIPI_DPHY Adam Ford
2023-05-03 15:21 ` Frieder Schrempf
2023-05-02 1:07 ` [PATCH V3 5/7] drm: bridge: samsung-dsim: Dynamically configure DPHY timing Adam Ford
2023-05-03 15:39 ` Frieder Schrempf
2023-05-05 7:33 ` Michael Walle
2023-05-02 1:07 ` [PATCH V3 6/7] drm: bridge: samsung-dsim: Support non-burst mode Adam Ford
2023-05-03 15:43 ` Frieder Schrempf
2023-05-02 1:07 ` [PATCH V3 7/7] drm: bridge: samsung-dsim: Let blanking calcuation work in " Adam Ford
2023-05-03 15:51 ` Frieder Schrempf
2023-05-03 16:17 ` Adam Ford
2023-05-02 8:32 ` [PATCH V3 0/7] drm: bridge: samsung-dsim: Support variable clocking Chen-Yu Tsai
2023-05-02 8:35 ` Marek Szyprowski
2023-05-02 18:40 ` Adam Ford
2023-05-04 9:23 ` Alexander Stein
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=20230502010759.17282-1-aford173@gmail.com \
--to=aford173@gmail.com \
--cc=Laurent.pinchart@ideasonboard.com \
--cc=aford@beaconembedded.com \
--cc=airlied@gmail.com \
--cc=andrzej.hajda@intel.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=inki.dae@samsung.com \
--cc=jagan@amarulasolutions.com \
--cc=jernej.skrabec@gmail.com \
--cc=jonas@kwiboo.se \
--cc=linux-kernel@vger.kernel.org \
--cc=m.szyprowski@samsung.com \
--cc=marex@denx.de \
--cc=neil.armstrong@linaro.org \
--cc=rfoss@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox