return -ESHUTDOWN;
}
- local_irq_save(flags);
-// SPIN_LOCK_IRQSAVE(&pcd->lock, flags);
+ SPIN_LOCK_IRQSAVE(&pcd->lock, flags);
ep->desc = _desc;
ep->ep.maxpacket = le16_to_cpu (_desc->wMaxPacketSize);
ep->dwc_ep.type, ep->dwc_ep.maxpacket, ep->desc );
dwc_otg_ep_activate( GET_CORE_IF(pcd), &ep->dwc_ep );
-// SPIN_UNLOCK_IRQRESTORE(&pcd->lock, flags);
- local_irq_restore(flags);
+ SPIN_UNLOCK_IRQRESTORE(&pcd->lock, flags);
return 0;
}
return -EINVAL;
}
-// SPIN_LOCK_IRQSAVE(&ep->pcd->lock, flags);
- local_irq_save(flags);
+ SPIN_LOCK_IRQSAVE(&ep->pcd->lock, flags);
request_nuke( ep );
dwc_otg_ep_deactivate( GET_CORE_IF(ep->pcd), &ep->dwc_ep );
release_tx_fifo(GET_CORE_IF(ep->pcd), ep->dwc_ep.tx_fifo_num);
}
-// SPIN_UNLOCK_IRQRESTORE(&ep->pcd->lock, flags);
- local_irq_restore(flags);
+ SPIN_UNLOCK_IRQRESTORE(&ep->pcd->lock, flags);
DWC_DEBUGPL(DBG_PCD, "%s disabled\n", _ep->name);
return 0;
//#endif
if (pcd->driver && pcd->driver->resume)
{
- SPIN_UNLOCK(&pcd->lock);
pcd->driver->suspend(&pcd->gadget);
- SPIN_LOCK(&pcd->lock);
}
return 1;
}
if (pcd->driver && pcd->driver->resume)
{
- SPIN_UNLOCK(&pcd->lock);
pcd->driver->resume(&pcd->gadget);
- SPIN_LOCK(&pcd->lock);
}
/* Stop the SRP timeout timer. */
dwc_otg_pcd_ep_t *ep;
gintmsk_data_t intr_mask = {.d32 = 0};
+
+ SPIN_LOCK(&_pcd->lock);
num_in_eps = GET_CORE_IF(_pcd)->dev_if->num_in_eps;
num_out_eps = GET_CORE_IF(_pcd)->dev_if->num_out_eps;
_pcd->driver->disconnect(&_pcd->gadget);
SPIN_LOCK(&_pcd->lock);
}
+ SPIN_UNLOCK(&_pcd->lock);
}
/**