mirror of
https://github.com/pbatard/rufus.git
synced 2025-06-04 08:29:50 -04:00
[core] fix an enumeration issue and add support for ASUS UASP Turbo Mode
* Our detection for a match in the hash table, during USB enumeration, always pointed to the first hub when no match was found. * Also, some USB mass storage devices (ASUS Turbo Mode devices, iPods) may have an additional driver inserted, which we now try to handle by looking up the grandparent. * Thanks to NaoDarkness for helping investigate this * Closes #513
This commit is contained in:
parent
94e7e41082
commit
ac213a16e9
5 changed files with 42 additions and 28 deletions
|
@ -32,9 +32,9 @@ typedef struct usb_device_props {
|
|||
uint32_t pid;
|
||||
uint32_t speed;
|
||||
uint32_t port;
|
||||
BOOL is_UASP;
|
||||
BOOL is_VHD;
|
||||
BOOL is_LowerSpeed;
|
||||
BOOLEAN is_UASP;
|
||||
BOOLEAN is_VHD;
|
||||
BOOLEAN is_LowerSpeed;
|
||||
} usb_device_props;
|
||||
|
||||
/*
|
||||
|
@ -94,6 +94,7 @@ DECLSPEC_IMPORT CONFIGRET WINAPI CM_Get_Device_ID_List_SizeA(PULONG pulLen, PCST
|
|||
DECLSPEC_IMPORT CONFIGRET WINAPI CM_Get_Device_ID_ListA(PCSTR pszFilter, PCHAR Buffer, ULONG BufferLen, ULONG ulFlags);
|
||||
DECLSPEC_IMPORT CONFIGRET WINAPI CM_Locate_DevNodeA(PDEVINST pdnDevInst, DEVINSTID_A pDeviceID, ULONG ulFlags);
|
||||
DECLSPEC_IMPORT CONFIGRET WINAPI CM_Get_Child(PDEVINST pdnDevInst, DEVINST dnDevInst, ULONG ulFlags);
|
||||
DECLSPEC_IMPORT CONFIGRET WINAPI CM_Get_Parent(PDEVINST pdnDevInst, DEVINST dnDevInst, ULONG ulFlags);
|
||||
DECLSPEC_IMPORT CONFIGRET WINAPI CM_Get_Sibling(PDEVINST pdnDevInst, DEVINST dnDevInst, ULONG ulFlags);
|
||||
// This last one is unknown from MinGW32 and needs to be fetched from the DLL
|
||||
PF_TYPE_DECL(WINAPI, CONFIGRET, CM_Get_DevNode_Registry_PropertyA, (DEVINST, ULONG, PULONG, PVOID, PULONG, ULONG));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue