Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 365307
b: refs/heads/master
c: d3a1c7b
h: refs/heads/master
i:
  365305: 229a663
  365303: afc36a7
v: v3
  • Loading branch information
Mike Turquette committed Apr 12, 2013
1 parent 799ea26 commit cc6af80
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 28 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9abd5f0555df6cd36130feb742f1def6d99c60fe
refs/heads/master: d3a1c7be8361e2fbb6affbdb19de47ca48d6c402
40 changes: 20 additions & 20 deletions trunk/drivers/clk/clk-composite.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,36 +47,36 @@ static unsigned long clk_composite_recalc_rate(struct clk_hw *hw,
unsigned long parent_rate)
{
struct clk_composite *composite = to_clk_composite(hw);
const struct clk_ops *div_ops = composite->div_ops;
struct clk_hw *div_hw = composite->div_hw;
const struct clk_ops *rate_ops = composite->rate_ops;
struct clk_hw *rate_hw = composite->rate_hw;

div_hw->clk = hw->clk;
rate_hw->clk = hw->clk;

return div_ops->recalc_rate(div_hw, parent_rate);
return rate_ops->recalc_rate(rate_hw, parent_rate);
}

static long clk_composite_round_rate(struct clk_hw *hw, unsigned long rate,
unsigned long *prate)
{
struct clk_composite *composite = to_clk_composite(hw);
const struct clk_ops *div_ops = composite->div_ops;
struct clk_hw *div_hw = composite->div_hw;
const struct clk_ops *rate_ops = composite->rate_ops;
struct clk_hw *rate_hw = composite->rate_hw;

div_hw->clk = hw->clk;
rate_hw->clk = hw->clk;

return div_ops->round_rate(div_hw, rate, prate);
return rate_ops->round_rate(rate_hw, rate, prate);
}

static int clk_composite_set_rate(struct clk_hw *hw, unsigned long rate,
unsigned long parent_rate)
{
struct clk_composite *composite = to_clk_composite(hw);
const struct clk_ops *div_ops = composite->div_ops;
struct clk_hw *div_hw = composite->div_hw;
const struct clk_ops *rate_ops = composite->rate_ops;
struct clk_hw *rate_hw = composite->rate_hw;

div_hw->clk = hw->clk;
rate_hw->clk = hw->clk;

return div_ops->set_rate(div_hw, rate, parent_rate);
return rate_ops->set_rate(rate_hw, rate, parent_rate);
}

static int clk_composite_is_enabled(struct clk_hw *hw)
Expand Down Expand Up @@ -115,7 +115,7 @@ static void clk_composite_disable(struct clk_hw *hw)
struct clk *clk_register_composite(struct device *dev, const char *name,
const char **parent_names, int num_parents,
struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
struct clk_hw *div_hw, const struct clk_ops *div_ops,
struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
unsigned long flags)
{
Expand Down Expand Up @@ -149,15 +149,15 @@ struct clk *clk_register_composite(struct device *dev, const char *name,
clk_composite_ops->set_parent = clk_composite_set_parent;
}

if (div_hw && div_ops) {
if (!div_ops->recalc_rate || !div_ops->round_rate ||
!div_ops->set_rate) {
if (rate_hw && rate_ops) {
if (!rate_ops->recalc_rate || !rate_ops->round_rate ||
!rate_ops->set_rate) {
clk = ERR_PTR(-EINVAL);
goto err;
}

composite->div_hw = div_hw;
composite->div_ops = div_ops;
composite->rate_hw = rate_hw;
composite->rate_ops = rate_ops;
clk_composite_ops->recalc_rate = clk_composite_recalc_rate;
clk_composite_ops->round_rate = clk_composite_round_rate;
clk_composite_ops->set_rate = clk_composite_set_rate;
Expand Down Expand Up @@ -187,8 +187,8 @@ struct clk *clk_register_composite(struct device *dev, const char *name,
if (composite->mux_hw)
composite->mux_hw->clk = clk;

if (composite->div_hw)
composite->div_hw->clk = clk;
if (composite->rate_hw)
composite->rate_hw->clk = clk;

if (composite->gate_hw)
composite->gate_hw->clk = clk;
Expand Down
14 changes: 7 additions & 7 deletions trunk/include/linux/clk-provider.h
Original file line number Diff line number Diff line change
Expand Up @@ -354,30 +354,30 @@ struct clk *clk_register_fixed_factor(struct device *dev, const char *name,
* struct clk_composite - aggregate clock of mux, divider and gate clocks
*
* @hw: handle between common and hardware-specific interfaces
* @mux_hw: handle between composite and hardware-specifix mux clock
* @div_hw: handle between composite and hardware-specifix divider clock
* @gate_hw: handle between composite and hardware-specifix gate clock
* @mux_hw: handle between composite and hardware-specific mux clock
* @rate_hw: handle between composite and hardware-specific rate clock
* @gate_hw: handle between composite and hardware-specific gate clock
* @mux_ops: clock ops for mux
* @div_ops: clock ops for divider
* @rate_ops: clock ops for rate
* @gate_ops: clock ops for gate
*/
struct clk_composite {
struct clk_hw hw;
struct clk_ops ops;

struct clk_hw *mux_hw;
struct clk_hw *div_hw;
struct clk_hw *rate_hw;
struct clk_hw *gate_hw;

const struct clk_ops *mux_ops;
const struct clk_ops *div_ops;
const struct clk_ops *rate_ops;
const struct clk_ops *gate_ops;
};

struct clk *clk_register_composite(struct device *dev, const char *name,
const char **parent_names, int num_parents,
struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
struct clk_hw *div_hw, const struct clk_ops *div_ops,
struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
unsigned long flags);

Expand Down

0 comments on commit cc6af80

Please sign in to comment.