5837db4650
Since the semihosting stubs are needed exactly when the Kconfig symbols are not needed, move them to semihosting/ and conditionalize them on CONFIG_SEMIHOSTING and/or CONFIG_SYSTEM_ONLY. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-ID: <20240408155330.522792-13-pbonzini@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
66 lines
1.2 KiB
C
66 lines
1.2 KiB
C
/*
|
|
* Semihosting Stubs for system emulation
|
|
*
|
|
* Copyright (c) 2019 Linaro Ltd
|
|
*
|
|
* Stubs for system targets that don't actually do semihosting.
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
|
*/
|
|
|
|
#include "qemu/osdep.h"
|
|
#include "qemu/option.h"
|
|
#include "qemu/error-report.h"
|
|
#include "semihosting/semihost.h"
|
|
|
|
/* Empty config */
|
|
QemuOptsList qemu_semihosting_config_opts = {
|
|
.name = "",
|
|
.head = QTAILQ_HEAD_INITIALIZER(qemu_semihosting_config_opts.head),
|
|
.desc = {
|
|
{ /* end of list */ }
|
|
},
|
|
};
|
|
|
|
/* Queries to config status default to off */
|
|
bool semihosting_enabled(bool is_user)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
/*
|
|
* All the rest are empty subs. We could g_assert_not_reached() but
|
|
* that adds extra weight to the final binary. Waste not want not.
|
|
*/
|
|
void qemu_semihosting_enable(void)
|
|
{
|
|
}
|
|
|
|
int qemu_semihosting_config_options(const char *optstr)
|
|
{
|
|
return 1;
|
|
}
|
|
|
|
const char *semihosting_get_arg(int i)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
int semihosting_get_argc(void)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
const char *semihosting_get_cmdline(void)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
void semihosting_arg_fallback(const char *file, const char *cmd)
|
|
{
|
|
}
|
|
|
|
void qemu_semihosting_chardev_init(void)
|
|
{
|
|
}
|