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