summaryrefslogtreecommitdiffstats
path: root/fastboot/usb_osx.c
diff options
context:
space:
mode:
Diffstat (limited to 'fastboot/usb_osx.c')
-rw-r--r--fastboot/usb_osx.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/fastboot/usb_osx.c b/fastboot/usb_osx.c
index cbce9bd..1548ba8 100644
--- a/fastboot/usb_osx.c
+++ b/fastboot/usb_osx.c
@@ -264,6 +264,7 @@ static int try_device(io_service_t device, usb_handle *handle) {
SInt32 score;
HRESULT result;
UInt8 serialIndex;
+ UInt32 locationId;
// Create an intermediate plugin.
kr = IOCreatePlugInInterfaceForService(device,
@@ -322,6 +323,13 @@ static int try_device(io_service_t device, usb_handle *handle) {
goto error;
}
+ kr = (*dev)->GetLocationID(dev, &locationId);
+ if (kr != 0) {
+ ERR("GetLocationId");
+ goto error;
+ }
+ snprintf(handle->info.device_path, sizeof(handle->info.device_path), "usb:%lX", locationId);
+
kr = (*dev)->USBGetSerialNumberStringIndex(dev, &serialIndex);
if (serialIndex > 0) {