From f3d464a2873dbededbc415b52421bfbeaf5fca61 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Tue, 21 Mar 2023 08:25:35 +0000 Subject: [PATCH] Revert "linux: rtw88: upstream patches" This reverts commit 524966c9738f010e146c37ef5e4edc89891b8b40. --- .../default/linux-122-rtw88-USB-fixes.patch | 231 ------------------ 1 file changed, 231 deletions(-) delete mode 100644 packages/linux/patches/default/linux-122-rtw88-USB-fixes.patch diff --git a/packages/linux/patches/default/linux-122-rtw88-USB-fixes.patch b/packages/linux/patches/default/linux-122-rtw88-USB-fixes.patch deleted file mode 100644 index 92baa0acd3..0000000000 --- a/packages/linux/patches/default/linux-122-rtw88-USB-fixes.patch +++ /dev/null @@ -1,231 +0,0 @@ -From: Sascha Hauer -To: linux-wireless@vger.kernel.org -Cc: Neo Jou , Hans Ulli Kroll , - Ping-Ke Shih , - Yan-Hsuan Chuang , - Kalle Valo , netdev@vger.kernel.org, - linux-kernel@vger.kernel.org, - Martin Blumenstingl , - kernel@pengutronix.de, Alexander Hochbaum , - Da Xue , Po-Hao Huang , - Andreas Henriksson , - Viktor Petrenko , - Sascha Hauer -Subject: [PATCH v2 0/3] wifi: rtw88: USB fixes -Date: Fri, 10 Feb 2023 12:16:29 +0100 -Message-Id: <20230210111632.1985205-1-s.hauer@pengutronix.de> -X-Mailer: git-send-email 2.30.2 -MIME-Version: 1.0 -X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 -X-SA-Exim-Mail-From: sha@pengutronix.de -X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); - SAEximRunCond expanded to false -X-PTX-Original-Recipient: linux-wireless@vger.kernel.org -Precedence: bulk -List-ID: -X-Mailing-List: linux-wireless@vger.kernel.org - -This series addresses issues for the recently added RTW88 USB support -reported by Andreas Henriksson and also our customer. - -The hardware can't handle urbs that have a size of multiple of the -bulkout_size (usually 512 bytes). The symptom is that the hardware -stalls completely. The issue can be reproduced by sending a suitably -sized ping packet from the device: - -ping -s 394 - -(It's 394 bytes here on a RTL8822CU and RTL8821CU, the actual size may -differ on other chips, it was 402 bytes on a RTL8723DU) - -Other than that qsel was not set correctly. The sympton here is that -only one of multiple bulk endpoints was used to send data. - -Changes since v1: -- Use URB_ZERO_PACKET to let the USB host controller handle it automatically - rather than working around the issue. - -Sascha Hauer (3): - wifi: rtw88: usb: Set qsel correctly - wifi: rtw88: usb: send Zero length packets if necessary - wifi: rtw88: usb: drop now unnecessary URB size check - - drivers/net/wireless/realtek/rtw88/usb.c | 18 +++--------------- - 1 file changed, 3 insertions(+), 15 deletions(-) -Reported-by: Andreas Henriksson -Tested-by: Andreas Henriksson - -From: Sascha Hauer -To: linux-wireless@vger.kernel.org -Cc: Neo Jou , Hans Ulli Kroll , - Ping-Ke Shih , - Yan-Hsuan Chuang , - Kalle Valo , netdev@vger.kernel.org, - linux-kernel@vger.kernel.org, - Martin Blumenstingl , - kernel@pengutronix.de, Alexander Hochbaum , - Da Xue , Po-Hao Huang , - Andreas Henriksson , - Viktor Petrenko , - Sascha Hauer -Subject: [PATCH v2 1/3] wifi: rtw88: usb: Set qsel correctly -Date: Fri, 10 Feb 2023 12:16:30 +0100 -Message-Id: <20230210111632.1985205-2-s.hauer@pengutronix.de> -X-Mailer: git-send-email 2.30.2 -In-Reply-To: <20230210111632.1985205-1-s.hauer@pengutronix.de> -References: <20230210111632.1985205-1-s.hauer@pengutronix.de> -MIME-Version: 1.0 -X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 -X-SA-Exim-Mail-From: sha@pengutronix.de -X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); - SAEximRunCond expanded to false -X-PTX-Original-Recipient: linux-wireless@vger.kernel.org -Precedence: bulk -List-ID: -X-Mailing-List: linux-wireless@vger.kernel.org - -We have to extract qsel from the skb before doing skb_push() on it, -otherwise qsel will always be 0. - -Fixes: a82dfd33d1237 ("wifi: rtw88: Add common USB chip support") -Signed-off-by: Sascha Hauer ---- - drivers/net/wireless/realtek/rtw88/usb.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/net/wireless/realtek/rtw88/usb.c b/drivers/net/wireless/realtek/rtw88/usb.c -index 4ef38279b64c9..d9e995544e405 100644 ---- a/drivers/net/wireless/realtek/rtw88/usb.c -+++ b/drivers/net/wireless/realtek/rtw88/usb.c -@@ -471,9 +471,9 @@ static int rtw_usb_tx_write(struct rtw_dev *rtwdev, - u8 *pkt_desc; - int ep; - -+ pkt_info->qsel = rtw_usb_tx_queue_mapping_to_qsel(skb); - pkt_desc = skb_push(skb, chip->tx_pkt_desc_sz); - memset(pkt_desc, 0, chip->tx_pkt_desc_sz); -- pkt_info->qsel = rtw_usb_tx_queue_mapping_to_qsel(skb); - ep = qsel_to_ep(rtwusb, pkt_info->qsel); - rtw_tx_fill_tx_desc(pkt_info, skb); - rtw_tx_fill_txdesc_checksum(rtwdev, pkt_info, skb->data); - -From: Sascha Hauer -To: linux-wireless@vger.kernel.org -Cc: Neo Jou , Hans Ulli Kroll , - Ping-Ke Shih , - Yan-Hsuan Chuang , - Kalle Valo , netdev@vger.kernel.org, - linux-kernel@vger.kernel.org, - Martin Blumenstingl , - kernel@pengutronix.de, Alexander Hochbaum , - Da Xue , Po-Hao Huang , - Andreas Henriksson , - Viktor Petrenko , - Sascha Hauer -Subject: [PATCH v2 2/3] wifi: rtw88: usb: send Zero length packets if - necessary -Date: Fri, 10 Feb 2023 12:16:31 +0100 -Message-Id: <20230210111632.1985205-3-s.hauer@pengutronix.de> -X-Mailer: git-send-email 2.30.2 -In-Reply-To: <20230210111632.1985205-1-s.hauer@pengutronix.de> -References: <20230210111632.1985205-1-s.hauer@pengutronix.de> -MIME-Version: 1.0 -X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 -X-SA-Exim-Mail-From: sha@pengutronix.de -X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); - SAEximRunCond expanded to false -X-PTX-Original-Recipient: linux-wireless@vger.kernel.org -Precedence: bulk -List-ID: -X-Mailing-List: linux-wireless@vger.kernel.org - -Zero length packets are necessary when sending URBs with size -multiple of bulkout_size, otherwise the hardware just stalls. - -Fixes: a82dfd33d1237 ("wifi: rtw88: Add common USB chip support") -Signed-off-by: Sascha Hauer ---- - drivers/net/wireless/realtek/rtw88/usb.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/drivers/net/wireless/realtek/rtw88/usb.c b/drivers/net/wireless/realtek/rtw88/usb.c -index d9e995544e405..1a09c9288198a 100644 ---- a/drivers/net/wireless/realtek/rtw88/usb.c -+++ b/drivers/net/wireless/realtek/rtw88/usb.c -@@ -271,6 +271,7 @@ static int rtw_usb_write_port(struct rtw_dev *rtwdev, u8 qsel, struct sk_buff *s - return -ENOMEM; - - usb_fill_bulk_urb(urb, usbd, pipe, skb->data, skb->len, cb, context); -+ urb->transfer_flags |= URB_ZERO_PACKET; - ret = usb_submit_urb(urb, GFP_ATOMIC); - - usb_free_urb(urb); - -From: Sascha Hauer -To: linux-wireless@vger.kernel.org -Cc: Neo Jou , Hans Ulli Kroll , - Ping-Ke Shih , - Yan-Hsuan Chuang , - Kalle Valo , netdev@vger.kernel.org, - linux-kernel@vger.kernel.org, - Martin Blumenstingl , - kernel@pengutronix.de, Alexander Hochbaum , - Da Xue , Po-Hao Huang , - Andreas Henriksson , - Viktor Petrenko , - Sascha Hauer -Subject: [PATCH v2 3/3] wifi: rtw88: usb: drop now unnecessary URB size check -Date: Fri, 10 Feb 2023 12:16:32 +0100 -Message-Id: <20230210111632.1985205-4-s.hauer@pengutronix.de> -X-Mailer: git-send-email 2.30.2 -In-Reply-To: <20230210111632.1985205-1-s.hauer@pengutronix.de> -References: <20230210111632.1985205-1-s.hauer@pengutronix.de> -MIME-Version: 1.0 -X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 -X-SA-Exim-Mail-From: sha@pengutronix.de -X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); - SAEximRunCond expanded to false -X-PTX-Original-Recipient: linux-wireless@vger.kernel.org -Precedence: bulk -List-ID: -X-Mailing-List: linux-wireless@vger.kernel.org - -Now that we send URBs with the URB_ZERO_PACKET flag set we no longer -need to make sure that the URB sizes are not multiple of the -bulkout_size. Drop the check. - -Signed-off-by: Sascha Hauer ---- - drivers/net/wireless/realtek/rtw88/usb.c | 15 +-------------- - 1 file changed, 1 insertion(+), 14 deletions(-) - -diff --git a/drivers/net/wireless/realtek/rtw88/usb.c b/drivers/net/wireless/realtek/rtw88/usb.c -index 1a09c9288198a..2a8336b1847a5 100644 ---- a/drivers/net/wireless/realtek/rtw88/usb.c -+++ b/drivers/net/wireless/realtek/rtw88/usb.c -@@ -414,24 +414,11 @@ static int rtw_usb_write_data_rsvd_page(struct rtw_dev *rtwdev, u8 *buf, - u32 size) - { - const struct rtw_chip_info *chip = rtwdev->chip; -- struct rtw_usb *rtwusb; - struct rtw_tx_pkt_info pkt_info = {0}; -- u32 len, desclen; -- -- rtwusb = rtw_get_usb_priv(rtwdev); - - pkt_info.tx_pkt_size = size; - pkt_info.qsel = TX_DESC_QSEL_BEACON; -- -- desclen = chip->tx_pkt_desc_sz; -- len = desclen + size; -- if (len % rtwusb->bulkout_size == 0) { -- len += RTW_USB_PACKET_OFFSET_SZ; -- pkt_info.offset = desclen + RTW_USB_PACKET_OFFSET_SZ; -- pkt_info.pkt_offset = 1; -- } else { -- pkt_info.offset = desclen; -- } -+ pkt_info.offset = chip->tx_pkt_desc_sz; - - return rtw_usb_write_data(rtwdev, &pkt_info, buf); - }