this repository aim to make the official ST DISCO F746NG demo from STM32Cube_FW_F7_V1.2.0 working on mbed.
Dependencies: BSP_DISCO_F746NG_patch mbed-rtos mbed
patch/LwIP/UPGRADING@0:c00e6c923941, 2015-11-02 (annotated)
- Committer:
- NirT
- Date:
- Mon Nov 02 23:38:08 2015 +0000
- Revision:
- 0:c00e6c923941
Error: Incomplete type is not allowed in "patch/LwIP/src/include/lwip/dhcp.h", Line: 83, Col: 4; ; and more like this.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
NirT | 0:c00e6c923941 | 1 | This file lists major changes between release versions that require |
NirT | 0:c00e6c923941 | 2 | ports or applications to be changed. Use it to update a port or an |
NirT | 0:c00e6c923941 | 3 | application written for an older version of lwIP to correctly work |
NirT | 0:c00e6c923941 | 4 | with newer versions. |
NirT | 0:c00e6c923941 | 5 | |
NirT | 0:c00e6c923941 | 6 | |
NirT | 0:c00e6c923941 | 7 | (CVS HEAD) |
NirT | 0:c00e6c923941 | 8 | |
NirT | 0:c00e6c923941 | 9 | * [Enter new changes just after this line - do not remove this line] |
NirT | 0:c00e6c923941 | 10 | |
NirT | 0:c00e6c923941 | 11 | ++ Application changes: |
NirT | 0:c00e6c923941 | 12 | |
NirT | 0:c00e6c923941 | 13 | * Replaced struct ip_addr by typedef ip_addr_t (struct ip_addr is kept for |
NirT | 0:c00e6c923941 | 14 | compatibility to old applications, but will be removed in the future). |
NirT | 0:c00e6c923941 | 15 | |
NirT | 0:c00e6c923941 | 16 | * Renamed mem_realloc() to mem_trim() to prevent confusion with realloc() |
NirT | 0:c00e6c923941 | 17 | |
NirT | 0:c00e6c923941 | 18 | +++ Raw API: |
NirT | 0:c00e6c923941 | 19 | * Changed the semantics of tcp_close() (since it was rather a |
NirT | 0:c00e6c923941 | 20 | shutdown before): Now the application does *NOT* get any calls to the recv |
NirT | 0:c00e6c923941 | 21 | callback (aside from NULL/closed) after calling tcp_close() |
NirT | 0:c00e6c923941 | 22 | |
NirT | 0:c00e6c923941 | 23 | * When calling tcp_abort() from a raw API TCP callback function, |
NirT | 0:c00e6c923941 | 24 | make sure you return ERR_ABRT to prevent accessing unallocated memory. |
NirT | 0:c00e6c923941 | 25 | (ERR_ABRT now means the applicaiton has called tcp_abort!) |
NirT | 0:c00e6c923941 | 26 | |
NirT | 0:c00e6c923941 | 27 | +++ Netconn API: |
NirT | 0:c00e6c923941 | 28 | * Changed netconn_receive() and netconn_accept() to return |
NirT | 0:c00e6c923941 | 29 | err_t, not a pointer to new data/netconn. |
NirT | 0:c00e6c923941 | 30 | |
NirT | 0:c00e6c923941 | 31 | +++ Socket API: |
NirT | 0:c00e6c923941 | 32 | * LWIP_SO_RCVTIMEO: when accept() or recv() time out, they |
NirT | 0:c00e6c923941 | 33 | now set errno to EWOULDBLOCK/EAGAIN, not ETIMEDOUT. |
NirT | 0:c00e6c923941 | 34 | |
NirT | 0:c00e6c923941 | 35 | * Added a minimal version of posix fctl() to have a |
NirT | 0:c00e6c923941 | 36 | standardised way to set O_NONBLOCK for nonblocking sockets. |
NirT | 0:c00e6c923941 | 37 | |
NirT | 0:c00e6c923941 | 38 | +++ all APIs: |
NirT | 0:c00e6c923941 | 39 | * correctly implemented SO(F)_REUSEADDR |
NirT | 0:c00e6c923941 | 40 | |
NirT | 0:c00e6c923941 | 41 | ++ Port changes |
NirT | 0:c00e6c923941 | 42 | |
NirT | 0:c00e6c923941 | 43 | +++ new files: |
NirT | 0:c00e6c923941 | 44 | |
NirT | 0:c00e6c923941 | 45 | * Added 4 new files: def.c, timers.c, timers.h, tcp_impl.h: |
NirT | 0:c00e6c923941 | 46 | |
NirT | 0:c00e6c923941 | 47 | * Moved stack-internal parts of tcp.h to tcp_impl.h, tcp.h now only contains |
NirT | 0:c00e6c923941 | 48 | the actual application programmer's API |
NirT | 0:c00e6c923941 | 49 | |
NirT | 0:c00e6c923941 | 50 | * Separated timer implementation from sys.h/.c, moved to timers.h/.c; |
NirT | 0:c00e6c923941 | 51 | Added timer implementation for NO_SYS==1, set NO_SYS_NO_TIMERS==1 if you |
NirT | 0:c00e6c923941 | 52 | still want to use your own timer implementation for NO_SYS==0 (as before). |
NirT | 0:c00e6c923941 | 53 | |
NirT | 0:c00e6c923941 | 54 | +++ sys layer: |
NirT | 0:c00e6c923941 | 55 | |
NirT | 0:c00e6c923941 | 56 | * Converted mbox- and semaphore-functions to take pointers to sys_mbox_t/ |
NirT | 0:c00e6c923941 | 57 | sys_sem_t; |
NirT | 0:c00e6c923941 | 58 | |
NirT | 0:c00e6c923941 | 59 | * Converted sys_mbox_new/sys_sem_new to take pointers and return err_t; |
NirT | 0:c00e6c923941 | 60 | |
NirT | 0:c00e6c923941 | 61 | * Added Mutex concept in sys_arch (define LWIP_COMPAT_MUTEX to let sys.h use |
NirT | 0:c00e6c923941 | 62 | binary semaphores instead of mutexes - as before) |
NirT | 0:c00e6c923941 | 63 | |
NirT | 0:c00e6c923941 | 64 | +++ new options: |
NirT | 0:c00e6c923941 | 65 | |
NirT | 0:c00e6c923941 | 66 | * Don't waste memory when chaining segments, added option TCP_OVERSIZE to |
NirT | 0:c00e6c923941 | 67 | prevent creating many small pbufs when calling tcp_write with many small |
NirT | 0:c00e6c923941 | 68 | blocks of data. Instead, pbufs are allocated larger than needed and the |
NirT | 0:c00e6c923941 | 69 | space is used for later calls to tcp_write. |
NirT | 0:c00e6c923941 | 70 | |
NirT | 0:c00e6c923941 | 71 | * Added LWIP_NETIF_TX_SINGLE_PBUF to always copy to try to create single pbufs |
NirT | 0:c00e6c923941 | 72 | in tcp_write/udp_send. |
NirT | 0:c00e6c923941 | 73 | |
NirT | 0:c00e6c923941 | 74 | * Added an additional option LWIP_ETHERNET to support ethernet without ARP |
NirT | 0:c00e6c923941 | 75 | (necessary for pure PPPoE) |
NirT | 0:c00e6c923941 | 76 | |
NirT | 0:c00e6c923941 | 77 | * Add MEMP_SEPARATE_POOLS to place memory pools in separate arrays. This may |
NirT | 0:c00e6c923941 | 78 | be used to place these pools into user-defined memory by using external |
NirT | 0:c00e6c923941 | 79 | declaration. |
NirT | 0:c00e6c923941 | 80 | |
NirT | 0:c00e6c923941 | 81 | * Added TCP_SNDQUEUELOWAT corresponding to TCP_SNDLOWAT |
NirT | 0:c00e6c923941 | 82 | |
NirT | 0:c00e6c923941 | 83 | +++ new pools: |
NirT | 0:c00e6c923941 | 84 | |
NirT | 0:c00e6c923941 | 85 | * Netdb uses a memp pool for allocating memory when getaddrinfo() is called, |
NirT | 0:c00e6c923941 | 86 | so MEMP_NUM_NETDB has to be set accordingly. |
NirT | 0:c00e6c923941 | 87 | |
NirT | 0:c00e6c923941 | 88 | * DNS_LOCAL_HOSTLIST_IS_DYNAMIC uses a memp pool instead of the heap, so |
NirT | 0:c00e6c923941 | 89 | MEMP_NUM_LOCALHOSTLIST has to be set accordingly. |
NirT | 0:c00e6c923941 | 90 | |
NirT | 0:c00e6c923941 | 91 | * Snmp-agent uses a memp pools instead of the heap, so MEMP_NUM_SNMP_* have |
NirT | 0:c00e6c923941 | 92 | to be set accordingly. |
NirT | 0:c00e6c923941 | 93 | |
NirT | 0:c00e6c923941 | 94 | * PPPoE uses a MEMP pool instead of the heap, so MEMP_NUM_PPPOE_INTERFACES |
NirT | 0:c00e6c923941 | 95 | has to be set accordingly |
NirT | 0:c00e6c923941 | 96 | |
NirT | 0:c00e6c923941 | 97 | * Integrated loopif into netif.c - loopif does not have to be created by the |
NirT | 0:c00e6c923941 | 98 | port any more, just define LWIP_HAVE_LOOPIF to 1. |
NirT | 0:c00e6c923941 | 99 | |
NirT | 0:c00e6c923941 | 100 | * Added define LWIP_RAND() for lwip-wide randomization (needs to be defined |
NirT | 0:c00e6c923941 | 101 | in cc.h, e.g. used by igmp) |
NirT | 0:c00e6c923941 | 102 | |
NirT | 0:c00e6c923941 | 103 | * Added printf-formatter X8_F to printf u8_t as hex |
NirT | 0:c00e6c923941 | 104 | |
NirT | 0:c00e6c923941 | 105 | * The heap now may be moved to user-defined memory by defining |
NirT | 0:c00e6c923941 | 106 | LWIP_RAM_HEAP_POINTER as a void pointer to that memory's address |
NirT | 0:c00e6c923941 | 107 | |
NirT | 0:c00e6c923941 | 108 | * added autoip_set_struct() and dhcp_set_struct() to let autoip and dhcp work |
NirT | 0:c00e6c923941 | 109 | with user-allocated structs instead of calling mem_malloc |
NirT | 0:c00e6c923941 | 110 | |
NirT | 0:c00e6c923941 | 111 | * Added const char* name to mem- and memp-stats for easier debugging. |
NirT | 0:c00e6c923941 | 112 | |
NirT | 0:c00e6c923941 | 113 | * Calculate the TCP/UDP checksum while copying to only fetch data once: |
NirT | 0:c00e6c923941 | 114 | Define LWIP_CHKSUM_COPY to a memcpy-like function that returns the checksum |
NirT | 0:c00e6c923941 | 115 | |
NirT | 0:c00e6c923941 | 116 | * Added SO_REUSE_RXTOALL to pass received UDP broadcast/multicast packets to |
NirT | 0:c00e6c923941 | 117 | more than one pcb. |
NirT | 0:c00e6c923941 | 118 | |
NirT | 0:c00e6c923941 | 119 | * Changed the semantics of ARP_QUEUEING==0: ARP_QUEUEING now cannot be turned |
NirT | 0:c00e6c923941 | 120 | off any more, if this is set to 0, only one packet (the most recent one) is |
NirT | 0:c00e6c923941 | 121 | queued (like demanded by RFC 1122). |
NirT | 0:c00e6c923941 | 122 | |
NirT | 0:c00e6c923941 | 123 | |
NirT | 0:c00e6c923941 | 124 | ++ Major bugfixes/improvements |
NirT | 0:c00e6c923941 | 125 | |
NirT | 0:c00e6c923941 | 126 | * Implemented tcp_shutdown() to only shut down one end of a connection |
NirT | 0:c00e6c923941 | 127 | * Implemented shutdown() at socket- and netconn-level |
NirT | 0:c00e6c923941 | 128 | * Added errorset support to select() + improved select speed overhead |
NirT | 0:c00e6c923941 | 129 | * Merged pppd to v2.3.11 (including some backported bugfixes from 2.4.x) |
NirT | 0:c00e6c923941 | 130 | * Added timer implementation for NO_SYS==1 (may be disabled with NO_SYS_NO_TIMERS==1 |
NirT | 0:c00e6c923941 | 131 | * Use macros defined in ip_addr.h to work with IP addresses |
NirT | 0:c00e6c923941 | 132 | * Implemented many nonblocking socket/netconn functions |
NirT | 0:c00e6c923941 | 133 | * Fixed ARP input processing: only add a new entry if a request was directed as us |
NirT | 0:c00e6c923941 | 134 | * mem_realloc() to mem_trim() to prevent confusion with realloc() |
NirT | 0:c00e6c923941 | 135 | * Some improvements for AutoIP (don't route/forward link-local addresses, don't break |
NirT | 0:c00e6c923941 | 136 | existing connections when assigning a routable address) |
NirT | 0:c00e6c923941 | 137 | * Correctly handle remote side overrunning our rcv_wnd in ooseq case |
NirT | 0:c00e6c923941 | 138 | * Removed packing from ip_addr_t, the packed version is now only used in protocol headers |
NirT | 0:c00e6c923941 | 139 | * Corrected PBUF_POOL_BUFSIZE for ports where ETH_PAD_SIZE > 0 |
NirT | 0:c00e6c923941 | 140 | * Added support for static ARP table entries |
NirT | 0:c00e6c923941 | 141 | |
NirT | 0:c00e6c923941 | 142 | (STABLE-1.3.2) |
NirT | 0:c00e6c923941 | 143 | |
NirT | 0:c00e6c923941 | 144 | * initial version of this file |