1 /* 2 * Semihosting Stubs for system emulation 3 * 4 * Copyright (c) 2019 Linaro Ltd 5 * 6 * Stubs for system targets that don't actually do semihosting. 7 * 8 * SPDX-License-Identifier: GPL-2.0-or-later 9 */ 10 11 #include "qemu/osdep.h" 12 #include "qemu/option.h" 13 #include "qemu/error-report.h" 14 #include "semihosting/semihost.h" 15 16 /* Empty config */ 17 QemuOptsList qemu_semihosting_config_opts = { 18 .name = "", 19 .head = QTAILQ_HEAD_INITIALIZER(qemu_semihosting_config_opts.head), 20 .desc = { 21 { /* end of list */ } 22 }, 23 }; 24 25 /* Queries to config status default to off */ 26 bool semihosting_enabled(bool is_user) 27 { 28 return false; 29 } 30 31 /* 32 * All the rest are empty subs. We could g_assert_not_reached() but 33 * that adds extra weight to the final binary. Waste not want not. 34 */ 35 void qemu_semihosting_enable(void) 36 { 37 } 38 39 int qemu_semihosting_config_options(const char *optstr) 40 { 41 return 1; 42 } 43 44 const char *semihosting_get_arg(int i) 45 { 46 return NULL; 47 } 48 49 int semihosting_get_argc(void) 50 { 51 return 0; 52 } 53 54 const char *semihosting_get_cmdline(void) 55 { 56 return NULL; 57 } 58 59 void semihosting_arg_fallback(const char *file, const char *cmd) 60 { 61 } 62 63 void qemu_semihosting_chardev_init(void) 64 { 65 } 66