mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
ARM: S3C24XX: Add .get_rate callback for "camif-upll" clock
Add missing get_rate callback for the "camif-upll" clock, so frequency of this clock is properly reported with clk_get_rate(). Signed-off-by: Sylwester Nawrocki <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>
This commit is contained in:
parent
859a09e671
commit
98a7069ba0
1 changed files with 14 additions and 0 deletions
|
|
@ -87,6 +87,19 @@ static int s3c2440_camif_upll_setrate(struct clk *clk, unsigned long rate)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static unsigned long s3c2440_camif_upll_getrate(struct clk *clk)
|
||||
{
|
||||
unsigned long parent_rate = clk_get_rate(clk->parent);
|
||||
unsigned long camdivn = __raw_readl(S3C2440_CAMDIVN);
|
||||
|
||||
if (!(camdivn & S3C2440_CAMDIVN_CAMCLK_SEL))
|
||||
return parent_rate;
|
||||
|
||||
camdivn &= S3C2440_CAMDIVN_CAMCLK_MASK;
|
||||
|
||||
return parent_rate / (camdivn + 1) / 2;
|
||||
}
|
||||
|
||||
/* Extra S3C2440 clocks */
|
||||
|
||||
static struct clk s3c2440_clk_cam = {
|
||||
|
|
@ -99,6 +112,7 @@ static struct clk s3c2440_clk_cam_upll = {
|
|||
.name = "camif-upll",
|
||||
.ops = &(struct clk_ops) {
|
||||
.set_rate = s3c2440_camif_upll_setrate,
|
||||
.get_rate = s3c2440_camif_upll_getrate,
|
||||
.round_rate = s3c2440_camif_upll_round,
|
||||
},
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in a new issue