Search Linux Wireless

Re: FW: 0bda:819a RTL8188CUS WLAN doesn't work out of the box in downstream and upstreamkernel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/05/2013 04:37 PM, Xose Vazquez Perez wrote:
On 02/05/2013 10:54 PM, Larry Finger wrote:

Yes, but not a bug for the devices that it is supposed to support! No one ever says that their driver will support *future* devices! As I said earlier, there are newer versions of the RTL8188C chip
that requires different programming, which may be the cause of the problem. On the other hand, the chip change did not cause a crash in rtl8192ce. I just didn't work very well. As I have no such
device, I cannot test any changes; therefore, I will not make them. If you want to write patches that let that device work with the kernel driver, I will be happy to review them.

Then, remove the "new_id" facility of the driver.

*Or* fix the driver. rt2x00 handles correctly any
kind of unknown device.

The attached patch will fix the oops when a foreign new_id is inserted. I will be submitting it soon.

Larry

Index: wireless-testing-new/drivers/net/wireless/rtlwifi/usb.c
===================================================================
--- wireless-testing-new.orig/drivers/net/wireless/rtlwifi/usb.c
+++ wireless-testing-new/drivers/net/wireless/rtlwifi/usb.c
@@ -977,6 +977,9 @@ int rtl_usb_probe(struct usb_interface *
 	rtl_dbgp_flag_init(hw);
 	/* Init IO handler */
 	_rtl_usb_io_handler_init(&udev->dev, hw);
+	if (!rtlpriv->cfg || !rtlpriv->cfg->ops ||
+	    !rtlpriv->cfg->ops->read_chip_version)
+		return -ENODEV;
 	rtlpriv->cfg->ops->read_chip_version(hw);
 	/*like read eeprom and so on */
 	rtlpriv->cfg->ops->read_eeprom_info(hw);

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux