xref: /rk3399_rockchip-uboot/board/imgtec/boston/lowlevel_init.S (revision 423620b9d47a704124f9fd624b4de4ed56c600d6)
1*ad8783cbSPaul Burton/*
2*ad8783cbSPaul Burton * Copyright (C) 2016 Imagination Technologies
3*ad8783cbSPaul Burton *
4*ad8783cbSPaul Burton * SPDX-License-Identifier:	GPL-2.0
5*ad8783cbSPaul Burton */
6*ad8783cbSPaul Burton
7*ad8783cbSPaul Burton#include <config.h>
8*ad8783cbSPaul Burton
9*ad8783cbSPaul Burton#include <asm/addrspace.h>
10*ad8783cbSPaul Burton#include <asm/asm.h>
11*ad8783cbSPaul Burton#include <asm/mipsregs.h>
12*ad8783cbSPaul Burton#include <asm/regdef.h>
13*ad8783cbSPaul Burton
14*ad8783cbSPaul Burton#include "boston-regs.h"
15*ad8783cbSPaul Burton
16*ad8783cbSPaul Burton.data
17*ad8783cbSPaul Burton
18*ad8783cbSPaul Burtonmsg_ddr_cal:	.ascii "DDR Cal "
19*ad8783cbSPaul Burtonmsg_ddr_ok:	.ascii "DDR OK  "
20*ad8783cbSPaul Burton
21*ad8783cbSPaul Burton.text
22*ad8783cbSPaul Burton
23*ad8783cbSPaul BurtonLEAF(lowlevel_init)
24*ad8783cbSPaul Burton	move	s0, ra
25*ad8783cbSPaul Burton
26*ad8783cbSPaul Burton	PTR_LA	a0, msg_ddr_cal
27*ad8783cbSPaul Burton	bal	lowlevel_display
28*ad8783cbSPaul Burton
29*ad8783cbSPaul Burton	PTR_LI	t0, BOSTON_PLAT_DDR3STAT
30*ad8783cbSPaul Burton1:	lw	t1, 0(t0)
31*ad8783cbSPaul Burton	andi	t1, t1, BOSTON_PLAT_DDR3STAT_CALIB
32*ad8783cbSPaul Burton	beqz	t1, 1b
33*ad8783cbSPaul Burton
34*ad8783cbSPaul Burton	PTR_LA	a0, msg_ddr_ok
35*ad8783cbSPaul Burton	bal	lowlevel_display
36*ad8783cbSPaul Burton
37*ad8783cbSPaul Burton	move	v0, zero
38*ad8783cbSPaul Burton	jr	s0
39*ad8783cbSPaul Burton	END(lowlevel_init)
40*ad8783cbSPaul Burton
41*ad8783cbSPaul BurtonLEAF(lowlevel_display)
42*ad8783cbSPaul Burton	.set	push
43*ad8783cbSPaul Burton	.set	noat
44*ad8783cbSPaul Burton	PTR_LI	AT, BOSTON_LCD_BASE
45*ad8783cbSPaul Burton#ifdef CONFIG_64BIT
46*ad8783cbSPaul Burton	ld	k1, 0(a0)
47*ad8783cbSPaul Burton	sd	k1, 0(AT)
48*ad8783cbSPaul Burton#else
49*ad8783cbSPaul Burton	lw	k1, 0(a0)
50*ad8783cbSPaul Burton	sw	k1, 0(AT)
51*ad8783cbSPaul Burton	lw	k1, 4(a0)
52*ad8783cbSPaul Burton	sw	k1, 4(AT)
53*ad8783cbSPaul Burton#endif
54*ad8783cbSPaul Burton	.set	pop
55*ad8783cbSPaul Burton1:	jr	ra
56*ad8783cbSPaul Burton	END(lowlevel_display)
57