Hi, On 08/02/16 15:57, Rob Herring wrote: > On Mon, Feb 01, 2016 at 05:39:26PM +0000, Andre Przywara wrote: >> The only difference between the different compatible matches at the >> end of clk-sunxi.c are the critical clocks. Two SoCs get away so far >> without any, so there is no reason to enumerate those SoCs in here >> explicitly, though we have to keep them in for compatibility reasons. >> >> Rename the init function to highlight this generic feature and add a >> new, generic DT compatible string which can be used as a fallback value >> in the future should a particular SoC don't need any special treatment. >> >> Signed-off-by: Andre Przywara <andre.przywara@xxxxxxx> >> --- >> Documentation/devicetree/bindings/arm/sunxi.txt | 4 ++++ >> drivers/clk/sunxi/clk-sunxi.c | 14 ++++++-------- >> 2 files changed, 10 insertions(+), 8 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/arm/sunxi.txt b/Documentation/devicetree/bindings/arm/sunxi.txt >> index 7e79fcc..980e065 100644 >> --- a/Documentation/devicetree/bindings/arm/sunxi.txt >> +++ b/Documentation/devicetree/bindings/arm/sunxi.txt >> @@ -14,3 +14,7 @@ using one of the following compatible strings: >> allwinner,sun8i-a83t >> allwinner,sun8i-h3 >> allwinner,sun9i-a80 >> + >> +For Allwinner SoCs without any specific needs the generic fallback value of: >> + allwinner,sunxi >> +can be used. > > Perhaps "fallback" implies this, but be more specific that it can be > used in addition to a specific string. Yeah, good point. But Maxime's latest rework [1] made this patch here actually obsolete, so we don't match on a root compatible string anymore to register the sunxi clock drivers. Instead each clock is registered and matched on it's own compatible string. Much nicer now, IMHO. Thanks for having a look! Andre. [1] https://git.kernel.org/cgit/linux/kernel/git/mripard/linux.git/commit/?h=sunxi/for-next&id=78e3fb4c745114b16a12458036d48aa96ea5b36d >> diff --git a/drivers/clk/sunxi/clk-sunxi.c b/drivers/clk/sunxi/clk-sunxi.c >> index e460a6b..efcce85 100644 >> --- a/drivers/clk/sunxi/clk-sunxi.c >> +++ b/drivers/clk/sunxi/clk-sunxi.c >> @@ -1052,14 +1052,12 @@ CLK_OF_DECLARE(sun8i_a23_clk_init, "allwinner,sun8i-a23", sun6i_init_clocks); >> CLK_OF_DECLARE(sun8i_a33_clk_init, "allwinner,sun8i-a33", sun6i_init_clocks); >> CLK_OF_DECLARE(sun8i_h3_clk_init, "allwinner,sun8i-h3", sun6i_init_clocks); >> >> -static void __init sun8i_a83t_init_clocks(struct device_node *node) >> +static void __init sunxi_generic_init_clocks(struct device_node *node) >> { >> sunxi_init_clocks(NULL, 0); >> } >> -CLK_OF_DECLARE(sun8i_a83t_clk_init, "allwinner,sun8i-a83t", sun8i_a83t_init_clocks); >> - >> -static void __init sun9i_init_clocks(struct device_node *node) >> -{ >> - sunxi_init_clocks(NULL, 0); >> -} >> -CLK_OF_DECLARE(sun9i_a80_clk_init, "allwinner,sun9i-a80", sun9i_init_clocks); >> +CLK_OF_DECLARE(sun8i_a83t_clk_init, "allwinner,sun8i-a83t", >> + sunxi_generic_init_clocks); >> +CLK_OF_DECLARE(sun9i_a80_clk_init, "allwinner,sun9i-a80", >> + sunxi_generic_init_clocks); >> +CLK_OF_DECLARE(sunxi_clk_init, "allwinner,sunxi", sunxi_generic_init_clocks); >> -- >> 2.6.4 >> > -- 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