Commit Graph

12711 Commits

Author SHA1 Message Date
Gregory Nutt ee2bb9739e Update ChangeLog 2016-01-26 16:27:40 -06:00
Gregory Nutt 695ad45d83 Update ChangeLog 2016-01-26 15:23:01 -06:00
Gregory Nutt 11dab241de SPI slave: Prototype for MCU-specific slave initialization function removed from spi_slave.h 2016-01-26 13:04:12 -06:00
Gregory Nutt 49f3f30be4 Update submodules 2016-01-26 12:24:15 -06:00
Gregory Nutt efb5674742 drivers/ioexpander/pca9555: Now uses i2c_read and i2c_write instead of I2C_READ and I2C_WERITE 2016-01-26 11:07:47 -06:00
Gregory Nutt b6b3c2be3e Add I2C_TRANSFER based wrappers for I2C_TRANSFER as well 2016-01-26 10:57:51 -06:00
Gregory Nutt d4a53ee131 I2C: Eliminate the I2C_WRITEREAD method 2016-01-26 10:26:16 -06:00
Gregory Nutt 67f38169b2 drivers/i2c: Move wrapper that implements I2C_WRITEREAD using I2C_transfer from pc9555.c to a new, comon i2c directory 2016-01-26 09:58:18 -06:00
Gregory Nutt 7fb7bef2d2 Fix an error introduced with last IOB fix 2016-01-26 09:55:17 -06:00
Gregory Nutt a6b1e6bd23 Updat ChangeLog 2016-01-26 08:04:36 -06:00
Gregory Nutt f74fbecf52 PCA9555 I/O expander: Fix an error in addressing noted by Stefan Kolb; convert to use I2C_TRANSFER instead of I2C_WRITEREAD which is not thread safe 2016-01-26 07:59:36 -06:00
xuhang 26d40fa80c drivers/usbhost/hid_parser.c: Wrong size used in memcpy() 2016-01-25 20:00:11 -06:00
Gregory Nutt aad3b013f1 Update ChangeLog 2016-01-25 18:28:59 -06:00
Gregory Nutt 365e015010 iob_alloc_qentry() has the same issue that was recently fixed in iob_alloc() 2016-01-25 17:46:59 -06:00
Gregory Nutt eac271413f Add more 32-bit math operations; Update ChangeLog 2016-01-25 11:19:25 -06:00
Gregory Nutt 047ed9e543 Add some utilities to support 64-bit math operations on platforms that do not support long long types. Not yet used anywhere 2016-01-25 09:56:00 -06:00
=?UTF-8?B?6ZmI5p6X6aOe?= 0e3cd129ae Fix some issues with strcasecmp() conditional compilation and with memccpy() return value 2016-01-24 12:54:32 -06:00
=?UTF-8?Q?Manuel_St=c3=bchn?= 2bacc40350 Fix mismatched prototype error in work_queue() 2016-01-24 12:48:24 -06:00
Gregory Nutt abe8215a44 Refresh submodules 2016-01-24 09:16:18 -06:00
Gregory Nutt b6e128a4ce Merge branch 'master' of bitbucket.org:patacongo/nuttx 2016-01-24 09:15:29 -06:00
Gregory Nutt 146031b29e Flesh out unfinished lock() method implementations in al SPI drivers 2016-01-24 09:15:12 -06:00
Gregory Nutt 564a1ce606 Cosmetic clean-up of comments 2016-01-24 08:21:55 -06:00
Gregory Nutt 31cf7e0900 Fix missing semicolon 2016-01-23 21:21:15 -06:00
Gregory Nutt d87f7e99d2 NOkia LCD needs to initialize SPI before using it 2016-01-23 19:45:30 -06:00
Gregory Nutt a4a496ad6f spi.h needs to include errno.h now 2016-01-23 19:13:31 -06:00
Gregory Nutt 7ee6c5bcfc Minor clean-up for last big commit 2016-01-23 19:18:55 -06:00
Gregory Nutt 3a1d3bba5a Update ChangeLog 2016-01-23 18:59:51 -06:00
Gregory Nutt 7edf921c5e Remove CONFIG_SPI_OWNBUS: Now it is not just a good idea, it is the law 2016-01-23 18:54:36 -06:00
Gregory Nutt f6e49caba8 All SPI-based device drivers needs to call SPI_HWFEATURES() with zero in order to co-exist with drivers that use H/W features 2016-01-23 16:18:13 -06:00
Gregory Nutt c36c49657b Remove carriage returns from files 2016-01-23 15:26:10 -06:00
Gregory Nutt accd99db25 Add an optional hwfeatures method to the SPI interface 2016-01-23 15:12:45 -06:00
Gregory Nutt 9ece46e917 Costmetic update 2016-01-23 11:18:39 -06:00
Gregory Nutt 91b762aa86 Networking: Fix an error that I introduced with my last review changes 2016-01-22 17:35:06 -06:00
Gregory Nutt 3ba9e82c72 Update README 2016-01-22 17:21:49 -06:00
Gregory Nutt bf2106a684 Update ChangeLog 2016-01-22 16:26:16 -06:00
Andrew Webster 5c589e5b9c Net: use nlldbg since an iob can be added from an interrupt 2016-01-22 16:23:31 -06:00
Andrew Webster 49e5cc5a6f TCP: check for an active connection before cleaning it up
If there is no active connection (e.g. it is waiting in accept), then
the connection object, which doesn't yet exist, should not be cleaned
up when the socket is closed.
2016-01-22 16:22:09 -06:00
Andrew Webster 5e3023bef1 TCP: return from write when there is no buffer space
During a write, if there is no more buffer space for the user data,
return the amount that was written instead of waiting until there
is free space.  If nothing has been written yet, then block as before.

This solves a deadlock that occurs if the user data is too large to
fit in the available buffer:  the write thread will block before any
data is added to the write queue, leaving no possibility that more
buffers will free up when they are ACKed (since they have not yet been
sent).  The write thread will then block forever and hold all of the
buffers.
2016-01-22 16:19:20 -06:00
Andrew Webster e221777a7a TCP: post buffer semaphore before re-acquiring both
TCP uses two semaphores for buffers, one for the entire buffer pool,
and one for the number of allowed buffers for readahead.  To avoid
double taking a semaphore under heavy load, release the semaphore
after waiting before trying to acquire both again.
2016-01-22 16:15:10 -06:00
Andrew Webster 4875c6bbe3 TCP: check for connection before deleting it
It is possible for a socket to have no connection, for example if a TCP
socket is waiting in accept.  This checks for this condition in case the
socket is closed from a different thread.
2016-01-22 15:59:15 -06:00
Andrew Webster f1ef2c6cde TCP: attempt to flush the write buffers before closing
When a socket is closed, it should make sure that any pending write
data is sent before the FIN is sent.  It already would wait for all
sent data to be acked, however it would discard any pending write
data that had not been sent at least once.

This change adds a check for pending write data in addition to unacked
data.  However, to be able to actually send any new data, the send
callback must be left.  The callback should be freed later when the socket
is actually destroyed.
2016-01-22 15:58:02 -06:00
Andrew Webster cdd187a7f3 TCP: check for sndcb before using it 2016-01-22 15:54:45 -06:00
Andrew Webster df211ee46a TCP: add writable check during poll
When a poll requesting POLLOUT happens, the poll should return
immediately if a write will not block.  This change adds that, as
opposed to the old behaviour of blocking until a timer from the
Ethernet driver eventually triggers the poll to complete.

This is only implemented for buffered TCP.  Unbuffered TCP should
behave as before.
2016-01-22 15:52:14 -06:00
Andrew Webster 99f5fcda70 iTCP: use lowlevel syslog to avoid infinte recursion
If stdout is a socket (e.g. telnet), then the debug message will cause
more TCP data to be sent, which generates another message, and so on
2016-01-22 15:41:48 -06:00
Gregory Nutt 84d4cb007b clock_systimer: 64-bit timer accesses are not atomic. Noted by Freddie Chopin. 2016-01-22 12:24:36 -06:00
Gregory Nutt 7ead6b4972 Update submodules 2016-01-22 10:46:43 -06:00
Gregory Nutt 2dcebe1e3d Purely cosmetic changes from review of last commit 2016-01-22 07:11:29 -06:00
Stefan Kolb 2b05f3e830 I/O Expander: Fix some bad macros, make naming consisted 2016-01-22 07:08:59 -06:00
Gregory Nutt 2de5be34e5 Update ChangeLog 2016-01-21 19:29:43 -06:00
Gregory Nutt d68d9cbd32 Fix typo introduced in the last commit 2016-01-21 16:51:28 -06:00