/* Handler for new data events when using NAPI. This does not need any locking or protection from interrupts as data interrupts are off at this point and other adapter interrupts do not interfere.  */
int t1_poll(struct napi_struct *napi, int budget)
/* Handler for new data events when using NAPI. This does not need any locking or protection from interrupts as data interrupts are off at this point and other adapter interrupts do not interfere.  */
int t1_poll(struct napi_struct *napi, int budget)
{
	struct adapter *adapter = container_of(napi, struct adapter, napi);
	int work_done = process_responses(adapter, budget);
	if (likely(work_done < budget)) {
		napi_complete(napi);
		writel(adapter->sge->respQ.cidx,
		       adapter->regs + A_SG_SLEEPING);
	}
	return work_done;
}