cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

semihost.c (1301B)


      1/*
      2 * Semihosting Stubs for SoftMMU
      3 *
      4 * Copyright (c) 2019 Linaro Ltd
      5 *
      6 * Stubs for SoftMMU 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 */
     17QemuOptsList 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 */
     26bool semihosting_enabled(void)
     27{
     28    return false;
     29}
     30
     31SemihostingTarget semihosting_get_target(void)
     32{
     33    return SEMIHOSTING_TARGET_AUTO;
     34}
     35
     36/*
     37 * All the rest are empty subs. We could g_assert_not_reached() but
     38 * that adds extra weight to the final binary. Waste not want not.
     39 */
     40void qemu_semihosting_enable(void)
     41{
     42}
     43
     44int qemu_semihosting_config_options(const char *optarg)
     45{
     46    return 1;
     47}
     48
     49const char *semihosting_get_arg(int i)
     50{
     51    return NULL;
     52}
     53
     54int semihosting_get_argc(void)
     55{
     56    return 0;
     57}
     58
     59const char *semihosting_get_cmdline(void)
     60{
     61    return NULL;
     62}
     63
     64void semihosting_arg_fallback(const char *file, const char *cmd)
     65{
     66}
     67
     68void qemu_semihosting_connect_chardevs(void)
     69{
     70}
     71
     72void qemu_semihosting_console_init(void)
     73{
     74}