Commit graph

331 commits

Author SHA1 Message Date
John Whittington
a0ed0ced0c rename UsbController; parse from instance_id on Win 2024-09-23 13:34:04 +02:00
John Whittington
602cfb0685 macos: add CFData parsing of revision and name 2024-09-23 13:34:04 +02:00
John Whittington
c7675914ae a more applied doc list_buses example 2024-09-23 13:34:04 +02:00
John Whittington
d4e12206ec specific BusInfo type for 'root hubs'
root hubs are a Linuxism - an abstract USB device capturing
information about a system USB bus; connected to a Host Controller.  Bus
data is useful for system profiling so a BusInfo type is added to crate
a more portable 'root hub' type.

Considering whether to use a HostControllerInfo highlighted the place
for root hubs. There can be multiple system USB buses on a Host
  Controller Interface (HCI), so it makes sense to have a separate type.
  Multiple buses can share the same PciInfo for example because they sit
  on the same HCI.
2024-09-23 13:34:04 +02:00
John Whittington
ae98f5c069 tidy and remove unused get_hub_info 2024-09-23 13:34:04 +02:00
John Whittington
e709abe41c attempt to get other Apple HCI 2024-09-23 13:34:04 +02:00
John Whittington
651d97a811 notes on list_root_hubs usage 2024-09-23 13:34:04 +02:00
John Whittington
9a30fe8740 experimental list_root_hubs 2024-09-23 13:34:04 +02:00
Kevin Mehall
d6ec80a0cf
Merge pull request #80 from MerchGuardian/android-support
Android support for non-rooted phones
2024-09-21 14:51:57 -06:00
Troy Neubauer
fd62469b54 add ci 2024-09-12 09:06:29 -07:00
Troy Neubauer
7d556a4cc1 implement feedback 2024-09-12 08:47:19 -07:00
Troy Neubauer
0585b543bd cleanup logging 2024-09-11 08:23:53 -07:00
Troy Neubauer
926ca33a99 better error handling 2024-09-11 00:21:08 -07:00
Troy Neubauer
08c4b8715d try get configuration from ioctl 2024-09-10 20:56:33 -07:00
Troy Neubauer
81d6650e0a cleanup 2024-09-07 20:54:45 -07:00
Troy Neubauer
d569d530f4 RADIO ON ANDROID WORKS 2024-09-07 19:03:17 -07:00
Troy Neubauer
76fc011d1c wip 2024-09-07 12:49:05 -07:00
Troy Neubauer
6b5f2deb42 debugging hackrf on android 2024-09-05 15:32:56 +00:00
Troy Neubauer
f745d3b074 android warp approach 2024-09-05 07:12:55 +00:00
Troy Neubauer
94e8a71964 add cfgs 2024-09-05 06:40:02 +00:00
Kevin Mehall
3ec3508324
Merge pull request #71 from kevinmehall/port-chain
Add DeviceInfo::port_chain
2024-08-11 23:15:07 -06:00
Kevin Mehall
24cc1832bf windows: Expose location_paths 2024-08-10 17:39:18 -06:00
Kevin Mehall
e733fd1b95 Make port_chain return Vec not Option<Vec> 2024-08-10 17:39:14 -06:00
Kevin Mehall
2ad365e99b Replace DeviceInfo::bus_number with bus_id 2024-08-10 17:38:52 -06:00
Kevin Mehall
b8a57a994f Remove bus number from port_chain 2024-08-10 13:36:18 -06:00
Kevin Mehall
2c9c699a28 Add port_chain 2024-08-10 13:32:46 -06:00
Kevin Mehall
137e8a3bb3
Merge pull request #74 from tuna-f1sh/max_packet_size
Add bMaxPacketSize0 to DeviceInfo
2024-08-10 13:12:28 -06:00
John Whittington
cf2ecf0d88 append _0 to max_packet_size 2024-08-09 19:07:40 +02:00
John Whittington
9fd90b6b3e add bMaxPacketSize0 to DeviceInfo 2024-08-09 15:48:42 +02:00
Kevin Mehall
cc721c4b39
Merge pull request #72 from kevinmehall/linux-log
Clean up logs on Linux
2024-08-04 11:39:43 -06:00
Kevin Mehall
1795a92780 linux: improve logging 2024-08-03 18:57:42 -06:00
Kevin Mehall
cb82728e03 linux: enumeration: filter non-devices from sysfs
* Avoids logging errors when probing USB interfaces that don't have
device properties
* Ignores root hubs (they're not useful to open, not exposed on other
platforms, and sometimes slow to read properties from for some reason)
2024-08-03 18:57:42 -06:00
Kevin Mehall
5fc9678e8e Increase MSRV to 1.67 for Result::inspect_err 2024-08-03 18:57:42 -06:00
Kevin Mehall
7218b387ef
Merge pull request #65 from TheButlah/thebutlah/implement-detach
implement equivalent to libusb_detach_kernel_driver
2024-08-03 16:38:01 -06:00
Ryan Butler
f1dd76fe75
address review comments 2024-08-01 13:46:12 -04:00
Kevin Mehall
db281eb8ef
Merge pull request #20 from kevinmehall/hotplug
Hotplug events
2024-07-28 18:45:20 -06:00
Kevin Mehall
9272da1de3 windows: hotplug: note that interfaces may not be ready 2024-07-28 18:32:39 -06:00
Kevin Mehall
70f7c22870 linux: hotplug: Use libc for now, because rustix hasn't merged my PR 2024-07-28 18:32:39 -06:00
Kevin Mehall
cecdf88c86 linux: hotplug 2024-07-28 18:32:39 -06:00
Kevin Mehall
cc0d44a68f macos: hotplug 2024-07-28 18:32:33 -06:00
Kevin Mehall
15af931665 windows: Hotplug 2024-07-28 14:45:03 -06:00
Kevin Mehall
1f7a58700f
Merge pull request #57 from kevinmehall/windows-interfaces
windows: Allow claiming interfaces that require WinUsb_GetAssociatedInterface
2024-07-28 14:01:50 -06:00
Kevin Mehall
58b5b583f7 rust 1.80: ignore warning for cfg(fuzzing) 2024-07-28 13:58:39 -06:00
Kevin Mehall
4ddd81b8f1 windows: Obtain serial number from ioctl instead of instance ID
The instance ID is capitalized if the string descriptor contains
lower case characters, and also uses a generated ID in place
of the actual serial number if the serial number is a duplicate.
2024-07-28 13:52:57 -06:00
Kevin Mehall
905313e704 windows: List interfaces using descriptor if driver is not usbccgp 2024-07-28 13:52:57 -06:00
Kevin Mehall
d5ec7144ff windows: Allow claiming interfaces that require WinUsb_GetAssociatedInterface 2024-07-28 13:52:52 -06:00
Kevin Mehall
e47fbf3ac6 v0.1.10 2024-07-27 14:44:15 -06:00
Kevin Mehall
70c64d06a8
Merge pull request #67 from kevinmehall/iokit-numbers
macos: Fix enumeration of devices where bus number > 0x80
2024-07-26 19:51:26 -06:00
Kevin Mehall
e361ae79fa Show location ID and registry entry ID in hex in debug format 2024-07-26 18:46:16 -07:00
Kevin Mehall
6b1f182d3c macos: Convert iokit number properties with wrapping as.
32-bit values such as locationID are always encoded as
kCFNumberSInt32Type where large values are returned
as negative numbers that fail in `try_from`.
2024-07-26 18:36:17 -07:00