/* SPDX-License-Identifier: GPL-2.0 */ /* * Copyright (C) 2016 Imagination Technologies */ #include #include #include #include #include #include "boston-regs.h" .data msg_ddr_cal: .ascii "DDR Cal " msg_ddr_ok: .ascii "DDR OK " .text LEAF(lowlevel_init) move s0, ra PTR_LA a0, msg_ddr_cal bal lowlevel_display PTR_LI t0, BOSTON_PLAT_DDR3STAT 1: lw t1, 0(t0) andi t1, t1, BOSTON_PLAT_DDR3STAT_CALIB beqz t1, 1b PTR_LA a0, msg_ddr_ok bal lowlevel_display jr s0 END(lowlevel_init) LEAF(lowlevel_display) .set push .set noat PTR_LI AT, BOSTON_LCD_BASE #ifdef CONFIG_64BIT ld k1, 0(a0) sd k1, 0(AT) #else lw k1, 0(a0) sw k1, 0(AT) lw k1, 4(a0) sw k1, 4(AT) #endif .set pop jr ra END(lowlevel_display)