summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-11-13Host handshake mostly workingjaseg8-26/+94
2018-11-12New host-side arch workingjaseg8-888/+487
2018-11-12Pairing confirmation: ignore special chars and "and"jaseg4-63/+111
2018-11-12Confirmed pairing worksjaseg9-68/+616
2018-11-12Handshake working with new abstractionsjaseg11-78/+1119
2018-11-08Basic input demo working on qubesjaseg2-25/+239
This commit was typed with it ^_^
2018-11-08Add proof-of-concept packet loss recovery through nonce searchjaseg1-6/+28
2018-11-08HID report transmission partially works nowjaseg8-45/+92
partially i.e. if you attach the keyboard before the noise handshake. I suspect some memory corruption somewhere.
2018-11-08Break out noise.c and packet_interface.cjaseg7-211/+246
2018-11-08Noise handshake workingjaseg4-9/+98
2018-11-08Noise integration compilesjaseg10-5/+745
2018-11-06Hacked together a packetizing mode for hex serial utilityjaseg1-8/+16
2018-11-06Add nice hexdumpy serial utilityjaseg1-0/+46
2018-11-06COBS/binary suport added, abstraction improvedjaseg4-54/+112
2018-11-06Proper print abstraction and ring buffer worksjaseg3-82/+133
2018-11-06DMA-supported LOG_PRINTF worksjaseg5-104/+80
2018-11-05Some UART logging workjaseg4-200/+79
2018-11-01Make demo work with STM32F4 board from aliexpress for SecureHID projectjaseg3-63/+32
2016-09-11Merge pull request #6 from amirhammad/usbh_configAmir Hammad1-0/+1
Fix missing usbh_config.h in the cmake project
2016-09-11Fix missing usbh_config.h in the cmake projectAmir Hammad1-0/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11Merge pull request #5 from amirhammad/fix-g++-compilerAmir Hammad1-1/+1
Fix CXX compiler
2016-09-11Fix CXX compilerAmir Hammad1-1/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11Merge pull request #4 from amirhammad/core-refactorAmir Hammad33-1523/+2176
Major rework
2016-09-11lld: add mask with epdirAmir Hammad1-1/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11use default case instead of handling other packet statuses explicitelyAmir Hammad5-47/+20
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11xbox: remove warning about unused variableAmir Hammad1-1/+0
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11drivers: remove redundant forward declaration of usbh_dev_driver_tAmir Hammad4-7/+0
It is already declared in usbh_core.h Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11lld: remove not used error_count field in channel structAmir Hammad1-2/+0
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11lld: simplify stm32f4_usbh_port_channel_setupAmir Hammad1-36/+23
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11lld: rework low level driver initializationAmir Hammad5-19/+20
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11use forward declaration for usbh_dev_driver_tAmir Hammad9-90/+93
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11Doc: set HAVE_DOT propertyAmir Hammad1-1/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11use NULL instead of 0 for assigning null pointerAmir Hammad5-15/+18
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11midi: rename prefix of static functionsAmir Hammad1-12/+12
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11lld: don't enable channel on write nack, return EAGAIN insteadAmir Hammad1-3/+12
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11hub: use common code to remove deviceAmir Hammad3-7/+3
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11remove detection of hangAmir Hammad1-5/+0
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11HUB: make use of control wrappers + use enumsAmir Hammad2-218/+84
Until now, hardcoded numbers were used as states. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11hid: use control wrapper to simplify hid report writesAmir Hammad1-80/+8
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11core: use new control wrapper to set configuration to deviceAmir Hammad2-22/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11core: use new control wrapper to read device descriptorAmir Hammad2-28/+3
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11core: use new control wrapper to set device's addressAmir Hammad1-22/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11core: add helper state machine for control read/writeAmir Hammad2-24/+122
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11add DISABLE_LOW_LEVEL ifdef in hub device driverAmir Hammad1-0/+8
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11Drop need for the set configuration request in dev driversAmir Hammad6-212/+112
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11core: Simplify device removesAmir Hammad2-25/+15
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11Added travis.ymlAmir Hammad2-0/+18
and badge Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11make hid_mouse driver generic HID driverAmir Hammad8-365/+648
+ keyboard support + SET_REPORT commands - usually leds on keyboards (WIP) - missing parsing of HID report descriptor Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11Switch to cmake build systemAmir Hammad19-381/+1012
* use tinyprintf * ability to configure project via ccmake Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-08core: adjust search for the device driverAmir Hammad1-28/+29
in finding compatibility there are 3 steps how to find out whether the provided device driver supports currently inserted device. 1. compare fields in the driver info structure If there is a match (all CHECK_PARTIAL_COMPATIBILITY() macros return true), we proceed to step 2. If all device drivers are searched, but none is compatible -> that means no device driver is available for currently inserted device. 2. try to call driver's init function. If it return non-null pointer to data we may proceed to the step 3. Otherwise, we continue in the loop handling step 1. 3. call analyze descriptor for all descriptors. When it returns true, it means success and that the driver supports current device. From now on poll function is allowed to be called. If all descriptors were provided to the analyze_descriptor method and it still returns false, it means device driver is not initialized and should not be used with this device. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>