#include struct netif if0; uint32_t sys_now (void) { return ticks; } void dispatch_lwip (void) { sys_check_timeouts(); } void start_lwip (void) { lwip_init(); netif_add (&if0, NULL, NULL, NULL, NULL, steth_lwip_init, ethernet_input); /* Registers the default network interface.*/ netif_set_default (&if0); netif_set_up (&if0); dhcp_start (&if0); } static sys_prot_t ethernet_irq_enabled = 1; sys_prot_t sys_arch_protect (void) { sys_prot_t ret; nvic_disable_irq (NVIC_ETH_IRQ); compiler_mb(); ret = ethernet_irq_enabled; ethernet_irq_enabled = 0; return ret; } void sys_arch_unprotect (sys_prot_t lev) { if (lev) { ethernet_irq_enabled = 1; compiler_mb(); nvic_enable_irq (NVIC_ETH_IRQ); } }