Commit Graph

12760 Commits

Author SHA1 Message Date
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
Gregory Nutt
032ad1b70b Remove clock_systimer32 and clock_systimer64. There is now only clock_systimer 2016-01-21 16:49:24 -06:00