Return-path: Received: from mail-pf0-f193.google.com ([209.85.192.193]:34385 "EHLO mail-pf0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753848AbcERR5h (ORCPT ); Wed, 18 May 2016 13:57:37 -0400 Received: by mail-pf0-f193.google.com with SMTP id 145so5659019pfz.1 for ; Wed, 18 May 2016 10:57:37 -0700 (PDT) From: Dan Lenski To: linux-wireless@vger.kernel.org Cc: jes.sorensen@redhat.com Subject: [PATCH] rtl8xxxu: Increase default polling timeout for firmware startup Date: Wed, 18 May 2016 10:57:29 -0700 Message-Id: <1463594249-19524-2-git-send-email-dlenski@gmail.com> (sfid-20160518_195742_876152_38559A53) In-Reply-To: <1463594249-19524-1-git-send-email-dlenski@gmail.com> References: <1463594249-19524-1-git-send-email-dlenski@gmail.com> Sender: linux-wireless-owner@vger.kernel.org List-ID: This patch increases the default value for the maximum number of polling loops to wait for the rtl8xxxu MCU to start after the firmware is loaded (from 1000 to 5000). With RTL8723AU chipset, I frequently encounter "Firmware failed to start" errors from rtl8xxxu after a cold boot. It appears that other chipsets supported by the driver have the same problem. Here are a couple of relevant bug reports: - http://ubuntuforums.org/showthread.php?t=2321756 - https://www.mail-archive.com/ubuntu-bugs@lists.ubuntu.com/msg4942468.html This issue seems to occur because RTL8XXXU_FIRMWARE_POLL_MAX (1000) is too short, and the MCU fails to start up as quickly as expected. With a longer value (5000), the driver starts up consistently and successfully after cold-boot. Signed-off-by: Dan Lenski --- drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h index 870c9cd..972767f 100644 --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.h @@ -55,7 +55,7 @@ #define TX_PAGE_NUM_NORM_PQ_8192E 0x00 #define RTL_FW_PAGE_SIZE 4096 -#define RTL8XXXU_FIRMWARE_POLL_MAX 1000 +#define RTL8XXXU_FIRMWARE_POLL_MAX 5000 #define RTL8723A_CHANNEL_GROUPS 3 #define RTL8723A_MAX_RF_PATHS 2 -- 2.8.2