From ad697c64350f64faabf98c851abb625b1b880116 Mon Sep 17 00:00:00 2001 From: Martin Kaiser Date: Fri, 26 Nov 2021 18:32:00 +0100 Subject: [PATCH] staging: r8188eu: get the rcv bulk pipe handle directly There's no point in calling ffaddr2pipehdl from rtw_read_port if the endpoint address is constant. We can call usb_rcvbulkpipe ourselves to get the pipe handle. We can now remove RECV_BULK_IN_ADDR. Signed-off-by: Martin Kaiser Link: https://lore.kernel.org/r/20211126173205.21352-4-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman --- drivers/staging/r8188eu/hal/usb_ops_linux.c | 2 +- drivers/staging/r8188eu/include/rtl8188e_recv.h | 1 - drivers/staging/r8188eu/os_dep/usb_ops_linux.c | 4 +--- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/staging/r8188eu/hal/usb_ops_linux.c b/drivers/staging/r8188eu/hal/usb_ops_linux.c index 6af55cd6c061e..d66a4b3946104 100644 --- a/drivers/staging/r8188eu/hal/usb_ops_linux.c +++ b/drivers/staging/r8188eu/hal/usb_ops_linux.c @@ -507,7 +507,7 @@ u32 rtw_read_port(struct adapter *adapter, u8 *rmem) purb = precvbuf->purb; /* translate DMA FIFO addr to pipehandle */ - pipe = ffaddr2pipehdl(pdvobj, RECV_BULK_IN_ADDR); + pipe = usb_rcvbulkpipe(pusbd, pdvobj->RtInPipe[0]); usb_fill_bulk_urb(purb, pusbd, pipe, precvbuf->pbuf, diff --git a/drivers/staging/r8188eu/include/rtl8188e_recv.h b/drivers/staging/r8188eu/include/rtl8188e_recv.h index 2ab395ef579b6..3aa28b3ccb30f 100644 --- a/drivers/staging/r8188eu/include/rtl8188e_recv.h +++ b/drivers/staging/r8188eu/include/rtl8188e_recv.h @@ -9,7 +9,6 @@ #define RECV_BLK_SZ 512 #define RECV_BLK_CNT 16 #define RECV_BLK_TH RECV_BLK_CNT -#define RECV_BULK_IN_ADDR 0x80 #define RECV_INT_IN_ADDR 0x81 #define NR_PREALLOC_RECV_SKB (8) diff --git a/drivers/staging/r8188eu/os_dep/usb_ops_linux.c b/drivers/staging/r8188eu/os_dep/usb_ops_linux.c index ef2ea68ae873d..5c659caa09753 100644 --- a/drivers/staging/r8188eu/os_dep/usb_ops_linux.c +++ b/drivers/staging/r8188eu/os_dep/usb_ops_linux.c @@ -12,9 +12,7 @@ unsigned int ffaddr2pipehdl(struct dvobj_priv *pdvobj, u32 addr) unsigned int pipe = 0, ep_num = 0; struct usb_device *pusbd = pdvobj->pusbdev; - if (addr == RECV_BULK_IN_ADDR) { - pipe = usb_rcvbulkpipe(pusbd, pdvobj->RtInPipe[0]); - } else if (addr == RECV_INT_IN_ADDR) { + if (addr == RECV_INT_IN_ADDR) { pipe = usb_rcvbulkpipe(pusbd, pdvobj->RtInPipe[1]); } else if (addr < HW_QUEUE_ENTRY) { ep_num = pdvobj->Queue2Pipe[addr]; -- 2.30.2