mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
Merge remote-tracking branch 'remotes/huth-gitlab/tags/pull-request-2019-01-22' into staging
- Use more CONFIG Makefile switches for qtests - Get rid of global_qtests in some more qtests - typedef cleanups - Fixes for compiling with Clang - Force C standard to gnu99 - Don't use -nographic in qtests # gpg: Signature made Tue 22 Jan 2019 06:18:41 GMT # gpg: using RSA key 2ED9D774FE702DB5 # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" # gpg: aka "Thomas Huth <thuth@redhat.com>" # gpg: aka "Thomas Huth <huth@tuxfamily.org>" # gpg: aka "Thomas Huth <th.huth@posteo.de>" # Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5 * remotes/huth-gitlab/tags/pull-request-2019-01-22: (26 commits) tests: remove rule for nonexisting qdev-monitor-test tests/hexloader-test: Don't pass -nographic to the QEMU under test configure: Force the C standard to gnu99 seccomp: Work-around GCC 4.x bug in gnu99 mode block: Work-around a bug in libiscsi 1.9.0 when used in gnu99 mode linux-user: Fix compilation with clang 3.4 virtio-net: Fix VirtIONet typedef redefinition ppc: Fix duplicated typedefs to be able to compile with Clang in gnu99 mode ppc: Move spapr-related prototypes from xics.h into a seperate header file ui/console: Remove PixelFormat from qemu/typedefs.h ui/console: Remove MouseTransformInfo from qemu/typedefs.h ui/console: Remove DisplayState/DisplaySurface from "qemu/typedefs.h" ui/console: Remove QemuDmaBuf from "qemu/typedefs.h" audio: Remove AudioState from "qemu/typedefs.h" hw/i386: Remove PCMachineClass from "qemu/typedefs.h" hw/char/serial: Remove SerialState from "qemu/typedefs.h" hw/bt: Remove HCIInfo from "qemu/typedefs.h" hw/i2c/smbus: Remove SMBusDevice from "qemu/typedefs.h" hw/ide/ahci: Remove AllwinnerAHCIState from "qemu/typedefs.h" hw/pcmcia: Remove PCMCIACardState from "qemu/typedefs.h" ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
+2
-2
@@ -191,7 +191,7 @@ struct SWVoiceCap {
|
||||
QLIST_ENTRY (SWVoiceCap) entries;
|
||||
};
|
||||
|
||||
struct AudioState {
|
||||
typedef struct AudioState {
|
||||
struct audio_driver *drv;
|
||||
void *drv_opaque;
|
||||
|
||||
@@ -203,7 +203,7 @@ struct AudioState {
|
||||
int nb_hw_voices_out;
|
||||
int nb_hw_voices_in;
|
||||
int vm_running;
|
||||
};
|
||||
} AudioState;
|
||||
|
||||
extern const struct mixeng_volume nominal_volume;
|
||||
|
||||
|
||||
@@ -49,7 +49,9 @@
|
||||
/* Conflict between scsi/utils.h and libiscsi! :( */
|
||||
#define SCSI_XFER_NONE ISCSI_XFER_NONE
|
||||
#include <iscsi/iscsi.h>
|
||||
#define inline __attribute__((gnu_inline)) /* required for libiscsi v1.9.0 */
|
||||
#include <iscsi/scsi-lowlevel.h>
|
||||
#undef inline
|
||||
#undef SCSI_XFER_NONE
|
||||
QEMU_BUILD_BUG_ON((int)SCSI_XFER_NONE != (int)ISCSI_XFER_NONE);
|
||||
|
||||
|
||||
@@ -107,6 +107,9 @@ update_cxxflags() {
|
||||
-Wstrict-prototypes|-Wmissing-prototypes|-Wnested-externs|\
|
||||
-Wold-style-declaration|-Wold-style-definition|-Wredundant-decls)
|
||||
;;
|
||||
-std=gnu99)
|
||||
QEMU_CXXFLAGS=${QEMU_CXXFLAGS:+$QEMU_CXXFLAGS }"-std=gnu++98"
|
||||
;;
|
||||
*)
|
||||
QEMU_CXXFLAGS=${QEMU_CXXFLAGS:+$QEMU_CXXFLAGS }$arg
|
||||
;;
|
||||
@@ -584,7 +587,7 @@ ARFLAGS="${ARFLAGS-rv}"
|
||||
# left shift of signed integers is well defined and has the expected
|
||||
# 2s-complement style results. (Both clang and gcc agree that it
|
||||
# provides these semantics.)
|
||||
QEMU_CFLAGS="-fno-strict-aliasing -fno-common -fwrapv $QEMU_CFLAGS"
|
||||
QEMU_CFLAGS="-fno-strict-aliasing -fno-common -fwrapv -std=gnu99 $QEMU_CFLAGS"
|
||||
QEMU_CFLAGS="-Wall -Wundef -Wwrite-strings -Wmissing-prototypes $QEMU_CFLAGS"
|
||||
QEMU_CFLAGS="-Wstrict-prototypes -Wredundant-decls $QEMU_CFLAGS"
|
||||
QEMU_CFLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE $QEMU_CFLAGS"
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "sysemu/kvm.h"
|
||||
#include "hw/ppc/spapr.h"
|
||||
#include "hw/ppc/xics.h"
|
||||
#include "hw/ppc/xics_spapr.h"
|
||||
#include "kvm_ppc.h"
|
||||
#include "qemu/config-file.h"
|
||||
#include "qemu/error-report.h"
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "qemu/timer.h"
|
||||
#include "hw/ppc/spapr.h"
|
||||
#include "hw/ppc/xics.h"
|
||||
#include "hw/ppc/xics_spapr.h"
|
||||
#include "hw/ppc/fdt.h"
|
||||
#include "qapi/visitor.h"
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#include "hw/ppc/spapr.h"
|
||||
#include "hw/ppc/spapr_xive.h"
|
||||
#include "hw/ppc/xics.h"
|
||||
#include "hw/ppc/xics_spapr.h"
|
||||
#include "sysemu/kvm.h"
|
||||
|
||||
#include "trace.h"
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
#include "exec/memory.h"
|
||||
#include "target/arm/cpu-qom.h"
|
||||
#include "hw/pcmcia.h"
|
||||
|
||||
/* Interrupt numbers */
|
||||
# define PXA2XX_PIC_SSP3 0
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
#define UART_FIFO_LENGTH 16 /* 16550A Fifo Length */
|
||||
|
||||
struct SerialState {
|
||||
typedef struct SerialState {
|
||||
uint16_t divider;
|
||||
uint8_t rbr; /* receive register */
|
||||
uint8_t thr; /* transmit holding register */
|
||||
@@ -77,7 +77,7 @@ struct SerialState {
|
||||
|
||||
QEMUTimer *modem_status_poll;
|
||||
MemoryRegion io;
|
||||
};
|
||||
} SerialState;
|
||||
|
||||
extern const VMStateDescription vmstate_serial;
|
||||
extern const MemoryRegionOps serial_io_ops;
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
/* Devices that have nowhere better to go. */
|
||||
|
||||
#include "hw/hw.h"
|
||||
#include "ui/console.h"
|
||||
|
||||
/* smc91c111.c */
|
||||
void smc91c111_init(NICInfo *, uint32_t, qemu_irq);
|
||||
|
||||
@@ -35,6 +35,8 @@
|
||||
#define SMBUS_DEVICE_GET_CLASS(obj) \
|
||||
OBJECT_GET_CLASS(SMBusDeviceClass, (obj), TYPE_SMBUS_DEVICE)
|
||||
|
||||
typedef struct SMBusDevice SMBusDevice;
|
||||
|
||||
typedef struct SMBusDeviceClass
|
||||
{
|
||||
I2CSlaveClass parent_class;
|
||||
|
||||
@@ -96,7 +96,7 @@ struct PCMachineState {
|
||||
* way we can use 1GByte pages in the host.
|
||||
*
|
||||
*/
|
||||
struct PCMachineClass {
|
||||
typedef struct PCMachineClass {
|
||||
/*< private >*/
|
||||
MachineClass parent_class;
|
||||
|
||||
@@ -133,7 +133,7 @@ struct PCMachineClass {
|
||||
|
||||
/* use DMA capable linuxboot option rom */
|
||||
bool linuxboot_dma_enabled;
|
||||
};
|
||||
} PCMachineClass;
|
||||
|
||||
#define TYPE_PC_MACHINE "generic-pc-machine"
|
||||
#define PC_MACHINE(obj) \
|
||||
|
||||
@@ -73,13 +73,13 @@ typedef struct SysbusAHCIState {
|
||||
#define ALLWINNER_AHCI_MMIO_OFF 0x80
|
||||
#define ALLWINNER_AHCI_MMIO_SIZE 0x80
|
||||
|
||||
struct AllwinnerAHCIState {
|
||||
typedef struct AllwinnerAHCIState {
|
||||
/*< private >*/
|
||||
SysbusAHCIState parent_obj;
|
||||
/*< public >*/
|
||||
|
||||
MemoryRegion mmio;
|
||||
uint32_t regs[ALLWINNER_AHCI_MMIO_SIZE/4];
|
||||
};
|
||||
} AllwinnerAHCIState;
|
||||
|
||||
#endif /* HW_IDE_AHCI_H */
|
||||
|
||||
@@ -31,6 +31,8 @@
|
||||
#define PS2_MOUSE_BUTTON_SIDE 0x08
|
||||
#define PS2_MOUSE_BUTTON_EXTRA 0x10
|
||||
|
||||
typedef struct PS2State PS2State;
|
||||
|
||||
/* ps2.c */
|
||||
void *ps2_kbd_init(void (*update_irq)(void *, int), void *update_arg);
|
||||
void *ps2_mouse_init(void (*update_irq)(void *, int), void *update_arg);
|
||||
|
||||
+2
-2
@@ -18,13 +18,13 @@ typedef struct PCMCIASocket {
|
||||
#define PCMCIA_CARD_CLASS(cls) \
|
||||
OBJECT_CLASS_CHECK(PCMCIACardClass, cls, TYPE_PCMCIA_CARD)
|
||||
|
||||
struct PCMCIACardState {
|
||||
typedef struct PCMCIACardState {
|
||||
/*< private >*/
|
||||
DeviceState parent_obj;
|
||||
/*< public >*/
|
||||
|
||||
PCMCIASocket *slot;
|
||||
};
|
||||
} PCMCIACardState;
|
||||
|
||||
typedef struct PCMCIACardClass {
|
||||
/*< private >*/
|
||||
|
||||
@@ -8,15 +8,16 @@
|
||||
#include "hw/mem/pc-dimm.h"
|
||||
#include "hw/ppc/spapr_ovec.h"
|
||||
#include "hw/ppc/spapr_irq.h"
|
||||
#include "hw/ppc/spapr_xive.h" /* For sPAPRXive */
|
||||
#include "hw/ppc/xics.h" /* For ICSState */
|
||||
|
||||
struct VIOsPAPRBus;
|
||||
struct sPAPRPHBState;
|
||||
struct sPAPRNVRAM;
|
||||
|
||||
typedef struct sPAPREventLogEntry sPAPREventLogEntry;
|
||||
typedef struct sPAPREventSource sPAPREventSource;
|
||||
typedef struct sPAPRPendingHPT sPAPRPendingHPT;
|
||||
typedef struct ICSState ICSState;
|
||||
typedef struct sPAPRXive sPAPRXive;
|
||||
|
||||
#define HPTE64_V_HPTE_DIRTY 0x0000000000000040ULL
|
||||
#define SPAPR_ENTRY_POINT 0x100
|
||||
|
||||
@@ -41,8 +41,6 @@ bool spapr_xive_irq_claim(sPAPRXive *xive, uint32_t lisn, bool lsi);
|
||||
bool spapr_xive_irq_free(sPAPRXive *xive, uint32_t lisn);
|
||||
void spapr_xive_pic_print_info(sPAPRXive *xive, Monitor *mon);
|
||||
|
||||
typedef struct sPAPRMachineState sPAPRMachineState;
|
||||
|
||||
void spapr_xive_hcall_init(sPAPRMachineState *spapr);
|
||||
void spapr_dt_xive(sPAPRMachineState *spapr, uint32_t nr_servers, void *fdt,
|
||||
uint32_t phandle);
|
||||
|
||||
@@ -200,13 +200,6 @@ void ics_pic_print_info(ICSState *ics, Monitor *mon);
|
||||
void ics_resend(ICSState *ics);
|
||||
void icp_resend(ICPState *ss);
|
||||
|
||||
typedef struct sPAPRMachineState sPAPRMachineState;
|
||||
|
||||
void spapr_dt_xics(sPAPRMachineState *spapr, uint32_t nr_servers, void *fdt,
|
||||
uint32_t phandle);
|
||||
int xics_kvm_init(sPAPRMachineState *spapr, Error **errp);
|
||||
void xics_spapr_init(sPAPRMachineState *spapr);
|
||||
|
||||
Object *icp_create(Object *cpu, const char *type, XICSFabric *xi,
|
||||
Error **errp);
|
||||
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* QEMU PowerPC pSeries Logical Partition (aka sPAPR) hardware System Emulator
|
||||
*
|
||||
* PAPR Virtualized Interrupt System, aka ICS/ICP aka xics
|
||||
*
|
||||
* Copyright (c) 2010, 2011 David Gibson, IBM Corporation.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef XICS_SPAPR_H
|
||||
#define XICS_SPAPR_H
|
||||
|
||||
#include "hw/ppc/spapr.h"
|
||||
|
||||
void spapr_dt_xics(sPAPRMachineState *spapr, uint32_t nr_servers, void *fdt,
|
||||
uint32_t phandle);
|
||||
int xics_kvm_init(sPAPRMachineState *spapr, Error **errp);
|
||||
void xics_spapr_init(sPAPRMachineState *spapr);
|
||||
|
||||
#endif /* XICS_SPAPR_H */
|
||||
@@ -106,7 +106,6 @@ typedef struct VirtioNetRscSeg {
|
||||
NetClientState *nc;
|
||||
} VirtioNetRscSeg;
|
||||
|
||||
struct VirtIONet;
|
||||
typedef struct VirtIONet VirtIONet;
|
||||
|
||||
/* Chain is divided by protocol(ipv4/v6) and NetClientInfo */
|
||||
@@ -136,7 +135,7 @@ typedef struct VirtIONetQueue {
|
||||
struct VirtIONet *n;
|
||||
} VirtIONetQueue;
|
||||
|
||||
typedef struct VirtIONet {
|
||||
struct VirtIONet {
|
||||
VirtIODevice parent_obj;
|
||||
uint8_t mac[ETH_ALEN];
|
||||
uint16_t status;
|
||||
@@ -186,7 +185,7 @@ typedef struct VirtIONet {
|
||||
int announce_counter;
|
||||
bool needs_vnet_hdr_swap;
|
||||
bool mtu_bypass_backend;
|
||||
} VirtIONet;
|
||||
};
|
||||
|
||||
void virtio_net_set_netclient_name(VirtIONet *n, const char *name,
|
||||
const char *type);
|
||||
|
||||
@@ -113,6 +113,10 @@
|
||||
#define GCC_FMT_ATTR(n, m)
|
||||
#endif
|
||||
|
||||
#ifndef __has_warning
|
||||
#define __has_warning(x) 0 /* compatibility with non-clang compilers */
|
||||
#endif
|
||||
|
||||
#ifndef __has_feature
|
||||
#define __has_feature(x) 0 /* compatibility with non-clang compilers */
|
||||
#endif
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user