From 0577e84d374572344bb1cc87c9778357597a3fad Mon Sep 17 00:00:00 2001 From: Thomas Huth Date: Mon, 21 Feb 2022 10:06:47 +0100 Subject: [PATCH 1/7] configure: Disable capstone and slirp in the --without-default-features mode For the users, it looks a little bit weird that capstone and slirp are not disabled automatically if they run the configure script with the "--without-default-features" option, so let's do that now. Note: fdt is *not* changed accordingly since this affects the targets that we can build, so disabling fdt automatically here might have unexpected side-effects for the users. Signed-off-by: Thomas Huth Acked-by: Samuel Thibault Acked-by: Paolo Bonzini Message-Id: <20220221090647.150184-1-thuth@redhat.com> Signed-off-by: Laurent Vivier --- configure | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 3a29eff5cc..36d10d95bb 100755 --- a/configure +++ b/configure @@ -361,9 +361,14 @@ slirp_smbd="$default_feature" # are included in the automatically generated help message) # 1. Track which submodules are needed -capstone="auto" +if test "$default_feature" = no ; then + capstone="disabled" + slirp="disabled" +else + capstone="auto" + slirp="auto" +fi fdt="auto" -slirp="auto" # 2. Support --with/--without option default_devices="true" From 97f33633b1c17875b8605bd323aa1d4aa4db5b01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Sat, 22 Jan 2022 01:10:36 +0100 Subject: [PATCH 2/7] target/avr: Correct AVRCPUClass docstring MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit There is no 'vr' field in AVRCPUClass. Likely a copy/paste typo from CRISCPUClass ;) Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20220122001036.83267-1-f4bug@amsat.org> Signed-off-by: Laurent Vivier --- target/avr/cpu-qom.h | 1 - 1 file changed, 1 deletion(-) diff --git a/target/avr/cpu-qom.h b/target/avr/cpu-qom.h index 9fa6989c18..14e5b3ce72 100644 --- a/target/avr/cpu-qom.h +++ b/target/avr/cpu-qom.h @@ -33,7 +33,6 @@ OBJECT_DECLARE_TYPE(AVRCPU, AVRCPUClass, * AVRCPUClass: * @parent_realize: The parent class' realize handler. * @parent_reset: The parent class' reset handler. - * @vr: Version Register value. * * A AVR CPU model. */ From 7fa6d336b38884680b530817bb78486c8368c6a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Thu, 3 Feb 2022 01:12:52 +0100 Subject: [PATCH 3/7] target/rx: Remove unused ENV_OFFSET definition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The last use of ENV_OFFSET was removed in 5e1401969b ("cpu: Move icount_decr to CPUNegativeOffsetState"); the commit of target/rx came in just afterward. Reviewed-by: Richard Henderson Reviewed-by: Yoshinori Sato Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20220203001252.37982-1-f4bug@amsat.org> Signed-off-by: Laurent Vivier --- target/rx/cpu.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/rx/cpu.h b/target/rx/cpu.h index 657db84ef0..58adf9edf6 100644 --- a/target/rx/cpu.h +++ b/target/rx/cpu.h @@ -116,8 +116,6 @@ struct RXCPU { typedef RXCPU ArchCPU; -#define ENV_OFFSET offsetof(RXCPU, env) - #define RX_CPU_TYPE_SUFFIX "-" TYPE_RX_CPU #define RX_CPU_TYPE_NAME(model) model RX_CPU_TYPE_SUFFIX #define CPU_RESOLVING_TYPE TYPE_RX_CPU From 21b86097f8e318a1878f11428a5f449022b763ad Mon Sep 17 00:00:00 2001 From: Patrick Venture Date: Wed, 19 Jan 2022 13:43:29 -0800 Subject: [PATCH 4/7] hw/nvram: use at24 macro MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use the macro for going from I2CSlave to EEPROMState. Signed-off-by: Patrick Venture Reviewed-by: Philippe Mathieu-Daudé Message-Id: <20220119214329.2557049-1-venture@google.com> Signed-off-by: Laurent Vivier --- hw/nvram/eeprom_at24c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/nvram/eeprom_at24c.c b/hw/nvram/eeprom_at24c.c index af6f5dbb99..da435500ba 100644 --- a/hw/nvram/eeprom_at24c.c +++ b/hw/nvram/eeprom_at24c.c @@ -54,7 +54,7 @@ struct EEPROMState { static int at24c_eeprom_event(I2CSlave *s, enum i2c_event event) { - EEPROMState *ee = container_of(s, EEPROMState, parent_obj); + EEPROMState *ee = AT24C_EE(s); switch (event) { case I2C_START_SEND: From 35aab3032687140d7dee4fb10c5f051e31ef3b6a Mon Sep 17 00:00:00 2001 From: Laurent Vivier Date: Wed, 2 Feb 2022 15:34:22 +0100 Subject: [PATCH 5/7] qemu-options: fix incorrect description for '-drive index=' qemu-options.hx contains grammar that a native English-speaking person would never use. Replace "This option defines where is connected the drive" by "This option defines where the drive is connected". Fixes: https://gitlab.com/qemu-project/qemu/-/issues/853 Signed-off-by: Laurent Vivier Reviewed-by: Thomas Huth Message-Id: <20220202143422.912070-1-lvivier@redhat.com> Signed-off-by: Laurent Vivier --- qemu-options.hx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qemu-options.hx b/qemu-options.hx index ba3ae6a42a..094a6c1d7c 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -1377,7 +1377,7 @@ SRST the bus number and the unit id. ``index=index`` - This option defines where is connected the drive by using an + This option defines where the drive is connected by using an index in the list of available connectors of a given interface type. From eb3cb751c9fbba3ba3dc640ff7f7cb4fe6a55829 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eugenio=20P=C3=A9rez?= Date: Mon, 14 Feb 2022 20:34:15 +0100 Subject: [PATCH 6/7] vdpa: Make ncs autofree MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Simplifying memory management. Signed-off-by: Eugenio Pérez Acked-by: Jason Wang Reviewed-by: Stefano Garzarella Reviewed-by: Philippe Mathieu-Daudé Message-Id: <20220214193415.1606752-2-eperezma@redhat.com> Signed-off-by: Laurent Vivier --- net/vhost-vdpa.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/net/vhost-vdpa.c b/net/vhost-vdpa.c index 25dd6dd975..1e9fe47c03 100644 --- a/net/vhost-vdpa.c +++ b/net/vhost-vdpa.c @@ -263,7 +263,8 @@ int net_init_vhost_vdpa(const Netdev *netdev, const char *name, { const NetdevVhostVDPAOptions *opts; int vdpa_device_fd; - NetClientState **ncs, *nc; + g_autofree NetClientState **ncs = NULL; + NetClientState *nc; int queue_pairs, i, has_cvq = 0; assert(netdev->type == NET_CLIENT_DRIVER_VHOST_VDPA); @@ -301,7 +302,6 @@ int net_init_vhost_vdpa(const Netdev *netdev, const char *name, goto err; } - g_free(ncs); return 0; err: @@ -309,7 +309,6 @@ err: qemu_del_net_client(ncs[0]); } qemu_close(vdpa_device_fd); - g_free(ncs); return -1; } From 1e2d555846226a9e5fb1052fe8ba6f30480f33a9 Mon Sep 17 00:00:00 2001 From: Noah Bergbauer Date: Fri, 26 Nov 2021 15:04:37 +0100 Subject: [PATCH 7/7] hid: Implement support for side and extra buttons Simply set the respective bits and update the descriptor accordingly. Signed-off-by: Noah Bergbauer Acked-by: Gerd Hoffmann Message-Id: <20211126140437.79745-1-noah@statshelix.com> Signed-off-by: Laurent Vivier --- hw/input/hid.c | 2 ++ hw/usb/dev-hid.c | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/hw/input/hid.c b/hw/input/hid.c index 8aab0521f4..e7ecebdf8f 100644 --- a/hw/input/hid.c +++ b/hw/input/hid.c @@ -114,6 +114,8 @@ static void hid_pointer_event(DeviceState *dev, QemuConsole *src, [INPUT_BUTTON_LEFT] = 0x01, [INPUT_BUTTON_RIGHT] = 0x02, [INPUT_BUTTON_MIDDLE] = 0x04, + [INPUT_BUTTON_SIDE] = 0x08, + [INPUT_BUTTON_EXTRA] = 0x10, }; HIDState *hs = (HIDState *)dev; HIDPointerEvent *e; diff --git a/hw/usb/dev-hid.c b/hw/usb/dev-hid.c index 1c7ae97c30..bdd6d1ffaf 100644 --- a/hw/usb/dev-hid.c +++ b/hw/usb/dev-hid.c @@ -461,14 +461,14 @@ static const uint8_t qemu_mouse_hid_report_descriptor[] = { 0xa1, 0x00, /* Collection (Physical) */ 0x05, 0x09, /* Usage Page (Button) */ 0x19, 0x01, /* Usage Minimum (1) */ - 0x29, 0x03, /* Usage Maximum (3) */ + 0x29, 0x05, /* Usage Maximum (5) */ 0x15, 0x00, /* Logical Minimum (0) */ 0x25, 0x01, /* Logical Maximum (1) */ - 0x95, 0x03, /* Report Count (3) */ + 0x95, 0x05, /* Report Count (5) */ 0x75, 0x01, /* Report Size (1) */ 0x81, 0x02, /* Input (Data, Variable, Absolute) */ 0x95, 0x01, /* Report Count (1) */ - 0x75, 0x05, /* Report Size (5) */ + 0x75, 0x03, /* Report Size (3) */ 0x81, 0x01, /* Input (Constant) */ 0x05, 0x01, /* Usage Page (Generic Desktop) */ 0x09, 0x30, /* Usage (X) */