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 via email to