From 91191c2a72dc334b0248382ffa4828d071233563 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E9=99=88=E4=BA=AE?= Date: Mon, 21 Jul 2014 05:27:24 -0700 Subject: [PATCH] ddr_test: use dvfs_clk_set_rate() when change freq MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: 陈亮 --- arch/arm/mach-rockchip/ddr_test.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-rockchip/ddr_test.c b/arch/arm/mach-rockchip/ddr_test.c index 4d93549f3740..936e02bbd732 100755 --- a/arch/arm/mach-rockchip/ddr_test.c +++ b/arch/arm/mach-rockchip/ddr_test.c @@ -11,12 +11,14 @@ #include #include #include +#include #include struct ddrtest { struct clk *pll; struct clk *clk; + struct dvfs_node *clk_dvfs_node; volatile unsigned int freq; volatile bool change_end; struct task_struct *task; @@ -220,8 +222,7 @@ static const struct file_operations ddr_proc_fops = { static void ddrtest_work(unsigned int value) { - - clk_set_rate(ddrtest.clk, value * 1000000); + dvfs_clk_set_rate(ddrtest.clk_dvfs_node, value * 1000000); ddrtest.change_end = true; } @@ -261,6 +262,10 @@ static int ddr_proc_init(void) } ddrtest.freq = clk_get_rate(ddrtest.clk)/1000000; + ddrtest.clk_dvfs_node = clk_get_dvfs_node("clk_ddr"); + if (!ddrtest.clk_dvfs_node) + goto err; + ddr_proc_entry = proc_create("driver/ddr_ts", S_IRUGO | S_IWUGO | S_IWUSR | S_IRUSR, NULL,&ddrtest_proc_fops); -- 2.34.1