L4Re - L4 Runtime Environment
arm_smccc
1 // vi:set ft=cpp: -*- Mode: C++ -*-
2 /*
3  * Copyright (C) 2018 Kernkonzept GmbH.
4  * Author(s): Sarah Hoffmann <sarah.hoffmann@kernkonzept.com>
5  *
6  * This file is distributed under the terms of the GNU General Public
7  * License, version 2. Please see the COPYING-GPL-2 file for details.
8  */
9 #pragma once
10 
11 #include <l4/sys/capability>
12 #include <l4/sys/cxx/ipc_iface>
13 
14 namespace L4 {
15 
20 class L4_EXPORT Arm_smccc : public Kobject_0t<Arm_smccc, L4_PROTO_SMCCC>
21 {
22 public:
30  (l4_umword_t func, l4_umword_t in0, l4_umword_t in1,
31  l4_umword_t in2, l4_umword_t in3, l4_umword_t in4,
32  l4_umword_t in5, l4_umword_t *out0, l4_umword_t *out1,
33  l4_umword_t *out2, l4_umword_t *out3,
34  l4_umword_t client_id));
35 
37 };
38 
39 }
L4 low-level kernel interface.
L4::Cap related definitions.
List of RPCs of an interface using a single operation without an opcode.
Definition: __typeinfo.h:464
#define L4_INLINE_RPC(res, name, args, attr...)
Define an inline RPC call (type and callable).
Definition: ipc_iface:458
unsigned long l4_umword_t
Unsigned machine word.
Definition: l4int.h:52
Interface Definition Language.
Message tag data structure.
Definition: types.h:159
Wrapper for function calls that follow the ARM SMC/HVC calling convention.
Definition: arm_smccc:20