Loading drivers/clk/clk.c +12 −0 Original line number Diff line number Diff line Loading @@ -1982,6 +1982,18 @@ bool clk_is_match(const struct clk *p, const struct clk *q) } EXPORT_SYMBOL_GPL(clk_is_match); int clk_set_flags(struct clk *clk, unsigned long flags) { if (!clk) return 0; if (!clk->core->ops->set_flags) return -EINVAL; return clk->core->ops->set_flags(clk->core->hw, flags); } EXPORT_SYMBOL_GPL(clk_set_flags); /*** debugfs support ***/ #ifdef CONFIG_DEBUG_FS Loading include/linux/clk-provider.h +3 −0 Original line number Diff line number Diff line Loading @@ -177,6 +177,8 @@ struct clk_rate_request { * directory is provided as an argument. Called with * prepare_lock held. Returns 0 on success, -EERROR otherwise. * * @set_flags: Set custom flags which deal with hardware specifics. Returns 0 * on success, -EERROR otherwise. * * The clk_enable/clk_disable and clk_prepare/clk_unprepare pairs allow * implementations to split any work between atomic (enable) and sleepable Loading Loading @@ -217,6 +219,7 @@ struct clk_ops { int (*set_phase)(struct clk_hw *hw, int degrees); void (*init)(struct clk_hw *hw); int (*debug_init)(struct clk_hw *hw, struct dentry *dentry); int (*set_flags)(struct clk_hw *hw, unsigned int flags); }; /** Loading include/linux/clk.h +10 −0 Original line number Diff line number Diff line Loading @@ -420,6 +420,16 @@ struct clk *clk_get_parent(struct clk *clk); */ struct clk *clk_get_sys(const char *dev_id, const char *con_id); /** * clk_set_flags - set the custom HW specific flags for this clock * @clk: clock source * @flags: custom flags which would be hardware specific, defined for specific * hardware. * * Returns success 0 or negative errno. */ int clk_set_flags(struct clk *clk, unsigned long flags); #else /* !CONFIG_HAVE_CLK */ static inline struct clk *clk_get(struct device *dev, const char *id) Loading Loading
drivers/clk/clk.c +12 −0 Original line number Diff line number Diff line Loading @@ -1982,6 +1982,18 @@ bool clk_is_match(const struct clk *p, const struct clk *q) } EXPORT_SYMBOL_GPL(clk_is_match); int clk_set_flags(struct clk *clk, unsigned long flags) { if (!clk) return 0; if (!clk->core->ops->set_flags) return -EINVAL; return clk->core->ops->set_flags(clk->core->hw, flags); } EXPORT_SYMBOL_GPL(clk_set_flags); /*** debugfs support ***/ #ifdef CONFIG_DEBUG_FS Loading
include/linux/clk-provider.h +3 −0 Original line number Diff line number Diff line Loading @@ -177,6 +177,8 @@ struct clk_rate_request { * directory is provided as an argument. Called with * prepare_lock held. Returns 0 on success, -EERROR otherwise. * * @set_flags: Set custom flags which deal with hardware specifics. Returns 0 * on success, -EERROR otherwise. * * The clk_enable/clk_disable and clk_prepare/clk_unprepare pairs allow * implementations to split any work between atomic (enable) and sleepable Loading Loading @@ -217,6 +219,7 @@ struct clk_ops { int (*set_phase)(struct clk_hw *hw, int degrees); void (*init)(struct clk_hw *hw); int (*debug_init)(struct clk_hw *hw, struct dentry *dentry); int (*set_flags)(struct clk_hw *hw, unsigned int flags); }; /** Loading
include/linux/clk.h +10 −0 Original line number Diff line number Diff line Loading @@ -420,6 +420,16 @@ struct clk *clk_get_parent(struct clk *clk); */ struct clk *clk_get_sys(const char *dev_id, const char *con_id); /** * clk_set_flags - set the custom HW specific flags for this clock * @clk: clock source * @flags: custom flags which would be hardware specific, defined for specific * hardware. * * Returns success 0 or negative errno. */ int clk_set_flags(struct clk *clk, unsigned long flags); #else /* !CONFIG_HAVE_CLK */ static inline struct clk *clk_get(struct device *dev, const char *id) Loading