First, I have to mention that after additional testing I found that the ab1304b986468e3ef698ec4e1cb1a3d4ba080811 commit actually does work, but for some unknown reason I have to turn off the wifi adapter and turn it back on after the computer starts.
The commit after that (d88c8958dc13b4e4eb7fc57e3f06dc1c4abc7b1f), which increases the acceptable firmware API to 10, is actually where the problem occurs.
This prompted me to look into the firmware itself more. I booted into the 3.19.0-13.13 generic and did the following:
Then I rebooted. I am now using the wifi on the Ubuntu 3.19.0-13.13 kernel, albeit with the older firmware (version 9). Dmesg confirms that moving these firmware files made the iwlwifi driver fallback to the earlier version:
# dmesg | grep iwlwifi
[ 6.856144] iwlwifi 0000:08:00.0: Direct firmware load for iwlwifi-3160-12.ucode failed with error -2
[ 6.856208] iwlwifi 0000:08:00.0: Direct firmware load for iwlwifi-3160-11.ucode failed with error -2
[ 6.856217] iwlwifi 0000:08:00.0: Direct firmware load for iwlwifi-3160-10.ucode failed with error -2
[ 6.856219] iwlwifi 0000:08:00.0: request for firmware file 'iwlwifi-3160-10.ucode' failed.
[ 6.861495] iwlwifi 0000:08:00.0: Firmware has old API version, expected v10 through v12, got v9.
[ 6.861499] iwlwifi 0000:08:00.0: New firmware can be obtained from http://www.intellinuxwireless.org/.
[ 6.861664] iwlwifi 0000:08:00.0: loaded firmware version 25.228.9.0 op_mode iwlmvm
[ 6.899533] iwlwifi 0000:08:00.0: Detected Intel(R) Dual Band Wireless AC 3160, REV=0x164
[ 6.899677] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
[ 6.899923] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
[ 7.323877] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
[ 7.324167] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
This is an OK workaround, but clearly something is up here because I am able to use the newest firmware on other distributions (Arch for instance).
First, I have to mention that after additional testing I found that the ab1304b986468e3 ef698ec4e1cb1a3 d4ba080811 commit actually does work, but for some unknown reason I have to turn off the wifi adapter and turn it back on after the computer starts.
The commit after that (d88c8958dc13b4 e4eb7fc57e3f06d c1c4abc7b1f) , which increases the acceptable firmware API to 10, is actually where the problem occurs.
This prompted me to look into the firmware itself more. I booted into the 3.19.0-13.13 generic and did the following:
sudo mv /lib/firmware/ iwlwifi- 3160-12. ucode /lib/firmware/ backup- iwlwifi- 3160-12. ucode iwlwifi- 3160-10. ucode /lib/firmware/ backup- iwlwifi- 3160-10. ucode
sudo mv /lib/firmware/
Then I rebooted. I am now using the wifi on the Ubuntu 3.19.0-13.13 kernel, albeit with the older firmware (version 9). Dmesg confirms that moving these firmware files made the iwlwifi driver fallback to the earlier version:
# dmesg | grep iwlwifi 3160-12. ucode failed with error -2 3160-11. ucode failed with error -2 3160-10. ucode failed with error -2 3160-10. ucode' failed. www.intellinuxw ireless. org/.
[ 6.856144] iwlwifi 0000:08:00.0: Direct firmware load for iwlwifi-
[ 6.856208] iwlwifi 0000:08:00.0: Direct firmware load for iwlwifi-
[ 6.856217] iwlwifi 0000:08:00.0: Direct firmware load for iwlwifi-
[ 6.856219] iwlwifi 0000:08:00.0: request for firmware file 'iwlwifi-
[ 6.861495] iwlwifi 0000:08:00.0: Firmware has old API version, expected v10 through v12, got v9.
[ 6.861499] iwlwifi 0000:08:00.0: New firmware can be obtained from http://
[ 6.861664] iwlwifi 0000:08:00.0: loaded firmware version 25.228.9.0 op_mode iwlmvm
[ 6.899533] iwlwifi 0000:08:00.0: Detected Intel(R) Dual Band Wireless AC 3160, REV=0x164
[ 6.899677] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
[ 6.899923] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
[ 7.323877] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
[ 7.324167] iwlwifi 0000:08:00.0: L1 Enabled - LTR Disabled
This is an OK workaround, but clearly something is up here because I am able to use the newest firmware on other distributions (Arch for instance).