incubator-nuttx/include/nuttx
Gregory Nutt 3c0b49448a Network Loopback Driver: A configuration option to control packet size.
Historically, the loopback driver used the largest packet size of all enabled link layer protocols.  This permitted packets to be forward via the loopbak device with no major loss of performance.  However, in experimenting with configurations where no other link layer protocols were enabled, this means the loopback packet size was set to the smallest possible size, to the SLIP minimum of 296 bytes.  This resulted in terrible loopback performance.

    This commit adds an option to increase the loopback packet size with the option CONFIG_NET_LOOPBACK_PACKETSIZE.

    The loopback driver packet buffer should be quite large.  The larger the loopback packet buffer, the better will be TCP performance of the loopback transfers.  The Linux loopback device historically used packet buffers of size 16Kb, but that was increased in recent Linux versions to 64Kb.  Those sizes may be excessive for resource constrained MCUs, however.

    The network still enforces the lower limit that is the maximum packet size of all enabled link layer protocols.  But this new option permits the loopback packet size to be increased from that.

    * net/Kconfig:  Adds CONFIG_NET_LOOPBACK_PKTSIZE option
    * include/nuttx/net/netconfig.h:  Assures that the packet size that is used is at least as large as the largest packet size of other link layer protocols.
    * drivers/net/loopback.c:  Use that larger packet size.
    * boards/sim/sim/sim/configs/tcploop/defconfig:  Set the loopback packet size to 1500
2020-02-10 22:17:32 -03:00
..
1wire
analog Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
audio Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
binfmt ELF64 support (#220) 2020-02-07 17:10:23 -06:00
can Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
contactless
crypto Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
drivers Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
eeprom Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
fs Remove psock_send and sockfd_socket from net/socket/socket.h 2020-01-31 13:45:15 -06:00
i2c
input Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
ioexpander include/nuttx/ioexpander/gpio.h: Add guards so that file content will not compile unless CONFIG_DEV_GPIO is selected. 2019-11-03 19:46:56 -06:00
lcd Ensure all source code end with one and only one newline 2020-02-08 07:25:56 -06:00
leds
lib ELF64 support (#220) 2020-02-07 17:10:23 -06:00
mbox This commit brings in the drivers needed to support OpenAMP. These changes were ported from https://github.com/FishsemiCode/nuttx. The current state: Most drivers do now compile but are not yet verfied. 2019-11-02 11:30:33 -06:00
mm Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
modem Merged in alinjerpelea/nuttx (pull request #1056) 2019-10-21 14:14:33 +00:00
mtd Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
net Network Loopback Driver: A configuration option to control packet size. 2020-02-10 22:17:32 -03:00
nx Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
power Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
rf
rptun Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
sensors Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
serial Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
spi Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
syslog Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
timers Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
usb Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
video Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
wireless Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
.gitignore
addrenv.h Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
arch.h Call xxx_timer_initialize from clock subsystem 2020-02-08 07:40:06 -06:00
ascii.h
b2c.h This commit brings in the drivers needed to support OpenAMP. These changes were ported from https://github.com/FishsemiCode/nuttx. The current state: Most drivers do now compile but are not yet verfied. 2019-11-02 11:30:33 -06:00
board.h
cache.h
cancelpt.h
clock.h sched/pthread, Documentation: fix pthread_key_delete, pthread_self and pthread_yield documentation and some comments. 2019-10-17 11:04:17 -06:00
compiler.h include/nuttx/compiler.h: Changes that go along with commit 0002258f17 2019-10-31 18:11:28 -06:00
elf.h ELF64 support (#220) 2020-02-07 17:10:23 -06:00
environ.h
envpath.h
init.h libs/libc/unistd/lib_getcwd.c: remove stray sched_unlock(). Also fixes several typos. 2019-09-20 06:23:48 -06:00
irq.h
kmalloc.h
kthread.h
list.h include/nuttx/list.h: fix typos 2020-01-18 21:44:07 -06:00
mmcsd.h
module.h
mqueue.h Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
mutex.h
nuttx.h
page.h
pgalloc.h
progmem.h
pthread.h
random.h
sched.h Re-implements reverted commit 344f7bc9f6 in a way that should not have the undesired side-effect. include/nuttx/sched.h: Add a bit to the TCB flags to indicat the thread is a user thread in a syscall. sched/nuttx/nxsig_dispatch.c: Delay dispatching to signal handlers if within a system call. In all syscall implementations: Process delayed signal handling when exiting system call. 2019-11-28 12:47:36 -06:00
sched_note.h Fix various typos and spelling errors. 2019-12-12 07:41:51 -06:00
scsi.h Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00
sdio.h
semaphore.h Fix wait loop and void cast (#24) 2020-01-02 10:54:43 -06:00
signal.h
spawn.h
spinlock.h sched/semaphore/spinlock.c: spin_trylock handle memory barrier and instrumentation correctly. 2019-11-03 19:40:58 -06:00
streams.h drivers/syslog: syslog_force does not set errno so do not test against it. Some changes to comments. 2019-09-16 07:48:48 -06:00
symtab.h Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
time.h Remove TIME_EXTENDED option to more conform C standard 2020-01-23 08:17:22 -06:00
tls.h
tree.h
userspace.h
vt100.h
wdog.h
wqueue.h Replace #include <semaphore.h> to #include <nuttx/semaphore.h> 2020-02-01 08:27:30 -06:00
zoneinfo.h