Skip to content

Commit

Permalink
ARM: tegra: clocks: separate tegra_clk_32k_ops from Tegra20 and Tegra30
Browse files Browse the repository at this point in the history
Currently the tegra20 and tegra30 share the same symbol for
tegra_clk_32k_ops. This will cause a compile error when building
a tegra20-only kernel image. Add tegra_clk_32k_ops for tegra20 and
modify tegra30_clk_32k_ops for tegra30.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
  • Loading branch information
Joseph Lo authored and Stephen Warren committed Sep 6, 2012
1 parent 1dfacc1 commit b78c030
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 3 deletions.
10 changes: 10 additions & 0 deletions arch/arm/mach-tegra/tegra20_clocks.c
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,16 @@ static int clk_div16_get_divider(unsigned long parent_rate, unsigned long rate)
return divider_u16 - 1;
}

static unsigned long tegra_clk_fixed_recalc_rate(struct clk_hw *hw,
unsigned long parent_rate)
{
return to_clk_tegra(hw)->fixed_rate;
}

struct clk_ops tegra_clk_32k_ops = {
.recalc_rate = tegra_clk_fixed_recalc_rate,
};

/* clk_m functions */
static unsigned long tegra20_clk_m_recalc_rate(struct clk_hw *hw,
unsigned long prate)
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-tegra/tegra30_clocks.c
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,7 @@ static unsigned long tegra30_clk_fixed_recalc_rate(struct clk_hw *hw,
return to_clk_tegra(hw)->fixed_rate;
}

struct clk_ops tegra_clk_32k_ops = {
struct clk_ops tegra30_clk_32k_ops = {
.recalc_rate = tegra30_clk_fixed_recalc_rate,
};

Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-tegra/tegra30_clocks.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#ifndef __MACH_TEGRA30_CLOCK_H
#define __MACH_TEGRA30_CLOCK_H

extern struct clk_ops tegra_clk_32k_ops;
extern struct clk_ops tegra30_clk_32k_ops;
extern struct clk_ops tegra30_clk_m_ops;
extern struct clk_ops tegra_clk_m_div_ops;
extern struct clk_ops tegra_pll_ref_ops;
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-tegra/tegra30_clocks_data.c
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ static struct clk_tegra tegra_clk_32k_hw = {
static struct clk tegra_clk_32k = {
.name = "clk_32k",
.hw = &tegra_clk_32k_hw.hw,
.ops = &tegra_clk_32k_ops,
.ops = &tegra30_clk_32k_ops,
.flags = CLK_IS_ROOT,
};

Expand Down

0 comments on commit b78c030

Please sign in to comment.