+
+ smram_tseg_set_state(SMRAM_TSEG_OPEN);
+
+ if ((ticks % 1000) == 0) /* About a minute */
+ dhcp_coarse_tmr();
+ if ((ticks % 8) == 0) /* About 500msec*/
+ dhcp_fine_tmr();
+ if ((ticks % 4) == 0) /* About 250msec*/
+ tcp_tmr();
+ ticks++;
+
+ while (i > 0)
+ {
+ int n = _nic->recv(_nic);
+ i -= n;
+ if (n == 0)
+ break;
+ }
+}
+
+static err_t _transmit(struct netif *netif, struct pbuf *p)
+{
+ struct nic *nic = netif->state;
+
+// outputf("NIC: Transmit packet");
+
+ nic->transmit(nic, p);
+
+ LINK_STATS_INC(link.xmit);
+
+ return ERR_OK;
+}
+
+static err_t _init(struct netif *netif)
+{
+ struct nic *nic = netif->state;
+
+ LWIP_ASSERT("netif != NULL", (netif != NULL));