@@ -325,20 +325,18 @@ STATIC void wiznet5k_lwip_init(wiznet5k_obj_t *self) {
325325
326326void wiznet5k_poll (void ) {
327327 wiznet5k_obj_t * self = & wiznet5k_obj ;
328- if (!(self -> netif .flags & NETIF_FLAG_UP ) ||
329- !(self -> netif .flags & NETIF_FLAG_LINK_UP )) {
330- return ;
331- }
332- uint16_t len ;
333- while ((len = wiznet5k_recv_ethernet (self )) > 0 ) {
334- if (self -> trace_flags & TRACE_ETH_RX ) {
335- netutils_ethernet_trace (MP_PYTHON_PRINTER , len , self -> eth_frame , NETUTILS_TRACE_NEWLINE );
336- }
337- struct pbuf * p = pbuf_alloc (PBUF_RAW , len , PBUF_POOL );
338- if (p != NULL ) {
339- pbuf_take (p , self -> eth_frame , len );
340- if (self -> netif .input (p , & self -> netif ) != ERR_OK ) {
341- pbuf_free (p );
328+ if ((self -> netif .flags & (NETIF_FLAG_UP | NETIF_FLAG_LINK_UP )) == (NETIF_FLAG_UP | NETIF_FLAG_LINK_UP )) {
329+ uint16_t len ;
330+ while ((len = wiznet5k_recv_ethernet (self )) > 0 ) {
331+ if (self -> trace_flags & TRACE_ETH_RX ) {
332+ netutils_ethernet_trace (MP_PYTHON_PRINTER , len , self -> eth_frame , NETUTILS_TRACE_NEWLINE );
333+ }
334+ struct pbuf * p = pbuf_alloc (PBUF_RAW , len , PBUF_POOL );
335+ if (p != NULL ) {
336+ pbuf_take (p , self -> eth_frame , len );
337+ if (self -> netif .input (p , & self -> netif ) != ERR_OK ) {
338+ pbuf_free (p );
339+ }
342340 }
343341 }
344342 }
0 commit comments