Commit Graph

  • d5a8179068 Exit libusb context when done. Sebastian Zagrodzki 2017-04-27 03:12:47 +02:00
  • 462651f20f use the new fakeTransferPointer function to allocate a fake transfer struct. Sebastian Zagrodzki 2017-04-27 03:12:25 +02:00
  • b9dabf4da9 Add a method to return a fake allocated transfer. Sebastian Zagrodzki 2017-04-27 03:12:06 +02:00
  • 76df46148e Fix typo in log args. Sebastian Zagrodzki 2017-04-27 03:11:36 +02:00
  • 7ee11b48c5 Close the Context Sebastian Zagrodzki 2017-04-27 03:01:35 +02:00
  • 60ee821dd6 Close the Context Sebastian Zagrodzki 2017-04-27 03:01:20 +02:00
  • 2bcc25f8d0 Close the Context Sebastian Zagrodzki 2017-04-27 03:01:10 +02:00
  • a1b915080e Close returns error, to satisfy the io.Closer interface. Sebastian Zagrodzki 2017-04-27 02:48:43 +02:00
  • 76f4548b85 Add info about concurrency safety for stream. Sebastian Zagrodzki 2017-04-26 22:49:37 +02:00
  • 6c9e76f578 s/USB involving/USB transfers involving/ Sebastian Zagrodzki 2017-04-26 22:27:46 +02:00
  • 93355e7490 replace uint32 in MaxPacketSize with int Sebastian Zagrodzki 2017-04-26 22:27:12 +02:00
  • 22ff844a3d s/DeviceSpeed/Speed/ Sebastian Zagrodzki 2017-04-26 22:24:46 +02:00
  • 6c60468e06 Update to use ints instead of uint8s Sebastian Zagrodzki 2017-04-26 22:23:58 +02:00
  • 83276566fc Replace uint8 with Go-idiomatic int, where it makes sense. Sebastian Zagrodzki 2017-04-26 22:22:07 +02:00
  • a55abe9076 Disable Write streams for now. Sebastian Zagrodzki 2017-04-26 21:51:00 +02:00
  • cdd4223813 Handle a case where transfers channel was not closed properly. Sebastian Zagrodzki 2017-04-26 21:50:10 +02:00
  • ae8627a890 update tests with the new "transfer done" logic. Sebastian Zagrodzki 2017-04-26 21:40:51 +02:00
  • fbd26497e6 NewStream takes int now. Sebastian Zagrodzki 2017-04-26 21:36:14 +02:00
  • eed8b77a16 NewStream takes int now. Sebastian Zagrodzki 2017-04-26 21:35:50 +02:00
  • eed6d08423 Re-use the same done channel for every callback of a single transfer. Sebastian Zagrodzki 2017-04-26 21:35:26 +02:00
  • c1009ed25d Call back to Go function directly, it will know how to deal with an xfer pointer. Sebastian Zagrodzki 2017-04-26 21:33:45 +02:00
  • 550fe8d1f2 Introduce xferMap, avoid passing Go pointer into the C code. Weirdness with memory barriers. Sebastian Zagrodzki 2017-04-26 21:32:49 +02:00
  • dacae32d83 Tests for read transfers, starting on write transfers. Sebastian Zagrodzki 2017-04-23 22:58:30 +02:00
  • b50bc8761f First version of streaming transfers. Sebastian Zagrodzki 2017-04-23 10:45:04 +02:00
  • d92ea14c33 Add a test to catch invalud endpoint info. Sebastian Zagrodzki 2017-04-10 03:25:32 +02:00
  • 9cecdec977 Fix a bug where EndpointInfo would always be picked from the last alternative setting. Sebastian Zagrodzki 2017-04-10 03:16:59 +02:00
  • b0d5519c67 Change the iso packet size if the buffer is very small. Previously number of iso packets could have amounted to a transfer buffer larger than passed buffer, which could lead to overflow. Sebastian Zagrodzki 2017-04-10 02:45:16 +02:00
  • 961f271746 rename setup to alternate, print endpoint description first. Sebastian Zagrodzki 2017-04-10 02:44:23 +02:00
  • 5efb68e45e iota used on the second line of const block starts from 1, not from 0... Sebastian Zagrodzki 2017-04-10 01:41:36 +02:00
  • 5150242633 Set slice length, since we don't use append. Sebastian Zagrodzki 2017-04-10 01:41:12 +02:00
  • 453e3832b2 Add tests for failed open. Add tests for OutEndpoint.Write Sebastian Zagrodzki 2017-04-10 01:28:21 +02:00
  • b6794b7d45 Add a test for InEndpoint.Read. Use ID for vid/pid in OpenDevice... Sebastian Zagrodzki 2017-04-10 01:25:51 +02:00
  • b1dcaa1195 Add Device.OutEndpoint, simplify endpoint test. Sebastian Zagrodzki 2017-04-10 01:11:38 +02:00
  • 57b10f0dd3 Remove OpenEndpoint, add InEndpoint for Read transfers. Sebastian Zagrodzki 2017-04-10 01:00:53 +02:00
  • dd405348e9 move tests around Sebastian Zagrodzki 2017-04-09 20:55:37 +02:00
  • 128c206986 Move EndpointInfo to endpoint.go Sebastian Zagrodzki 2017-04-09 20:51:47 +02:00
  • b7b8fbb50a references to gousb2.0-dev... Sebastian Zagrodzki 2017-04-09 20:48:07 +02:00
  • aaef575b06 rename Setups to AltSettings Sebastian Zagrodzki 2017-04-09 20:45:35 +02:00
  • 8364724ca4 lint fixes. Sebastian Zagrodzki 2017-04-09 20:28:26 +02:00
  • 188fd8382d more comments Sebastian Zagrodzki 2017-04-09 20:27:37 +02:00
  • 56162d0105 Remove BCD.Int, add BCD.Major/Minor. Remove USB spec versions - I don't expect them to get much use, and reuse of BCD for USB spec version and device revision makes it somewhat confusing. Sebastian Zagrodzki 2017-04-09 20:25:16 +02:00
  • a5c4de3a29 more comments. Rename USBError to just Error. Sebastian Zagrodzki 2017-04-09 19:41:44 +02:00
  • 87c7a873e9 Go naming for error codes. Export USBError type. Sebastian Zagrodzki 2017-04-09 19:27:33 +02:00
  • 54aed557d8 more comments Sebastian Zagrodzki 2017-04-09 19:18:11 +02:00
  • b09de1cf09 more comments Sebastian Zagrodzki 2017-04-09 19:17:13 +02:00
  • f668df87df OpenEndpoint for now takes an address - a device can have two endpoints with the same number... Sebastian Zagrodzki 2017-04-09 19:08:42 +02:00
  • c44b5b7307 OpenEndpoint now uses endpoint number, not endpoint address. Sebastian Zagrodzki 2017-04-09 18:57:43 +02:00
  • f58798160d make addr() part of EndpointInfo Sebastian Zagrodzki 2017-04-09 18:55:41 +02:00
  • 13f4e95f2f Unexport bitmasks, they are only used internally. All values present in exported structs are meaningful and the users should not need to use bitmasks. Sebastian Zagrodzki 2017-04-09 18:53:49 +02:00
  • 3d62929e05 Replace EndpointDirection with a bool Sebastian Zagrodzki 2017-04-09 18:51:51 +02:00
  • 168b501d53 Rename IfClass/IfSubClass/IfProtocol to Class/SubClass/Protocol, these fields occur within an interface descriptor. Sebastian Zagrodzki 2017-04-09 18:44:32 +02:00
  • f91d53931a Use Protocol type for USB interface protocol. Sebastian Zagrodzki 2017-04-09 18:42:04 +02:00
  • d3428d9b35 Use Class for classes in usbid. Sebastian Zagrodzki 2017-04-09 18:29:16 +02:00
  • af00028b97 more comments, add Milliamperes type. Sebastian Zagrodzki 2017-04-09 18:15:48 +02:00
  • e6f6a4f76e Use golint Sebastian Zagrodzki 2017-04-09 18:05:46 +02:00
  • c437b39ef7 comments for endpointinfo type fields Sebastian Zagrodzki 2017-04-09 16:56:36 +02:00
  • 3e59eeac6c replace class/subclass with Class type Sebastian Zagrodzki 2017-04-09 16:41:38 +02:00
  • 6d9ea8e966 testDBPath is a const, not var... Sebastian Zagrodzki 2017-04-09 01:05:09 +02:00
  • f2c4300ad5 testDBPath to package variables Sebastian Zagrodzki 2017-04-09 01:04:43 +02:00
  • 0566e701f6 add tests for URL fetching Sebastian Zagrodzki 2017-04-09 00:58:47 +02:00
  • aa9661f705 move static data to testdata files Sebastian Zagrodzki 2017-04-09 00:38:42 +02:00
  • fc9b74ed82 error.go is a C mapping file, like libusb.go Sebastian Zagrodzki 2017-04-09 00:24:32 +02:00
  • 83302ae558 add test for an interrupt endpoint. Sebastian Zagrodzki 2017-04-09 00:22:11 +02:00
  • ab6b612d1b String of the endpoint should use EndpointInfo, not the default mapping from InterfaceInfo. Sebastian Zagrodzki 2017-04-09 00:18:54 +02:00
  • ca02c03241 since this is the only usecase, return a *libusbDevice for a new pointer. Sebastian Zagrodzki 2017-04-09 00:12:39 +02:00
  • 3ec748db4c An invalid pointer triggers a runtime failure when passed as argument in Go1.7: runtime: bad pointer in frame github.com/kylelemons/gousb/usb.(*fakeLibusb).open at 0xc420045ce0: 0x1 fatal error: invalid stack pointer Sebastian Zagrodzki 2017-04-09 00:10:15 +02:00
  • 648d3af9d8 use gousb2.0-dev for badges Sebastian Zagrodzki 2017-04-08 23:53:37 +02:00
  • e0f30623b3 Modify EndpointInfo to provide meaningful data rather than raw USB descriptor values. E.g. for the user, the distinction between MaxIsoPkt and MaxPktSize is irrelevant, only the calculated max packet size matters. Sebastian Zagrodzki 2017-04-08 23:49:10 +02:00
  • d982ef5a37 Add constants for device speed. Sebastian Zagrodzki 2017-03-27 23:01:02 +02:00
  • f3b2f37e3a Rename the rest of the constants. Sebastian Zagrodzki 2017-03-27 22:33:29 +02:00
  • 36241e869e more constants Sebastian Zagrodzki 2017-03-27 22:29:24 +02:00
  • b70848cf73 start renaming the constants to Go-style. Sebastian Zagrodzki 2017-03-27 22:23:47 +02:00
  • 341fde410e replace Endpoint interface with a real Endpoint struct. Sebastian Zagrodzki 2017-03-27 22:15:45 +02:00
  • 3b8abbe38b Point to gousb2.0 for that branch. Sebastian Zagrodzki 2017-03-26 18:48:36 +02:00
  • 7631ae4158 Merge pull request #42 from nkovacs/ignore-binaries zagrodzki 2017-03-26 18:46:22 +02:00
  • f19e934f9f Ignore rawread and usbid/regen binaries Nikola Kovacs 2017-03-26 16:06:46 +02:00
  • 926e8d0ea6 point to master branch for coverage, duh... Sebastian Zagrodzki 2017-03-26 18:37:57 +02:00
  • 0d18ae2f82 Merge pull request #45 from kylelemons/coveralls zagrodzki 2017-03-26 18:34:31 +02:00
  • 57244bb162 Remove coveralls token entirely, is supposed to "just work" for public repositories. Sebastian Zagrodzki 2017-03-26 18:28:51 +02:00
  • 927ef57ca7 Gah. Of course it doesn't work, since the exit status from test is 1. Replace "&&" with an "if". Sebastian Zagrodzki 2017-03-26 18:16:12 +02:00
  • e1279ed840 Merge pull request #44 from kylelemons/coverage zagrodzki 2017-03-26 18:08:41 +02:00
  • 90a47eb448 If the coveralls token is not set, don't try to push the coverage report. Sebastian Zagrodzki 2017-03-26 17:58:30 +02:00
  • 03533e78ed Merge pull request #43 from kylelemons/libusb_wrappers_tests zagrodzki 2017-03-26 17:56:24 +02:00
  • 0a7fc9fb53 Merge branch 'master' of https://github.com/kylelemons/gousb into libusb_wrappers_tests Sebastian Zagrodzki 2017-03-26 17:46:12 +02:00
  • 1f977a94aa Update the comment - there's no way to create a new pointer to struct libusb_device, since the struct is not defined in libusb headers (only name is declared), as such the compiler doesn't know the size of the struct to allocate. Sebastian Zagrodzki 2017-03-26 17:44:25 +02:00
  • 2bc8acd1c7 Merge pull request #41 from kylelemons/libusb_wrappers_tests zagrodzki 2017-03-23 18:15:31 +01:00
  • 4c5589cffb Moar comments. Sebastian Zagrodzki 2017-03-23 18:07:55 +01:00
  • 1008e7c3c0 Merge branch 'master' into libusb_wrappers_tests Sebastian Zagrodzki 2017-03-22 19:16:29 +01:00
  • 79b30d4535 Merge pull request #40 from kylelemons/coverage zagrodzki 2017-03-22 19:13:57 +01:00
  • fc41761879 Remove the alloc test that used real libusb allocation. Sebastian Zagrodzki 2017-03-10 09:25:57 -05:00
  • e0cfdc52dd updated USB IDs Sebastian Zagrodzki 2017-03-10 09:09:34 -05:00
  • ea2a438ec0 ignore libusb.go, as explicitly not covered due to poor C code testability. Sebastian Zagrodzki 2017-03-10 09:00:37 -05:00
  • 81f2998055 Merge branch 'coverage' into libusb_wrappers_tests Sebastian Zagrodzki 2017-03-10 08:55:45 -05:00
  • 389ae4e2b3 EndpointInfo tests Sebastian Zagrodzki 2017-03-10 08:48:21 -05:00
  • a221bef905 ensure the vid/pid match Sebastian Zagrodzki 2017-03-10 08:36:00 -05:00
  • ff7995c159 Add endpoint open test Sebastian Zagrodzki 2017-03-10 08:35:50 -05:00
  • 991e1b6cc6 completed interface, no more references to real usb from fake. Sebastian Zagrodzki 2017-03-10 08:33:14 -05:00
  • 4add66ae0e move things around, to keep list of the devices at the beginning. Sebastian Zagrodzki 2017-03-10 07:39:51 -05:00
  • d392ad305d Tests for OpenVidPid Sebastian Zagrodzki 2017-03-10 07:38:54 -05:00
  • 4b17678362 remove a call to libusb_open_device_with_vid_pid, as it's just a convenience wrapper. Reimplement the same trivial wrapper in Go. Sebastian Zagrodzki 2017-03-10 07:22:04 -05:00