Commit Graph

12697 Commits

Author SHA1 Message Date
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
Gregory Nutt b04e2ea021 Trivial improvement to comments 2016-01-21 16:28:36 -06:00
Gregory Nutt 72bd1e7634 Yet another error introduced with last clock_systimer changes 2016-01-21 14:12:52 -06:00
Gregory Nutt 19919d630b Yet another error introduced with last clock_systimer changes 2016-01-21 14:09:06 -06:00
Gregory Nutt c4e61a4761 Fix another error introduced with last clock_systimer changes 2016-01-21 14:05:50 -06:00
Gregory Nutt 7db9a952bc Fix an error in conditional compilation introduced in the last set of changes 2016-01-21 13:42:34 -06:00
Gregory Nutt a4f5254cbe Fix a typo introduced into the last commit 2016-01-21 13:48:35 -06:00
Gregory Nutt e001f37593 sched/clock/clock_timespec.c: Fix an error in the time conversion 2016-01-21 13:31:00 -06:00
Gregory Nutt de995653fe Fix a typo from the last big set of changes 2016-01-21 12:26:53 -06:00
Gregory Nutt f348e68069 Update to use 64-bit timer when available 2016-01-21 11:54:26 -06:00
Gregory Nutt cb7bbdfed4 Update submodules 2016-01-21 08:55:29 -06:00
Gregory Nutt 350890d598 Update submodule 2016-01-20 14:37:39 -06:00
Gregory Nutt 3986f6cdee Part of last change was still in the editor 2016-01-20 13:09:03 -06:00
Gregory Nutt 3a59eb4340 Fix romdisk_register prototype. Most ROMFS images actually lie in RAM. If moved to FLASH with const storage class, then changes are required to avoid warnings 2016-01-20 13:04:07 -06:00