blob: 7074860f6e97a3021bb2e4e787fb35081af1caaf [file] [log] [blame]
/*
* Copyright (c) 2021 Telink Semiconductor
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/toolchain.h>
.option push
.option norelax
.org 0x0
/* exports */
GTEXT(entry)
SECTION_FUNC(init, init)
entry:
j start
.org 0x20
.word ('T'<<24 | 'L'<<16 | 'N'<<8 | 'K')
.org 0x26
.short (0x173B)
.align 2
start:
_ZERO_AES:
lui t0, 0
la t2, _AES_DATA_VMA_START
la t3, _AES_DATA_VMA_END
_ZERO_AES_BEGIN:
bleu t3, t2, _RETENTION_DATA_INIT
sw t0, 0(t2)
addi t2, t2, 4
j _ZERO_AES_BEGIN
_RETENTION_DATA_INIT:
la t1, _RETENTION_DATA_LMA_START
la t2, _RETENTION_DATA_VMA_START
la t3, _RETENTION_DATA_VMA_END
_RETENTION_DATA_INIT_BEGIN:
bleu t3, t2, _RAMCODE_INIT
lw t0, 0(t1)
sw t0, 0(t2)
addi t1, t1, 4
addi t2, t2, 4
j _RETENTION_DATA_INIT_BEGIN
_RAMCODE_INIT:
la t1, _RAMCODE_LMA_START
la t2, _RAMCODE_VMA_START
la t3, _RAMCODE_VMA_END
_RAMCODE_INIT_BEGIN:
bleu t3, t2, _START
lw t0, 0(t1)
sw t0, 0(t2)
addi t1, t1, 4
addi t2, t2, 4
j _RAMCODE_INIT_BEGIN
_START:
j __start
.option pop