1149
1150 static void
1151 unm_watchdog(unsigned long v)
1152 {
1153 unm_adapter *adapter = (unm_adapter *)v;
1154
1155 if ((adapter->portnum == 0) && unm_nic_check_temp(adapter)) {
1156 /*
1157 * We return without turning on the netdev queue as there
1158 * was an overheated device
1159 */
1160 return;
1161 }
1162
1163 unm_nic_handle_phy_intr(adapter);
1164
1165 /*
1166 * This function schedules a call for itself.
1167 */
1168 adapter->watchdog_timer = timeout((void (*)(void *))&unm_watchdog,
1169 (void *)adapter, 2 * drv_usectohz(1000000));
1170
1171 }
1172
1173 static void unm_nic_clear_stats(unm_adapter *adapter)
1174 {
1175 (void) memset(&adapter->stats, 0, sizeof (adapter->stats));
1176 }
1177
1178 static void
1179 unm_nic_poll(unm_adapter *adapter)
1180 {
1181 int work_done, tx_complete;
1182
1183 adapter->stats.polled++;
1184
1185 loop:
1186 tx_complete = unm_process_cmd_ring(adapter);
1187 work_done = unm_process_rcv_ring(adapter, NX_RX_MAXBUFS);
1188 if ((!tx_complete) || (!(work_done < NX_RX_MAXBUFS)))
1189 goto loop;
|
1149
1150 static void
1151 unm_watchdog(unsigned long v)
1152 {
1153 unm_adapter *adapter = (unm_adapter *)v;
1154
1155 if ((adapter->portnum == 0) && unm_nic_check_temp(adapter)) {
1156 /*
1157 * We return without turning on the netdev queue as there
1158 * was an overheated device
1159 */
1160 return;
1161 }
1162
1163 unm_nic_handle_phy_intr(adapter);
1164
1165 /*
1166 * This function schedules a call for itself.
1167 */
1168 adapter->watchdog_timer = timeout((void (*)(void *))&unm_watchdog,
1169 (void *)adapter, drv_sectohz(2));
1170
1171 }
1172
1173 static void unm_nic_clear_stats(unm_adapter *adapter)
1174 {
1175 (void) memset(&adapter->stats, 0, sizeof (adapter->stats));
1176 }
1177
1178 static void
1179 unm_nic_poll(unm_adapter *adapter)
1180 {
1181 int work_done, tx_complete;
1182
1183 adapter->stats.polled++;
1184
1185 loop:
1186 tx_complete = unm_process_cmd_ring(adapter);
1187 work_done = unm_process_rcv_ring(adapter, NX_RX_MAXBUFS);
1188 if ((!tx_complete) || (!(work_done < NX_RX_MAXBUFS)))
1189 goto loop;
|