Commit Graph

391 Commits

Author SHA1 Message Date
Juha Niskanen
ebc6f51641 Fix some typos 2019-09-17 10:46:23 -06:00
Nathan Hartman
68d43d3679 Fix typos. 2019-08-04 14:50:28 -06:00
Adam Porter
3505cce201 drivers/usbhost/usbhost_composite.c: The cfgdesc pointer was initialized after the buffer had been advanced, so it was not pointing where it should. The totallen operations at the end of the function ended up overwriting memory belonging to the first copied interface descriptor. 2019-06-22 07:27:15 -06:00
Adam Porter
7d42b19a8d drivers/usbhost/usbhost_composite.c: I'm working on a CDC/NCM driver and in my driver's usbhost_cfgdesc() function I need access to the class-specific descriptors. Currently these are not available if the interface is part of a composite device, since only interface and endpoint descriptors are copied by usbhost_copyinterface(). This comit will also copy any class-specific interface descriptors for use in downstream class drivers.
NOTE: There's one change that might be incorrect, where I skip interfaces with zero endpoints. I did this because my device has two consecutive interface descriptors with the same interface number, one for altsetting 0 with no endpoints, and another for altsetting 1 with 1 endpoint.  The loop was aborting due to finding two interface descriptors back-to-back.
2019-06-21 06:58:44 -06:00
Adam Porter
ac46dbbffd drivers/usbhost: Remove duplicate const in usbhost files. 2019-06-20 06:49:56 -06:00
Gregory Nutt
ad8dc791ef drivers/usbhost: Backout some overly aggressive changes made in commit to removed CONFIG_DISABLE_POLL. 2019-05-22 14:14:15 -06:00
Gregory Nutt
b49be4bb20 Squashed commit of the following:
arch/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    sched/ audio/ crypto/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    Documentation/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    fs/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    graphics/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    net/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    drivers/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    include/, syscall/, wireless/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    configs/:  Remove all references to CONFIG_DISABLE_POLL.  Standard POSIX poll can no longer be disabled.
2019-05-21 18:57:54 -06:00
Gregory Nutt
abf6965c24 Squashed commit of the following:
libs/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    syscall/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    wireless/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    Documentation/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    include/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    drivers/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    sched/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    configs:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/xtensa:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/z80:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/x86:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/renesas and arch/risc-v:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/or1k:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/misoc:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/mips:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/avr:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/arm:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
2019-04-29 14:52:05 -06:00
Jason Harris
2609b0dff3 drivers/usbhost/usbhost_storage.c: Correct typo "const const" to "const".
arch/arm/src/stm32/stm32_i2s.c:  In debug assertions, it  on a sample rate of 0, but based on other code comments this value implies disabling the i2s master clock.

arch/arm/src/stm32/stm32_usbhost.h and arch/arm/src/stm32/Kconfig:  Allow vbus monitoring for the OTG_HS host driver.
2019-04-23 11:11:11 -06:00
Gregory Nutt
a64869aa67 CONFIG_NFILE_DESCRIPTORS=0 can no longer be used to disable the file system. NuttX with no file system does not make sense.
Squashed commit of the following:

    configs/:  The few configurations that formerly set CONFIG_NFILE_DESCRIPTORS=0 should not default, rather they should set the number of descriptors to 3.
    fs/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    tools/:  Tools updates for changes to usage of CONFIG_NFILE_DESCRIPTORS.
    syscall/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    libs/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    include/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    drivers/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    Documentation/:  Remove all references to CONFIG_NFILE_DESCRIPTORS == 0
    binfmt/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    arch/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    net/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    sched/:  Remove all conditional logic based on CONFIG_NFILE_DESCRIPTORS == 0
    sched/Kconfig:  CONFIG_NFILE_DESCRIPTORS may no longer to set to a value less than 3
    configs/:  Remove all settings for CONFIG_NFILE_DESCRIPTORS < 3
2019-02-11 12:09:26 -06:00
xhbm
07bcc6292a drivers/usbhost/usbhost_cdcacm.c: Fixes to the IOCTL method in recovery of UART pointer and in names of Termios-related field. 2019-02-11 07:08:33 -06:00
Gregory Nutt
4b9abfa3c2 Every file that uses serial IOCTLs (TIOC*) must explicity include nuttx/fs/ioctl.h. This was included previously via sneak path in the now deleted arch/serial.h. 2019-01-27 13:41:44 -06:00
Dave Marples
ba95cfe067 Eliminate some warnings. 2018-10-25 06:48:11 -06:00
Gregory Nutt
9546481054 Fix some typographical errors. 2018-09-14 06:55:45 -06:00
Gregory Nutt
f649db2405 Costmetic changes during review of MAX3421E logic. 2018-08-02 13:58:26 -06:00
Gregory Nutt
221bbad682 drivers/usbhost/usbhost_max3421e.c: Fix unmatched SPI lock/unlock. 2018-07-31 12:55:19 -06:00
Gregory Nutt
d252c7947d drivers/usbhost/usbhost_max3421e.c: Mutual exclusion semaphore must be re-entrant. 2018-07-30 17:31:40 -06:00
Gregory Nutt
8b2dc155a0 drivers/usbhost/usbhost_max3421e.c: Fix several errors found in early testing. 2018-07-30 16:56:19 -06:00
Gregory Nutt
41666dafa8 drivers/usbhost/usbhost_max3421e.c: Fix an error in reading the pending interrupts. Aos fix a number of typos and update a README. 2018-07-29 15:06:44 -06:00
Gregory Nutt
cca8771c4a include/nuttx/sensors/bh1750fvi.h: Eliminate a warning. 2018-07-15 07:20:07 -06:00
Gregory Nutt
49d6f44d96 drivers/usbhost/usbhost_max3421e.c: Select full duplex mode as the first step of the initialization. 2018-07-14 14:11:05 -06:00
Gregory Nutt
a74246d14e Squashed commit of the following:
Update some comments
    drivers/usbhost/usbhost_max3421e.c:  Fix issue with uninitialized data.
2018-07-14 13:40:13 -06:00
Gregory Nutt
38073a523a drivers/usbhost/husbhost_max3421e.c: Corret how VBUS power is controlled. 2018-07-14 08:50:08 -06:00
Gregory Nutt
29474a2b08 Trivial update to some comments and debug statement formats. 2018-07-14 07:11:25 -06:00
Gregory Nutt
dae6d954bf configs/lc823450-xgevk/src: Eliminate some warnings. drivers/usbhost: Update comments. 2018-07-13 14:41:31 -06:00
Gregory Nutt
9383e20002 drivers/usbhost/usbhost_max3421e.c: Improve debug/trace output formats. 2018-07-13 13:50:58 -06:00
Gregory Nutt
daa3fcc781 include/nuttx/spi/spi.h: Add a definition for a USBHOST SPI device. drivers/usbhost/usbhost_max3421e.c: Review and correct SPI locking usage. 2018-07-04 08:55:43 -06:00
Gregory Nutt
75f7663427 This commit adds support for the Maxim M3421E USB host driver.
Squashed commit of the following:

    drivers/usbhost/usbhost_max3421e.c:  Add USB tracing support.  Fix compilation errors when assertions and debug is enabled.
    drivers/usbhost/usbhost_max3421e.c:  Fixes to get a clean compilation.
    drivers/usbhost/usbhost_max3421e.c:  Drivers is basically code complete.
    drivers/usbhost/usbhost_max3421e.c:  Missed a little bit of logic in the last commit.
    drivers/usbhost/usbhost_max3421e.c:  Completes implementatin of control transfers.
    drivers/usbhost/usbhost_max3421e.c:  Implements low-level part of packet receive.
    drivers/usbhost/usbhost_max3421e.c:  Reorder some functions add a little more transfer-related logic.
    drivers/usbhost/usbhost_max3421e.c:  Completes basic logic path for sending normal packets.
    drivers/usbhost/usbhost_max3421e.c:  Correct handling of SNDFIFO double buffering.
    drivers/usbhost/usbhost_max3421e.c:  Not necessary to set the ACKSTAT bit in host mode.  Clean up some comments.
    drivers/usbhost/usbhost_max3421e.c:  Mostly cosmetic cleanup
    drivers/usbhost/usbhost_max3421e.c:  Revise some previous logic.  Looks like the MAX3421E can handle 16 channels in host mode.  A little bit of work on packet transfer logic.
    Copy paste error fix
    drivers/usbhost/usbhost_max3421e.c:  Add some channel allocation logic.
    drivers/usbhost/usbhost_max3421e.c:  Add some initialization logic.
    drivers/usbhost/usbhost_max3421e.c:  Add logic to determine if a full or low speed device has been connected.
    drivers/usbhost/usbhost_max3421e.c:  Add interrupt handling and bus reset logic.
    drivers/usbhost/usbhost_max3421e.c:  Add framework for an MAX3421E host driver.  Initial commit is just the STM32 OTGFS host driver with a few new SPI-related functions.
2018-07-03 18:49:51 -06:00
Gregory Nutt
3e9ba72441 net/sixlowpan: Fix typo uint16->uint16_t. Also picks up some cosmetic USB host changes. 2018-07-01 10:05:15 -06:00
Dmitriy Linikov
a8c58607e9 Merged in hardlulz/modem-3.0-nuttx/fix-sem-EINTR (pull request #603)
Added ECANCELED condition to DEBUGASSERT-s checking sem_wait result

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2018-02-20 18:24:53 +00:00
Gregory Nutt
7cf88d7dbd Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
Gregory Nutt
50ca32e254 Squashed commit of the following:
sched/:  Convert legitimate uses of task_create() to nxtask_create().  Review handling of returned values from all uses of kthread_create() (as well as nxtask_create()).
    graphics/:  Review return values for all calls to kthread_start() because it no longer returns an errno.
    drivers/:  threads started by drivers should be kernel threads, not user tasks.  Review return values for all calls to kthread_start() because it no longer returns an errno.
    configs/:  threads started by board bringup logic should be kernel threads, not user tasksi (part 2 of 2).
    sched/task:  Add nxtask_create().  Kthread_create() and nxtask_create() are internal OS functions and should not modify the errno variable.  configs/:  threads started by board bringup logic should be kernel threads, not user tasks.
2018-01-31 16:11:54 -06:00
Gregory Nutt
ac40630452 wireless/ieee802154: Fix a warning found in build testing. Mouse input: Cosmetic changes while reviewing logic. 2017-11-03 09:21:19 -06:00
Gregory Nutt
5b385f4d4d kthread_create(): Rename kernel_thread() to kthread_create() for better naming consistency with task_create() and kthread_delete(). 2017-10-16 11:38:00 -06:00
Gregory Nutt
9e25d89223 Squashed commit of the following:
Replace all usage kill() in the OS proper with nxsig_kill().

    sched/signal:  Add nxsig_kill() which is functionally equivalent to kill() except that it does not modify the errno variable.
2017-10-07 08:22:18 -06:00
Gregory Nutt
936df1bcb5 Adds new OS internal functions nxsig_sleep() and nxsig_usleep. These differ from the standard sleep() and usleep() in that (1) they don't cause cancellation points, and (2) don't set the errno variable (if applicable). All calls to sleep() and usleep() changed to calls to nxsig_sleep() and nxsig_usleep().
Squashed commit of the following:

    Change all calls to usleep() in the OS proper to calls to nxsig_usleep()

    sched/signal:  Add a new OS internal function nxsig_usleep() that is functionally equivalent to usleep() but does not cause a cancellaption point and does not modify the errno variable.

    sched/signal:  Add a new OS internal function nxsig_sleep() that is functionally equivalent to sleep() but does not cause a cancellaption point.
2017-10-06 10:15:01 -06:00
Gregory Nutt
9568600ab1 Squashed commit of the following:
This commit backs out most of commit b4747286b1.  That change was added because sem_wait() would sometimes cause cancellation points inappropriated.  But with these recent changes, nxsem_wait() is used instead and it is not a cancellation point.

    In the OS, all calls to sem_wait() changed to nxsem_wait().  nxsem_wait() does not return errors via errno so each place where nxsem_wait() is now called must not examine the errno variable.

    In all OS functions (not libraries), change sem_wait() to nxsem_wait().  This will prevent the OS from creating bogus cancellation points and from modifying the per-task errno variable.

    sched/semaphore:  Add the function nxsem_wait().  This is a new internal OS interface.  It is functionally equivalent to sem_wait() except that (1) it is not a cancellation point, and (2) it does not set the per-thread errno value on return.
2017-10-04 15:22:27 -06:00
Gregory Nutt
42a0796615 Squashed commit of the following:
sched/semaphore:  Add nxsem_post() which is identical to sem_post() except that it never modifies the errno variable.  Changed all references to sem_post in the OS to nxsem_post().

    sched/semaphore:  Add nxsem_destroy() which is identical to sem_destroy() except that it never modifies the errno variable.  Changed all references to sem_destroy() in the OS to nxsem_destroy().

    libc/semaphore and sched/semaphore:  Add nxsem_getprotocol() and nxsem_setprotocola which are identical to sem_getprotocol() and set_setprotocol() except that they never modifies the errno variable.  Changed all references to sem_setprotocol in the OS to nxsem_setprotocol().  sem_getprotocol() was not used in the OS
2017-10-03 15:35:24 -06:00
Gregory Nutt
83cdb0c552 Squashed commit of the following:
libc/semaphore:  Add nxsem_getvalue() which is identical to sem_getvalue() except that it never modifies the errno variable.  Changed all references to sem_getvalue in the OS to nxsem_getvalue().

    sched/semaphore:  Rename all internal private functions from sem_xyz to nxsem_xyz.  The sem_ prefix is (will be) reserved only for the application semaphore interfaces.

    libc/semaphore:  Add nxsem_init() which is identical to sem_init() except that it never modifies the errno variable.  Changed all references to sem_init in the OS to nxsem_init().

    sched/semaphore:  Rename sem_tickwait() to nxsem_tickwait() so that it is clear this is an internal OS function.

    sched/semaphoate:  Rename sem_reset() to nxsem_reset() so that it is clear this is an internal OS function.
2017-10-03 12:52:31 -06:00
Oleg Evseev
31bde601b6 Kconfig correction
edited online with Bitbucket
2017-06-16 14:43:11 +00:00
Gregory Nutt
0de294a586 Fix lots of occurrences of 'the the', 'the there', 'the these', 'the then', 'the they. 2017-05-11 13:35:56 -06:00
Gregory Nutt
175f8960cf Cosmetic changes from review of last PR 2017-03-18 06:47:34 -06:00
Brian Webb
0a95536b85 Adds driver support for the XBox One controller. Currently only the latest version (XBox One X) controller works. The older XBox One controllers do not enumerate correctly. 2017-03-17 20:48:21 -07:00
Janne Rosberg
ce2845c5c3 usbhost_cdcacm: fix tx outbuffer overflow and remove now invalid assert 2017-03-07 06:59:00 -06:00
Janne Rosberg
8442bf66b9 usbhost_cdcacm: add CDC_SUBCLASS_ACM and CDC_PROTO_ATM to supported class and proto 2016-11-30 12:20:23 -06:00
Janne Rosberg
4b282f219a usbhost_composite: fix end offset in usbhost_copyinterface() 2016-11-30 12:18:23 -06:00
Gregory Nutt
b0dffdc2ca Fix a number of header files with mismatched 'extern C {' and '}' 2016-11-05 07:25:05 -06:00
Gregory Nutt
4fcbe8e410 drivers: Disable priority inheritance on all semaphores used for signaling 2016-11-03 11:00:47 -06:00
Janne Rosberg
847d2b4218 usbhost/composite: fix compile; missing semicolons 2016-10-18 11:52:23 -06:00
Janne Rosberg
72f13db4bf usbhost/enumerate: fix possible buffer overwrite 2016-10-18 08:15:19 -06:00
Gregory Nutt
7f6a403b96 USB host composite is at least partially functional. No longer depends on CONFIG_EXPERIMENTAL 2016-09-02 07:26:29 -06:00
Gregory Nutt
e958c32e4d USB host composite: Using wrong interface number from interface descriptor. 2016-08-31 13:29:38 -06:00
Gregory Nutt
ebe829c4b9 USB host composite: A test should be <= not just < 2016-08-31 13:24:38 -06:00
Gregory Nutt
7ea9632592 Change the way that contactless IOCTL commands are defined. All IOCTL commands must be unique. 2016-08-31 11:30:22 -06:00
Gregory Nutt
7b75a32ca1 Improve some comments 2016-08-31 08:16:12 -06:00
Gregory Nutt
cb7c1c1f14 USB host composite: Add an option to permit support only a subset of the composite intefaces. 2016-08-31 07:56:27 -06:00
Gregory Nutt
aa0d1868f5 USB host composite: Fix places where the wrong pointer was used; Add a test for an error condition. 2016-08-30 13:58:01 -06:00
Gregory Nutt
ac623abc7d USB host composite: Reosolves last remaining REVISIT design issues. Compiles clean with no errors and warning and is fully ready for testing. 2016-08-30 10:52:41 -06:00
Gregory Nutt
ee83e49f75 Update a comment 2016-08-29 15:43:11 -06:00
Gregory Nutt
1ce4db8008 USB host composite: Save some information that will be needed to create a class-specific configuration. 2016-08-29 15:02:15 -06:00
Gregory Nutt
f4f807100b Update comment 2016-08-29 14:55:03 -06:00
Alpo Leinonen
7d5173ca09 USB host composite: Several syntactic errors fixed 2016-08-29 07:53:57 -06:00
Gregory Nutt
43abb7cb3a Mark USB host compsite feature EXPERMENTAL; update ChangeLog 2016-08-28 14:51:55 -06:00
Gregory Nutt
31c364457a CLASS_CONNECT needs to be called for each member of the composite. 2016-08-28 08:48:40 -06:00
Gregory Nutt
58b45d64d7 Fix composite connect method. 2016-08-28 08:33:38 -06:00
Gregory Nutt
5d4428be93 Add check of class ID in device scriptor header 2016-08-27 10:53:43 -06:00
Gregory Nutt
c973e0d3ba Add the logic necessary to abstract the register lookup information for each candiate class 2016-08-27 10:31:18 -06:00
Gregory Nutt
2460d41ae0 Add more logic to the USB host composite wrapper. 2016-08-26 17:03:16 -06:00
Gregory Nutt
0860621e60 Fill one more case of 'Missing logic' in the USB host composite wrapper. 2016-08-26 12:34:58 -06:00
Gregory Nutt
3c0b287fe9 Fill in a little of the 'Missing logic' in the USB host composite wrapper. 2016-08-26 12:24:35 -06:00
Gregory Nutt
ea8ce7acb6 Trivial rename 2016-08-26 11:05:50 -06:00
Gregory Nutt
a228b0cc36 Add a little more meat to the still very USB host composite skeleton. Not quite so boney now. 2016-08-26 10:33:41 -06:00
Gregory Nutt
fa4e9e3c1c Add a little more meat to the still very bony USB host composite skeleton. 2016-08-26 10:13:35 -06:00
Gregory Nutt
579e338cd3 Add a little more meat to the USB host composite skeleton. Still pretty bony. 2016-08-26 09:47:38 -06:00
Gregory Nutt
8a1d6c9ed8 Basic framework that might be used to add USB host support 2016-08-26 09:07:52 -06:00
Gregory Nutt
a897fd4ccf Eliminate use of apps/system/usbmonitor. Use drivers/usbmonitor instead. 2016-06-30 13:09:22 -06:00
Gregory Nutt
2a751068e6 Without lowsyslog() *llerr() is not useful. Eliminate and replace with *err(). 2016-06-20 12:44:38 -06:00
Gregory Nutt
43eb04bb8f Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info(). 2016-06-20 11:59:15 -06:00
Gregory Nutt
efb02f2ef1 drivers/: Change some nerr() ERRORS to nwarn() WARNINGS. Anomolous network evernts are not errors. 2016-06-12 08:31:22 -06:00
Gregory Nutt
a1469a3e95 Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err() 2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2 Rename *lldbg to *llerr 2016-06-11 14:55:27 -06:00
Gregory Nutt
1cdc746726 Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES 2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe Replace all occurrences of vdbg with vinfo 2016-06-11 11:59:51 -06:00
Gregory Nutt
3a74a438d9 Rename CONFIG_DEBUG_VERBOSE to CONFIG_DEBUG_INFO 2016-06-11 11:50:18 -06:00
Gregory Nutt
b6f5ffa9a8 CDC/AC: too man right parentheses if IFLOW_CONTROL enabled 2016-02-24 11:54:02 -06:00
Gregory Nutt
2244ed46bc nuttx/drivers: Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section() 2016-02-14 07:32:58 -06:00
xuhang
26d40fa80c drivers/usbhost/hid_parser.c: Wrong size used in memcpy() 2016-01-25 20:00:11 -06:00
Gregory Nutt
cf14f8d1b5 drivers/: Fixes to spacing and alignement 2015-10-10 10:41:00 -06:00
Gregory Nutt
af086c40ff Remove dangling whitespace 2015-10-04 15:28:54 -06:00
Gregory Nutt
0b12dbf95d Fix some spacing problems 2015-10-04 15:04:00 -06:00
Gregory Nutt
16b32bbadd Standardize the width of all comment boxes in C files 2015-10-03 07:25:53 -06:00
Gregory Nutt
e0fdd46292 USB host file uses DEBUGASSERT and so must include assert.h. Note by Brennan Ashton 2015-07-31 07:24:43 -06:00
Gregory Nutt
bb30fa039f Fix a warning detected by tools/tesbuild.sh. function was not returning the correct value in the case of errors 2015-07-22 15:46:43 -06:00
Gregory Nutt
342f5fe33d Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation 2015-06-28 08:08:57 -06:00
Gregory Nutt
9e1c72e3e2 Add basic board build configurat for the SAML21 Xplained. Initial commit is jsut the SAMD20 Xplained with name changes and does not yet build 2015-05-18 13:16:32 -06:00
Gregory Nutt
2b3241d81f Clean up some logic in the CDC/ACM host drivers. Test with some other host controller drivers. There are lots of problems. 2015-05-14 10:22:08 -06:00
Gregory Nutt
9df6bd0543 USB host CDC/ACM driver requires CONFIG_SERIAL_REMOVABLE 2015-05-11 15:10:41 -06:00
Gregory Nutt
2f8d7f3a03 CDC/ACM host: Cancelling activity on bulk endpoint fixes a crash when device removed 2015-05-11 12:47:37 -06:00
Gregory Nutt
c7a02488c6 Fix a cut'n'paste error in the last commit 2015-05-10 10:23:23 -06:00
Gregory Nutt
46e5d0a419 Add options to support all three host CDC/ACM protocols: Compliant, Reduced, and Bulk-Only 2015-05-10 08:16:58 -06:00
Gregory Nutt
bd437bfb03 Update ChangeLog 2015-05-09 16:23:19 -06:00
Gregory Nutt
4715a2e697 Update TODO list 2015-05-09 08:23:11 -06:00
Gregory Nutt
6519dc475d Use sched_kfree() instead of kmm_free() 2015-05-08 12:03:45 -06:00
Gregory Nutt
c35bb693a9 USB host CDC/ACM fixes. Still kind of buggy 2015-05-08 10:58:41 -06:00
Gregory Nutt
513344a084 Fix some missing quotes in a Kconfig file 2015-05-08 08:32:50 -06:00
Gregory Nutt
947fd7a5af USB host CDC/ACM: Improve RX responsiveness 2015-05-07 11:27:51 -06:00
Gregory Nutt
214aeeff57 USB host CDC/ACM: Add a bulk-only mode mostly for test, fix two bad assertions. Correct some loop termination logic in RX data receipt 2015-05-07 11:16:03 -06:00
Gregory Nutt
53bb938f23 Misc improvements to the CDC/ACM host driver, mostly related to parsing the configuration descriptor. Still does not work. 2015-05-07 10:02:51 -06:00
Gregory Nutt
691d7c9819 Rename usbhost_storageinit() to usbhost_msc_initialize(). Add calls to usbhost_cdcacm_initialize() is CONFIG_USBHOST_CDCACM is selected. 2015-05-06 14:11:29 -06:00
Gregory Nutt
737fd7dcec drivers/usbhost: Add initial implementatino of a host-side CDC/ACM driver. Completely untested on initial commit (2015-05-06). 2015-05-06 12:49:00 -06:00
Gregory Nutt
4a8fbd8817 USB host: More fixes from last changes.. MSC block read and write must again return number of blocks on success. Fix numerous places where the assumption the ret == OK means success. Since the transfer method now returns the number of byte transfered, the correct test for success is ret >= 0 2015-05-05 15:48:48 -06:00
Gregory Nutt
9296eca193 USB Host function address calculation needs to reset the 'next' address when an address is released 2015-05-05 14:59:03 -06:00
Gregory Nutt
47a112974d USB host: Modify the transfer() and asynch() methods so that the actual size of the transfer is returned. Unverified on initial commit. 2015-05-05 13:14:22 -06:00
Gregory Nutt
ea17bc3b68 USB hub class: Was not using the configured poll delay value 2015-05-04 13:44:12 -06:00
Gregory Nutt
e903259476 Hub: Use usleep instead of up_mdelay 2015-05-04 07:46:13 -06:00
Gregory Nutt
435d088182 SAMA5 EHCI: Mostly cosmetic 2015-05-03 08:51:44 -06:00
Gregory Nutt
c2a3f936aa USB host: Need to include the port structure when disconnecting, otherwise may destroy a root hub port 2015-05-02 10:44:18 -06:00
Gregory Nutt
e4f538446b USB hub: Minor fix to reduce the amount of debug garbage on console in certain configurations 2015-04-30 13:03:28 -06:00
Gregory Nutt
1380945a13 USB hub: Add a configuration option to fallback to polling mode if the the HCD async method does not work. Don't call DRVR_CANCEL twice, and certainly not from the interrupt level. Add so checks so that we do not do some normal asynchronous actions if the hub has been disconnected 2015-04-30 11:30:01 -06:00
Gregory Nutt
b909ad04d8 USB HUB: Fix a deadlock that can occur if the HCD and the HUB try to share the high priority work queue. Now how work must be done on the low priority work queue. 2015-04-29 08:32:17 -06:00
Gregory Nutt
6e20a466ac Merge remote-tracking branch 'origin/master' into usbhub 2015-04-27 12:27:43 -06:00
Gregory Nutt
cec90e144a Another missing semicolon in a DEBUGASSERT statement 2015-04-27 12:26:40 -06:00
Gregory Nutt
d88d10830e USB host: Fix an attempt to take a semaphore from an interrupt handler 2015-04-26 10:05:15 -06:00
Gregory Nutt
397f31f061 Another hub-related interface change: Need to pass speed to EP0 2015-04-26 09:53:43 -06:00
Gregory Nutt
3bae38a2d9 USB HID mouse/keyboard: Fix a reference counting problem 2015-04-25 17:05:30 -06:00
Gregory Nutt
329ae78583 Fix a recently introduced deadlock in some class drivers 2015-04-25 15:57:57 -06:00
Gregory Nutt
4de9bc7b6c Trivial improvement of debug output 2015-04-25 14:52:36 -06:00
Gregory Nutt
e46cb394f9 Fixes some crashes when the hub is removed and/or reinserted 2015-04-25 12:16:22 -06:00
Gregory Nutt
38e0a4a1cb Fix a race condition when a mouse or keyboard device is removed from a hub 2015-04-25 11:17:57 -06:00
Gregory Nutt
e7792435c7 Add missing logic to destroy a class when the device is no longer connected to the hub port 2015-04-25 11:17:37 -06:00
Gregory Nutt
ed5287855f LPC17 USB host: Direction bit being set wrong from allocated control endpoints 2015-04-24 19:46:00 -06:00
Gregory Nutt
64fe226669 USB Hub: Cosmetic update to some naming 2015-04-24 18:32:09 -06:00
Gregory Nutt
becfe4ef9d HUB class must cancel any pending interrupt IN transfers before destroying the endpoint 2015-04-24 12:18:25 -06:00
Gregory Nutt
2768f13153 USB hub: Fixes for some port status change handling 2015-04-24 09:57:59 -06:00
Gregory Nutt
2586bc3fcc USB hub fixes. Mostly dealing with setting the hub function address at the right time and powering up downstream ports 2015-04-23 16:42:53 -06:00
Gregory Nutt
9752e12b11 USB HUB: Fix bugs, stray ampersand. Need to perfrom class destruction on the worker thread 2015-04-23 13:56:38 -06:00
Gregory Nutt
34e4edfd1a USB hub: Fix some port power enable logic 2015-04-23 11:24:05 -06:00
Gregory Nutt
adb50640c0 Correct errors in hub class destructor logic 2015-04-23 10:07:53 -06:00
Gregory Nutt
ab17603ceb Fix USB hub bugs: Don't allocate port EP0 until needed, otherwise run out of endpoints; using wrong pointer to access child endpoint array in a few places 2015-04-23 09:42:58 -06:00
Gregory Nutt
64496a635c USB hub: Add some hub-related configuration settings 2015-04-22 17:16:35 -06:00
Gregory Nutt
f7ec9b0831 USB hub: Change to connection interface so that applications can deal with external hubs 2015-04-22 12:28:19 -06:00
Gregory Nutt
5c16454cdf Add USB hub initialization logic to a couple of board configurations 2015-04-21 13:44:14 -06:00
Gregory Nutt
fde0bf650e USB host: Integrate logic to assign device function address 2015-04-21 12:17:49 -06:00
Gregory Nutt
d6b963a62e USB host: Update skeleton driver file 2015-04-21 09:54:11 -06:00
Gregory Nutt
d62aa8c158 USB host: Remove getdevinfo() method. Rename hub structure to hubport structure. Get port and function address from hub port structure vs. parameters and other structures. 2015-04-21 07:26:28 -06:00
Gregory Nutt
2ea7a83bf5 USB hub: Move port index out of hub structure and into class structure 2015-04-20 16:50:32 -06:00
Gregory Nutt
4aeb5e549c Get USB host HID mouse driver to build. Error connect method prototypes. 2015-04-20 16:21:13 -06:00
Gregory Nutt
f7f3a7f74d USB hub: Decouple class and hub structures 2015-04-20 12:06:47 -06:00
Gregory Nutt
356292b60e Some trivial USB-related changes 2015-04-20 09:51:58 -06:00
Gregory Nutt
fa778aec07 USB hub: Add EP0 to all control transfers. There can be multiple EP0's with a hub 2015-04-20 09:35:43 -06:00