Samsung Internal API reference  2.0
smc.h
1 /*
2  * Copyright (C) 2012-2018, Samsung Electronics Co., Ltd.
3  *
4  * SMC interface driver
5  */
6 
7 #pragma once
8 
9 #include <core/types.h>
10 #include <arch/smc.h>
11 
12 /* ioctl() operations */
13 #define SMC_COMMAND 0
14 
18 struct smc_data {
19  uint64_t arg_types;
20  struct smc_args args;
21 };
22 
23 enum {
24  SMC_ARG_TYPE_NONE = 0,
25  SMC_ARG_TYPE_VALUE,
26  SMC_ARG_TYPE_ADDR,
27  SMC_ARG_TYPE_SIZE,
28 };
29 
30 #define SMC_ARG_TYPES(t0, t1, t2, t3, t4, t5, t6) \
31  ((t0) | ((t1) << 2) | ((t2) << 4) | ((t3) << 6) | \
32  ((t4) << 8) | ((t5) << 10) | ((t6) << 12))
33 
34 #define SMC_ARG_TYPE_GET(t, i) (((t) >> (i * 2)) & 0x3)
struct smc_args args
Definition: smc.h:20
uint64_t arg_types
Definition: smc.h:19
SMC command description.
Definition: smc.h:18