On Tue, May 21, 2019 at 8:56 AM Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> wrote: > > Short version: > > barebox always reparents the ldb_di[01] clocks to pll5_video_div. > Due to a hardware erratum, this can trigger a glitch that causes > LDB lock up. > > Thus: > > 1) remove the automatic reparenting, like the kernel now does and > mark the affected clocks read only, so assigned-clock-parents > can't affect them > 2) parse assigned-clock-parents in the clk-imx6 code as well, but > there use a convoluted non-glitchy work around to apply them > > Long version available alongside v1 here: > https://www.spinics.net/lists/u-boot-v2/msg37658.html; > and in the commit messages of the patches. > > Changes since v2: > - reordered/squashed commits after discussion with Sascha and Phillip > - removed superfluous comment > - add MUX_READ_ONLY at the correct place in the MUX_READ_ONLY arguments > > Except for the last two, the total diff, is exactly the same > as v1's. > > > Ahmad Fatoum (2): > clk: imx6: remove quirky clk_set_parent(LDB_diN_sel, pll5_video_div) > clk: imx6: define an enum for ldb mux inputs > > Fabio Estevam (1): > clk: imx6: Fix procedure to switch the parent of LDB_DI_CLK > > Philipp Zabel (2): > clk: imx6: Make the LDB_DI0 and LDB_DI1 clocks read-only > clk: imx6: Mask mmdc_ch1 handshake for periph2_sel and > mmdc_ch1_axi_podf > > drivers/clk/imx/clk-imx6.c | 320 +++++++++++++++++++++++++++++++++++-- > drivers/clk/imx/clk.h | 8 + > 2 files changed, 312 insertions(+), 16 deletions(-) > Tested this on non 6Q+ RDU2, seems to work as expected when the whole series is applied. Tested-by: Andrey Smirnov <andrew.smirnov@xxxxxxxxx> Thanks, Andrey Smirnov _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox