summaryrefslogtreecommitdiff
path: root/src/usbh_core.c
AgeCommit message (Collapse)AuthorFilesLines
2016-09-11use NULL instead of 0 for assigning null pointerAmir Hammad1-8/+7
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11hub: use common code to remove deviceAmir Hammad1-1/+1
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-11core: use new control wrapper to set configuration to deviceAmir Hammad1-21/+2
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11core: use new control wrapper to read device descriptorAmir Hammad1-27/+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 Hammad1-8/+87
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11Drop need for the set configuration request in dev driversAmir Hammad1-2/+56
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-09-11core: Simplify device removesAmir Hammad1-11/+13
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 Hammad1-5/+5
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 Hammad1-4/+4
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-30add option to pass data to control writesAmir Hammad1-6/+27
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>
2016-07-08rename usbh_hubbed.* to usbh_core.*Amir Hammad1-0/+632
Signed-off-by: Amir Hammad <amir.hammad@hotmail.com>