mirror of
https://github.com/lwfinger/rtl8188eu.git
synced 2025-03-15 06:23:24 +00:00
rtl8188eu: Remove CONFIG_SUPPORT_USB_INT - defined
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
This commit is contained in:
parent
efdab39128
commit
46115db809
3 changed files with 72 additions and 122 deletions
|
@ -310,7 +310,6 @@ _InitInterrupt(
|
||||||
rtw_write32(Adapter, REG_HIMRE_88E, imr_ex);
|
rtw_write32(Adapter, REG_HIMRE_88E, imr_ex);
|
||||||
pHalData->IntrMask[1]=imr_ex;
|
pHalData->IntrMask[1]=imr_ex;
|
||||||
|
|
||||||
#ifdef CONFIG_SUPPORT_USB_INT
|
|
||||||
/* REG_USB_SPECIAL_OPTION - BIT(4) */
|
/* REG_USB_SPECIAL_OPTION - BIT(4) */
|
||||||
/* 0; Use interrupt endpoint to upload interrupt pkt */
|
/* 0; Use interrupt endpoint to upload interrupt pkt */
|
||||||
/* 1; Use bulk endpoint to upload interrupt pkt, */
|
/* 1; Use bulk endpoint to upload interrupt pkt, */
|
||||||
|
@ -323,12 +322,8 @@ _InitInterrupt(
|
||||||
usb_opt = usb_opt | (INT_BULK_SEL);
|
usb_opt = usb_opt | (INT_BULK_SEL);
|
||||||
|
|
||||||
rtw_write8(Adapter, REG_USB_SPECIAL_OPTION, usb_opt );
|
rtw_write8(Adapter, REG_USB_SPECIAL_OPTION, usb_opt );
|
||||||
|
|
||||||
#endif/* CONFIG_SUPPORT_USB_INT */
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_InitQueueReservedPage(
|
_InitQueueReservedPage(
|
||||||
PADAPTER Adapter
|
PADAPTER Adapter
|
||||||
|
@ -1542,10 +1537,8 @@ static u32 rtl8188eu_hal_deinit(PADAPTER Adapter)
|
||||||
HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
|
HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
|
||||||
DBG_88E("==> %s\n",__func__);
|
DBG_88E("==> %s\n",__func__);
|
||||||
|
|
||||||
#ifdef CONFIG_SUPPORT_USB_INT
|
|
||||||
rtw_write32(Adapter, REG_HIMR_88E, IMR_DISABLED_88E);
|
rtw_write32(Adapter, REG_HIMR_88E, IMR_DISABLED_88E);
|
||||||
rtw_write32(Adapter, REG_HIMRE_88E, IMR_DISABLED_88E);
|
rtw_write32(Adapter, REG_HIMRE_88E, IMR_DISABLED_88E);
|
||||||
#endif
|
|
||||||
|
|
||||||
DBG_88E("bkeepfwalive(%x)\n",Adapter->pwrctrlpriv.bkeepfwalive);
|
DBG_88E("bkeepfwalive(%x)\n",Adapter->pwrctrlpriv.bkeepfwalive);
|
||||||
if (Adapter->pwrctrlpriv.bkeepfwalive)
|
if (Adapter->pwrctrlpriv.bkeepfwalive)
|
||||||
|
|
|
@ -317,7 +317,6 @@ static int usb_writeN(struct intf_hdl *pintfhdl, u32 addr, u32 length, u8 *pdata
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_SUPPORT_USB_INT
|
|
||||||
static void interrupt_handler_8188eu(_adapter *padapter,u16 pkt_len,u8 *pbuf)
|
static void interrupt_handler_8188eu(_adapter *padapter,u16 pkt_len,u8 *pbuf)
|
||||||
{
|
{
|
||||||
HAL_DATA_TYPE *pHalData=GET_HAL_DATA(padapter);
|
HAL_DATA_TYPE *pHalData=GET_HAL_DATA(padapter);
|
||||||
|
@ -337,7 +336,6 @@ static void interrupt_handler_8188eu(_adapter *padapter,u16 pkt_len,u8 *pbuf)
|
||||||
if (pbuf[0]!= 0)
|
if (pbuf[0]!= 0)
|
||||||
_rtw_memcpy(&(pHalData->C2hArray[0]), &(pbuf[USB_INTR_CONTENT_C2H_OFFSET]), 16);
|
_rtw_memcpy(&(pHalData->C2hArray[0]), &(pbuf[USB_INTR_CONTENT_C2H_OFFSET]), 16);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
static s32 pre_recv_entry(union recv_frame *precvframe, struct recv_stat *prxstat, struct phy_stat *pphy_status)
|
static s32 pre_recv_entry(union recv_frame *precvframe, struct recv_stat *prxstat, struct phy_stat *pphy_status)
|
||||||
{
|
{
|
||||||
|
@ -496,25 +494,19 @@ static int recvbuf2recvframe(_adapter *padapter, _pkt *pskb)
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
if (pattrib->pkt_rpt_type == NORMAL_RX) { /* Normal rx packet */
|
||||||
if (pattrib->pkt_rpt_type == NORMAL_RX)/* Normal rx packet */
|
|
||||||
{
|
|
||||||
if (pattrib->physt)
|
if (pattrib->physt)
|
||||||
update_recvframe_phyinfo_88e(precvframe, (struct phy_stat*)pphy_status);
|
update_recvframe_phyinfo_88e(precvframe, (struct phy_stat*)pphy_status);
|
||||||
if (rtw_recv_entry(precvframe) != _SUCCESS)
|
if (rtw_recv_entry(precvframe) != _SUCCESS) {
|
||||||
{
|
|
||||||
RT_TRACE(_module_rtl871x_recv_c_,_drv_err_,
|
RT_TRACE(_module_rtl871x_recv_c_,_drv_err_,
|
||||||
("recvbuf2recvframe: rtw_recv_entry(precvframe) != _SUCCESS\n"));
|
("recvbuf2recvframe: rtw_recv_entry(precvframe) != _SUCCESS\n"));
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else{ /* pkt_rpt_type == TX_REPORT1-CCX, TX_REPORT2-TX RTP,HIS_REPORT-USB HISR RTP */
|
|
||||||
|
|
||||||
/* enqueue recvframe to txrtp queue */
|
/* enqueue recvframe to txrtp queue */
|
||||||
if (pattrib->pkt_rpt_type == TX_REPORT1){
|
if (pattrib->pkt_rpt_type == TX_REPORT1) {
|
||||||
/* CCX-TXRPT ack for xmit mgmt frames. */
|
/* CCX-TXRPT ack for xmit mgmt frames. */
|
||||||
handle_txrpt_ccx_88e(padapter, precvframe->u.hdr.rx_data);
|
handle_txrpt_ccx_88e(padapter, precvframe->u.hdr.rx_data);
|
||||||
}
|
} else if (pattrib->pkt_rpt_type == TX_REPORT2) {
|
||||||
else if (pattrib->pkt_rpt_type == TX_REPORT2){
|
|
||||||
ODM_RA_TxRPT2Handle_8188E(
|
ODM_RA_TxRPT2Handle_8188E(
|
||||||
&pHalData->odmpriv,
|
&pHalData->odmpriv,
|
||||||
precvframe->u.hdr.rx_data,
|
precvframe->u.hdr.rx_data,
|
||||||
|
@ -522,28 +514,21 @@ static int recvbuf2recvframe(_adapter *padapter, _pkt *pskb)
|
||||||
pattrib->MacIDValidEntry[0],
|
pattrib->MacIDValidEntry[0],
|
||||||
pattrib->MacIDValidEntry[1]
|
pattrib->MacIDValidEntry[1]
|
||||||
);
|
);
|
||||||
|
} else if (pattrib->pkt_rpt_type == HIS_REPORT) {
|
||||||
}
|
|
||||||
else if (pattrib->pkt_rpt_type == HIS_REPORT)
|
|
||||||
{
|
|
||||||
#ifdef CONFIG_SUPPORT_USB_INT
|
|
||||||
interrupt_handler_8188eu(padapter,pattrib->pkt_len,precvframe->u.hdr.rx_data);
|
interrupt_handler_8188eu(padapter,pattrib->pkt_len,precvframe->u.hdr.rx_data);
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
rtw_free_recvframe(precvframe, pfree_recv_queue);
|
rtw_free_recvframe(precvframe, pfree_recv_queue);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pkt_cnt--;
|
pkt_cnt--;
|
||||||
transfer_len -= pkt_offset;
|
transfer_len -= pkt_offset;
|
||||||
pbuf += pkt_offset;
|
pbuf += pkt_offset;
|
||||||
precvframe = NULL;
|
precvframe = NULL;
|
||||||
pkt_copy = NULL;
|
pkt_copy = NULL;
|
||||||
|
|
||||||
if (transfer_len>0 && pkt_cnt==0)
|
if (transfer_len > 0 && pkt_cnt == 0)
|
||||||
pkt_cnt = (le32_to_cpu(prxstat->rxdw2)>>16) & 0xff;
|
pkt_cnt = (le32_to_cpu(prxstat->rxdw2)>>16) & 0xff;
|
||||||
|
|
||||||
}while ((transfer_len>0) && (pkt_cnt>0));
|
} while ((transfer_len > 0) && (pkt_cnt > 0));
|
||||||
|
|
||||||
_exit_recvbuf2recvframe:
|
_exit_recvbuf2recvframe:
|
||||||
|
|
||||||
|
@ -556,23 +541,16 @@ void rtl8188eu_recv_tasklet(void *priv)
|
||||||
_adapter *padapter = (_adapter*)priv;
|
_adapter *padapter = (_adapter*)priv;
|
||||||
struct recv_priv *precvpriv = &padapter->recvpriv;
|
struct recv_priv *precvpriv = &padapter->recvpriv;
|
||||||
|
|
||||||
while (NULL != (pskb = skb_dequeue(&precvpriv->rx_skb_queue)))
|
while (NULL != (pskb = skb_dequeue(&precvpriv->rx_skb_queue))) {
|
||||||
{
|
if ((padapter->bDriverStopped == true) || (padapter->bSurpriseRemoved == true)) {
|
||||||
if ((padapter->bDriverStopped == true)||(padapter->bSurpriseRemoved== true))
|
|
||||||
{
|
|
||||||
DBG_88E("recv_tasklet => bDriverStopped or bSurpriseRemoved\n");
|
DBG_88E("recv_tasklet => bDriverStopped or bSurpriseRemoved\n");
|
||||||
dev_kfree_skb_any(pskb);
|
dev_kfree_skb_any(pskb);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
recvbuf2recvframe(padapter, pskb);
|
recvbuf2recvframe(padapter, pskb);
|
||||||
|
|
||||||
skb_reset_tail_pointer(pskb);
|
skb_reset_tail_pointer(pskb);
|
||||||
|
|
||||||
pskb->len = 0;
|
pskb->len = 0;
|
||||||
|
|
||||||
skb_queue_tail(&precvpriv->free_recv_skb_queue, pskb);
|
skb_queue_tail(&precvpriv->free_recv_skb_queue, pskb);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -588,27 +566,26 @@ static void usb_read_port_complete(struct urb *purb, struct pt_regs *regs)
|
||||||
|
|
||||||
precvpriv->rx_pending_cnt --;
|
precvpriv->rx_pending_cnt --;
|
||||||
|
|
||||||
if (padapter->bSurpriseRemoved || padapter->bDriverStopped||padapter->bReadPortCancel)
|
if (padapter->bSurpriseRemoved || padapter->bDriverStopped || padapter->bReadPortCancel) {
|
||||||
{
|
RT_TRACE(_module_hci_ops_os_c_, _drv_err_,
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete:bDriverStopped(%d) OR bSurpriseRemoved(%d)\n", padapter->bDriverStopped, padapter->bSurpriseRemoved));
|
("usb_read_port_complete:bDriverStopped(%d) OR bSurpriseRemoved(%d)\n",
|
||||||
|
padapter->bDriverStopped, padapter->bSurpriseRemoved));
|
||||||
|
|
||||||
precvbuf->reuse = true;
|
precvbuf->reuse = true;
|
||||||
DBG_88E("%s() RX Warning! bDriverStopped(%d) OR bSurpriseRemoved(%d) bReadPortCancel(%d)\n",
|
DBG_88E("%s() RX Warning! bDriverStopped(%d) OR bSurpriseRemoved(%d) bReadPortCancel(%d)\n",
|
||||||
__func__,padapter->bDriverStopped, padapter->bSurpriseRemoved,padapter->bReadPortCancel);
|
__func__, padapter->bDriverStopped,
|
||||||
|
padapter->bSurpriseRemoved, padapter->bReadPortCancel);
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (purb->status==0)/* SUCCESS */
|
if (purb->status==0) {/* SUCCESS */
|
||||||
{
|
if ((purb->actual_length > MAX_RECVBUF_SZ) || (purb->actual_length < RXDESC_SIZE)) {
|
||||||
if ((purb->actual_length > MAX_RECVBUF_SZ) || (purb->actual_length < RXDESC_SIZE))
|
RT_TRACE(_module_hci_ops_os_c_, _drv_err_,
|
||||||
{
|
("usb_read_port_complete: (purb->actual_length > MAX_RECVBUF_SZ) || (purb->actual_length < RXDESC_SIZE)\n"));
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete: (purb->actual_length > MAX_RECVBUF_SZ) || (purb->actual_length < RXDESC_SIZE)\n"));
|
|
||||||
precvbuf->reuse = true;
|
precvbuf->reuse = true;
|
||||||
rtw_read_port(padapter, precvpriv->ff_hwaddr, 0, (unsigned char *)precvbuf);
|
rtw_read_port(padapter, precvpriv->ff_hwaddr, 0, (unsigned char *)precvbuf);
|
||||||
DBG_88E("%s()-%d: RX Warning!\n", __func__, __LINE__);
|
DBG_88E("%s()-%d: RX Warning!\n", __func__, __LINE__);
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
rtw_reset_continual_urb_error(adapter_to_dvobj(padapter));
|
rtw_reset_continual_urb_error(adapter_to_dvobj(padapter));
|
||||||
|
|
||||||
precvbuf->transfer_len = purb->actual_length;
|
precvbuf->transfer_len = purb->actual_length;
|
||||||
|
@ -622,49 +599,43 @@ static void usb_read_port_complete(struct urb *purb, struct pt_regs *regs)
|
||||||
precvbuf->reuse = false;
|
precvbuf->reuse = false;
|
||||||
rtw_read_port(padapter, precvpriv->ff_hwaddr, 0, (unsigned char *)precvbuf);
|
rtw_read_port(padapter, precvpriv->ff_hwaddr, 0, (unsigned char *)precvbuf);
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete : purb->status(%d) != 0\n", purb->status));
|
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete : purb->status(%d) != 0\n", purb->status));
|
||||||
|
|
||||||
DBG_88E("###=> usb_read_port_complete => urb status(%d)\n", purb->status);
|
DBG_88E("###=> usb_read_port_complete => urb status(%d)\n", purb->status);
|
||||||
|
|
||||||
if (rtw_inc_and_chk_continual_urb_error(adapter_to_dvobj(padapter)) == true ){
|
if (rtw_inc_and_chk_continual_urb_error(adapter_to_dvobj(padapter)) == true )
|
||||||
padapter->bSurpriseRemoved = true;
|
padapter->bSurpriseRemoved = true;
|
||||||
}
|
|
||||||
|
|
||||||
switch (purb->status) {
|
switch (purb->status) {
|
||||||
case -EINVAL:
|
case -EINVAL:
|
||||||
case -EPIPE:
|
case -EPIPE:
|
||||||
case -ENODEV:
|
case -ENODEV:
|
||||||
case -ESHUTDOWN:
|
case -ESHUTDOWN:
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete:bSurpriseRemoved=true\n"));
|
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete:bSurpriseRemoved=true\n"));
|
||||||
case -ENOENT:
|
case -ENOENT:
|
||||||
padapter->bDriverStopped=true;
|
padapter->bDriverStopped=true;
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete:bDriverStopped=true\n"));
|
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port_complete:bDriverStopped=true\n"));
|
||||||
break;
|
break;
|
||||||
case -EPROTO:
|
case -EPROTO:
|
||||||
case -EOVERFLOW:
|
case -EOVERFLOW:
|
||||||
{
|
{
|
||||||
HAL_DATA_TYPE *pHalData = GET_HAL_DATA(padapter);
|
HAL_DATA_TYPE *pHalData = GET_HAL_DATA(padapter);
|
||||||
pHalData->srestpriv.Wifi_Error_Status = USB_READ_PORT_FAIL;
|
pHalData->srestpriv.Wifi_Error_Status = USB_READ_PORT_FAIL;
|
||||||
}
|
}
|
||||||
precvbuf->reuse = true;
|
precvbuf->reuse = true;
|
||||||
rtw_read_port(padapter, precvpriv->ff_hwaddr, 0, (unsigned char *)precvbuf);
|
rtw_read_port(padapter, precvpriv->ff_hwaddr, 0, (unsigned char *)precvbuf);
|
||||||
break;
|
break;
|
||||||
case -EINPROGRESS:
|
case -EINPROGRESS:
|
||||||
DBG_88E("ERROR: URB IS IN PROGRESS!/n");
|
DBG_88E("ERROR: URB IS IN PROGRESS!/n");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
exit:
|
exit:
|
||||||
|
|
||||||
_func_exit_;
|
_func_exit_;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static u32 usb_read_port(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *rmem)
|
static u32 usb_read_port(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *rmem)
|
||||||
|
@ -682,11 +653,12 @@ static u32 usb_read_port(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *rmem)
|
||||||
struct recv_priv *precvpriv = &adapter->recvpriv;
|
struct recv_priv *precvpriv = &adapter->recvpriv;
|
||||||
struct usb_device *pusbd = pdvobj->pusbdev;
|
struct usb_device *pusbd = pdvobj->pusbdev;
|
||||||
|
|
||||||
|
|
||||||
_func_enter_;
|
_func_enter_;
|
||||||
|
|
||||||
if (adapter->bDriverStopped || adapter->bSurpriseRemoved ||adapter->pwrctrlpriv.pnp_bstop_trx) {
|
if (adapter->bDriverStopped || adapter->bSurpriseRemoved ||
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port:( padapter->bDriverStopped ||padapter->bSurpriseRemoved ||adapter->pwrctrlpriv.pnp_bstop_trx)!!!\n"));
|
adapter->pwrctrlpriv.pnp_bstop_trx) {
|
||||||
|
RT_TRACE(_module_hci_ops_os_c_, _drv_err_,
|
||||||
|
("usb_read_port:( padapter->bDriverStopped ||padapter->bSurpriseRemoved ||adapter->pwrctrlpriv.pnp_bstop_trx)!!!\n"));
|
||||||
return _FAIL;
|
return _FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -695,20 +667,17 @@ _func_enter_;
|
||||||
precvbuf->reuse = true;
|
precvbuf->reuse = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (precvbuf !=NULL)
|
if (precvbuf != NULL) {
|
||||||
{
|
|
||||||
rtl8188eu_init_recvbuf(adapter, precvbuf);
|
rtl8188eu_init_recvbuf(adapter, precvbuf);
|
||||||
|
|
||||||
/* re-assign for linux based on skb */
|
/* re-assign for linux based on skb */
|
||||||
if ((precvbuf->reuse == false) || (precvbuf->pskb == NULL))
|
if ((precvbuf->reuse == false) || (precvbuf->pskb == NULL)) {
|
||||||
{
|
|
||||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)) /* www.mail-archive.com/netdev@vger.kernel.org/msg17214.html */
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)) /* www.mail-archive.com/netdev@vger.kernel.org/msg17214.html */
|
||||||
precvbuf->pskb = dev_alloc_skb(MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ);
|
precvbuf->pskb = dev_alloc_skb(MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ);
|
||||||
#else
|
#else
|
||||||
precvbuf->pskb = netdev_alloc_skb(adapter->pnetdev, MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ);
|
precvbuf->pskb = netdev_alloc_skb(adapter->pnetdev, MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ);
|
||||||
#endif
|
#endif
|
||||||
if (precvbuf->pskb == NULL)
|
if (precvbuf->pskb == NULL) {
|
||||||
{
|
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("init_recvbuf(): alloc_skb fail!\n"));
|
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("init_recvbuf(): alloc_skb fail!\n"));
|
||||||
DBG_88E("#### usb_read_port() alloc_skb fail!#####\n");
|
DBG_88E("#### usb_read_port() alloc_skb fail!#####\n");
|
||||||
return _FAIL;
|
return _FAIL;
|
||||||
|
@ -723,14 +692,12 @@ _func_enter_;
|
||||||
precvbuf->ptail = skb_tail_pointer(precvbuf->pskb);
|
precvbuf->ptail = skb_tail_pointer(precvbuf->pskb);
|
||||||
precvbuf->pend = skb_end_pointer(precvbuf->pskb);
|
precvbuf->pend = skb_end_pointer(precvbuf->pskb);
|
||||||
precvbuf->pbuf = precvbuf->pskb->data;
|
precvbuf->pbuf = precvbuf->pskb->data;
|
||||||
}
|
} else { /* reuse skb */
|
||||||
else/* reuse skb */
|
|
||||||
{
|
|
||||||
precvbuf->phead = precvbuf->pskb->head;
|
precvbuf->phead = precvbuf->pskb->head;
|
||||||
precvbuf->pdata = precvbuf->pskb->data;
|
precvbuf->pdata = precvbuf->pskb->data;
|
||||||
precvbuf->ptail = skb_tail_pointer(precvbuf->pskb);
|
precvbuf->ptail = skb_tail_pointer(precvbuf->pskb);
|
||||||
precvbuf->pend = skb_end_pointer(precvbuf->pskb);
|
precvbuf->pend = skb_end_pointer(precvbuf->pskb);
|
||||||
precvbuf->pbuf = precvbuf->pskb->data;
|
precvbuf->pbuf = precvbuf->pskb->data;
|
||||||
|
|
||||||
precvbuf->reuse = false;
|
precvbuf->reuse = false;
|
||||||
}
|
}
|
||||||
|
@ -743,27 +710,27 @@ _func_enter_;
|
||||||
pipe = ffaddr2pipehdl(pdvobj, addr);
|
pipe = ffaddr2pipehdl(pdvobj, addr);
|
||||||
|
|
||||||
usb_fill_bulk_urb(purb, pusbd, pipe,
|
usb_fill_bulk_urb(purb, pusbd, pipe,
|
||||||
precvbuf->pbuf,
|
precvbuf->pbuf,
|
||||||
MAX_RECVBUF_SZ,
|
MAX_RECVBUF_SZ,
|
||||||
usb_read_port_complete,
|
usb_read_port_complete,
|
||||||
precvbuf);/* context is precvbuf */
|
precvbuf);/* context is precvbuf */
|
||||||
|
|
||||||
err = usb_submit_urb(purb, GFP_ATOMIC);
|
err = usb_submit_urb(purb, GFP_ATOMIC);
|
||||||
if ((err) && (err != (-EPERM)))
|
if ((err) && (err != (-EPERM))) {
|
||||||
{
|
RT_TRACE(_module_hci_ops_os_c_, _drv_err_,
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("cannot submit rx in-token(err=0x%.8x), URB_STATUS =0x%.8x", err, purb->status));
|
("cannot submit rx in-token(err=0x%.8x), URB_STATUS =0x%.8x",
|
||||||
DBG_88E("cannot submit rx in-token(err = 0x%08x),urb_status = %d\n",err,purb->status);
|
err, purb->status));
|
||||||
|
DBG_88E("cannot submit rx in-token(err = 0x%08x),urb_status = %d\n",
|
||||||
|
err, purb->status);
|
||||||
ret = _FAIL;
|
ret = _FAIL;
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else
|
RT_TRACE(_module_hci_ops_os_c_, _drv_err_,
|
||||||
{
|
("usb_read_port:precvbuf ==NULL\n"));
|
||||||
RT_TRACE(_module_hci_ops_os_c_,_drv_err_,("usb_read_port:precvbuf ==NULL\n"));
|
|
||||||
ret = _FAIL;
|
ret = _FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
_func_exit_;
|
_func_exit_;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -776,10 +743,10 @@ void rtl8188eu_xmit_tasklet(void *priv)
|
||||||
if (check_fwstate(&padapter->mlmepriv, _FW_UNDER_SURVEY) == true)
|
if (check_fwstate(&padapter->mlmepriv, _FW_UNDER_SURVEY) == true)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
while (1)
|
while (1) {
|
||||||
{
|
if ((padapter->bDriverStopped == true)||
|
||||||
if ((padapter->bDriverStopped == true)||(padapter->bSurpriseRemoved== true) || (padapter->bWritePortCancel == true))
|
(padapter->bSurpriseRemoved== true) ||
|
||||||
{
|
(padapter->bWritePortCancel == true)) {
|
||||||
DBG_88E("xmit_tasklet => bDriverStopped or bSurpriseRemoved or bWritePortCancel\n");
|
DBG_88E("xmit_tasklet => bDriverStopped or bSurpriseRemoved or bWritePortCancel\n");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -788,34 +755,26 @@ void rtl8188eu_xmit_tasklet(void *priv)
|
||||||
|
|
||||||
if (ret==false)
|
if (ret==false)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void rtl8188eu_set_intf_ops(struct _io_ops *pops)
|
void rtl8188eu_set_intf_ops(struct _io_ops *pops)
|
||||||
{
|
{
|
||||||
_func_enter_;
|
_func_enter_;
|
||||||
|
|
||||||
_rtw_memset((u8 *)pops, 0, sizeof(struct _io_ops));
|
_rtw_memset((u8 *)pops, 0, sizeof(struct _io_ops));
|
||||||
|
|
||||||
pops->_read8 = &usb_read8;
|
pops->_read8 = &usb_read8;
|
||||||
pops->_read16 = &usb_read16;
|
pops->_read16 = &usb_read16;
|
||||||
pops->_read32 = &usb_read32;
|
pops->_read32 = &usb_read32;
|
||||||
pops->_read_mem = &usb_read_mem;
|
pops->_read_mem = &usb_read_mem;
|
||||||
pops->_read_port = &usb_read_port;
|
pops->_read_port = &usb_read_port;
|
||||||
|
|
||||||
pops->_write8 = &usb_write8;
|
pops->_write8 = &usb_write8;
|
||||||
pops->_write16 = &usb_write16;
|
pops->_write16 = &usb_write16;
|
||||||
pops->_write32 = &usb_write32;
|
pops->_write32 = &usb_write32;
|
||||||
pops->_writeN = &usb_writeN;
|
pops->_writeN = &usb_writeN;
|
||||||
|
|
||||||
pops->_write_mem = &usb_write_mem;
|
pops->_write_mem = &usb_write_mem;
|
||||||
pops->_write_port = &usb_write_port;
|
pops->_write_port = &usb_write_port;
|
||||||
|
|
||||||
pops->_read_port_cancel = &usb_read_port_cancel;
|
pops->_read_port_cancel = &usb_read_port_cancel;
|
||||||
pops->_write_port_cancel = &usb_write_port_cancel;
|
pops->_write_port_cancel = &usb_write_port_cancel;
|
||||||
|
|
||||||
_func_exit_;
|
_func_exit_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -38,8 +38,6 @@
|
||||||
|
|
||||||
#define CONFIG_80211N_HT
|
#define CONFIG_80211N_HT
|
||||||
|
|
||||||
#define CONFIG_SUPPORT_USB_INT
|
|
||||||
|
|
||||||
#define CONFIG_AP_MODE
|
#define CONFIG_AP_MODE
|
||||||
|
|
||||||
#define CONFIG_P2P
|
#define CONFIG_P2P
|
||||||
|
|
Loading…
Add table
Reference in a new issue