struct dvobj_priv *dvobjpriv = adapter_to_dvobj(adapt);
struct usb_device *udev = dvobjpriv->pusbdev;
int status;
- u8 *io_buf; /* Pointer to I/O buffer */
+ u8 io_buf[4];
mutex_lock(&dvobjpriv->usb_vendor_req_mutex);
goto mutex_unlock;
}
- /* Acquire IO memory for vendorreq */
- io_buf = dvobjpriv->usb_vendor_req_buf;
-
status = usb_control_msg_recv(udev, 0, REALTEK_USB_VENQT_CMD_REQ,
REALTEK_USB_VENQT_READ, value,
REALTEK_USB_VENQT_CMD_IDX, io_buf,
struct dvobj_priv *dvobjpriv = adapter_to_dvobj(adapt);
struct usb_device *udev = dvobjpriv->pusbdev;
int status;
- u8 *io_buf; /* Pointer to I/O buffer */
+ u8 io_buf[VENDOR_CMD_MAX_DATA_LEN];
mutex_lock(&dvobjpriv->usb_vendor_req_mutex);
- if (adapt->bSurpriseRemoved || adapt->pwrctrlpriv.pnp_bstop_trx)
- return -EPERM;
-
- io_buf = dvobjpriv->usb_vendor_req_buf;
+ if (adapt->bSurpriseRemoved || adapt->pwrctrlpriv.pnp_bstop_trx) {
+ status = -EPERM;
+ goto mutex_unlock;
+ }
memcpy(io_buf, data, size);
status = usb_control_msg_send(udev, 0, REALTEK_USB_VENQT_CMD_REQ,
struct semaphore usb_suspend_sema;
struct mutex usb_vendor_req_mutex;
- u8 *usb_alloc_vendor_req_buf;
- u8 *usb_vendor_req_buf;
-
struct usb_interface *pusbintf;
struct usb_device *pusbdev;
static u8 rtw_init_intf_priv(struct dvobj_priv *dvobj)
{
- u8 rst = _SUCCESS;
-
mutex_init(&dvobj->usb_vendor_req_mutex);
-
- dvobj->usb_alloc_vendor_req_buf = kzalloc(MAX_USB_IO_CTL_SIZE, GFP_KERNEL);
- if (!dvobj->usb_alloc_vendor_req_buf) {
- DBG_88E("alloc usb_vendor_req_buf failed... /n");
- rst = _FAIL;
- goto exit;
- }
- dvobj->usb_vendor_req_buf = (u8 *)N_BYTE_ALIGMENT((size_t)(dvobj->usb_alloc_vendor_req_buf), ALIGNMENT_UNIT);
-exit:
- return rst;
+ return _SUCCESS;
}
static void rtw_deinit_intf_priv(struct dvobj_priv *dvobj)
{
- kfree(dvobj->usb_alloc_vendor_req_buf);
mutex_destroy(&dvobj->usb_vendor_req_mutex);
}