rockchip dmc: add ddr set rate interface
Change-Id: Ie3f5ac29621f1298a759daf44a1caf68d18b9a46 Signed-off-by: Tang Yun ping <typ@rock-chips.com>
This commit is contained in:
parent
aa04de65ce
commit
6bce753f9d
|
|
@ -7,9 +7,14 @@
|
|||
#define __ROCKCHIP_DMC_H_
|
||||
#include <dm.h>
|
||||
|
||||
#ifndef MHZ
|
||||
#define MHZ (1000 * 1000)
|
||||
#endif
|
||||
|
||||
int rockchip_ddrclk_sip_set_rate_v2(unsigned long drate);
|
||||
unsigned long rockchip_ddrclk_sip_recalc_rate_v2(void);
|
||||
unsigned long rockchip_ddrclk_sip_round_rate_v2(unsigned long rate);
|
||||
int rockchip_dmcfreq_probe(struct udevice *dev);
|
||||
int set_ddr_freq(unsigned long freq);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -867,6 +867,20 @@ unsigned long rockchip_ddrclk_sip_round_rate_v2(unsigned long rate)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int set_ddr_freq(unsigned long freq)
|
||||
{
|
||||
if (freq < MHZ)
|
||||
freq *= MHZ;
|
||||
if (freq) {
|
||||
freq = rockchip_ddrclk_sip_round_rate_v2(freq);
|
||||
rockchip_ddrclk_sip_set_rate_v2(freq);
|
||||
}
|
||||
freq = rockchip_ddrclk_sip_recalc_rate_v2();
|
||||
printf("current ddr freq:%lu Hz\n", freq);
|
||||
|
||||
return freq;
|
||||
}
|
||||
|
||||
int rockchip_dmcfreq_probe(struct udevice *dev)
|
||||
{
|
||||
int ret;
|
||||
|
|
|
|||
Loading…
Reference in New Issue