gpio: pca953x: add a comment explaining the need for a lockdep subclass
[cascardo/linux.git] / include / linux / clk-provider.h
index a39c0c5..af59638 100644 (file)
@@ -772,7 +772,7 @@ struct clk_onecell_data {
 };
 
 struct clk_hw_onecell_data {
-       size_t num;
+       unsigned int num;
        struct clk_hw *hws[];
 };
 
@@ -780,6 +780,18 @@ extern struct of_device_id __clk_of_table;
 
 #define CLK_OF_DECLARE(name, compat, fn) OF_DECLARE_1(clk, name, compat, fn)
 
+/*
+ * Use this macro when you have a driver that requires two initialization
+ * routines, one at of_clk_init(), and one at platform device probe
+ */
+#define CLK_OF_DECLARE_DRIVER(name, compat, fn) \
+       static void name##_of_clk_init_driver(struct device_node *np)   \
+       {                                                               \
+               of_node_clear_flag(np, OF_POPULATED);                   \
+               fn(np);                                                 \
+       }                                                               \
+       OF_DECLARE_1(clk, name, compat, name##_of_clk_init_driver)
+
 #ifdef CONFIG_OF
 int of_clk_add_provider(struct device_node *np,
                        struct clk *(*clk_src_get)(struct of_phandle_args *args,
@@ -842,7 +854,7 @@ of_clk_hw_onecell_get(struct of_phandle_args *clkspec, void *data)
 {
        return ERR_PTR(-ENOENT);
 }
-static inline int of_clk_get_parent_count(struct device_node *np)
+static inline unsigned int of_clk_get_parent_count(struct device_node *np)
 {
        return 0;
 }