/** ****************************************************************************** * @file LwIP/LwIP_TCP_Echo_Server/Inc/lwipopts.h * @author MCD Application Team * @brief lwIP Options Configuration. ****************************************************************************** * @attention * * Copyright (c) 2017 STMicroelectronics. * All rights reserved. * * This software is licensed under terms that can be found in the LICENSE file * in the root directory of this software component. * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** *//* ... */#ifndef__LWIPOPTS_H__#define__LWIPOPTS_H__/** * NO_SYS==1: Provides VERY minimal functionality. Otherwise, * use lwIP facilities. *//* ... */#defineNO_SYS1/** * SYS_LIGHTWEIGHT_PROT==0: disable inter-task protection (and task-vs-interrupt * protection) for certain critical regions during buffer allocation, deallocation * and memory allocation and deallocation. *//* ... */#defineSYS_LIGHTWEIGHT_PROT0/* ---------- Memory options ---------- *//* MEM_ALIGNMENT: should be set to the alignment of the CPU for which lwIP is compiled. 4 byte alignment -> define MEM_ALIGNMENT to 4, 2 byte alignment -> define MEM_ALIGNMENT to 2. *//* ... */#defineMEM_ALIGNMENT4/* MEM_SIZE: the size of the heap memory. If the application will senda lot of data that needs to be copied, this should be set high. *//* ... */#defineMEM_SIZE(10*1024)/* MEMP_NUM_PBUF: the number of memp struct pbufs. If the application sends a lot of data out of ROM (or other static memory), this should be set high. *//* ... */#defineMEMP_NUM_PBUF10/* MEMP_NUM_UDP_PCB: the number of UDP protocol control blocks. One per active UDP "connection". *//* ... */#defineMEMP_NUM_UDP_PCB6/* MEMP_NUM_TCP_PCB: the number of simultaneously active TCP connections. *//* ... */#defineMEMP_NUM_TCP_PCB10/* MEMP_NUM_TCP_PCB_LISTEN: the number of listening TCP connections. *//* ... */#defineMEMP_NUM_TCP_PCB_LISTEN5/* MEMP_NUM_TCP_SEG: the number of simultaneously queued TCP segments. *//* ... */#defineMEMP_NUM_TCP_SEG8/* MEMP_NUM_SYS_TIMEOUT: the number of simulateously active timeouts. *//* ... */#defineMEMP_NUM_SYS_TIMEOUT10---------- Memory options/* ---------- Pbuf options ---------- *//* PBUF_POOL_SIZE: the number of buffers in the pbuf pool. */#definePBUF_POOL_SIZE8/* PBUF_POOL_BUFSIZE: the size of each pbuf in the pbuf pool. */#definePBUF_POOL_BUFSIZE512---------- Pbuf options/* ---------- TCP options ---------- */#defineLWIP_TCP1#defineTCP_TTL255/* Controls if TCP should queue segments that arrive out of order. Define to 0 if your device is low on memory. *//* ... */#defineTCP_QUEUE_OOSEQ0/* TCP Maximum segment size. */#defineTCP_MSS(1500-40)/* TCP_MSS = (Ethernet MTU - IP header size - TCP header size) *//* TCP sender buffer space (bytes). */#defineTCP_SND_BUF(4*TCP_MSS)/* TCP_SND_QUEUELEN: TCP sender buffer space (pbufs). This must be at least as much as (2 * TCP_SND_BUF/TCP_MSS) for things to work. *//* ... */#defineTCP_SND_QUEUELEN(2*TCP_SND_BUF/TCP_MSS)/* TCP receive window. */#defineTCP_WND(2*TCP_MSS)---------- TCP options/* ---------- ICMP options ---------- */#defineLWIP_ICMP1---------- ICMP options/* ---------- DHCP options ---------- */#defineLWIP_DHCP1---------- DHCP options/* ---------- UDP options ---------- */#defineLWIP_UDP1#defineUDP_TTL255---------- UDP options/* ---------- Statistics options ---------- */#defineLWIP_STATS0---------- Statistics options/* ---------- link callback options ---------- *//* LWIP_NETIF_LINK_CALLBACK==1: Support a callback function from an interface * whenever the link changes (i.e., link down) *//* ... */#defineLWIP_NETIF_LINK_CALLBACK1/* -------------------------------------- ---------- Checksum options ---------- --------------------------------------*//* ... *//* The STM32F4xx allows computing and verifying the IP, UDP, TCP and ICMP checksums by hardware: - To use this feature let the following define uncommented. - To disable it and process by CPU comment the the checksum.*//* ... */#defineCHECKSUM_BY_HARDWARE27 defines#ifdefCHECKSUM_BY_HARDWARE/* CHECKSUM_GEN_IP==0: Generate checksums by hardware for outgoing IP packets.*/#defineCHECKSUM_GEN_IP0/* CHECKSUM_GEN_UDP==0: Generate checksums by hardware for outgoing UDP packets.*/#defineCHECKSUM_GEN_UDP0/* CHECKSUM_GEN_TCP==0: Generate checksums by hardware for outgoing TCP packets.*/#defineCHECKSUM_GEN_TCP0/* CHECKSUM_CHECK_IP==0: Check checksums by hardware for incoming IP packets.*/#defineCHECKSUM_CHECK_IP0/* CHECKSUM_CHECK_UDP==0: Check checksums by hardware for incoming UDP packets.*/#defineCHECKSUM_CHECK_UDP0/* CHECKSUM_CHECK_TCP==0: Check checksums by hardware for incoming TCP packets.*/#defineCHECKSUM_CHECK_TCP0/* CHECKSUM_CHECK_ICMP==0: Check checksums by hardware for incoming ICMP packets.*/#defineCHECKSUM_GEN_ICMP07 defines#else/* ... *//* CHECKSUM_GEN_IP==1: Generate checksums in software for outgoing IP packets.*/#defineCHECKSUM_GEN_IP1/* CHECKSUM_GEN_UDP==1: Generate checksums in software for outgoing UDP packets.*/#defineCHECKSUM_GEN_UDP1/* CHECKSUM_GEN_TCP==1: Generate checksums in software for outgoing TCP packets.*/#defineCHECKSUM_GEN_TCP1/* CHECKSUM_CHECK_IP==1: Check checksums in software for incoming IP packets.*/#defineCHECKSUM_CHECK_IP1/* CHECKSUM_CHECK_UDP==1: Check checksums in software for incoming UDP packets.*/#defineCHECKSUM_CHECK_UDP1/* CHECKSUM_CHECK_TCP==1: Check checksums in software for incoming TCP packets.*/#defineCHECKSUM_CHECK_TCP1/* CHECKSUM_CHECK_ICMP==1: Check checksums by hardware for incoming ICMP packets.*/#defineCHECKSUM_GEN_ICMP17 defines#endif/* ... *//* ---------------------------------------------- ---------- Sequential layer options ---------- ----------------------------------------------*//* ... *//** * LWIP_NETCONN==1: Enable Netconn API (require to use api_lib.c) *//* ... */#defineLWIP_NETCONN0/* ------------------------------------ ---------- Socket options ---------- ------------------------------------*//* ... *//** * LWIP_SOCKET==1: Enable Socket API (require to use sockets.c) *//* ... */#defineLWIP_SOCKET0/* ... */#endif/* __LWIPOPTS_H__ */
Details
Show: from
Types: Columns:
All items filtered out
All items filtered out
This file uses the notable symbols shown below. Click anywhere in the file to view more details.