1 /**
2  * (C) Copyright 2014, Cavium Inc.
3  *
4  * SPDX-License-Identifier:	GPL-2.0+
5 **/
6 
7 #ifndef __THUNDERX_SVC_H__
8 #define __THUNDERX_SVC_H__
9 
10 /* SMC function IDs for general purpose queries */
11 
12 #define THUNDERX_SVC_CALL_COUNT		0x4300ff00
13 #define THUNDERX_SVC_UID		0x4300ff01
14 
15 #define THUNDERX_SVC_VERSION		0x4300ff03
16 
17 #define ARM_STD_SVC_VERSION		0x8400ff03
18 
19 /* ThunderX Service Calls version numbers */
20 #define THUNDERX_VERSION_MAJOR	0x0
21 #define THUNDERX_VERSION_MINOR	0x1
22 
23 #define THUNDERX_MMC_READ		0x43000101
24 /* x1 - block address
25  * x2 - size
26  * x3 - buffer address
27  */
28 #define THUNDERX_MMC_WRITE		0x43000102
29 /* x1 - block address
30  * x2 - size
31  * x3 - buffer address
32  */
33 
34 #define THUNDERX_NOR_READ		0x43000111
35 /* x1 - block address
36  * x2 - size
37  * x3 - buffer address
38  */
39 #define THUNDERX_NOR_WRITE		0x43000112
40 /* x1 - block address
41  * x2 - size
42  * x3 - buffer address
43  */
44 #define THUNDERX_NOR_ERASE		0x43000113
45 /* x1 - block address
46  */
47 
48 #define THUNDERX_PART_COUNT		0x43000201
49 #define THUNDERX_GET_PART		0x43000202
50 /* x1 - pointer to the buffer
51  * x2 - index
52  */
53 
54 #define THUNDERX_DRAM_SIZE		0x43000301
55 /* x1 - node number
56  */
57 
58 #define THUNDERX_GTI_SYNC		0x43000401
59 
60 #define THUNDERX_ENV_COUNT		0x43000501
61 #define THUNDERX_ENV_STRING		0x43000502
62 /* x1 - index
63  */
64 
65 #define THUNDERX_NODE_COUNT		0x43000601
66 
67 #endif /* __THUNDERX_SVC_H__ */
68