Commit Graph

174 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
8bd9cfe038 Squashed commit of the following:
arch/arm:  Remove support for CONFIG_ARMV7M_CMNVECTOR.  It is now the only vector support available.  Also remove CONFIG_HAVE_CMNVECTOR.  That no longer signifies anything."
    arch/arm/src/stm32:  This commit removes support for the dedicated vector handling from the STM32 architecture support. Only common vectors are now supported.
2018-06-20 12:30: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
d891776582 stm32f429i-disco, stm3240g-eval, stm3220g-eval, stm3210e-eval: Eliminate duplicate Make.defs files. 2017-07-11 07:34:09 -06:00
Gregory Nutt
5a9eebe270 More conversions of defconfig files to compressed format. All but Windows native configurati9ons. 2017-07-09 20:05:59 -06:00
Gregory Nutt
47be509d79 Rename CONFIG_STM32_STM32F40XX to CONFIG_STM32_STM32FXXXX since it is used by F4 parts other than F40x 2017-07-06 10:20:14 -06:00
Gregory Nutt
cd54a0340f Fix a typo. And typo in Kconfig file is reflect in all defconfig files. 2017-06-15 14:29:09 -06:00
Gregory Nutt
b0fda33e13 Kconfig: Rename CONFIG_ARM_TOOLCHAIN_IAR to CONFIG_ARCH_TOOLCHAIN_IAR 2017-05-13 16:01:38 -06:00
Gregory Nutt
6e4918c557 Remove CONFIG_ARM_TOOLCHAIN_GNU; replace with CONFIG_ARCH_TOOLCHAIN_GNU 2017-05-13 13:28:15 -06:00
Gregory Nutt
7fe112fe4c Kconfig/deconfigs: Add CONFIG_ARCH_TOOLCHAIN_GNU to indicate that the toolchain is based on GNU gcc/as/ld. This is in addition to the CPU-specific versions of the same definition. 2017-05-13 11:44:12 -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
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
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
d0813aa0c5 Refresh all ARM configurations 2017-03-09 10:23:41 -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
d9e040d76b Remove all Calypso board configurations 2016-12-13 18:24:49 -06:00
Gregory Nutt
83477c55f8 STM32 Ethernet configurations must have work queue enabled. 2016-12-03 17:06:14 -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
Gregory Nutt
439c72e7c8 Refresh all networking configurations due to changes in work-queue related configuration variables for Ethernet drivers. 2016-11-19 09:41:24 -06:00
Beat Küng
c7da88e383 CXXFLAGS: add -fcheck-new whenever -fno-exceptions is used
This is to avoid GCC to optimize null-pointer checks away, in case the
default operator new is used together with -fno-exceptions.
2016-08-22 08:35:01 +02:00
Gregory Nutt
b071e4ce92 Refresh all STM32, EFM32, and SAMV7 configurations for SPI H/W features configuration changes 2016-08-08 12:50:14 -06:00
Gregory Nutt
f43ded46e6 Rename arch/sh to arch/renesas, cont'd 2016-08-06 14:03:38 -06:00
Gregory Nutt
2a19e16eb0 libc/hex2bin: Move the portable library portion of apps/system/hex2bin to nuttx/libc/hex2bin where it can be shared with the OS internals. 2016-06-27 11:22:38 -06:00
Gregory Nutt
1377452394 Refresh all ARM configurations 2016-06-23 15:59:14 -06:00
Gregory Nutt
5118264e6c Rename CONFIG_SYSLOG_CONSOLE to CONFIG_CONSOLE_SYSLOG 2016-06-21 09:35:51 -06:00
Gregory Nutt
5b2aa7bf99 Remove all traces of CONFIG_SYSLOG 2016-06-19 13:59:43 -06:00
Gregory Nutt
1cdc746726 Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES 2016-06-11 14:14:08 -06:00
Gregory Nutt
d89eefc6a5 Refresh all STM32 configurations 2016-05-25 12:39:28 -06:00
Gregory Nutt
9ec104834a Remove CONFIG_USARTn_ISUART 2016-05-25 11:21:48 -06:00
Gregory Nutt
c089a2f241 Rename CONFIG_ARCH_HAVE_OTHER_UART to CONFIG_OTHER_UART_SERIALDRIVER 2016-05-25 10:48:33 -06:00
Gregory Nutt
e2e6ce3f1b Rename CONFIG_ARCH_HAVE_SCIn to CONFIG_SCIn_SERIALDRIVER 2016-05-25 10:46:55 -06:00
Gregory Nutt
2a87741e72 Rename CONFIG_ARCH_HAVE_UARTn to CONFIG_UARTn_SERIALDRIVER 2016-05-25 10:45:01 -06:00
Gregory Nutt
249a2e48e5 Rename CONFIG_ARCH_HAVE_USARTn to CONFIG_USARTn_SERIALDRIVER 2016-05-25 10:39:23 -06:00
Gregory Nutt
3228d32938 Correct permmisions on executable scripts 2016-04-10 09:11:59 -06:00
Gregory Nutt
7337e748de Merge in configs/ submodule 2016-04-10 07:57:59 -06:00
Gregory Nutt
379a61621c STM3240G-EVAL and VIEWTOOL-STM32F107: Refresh configurations; add support to register the RTC driver 2016-04-03 13:34:04 -06:00
Gregory Nutt
99df0f459d All STM32 configurations need to set CONFIG_ARM_TOOLCHAIN_GNU=y 2016-04-02 07:21:25 -06:00
Gregory Nutt
ad61b7ab3e Remove all references to CONFIG_SYSTEM_SDCARD 2016-03-30 17:53:19 -06:00
Gregory Nutt
e5b0c0e502 Remove most unused references to CONFIG_NET_MULTICAST. Rename other uses of CONFIG_NET_MULTICAST to avoid naming comflicts. 2016-03-20 13:15:58 -06:00
Gregory Nutt
4b1c510f6f Refresh all STM32 configurations 2016-03-08 17:03:32 -06:00
Gregory Nutt
f5c987a627 Change name IMX to IMX1 in configuration variable names to make room for i.MX6 2016-02-28 15:19:19 -06:00
Gregory Nutt
12c14ee718 Rename CONFIG_WIRELESS to CONFIG_DRIVERS_WIRELESS 2016-02-26 16:45:29 -06:00
Gregory Nutt
6b449ac409 The I2C_TRANSFER method is no longer optional 2016-01-31 14:15:32 -06:00
Gregory Nutt
656e730f8f apps/system/ramtron has been removed. 2016-01-27 10:39:30 -06:00