mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 08:13:54 -06:00
usb: add support for microsoft os descriptors
This patch adds support for special usb descriptors used by microsoft windows. They allow more fine-grained control over driver binding and adding entries to the registry for configuration. As this is a guest-visible change the "msos-desc" compat property has been added to turn this off for 1.7 + older Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
1cf892ca26
commit
5319dc7b42
9 changed files with 297 additions and 6 deletions
|
@ -241,6 +241,7 @@ uint16_t pvpanic_port(void);
|
|||
int e820_add_entry(uint64_t, uint64_t, uint32_t);
|
||||
|
||||
#define PC_Q35_COMPAT_1_7 \
|
||||
PC_COMPAT_1_7, \
|
||||
{\
|
||||
.driver = "hpet",\
|
||||
.property = HPET_INTCAP,\
|
||||
|
@ -259,7 +260,15 @@ int e820_add_entry(uint64_t, uint64_t, uint32_t);
|
|||
PC_COMPAT_1_4, \
|
||||
PC_Q35_COMPAT_1_5
|
||||
|
||||
#define PC_COMPAT_1_7 \
|
||||
{\
|
||||
.driver = TYPE_USB_DEVICE,\
|
||||
.property = "msos-desc",\
|
||||
.value = "no",\
|
||||
}
|
||||
|
||||
#define PC_COMPAT_1_6 \
|
||||
PC_COMPAT_1_7, \
|
||||
{\
|
||||
.driver = "e1000",\
|
||||
.property = "mitigation",\
|
||||
|
|
|
@ -182,6 +182,7 @@ typedef struct USBDescIface USBDescIface;
|
|||
typedef struct USBDescEndpoint USBDescEndpoint;
|
||||
typedef struct USBDescOther USBDescOther;
|
||||
typedef struct USBDescString USBDescString;
|
||||
typedef struct USBDescMSOS USBDescMSOS;
|
||||
|
||||
struct USBDescString {
|
||||
uint8_t index;
|
||||
|
@ -208,6 +209,8 @@ struct USBEndpoint {
|
|||
enum USBDeviceFlags {
|
||||
USB_DEV_FLAG_FULL_PATH,
|
||||
USB_DEV_FLAG_IS_HOST,
|
||||
USB_DEV_FLAG_MSOS_DESC_ENABLE,
|
||||
USB_DEV_FLAG_MSOS_DESC_IN_USE,
|
||||
};
|
||||
|
||||
/* definition of a USB device */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue