Message ID | 5453A5CF.90107@lwfinger.net (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
On Fri, Oct 31, 2014 at 10:07:59AM -0500, Larry Finger wrote: > On 10/31/2014 08:56 AM, S. Gilles wrote: > >> 03:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter [10ec:8176] (rev 01) > > > > Any progress on this, or duplication? If this isn't replicable with > > the information in Bugzilla, I can provide anything requested. > > Thanks for posting the PCI ID. I am currently on a family vacation, and I have > had little time for driver problems, and none for chasing missing information. My apologies, I didn't realize you were still away. > The attached patches should fix the kernel crashes; however, I doubt that the > driver will work. There seems to be a problem with DMA buffers that I have not > had time to find. For the sake of followp, I can confirm on my machine: the boot is fine but no /dev/wlan0. Thanks for the patches, I'll remain available to test any more if needed.
From 4f3d6a80198c539bbf200ff3a6dd00689b50bf78 Mon Sep 17 00:00:00 2001 From: Larry Finger <Larry.Finger@lwfinger.net> Date: Sat, 25 Oct 2014 23:51:15 -0500 Subject: [PATCH 5/7] rtlwifi: rtl8192ce: Add missing section to read descriptor setting To: linville@tuxdriver.com Cc: netdev@vger.kernel.org, troy_tan@realsil.com.cn The new version of rtlwifi needs code in rtl92ce_get_desc() that returns the buffer address for read operations. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> --- drivers/net/wireless/rtlwifi/rtl8192ce/def.h | 2 ++ drivers/net/wireless/rtlwifi/rtl8192ce/trx.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/def.h b/drivers/net/wireless/rtlwifi/rtl8192ce/def.h index 831df10..9b660df 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192ce/def.h +++ b/drivers/net/wireless/rtlwifi/rtl8192ce/def.h @@ -114,6 +114,8 @@ LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 16, 4) #define GET_C2H_CMD_FEEDBACK_CCX_SEQ(__pcmdfbhdr) \ LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 20, 12) +#define GET_RX_STATUS_DESC_BUFF_ADDR(__pdesc) \ + SHIFT_AND_MASK_LE(__pdesc + 24, 0, 32) #define CHIP_VER_B BIT(4) #define CHIP_BONDING_IDENTIFIER(_value) (((_value) >> 22) & 0x3) diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c index 2fb9c7a..dc3d20b 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c +++ b/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c @@ -728,6 +728,9 @@ u32 rtl92ce_get_desc(u8 *p_desc, bool istx, u8 desc_name) case HW_DESC_RXPKT_LEN: ret = GET_RX_DESC_PKT_LEN(pdesc); break; + case HW_DESC_RXBUFF_ADDR: + ret = GET_RX_STATUS_DESC_BUFF_ADDR(pdesc); + break; default: RT_ASSERT(false, "ERR rxdesc :%d not process\n", desc_name); -- 2.1.1