summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-09-11make hid_mouse driver generic HID driverAmir Hammad4-307/+558
+ 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 Hammad6-28/+787
* 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>
2016-09-08make usbh_packet->data of union typeAmir Hammad6-14/+14
out: const void * in: void * Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-08usbh_core refactorAmir Hammad1-82/+100
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-01fix bmRequestType field - use of definesAmir Hammad4-18/+18
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-08-30hub: fix commented out code and commentsAmir Hammad1-14/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-08-23remove not needed carriage returns in printfAmir Hammad3-3/+3
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-30usbh_core: logs: DEVICE DESCRIPTOR EOLAmir Hammad1-1/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-30lld: stm32f4: fix logsAmir Hammad1-2/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-30add option to pass data to control writesAmir Hammad6-31/+51
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-25Fix broken demo after reworkAmir Hammad1-2/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-09Adjust documentation to fit doxygenAmir Hammad2-2/+4
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-08rename usbh_hubbed.* to usbh_core.*Amir Hammad5-5/+5
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-08lld: stm32f4: adjust reporting of the unahandled block of codeAmir Hammad1-1/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-08rename usbh_driver to usbh_low_level_driverAmir Hammad2-9/+9
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-08documentation: add some basic documentation accross the headersAmir Hammad1-3/+3
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-08refactor: use enum instead of #define: USBH_ENDPOINT_TYPE and USBH_SPEEDAmir Hammad6-19/+19
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-06-25Embed information about compilation with the debug functions into make outputAmir Hammad1-29/+0
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-06-25Don't compile usart_helpers.o when USART_DEBUG is not definedAmir Hammad1-2/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-06-25let the user build an array of lld driversAmir Hammad2-12/+8
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-06-25move USE_STM32f4_USBH_DRIVER_HS/FS from config.mk to usbh_config.hAmir Hammad1-1/+1
Leave the behaviour as before: Default: FullSpeed Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-06-20Merged usb midi code into current libusbmasterAmir Hammad3-0/+467
+ merge fixes Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-08-26lld/stm32f4: Send correct amount of dataAmir Hammad1-2/+15
+ added logging output of data that is going to be sent. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-08-26Device driver/gp_xbox:Use correct endpoint type:INTERRUPTAmir Hammad1-1/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-08-26lld/stm32f4: fix bug, setting wrong eptyp fieldAmir Hammad1-3/+8
it was always 0 - control transfer... Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-08-26usbh_hubbed: set packet_size_max0 field also when DT_DEVICE returns OKAmir Hammad1-0/+1
packet_size_max0 was set only if it was 8. It was not working for 16 or 32. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-08-26Device driver/mouse: use correct endpoint type: INTERRUPTAmir Hammad1-1/+1
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-29hub: Empty packet readings after SET_ and CLEAR_ commandsAmir Hammad2-9/+25
* fixed typo/bug: "hub->state += 2" must have been "hub->state = 2" to issue empty read Now, after each SET_ or CLEAR_ command, empty read is issued. + removed forward declaration of event() - cleaning Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-13gp_xbox: Do not allow unitialized driver to be loadedAmir Hammad1-2/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-13mouse: Do not allow unitialized driver to be loadedAmir Hammad1-1/+9
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-13hub: Do not allow unitialized driver to be loadedAmir Hammad1-1/+8
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-13Global logging: use \n for a new line instead \r\n in LOG_PRINTFAmir Hammad7-66/+66
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-13usbh_hubbed: When in unknown state, print ErrorAmir Hammad1-0/+4
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-13usbh_hubbed: cleaning newlines after break; in switchAmir Hammad1-0/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-07-13hub: Fix forgotten breakAmir Hammad1-0/+5
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-15demo: timer: BUGFIX: TIM6 prescalerAmir Hammad1-1/+1
TIM6 has clock running at 84MHz instead of 168MHz, so set the prescaler accordingly. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-08Device drivers: Refactor: Remove prefixes of static functions and variablesAmir Hammad3-31/+31
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-08Device drivers: Refactor: Move driver declaration to the end of fileAmir Hammad3-72/+57
forward declarations are not needed Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-08lld: stm32f4: refactor: Remove prefixes of static functions and variablesAmir Hammad1-19/+19
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-08lld: stm32f4: Move driver definitions to the end of fileAmir Hammad1-47/+38
This way, we don't need forward declarations Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-07usbh_hubbed: device_register: Don't check for USB_DT_DEVICE twiceAmir Hammad1-9/+0
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-06LLD: stm32f4: change type of i to signed integerAmir Hammad1-2/+3
this was causing infinite loop, when size of the data was not multiple of 4. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-06Refactor device drivers: don't use automatic castsAmir Hammad3-16/+16
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-05Device driver/hid_mouse: Bugfix enum STATESAmir Hammad1-2/+2
fixing after enum STATES refactor. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-01demo: More precise timing, using TIM6Amir Hammad1-6/+38
Overflows in 6.5536 seconds Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-01poll(): refactor every poll argument t_us and tflp -> time_curr_usAmir Hammad4-17/+18
added comment to usbh_hubbed.h Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-01lld: stm32f4: poll(): fix return valueAmir Hammad1-3/+3
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-01demo: rcc_peripheral_enable_clock->rcc_periph_clock_enableAmir Hammad1-7/+7
Instead of 2 argument call, use function with one argument. It is more clear, and safer for inexperienced users with libopencm3. Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2015-04-01libusbhost: Open source USB host stack for embedded devicesAmir Hammad9-0/+3898
First public version, date: 1.4.2015 Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>