diff --git a/cpu/esp8266/sdk/lwip.c b/cpu/esp8266/sdk/lwip.c new file mode 100644 index 0000000000000000000000000000000000000000..f35ca3e1774f55d6b096e9a714b924f5a6330d54 --- /dev/null +++ b/cpu/esp8266/sdk/lwip.c @@ -0,0 +1,209 @@ +/* + * Copyright (C) 2018 Gunar Schorcht + * + * This file is subject to the terms and conditions of the GNU Lesser + * General Public License v2.1. See the file LICENSE in the top level + * directory for more details. + */ + +/** + * @ingroup cpu_esp8266 + * @{ + * + * @file + * @brief lwIP functions required as symbols by the SDK + * + * This file defines a number of lwIP functions that are required as symbols by + * Espressif's SDK libraries. Since RIOT doesn't need lwIP, these functions are + * only dummies without real functionality. Using these functions instead of + * the lwIP functions as provided with the SDK saves arround 4 kBytes of RAM. + * + * @author Gunar Schorcht <gunar@schorcht.net> + * @} + */ + +#include "lwip/err.h" +#include "lwip/ip_addr.h" +#include "lwip/netif.h" +#include "lwip/pbuf.h" +#include "lwip/tcp_impl.h" +#include "netif/etharp.h" + +#define ENABLE_DEBUG (0) +#include "debug.h" +#include "log.h" + +#ifndef ERR_OK +#define ERR_OK 0 +#endif + +const struct eth_addr ethbroadcast = {{0xff,0xff,0xff,0xff,0xff,0xff}}; + +err_t ethernet_input(struct pbuf *pb, struct netif* netif) +{ + DEBUG("%s\n", __func__); + (void)pb; + (void)netif; + return ERR_OK; +} + +err_t etharp_output(struct netif *netif, struct pbuf *q, ip_addr_t *ipaddr) +{ + DEBUG("%s\n", __func__); + (void)netif; + (void)q; + (void)ipaddr; + return ERR_OK; +} + +err_t etharp_request(struct netif *netif, ip_addr_t *ipaddr) +{ + DEBUG("%s\n", __func__); + (void)netif; + (void)ipaddr; + return ERR_OK; +} + +void etharp_tmr(void) +{ + DEBUG("%s\n", __func__); +} + +void etharp_cleanup_netif(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; +} + +void dhcp_cleanup(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; +} + +err_t dhcp_start(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; + return ERR_OK; +} + +err_t dhcp_renew(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; + return ERR_OK; +} + +err_t dhcp_release(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; + return ERR_OK; +} + +void dhcp_stop(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; +} + +void dhcp_network_changed(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; +} + +void dhcp_coarse_tmr(void) +{ + DEBUG("%s\n", __func__); +} + +void dhcp_fine_tmr(void) +{ + DEBUG("%s\n", __func__); +} + +void dhcps_start(struct ip_info *info) +{ + DEBUG("%s\n", __func__); + (void)info; +} + +void dhcps_stop(void) +{ + DEBUG("%s\n", __func__); +} + +void dhcps_coarse_tmr(void) +{ + DEBUG("%s\n", __func__); +} + +union tcp_listen_pcbs_t tcp_listen_pcbs; +struct tcp_pcb *tcp_active_pcbs; +struct tcp_pcb *tcp_tw_pcbs; + +void tcp_seg_free(struct tcp_seg *seg) +{ + DEBUG("%s\n", __func__); + (void)seg; +} + +void tcp_abort (struct tcp_pcb *pcb) +{ + DEBUG("%s\n", __func__); + (void)pcb; +} + +void tcp_tmr(void) +{ + DEBUG("%s\n", __func__); +} + +void igmp_init(void) +{ + DEBUG("%s\n", __func__); +} + +err_t igmp_start(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; + return ERR_OK; +} + +err_t igmp_stop(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; + return ERR_OK; +} + +void igmp_report_groups(struct netif *netif) +{ + DEBUG("%s\n", __func__); + (void)netif; +} + +void igmp_tmr(void) +{ + DEBUG("%s\n", __func__); +} + +void dns_init(void) +{ + DEBUG("%s\n", __func__); +} + +void dns_tmr(void) +{ + DEBUG("%s\n", __func__); +} + +uint32_t espconn_init(uint32 arg) +{ + DEBUG("%s\n", __func__); + (void)arg; + return 1; +}