nuttx/include/nuttx
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
..
1wire ds28e17.h edited online with Bitbucket 2018-04-05 12:08:56 +00:00
analog Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
audio Adds loopback test for digital MIC on lc823450 via i2schar driver. 2018-06-05 10:34:22 -06:00
binfmt Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
can arch/arm/src/samv7: Add ability for CAN BUS_OFF autorecovery according ISO11898-1:2015. With this change we added an ioctl for triggering the autorecovery sequence for BUS_OFF to the CAN-driver and the SAMV7 low-level driver. According the datasheet: If the device goes Bus_Off, it will set MCAN_CCCR.INIT of its own accord, stopping all bus activities. Once MCAN_CCCR.INIT has been cleared by the processor (application), the device will then wait for 129 occurrences of Bus Idle (129 * 11 consecutive recessive bits) before resuming normal operation. At the end of the Bus_Off recovery sequence, the Error Management Counters will be reset. During the waiting time after the resetting of MCAN_CCCR.INIT, each time a sequence of 11 recessive bits has been monitored, a Bit0 Error code is written to MCAN_PSR.LEC, enabling the processor to readily check up whether the CAN bus is stuck at dominant or continuously disturbed and to monitor the Bus_Off recovery sequence. MCAN_ECR.REC is used to count these sequences. 2018-07-04 07:48:59 -06:00
contactless Add an instance argument to the SPIDEV definitions. 2017-04-29 12:26:52 -06:00
crypto Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
drivers This commit adds a 1wire subsystem. 2018-04-04 10:57:36 -06:00
eeprom drivers/eeprobom: EEPROM driver for AT24xx compatible EEPROMs. 2018-02-14 07:53:01 -06:00
fs fs/cromfs and tools/gencromfs: Various fixes for traversal relative file paths. Biggest changes is in types used: Cannot use size_t or mode_t in common structures because they have different sizes on the (64-bit) host and the (32-bit) target. Use uint32_t instead of size_t for offsets. Use uint16_t instead of mode_t. 2018-03-20 12:37:01 -06:00
i2c i2c/i2c_master.h: Change incorrect comment about I2C_TRANSFER return value to indicate that the method returns zero on success rather than the number of bytes transferred. 2018-03-22 06:51:09 -06:00
input Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
ioexpander configs/stm32f103-minimum: Remove nonsensical #error. 2018-01-09 11:17:01 -06:00
lcd drivers/lcd and configs/olimex-lpc1766stk: Remove support for the Nokia6100 LCD. That LCD uses a 9-bit SPI interface (the 9th bit being the command/data bit that is normally a discrete). That communication was never successfully integrated. I now believe that it would would require some special support from the low-level, MCU SPI driver to manage that 9th bit. The deleted code is still available in the Obsoleted repository in the nuttx/drivers/lcd, nuttx/configs/olimex-lpc1766stk, and Patches directories. 2018-05-19 16:46:21 -06:00
leds Costmetic changes from review of last PR. 2018-05-02 16:29:22 -06:00
lib libm: Port gamma() and lgamma() from FreeBSD to NuttX. 2017-08-08 07:02:39 -06:00
mm net/tcp: Re-think CONFIG_NET_TCP_RWND_CONTROL TCP windowing controls. 2018-06-24 14:46:12 -06:00
modem include/nuttx/modem: Move all modem-related IOCTL commands to a common file to assure that they will be unique 2016-09-16 09:39:51 -06:00
mtd /include/nuttx/mtd/configdata.h: Fix copy-paste comment in configdata.h 2018-05-08 09:09:47 -06:00
net 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. 2018-07-04 14:10:40 -06:00
nx Make sure that labeling is used consistently in all function headers (part 3). 2018-02-01 12:17:03 -06:00
power Merged in raiden00/nuttx (pull request #626) 2018-04-09 12:59:28 +00:00
sensors drivers/sensors: Add support for Telair T6713 carbon dioxide sensor 2018-06-15 06:52:16 -06:00
serial Squashed commit of the following: 2017-07-28 12:01:05 -06:00
spi include/nuttx/spi/spi.h: Add a definition for a USBHOST SPI device. drivers/usbhost/usbhost_max3421e.c: Review and correct SPI locking usage. 2018-07-04 08:55:43 -06:00
syslog syslog: Enable is partial, crippled version of syslog_flush(); arch/: Call syslog_flush() from assertion handling logic. 2018-06-07 16:29:16 -06:00
timers Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
usb This commit adds support for the Maxim M3421E USB host driver. 2018-07-03 18:49:51 -06:00
video include/nuttx/fb.h: Fix a type _BEND -> _BLEND 2018-05-18 13:36:58 -06:00
wireless include/nuttx/wireless/bluetooth: Move Bluetooth header files from include/nuttx/wireless to include/nuttx/wireless/bluetooth for symmetry with other wireless technologies. 2018-04-29 12:43:09 -06:00
.gitignore
addrenv.h
arch.h sched/sched: Implements a global scheduler lock capability as part of SMP support. This allows the scheduler to be locked with no knowledge or access to the TCB of the currently running task. This is necessary because accessing the TCB of the currenlty running task is, itself, a non-atomic operation. This global scheduler lock cpability was add just to support that atomic access to the TCB. 2018-02-05 13:12:36 -06:00
ascii.h ASCII: Improve some naming 2016-04-14 16:20:36 -06:00
board.h This commit eliminates the BOARDIOC_TSCTEST_SETUP command. 2018-01-17 09:33:28 -06:00
cancelpt.h Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
clock.h Elimate use of the non-standard type systime_t and replace it the equivalent, standard type clock_t 2018-06-16 12:16:13 -06:00
compiler.h compiler.h: Fix some GCC warnings introduced for SDCC support. Basically a naming collision. 2017-10-02 07:09:31 -06:00
init.h enter/leave_critical_section: In SMP configuration, may attempt to access the task lists before they have been initialized 2016-05-18 09:17:01 -06:00
irq.h spin_lock_irqsave() and spin_unlock_irqrestore() are only valid if the CPU supports global disabling of interrupts. 2018-02-04 15:41:22 -06:00
kmalloc.h profcs: At file to should user space heap. This replaces the NSH free command. 2017-11-13 12:51:33 -06:00
kthread.h Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
mmcsd.h Add capabilities() method to SDIO interface. Remove CONFIG_SDIO_WIDTH_D1_ONLY. That should not be a global propertie, but rather a capability/limitation of single slot when there may be multiple slots. 2017-01-31 09:16:01 -06:00
module.h Module names are not needed in libc/modlib when the module library is used only for shared library support. 2017-01-29 12:23:24 -06:00
mqueue.h Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
page.h
pgalloc.h mm/mm_gran: Add a function to get information about the state of the granuale allocator. 2017-11-14 14:41:03 -06:00
poff.h Fix names of pre-processor variables used in header file idempotence 2016-08-06 19:21:42 -06:00
progmem.h progmem interface: Discern r/w and erase page sizes. Introduce new up_progmem_erasesize architecture API to be able to communicate the read/write page size independently from erase page size. Implement up_progmem_erasesize for all architectures that already support progmem, assuming that for those architectures the sizes of both read/write and erase pages are identical. 2018-05-01 06:23:52 -06:00
pthread.h Move cancellation point definitions to their own header file. 2016-12-10 09:08:26 -06:00
random.h Standardization of some function headers. 2018-03-13 09:52:27 -06:00
sched.h Elimate use of the non-standard type systime_t and replace it the equivalent, standard type clock_t 2018-06-16 12:16:13 -06:00
sched_note.h Update ChangeLog in prep for 7.20 release. 2017-03-08 10:09:48 -06:00
scsi.h
sdio.h arch/arm/src/lkpc54xx: In SDMMC driver, fix an error which was clobbering the interrupt mask register (xfrmask). Also, add a kludge for the missing DTO interrupt. 2017-12-20 18:39:10 -06:00
semaphore.h Elimate use of the non-standard type systime_t and replace it the equivalent, standard type clock_t 2018-06-16 12:16:13 -06:00
signal.h Standardization of some function headers. 2018-03-13 09:52:27 -06:00
spawn.h
spinlock.h armv7-a, armv7-r, armv7-m: Add atomic read-add-write and read-subtract-write functions. 2018-02-04 12:22:03 -06:00
streams.h Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
symtab.h Modules: Add mod_setsymtab to set global symtol table once. Now we can remove symbol table parameters from the insmod call. This will make implementing an NSH insmod command much easier 2015-12-13 08:10:01 -06:00
time.h Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
tls.h TLS: Simplify 2016-03-11 07:17:32 -06:00
tree.h include/: Remove dangling space at the end of lines. 2017-06-28 13:30:08 -06:00
userspace.h Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
vt100.h
wdog.h Standardization of some function headers. 2018-03-13 09:52:27 -06:00
wqueue.h Elimate use of the non-standard type systime_t and replace it the equivalent, standard type clock_t 2018-06-16 12:16:13 -06:00
zoneinfo.h include/: Remove dangling space at the end of lines. 2017-06-28 13:30:08 -06:00