Some updates to payload_aes_busy structure, call AES_HW_CRYPTO_CMD with correct arg data types
This commit is contained in:
@@ -11,9 +11,12 @@ endif()
|
|||||||
|
|
||||||
set(CMAKE_C_FLAGS "-nostdlib -O")
|
set(CMAKE_C_FLAGS "-nostdlib -O")
|
||||||
|
|
||||||
set(PAYLOADS payload_sync payload_aes payload_sysreg)
|
set(PAYLOADS payload_sync payload_aes payload_sysreg payload_aes_busy)
|
||||||
add_executable(payload_sync src/sync.c)
|
add_executable(payload_sync src/sync.c)
|
||||||
|
|
||||||
add_executable(payload_aes src/aes.c)
|
add_executable(payload_aes src/aes.c)
|
||||||
|
add_executable(payload_aes_busy src/aes_busy.c)
|
||||||
|
|
||||||
add_executable(payload_sysreg src/sysreg.c)
|
add_executable(payload_sysreg src/sysreg.c)
|
||||||
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin/)
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin/)
|
||||||
|
|||||||
@@ -3,7 +3,14 @@
|
|||||||
|
|
||||||
#include "brfunc_common.h"
|
#include "brfunc_common.h"
|
||||||
|
|
||||||
#define AES_HW_CRYPTO_CMD ((BOOTROM_FUNC) ADDR_AES_HW_CRYPTO_CMD)
|
PAYLOAD_SECTION
|
||||||
|
int aes_hw_crypto_cmd(unsigned long long cmd,
|
||||||
|
unsigned char *src, unsigned char *dst,
|
||||||
|
int len, unsigned long long opts,
|
||||||
|
unsigned char *key, unsigned char *iv)
|
||||||
|
{
|
||||||
|
return ((BOOTROM_FUNC) ADDR_AES_HW_CRYPTO_CMD)(cmd, src, dst, len, opts, key, iv);
|
||||||
|
}
|
||||||
|
|
||||||
#define CREATE_KEY_COMMAND ((BOOTROM_FUNC) ADDR_CREATE_KEY_COMMAND)
|
#define CREATE_KEY_COMMAND ((BOOTROM_FUNC) ADDR_CREATE_KEY_COMMAND)
|
||||||
#define PUSH_COMMAND_KEY ((BOOTROM_FUNC) ADDR_PUSH_COMMAND_KEY)
|
#define PUSH_COMMAND_KEY ((BOOTROM_FUNC) ADDR_PUSH_COMMAND_KEY)
|
||||||
|
|||||||
22
c8_payloads/src/aes_busy.c
Normal file
22
c8_payloads/src/aes_busy.c
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#include "util.h"
|
||||||
|
#include "brfunc_aes.h"
|
||||||
|
|
||||||
|
|
||||||
|
TEXT_SECTION
|
||||||
|
int _start(void *src, void *dst, void *key, int rep)
|
||||||
|
{
|
||||||
|
int i, j;
|
||||||
|
unsigned char src_data[16];
|
||||||
|
for(j = 0; j < 16; j++)
|
||||||
|
{
|
||||||
|
src_data[j] = ((unsigned char *) src)[j];
|
||||||
|
}
|
||||||
|
|
||||||
|
for(i = 0; i < rep; i++)
|
||||||
|
{
|
||||||
|
if(i % 2 == 0) aes_hw_crypto_cmd(16, src_data, dst, 16, 0, key, 0);
|
||||||
|
else aes_hw_crypto_cmd(16, dst, src_data, 16, 0, key, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user