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

Intel Wireless 8260 not working on Lenovo Ideapad



Dear all at debian-user@lists.debian.org,

	In January of 2016, I purchased a Lenovo IdeaPad Y700 laptop, which had Windows 10 pre-installed on it. Since that time I have been unable to get my Intel Wireless 8260 hardware to work with my Debian Jessie stable 
distro. After several hours searching the internet for solutions, I have seen that this is a common problem with Lenovo computers. Here are the solutions that I have tried:
	
	1. I recompiled the kernel, using the stable 4.4.1 version that I obtained from www.kernel.org via wget. Using apt, I downloaded the package kernel-package. Using menuconfig, I selected the iwlwifi drivers in the wireless 
options. I made the image using the make-kpkg command, and compiled it using the fakeroot make-kpkg --initrd --revision=1.0.custom kernel_image command. I rebooted, but the drivers seemed not to have been correct, and the wifi card 
continued not to work.

	2. I then downloaded the most recent backports package using wget https://www.kernel.org/pub/linux/kernel/projects/backports/2016/01/22/backports-20160122.tar.gz. I untarred the package, issued the commands make 
defconfig-wifi && make && make install. The program seemed to compile without any errors. I then searched in the /lib/modules/4.4.1/build/drivers/net/wireless/iwlwifi/pcie/drv.c file, where on line 425 I read:

		{IWL_PCI_DEVICE(0x24F3, 0x1010, iwl8260_2ac_cfg)},
	 
This seemed to indicate to me that my device should be supported, based on the lspci -nnk | grep 0280 -A2 command, which gives the following output:

		08:00.0 Network controller [0280]: Intel Corporation Wireless 8260 [8086:24f3] (rev 3a)
		Subsystem: Intel Corporation Device [8086:1010]
		Kernel driver in use: iwlwifi
	
However, upon rebooting my machine, my wifi card still did not work.

	3. I then attempted to manage a problem with rfkill by searching in the file /lib/modules/4.4.1/build/drivers/platform/x86/ideapad-laptop.c, which states:
		
		/*
		 * Some ideapads don't have a hardware rfkill switch, reading VPCCMD_R_RF
		 * always results in 0 on these models, causing ideapad_laptop to wrongly
		 * report all radios as hardware-blocked.
		 */

At line 902, I added the following:

			{
			.ident = "Lenovo Yoga 700",
			.matches = {
				DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
				DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo ideapad Y700 Touch-15ISK"),
				},
			},

This was because the output of the command dmidecode | grep -A3 '^System Information' was:

				System Information
		Manufacturer: LENOVO
		Product Name: 80NW
		Version: Lenovo ideapad Y700 Touch-15ISK

I guessed based on this that DMI_PRODUCT_VERSION should therefore be set to "Lenovo ideapad Y700 Touch-15ISK". However, upon reboot, rfkill list still showed the following:

		0: hci0: Bluetooth
			Soft blocked: yes
			Hard blocked: no
		1: ideapad_wlan: Wireless LAN
			Soft blocked: no
			Hard blocked: yes
		2: ideapad_bluetooth: Bluetooth
			Soft blocked: no
			Hard blocked: yes
		3: phy0: Wireless LAN
			Soft blocked: no
			Hard blocked: no
	
	I don't know why phy0 is showing up as a logical device, because that had not been showing up prior to my updating the kernel to 4.4.1. However, I don't think this is part of the problem. I believe I have exhausted my 
capacity to troubleshoot the problem using web searches, and I therefore am seeking some help here. The outputs of some other commands appear below for further information:

dmesg | grep -i iwl

[    2.477758] iwlwifi 0000:08:00.0: Direct firmware load for iwlwifi-8000C-20.ucode failed with error -2
[    2.484820] iwlwifi 0000:08:00.0: loaded firmware version 16.242414.0 op_mode iwlmvm
[    2.520860] iwlwifi 0000:08:00.0: Unsupported splx structure
[    2.557772] iwlwifi 0000:08:00.0: Detected Intel(R) Dual Band Wireless AC 8260, REV=0x208
[    2.558389] iwlwifi 0000:08:00.0: L1 Enabled - LTR Enabled
[    2.559215] iwlwifi 0000:08:00.0: L1 Enabled - LTR Enabled
[    2.567127] iwlwifi 0000:08:00.0: can't access the RSA semaphore it is write protected
[    2.718970] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs'

lspci:

00:00.0 Host bridge: Intel Corporation Device 1910 (rev 07)
00:01.0 PCI bridge: Intel Corporation Device 1901 (rev 07)
00:02.0 VGA compatible controller: Intel Corporation Device 191b (rev 06)
00:14.0 USB controller: Intel Corporation Device a12f (rev 31)
00:16.0 Communication controller: Intel Corporation Device a13a (rev 31)
00:17.0 SATA controller: Intel Corporation Device a103 (rev 31)
00:1c.0 PCI bridge: Intel Corporation Device a111 (rev f1)
00:1c.2 PCI bridge: Intel Corporation Device a112 (rev f1)
00:1c.3 PCI bridge: Intel Corporation Device a113 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Device a14e (rev 31)
00:1f.2 Memory controller: Intel Corporation Device a121 (rev 31)
00:1f.3 Audio device: Intel Corporation Device a170 (rev 31)
00:1f.4 SMBus: Intel Corporation Device a123 (rev 31)
01:00.0 3D controller: NVIDIA Corporation Device 139b (rev a2)
07:00.0 SD Host controller: O2 Micro, Inc. SD/MMC Card Reader Controller (rev 01)
08:00.0 Network controller: Intel Corporation Wireless 8260 (rev 3a)
09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)

ifconfig -a:

eth0      Link encap:Ethernet  HWaddr 50:7b:9d:5c:a7:1f  
          inet addr:192.168.1.102  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::527b:9dff:fe5c:a71f/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1288 (1.2 KiB)  TX bytes:1332 (1.3 KiB)

eth1      Link encap:Ethernet  HWaddr 26:e3:14:75:3f:b8  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1296 (1.2 KiB)  TX bytes:1296 (1.2 KiB)

wlan0     Link encap:Ethernet  HWaddr a4:34:d9:2f:eb:21  
          inet6 addr: fe80::a634:d9ff:fe2f:eb21/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:395 (395.0 B)  TX bytes:1101 (1.0 KiB)


part of lshw output:

        *-pci:2
             description: PCI bridge
             product: Intel Corporation
             vendor: Intel Corporation
             physical id: 1c.2
             bus info: pci@0000:00:1c.2
             version: f1
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:124 memory:94100000-941fffff
           *-network DISABLED
                description: Wireless interface
                product: Wireless 8260
                vendor: Intel Corporation
                physical id: 0
                bus info: pci@0000:08:00.0
                logical name: wlan0
                version: 3a
                serial: a4:34:d9:2f:eb:21
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
                configuration: broadcast=yes driver=iwlwifi driverversion=4.4.1 firmware=16.242414.0 latency=0 link=no multicast=yes wireless=IEEE 802.11abgn
                resources: irq:130 memory:94100000-94101fff
        *-pci:3
             description: PCI bridge
             product: Intel Corporation
             vendor: Intel Corporation
             physical id: 1c.3
             bus info: pci@0000:00:1c.3
             version: f1
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:125 ioport:3000(size=4096) memory:94000000-940fffff
           *-network
                description: Ethernet interface
                product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
                vendor: Realtek Semiconductor Co., Ltd.
                physical id: 0
                bus info: pci@0000:09:00.0
                logical name: eth0
                version: 15
                serial: 50:7b:9d:5c:a7:1f
                size: 100Mbit/s
                capacity: 1Gbit/s
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
                configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full ip=192.168.1.100 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
                resources: irq:126 ioport:3000(size=256) memory:94004000-94004fff memory:94000000-94003fff

lsmod | grep -i iwl:

iwlmvm                303104  0 
mac80211              552960  1 iwlmvm
iwlwifi               176128  1 iwlmvm
cfg80211              466944  3 iwlwifi,mac80211,iwlmvm
compat                 16384  4 cfg80211,iwlwifi,mac80211,iwlmvm

Note that the ethernet card is working properly, so that I can be sure the router is working, and that the wireless card worked with windows, which means that the hardware itself is fine. 

I can only guess, but I think the problem is with rfkill rather than with the drivers. I have seen that some people have tried creating a file called 'ideapad.conf' in /etc/modprobe.d, and having that file contain the line 
'blacklist ideapad_laptop'. On Ubuntu forums, users have reported that this solved their problem. However, if I attempt this, upon reboot, the output of rfkill is:

0: hci0: Bluetooth
	Soft blocked: yes
	Hard blocked: no
1: phy0: Wireless LAN
	Soft blocked: no
	Hard blocked: no

Rather than disabling the kill switch which is causing the hard block, this measure removes the device altogether from rfkill. The ifconfig -a output is identical to that shown above, but attempting to enable the device with 
'ifconfig wlan0 UP' and to connect with wpa_supplicant fails. wpa_supplicant tells me that I may have the wrong key, but I have double and triple checked the wpa_supplicant.conf file, and both the key and ssid are correct.

I am at a total loss for a solution to this problem. I greatly appreciate any help you can offer.

Levi


Reply to: