mirror of
https://github.com/tillitis/tillitis-key1.git
synced 2024-12-27 00:19:31 -05:00
92712a11bf
Modify the loop to zeroise the FW-RAM instead of the RAM. RAM is filled with random data at the start of main(). Changes firmware and bitstream digests. Signed-off-by: Joachim Strömbergson <joachim@assured.se>
58 lines
783 B
ArmAsm
58 lines
783 B
ArmAsm
/*
|
|
* Copyright (C) 2022, 2023 - Tillitis AB
|
|
* SPDX-License-Identifier: GPL-2.0-only
|
|
*/
|
|
|
|
.section ".text.init"
|
|
.globl _start
|
|
_start:
|
|
li x1, 0
|
|
li x2, 0
|
|
li x3, 0
|
|
li x4, 0
|
|
li x5, 0
|
|
li x6, 0
|
|
li x7, 0
|
|
li x8, 0
|
|
li x9, 0
|
|
li x10,0
|
|
li x11,0
|
|
li x12,0
|
|
li x13,0
|
|
li x14,0
|
|
li x15,0
|
|
li x16,0
|
|
li x17,0
|
|
li x18,0
|
|
li x19,0
|
|
li x20,0
|
|
li x21,0
|
|
li x22,0
|
|
li x23,0
|
|
li x24,0
|
|
li x25,0
|
|
li x26,0
|
|
li x27,0
|
|
li x28,0
|
|
li x29,0
|
|
li x30,0
|
|
li x31,0
|
|
|
|
/* Clear FW_RAM */
|
|
li a0, 0xd0000000 // TK1_MMIO_FW_RAM_BASE
|
|
li a1, 0xd0000800 // TK1_MMIO_FW_RAM_BASE + TK1_MMIO_FW_RAM_SIZE
|
|
clear:
|
|
sw zero, 0(a0)
|
|
addi a0, a0, 4
|
|
blt a0, a1, clear
|
|
|
|
/*
|
|
* Init stack at top of fw_ram.
|
|
*/
|
|
li sp, 0xd0000800 // 2 kiB (TK1_MMIO_FW_RAM_SIZE)
|
|
|
|
call main
|
|
|
|
loop:
|
|
j loop
|