net: smc911x: Clean up the status handling in smc911x_recv()
Invert the status handling logic in smc911x_recv(), to make the function easier to read, no functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
This commit is contained in:
@@ -352,23 +352,25 @@ static int smc911x_recv(struct eth_device *dev)
|
|||||||
u32 pktlen, tmplen;
|
u32 pktlen, tmplen;
|
||||||
u32 status;
|
u32 status;
|
||||||
|
|
||||||
if ((smc911x_reg_read(priv, RX_FIFO_INF) & RX_FIFO_INF_RXSUSED) >> 16) {
|
status = smc911x_reg_read(priv, RX_FIFO_INF);
|
||||||
status = smc911x_reg_read(priv, RX_STATUS_FIFO);
|
if (!(status & RX_FIFO_INF_RXSUSED))
|
||||||
pktlen = (status & RX_STS_PKT_LEN) >> 16;
|
return 0;
|
||||||
|
|
||||||
smc911x_reg_write(priv, RX_CFG, 0);
|
status = smc911x_reg_read(priv, RX_STATUS_FIFO);
|
||||||
|
pktlen = (status & RX_STS_PKT_LEN) >> 16;
|
||||||
|
|
||||||
tmplen = (pktlen + 3) / 4;
|
smc911x_reg_write(priv, RX_CFG, 0);
|
||||||
while (tmplen--)
|
|
||||||
*data++ = smc911x_reg_read(priv, RX_DATA_FIFO);
|
|
||||||
|
|
||||||
if (status & RX_STS_ES)
|
tmplen = (pktlen + 3) / 4;
|
||||||
printf(DRIVERNAME
|
while (tmplen--)
|
||||||
": dropped bad packet. Status: 0x%08x\n",
|
*data++ = smc911x_reg_read(priv, RX_DATA_FIFO);
|
||||||
status);
|
|
||||||
else
|
if (status & RX_STS_ES)
|
||||||
net_process_received_packet(net_rx_packets[0], pktlen);
|
printf(DRIVERNAME
|
||||||
}
|
": dropped bad packet. Status: 0x%08x\n",
|
||||||
|
status);
|
||||||
|
else
|
||||||
|
net_process_received_packet(net_rx_packets[0], pktlen);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user