aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk/tegra/clk.h
diff options
context:
space:
mode:
authorPeter De Schrijver <pdeschrijver@nvidia.com>2013-04-03 10:40:39 -0400
committerStephen Warren <swarren@nvidia.com>2013-04-04 18:10:45 -0400
commit0b6525acd13f2d33cd3be86d0dbd2ddd1ffeda8f (patch)
tree989c920b532d4d5d7372c275ed828356cff9c581 /drivers/clk/tegra/clk.h
parent7ba28813b41120dd67329fd04dc732ea7fef05a0 (diff)
clk: tegra: Add PLL post divider table
Some PLLs in Tegra114 don't use a power of 2 mapping for the post divider. Introduce a table based approach and switch PLLU to it. Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com> Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'drivers/clk/tegra/clk.h')
-rw-r--r--drivers/clk/tegra/clk.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/clk/tegra/clk.h b/drivers/clk/tegra/clk.h
index 17ddb22f7a50..925da451bd19 100644
--- a/drivers/clk/tegra/clk.h
+++ b/drivers/clk/tegra/clk.h
@@ -117,6 +117,17 @@ struct tegra_clk_pll_freq_table {
117}; 117};
118 118
119/** 119/**
120 * struct pdiv_map - map post divider to hw value
121 *
122 * @pdiv: post divider
123 * @hw_val: value to be written to the PLL hw
124 */
125struct pdiv_map {
126 u8 pdiv;
127 u8 hw_val;
128};
129
130/**
120 * struct clk_pll_params - PLL parameters 131 * struct clk_pll_params - PLL parameters
121 * 132 *
122 * @input_min: Minimum input frequency 133 * @input_min: Minimum input frequency
@@ -146,6 +157,8 @@ struct tegra_clk_pll_params {
146 u32 lock_bit_idx; 157 u32 lock_bit_idx;
147 u32 lock_enable_bit_idx; 158 u32 lock_enable_bit_idx;
148 int lock_delay; 159 int lock_delay;
160 int max_p;
161 struct pdiv_map *pdiv_tohw;
149}; 162};
150 163
151/** 164/**