Hopefully without breaking the others.
Summary of the changes:
- Device descriptor reports the device is bus powered and requires
100mA max.
- HID descriptor version bumped to 1.11 (was 1.10)
- Added string index for Interface and HID descriptors (which seems to
make OS X happy)
* Interleave sending and receiving of packets to reduce latency in receiving of packets
* Add patch to CtapUsbSyscallDriver
* Minor tweaks from review
* Log when overwritting an existing reply
* Only log when 'debug_ctap' is enabled
* Make ctap mod public, as per review
* Rename send_or_recv to send_and_maybe_recv
* fix typo
* Don't process packets on other transport while doing keepalive
* Don't process packets on other transport while doing keepalive
* More accurately determine if reply has finished
* Move comment closer to appropriate location
* Add tests for canceling keepalive packets
* Added a TODO for kaczmarczyck re ctap module being public
* remove the unnecessary sleep()s
* undo messed up commit
* address pylint warnings
* Fix merge mess up, and patch fido2 Usage Page
* Fix up completely borked merge
* Remove patch to FIDO usage, after #523.
* remove obsolete aspects to diff
Co-authored-by: kaczmarczyck <43844792+kaczmarczyck@users.noreply.github.com>
* Round-robin order for receiving packets
* Update next packet after sending packet
* fix up some formatted raised during review
* remove the whitespace noise from last commit
* Connect Vendor HID endpoint to Ctap app
* tweaks from review
* formatting nit
* revert tock submodule revision
* fix formatting of deploy.py for yapf error
* Changes based on review
* Track state for each USB endpoint separately
* Rename patch file to ensure correct patching order
* Adjust patch from changes #494 and #500
* rustfmt
* rustfmt
* Deprecate patch 11 in favor of this full working code
* Avoid app re-entry by passing App argument to relevant calls
* Remove underscoring leading name
* fixups
* allows passing in capabilities to CtapHid (#496)
* Fix libfido in configure (#499)
* fix capitalization of Ctap2 in configure
* changes setup to match new libfido2 version
Co-authored-by: kaczmarczyck <43844792+kaczmarczyck@users.noreply.github.com>
* Add USB interface for Vendor HID.
This new interface is enumerated by the host, but the device transmits
all packets on the existing interface, so the device won't function
correct in this mode until this this fixed.
The changes are in tock, and so appear as a patch here. These are:
* supporting multiple HIDs in the USB configuration
* adding the HID descriptors for the new inteface
* supporting the vendor_hid feature in relevant Cargo.toml files.
NOTE: only boards/nordic/nrf52840dk_opensk has been updated.
As the changes are in tockos, deploy script needed to pass vendor_hid
feature to tockos build stage.
Demo of output:
lsusb -v -d 1915:521f | grep "NumInterfaces"
bNumInterfaces 2
* fix some whitespace from review
* Add vendor_hid feature in all boards in this repo, not via a patch in tock.
The boards directories are copied to tockos as part of
setup-submodules.sh
* Remove nesting from HID config in create_descriptor_buffers()
* update comments about HID descriptor use.
* Bump Tock kernel version
* Update boards to new kernel
* Update patches to new kernel
* Update PR template
* Bump libtock-rs
* Use new layout from libtock-rs
* Fix clippy warnings due to updated toolchain
* Fix new toolchain file format
* Bump elf2tab to v0.7.0
* Fix worklow and setup.sh script to use the TOML rust-toolchain file
* New libtock-rs style of declaring the stack.
* Fix padding in layout file.
The layout from libtock-rs generates invalid flash padding.
The value is 32-bit and therefore setting padding to 0xff yields
0xff000000 instead of 0xffffffff that we want.
* adds tock patch for app break hard fault
* sets in deploy, removed patch 04-mpu-fix
* fixed the if deploy
* fixes indentation
* updates board names in install.md
* fix docs and deploy style
Co-authored-by: Fabian Kaczmarczyck <kaczmarczyck@google.com>
Co-authored-by: kaczmarczyck <43844792+kaczmarczyck@users.noreply.github.com>
Now the script supports more flashing methods:
- JLink (with tockloader)
- OpenOCD (with tockloader)
- pyOCD
- Nordic DFU
- none (will produce an IntelHex file)
Also merged the contributions from:
- Yihui Xiong to support the Makerdiary USB dongle board
- Dennis Geurts to support Nordic DFU
Doc updated accordingly.
Imported 2 patches for Tock kernel:
- 06-add-set_vector_table_offset.patch (upstream tock/tock#1579)
- 07-nrf52-bootloader.patch (upstream tock/tock#1681)