While implementing DSS support for AM43xx I encountered a problem with clock mux: clk mux may change the parent clock automatically, and with set-rate-parent this leads to changing clocks for other devices. The problem is described in more detail in the actual patch. The problem doesn't seem to happen in -rc1, even if it was there in linux-next (20140527). However, in -rc1, if I add debug prints to clk.c, I can see that the code is going through the parents, but it decides to use the first one (the correct one). So I presume it's just a matter of right clock rates or such which will cause the parent to be changed. Thus I think the problem is still there and should be fixed until it happens again, either for DSS or for some other device. This patch changes the behavior for all TI mux-clocks. I think it's much better to default to CLK_SET_RATE_NO_REPARENT as changing the parent automatically feels rather dangerouns to me. Another option could be to set CLK_SET_RATE_NO_REPARENT only when the mux has "ti,set-rate-parent" set, as (maybe) it's safe to change the parent if the parent's rate will not be changed. However, I'm fine with doing this only for the DSS, if someone has ideas how to do that. A DT property would be easy, but I guess the argument against it is the same as for the PLL rounding: it's not a hardware property. Tomi Valkeinen (1): clk: ti: set CLK_SET_RATE_NO_REPARENT for ti,mux-clock drivers/clk/ti/mux.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html