0000 if (DPLL Locked) SPDIF_RxClk else extal 0001 if (DPLL Locked) SPDIF_RxClk else spdif_clk 0011 if (DPLL Locked) SPDIF_RxClk else asrc_clk 0100 if (DPLL Locked) SPDIF_Rxclk else esai_hckt 0101 extal_clk 0110 spdif_clk 1000 asrc_clk 1001 esai_hckt 1010 if (DPLL Locked) SPDIF_RxClk else mlb_clk 1011 if (DPLL Locked) SPDIF_RxClk else camp_clk 1100 mkb_clk 1101 camp_clk ================================================================== To me this looks like the device tree should just contain the list of unique clock inputs using phandles. /* for i.MX6Q: */ clocks = <&...>; clock-names = "xtal", "spdif", "asrc", "spdif_ext", "esai", "mlb"; /* for i.MX53: */ clocks = <&...>; clock-names = "xtal", "spdif", "asrc", "esai", "mlb", "camp"; The driver could contain this list of named inputs to the multiplexer and the DPLL locking information for each SoC version. The per-clock DPLL locking bit shouldn't be in the device tree at all. > So the name list here basically is not being used to obtain a > clock like what standardized DT binding does but to provide the > driver a full list to look up which value should be exactly used > according to the obtained clock. > > I think I should revise the binding doc for these two lists. It > might be hard to explain within that kinda short paragraph. > > Surely, if I misunderstand your point, please correct me. And > if you have any sage idea, please guide me. regards Philipp -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html