/* atl1c_clean - NAPI Rx polling callback @adapter: board private structure  */
static int atl1c_clean(struct napi_struct *napi, int budget)
/* atl1c_clean - NAPI Rx polling callback @adapter: board private structure  */
static int atl1c_clean(struct napi_struct *napi, int budget)
{
	struct atl1c_adapter *adapter =
			container_of(napi, struct atl1c_adapter, napi);
	int work_done = 0;
	if (!netif_carrier_ok(adapter->netdev))
		goto quit_polling;
	atl1c_clean_rx_irq(adapter, 0, &work_done, budget);
	if (work_done < budget) {
quit_polling:
		napi_complete(napi);
		adapter->hw.intr_mask |= ISR_RX_PKT;
		AT_WRITE_REG(&adapter->hw, REG_IMR, adapter->hw.intr_mask);
	}
	return work_done;
}