Commit Graph

47 Commits

Author SHA1 Message Date
Gregory Nutt
22cd0d47fa This commit attempts remove some long standard confusion in naming and some actual problems that result from the naming confusion. The basic problem is the standard MTU does not include the size of the Ethernet header. For clarity, I changed the naming of most things called MTU to PKTSIZE. For example, CONFIG_NET_ETH_MTU is now CONFIG_NET_ETH_PKTSIZE.
This makes the user interface a little hostile.  People thing of an MTU of 1500 bytes, but the corresponding packet is really 1514 bytes (including the 14 byte Ethernet header).  A more friendly solution would configure the MTU (as before), but then derive the packet buffer size by adding the MAC header length.  Instead, we define the packet buffer size then derive the MTU.

The MTU is not common currency in networking.  On the wire, the only real issue is the MSS which is derived from MTU by subtracting the IP header and TCP header sizes (for the case of TCP).  Now it is derived for the PKTSIZE by subtracting the IP header, the TCP header, and the MAC header sizes.  So we should be all good and without the recurring 14 byte error in MTU's and MSS's.

Squashed commit of the following:

    Trivial update to fix some spacing issues.
    net/: Rename several macros containing _MTU to _PKTSIZE.
    net/: Rename CONFIG_NET_SLIP_MTU to CONFIG_NET_SLIP_PKTSIZE and similarly for CONFIG_NET_TUN_MTU.  These are not the MTU which does not include the size of the link layer header.  These are the full size of the packet buffer memory (minus any GUARD bytes).
    net/: Rename CONFIG_NET_6LOWPAN_MTU to CONFIG_NET_6LOWPAN_PKTSIZE and similarly for CONFIG_NET_TUN_MTU.  These are not the MTU which does not include the size of the link layer header.  These are the full size of the packet buffer memory (minus any GUARD bytes).
    net/: Rename CONFIG_NET_ETH_MTU to CONFIG_NET_ETH_PKTSIZE.  This is not the MTU which does not include the size of the link layer header.  This is the full size of the packet buffer memory (minus any GUARD bytes).
    net/: Rename the file d_mtu in the network driver structure to d_pktsize.  That value saved there is not the MTU.  The packetsize is the memory large enough to hold the maximum packet PLUS the size of the link layer header.  The MTU does not include the link layer header.
2018-07-04 14:10:40 -06:00
Gregory Nutt
e59b26370d Squashed commit of the following:
Fix a few typo/compilation problems.
    net/:  Remove all CONFIG_NET_xxx_TCP_RECVWNDO configuration variables.  They were used only to initialize the d_recwndo of the network device structure which no longer exists.
    net/:  Remove the device TCP receive window field (d_recvwndo) from the device structure.  That value is no longer retained, but is calculated dynamically.
    Remove some dangling references to CONFIG_NET_TCP_RWND_CONTROL.
    net/tcp:  Take read-ahead throttling into account when calculating the TCP receive window size.
    net/tcp: tcp_get_recvwindow() now returns the receive window size directly (vs. indirectly via the device structure).
    net/tcp:  Remove CONFIG_NET_TCP_RWND_CONTROL.  TCP window algorithm is now trigged only by CONFIG_NET_TCP_READAHEAD.
2018-07-01 07:59:33 -06:00
Gregory Nutt
95aa9bede3 configs/misoc: Fix misoc 'board' configuration so that it survives a refresh and is consistent with other board configurations. 2018-06-17 11:31:03 -06:00
Gregory Nutt
e4922ed9f0 Remove instructures to CD to tools/ before running ./configure.sh
Squashed commit of the following:

    configs/*/README.txt: Replace each occurrence of './configure.sh' with 'tools/configure.sh'
    configs/*/README.txt:  Remove 'cd ..' after each './configure.sh'
    configs/*/README.txt:  Remove 'cd -' after each './configure.sh'
    configs/*/README.txt:  Remove 'cd tools' before each './configure.sh'
    configs/README.txt:  Remove instruction to CD tools/ before running configure.sh.
2018-05-09 11:41:46 -06:00
Gregory Nutt
dc8941e958 configs/: Add definition of strip to many Make.defs files. 2018-03-25 09:25:37 -06:00
Gregory Nutt
cccc86da09 This change adds support for semi-standard IPPROTO_ICMP AF_INET datagram sockets. This replaces the old ad hoc, nonstandard way of implementing ping with a more standard, socket interface.
Squashed commit of the following:

    net/icmp:  Finishes off icmp_recvfrom().
    net/icmp:  Add readahead support for IPPROTO_ICMP sockets.
    net/icmp:  Add poll() support for IPPROTO_ICMP sockets.
    net/icmp:  Add a connection structure for IPPROTO_ICMP sockets.
    net/icmp:  Implements sendto for the IPPROTO_ICMP socket.
    net/icmp:  Move icmp_sendto() and icmp_recvfrom() to separate files.  They are likely to be complex (when they are implemented).
    net/icmp:  Hook IPPROTO_ICMP sockets into network.  Fix some naming collisions.  Still missing basic ICMP send/receive logic.
    configs: apps/system/ping current need poll() enabled.
    configs: All defconfig files that use to enable low-level support must now enabled CONFIG_SYSTEM_PING.
    net/icmp:  Adds basic build framework to support IPPROTO_ICMP sockets.
2017-10-23 08:45:12 -06:00
Gregory Nutt
b750df8f46 Removes last of duplicat Make.defs files. 2017-07-11 09:57:57 -06:00
Gregory Nutt
90f38af8dc More conversions of defconfig files to compressed format. Not yet finished. 2017-07-09 18:48:28 -06:00
Gregory Nutt
771cbc8e3a Partial conversion of defconfig files to compressed format 2017-07-09 18:24:03 -06:00
Gregory Nutt
a469f0ef04 Documentation/: Remove dangling space at the end of lines. 2017-06-28 13:27:10 -06:00
Gregory Nutt
f0cdb0e6b4 clicker2-stm32/mrg24j40-6lowpan: Add apps/examples/nettest. Refresh all configurations that enable the nettest. 2017-06-23 18:11:15 -06:00
Gregory Nutt
f5856282f5 defconfigs: examples/nettest configuration name change 2017-06-23 15:50:02 -06:00
Gregory Nutt
2043e1a114 IOBs: Move from driver/iob to a better location in mm/iob 2017-05-09 07:35:30 -06:00
Gregory Nutt
9aac1dd44d configs: Remove all setenv.bat files. Remove all references to setenv.sh and setenv.bat from all config README files. 2017-04-26 10:12:13 -06:00
Gregory Nutt
1620ff05f4 Remove all setenv.sh files. 2017-04-26 07:49:37 -06:00
Gregory Nutt
bfb93338f6 Move net/iob to drivers/iob so that the I/O buffering feature can be available to other drivers when networking is disabled. 2017-04-20 16:08:49 -06:00
Gregory Nutt
bcc6b61fc1 Move include/nuttx/net/iob.h to include/drivers/iob.h; rename CONFIG_NET_IOB to CONFIG_DRIVERS_IOB 2017-04-20 14:53:30 -06:00
Gregory Nutt
c071e2a30c Make sure that CONFIG_PTHREAD_MUTEX_ROBUST=y is selected every configuration that enabled pthreads. 2017-03-27 09:21:03 -06:00
Gregory Nutt
b07d3fc305 Rename CONFIG_MUTEX_TYPES to CONFIG_PTHREAD_MUTEX_TYPES 2017-03-27 09:08:14 -06:00
Gregory Nutt
c428661e18 apps/examples/usbterm is gone because it can be configured to perform an illegal call into the OS. Remove all traces of CONFIG_EXAMPLES_USBTERM* and all of the illegal device support. 2017-03-09 15:39:28 -06:00
Gregory Nutt
245e2fe42a Refresh all Misoc configurations 2017-03-09 10:31:47 -06:00
Gregory Nutt
1d290c2b37 setvbuf: Add support for disabling I/O buffering. Initially cut; untested. 2017-02-09 09:24:44 -06:00
Gregory Nutt
f858027d56 Configurations that enable OSTEST must not disable signals. 2017-01-24 09:26:11 -06:00
Gregory Nutt
3c4684ef5f Eliminate CONFIG_ARCH_OPTIMIZED_FUNCTIONS. Move options to select architectur-specific C library options from libc/Kconfig to libc/machine/Kconfig and rename. 2017-01-20 09:30:07 -06:00
Gregory Nutt
f063e4c5ac Remove Calypso architecture support and support for Calypso SERCOMM driver. 2016-12-13 18:35:52 -06:00
Gregory Nutt
62114755c9 Misoc hello configuration needs HP work queue enabled. 2016-12-03 17:37:07 -06:00
Gregory Nutt
7467329a98 Eliminate CONFIG_NO_NOINTS. Lots of files changed -> lots of testing needed. 2016-12-03 16:28:19 -06:00
Gregory Nutt
c0cbea2550 Remove RGMP and RGMP drivers. 2016-12-02 09:49:33 -06:00
Gregory Nutt
44e747ebf1 Remove all references to CONFIG_NET_MULTIBUFFER from configs/ 2016-11-29 15:07:30 -06:00
Ramtin Amin
f3e6264654 configs/misoc: Add a sample directory containing generated sources. This is really only useful for performing test builds. You really must generate the Misoc architecture for a real-life build. 2016-11-28 13:30:46 -06:00
Gregory Nutt
f9a7898bd4 Clean-up some miscellaneous kruft 2016-11-28 13:24:19 -06:00
Gregory Nutt
a8ea23c59c Update README 2016-11-28 11:22:32 -06:00
Ramtin Amin
b568bfa813 Misoc LM3: Add Misoc Ethernet driver. Integrate network support into configs/misoc/hello. Remove configs/misoc/include/generated directory. I suppose the the intent now is that this is a symbolic link? DANGER! This means that you cannot compile this code with first generating these files a providing a symbolic link to this location! 2016-11-28 11:08:29 -06:00
Ramtin Amin
7568aaf213 Misoc LM32: Add signal handling logic 2016-11-24 12:58:23 -06:00
Ramtin Amin
d1e84fb788 Misoc: Add timer driver 2016-11-22 12:10:11 -06:00
Gregory Nutt
6d2a10571f Update README 2016-11-08 08:22:07 -06:00
Ramtin Amin
2964779985 configs/misoc: Add an NSH configuration 2016-11-07 10:10:44 -06:00
Gregory Nutt
155f863ca1 Update README 2016-11-07 07:04:44 -06:00
Gregory Nutt
1753949045 Update README 2016-11-06 08:55:15 -06:00
Gregory Nutt
5dc9d963f6 configs/misco: CONFIG_DEFAULT_SMALL should not be set either. It is really too late now, hoever, because all of the small defaults have already been set. 2016-11-05 08:49:50 -06:00
Gregory Nutt
479c9776a7 configs/misoc: Should not have CONFIG_MM_SMALL set in defconfig. 2016-11-05 08:42:33 -06:00
Gregory Nutt
5a9d3b20fa LM32: Add README. Update hello defconfig and setenv.sh 2016-11-04 17:19:42 -06:00
Ramtin Amin
45caca804a LM32: Progress on interrupt and serial driver. 2016-11-04 14:04:43 -06:00
Ramtin Amin
b2126738cd LM32: Fix implementation of up_irq_save() and up_irq_restore() 2016-11-04 10:54:10 -06:00
Gregory Nutt
cb96e632fa LM32: Add toolchain configuration; Add Toolchain.defs. 2016-11-03 07:21:25 -06:00
Ramtin Amin
b5a94e255a Misoc/LM32: Changes to get a clean compilation after initial review and commit 2016-11-02 12:07:52 -06:00
Ramtin Amin
19f5a5f49d MISOC LM32: configs/misoc board support for testing 2016-11-01 16:14:18 -06:00