From: Philipp Zabel <p.zabel@pengutronix.de>
To: Ahmad Fatoum <a.fatoum@pengutronix.de>, barebox@lists.infradead.org
Cc: Andrey Smirnov <andrew.smirnov@gmail.com>,
pza@pengutronix.de, Raphael Poggi <poggi.raph@gmail.com>
Subject: Re: [PATCH v2 1/5] clk: imx6: remove quirky clk_set_parent(LDB_diN_sel, pll5_video_div)
Date: Thu, 23 May 2019 12:01:20 +0200 [thread overview]
Message-ID: <1558605680.5135.4.camel@pengutronix.de> (raw)
In-Reply-To: <20190521155626.9906-2-a.fatoum@pengutronix.de>
On Tue, 2019-05-21 at 17:56 +0200, Ahmad Fatoum wrote:
> barebox has inherited the clk_set_parent(ldb_diN_sel, pll5_video_div)
> from upstream kernel commit 32f3b8da22 ("ARM i.MX6q: set the LDB serial
> clock parent to the video PLL"), where it was enabled for all i.MX6Q
> revisions after 1.0. It was applied whenever CONFIG_DRIVER_VIDEO_IMX_IPUV3
> was defined.
>
> The kernel removed this reparenting again as a preventive measure
> against ERR009219 in 03d576f202 ("clk: imx6: Make the LDB_DI0 and
> LDB_DI1 clocks read-only").
>
> As the kernel used the device tree compatible, which is the same
> for e.g. i.MX6Solo and DualLite, but barebox queried ANATOP which
> lists different CPU types for i.MX6Solo and DualLite and because
> i.MX6QuadPlus wasn't supported at first, barebox grew to do
> the reparenting on the odd set of:
> - Quad and Dual rev >1.0
> - DualLite
> - Solo rev >1.0
> - QuadPlus and DualPlus rev >1.0
>
> On all of these, except for the QuadPlus and the DualPlus, this
> reparenting may glitch the LDB so that it permanently locks up.
>
> By removing the reparenting in this commit, producing this glitch is
> avoided, unless the device tree[1] reinstates the old behavior:
>
> &clks {
> assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
> <&clks IMX6QDL_CLK_LDB_DI1_SEL>;
> assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>,
> <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>;
> };
>
> Follow-up patches will explicitly check for this and do the reparenting
> in a glitch-free manner.
>
> As of v2019.03.0, following mainline boards are potentially broken
^^^^^^^^^^
This Barebox version is out of date.
> by this (i.e. they're supported by barebox, are in the list above,
> had a LDB enabled and might be defining CONFIG_DRIVER_VIDEO_IMX_IPUV3):
> - imx6qdl-zii-rdu2.dtsi
> - imx6qdl-udoo.dtsi
> - imx6qdl-mba6x.dtsi
> - imx6q-var-custom.dts
> - imx6q-guf-santaro.dts
> - imx6q-embedsky-e9.dtsi
Besides RDU2 and Santaro these are all development boards.
UDOO, E9, and MBa6x have monitor connectors, so using PLL5 for LVDS may
be the wrong thing anyway, depending on the connected panel, and on
whether the HDMI/DVI connector is going to be used.
For RDU2 and Santaro I think we need the above DT change. Both don't
have HDMI connectors, which makes PLL5 the correct clock to use, and I
can't see any other place where LDB_DI clocks are switched to it.
> [1]: If barebox is configured to show a boot splash screen, this snippet
> should exist in the barebox device tree. If barebox acts on it, the
> kernel will show following warning:
> ccm: ldb_di0_sel already changed from reset value: 0
> ccm: ldb_di1_sel already changed from reset value: 0
> This warning is safe to ignore.
>
> Cc: Andrey Smirnov <andrew.smirnov@gmail.com>
> Cc: Raphael Poggi <poggi.raph@gmail.com>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> Cc: Lucas Stach <l.stach@pengutronix.de>
> Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
> Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Apart from that,
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
regards
Philipp
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
next prev parent reply other threads:[~2019-05-23 10:01 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-21 15:56 [PATCH v2 0/5] clk: imx6: work around LDB hang caused by ERR009219 Ahmad Fatoum
2019-05-21 15:56 ` [PATCH v2 1/5] clk: imx6: remove quirky clk_set_parent(LDB_diN_sel, pll5_video_div) Ahmad Fatoum
2019-05-23 10:01 ` Philipp Zabel [this message]
2019-05-23 10:28 ` Ahmad Fatoum
2019-05-26 21:55 ` Andrey Smirnov
2019-05-27 6:29 ` Ahmad Fatoum
2019-05-27 6:50 ` Andrey Smirnov
2019-05-27 7:23 ` Ahmad Fatoum
2019-05-27 7:28 ` Andrey Smirnov
2019-05-27 7:49 ` Ahmad Fatoum
2019-05-27 8:02 ` Andrey Smirnov
2019-05-27 9:19 ` Ahmad Fatoum
2019-05-27 7:25 ` Andrey Smirnov
2019-05-27 7:39 ` Ahmad Fatoum
2019-05-21 15:56 ` [PATCH v2 2/5] clk: imx6: Make the LDB_DI0 and LDB_DI1 clocks read-only Ahmad Fatoum
2019-05-23 10:01 ` Philipp Zabel
2019-05-27 7:01 ` Andrey Smirnov
2019-05-27 7:38 ` Ahmad Fatoum
2019-05-21 15:56 ` [PATCH v2 3/5] clk: imx6: Mask mmdc_ch1 handshake for periph2_sel and mmdc_ch1_axi_podf Ahmad Fatoum
2019-05-23 10:01 ` Philipp Zabel
2019-05-21 15:56 ` [PATCH v2 4/5] clk: imx6: Fix procedure to switch the parent of LDB_DI_CLK Ahmad Fatoum
2019-05-23 10:03 ` Philipp Zabel
2019-05-26 21:58 ` Andrey Smirnov
2019-05-27 7:04 ` Andrey Smirnov
2019-05-21 15:56 ` [PATCH v2 5/5] clk: imx6: define an enum for ldb mux inputs Ahmad Fatoum
2019-05-23 10:03 ` Philipp Zabel
2019-05-23 10:35 ` Ahmad Fatoum
2019-05-26 21:59 ` [PATCH v2 0/5] clk: imx6: work around LDB hang caused by ERR009219 Andrey Smirnov
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=1558605680.5135.4.camel@pengutronix.de \
--to=p.zabel@pengutronix.de \
--cc=a.fatoum@pengutronix.de \
--cc=andrew.smirnov@gmail.com \
--cc=barebox@lists.infradead.org \
--cc=poggi.raph@gmail.com \
--cc=pza@pengutronix.de \
/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