Some execution fixes

This commit is contained in:
2019-12-14 20:06:56 -05:00
parent 3caa14603f
commit cc87e78cb2
14 changed files with 189 additions and 150 deletions

View File

@@ -2,7 +2,9 @@
#include "brfunc_timing.h"
#include "brfunc_sep.h"
__attribute__ ((section (".payload_text")))
#include "util.h"
PAYLOAD_SECTION
int aes_hw_crypto_command(unsigned int cmd,
void *src,
void *dst,
@@ -45,6 +47,7 @@ int aes_hw_crypto_command(unsigned int cmd,
return 0;
}
TEXT_SECTION
int _start(unsigned int cmd,
void *src,
void *dst,

View File

@@ -0,0 +1,10 @@
#include "util.h"
TEXT_SECTION
void _start()
{
__asm__("dmb sy");
__asm__("ic iallu");
__asm__("dsb sy");
__asm__("isb");
}

View File

@@ -1,13 +1,16 @@
#include "util.h"
struct sysregs
{
long pt_base;
long evt_base;
};
TEXT_SECTION
struct sysregs _start()
{
struct sysregs res;
__asm__("mrs %0, ttbr1_el1" : "=r" (res.pt_base));
__asm__("mrs %0, ttbr0_el1" : "=r" (res.pt_base));
__asm__("mrs %0, vbar_el1" : "=r" (res.evt_base));
return res;