Some execution fixes
This commit is contained in:
@@ -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,
|
||||
|
||||
10
checkm8_payloads/src/sync.c
Normal file
10
checkm8_payloads/src/sync.c
Normal file
@@ -0,0 +1,10 @@
|
||||
#include "util.h"
|
||||
|
||||
TEXT_SECTION
|
||||
void _start()
|
||||
{
|
||||
__asm__("dmb sy");
|
||||
__asm__("ic iallu");
|
||||
__asm__("dsb sy");
|
||||
__asm__("isb");
|
||||
}
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user