OSDN Git Service

Merge tag 'tegra-for-4.2-clk' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra...
authorMichael Turquette <mturquette@baylibre.com>
Sat, 20 Jun 2015 20:29:48 +0000 (13:29 -0700)
committerMichael Turquette <mturquette@baylibre.com>
Sat, 20 Jun 2015 20:29:48 +0000 (13:29 -0700)
clk: tegra: Changes for v4.2-rc1

This contains the EMC clock driver that's been exhaustively reviewed and
tested. It also includes a change to the clock core that allows a clock
provider to perform low-level reparenting of clocks. This is required by
the EMC clock driver because the reparenting needs to be done at a very
specific point in time during the EMC frequency switch.

1  2 
drivers/clk/Kconfig
drivers/clk/clk.c
include/linux/clk-provider.h

Simple merge
        return ret;
  }
  
 -static void clk_core_reparent(struct clk_core *clk,
 +static void clk_core_reparent(struct clk_core *core,
                                  struct clk_core *new_parent)
  {
 -      clk_reparent(clk, new_parent);
 -      __clk_recalc_accuracies(clk);
 -      __clk_recalc_rates(clk, POST_RATE_CHANGE);
 +      clk_reparent(core, new_parent);
 +      __clk_recalc_accuracies(core);
 +      __clk_recalc_rates(core, POST_RATE_CHANGE);
  }
  
+ void clk_hw_reparent(struct clk_hw *hw, struct clk_hw *new_parent)
+ {
+       if (!hw)
+               return;
+       clk_core_reparent(hw->core, !new_parent ? NULL : new_parent->core);
+ }
  /**
   * clk_has_parent - check if a clock is a possible parent for another
   * @clk: clock source
Simple merge