aboutsummaryrefslogtreecommitdiffstats
path: root/include/lib
diff options
context:
space:
mode:
authorAndrew Walbran <qwandor@google.com>2020-01-15 14:18:04 +0000
committerAndrew Walbran <qwandor@google.com>2020-01-23 10:53:45 +0000
commit61cbd41d7914032d3df1e49c1c1efbe2f9cb4c39 (patch)
tree098a6a62f44b17b68c6e888f62ea6da6c30b80f0 /include/lib
parent74464d5b51954b500a1a656539a88a58e70d9b8a (diff)
downloadplatform_external_arm-trusted-firmware-61cbd41d7914032d3df1e49c1c1efbe2f9cb4c39.tar.gz
platform_external_arm-trusted-firmware-61cbd41d7914032d3df1e49c1c1efbe2f9cb4c39.tar.bz2
platform_external_arm-trusted-firmware-61cbd41d7914032d3df1e49c1c1efbe2f9cb4c39.zip
qemu: Implement qemu_system_off via semihosting.
This makes the PSCI SYSTEM_OFF call work on QEMU. It assumes that QEMU has semihosting enabled, but that is already assumed by the image loader. Signed-off-by: Andrew Walbran <qwandor@google.com> Change-Id: I0fb7cf7909262b675c3143efeac07f4d60730b03
Diffstat (limited to 'include/lib')
-rw-r--r--include/lib/semihosting.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/lib/semihosting.h b/include/lib/semihosting.h
index 006c7b750..24b030cfd 100644
--- a/include/lib/semihosting.h
+++ b/include/lib/semihosting.h
@@ -23,6 +23,7 @@
#define SEMIHOSTING_SYS_REMOVE 0x0E
#define SEMIHOSTING_SYS_SYSTEM 0x12
#define SEMIHOSTING_SYS_ERRNO 0x13
+#define SEMIHOSTING_SYS_EXIT 0x18
#define FOPEN_MODE_R 0x0
#define FOPEN_MODE_RB 0x1
@@ -54,5 +55,6 @@ long semihosting_download_file(const char *file_name,
void semihosting_write_char(char character);
void semihosting_write_string(char *string);
char semihosting_read_char(void);
+void semihosting_exit(uint32_t reason, uint32_t subcode);
#endif /* SEMIHOSTING_H */