1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 2900f88f3SSergey Temerkhanov /** 3900f88f3SSergey Temerkhanov * (C) Copyright 2014, Cavium Inc. 4900f88f3SSergey Temerkhanov **/ 5900f88f3SSergey Temerkhanov 6900f88f3SSergey Temerkhanov #ifndef __THUNDERX_SVC_H__ 7900f88f3SSergey Temerkhanov #define __THUNDERX_SVC_H__ 8900f88f3SSergey Temerkhanov 9900f88f3SSergey Temerkhanov /* SMC function IDs for general purpose queries */ 10900f88f3SSergey Temerkhanov 11900f88f3SSergey Temerkhanov #define THUNDERX_SVC_CALL_COUNT 0x4300ff00 12900f88f3SSergey Temerkhanov #define THUNDERX_SVC_UID 0x4300ff01 13900f88f3SSergey Temerkhanov 14900f88f3SSergey Temerkhanov #define THUNDERX_SVC_VERSION 0x4300ff03 15900f88f3SSergey Temerkhanov 16900f88f3SSergey Temerkhanov #define ARM_STD_SVC_VERSION 0x8400ff03 17900f88f3SSergey Temerkhanov 18900f88f3SSergey Temerkhanov /* ThunderX Service Calls version numbers */ 19900f88f3SSergey Temerkhanov #define THUNDERX_VERSION_MAJOR 0x0 20900f88f3SSergey Temerkhanov #define THUNDERX_VERSION_MINOR 0x1 21900f88f3SSergey Temerkhanov 22900f88f3SSergey Temerkhanov #define THUNDERX_MMC_READ 0x43000101 23900f88f3SSergey Temerkhanov /* x1 - block address 24900f88f3SSergey Temerkhanov * x2 - size 25900f88f3SSergey Temerkhanov * x3 - buffer address 26900f88f3SSergey Temerkhanov */ 27900f88f3SSergey Temerkhanov #define THUNDERX_MMC_WRITE 0x43000102 28900f88f3SSergey Temerkhanov /* x1 - block address 29900f88f3SSergey Temerkhanov * x2 - size 30900f88f3SSergey Temerkhanov * x3 - buffer address 31900f88f3SSergey Temerkhanov */ 32900f88f3SSergey Temerkhanov 33900f88f3SSergey Temerkhanov #define THUNDERX_NOR_READ 0x43000111 34900f88f3SSergey Temerkhanov /* x1 - block address 35900f88f3SSergey Temerkhanov * x2 - size 36900f88f3SSergey Temerkhanov * x3 - buffer address 37900f88f3SSergey Temerkhanov */ 38900f88f3SSergey Temerkhanov #define THUNDERX_NOR_WRITE 0x43000112 39900f88f3SSergey Temerkhanov /* x1 - block address 40900f88f3SSergey Temerkhanov * x2 - size 41900f88f3SSergey Temerkhanov * x3 - buffer address 42900f88f3SSergey Temerkhanov */ 43900f88f3SSergey Temerkhanov #define THUNDERX_NOR_ERASE 0x43000113 44900f88f3SSergey Temerkhanov /* x1 - block address 45900f88f3SSergey Temerkhanov */ 46900f88f3SSergey Temerkhanov 47900f88f3SSergey Temerkhanov #define THUNDERX_PART_COUNT 0x43000201 48900f88f3SSergey Temerkhanov #define THUNDERX_GET_PART 0x43000202 49900f88f3SSergey Temerkhanov /* x1 - pointer to the buffer 50900f88f3SSergey Temerkhanov * x2 - index 51900f88f3SSergey Temerkhanov */ 52900f88f3SSergey Temerkhanov 53900f88f3SSergey Temerkhanov #define THUNDERX_DRAM_SIZE 0x43000301 54900f88f3SSergey Temerkhanov /* x1 - node number 55900f88f3SSergey Temerkhanov */ 56900f88f3SSergey Temerkhanov 57900f88f3SSergey Temerkhanov #define THUNDERX_GTI_SYNC 0x43000401 58900f88f3SSergey Temerkhanov 59900f88f3SSergey Temerkhanov #define THUNDERX_ENV_COUNT 0x43000501 60900f88f3SSergey Temerkhanov #define THUNDERX_ENV_STRING 0x43000502 61900f88f3SSergey Temerkhanov /* x1 - index 62900f88f3SSergey Temerkhanov */ 63900f88f3SSergey Temerkhanov 64900f88f3SSergey Temerkhanov #define THUNDERX_NODE_COUNT 0x43000601 65900f88f3SSergey Temerkhanov 66900f88f3SSergey Temerkhanov #endif /* __THUNDERX_SVC_H__ */ 67