blob: f683646fa3ecf2ba0133b0a2b7ecd21bec766941 [file] [log] [blame]
Imre Kis2cfb2b42021-12-15 19:15:42 +01001// SPDX-License-Identifier: BSD-3-Clause
2/*
Imre Kisd47a1452024-05-29 14:25:59 +02003 * Copyright (c) 2021-2024, Arm Limited and Contributors. All rights reserved.
Imre Kis2cfb2b42021-12-15 19:15:42 +01004 */
5
6#include <stddef.h>
7#include <stdint.h>
8#include "compiler.h"
Imre Kis2cfb2b42021-12-15 19:15:42 +01009#include "sp_api.h"
10
11/*
12 * According to the FF-A specification an optional initialization descriptor can
13 * be passed to the SP in w0/x0-w3/x3 registers (a0-a3 parameters). As the exact
14 * register is implementation defined the first four registers are forwarded to
15 * the user code.
16 */
17void __noreturn _sp_entry(uintptr_t a0, uintptr_t a1,
18 uintptr_t a2, uintptr_t a3);
19void __noreturn _sp_entry(uintptr_t a0, uintptr_t a1,
20 uintptr_t a2, uintptr_t a3)
21{
22 (void)a1;
23 (void)a2;
24 (void)a3;
25
Balint Dobszay4f9d8e32023-04-13 13:55:08 +020026 sp_main((union ffa_boot_info *)a0);
Imre Kis2cfb2b42021-12-15 19:15:42 +010027}