thunderx_svc.h 1.3 KB

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