<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/drm/bridge, branch v6.7</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v6.7</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v6.7'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2023-10-16T09:38:42Z</updated>
<entry>
<title>drm/bridge: synopsys: dw-mipi-dsi: Add mode fixup support</title>
<updated>2023-10-16T09:38:42Z</updated>
<author>
<name>Liu Ying</name>
<email>victor.liu@nxp.com</email>
</author>
<published>2023-08-21T03:40:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5a67ec8c64ec88b5c34060b347ccec4a31af3369'/>
<id>urn:sha1:5a67ec8c64ec88b5c34060b347ccec4a31af3369</id>
<content type='text'>
Vendor drivers may need to fixup mode due to pixel clock tree limitation,
so introduce the -&gt;mode_fixup() callcack to struct dw_mipi_dsi_plat_data
and call it at atomic check stage if available.

Signed-off-by: Liu Ying &lt;victor.liu@nxp.com&gt;
Reviewed-by: Robert Foss &lt;rfoss@kernel.org&gt;
Signed-off-by: Robert Foss &lt;rfoss@kernel.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230821034008.3876938-5-victor.liu@nxp.com
</content>
</entry>
<entry>
<title>drm/bridge: synopsys: dw-mipi-dsi: Add input bus format negotiation support</title>
<updated>2023-10-16T09:38:40Z</updated>
<author>
<name>Liu Ying</name>
<email>victor.liu@nxp.com</email>
</author>
<published>2023-08-21T03:40:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0de852d4c23a39d3ebff73d0c0c1b488eac6c5a8'/>
<id>urn:sha1:0de852d4c23a39d3ebff73d0c0c1b488eac6c5a8</id>
<content type='text'>
Introduce -&gt;get_input_bus_fmts() callback to struct dw_mipi_dsi_plat_data
so that vendor drivers can implement specific methods to get input bus
formats for Synopsys DW MIPI DSI.

While at it, implement a generic callback for -&gt;atomic_get_input_bus_fmts(),
where we try to get the input bus formats through pdata-&gt;get_input_bus_fmts()
first.  If it's unavailable, fall back to the only format - MEDIA_BUS_FMT_FIXED,
which matches the default behavior if -&gt;atomic_get_input_bus_fmts() is not
implemented as -&gt;atomic_get_input_bus_fmts()'s kerneldoc indicates.

Signed-off-by: Liu Ying &lt;victor.liu@nxp.com&gt;
Reviewed-by: Robert Foss &lt;rfoss@kernel.org&gt;
Signed-off-by: Robert Foss &lt;rfoss@kernel.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230821034008.3876938-3-victor.liu@nxp.com
</content>
</entry>
<entry>
<title>drm/bridge: synopsys: dw-mipi-dsi: Add dw_mipi_dsi_get_bridge() helper</title>
<updated>2023-10-16T09:38:39Z</updated>
<author>
<name>Liu Ying</name>
<email>victor.liu@nxp.com</email>
</author>
<published>2023-08-21T03:40:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ec20c510ee2d2a7f0d0a00e4bfd55c28e500d3b7'/>
<id>urn:sha1:ec20c510ee2d2a7f0d0a00e4bfd55c28e500d3b7</id>
<content type='text'>
Add dw_mipi_dsi_get_bridge() helper so that it can be used by vendor
drivers which implement vendor specific extensions to Synopsys DW MIPI DSI.

Signed-off-by: Liu Ying &lt;victor.liu@nxp.com&gt;
Reviewed-by: Robert Foss &lt;rfoss@kernel.org&gt;
Signed-off-by: Robert Foss &lt;rfoss@kernel.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230821034008.3876938-2-victor.liu@nxp.com
</content>
</entry>
<entry>
<title>drm/bridge: samsung-dsim: update PLL reference clock</title>
<updated>2023-10-09T09:06:22Z</updated>
<author>
<name>Michael Tretter</name>
<email>m.tretter@pengutronix.de</email>
</author>
<published>2023-10-06T15:07:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=846307185f0ffbbe6b34d53b97c31c0fc392cff0'/>
<id>urn:sha1:846307185f0ffbbe6b34d53b97c31c0fc392cff0</id>
<content type='text'>
The PLL requires a clock frequency in a certain platform-dependent range
after the pre-divider. The reference clock for the PLL may change due to
changes to it's parent clock. Thus, the frequency may be out of range or
unsuited for generating the high speed clock for MIPI DSI.

Try to keep the pre-devider small, and set the reference clock close to
the upper limit before recalculating the PLL configuration. Use a
divider with a power of two for the reference clock as this seems to
work best in my tests.

Reviewed-by: Marco Felsch &lt;m.felsch@pengutronix.de&gt;
Tested-by: Frieder Schrempf &lt;frieder.schrempf@kontron.de&gt; # Kontron BL i.MX8MM + Waveshare 10.1inch HDMI LCD (E)
Signed-off-by: Michael Tretter &lt;m.tretter@pengutronix.de&gt;
Tested-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Link: https://lore.kernel.org/r/20230818-samsung-dsim-v2-3-846603df0e0a@pengutronix.de
Signed-off-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230818-samsung-dsim-v2-3-846603df0e0a@pengutronix.de
</content>
</entry>
<entry>
<title>drm/bridge: samsung-dsim: reread ref clock before configuring PLL</title>
<updated>2023-10-09T09:06:22Z</updated>
<author>
<name>Michael Tretter</name>
<email>m.tretter@pengutronix.de</email>
</author>
<published>2023-10-06T15:07:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=eb26c6ab2a11e6c595ee88ce30c7de9578d957aa'/>
<id>urn:sha1:eb26c6ab2a11e6c595ee88ce30c7de9578d957aa</id>
<content type='text'>
The PLL reference clock may change at runtime when its parent clock
changes. For example, this may happen on the i.MX8M Nano if the
reference clock is a child of the Video PLL. If the pixel clock changes,
this may propagate to the Video PLL and as a side effect change the
reference clock. Thus, reading the clock rate during probe is not
sufficient to correctly configure the PLL for the expected hs clock.

Read the actual rate of the reference clock before calculating the PLL
configuration parameters.

Note that the "samsung,pll-clock-frequency" is always preferred and PLL
reference clock is only read from the clock tree if that device tree
property is not set.

Reviewed-by: Inki Dae &lt;inki.dae@samsung.com&gt;
Acked-by: Inki Dae &lt;inki.dae@samsung.com&gt;
Tested-by: Frieder Schrempf &lt;frieder.schrempf@kontron.de&gt; # Kontron BL i.MX8MM + Waveshare 10.1inch HDMI LCD (E)
Reviewed-by: Marco Felsch &lt;m.felsch@pengutronix.de&gt;
Signed-off-by: Michael Tretter &lt;m.tretter@pengutronix.de&gt;
Tested-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Link: https://lore.kernel.org/r/20230818-samsung-dsim-v2-2-846603df0e0a@pengutronix.de
Signed-off-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230818-samsung-dsim-v2-2-846603df0e0a@pengutronix.de
</content>
</entry>
<entry>
<title>drm: exynos: dsi: Convert to platform remove callback returning void</title>
<updated>2023-10-06T06:58:44Z</updated>
<author>
<name>Uwe Kleine-König</name>
<email>u.kleine-koenig@pengutronix.de</email>
</author>
<published>2023-09-19T10:39:39Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c1698c73f4aaef2fd406da1c0a92e1c8f7b7780c'/>
<id>urn:sha1:c1698c73f4aaef2fd406da1c0a92e1c8f7b7780c</id>
<content type='text'>
The .remove() callback for a platform driver returns an int which makes
many driver authors wrongly assume it's possible to do error handling by
returning an error code. However the value returned is ignored (apart
from emitting a warning) and this typically results in resource leaks.
To improve here there is a quest to make the remove callback return
void. In the first step of this quest all drivers are converted to
.remove_new() which already returns void. Eventually after all drivers
are converted, .remove_new() is renamed to .remove().

samsung_dsim_remove() returned 0 unconditionally. Make it return void
instead to convert the two related platform drivers to use
.remove_new().

Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@pengutronix.de&gt;
Reviewed-by: Inki Dae &lt;inki.dae@samsung.com&gt;
Acked-by: Inki Dae &lt;inki.dae@samsung.com&gt;
Link: https://lore.kernel.org/r/20230919103939.1367659-1-u.kleine-koenig@pengutronix.de
Signed-off-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230919103939.1367659-1-u.kleine-koenig@pengutronix.de
</content>
</entry>
<entry>
<title>drm: bridge: samsung-dsim: Fix waiting for empty cmd transfer FIFO on older Exynos</title>
<updated>2023-08-11T12:54:05Z</updated>
<author>
<name>Marek Szyprowski</name>
<email>m.szyprowski@samsung.com</email>
</author>
<published>2023-08-09T14:56:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=15f389da11257b806da75a070cfa41ca0cc15aae'/>
<id>urn:sha1:15f389da11257b806da75a070cfa41ca0cc15aae</id>
<content type='text'>
Samsung DSIM used in older Exynos SoCs (like Exynos 4210, 4x12, 3250)
doesn't report empty level of packer header FIFO. In case of those SoCs,
use the old way of waiting for empty command tranfsfer FIFO, removed
recently by commit 14806c641582 ("drm: bridge: samsung-dsim: Drain command transfer FIFO before transfer").

Fixes: 14806c641582 ("drm: bridge: samsung-dsim: Drain command transfer FIFO before transfer")
Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Reviewed-by: Marek Vasut &lt;marex@denx.de&gt;
Signed-off-by: Robert Foss &lt;rfoss@kernel.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230809145641.3213210-1-m.szyprowski@samsung.com
</content>
</entry>
<entry>
<title>drm/bridge: dw-hdmi: change YUV420 selection logic at clock setup</title>
<updated>2023-06-27T07:51:31Z</updated>
<author>
<name>Adrián Larumbe</name>
<email>adrian.larumbe@collabora.com</email>
</author>
<published>2023-06-25T14:17:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7ed40ff1d134bf3a4aef706eed478b926f35b404'/>
<id>urn:sha1:7ed40ff1d134bf3a4aef706eed478b926f35b404</id>
<content type='text'>
Right now clocking value selection code is prioritising RGB, YUV444 modes
over YUV420 for HDMI2 sinks. However, because of the bus format selection
procedure in dw-hdmi, for HDMI2 sinks YUV420 is the format that will always
be picked during the drm bridge chain check stage.

Later on dw_hdmi_setup will configure a colour space based on the bus
format that doesn't match the pixel value we had calculated as described
above.

Fix it by bringing back dw-hdmi bus format check when picking the right
pixel clock.

Signed-off-by: Adrián Larumbe &lt;adrian.larumbe@collabora.com&gt;
Acked-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt;
Signed-off-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/6230bfae2cd97cf6527fc62ba5c850464919ccf8.1687702042.git.adrian.larumbe@collabora.com
</content>
</entry>
<entry>
<title>drm: bridge: samsung-dsim: Dynamically configure DPHY timing</title>
<updated>2023-05-26T07:20:41Z</updated>
<author>
<name>Adam Ford</name>
<email>aford173@gmail.com</email>
</author>
<published>2023-05-26T03:05:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=89691775f5735fca9dc40e119edcbb52a25b9612'/>
<id>urn:sha1:89691775f5735fca9dc40e119edcbb52a25b9612</id>
<content type='text'>
The DPHY timings are currently hard coded. Since the input
clock can be variable, the phy timings need to be variable
too.  To facilitate this, we need to cache the hs_clock
based on what is generated from the PLL.

The phy_mipi_dphy_get_default_config_for_hsclk function
configures the DPHY timings in pico-seconds, and a small macro
converts those timings into clock cycles based on the hs_clk.

Signed-off-by: Adam Ford &lt;aford173@gmail.com&gt;
Signed-off-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Tested-by: Chen-Yu Tsai &lt;wenst@chromium.org&gt;
Tested-by: Frieder Schrempf &lt;frieder.schrempf@kontron.de&gt;
Reviewed-by: Frieder Schrempf &lt;frieder.schrempf@kontron.de&gt;
Tested-by: Michael Walle &lt;michael@walle.cc&gt;
Tested-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Reviewed-by: Jagan Teki &lt;jagan@amarulasolutions.com&gt;
Tested-by: Jagan Teki &lt;jagan@amarulasolutions.com&gt; # imx8mm-icore
Signed-off-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230526030559.326566-6-aford173@gmail.com
</content>
</entry>
<entry>
<title>drm: bridge: samsung-dsim: Fix PMS Calculator on imx8m[mnp]</title>
<updated>2023-05-26T07:20:40Z</updated>
<author>
<name>Adam Ford</name>
<email>aford173@gmail.com</email>
</author>
<published>2023-05-26T03:05:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=54f1a83c72250b182fa7722b0c5f6eb5e769598d'/>
<id>urn:sha1:54f1a83c72250b182fa7722b0c5f6eb5e769598d</id>
<content type='text'>
According to Table 13-45 of the i.MX8M Mini Reference Manual, the min
and max values for M and the frequency range for the VCO_out
calculator were incorrect.  This information was contradicted in other
parts of the mini, nano and plus manuals.  After reaching out to my
NXP Rep, when confronting him about discrepencies in the Nano manual,
he responded with:
 "Yes it is definitely wrong, the one that is part
  of the NOTE in MIPI_DPHY_M_PLLPMS register table against PMS_P,
  PMS_M and PMS_S is not correct. I will report this to Doc team,
  the one customer should be take into account is the Table 13-40
  DPHY PLL Parameters and the Note above."

These updated values also match what is used in the NXP downstream
kernel.

To fix this, make new variables to hold the min and max values of m
and the minimum value of VCO_out, and update the PMS calculator to
use these new variables instead of using hard-coded values to keep
the backwards compatibility with other parts using this driver.

Fixes: 4d562c70c4dc ("drm: bridge: samsung-dsim: Add i.MX8M Mini/Nano support")
Signed-off-by: Adam Ford &lt;aford173@gmail.com&gt;
Reviewed-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Tested-by: Chen-Yu Tsai &lt;wenst@chromium.org&gt;
Tested-by: Frieder Schrempf &lt;frieder.schrempf@kontron.de&gt;
Reviewed-by: Frieder Schrempf &lt;frieder.schrempf@kontron.de&gt;
Tested-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Reviewed-by: Jagan Teki &lt;jagan@amarulasolutions.com&gt;
Tested-by: Jagan Teki &lt;jagan@amarulasolutions.com&gt; # imx8mm-icore
Signed-off-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20230526030559.326566-3-aford173@gmail.com
</content>
</entry>
</feed>
