1dd1033e4SGregory CLEMENT/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ 2dd1033e4SGregory CLEMENT/* 3dd1033e4SGregory CLEMENT * Copyright (c) 2018 Microsemi Corporation 4dd1033e4SGregory CLEMENT */ 5dd1033e4SGregory CLEMENT 6dd1033e4SGregory CLEMENT#include <asm/asm.h> 7dd1033e4SGregory CLEMENT#include <asm/regdef.h> 8dd1033e4SGregory CLEMENT 9dd1033e4SGregory CLEMENT .set noreorder 10dd1033e4SGregory CLEMENT .extern vcoreiii_tlb_init 11*6bd8231aSGregory CLEMENT#ifdef CONFIG_SOC_LUTON 12*6bd8231aSGregory CLEMENT .extern pll_init 13*6bd8231aSGregory CLEMENT#endif 14dd1033e4SGregory CLEMENT 15dd1033e4SGregory CLEMENTLEAF(lowlevel_init) 16dd1033e4SGregory CLEMENT /* 17dd1033e4SGregory CLEMENT * As we have no stack yet, we can assume the restricted 18dd1033e4SGregory CLEMENT * luxury of the sX-registers without saving them 19dd1033e4SGregory CLEMENT */ 20dd1033e4SGregory CLEMENT move s0,ra 21dd1033e4SGregory CLEMENT 22dd1033e4SGregory CLEMENT jal vcoreiii_tlb_init 23dd1033e4SGregory CLEMENT nop 24*6bd8231aSGregory CLEMENT#ifdef CONFIG_SOC_LUTON 25*6bd8231aSGregory CLEMENT jal pll_init 26*6bd8231aSGregory CLEMENT nop 27*6bd8231aSGregory CLEMENT#endif 28dd1033e4SGregory CLEMENT jr s0 29dd1033e4SGregory CLEMENT nop 30dd1033e4SGregory CLEMENT END(lowlevel_init) 31