]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge branch 'for-4.2/ti-clk-move' of https://github.com/t-kristo/linux-pm into clk...
authorStephen Boyd <sboyd@codeaurora.org>
Tue, 28 Jul 2015 18:58:26 +0000 (11:58 -0700)
committerStephen Boyd <sboyd@codeaurora.org>
Tue, 28 Jul 2015 18:58:26 +0000 (11:58 -0700)
From Tero Kristo:
  "This pull request contains the TI clock driver set to move the
   clock implementations under clock driver. Some small portions of
   the clock driver code still remain under mach-omap2 after this,
   it should be decided whether this code is now obsolete and should
   be deleted or should someone try to fix it."

Slight merge conflicts with determine_rate prototype changes.

1  2 
arch/arm/mach-omap2/Makefile
drivers/clk/ti/clk-7xx.c
drivers/clk/ti/clk.c
drivers/clk/ti/clock.h
drivers/clk/ti/clockdomain.c
drivers/clk/ti/dpll3xxx.c
drivers/clk/ti/dpll44xx.c

Simple merge
Simple merge
Simple merge
index 404158d2d7f8800757cb95255525aa4fe87ee501,d4d232fd89bc12aaf29bf37f4dba4f738a60e655..d8aafd3330583789b8be93988dfb7757213a6e89
@@@ -169,4 -198,88 +198,80 @@@ void ti_clk_patch_legacy_clks(struct ti
  struct clk *ti_clk_register_clk(struct ti_clk *setup);
  int ti_clk_register_legacy_clks(struct ti_clk_alias *clks);
  
 -long omap3_noncore_dpll_determine_rate(struct clk_hw *hw,
 -                                     unsigned long rate,
 -                                     unsigned long min_rate,
 -                                     unsigned long max_rate,
 -                                     unsigned long *best_parent_rate,
 -                                     struct clk_hw **best_parent_clk);
+ void __iomem *ti_clk_get_reg_addr(struct device_node *node, int index);
+ void ti_dt_clocks_register(struct ti_dt_clk *oclks);
+ int ti_clk_retry_init(struct device_node *node, struct clk_hw *hw,
+                     ti_of_clk_init_cb_t func);
+ int ti_clk_add_component(struct device_node *node, struct clk_hw *hw, int type);
+ void omap2_init_clk_hw_omap_clocks(struct clk *clk);
+ int of_ti_clk_autoidle_setup(struct device_node *node);
+ void omap2_clk_enable_init_clocks(const char **clk_names, u8 num_clocks);
+ extern const struct clk_hw_omap_ops clkhwops_omap3_dpll;
+ extern const struct clk_hw_omap_ops clkhwops_omap4_dpllmx;
+ extern const struct clk_hw_omap_ops clkhwops_wait;
+ extern const struct clk_hw_omap_ops clkhwops_iclk;
+ extern const struct clk_hw_omap_ops clkhwops_iclk_wait;
+ extern const struct clk_hw_omap_ops clkhwops_omap2430_i2chs_wait;
+ extern const struct clk_hw_omap_ops clkhwops_omap3430es2_dss_usbhost_wait;
+ extern const struct clk_hw_omap_ops clkhwops_omap3430es2_iclk_hsotgusb_wait;
+ extern const struct clk_hw_omap_ops clkhwops_omap3430es2_iclk_dss_usbhost_wait;
+ extern const struct clk_hw_omap_ops clkhwops_omap3430es2_iclk_ssi_wait;
+ extern const struct clk_hw_omap_ops clkhwops_am35xx_ipss_module_wait;
+ extern const struct clk_hw_omap_ops clkhwops_am35xx_ipss_wait;
+ extern const struct clk_ops ti_clk_divider_ops;
+ extern const struct clk_ops ti_clk_mux_ops;
+ int omap2_clkops_enable_clkdm(struct clk_hw *hw);
+ void omap2_clkops_disable_clkdm(struct clk_hw *hw);
+ int omap2_dflt_clk_enable(struct clk_hw *hw);
+ void omap2_dflt_clk_disable(struct clk_hw *hw);
+ int omap2_dflt_clk_is_enabled(struct clk_hw *hw);
+ void omap2_clk_dflt_find_companion(struct clk_hw_omap *clk,
+                                  void __iomem **other_reg,
+                                  u8 *other_bit);
+ void omap2_clk_dflt_find_idlest(struct clk_hw_omap *clk,
+                               void __iomem **idlest_reg,
+                               u8 *idlest_bit, u8 *idlest_val);
+ void omap2_clkt_iclk_allow_idle(struct clk_hw_omap *clk);
+ void omap2_clkt_iclk_deny_idle(struct clk_hw_omap *clk);
+ u8 omap2_init_dpll_parent(struct clk_hw *hw);
+ int omap3_noncore_dpll_enable(struct clk_hw *hw);
+ void omap3_noncore_dpll_disable(struct clk_hw *hw);
+ int omap3_noncore_dpll_set_parent(struct clk_hw *hw, u8 index);
+ int omap3_noncore_dpll_set_rate(struct clk_hw *hw, unsigned long rate,
+                               unsigned long parent_rate);
+ int omap3_noncore_dpll_set_rate_and_parent(struct clk_hw *hw,
+                                          unsigned long rate,
+                                          unsigned long parent_rate,
+                                          u8 index);
 -long omap4_dpll_regm4xen_determine_rate(struct clk_hw *hw,
 -                                      unsigned long rate,
 -                                      unsigned long min_rate,
 -                                      unsigned long max_rate,
 -                                      unsigned long *best_parent_rate,
 -                                      struct clk_hw **best_parent_clk);
++int omap3_noncore_dpll_determine_rate(struct clk_hw *hw,
++                                    struct clk_rate_request *req);
+ long omap2_dpll_round_rate(struct clk_hw *hw, unsigned long target_rate,
+                          unsigned long *parent_rate);
+ unsigned long omap3_clkoutx2_recalc(struct clk_hw *hw,
+                                   unsigned long parent_rate);
+ unsigned long omap3_dpll_recalc(struct clk_hw *hw, unsigned long parent_rate);
+ int omap3_dpll4_set_rate(struct clk_hw *clk, unsigned long rate,
+                        unsigned long parent_rate);
+ int omap3_dpll4_set_rate_and_parent(struct clk_hw *hw, unsigned long rate,
+                                   unsigned long parent_rate, u8 index);
+ void omap3_clk_lock_dpll5(void);
+ unsigned long omap4_dpll_regm4xen_recalc(struct clk_hw *hw,
+                                        unsigned long parent_rate);
+ long omap4_dpll_regm4xen_round_rate(struct clk_hw *hw,
+                                   unsigned long target_rate,
+                                   unsigned long *parent_rate);
++int omap4_dpll_regm4xen_determine_rate(struct clk_hw *hw,
++                                     struct clk_rate_request *req);
+ extern struct ti_clk_ll_ops *ti_clk_ll_ops;
  #endif
Simple merge
Simple merge
Simple merge