Return-path: Received: from mail-oi0-f54.google.com ([209.85.218.54]:34112 "EHLO mail-oi0-f54.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750712AbcB2VeS (ORCPT ); Mon, 29 Feb 2016 16:34:18 -0500 Received: by mail-oi0-f54.google.com with SMTP id m82so114949811oif.1 for ; Mon, 29 Feb 2016 13:34:17 -0800 (PST) Subject: Re: alfa awus036nhr v2 and module rtl8xxxu To: Jes Sorensen References: <56B38CDF.9010806@lwfinger.net> <56BA8E5D.5090402@lwfinger.net> <56BB5C16.8070206@lwfinger.net> <56D3EBCF.7000206@lwfinger.net> Cc: dsadsa sadsad , linux-wireless@vger.kernel.org From: Larry Finger Message-ID: <56D4B956.8030408@lwfinger.net> (sfid-20160229_223421_233977_519DE210) Date: Mon, 29 Feb 2016 15:34:14 -0600 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Sender: linux-wireless-owner@vger.kernel.org List-ID: On 02/29/2016 06:28 AM, Jes Sorensen wrote: > That one I have never seen before - could you try and insert some debug > prints to see where the RF initialization fails? The call to usb_control_msg() is returning -EPROTO (-71), but sometimes the system works. I added the following patch: diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.c b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.c index 38aa3c2..8ab77a0 100644 --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.c +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.c @@ -1979,9 +1979,12 @@ static int rtl8xxxu_write_rfreg(struct rtl8xxxu_priv *priv, /* Use XB for path B */ ret = rtl8xxxu_write32(priv, rtl8xxxu_rfregs[path].lssiparm, dataaddr); - if (ret != sizeof(dataaddr)) + if (ret != sizeof(dataaddr)) { + pr_info("**** rtl8xxxu_write32() error %d: path %d, reg: 0x%x, data 0x%x, dataaddr 0x%x, lssiparm 0x%x\n", + ret, path, reg, data, dataaddr, rtl8xxxu_rfregs[path].lssiparm); + dump_stack(); retval = -EIO; - else + } else retval = 0; udelay(1); When the error happens, my log contains [52347.751420] **** rtl8xxxu_write32() error -71: path 0, reg: 0x2a, data 0x5, dataaddr 0x2a00005, lssiparm 0x840 [52347.751427] CPU: 0 PID: 5743 Comm: systemd-udevd Not tainted 4.5.0-rc2-jes+ #2 [52347.751429] Hardware name: TOSHIBA TECRA A50-A/TECRA A50-A, BIOS Version 4.20 04/17/2014 [52347.751430] 00000000fffffffb ffff880117e139b8 ffffffff813d7722 ffff880101fb2860 [52347.751433] ffff880117e13a00 ffffffffa066ed56 ffffffff00000840 0000000500000010 [52347.751435] ffffffffa06803c0 ffff880101fb2860 0000000000000000 0000000000000031 [52347.751437] Call Trace: [52347.751442] [] dump_stack+0x4b/0x79 [52347.751446] [] rtl8xxxu_write_rfreg+0x146/0x150 [rtl8xxxu] [52347.751448] [] rtl8xxxu_init_phy_rf+0x152/0x240 [rtl8xxxu] [52347.751451] [] rtl8192cu_init_phy_rf+0x69/0x70 [rtl8xxxu] [52347.751453] [] rtl8xxxu_init_device.isra.36+0x57c/0x14d0 [rtl8xxxu] [52347.751456] [] ? release_firmware+0x58/0x70 [52347.751458] [] rtl8xxxu_probe+0xdd5/0x1130 [rtl8xxxu] [52347.751461] [] usb_probe_interface+0x1c8/0x310 [52347.751463] [] driver_probe_device+0x247/0x460 --snip-- [52347.751487] [] do_init_module+0x60/0x1ee [52347.751489] [] load_module+0x1ee1/0x2830 [52347.751491] [] ? __symbol_put+0x50/0x50 [52347.751493] [] SyS_init_module+0x139/0x180 [52347.751495] [] entry_SYSCALL_64_fastpath+0x12/0x6f [52347.751498] usb 3-6: Failed to initialize RF Perhaps you can recognize what is wrong. Larry