rk3288: config l2ctlr in romstage

Data RAM write latency: 2 cycles
Data RAM read latency: 2 cycles
Data RAM setup latency: 1 cycle
Tag RAM write latency: 1 cycle
Tag RAM read latency: 1 cycle
Tag RAM setup latency: 1 cycle

BUG=None
TEST=Boot Veyron Pinky

Change-Id: Ic9c909b7913d434bd40016c6a820ddff7e991634
Signed-off-by: huang lin <hl@rock-chips.com>
Reviewed-on: https://chromium-review.googlesource.com/223713
Reviewed-by: Doug Anderson <dianders@chromium.org>
Commit-Queue: Doug Anderson <dianders@chromium.org>
This commit is contained in:
huang lin 2014-10-16 09:27:31 -07:00 committed by chrome-internal-fetch
commit 421c2e5ba4

View file

@ -54,6 +54,25 @@ static void regulate_vdd_log(unsigned int mv)
pwm_init(1, period_ns, duty_ns);
}
static void configure_l2ctlr(void)
{
uint32_t l2ctlr;
l2ctlr = read_l2ctlr();
l2ctlr &= 0xfffc0000; /* clear bit0~bit17 */
/*
* Data RAM write latency: 2 cycles
* Data RAM read latency: 2 cycles
* Data RAM setup latency: 1 cycle
* Tag RAM write latency: 1 cycle
* Tag RAM read latency: 1 cycle
* Tag RAM setup latency: 1 cycle
*/
l2ctlr |= (1 << 3 | 1 << 0);
write_l2ctlr(l2ctlr);
}
void main(void)
{
void *entry;
@ -66,6 +85,7 @@ void main(void)
#endif
console_init();
configure_l2ctlr();
/* vdd_log 1200mv is enough for ddr run 666Mhz */
regulate_vdd_log(1200);