https://wiki.archlinux.org/api.php?action=feedcontributions&user=Aorth&feedformat=atomArchWiki - User contributions [en]2024-03-29T12:27:55ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=714118Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-28T08:22:58Z<p>Aorth: Fingerprint reader works!</p>
<hr />
<div>[[Category:Lenovo]]<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || {{ic|06CB:CE68}} || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || {{ic|8086:9A49}} || {{Yes}}<br />
|-<br />
| Webcam || {{ic|13D3:5439}} || {{Yes}}<br />
|-<br />
| Bluetooth || {{ic|8087:0026}} || {{Yes}}<br />
|-<br />
| Audio || {{ic|8086:A0C8}} || {{Yes}}<br />
|-<br />
| Wireless || {{ic|8086:A0F0}} || {{Yes}}<br />
|-<br />
| Ethernet || {{ic|8086:15FC}} || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || {{ic|06CB:00F9}} || {{Yes}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports updating the UEFI BIOS, NVMe SSD, and fingerprint reader (via the [https://github.com/fwupd/fwupd/wiki/LVFS-Testing-remote LVFS testing remote]) out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=712103Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-20T19:22:33Z<p>Aorth: Bluetooth template syntax fix</p>
<hr />
<div>[[Category:Lenovo]]<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || {{ic|06CB:CE68}} || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || {{ic|8086:9A49}} || {{Yes}}<br />
|-<br />
| Webcam || {{ic|13D3:5439}} || {{Yes}}<br />
|-<br />
| Bluetooth || {{ic|8087:0026}} || {{Yes}}<br />
|-<br />
| Audio || {{ic|8086:A0C8}} || {{Yes}}<br />
|-<br />
| Wireless || {{ic|8086:A0F0}} || {{Yes}}<br />
|-<br />
| Ethernet || {{ic|8086:15FC}} || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || {{ic|06CB:00F9}} || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports updating the UEFI BIOS, NVMe SSD, and fingerprint reader (via the [https://github.com/fwupd/fwupd/wiki/LVFS-Testing-remote LVFS testing remote]) out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=712102Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-20T19:22:09Z<p>Aorth: Bluetooth is working (tested now)</p>
<hr />
<div>[[Category:Lenovo]]<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || {{ic|06CB:CE68}} || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || {{ic|8086:9A49}} || {{Yes}}<br />
|-<br />
| Webcam || {{ic|13D3:5439}} || {{Yes}}<br />
|-<br />
| Bluetooth || {{ic|8087:0026}} || {{Y}}<br />
|-<br />
| Audio || {{ic|8086:A0C8}} || {{Yes}}<br />
|-<br />
| Wireless || {{ic|8086:A0F0}} || {{Yes}}<br />
|-<br />
| Ethernet || {{ic|8086:15FC}} || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || {{ic|06CB:00F9}} || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports updating the UEFI BIOS, NVMe SSD, and fingerprint reader (via the [https://github.com/fwupd/fwupd/wiki/LVFS-Testing-remote LVFS testing remote]) out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=711549Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-19T14:20:35Z<p>Aorth: Add link to LVFS testing remote for fwupd</p>
<hr />
<div>[[Category:Lenovo]]<br />
<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || {{ic|06CB:CE68}} || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || {{ic|8086:9A49}} || {{Yes}}<br />
|-<br />
| Webcam || {{ic|13D3:5439}} || {{Yes}}<br />
|-<br />
| Bluetooth || {{ic|8087:0026}} || {{Y|Untested}}<br />
|-<br />
| Audio || {{ic|8086:A0C8}} || {{Yes}}<br />
|-<br />
| Wireless || {{ic|8086:A0F0}} || {{Yes}}<br />
|-<br />
| Ethernet || {{ic|8086:15FC}} || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || {{ic|06CB:00F9}} || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports updating the UEFI BIOS, NVMe SSD, and fingerprint reader (via the [https://github.com/fwupd/fwupd/wiki/LVFS-Testing-remote LVFS testing remote]) out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=711545Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-19T14:11:16Z<p>Aorth: Add note about fwupd and the fingerprint reader</p>
<hr />
<div>[[Category:Lenovo]]<br />
<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || {{ic|06CB:CE68}} || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || {{ic|8086:9A49}} || {{Yes}}<br />
|-<br />
| Webcam || {{ic|13D3:5439}} || {{Yes}}<br />
|-<br />
| Bluetooth || {{ic|8087:0026}} || {{Y|Untested}}<br />
|-<br />
| Audio || {{ic|8086:A0C8}} || {{Yes}}<br />
|-<br />
| Wireless || {{ic|8086:A0F0}} || {{Yes}}<br />
|-<br />
| Ethernet || {{ic|8086:15FC}} || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || {{ic|06CB:00F9}} || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports the UEFI BIOS, NVMe, and fingerprint reader (via the LVFS testing remote) out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=711544Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-19T14:08:41Z<p>Aorth: Fix syntax on hardware IDs</p>
<hr />
<div>[[Category:Lenovo]]<br />
<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || {{ic|06CB:CE68}} || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || {{ic|8086:9A49}} || {{Yes}}<br />
|-<br />
| Webcam || {{ic|13D3:5439}} || {{Yes}}<br />
|-<br />
| Bluetooth || {{ic|8087:0026}} || {{Y|Untested}}<br />
|-<br />
| Audio || {{ic|8086:A0C8}} || {{Yes}}<br />
|-<br />
| Wireless || {{ic|8086:A0F0}} || {{Yes}}<br />
|-<br />
| Ethernet || {{ic|8086:15FC}} || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || {{ic|06CB:00F9}} || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports the UEFI BIOS and the NVMe device out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=711543Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-19T14:08:09Z<p>Aorth: Use monospace for hardware IDs</p>
<hr />
<div>[[Category:Lenovo]]<br />
<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || {{ic|06CB:CE68}} || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || {{ic|8086:9A49}} || {{Yes}}<br />
|-<br />
| Webcam || {{ic|13D3:5439}} || {{Yes}}<br />
|-<br />
| Bluetooth || {{ic|8087:0026}} || {{Y|Untested}}<br />
|-<br />
| Audio || {{id|8086:A0C8}} || {{Yes}}<br />
|-<br />
| Wireless || {{id|8086:A0F0}} || {{Yes}}<br />
|-<br />
| Ethernet || {{ic|8086:15FC}} || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || {{ic|06CB:00F9}} || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports the UEFI BIOS and the NVMe device out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=711542Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-19T14:04:35Z<p>Aorth: Adjust intro</p>
<hr />
<div>[[Category:Lenovo]]<br />
<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || 06CB:CE68 || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || 8086:9a49 || {{Yes}}<br />
|-<br />
| Webcam || 13d3:5439 || {{Yes}}<br />
|-<br />
| Bluetooth || 8087:0026 || {{Y|Untested}}<br />
|-<br />
| Audio || 8086:a0c8 || {{Yes}}<br />
|-<br />
| Wireless || 8086:a0f0 || {{Yes}}<br />
|-<br />
| Ethernet || 8086:15fc || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || 06cb:00f9 || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports the UEFI BIOS and the NVMe device out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_T14/T14s_(Intel)_Gen_2&diff=711541Lenovo ThinkPad T14/T14s (Intel) Gen 22022-01-19T14:04:00Z<p>Aorth: Create page</p>
<hr />
<div>[[Category:Lenovo]]<br />
<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| Touchpad || 06CB:CE68 || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| GPU (Intel) || 8086:9a49 || {{Yes}}<br />
|-<br />
| Webcam || 13d3:5439 || {{Yes}}<br />
|-<br />
| Bluetooth || 8087:0026 || {{Y|Untested}}<br />
|-<br />
| Audio || 8086:a0c8 || {{Yes}}<br />
|-<br />
| Wireless || 8086:a0f0 || {{Yes}}<br />
|-<br />
| Ethernet || 8086:15fc || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Y|Untested}}<br />
|-<br />
| Fingerprint reader || 06cb:00f9 || {{No}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad T14/T14s (Intel) Gen 1}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 9)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad T14/T14s (Intel) Gen 2 was introduced in 2020. It features a 14" screen, 11th-gen Intel Core processors, and integrated Intel Iris Xe graphics. Everything seems to work pretty much out the box with kernel >=5.16.0. To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad T14s Gen 2i}}<br />
<br />
For a general overview of laptop-related articles and recommendations, see [[Laptop]].<br />
<br />
== Firmware ==<br />
<br />
=== fwupd ===<br />
<br />
[[fwupd]] supports the UEFI BIOS and the NVMe device out of the box.<br />
<br />
== Intel Turbo Boost ==<br />
<br />
Check that Intel® Turbo Boost Technology 2.0 is enabled using <br />
<br />
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo<br />
<br />
An output of 1 means it is not enabled, so you will have to reset your BIOS to defaults. After doing that, running the command again should print 0.<br />
You should be able to see your CPU boosting way higher.<br />
<br />
== Suspend ==<br />
<br />
The BIOS has two options for suspend: ''Windows and Linux'' (aka S0ix or "modern standby") and ''Linux S3''. Both S0ix and S3 modes work on this system, but there is [https://forums.lenovo.com/t5/Fedora/Touchpad-become-lag-and-Jumping-after-S3-suspend/m-p/5081818 a bug that causes the trackpad to become laggy after resuming from S3 suspend].<br />
<br />
== Sound ==<br />
<br />
This laptop requires firmware in order for the sound card to work. Installing {{Pkg|sof-firmware}} seems to be enough to get audio working. See [[Advanced Linux Sound Architecture#ALSA firmware]].<br />
<br />
== See also ==<br />
<br />
=== T14 links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14_Gen_2_Intel/ThinkPad_T14_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_p14s_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14_gen2_t15_gen2_p14s_gen2_p15s_gen2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202104-28912<br />
<br />
=== T14s links ===<br />
<br />
* [https://psref.lenovo.com/syspool/Sys/PDF/ThinkPad/ThinkPad_T14s_Gen_2_Intel/ThinkPad_T14s_Gen_2_Intel_Spec.pdf Product Specifications Reference (PSREF)]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen2_x13_gen2_hmm_en.pdf Hardware maintenance manual]<br />
* [https://download.lenovo.com/pccbbs/mobiles_pdf/t14s_gen_2_x13_gen_2_ug_en.pdf User guide]<br />
* https://ubuntu.com/certified/202103-28856</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon_(Gen_6)&diff=693754Lenovo ThinkPad X1 Carbon (Gen 6)2021-09-01T11:19:59Z<p>Aorth: Add note about thermald fix with kernel 5.12</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon (Gen 6)]]<br />
{{Laptop style|Hardware table needs IDs and sections needs some cleanup}}<br />
<br />
{| class="wikitable" style="float: right;"<br />
|-<br />
! Hardware !! PCI/USB ID !! Working?<br />
|-<br />
| GPU || || {{Yes}}<br />
|-<br />
| Wireless || || {{Yes}}<br />
|-<br />
| Ethernet || || {{Yes}}<br />
|-<br />
| Mobile broadband || || {{Yes}}<br />
|-<br />
| Audio || || {{Yes}}<br />
|-<br />
| Touchpad || || {{Yes}}<br />
|-<br />
| TrackPoint || || {{Yes}}<br />
|-<br />
| Webcam || || {{Yes}}<br />
|-<br />
| Fingerprint Reader || || {{Yes}}<br />
|-<br />
| Bluetooth || || {{Yes}}<br />
|-<br />
| NFC || || {{No}}<br />
|-<br />
| microSD card reader || || {{Yes}}<br />
|-<br />
| Thunderbolt || || {{Yes}}<br />
|}<br />
<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 2)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 3)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 4)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 5)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 7)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 8)}}<br />
{{Related|Lenovo ThinkPad X1 Yoga (Gen 3)}}<br />
{{Related articles end}}<br />
<br />
The Lenovo ThinkPad X1 Carbon, 6th generation is an ultrabook introduced in early 2018. It comes in several variants({{ic|20KH*}} and {{ic|20KG*}}) and features a 14" screen, 8th-gen Intel Core processors and integrated [[Intel graphics|Intel UHD 620 graphics]].<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{hc|# dmidecode -s system-version|ThinkPad X1 Carbon 6th}}<br />
<br />
== BIOS ==<br />
<br />
The most convenient way to install Arch Linux is by disabling "Secure Boot" {{ic|Security -> Secure Boot - Set to "Disabled"}}. However it is possible to self-sign your kernel and boot with it enabled. For further information, have a look at the [[Secure Boot]] article.<br />
<br />
In case your {{ic|efivars}} are not properly set it is most likely due to you not being booted into [[UEFI]]. Should the problem persist be sure to consult the [[UEFI#UEFI variables]] section.<br />
<br />
=== Updates ===<br />
<br />
{{Note|In the BIOS setup menu under {{ic|Security -> UEFI BIOS Update Option}}, both {{ic|Flash BIOS Updating by End-Users}} and {{ic|Windows UEFI Firmware Update}} [https://github.com/fwupd/fwupd/issues/856#issuecomment-440967709 must be enabled] at the time of an update.}}<br />
<br />
==== Automatic (Linux Vendor Firmware Service) ====<br />
<br />
[https://blogs.gnome.org/hughsie/2018/08/06/please-welcome-lenovo-to-the-lvfs/ In August of 2018 Lenovo has joined] the [https://fwupd.org/ Linux Vendor Firmware Service(LVFS)] project, which enables firmware updates from within the OS.<br />
BIOS updates (and other firmware such as the Thunderbolt controller) can be queried for and installed through [[fwupd]].<br />
<br />
==== Manual (fwupdmgr) ====<br />
<br />
Lenovo provides a cabinet file that can be directly installed with fwupdmgr.<br />
Take the most recent {{ic|.cab}} file from the [https://pcsupport.lenovo.com/fr/en/products/laptops-and-netbooks/thinkpad-x-series-laptops/thinkpad-x1-carbon-6th-gen-type-20kh-20kg/downloads Lenovo ThinkPad X1 Carbon (Gen 6) driver website].<br />
<br />
#Make sure the AC adapter is firmly connected to the target computer.<br />
#Launch Terminal.<br />
#Move to the directory where the cabinet file was placed.<br />
#Run {{ic|fwupdmgr install xxxxxxxx.cab}} to schedule firmware update.<br />
#Restart the system.<br />
#The computer will be restarted and the UEFI BIOS will be updated.<br />
<br />
==== Manual (El Torito) ====<br />
<br />
Download the [https://pcsupport.lenovo.com/fr/en/products/LAPTOPS-AND-NETBOOKS/THINKPAD-X-SERIES-LAPTOPS/THINKPAD-X1-CARBON-6TH-GEN-TYPE-20KH-20KG/downloads/DS502281 latest BIOS update ISO]. Obtain {{aur|geteltorito}} and run {{ic|geteltorito.pl -o bios-update.img n23ur12w.iso}} on the downloaded ISO file to create a valid [[wikipedia:El_Torito_(CD-ROM_standard)|El Torito]] image file, then flash this file on a USB drive via {{ic|dd}} like you would flash [[USB_flash_installation_media|Arch installation media]]. For further information see [[Flashing_BIOS_from_Linux#Bootable_optical_disk_emulation|flashing BIOS from Linux]].<br />
<br />
The ThinkPad X1 Carbon supports setting a custom splash image at the earliest boot stage (instead of the red "Lenovo" logo), more information can be found in the {{ic|README.TXT}} located in the {{ic|FLASH}} folder of the update image. This only needs to be done once, as subsequent UEFI upgrades will ask whether you wish to keep your custom logo.<br />
<br />
Once the USB drive is flashed, the logo file can be placed in to the root directory of the flash drive.<br />
<br />
== Mobile broadband Fibocom L850-GL ==<br />
<br />
[https://github.com/abrasive/xmm7360 MBIM-Switch]<br />
<br />
[https://github.com/juhovh/xmm7360_usb kernel-module]<br />
<br />
[https://forums.lenovo.com/t5/Other-Linux-Discussions/WWAN-Fibocom-L850-GL-and-Linux-support/td-p/4318903 Discussion]<br />
<br />
== Fingerprint reader ==<br />
<br />
The [https://aur.archlinux.org/packages/python-validity-git/ python-validity] driver available via AUR allows to use the fingerprint reader as usual using fprintd.<br />
<br />
== Bluetooth ==<br />
<br />
See [https://200ok.ch/posts/2018-12-17_making_bluetooth_work_on_lenovo_x1_carbon_6th_gen_with_linux.html this blog post] for improvements to reliability.<br />
<br />
== IR Camera ==<br />
<br />
See [[Howdy]] for logging in with the IR camera. The {{ic|frame_width}} and {{ic|frame_height}} must be set to {{ic|400}} for the IR emitters to turn on.<br />
<br />
== NFC ==<br />
<br />
Connected via I2C, support was discussed in the [https://github.com/nfc-tools/libnfc/issues/455 libnfc project].<br />
<br />
== Battery Stats and Charge Limit ==<br />
<br />
[[Install]] the {{Pkg|tlp}} package and show battery stats from command line:<br />
<br />
# tlp-stat -b<br />
<br />
{{Note|{{ic|cycle_count}} will show {{ic|unsupported}} for a brand new battery until it has completed at least 1 full discharge/charge cycle.}}<br />
<br />
To prolong battery lifetime, you can limit battery charging to a maximum of 80% and start charging only if SoC (state of charge) is below 79%:<br />
<br />
# tpacpi-bat -s ST 1 79 # Start charging if battery below 79%<br />
# tpacpi-bat -s SP 1 80 # Stop charging if battery above 80%<br />
# tpacpi-bat -s IC 1 0 # Disable charging entirely<br />
<br />
For making the changes permanent, you can edit {{ic|/etc/tlp.conf}}. Please refer to the [[TLP]] article for more information and GUI tools.<br />
<br />
== Suspend issues ==<br />
<br />
Since BIOS version 1.30, the X1 Carbon supports S3 mode when enabled in the BIOS menu (choose "Linux" sleep mode instead of the default "Windows 10"). See [[#Automatic (Linux Vendor Firmware Service)]] for instructions to update and verify your BIOS version.<br />
<br />
=== Enabling S3 ===<br />
<br />
To enable S3 support, make sure you have at least BIOS version 1.30 installed. Then, go into the BIOS configuration, and {{ic|Config -> Power -> Sleep State - Set to "Linux"}}. This should make S3 available. To verify, after making the changes in the BIOS configuration, boot into Linux, and run:<br />
<br />
# dmesg | grep -i "acpi: (supports"<br />
<br />
to make sure that S3 is now available.<br />
<br />
=== Verifying S3 ===<br />
<br />
To check whether S3 is recognized and usable by Linux, run:<br />
<br />
# dmesg | grep -i "acpi: (supports"<br />
<br />
and check for {{ic|S3}} in the list.<br />
<br />
=== S3 Suspend Bug with Bluetooth Devices ===<br />
<br />
Occasionally your Thinkpad will wake up immediately or a few seconds after suspending with certain [[bluetooth]] devices added. To prevent this, remove the devices or disable [[bluetooth]] before suspending.<br />
<br />
=== Disabling the memory card reader ===<br />
<br />
You might also need to disable the Realtek memory card reader (which appears to use a constant 2-3 W) either via the BIOS or via<br />
<br />
# tee /sys/bus/usb/drivers/usb/unbind < <(printf 2-3)<br />
<br />
=== BIOS configurations ===<br />
<br />
* {{ic|Config -> Thunderbolt BIOS Assist Mode - Set to "Enabled"}}. When disabled, on Linux, power usage appears to be significantly higher because of a substantial number of CPU wakeups during s2idle.<br />
<br />
=== Failed to start Suspend ===<br />
<br />
'''Symptom:''' The machine starts entering suspend but comes back online immediately when phone charges through USB-C.<br />
<br />
{{Note|Just a plain USB-C cable - without any attached external device - can cause that, too.}}<br />
<br />
{{hc|# journalctl -p err -u systemd-suspend|Failed to suspend system. System resumed again: Device or resource busy}}<br />
<br />
{{hc|# dmesg -Tl err|<br />
[Mon Nov 11 20:18:03 2019] PM: pci_pm_suspend(): hcd_pci_suspend+0x0/0x30 returns -16<br />
[Mon Nov 11 20:18:03 2019] PM: dpm_run_callback(): pci_pm_suspend+0x0/0x130 returns -16<br />
[Mon Nov 11 20:18:03 2019] PM: Device 0000:00:14.0 failed to suspend async: error -16<br />
[Mon Nov 11 20:18:04 2019] PM: Some devices failed to suspend, or early wake event detected <br />
}}<br />
<br />
'''Solution:''' Block USB devices from waking up the computer.<br />
<br />
Check that {{ic|grep XHC /proc/acpi/wakeup}} shows {{ic|enabled}}. If yes, disable XHC wakeup with:<br />
<br />
# tee /proc/acpi/wakeup <<< XHC<br />
<br />
Now, test your computer. If your problem is solved then you have to persist the change as it would get lost on reboot.<br />
<br />
'''Persistent Solution'''<br />
<br />
There is no way to persist the config through a configuration file. So create the following systemd unit file and enable the service.<br />
<br />
[Unit]<br />
Description=Fixes failing suspend by disabling wakeup through USB<br />
<br />
[Service]<br />
ExecStart=/bin/bash -c 'grep --silent '^XHC.*disabled' /proc/acpi/wakeup || echo XHC > /proc/acpi/wakeup'<br />
Type=oneshot<br />
RemainAfterExit=yes<br />
<br />
[Install]<br />
WantedBy=multi-user.target<br />
<br />
== Power management/Throttling issues ==<br />
<br />
Due to wrong configured power management registers the CPU may consume a lot less power than under windows and the thermal throttling occurs at 80°C (97°C when using Windows, see [https://www.reddit.com/r/thinkpad/comments/870u0a/t480s_linux_throttling_bug/ T480s throttling bug]).<br />
<br />
There is a [https://forums.lenovo.com/t5/Linux-Discussion/T480s-low-cTDP-and-trip-temperature-in-Linux/td-p/4028489 post in the official Lenovo forum] to inform Lenovo about this issue.<br />
<br />
=== Throttling fix in {{Pkg|thermald}} ===<br />
<br />
A fix has reportedly been applied in {{Pkg|thermald}} 2.4.3 according to [https://forums.lenovo.com/t5/Other-Linux-Discussions/X1C6-T480s-low-cTDP-and-trip-temperature-in-Linux/m-p/4028489?page=47#5273704 this long running discussion]. The aforementioned thread also contains links to the patch which was developed by Lenovo.<br />
<br />
As of {{Pkg|thermald}} 2.4.3 and Linux 5.12 it [https://forums.lenovo.com/t5/Other-Linux-Discussions/X1C6-T480s-low-cTDP-and-trip-temperature-in-Linux/m-p/4028489?page=49#5319619 appears] to be enough to just use thermald with no further workarounds.<br />
<br />
=== Alternative workarounds ===<br />
<br />
Alternatively, an easy package has been written to address the problem until Lenovo completes the [https://www.notebookcheck.net/Lenovo-admits-ThinkPad-CPU-throttling-problem-when-running-Linux-fix-in-development.435549.0.html OS agnostic fix] for the X1C6.<br />
<br />
Install {{Pkg|throttled}}, then run:<br />
<br />
# systemctl enable --now lenovo_fix.service<br />
<br />
The script also supports more advance thermal/performance features including CPU undervolting. See the [https://github.com/erpalma/throttled repository] {{ic|README.md}} for details.<br />
<br />
{{Note|If you installed {{Pkg|thermald}}, it may conflict with the throttling fix in this package. Consider disabling thermald or otherwise work around this.}}<br />
<br />
== Audio crackling ==<br />
<br />
When charging you may hear crackling noise while listening to audio. [https://www.reddit.com/r/thinkpad/comments/8j8208/audio_crackling_through_both_headphone_jack_and/ The work around] for this issue is to disable one of the PINs:<br />
<br />
# hda-verb /dev/snd/hwC0D0 0x1d SET_PIN_WIDGET_CONTROL 0x0<br />
<br />
There is also a kernel patch for this issue, which can be found [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1805079 here].<br />
<br />
== Microphone distorted due to automatic adjustment ==<br />
<br />
If your microphone volume creeps up automatically and causes the sound to be distorted, you can fix it by disabling mic boost.<br />
See [[PulseAudio/Troubleshooting#Microphone distorted due to automatic adjustment|Pulse Audio]] for details.<br />
<br />
== Built-in speakers low volume workaround ==<br />
<br />
If your ThinkPad X1 Carbon (Gen 6) built-in speakers are limited to a maximum of about 20% volume even though the volume is set at 100%, try adding the following parameter to the {{ic|snd_hda_intel}} module, which can be set through a file in {{ic|/etc/modprobe.d/}}, e.g.: <br />
<br />
{{hc|/etc/modprobe.d/alsa-base.conf|2=<br />
options snd-hda-intel model=nofixup<br />
}}<br />
<br />
{{Note|This stops the LEDs on the mute and mic-mute buttons from working.}}<br />
<br />
== Wireless WAN / LTE ==<br />
<br />
ThinkPad X1 Carbon (Gen 6) is exclusively shipped with a Fibocom L850-GL LTE modem, which is currently not supported out of the box under Linux.<br />
<br />
It is normally impossible to swap the LTE modem for a supported one due to BIOS-level restrictions ("whitelists" of allowed M.2 expansion cards) implemented in all modern Lenovo laptops. However, a method has been found to configure any Sierra Wireless EM73xx/EM74xx modem to "evade" the whitelist checks, so these modems can be used normally.<br />
<br />
Take a look at [[ThinkPad mobile Internet#Getting around BIOS-level whitelist restrictions|ThinkPad mobile internet: Getting around BIOS-level whitelist restrictions]] for instructions.<br />
<br />
See also the work done in [https://github.com/abrasive/xmm7360 github: Tools for the Fibocom L850-GL / Intel XMM7360 LTE modem], [https://github.com/juhovh/xmm7360_usb github: Kernel module for Fibocom L850-GL / Intel XMM7360 LTE modem] and [https://forums.lenovo.com/t5/Other-Linux-Discussions/WWAN-Fibocom-L850-GL-and-Linux-support/td-p/4318903 Lenovo Forums: WWAN Fibocom L850-GL and Linux support].<br />
<br />
=== WWAN/LTE GUI ===<br />
<br />
Install [[NetworkManager]] and {{Pkg|network-manager-applet}} to make your life easier founding the correct APN for your SIM card.<br />
<br />
== Configuration ==<br />
<br />
=== Keyboard Fn Shortcuts ===<br />
<br />
* Fn+4 sends XF86Sleep (puts computer to sleep by default)<br />
* Fn+S sends Alt_L+Sys_Req<br />
* Fn+P sends Pause<br />
* Fn+B sends Control_L+Break<br />
* Fn+K sends Scroll_Lock<br />
* Fn+Space toggles the keyboard backlight<br />
* Fn by itself sends XF86WakeUp (wakes computer from sleep by default)<br />
<br />
=== Special buttons ===<br />
<br />
Some special buttons are not supported by X server due to keycode number limit.<br />
<br />
{| class="wikitable" style="text-align:center"<br />
|-<br />
! Key combination !! Scancode !! Keycode !! Note<br />
|-<br />
| {{ic|Fn+F11}} || {{ic|0x49}} || {{ic|374}} {{ic|KEY_KEYBOARD}} || Not recognized in [[Wayland]]<br />
|-<br />
| {{ic|Fn+F12}} || {{ic|0x45}} || {{ic|364}} {{ic|KEY_FAVORITES}} || Recognized correctly on [[Wayland]]<br />
|}<br />
<br />
You can remap unsupported keys so that they can be detected and mapped in X using [[Map scancodes to keycodes|udev hwdb]]:<br />
<br />
Note that {{ic|prog1}} and {{ic|prog2}} map to {{ic|KEY_PROG1}} and {{ic|KEY_PROG2}} in {{ic|/usr/include/linux/input-event-codes.h}}. You can use any key code with a defined value less than 255. The keycode hwdb expects is the lowercased text following {{ic|KEY_}} in the above input event codes header file. eg: {{ic|KEY_COFFEE}} would be {{ic|coffee}}.<br />
<br />
{{hc|/etc/udev/hwdb.d/90-thinkpad-keyboard.hwdb|<nowiki><br />
evdev:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*<br />
KEYBOARD_KEY_49=prog1<br />
KEYBOARD_KEY_45=prog2<br />
</nowiki>}}<br />
<br />
To make the changes take effect:<br />
# udevadm hwdb --update<br />
# udevadm trigger --sysname-match="event*"<br />
<br />
=== Disabling red LED in Thinkpad logo ===<br />
<br />
To disable the red LED in the ThinkPad logo on the cover:<br />
<br />
1. Enable writing to the embedded controller registers by adding the kernel parameter {{ic|1=ec_sys.write_support=1}}. <br />
If you use UEFI boot, you can add this parameter in {{ic|/boot/efi/loader/entries/arch.conf}} under "options".<br />
<br />
2. Then, you can disable directly the LED with this command: <br />
<br />
# dd of=/sys/kernel/debug/ec/ec0/io bs=1 seek=12 count=1 conv=notrunc < <(printf '\x0a') 2> /dev/null<br />
<br />
'''To disable the LED at startup, you can create a systemd service:''' <br />
<br />
1. Create a sh script (/root/disable_led.sh for instance) and put this : <br />
<br />
{{hc|#!/bin/bash|2=dd of=/sys/kernel/debug/ec/ec0/io bs=1 seek=12 count=1 conv=notrunc < <(printf '\x0a') 2> /dev/null}}<br />
<br />
2. Create a new service unit file in {{ic|/etc/systemd/system}} called "led.service", and insert the following: <br />
<br />
Description=Disabling thinkpad led<br />
<br />
[Service]<br />
ExecStart=/root/disable_led.sh<br />
<br />
[Install]<br />
WantedBy=multi-user.target<br />
<br />
3. Start and enable this service:<br />
<br />
# systemctl start led.service<br />
# systemctl enable led.service<br />
<br />
=== HDR Display Color Calibration ===<br />
<br />
For models with the 1440p HDR display, the default color profile can be corrected under Gnome using an ICC calibration provided by [https://www.notebookcheck.net/Lenovo-ThinkPad-X1-Carbon-2018-WQHD-HDR-i7-Laptop-Review.284682.0.html notebookcheck.net's review].<br />
<br />
$ wget <nowiki>https://www.notebookcheck.net/uploads/tx_nbc2/B140QAN02_0.icm</nowiki><br />
$ colormgr import-profile B140QAN02_0.icm<br />
<br />
This will import the ICC profile, and next you will need to activate it for your display. Find your display's object path:<br />
<br />
$ colormgr get-devices | sed -rn 's/Object Path:\s*(.*eDP1.*)/\1/p'<br />
<br />
And your new color profile object path:<br />
<br />
$ colormgr get-profiles | grep -4 -i B140QAN02<br />
<br />
And finally activate the profile and set it as the default for this display:<br />
<br />
$ colormgr device-add-profile <device object id> <profile object id><br />
$ colormgr device-make-profile-default <device object id> <profile object id><br />
<br />
You can verify the profile is active by running {{ic|colormgr get-devices}}.<br />
<br />
== Intel Graphics UHD 620 issues ==<br />
<br />
* [[Intel graphics#Enable GuC / HuC firmware loading|Enable GuC/HuC firmware loading]] suggests to load GPU firmware with warning. However, on Wayland for Carbon X1 gen 6 it cause GPU hang problem. Issues can be reflected as: a) crashing GPU process of Chrome / Chromium / Electron apps and subsequent host freezing; b) crashing of Gnome / Wayland with possibility to reboot via second virtual terminal; c) just host freezing. In [[dmesg]] the following can be observed:<br />
<br />
kernel: [drm] GPU HANG: ecode 9:0:0x85dffffd, in chrome [18418], reason: hang on rcs0, action: reset<br />
kernel: [drm] GPU hangs can indicate a bug anywhere in the entire gfx stack, including userspace.<br />
kernel: [drm] Please file a _new_ bug report on bugs.freedesktop.org against DRI -> DRM/Intel<br />
kernel: [drm] drm/i915 developers can then reassign to the right component if it's not a kernel issue.<br />
kernel: [drm] The gpu crash dump is required to analyze gpu hangs, so please always attach it.<br />
kernel: [drm] GPU crash dump saved to /sys/class/drm/card0/error<br />
kernel: i915 0000:00:02.0: Resetting rcs0 for hang on rcs0<br />
<br />
Note that, first line changes depending on the source of crashing application, but the result is the same, so issue is with GPU / firmware. Basically do not enable GuC / HuC firmware loading, at least if on Wayland. There are a number of similar issues reported including [https://bugs.freedesktop.org/show_bug.cgi?id=108717 #108717].<br />
<br />
* The {{ic|modesetting}} driver causes [[Intel graphics#Tearing|tearing]] in some situations. You can install the {{ic|xf86-video-intel}} driver instead and enable the {{ic|"TearFree"}} option in your configuration file:<br />
{{hc|/etc/X11/xorg.conf.d/20-intel.conf|<br />
Section "Device"<br />
Identifier "Intel Graphics"<br />
Driver "intel"<br />
Option "TearFree" "true"<br />
EndSection}}<br />
<br />
=== GNOME Wayland not available ===<br />
<br />
If you have not added the i915 to the MODULES list in /etc/mkinitcpio.conf (e.g. following the full disk encryption requirements below), you may be unable to run Wayland on kernel 4.20 (the gnome on Wayland option might not be present on GDM). Adding i915 to the MODULES list in /etc/mkinitcpio.conf and regenerating the ramdisk solves this issue.<br />
<br />
== TrackPoint and Touchpad issues ==<br />
<br />
{{Note|Some models of the 6th generation X1 Carbon seem to have issues with the TrackPoint and Touchpad working at the same time.}}<br />
{{Note|The following parameter will only work for kernel versions ''after'' v4.14. Fore more information, see [[Lenovo ThinkPad X1 Carbon (Gen 5)#Trackpoint/Trackpad not working]].}}<br />
<br />
To get the TrackPoint and Touchpad to work at the same time, add {{ic|1=synaptics_intertouch=1}} to the {{ic|psmouse}} [[kernel module]] options, for example in the cmdline of the [[boot loader]]:<br />
[...] root=/dev/sda1 rw psmouse.synaptics_intertouch=1 [...]<br />
or by editing {{ic|/etc/modprobe.d/psmouse.conf}}:<br />
options psmouse synaptics_intertouch=1<br />
<br />
{{Note|When using [[TLP]] with default powersaving settings, there might be occasional hiccups such as dropouts of tap-to-click functionality for the Touchpad, as well as the TrackPoint not surviving suspends and needing to be re-initialized.}}<br />
<br />
Reconnecting a dead trackpad can be done via the following command:<br />
<br />
# tee /sys/bus/serio/devices/serio1/drvctl < <(printf none)<br />
# tee /sys/bus/serio/devices/serio1/drvctl < <(printf reconnect)<br />
<br />
A [https://gitlab.freedesktop.org/libinput/libinput/issues/46 bug] in the libinput library that caused dropouts of the tap-to-click functionality of the touchpad on the X1 Carbon 6th Gen has been fixed in libinput 1.11.2, which was released on [https://lists.freedesktop.org/archives/wayland-devel/2018-July/038782.html 3 July 2018].<br />
<br />
== Thunderbolt dock ==<br />
<br />
=== Plugable USB-C Mini Docking Station with 85W Power Delivery UD-CAM ===<br />
<br />
If you are using an external plugable [https://plugable.com/products/ud-cam/ UD-CAM] thunderbolt dock connected to the laptop through its USB-C thunderbolt port, you might experience random disconnections (external monitor, bluetooth and ethernet) with this kind of error in ''dmesg'' : <br />
{{bc|pcieport 0000:05:00.0: BAR 13: no space for [io size 0x3000]}} <br />
<br />
It should be noted that {{Pkg|bolt}} is not working with this [https://plugable.com/products/ud-cam/ UD-CAM] dock.<br />
<br />
To avoid random disconnection, proceed as followed by editing the bios and [[TLP]]<br />
<br />
==== Bios settings ====<br />
<br />
You should then look at your bios settings : <br />
* Wake by thunderbolt : enable <br />
* Security level : no security<br />
* Pre-boot ACL option : enable<br />
<br />
==== TLP blacklisting devices from USB autosuspend ====<br />
<br />
If you are using [[TLP]] you have to edit /etc/default/tlp and make sure that you exclude all dock devices from USB autosuspend as followed :<br />
{{bc|1=USB_BLACKLIST="0000:1111 2222:3333 4444:5555"|2==}}<br />
<br />
Then reboot and your dock should work correctly.<br />
<br />
=== Lenovo dock ===<br />
<br />
Some problems can be caused by outdated dock firmware. Updates are not supplied by LVFS, use "Firmware for Windows" from the dock support page.<br />
<br />
=== DisplayLink ===<br />
<br />
If you want to continue using the [[Intel graphics]] for your primary and HDMI displays, Name the intel config file with a numerical prefix that precedes the [[DisplayLink]] Driver configuration. For example, rather than naming it {{ic|/etc/X11/xorg.conf.d/20-intel.conf}} instead name it {{ic|/usr/share/X11/xorg.conf.d/19-intel.conf}}. This ensures that the driver is parsed by xserver before the modesetting driver, and is therefore utilized with intel integrated graphics by default. Placing it in the same folder as the [[DisplayLink]] drivers also ensures that it will be parsed first if a user session of [[Xorg]] is initiated (e.g.via {{ic|$ startx}}).<br />
<br />
== Full-disk encryption ==<br />
<br />
=== LUKS: Ramdisk module ===<br />
<br />
With LUKS for root, i915 needs to be loaded in ramdisk in order to access the password prompt.<br />
Add i915 to MODULES list in {{ic|/etc/mkinitcpio.conf}} and regenerate the ramdisk.<br />
<br />
=== OPAL: Hardware based full-disk encryption ===<br />
<br />
See [[Self-encrypting drives]] (Confirmed working)<br />
<br />
== Tools ==<br />
<br />
=== Diagnostics ===<br />
<br />
{{ic|s-tui}} ({{Pkg|s-tui}}): an aesthetically pleasing and useful curses-style interface that shows graphs of CPU frequency, utilization, temperature, and power consumption. It also has a built in stress tester.<br />
<br />
{{ic|intel_gpu_top}} ({{Pkg|intel-gpu-tools}}): gives you some top-like info for the integrated GPU. This can be quite useful in diagnosing GPU acceleration issues.<br />
<br />
{{ic|powertop}} ({{Pkg|powertop}}): provides detailed information about CPU power consumption and recommendations on how to improve it.<br />
<br />
{{ic|tlp-stat}} ({{Pkg|tlp}}): a much simpler alternative to remembering which {{ic|cat /sys/devices/system/*}} to run in many cases. It can give very detailed, structured information about components like the battery, processor, graphics card, etc.<br />
<br />
== nvme issues ==<br />
<br />
There is an [https://pcsupport.lenovo.com/us/en/products/laptops-and-netbooks/thinkpad-x-series-laptops/thinkpad-x1-carbon-6th-gen-type-20kh-20kg/solutions/HT508405 issue] with nvme installed in ThinkPad X1 Carbon (Gen 6) resulting in device failure. Be sure to update firmware or reach out to lenovo support for replacement.<br />
<br />
== References ==<br />
<br />
* [https://www.reddit.com/r/thinkpad/comments/870u0a/t480s_linux_throttling_bug/ T480s throttling bug], affects X1C6 as well<br />
* [https://forums.lenovo.com/t5/Linux-Discussion/T480s-low-cTDP-and-trip-temperature-in-Linux/td-p/4028489 Lenovo forums: T480s low cTDP and trip temperature in Linux]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=236367 Thread: TrackPoint/Touchpad issues, 20KG model]<br />
* [https://unix.stackexchange.com/a/431820 StackExchange: Success with enabling RMI4 config flags for Touchpad and TrackPoint]<br />
* [https://patchwork.kernel.org/patch/10324633/ Kernel patch - Input: elantech - add support for SMBus devices]<br />
* [https://patchwork.kernel.org/patch/10330857/ Kernel patch - Input: synaptics - add Lenovo 80 series ids to SMBus]<br />
* [[Kernel_mode_setting#Early_KMS_start|Early KMS start]]: Adding i915 to ramdisk<br />
<br />
== Additional resources ==<br />
<br />
* https://www.thinkwiki.org/wiki/ThinkWiki<br />
* [https://www.thinkwiki.org/wiki/Category:X1_Carbon_(6th_Gen) ThinkWiki X1 Carbon 6th Gen page]<br />
* Benjamin Tissoires, kernel maintainer of peripherals, has explained how input bugs get fixed in his talk [https://www.youtube.com/watch?v=Bl_0xYxcYd8 Tools to debug a broken input device] ([https://www.x.org/wiki/Events/XDC2015/Program/tissoires_input_debug_tools.html Slides]), especially interesting are slides 16 onward.<br />
* [https://gist.github.com/greigdp/bb70fbc331a0aaf447c2d38eacb85b8f Dell XPS 13 9370 quirks]: Some pointers on getting Watt usage down to ~2W, Intel video powersaving features might be interesting, see also the [[Intel graphics]] page for interesting power-saving options.<br />
* [[Dell XPS 13 (9360)]]: Shares some hardware with the X1C6<br />
* [https://01.org/blogs/rzhang/2015/best-practice-debug-linux-suspend/hibernate-issues Intel Blog: Best practice to debug Linux* suspend/hibernate issues], including the [https://github.com/01org/pm-graph pm-graph] tool to analyze power usage during suspend<br />
* [https://github.com/ejmg/an-idiots-guide-to-installing-arch-on-a-lenovo-carbon-x1-gen-6 A comprehensive example Arch install for the X1C6]</div>Aorthhttps://wiki.archlinux.org/index.php?title=BOINC&diff=602411BOINC2020-03-23T15:08:44Z<p>Aorth: Add note to BOINC XML preferences documentation</p>
<hr />
<div>[[Category:Volunteer computing]]<br />
[[de:BOINC]]<br />
[[fr:BOINC]]<br />
[[it:BOINC]]<br />
[[ja:BOINC]]<br />
[[sk:BOINC]]<br />
[[zh-hans:BOINC]]<br />
From the [http://boinc.berkeley.edu/ BOINC website]:<br />
:Use the idle time on your computer (Windows, Mac, or Linux) to cure diseases, study global warming, discover pulsars, and do many other types of scientific research. It's safe, secure, and easy.<br />
<br />
From [[Wikipedia:BOINC]]:<br />
:The Berkeley Open Infrastructure for Network Computing (BOINC) is a non-commercial middleware system for volunteer and grid computing. It was originally developed to support the SETI@home project before it became useful as a platform for other distributed applications in areas as diverse as mathematics, medicine, molecular biology, climatology, and astrophysics. The intent of BOINC is to make it possible for researchers to tap into the enormous processing power of personal computers around the world.<br />
<br />
== Installation ==<br />
<br />
[[Install]] either the {{Pkg|boinc}} or the {{Pkg|boinc-nox}} package. The latter omits [[Xorg]] dependencies, and is therefore suited for use on headless servers.<br />
<br />
Both packages install a [[Systemd#Using units|unit]] file named {{ic|boinc-client.service}}.<br />
<br />
{{Note|In {{Pkg|boinc}} 7.10.3-1, the unit was renamed from {{ic|boinc.service}} to {{ic|boinc-client.service}}.}}<br />
<br />
You will also need to add yourself to the {{ic|boinc}} group in order for the manager to connect:<br />
# usermod -a -G boinc $(whoami)<br />
<br />
To generate the necessary files referenced in the next section, make sure to [[start]] {{ic|boinc-client.service}}.<br />
<br />
== Using BOINC ==<br />
<br />
=== BOINC via the GUI ===<br />
<br />
By default, a password is created in {{ic|/var/lib/boinc/gui_rpc_auth.cfg}} for connecting to the daemon. To simplify connection of the GUI to the daemon, cd to your home directory, create a link to the file, and change permissions to allow read access to boinc group members.<br />
<br />
$ cd ~/<br />
$ ln -s /var/lib/boinc/gui_rpc_auth.cfg gui_rpc_auth.cfg<br />
# chmod 640 gui_rpc_auth.cfg<br />
<br />
If you prefer a different password, or none at all, you can edit {{ic|/var/lib/boinc/gui_rpc_auth.cfg}}. Then restart BOINC daemon.<br />
<br />
If you do not like the idea of having this file in your home directory, there is an alternative approach. BOINC Manager will also look for a readable gui_rpc_auth.cfg file in the current working directory. If you make the file readable by the '''boinc''' group and ensure that the manager is run with {{ic|/var/lib/boinc}} as the working directory, you should find that the client connects to the daemon automatically, as desired. This can usually be achieved via the menu editor in your desktop environment of choice.<br />
<br />
To start the GUI, use the ''boincmgr'' command<br />
$ boincmgr<br />
<br />
BOINC should now take you through the process of attaching to a project. NB, some projects will let you create an account remotely via the GUI while some may require you to first create an account via their website. You can attach to multiple projects if you have the resources (disk space, time, CPU power). Do this via menu option ''Tools / Attach to project''.<br />
<br />
If BOINC did not ask you to connect to a project, then make sure you are connected to the daemon. Go to menu option ''Advanced / Select computer'', choose your machine's name and enter the password. (To avoid this, make sure the above steps regarding gui_rpc_auth.cfg have been done.)<br />
<br />
==== Projects using GPU ====<br />
If you want to use your GPU, you may need the proprietary nvidia or amd drivers. For ATI/AMD Cards you may also need [[Catalyst]] driver for stock kernel which you can get from AUR.<br />
For newer AMD systems such as the Ryzen 5 2400G you can simply install {{AUR|opencl-amd}} on top of the open source [[AMDGPU]] to provide OpenCL capability for GPU work.<br />
For Nvidia, you also need the package {{Pkg|opencl-nvidia}} located in extra. To prevent computing errors on x86_64 you most likely need the ''OpenGL (Multilib)'' package listed in [[Xorg#Driver installation]].<br />
<br />
In addition, the boinc user should be in the video group:<br />
<br />
# gpasswd -a boinc video<br />
<br />
In order to suspend GPU computing when the computer is in use, the boinc user should have access to your X session so that mouse/keyboard input can be communicated to the client. This can be accomplished by installing the package {{Pkg|xorg-xhost}} (Extra) and executing the following command:<br />
<br />
$ xhost si:localuser:boinc<br />
<br />
You may want to [[Autostarting#On Xorg startup|autostart that on Xorg startup]].<br />
<br />
=== BOINC via the CLI ===<br />
<br />
Install {{pkg|boinc-nox}} to use BOINC on a headless system. Two command-line management tools are available: {{ic|boinccmd}} and {{ic|boinc}}. {{ic|boinccmd}} is recommended. To use {{ic|boinccmd}}, you must:<br />
<br />
# Start the BOINC service.<br />
# Provide {{ic|boinccmd}} with a password for communicating with the service's RPC API.<br />
<br />
To start the BOINC service, use the provided {{ic|boinc-client.service}} unit file. (For more information, see [[Systemd#Using units]].) The first time BOINC starts, it will generate a password and save it to {{ic|/var/lib/boinc/gui_rpc_auth.cfg}}. To provide {{ic|boinccmd}} with this password, consider one of the following:<br />
<br />
* Provide the password as a command-line flag, e.g. {{ic|boinccmd --passwd abc123 --get_host_info}}.<br />
* Ensure a file named {{ic|gui_rpc_auth.cfg}} is present in the current directory.<br />
<br />
That done, you can register with a project and attach BOINC to the project.<br />
<br />
To register with a project, you may be able to use the command-line client, or you may need to register with a separate website. To register with a project from the command-line, pick a project from [https://boinc.berkeley.edu/projects.php BOINC Project List], and execute a command like {{ic|boinccmd --passwd abc123 --create_account ${project_url} ${my_email} ${project_password} ${project_username} }}. Regardless of how you register, you must obtain a key for each project you'd like BOINC to attach to. To attach BOINC to a project, execute a command like {{ic|boinccmd --passwd abc123 --project_attach ${project_url} ${project_key} }}.<br />
<br />
By default, BOINC uses at most 60% of available CPU time. If you wish to let boinc do more work, edit the CPU-related options in its configuration file:<br />
<br />
{{hc|/var/lib/boinc/global_prefs.xml|<global_preferences><br />
<cpu_usage_limit>100.0</cpu_usage_limit><br />
...<br />
</global_preferences>}}<br />
<br />
You can see other available [https://boinc.berkeley.edu/wiki/PreferencesXml XML configuration options] in the BOINC project's documentation.<br />
<br />
== Log files ==<br />
<br />
NB, BOINC places log files in {{ic|/var/lib/boinc/}}<br />
/var/lib/boinc/stderrdae.txt<br />
/var/lib/boinc/stdoutdae.txt<br />
<br />
== Considerations when choosing a project ==<br />
<br />
Projects have different minimum hardware requirements (CPU, disk space), and different times to taken to run each work unit. If you do not finish a work unit before the deadline it will sent out to someone else, but it is better to look around to see what projects suit your machine and your uptime patterns to avoid this happening. <br />
<br />
Also, if it is important to you, check if the project makes the data and results publicly available.<br />
<br />
=== Running on Arch64 ===<br />
<br />
Some projects provide only 32bit applications which may require 32bit libraries to run work units or show graphics. You will find most of these libraries in the [multilib] repository.<br />
<br />
;To run WUs (e.g. Climateprediction) <br />
:{{Pkg|lib32-glibc}}, {{Pkg|lib32-glib2}}<br />
;To show graphics (e.g. Several projects of WCG, Climateprediction, Quake-Catcher Network)<br />
:{{Pkg|lib32-pango}}, {{Pkg|lib32-libxi}}, {{Pkg|lib32-mesa}}, {{Pkg|lib32-libjpeg6-turbo}}, {{Pkg|lib32-libxmu}}, {{Pkg|lib32-glu}} and {{Pkg|lib32-freeglut}}<br />
<br />
== Troubleshooting ==<br />
<br />
=== GPU missing ===<br />
<br />
If you get this error :<br />
{{bc|GPU Missing}}<br />
and the Work Unit does not start, you should [[Daemons|restart]] the {{ic|boinc-client.service}} daemon.<br />
<br />
This will happen if the BOINC daemon starts before the an X session is fully initialized.<br />
<br />
=== Laptop overheating and battery duration reduction ===<br />
<br />
If you run BIONC on a laptop with the ondemand governor (the default), it will keep the CPUs at their maximum frequencies (over)heating them and decreasing battery duration. The best way to fix this is to tell the ondemand to not rise the CPU frequencies for BOINC:<br />
{{bc|# echo 1 >/sys/devices/system/cpu/cpufreq/ondemand/ignore_nice_load}}<br />
<br />
To do this on boot, create the following tmpfiles.d config:<br />
{{hc|/etc/tmpfiles.d/ondemand-ignore-nice.conf|<br />
w /sys/devices/system/cpu/cpufreq/ondemand/ignore_nice_load - - - - 1}}<br />
<br />
== See also ==<br />
<br />
* [http://boinc.berkeley.edu/ BOINC homepage]<br />
* [http://boinc.berkeley.edu/projects.php List of BOINC projects]<br />
* [[Wikipedia:BOINC|Wikipedia entry]]</div>Aorthhttps://wiki.archlinux.org/index.php?title=Iwd&diff=541777Iwd2018-09-17T08:46:01Z<p>Aorth: Move youtube link to end of paragraph</p>
<hr />
<div>{{Lowercase title}}<br />
[[Category:Wireless networking]]<br />
[[Category:Network configuration]]<br />
[[ja:Iwd]]<br />
{{Related articles start}}<br />
{{Related|Network configuration}}<br />
{{Related|Wireless network configuration}}<br />
{{Related|WPA supplicant}}<br />
{{Related articles end}}<br />
[https://iwd.wiki.kernel.org/ IWD] (iNet wireless daemon) is a wireless daemon for Linux written by Intel that aims to replace [[WPA supplicant]]. The core goal of the project is to optimize resource utilization by not depending on any external libraries and instead utilizing features provided by the Linux Kernel to the maximum extent possible. [https://www.youtube.com/watch?v=F2Q86cphKDo]<br />
<br />
IWD can work in standalone mode or in combination with comprehensive network managers like [[ConnMan]] and [[NetworkManager]].<br />
<br />
== Installation ==<br />
<br />
[[Install]] the {{Pkg|iwd}} package.<br />
<br />
== Usage ==<br />
<br />
The {{Pkg|iwd}} package provides the client program {{ic|iwctl}}, the daemon {{ic|iwd}} and the Wi-Fi monitoring tool {{ic|iwmon}}.<br />
<br />
Once the iwd daemon is running ([[start/enable]] {{ic|iwd.service}}) you can control it using the {{ic|iwctl}} command.<br />
<br />
=== iwctl ===<br />
<br />
Running {{ic|iwctl}} gets you an interactive prompt. From now on commands that need to be run in the {{ic|iwctl}} prompt will be prefixed by {{ic|[iwd]#}}.<br />
<br />
{{Tip|In the {{ic|iwctl}} prompt you can auto-complete commands and device names by hitting {{ic|Tab}}.}}<br />
<br />
List available commands:<br />
<br />
[iwd]# help<br />
<br />
List all wifi devices:<br />
<br />
[iwd]# device list<br />
<br />
Scan for networks:<br />
<br />
[iwd]# device ''interface'' scan<br />
<br />
List networks:<br />
<br />
[iwd]# device ''interface'' get-networks<br />
<br />
Connect to a WPA2 protected network (will prompt you for the passphrase):<br />
<br />
[iwd]# device ''interface'' connect ''network_name''<br />
<br />
{{Note|<br />
* {{ic|iwd}} automatically stores network passphrases (as encrypted {{ic|PreSharedKey}}) in the {{ic|/var/lib/iwd}} directory and uses them to auto-connect in the future.<br />
* To connect to a network with spaces in the SSID, the network name should be double quoted when connecting.<br />
* IWD only supports PSK pass-phrases from 8 to 63 ASCII-encoded characters. The following error message will be ouputted if the requirements are not met: "PMK generation failed. Ensure Crypto Engine is properly configured"<br />
}}<br />
<br />
Displaying details of a WiFi device (like MAC address, state and connected network):<br />
<br />
[iwd]# device ''interface'' show<br />
<br />
List known networks:<br />
<br />
[iwd]# known-networks list<br />
<br />
Forget a known network:<br />
<br />
[iwd]# known-networks forget ''network_name''<br />
<br />
{{Tip|You can use all commands from the interactive session as command line arguments. For example: {{ic|iwctl device wlp3s0 show}}.}}<br />
<br />
== WPA Enterprise ==<br />
<br />
=== EAP-PWD ===<br />
<br />
For connecting to a EAP-PWD protected enterprice access point you need to create a file called: {{ic|''essid''.8021x}} in the folder {{ic|/var/lib/iwd}} with the following content:<br />
<br />
{{hc|/var/lib/iwd/''essid''.8021x|2=<br />
[Security]<br />
EAP-Method=PWD<br />
EAP-Identity=''your_enterprise_email''<br />
EAP-PWD-Password=''your_password''<br />
<br />
[Settings]<br />
Autoconnect=True<br />
}}<br />
<br />
If you do not want autoconnect to the AP you can set the option to False and connect manually to the access point via {{ic|iwctl}}. The same applies to the password, if you do not want to store it plaintext leave the option out of the file and just connect to the enterprise AP.<br />
<br />
=== TLS Based EAP Methods ===<br />
As of now, to connect to EAP-TLS, EAP-TTLS, and EAP-PEAP, the kernel has to be patched.<br />
Edit the PKGBUILD for the kernel and add the following sources<br />
{{hc|PKGBUILD|2=<br />
"iwd1.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=ab2a33c1c0b1b0a45c16746dd0101057c6d432ed"<br />
"iwd2.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=3a478ace6154e33009f9b01acbd4eaf7615fef0e"<br />
"iwd3.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=5faadff684460b7f4064f9f28db8915a56601147"<br />
"iwd4.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=3c7f3a6c70b47858a065b7a86313f390b083ee40" <br />
"iwd5.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=5362bbfdf2a8a5810d4237e4dbbf5da043e47fb6"<br />
"iwd6.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=5c93ce3acc010425eab01dc8e0ffb5529f3f85c1"<br />
"iwd7.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=ca4d545b92cf52ffe777cc7cfbaf64100dfa6e9c"<br />
"iwd8.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=f2ac228eaba9fe3f4fcf80b121eb92707afdd4de"<br />
}}<br />
And add the following line to the end of the kernel config:<br />
{{hc|config|2=<br />
CONFIG_PKCS8_PRIVATE_KEY_PARSER=y<br />
}}<br />
Then update the checksums of the PKGBUILD:<br />
<br />
$ updpkgsums<br />
<br />
and build the package.<br />
<br />
Example configuration files for these network types can be found in subdirectories here https://git.kernel.org/pub/scm/network/wireless/iwd.git/tree/autotests<br />
<br />
== Optional configuration ==<br />
<br />
{{Expansion|Mention what can be configured and how?}}<br />
<br />
File {{ic|/etc/iwd/main.conf}} can be used for main configuration.<br />
<br />
Directory {{ic|/var/lib/iwd}} can be used for network (SSID) configuration.<br />
<br />
=== Disable auto-connect for a particular network ===<br />
<br />
Create / edit file {{ic|/var/lib/iwd/''network''.''type''}}, where ''network'' is network SSID and ''type'' is network type i.e. one of "open", "wep", "psk", "8021x". Add the following section to it:<br />
<br />
{{hc|/var/lib/iwd/spaceship.psk (for example)|2=<nowiki><br />
[Settings]<br />
Autoconnect=false<br />
</nowiki>}}<br />
<br />
=== Deny console (local) user from modifying the settings ===<br />
<br />
By default {{ic|iwd}} D-Bus interface allows ''any'' console user to connect to {{ic|iwd}} daemon and modify the settings, even if that user is not a ''root'' user.<br />
<br />
If you do not want to allow console user to modify the settings but allow reading the status information, then create a D-Bus configuration file as follows.<br />
<br />
{{hc|/etc/dbus-1/system.d/iwd-strict.conf|2=<nowiki><br />
<!-- prevent local users from changing iwd settings, but allow<br />
reading status information. overrides some part of<br />
/usr/share/dbus-1/system.d/iwd-dbus.conf. --><br />
<br />
<!-- This configuration file specifies the required security policies<br />
for iNet Wireless Daemon to work. --><br />
<br />
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"<br />
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"><br />
<busconfig><br />
<br />
<policy at_console="true"><br />
<deny send_destination="net.connman.iwd"/><br />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.Properties" send_member="GetAll" /><br />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.Properties" send_member="Get" /><br />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.ObjectManager" send_member="GetManagedObjects" /><br />
<allow send_destination="net.connman.iwd" send_interface="net.connman.iwd.Device" send_member="RegisterSignalLevelAgent" /><br />
<allow send_destination="net.connman.iwd" send_interface="net.connman.iwd.Device" send_member="UnregisterSignalLevelAgent" /><br />
</policy><br />
<br />
</busconfig><br />
</nowiki>}}<br />
<br />
{{Tip|Remove ''<allow>'' lines above to deny reading the status information as well.}}<br />
<br />
== See also ==<br />
<br />
* [https://iwd.wiki.kernel.org/gettingstarted Getting Started with iwd]<br />
* [https://git.kernel.org/pub/scm/network/wireless/iwd.git/tree/autotests More examples for Enterprise WPA]</div>Aorthhttps://wiki.archlinux.org/index.php?title=Iwd&diff=541776Iwd2018-09-17T08:44:20Z<p>Aorth: Improve introduction paragraph</p>
<hr />
<div>{{Lowercase title}}<br />
[[Category:Wireless networking]]<br />
[[Category:Network configuration]]<br />
[[ja:Iwd]]<br />
{{Related articles start}}<br />
{{Related|Network configuration}}<br />
{{Related|Wireless network configuration}}<br />
{{Related|WPA supplicant}}<br />
{{Related articles end}}<br />
[https://iwd.wiki.kernel.org/ IWD] (iNet wireless daemon) is a wireless daemon for Linux written by Intel that aims to replace [[WPA supplicant]]. [https://www.youtube.com/watch?v=F2Q86cphKDo] The core goal of the project is to optimize resource utilization by not depending on any external libraries and instead utilizing features provided by the Linux Kernel to the maximum extent possible.<br />
<br />
IWD can work in standalone mode or in combination with comprehensive network managers like [[ConnMan]] and [[NetworkManager]].<br />
<br />
== Installation ==<br />
<br />
[[Install]] the {{Pkg|iwd}} package.<br />
<br />
== Usage ==<br />
<br />
The {{Pkg|iwd}} package provides the client program {{ic|iwctl}}, the daemon {{ic|iwd}} and the Wi-Fi monitoring tool {{ic|iwmon}}.<br />
<br />
Once the iwd daemon is running ([[start/enable]] {{ic|iwd.service}}) you can control it using the {{ic|iwctl}} command.<br />
<br />
=== iwctl ===<br />
<br />
Running {{ic|iwctl}} gets you an interactive prompt. From now on commands that need to be run in the {{ic|iwctl}} prompt will be prefixed by {{ic|[iwd]#}}.<br />
<br />
{{Tip|In the {{ic|iwctl}} prompt you can auto-complete commands and device names by hitting {{ic|Tab}}.}}<br />
<br />
List available commands:<br />
<br />
[iwd]# help<br />
<br />
List all wifi devices:<br />
<br />
[iwd]# device list<br />
<br />
Scan for networks:<br />
<br />
[iwd]# device ''interface'' scan<br />
<br />
List networks:<br />
<br />
[iwd]# device ''interface'' get-networks<br />
<br />
Connect to a WPA2 protected network (will prompt you for the passphrase):<br />
<br />
[iwd]# device ''interface'' connect ''network_name''<br />
<br />
{{Note|<br />
* {{ic|iwd}} automatically stores network passphrases (as encrypted {{ic|PreSharedKey}}) in the {{ic|/var/lib/iwd}} directory and uses them to auto-connect in the future.<br />
* To connect to a network with spaces in the SSID, the network name should be double quoted when connecting.<br />
* IWD only supports PSK pass-phrases from 8 to 63 ASCII-encoded characters. The following error message will be ouputted if the requirements are not met: "PMK generation failed. Ensure Crypto Engine is properly configured"<br />
}}<br />
<br />
Displaying details of a WiFi device (like MAC address, state and connected network):<br />
<br />
[iwd]# device ''interface'' show<br />
<br />
List known networks:<br />
<br />
[iwd]# known-networks list<br />
<br />
Forget a known network:<br />
<br />
[iwd]# known-networks forget ''network_name''<br />
<br />
{{Tip|You can use all commands from the interactive session as command line arguments. For example: {{ic|iwctl device wlp3s0 show}}.}}<br />
<br />
== WPA Enterprise ==<br />
<br />
=== EAP-PWD ===<br />
<br />
For connecting to a EAP-PWD protected enterprice access point you need to create a file called: {{ic|''essid''.8021x}} in the folder {{ic|/var/lib/iwd}} with the following content:<br />
<br />
{{hc|/var/lib/iwd/''essid''.8021x|2=<br />
[Security]<br />
EAP-Method=PWD<br />
EAP-Identity=''your_enterprise_email''<br />
EAP-PWD-Password=''your_password''<br />
<br />
[Settings]<br />
Autoconnect=True<br />
}}<br />
<br />
If you do not want autoconnect to the AP you can set the option to False and connect manually to the access point via {{ic|iwctl}}. The same applies to the password, if you do not want to store it plaintext leave the option out of the file and just connect to the enterprise AP.<br />
<br />
=== TLS Based EAP Methods ===<br />
As of now, to connect to EAP-TLS, EAP-TTLS, and EAP-PEAP, the kernel has to be patched.<br />
Edit the PKGBUILD for the kernel and add the following sources<br />
{{hc|PKGBUILD|2=<br />
"iwd1.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=ab2a33c1c0b1b0a45c16746dd0101057c6d432ed"<br />
"iwd2.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=3a478ace6154e33009f9b01acbd4eaf7615fef0e"<br />
"iwd3.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=5faadff684460b7f4064f9f28db8915a56601147"<br />
"iwd4.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=3c7f3a6c70b47858a065b7a86313f390b083ee40" <br />
"iwd5.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=5362bbfdf2a8a5810d4237e4dbbf5da043e47fb6"<br />
"iwd6.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=5c93ce3acc010425eab01dc8e0ffb5529f3f85c1"<br />
"iwd7.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=ca4d545b92cf52ffe777cc7cfbaf64100dfa6e9c"<br />
"iwd8.patch::https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/patch/?id=f2ac228eaba9fe3f4fcf80b121eb92707afdd4de"<br />
}}<br />
And add the following line to the end of the kernel config:<br />
{{hc|config|2=<br />
CONFIG_PKCS8_PRIVATE_KEY_PARSER=y<br />
}}<br />
Then update the checksums of the PKGBUILD:<br />
<br />
$ updpkgsums<br />
<br />
and build the package.<br />
<br />
Example configuration files for these network types can be found in subdirectories here https://git.kernel.org/pub/scm/network/wireless/iwd.git/tree/autotests<br />
<br />
== Optional configuration ==<br />
<br />
{{Expansion|Mention what can be configured and how?}}<br />
<br />
File {{ic|/etc/iwd/main.conf}} can be used for main configuration.<br />
<br />
Directory {{ic|/var/lib/iwd}} can be used for network (SSID) configuration.<br />
<br />
=== Disable auto-connect for a particular network ===<br />
<br />
Create / edit file {{ic|/var/lib/iwd/''network''.''type''}}, where ''network'' is network SSID and ''type'' is network type i.e. one of "open", "wep", "psk", "8021x". Add the following section to it:<br />
<br />
{{hc|/var/lib/iwd/spaceship.psk (for example)|2=<nowiki><br />
[Settings]<br />
Autoconnect=false<br />
</nowiki>}}<br />
<br />
=== Deny console (local) user from modifying the settings ===<br />
<br />
By default {{ic|iwd}} D-Bus interface allows ''any'' console user to connect to {{ic|iwd}} daemon and modify the settings, even if that user is not a ''root'' user.<br />
<br />
If you do not want to allow console user to modify the settings but allow reading the status information, then create a D-Bus configuration file as follows.<br />
<br />
{{hc|/etc/dbus-1/system.d/iwd-strict.conf|2=<nowiki><br />
<!-- prevent local users from changing iwd settings, but allow<br />
reading status information. overrides some part of<br />
/usr/share/dbus-1/system.d/iwd-dbus.conf. --><br />
<br />
<!-- This configuration file specifies the required security policies<br />
for iNet Wireless Daemon to work. --><br />
<br />
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"<br />
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"><br />
<busconfig><br />
<br />
<policy at_console="true"><br />
<deny send_destination="net.connman.iwd"/><br />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.Properties" send_member="GetAll" /><br />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.Properties" send_member="Get" /><br />
<allow send_destination="net.connman.iwd" send_interface="org.freedesktop.DBus.ObjectManager" send_member="GetManagedObjects" /><br />
<allow send_destination="net.connman.iwd" send_interface="net.connman.iwd.Device" send_member="RegisterSignalLevelAgent" /><br />
<allow send_destination="net.connman.iwd" send_interface="net.connman.iwd.Device" send_member="UnregisterSignalLevelAgent" /><br />
</policy><br />
<br />
</busconfig><br />
</nowiki>}}<br />
<br />
{{Tip|Remove ''<allow>'' lines above to deny reading the status information as well.}}<br />
<br />
== See also ==<br />
<br />
* [https://iwd.wiki.kernel.org/gettingstarted Getting Started with iwd]<br />
* [https://git.kernel.org/pub/scm/network/wireless/iwd.git/tree/autotests More examples for Enterprise WPA]</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon_(Gen_6)&diff=536428Lenovo ThinkPad X1 Carbon (Gen 6)2018-08-20T12:37:10Z<p>Aorth: Use correct code syntax</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon (Gen 6)]]<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 2)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 3)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 4)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 5)}}<br />
{{Related articles end}}<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
== Model description ==<br />
<br />
The Lenovo ThinkPad X1 Carbon, 6th generation is an ultrabook introduced in early 2018. It comes in several variants({{ic|20KH*}} and {{ic|20KG*}}) and features a 14" screen, 8th-gen Intel Core processors and integrated [[Intel graphics|Intel UHD 620 graphics]].<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{bc|# dmidecode -t system &#124; grep Version<br />
<br />
Version: ThinkPad X1 Carbon 6th<br />
}}<br />
<br />
=== Support ===<br />
<br />
{| class="wikitable"<br />
| '''Device''' || '''Working''' || '''Modules'''<br />
|-<br />
| [[Intel graphics]] || {{Yes}} || i915, (intel_agp)<br />
|-<br />
| [[Wireless network configuration#iwlwifi|Wireless network]] || {{Yes}} || iwlmvm<br />
|-<br />
| Native Ethernet with [https://www3.lenovo.com/us/en/accessories-and-monitors/cables-and-adapters/adapters/CABLE-BO-TP-OneLink%2B-to-RJ45-Adapter/p/4X90K06975 included dongle] || {{Yes}} || ?<br />
|-<br />
| Mobile broadband || {{No}}*** || ?<br />
|-<br />
| Audio || {{Yes}} || snd_hda_intel<br />
|-<br />
| [[Touchpad]] || {{Yes}}* || psmouse, rmi_smbus, i2c_i801<br />
|-<br />
| [[TrackPoint]] || {{Yes}} || psmouse, rmi_smbus, i2c_i801<br />
|-<br />
| Camera || {{Yes}} || uvcvideo<br />
|-<br />
| Fingerprint Reader || {{No}}** || ?<br />
|-<br />
| [[Power management]] || {{Yes}} || ?<br />
|-<br />
| [[Bluetooth]] || {{Yes}} || btusb<br />
|-<br />
| microSD card reader || {{Yes}} || scsi_mod<br />
|-<br />
| Keyboard Backlight || {{Yes}} || thinkpad_acpi<br />
|-<br />
| Function/Multimedia Keys || {{Yes}} || ?<br />
|}<br />
<nowiki>*</nowiki> via [[#TrackPoint_and_Touchpad_issues|workaround]]<br />
<br />
<nowiki>**</nowiki> [https://github.com/nmikhailov/Validity90 progress being made] on driver<br />
<br />
<nowiki>***</nowiki> no working linux pcie driver for Fibocom L850-GL [https://forums.lenovo.com/t5/Linux-Discussion/X1C-gen-6-Fibocom-L850-GL-Ubuntu-18-04/m-p/4078413 forum link] - also see [https://forums.lenovo.com/t5/Linux-Discussion/Linux-support-for-WWAN-LTE-L850-GL-on-T580-T480/td-p/4067969 this forum] for more progress. <br />
<br />
== BIOS ==<br />
The most convenient way to install Arch Linux is by disabling "Secure Boot" {{ic|Security -> Secure Boot - Set to "Disabled"}}. However it is possible to self-sign your kernel and boot with it enabled. For further information have a look at the [[Secure Boot]] article.<br />
<br />
In case your {{ic|efivars}} are not properly set it is most likely due to you not being booted into [[UEFI]]. Should the problem persist be sure to consult the [[UEFI#UEFI variables]] section.<br />
<br />
=== Updates ===<br />
[https://pcsupport.lenovo.com/us/en/products/laptops-and-netbooks/thinkpad-x-series-laptops/thinkpad-x1-carbon-6th-gen-type-20kh-20kg/downloads BIOS update 1.27] was released on 2018-07-28. Obtain {{aur|geteltorito}} and run {{ic|./geteltorito.pl -o bios-update.img n23ur09w.iso}} on the downloaded ISO file to create a valid [[wikipedia:El_Torito_(CD-ROM_standard)|El Torito]] image file, then flash this file on a USB drive via {{ic|dd}} like you would flash [[USB_flash_installation_media|Arch installation media]]. For further information see [[Flashing_BIOS_from_Linux#Bootable_optical_disk_emulation|flashing BIOS from Linux]].<br />
<br />
The ThinkPad X1 Carbon supports setting a custom splash image at the earliest boot stage(instead of the red "Lenovo" logo), more information can be found in the {{ic|README.TXT}} located in the {{ic|FLASH}} folder of the update image.<br />
<br />
== Suspend issues ==<br />
The 6th Generation X1 Carbon supports S0i3 (also known as Windows Modern Standby), but not S3 out of the box. Missing S3 also causes hybrid-suspend to go directly to hibernate. Thankfully, S3 can be enabled through an ACPI override.<br />
<br />
=== Enabling S3 ===<br />
<br />
First, verify S3 is not currently available by running the following command and making sure S3 is not listed in the supported modes.<br />
<br />
dmesg | grep -i "acpi: (supports"<br />
<br />
To enable S3 support, there is an automatic patching script [https://github.com/fiji-flo/x1carbon2018s3 x1carbon2018s3], that was written with full instructions on both enabling S3 and verifying the patch worked. Follow the instructions in the repository and verify with the above command afterwards.<br />
<br />
The automatic script was based off of a guide written with [https://delta-xi.net/#056 instructions for patching ACPI DSDT tables] to manually add S3 support. A [https://bbs.archlinux.org/viewtopic.php?id=234913 forum thread] has further discussion related to this issue.<br />
<br />
=== Enabling S2idle ===<br />
From [https://forums.lenovo.com/t5/Linux-Discussion/X1-Carbon-Gen-6-cannot-enter-deep-sleep-S3-state-aka-Suspend-to/m-p/4016317/highlight/true#M10682 the Lenovo forums]: Add the following [[kernel parameter]] to enable S2idle support:<br />
acpi.ec_no_wakeup=1<br />
<br />
For example, for GRUB, one might edit <code>/etc/default/grub</code> and edit <code>GRUB_CMDLINE_LINUX_DEFAULT</code>:<br />
<br />
GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi.ec_no_wakeup=1"<br />
<br />
then perform <br />
<br />
sudo update-grub<br />
<br />
and restart the system.<br />
<br />
{{Note|This disables wakeup/resume via lid open.}}<br />
<br />
{{Note|This supports S2idle state, not S0i3 state as some seem to have been led to believe!}}<br />
<br />
You might also need to disable the Realtek memory card reader (which appears to use a constant 2-3 W) either via the BIOS or via <br />
echo "2-3" | sudo tee /sys/bus/usb/drivers/usb/unbind<br />
<br />
The power consumption might still be higher than that of the S3 state in this case.<br />
<br />
=== BIOS configurations ===<br />
* {{ic|Config -> Thunderbolt BIOS Assist Mode - Set to "Enabled"}}. When disabled, on Linux, power usage appears to be significantly higher because of a substantial number of CPU wakeups during s2idle.<br />
<br />
== Power management/Throttling issues ==<br />
Due to wrong configured power management registers the CPU may consume a lot less power than under windows and the thermal throttling occurs at 80°C (97°C when using Windows, see [https://www.reddit.com/r/thinkpad/comments/870u0a/t480s_linux_throttling_bug/ T480s throttling bug]).<br />
<br />
There is a [https://forums.lenovo.com/t5/Linux-Discussion/T480s-low-cTDP-and-trip-temperature-in-Linux/td-p/4028489 post in the official Lenovo forum] to inform Lenovo about this issue.<br />
<br />
=== Throttling fix ===<br />
<br />
An easy package has been written to address the problem until (or if) Lenovo ever solves it.<br />
<br />
Install {{Aur|lenovo-throttling-fix-git}}, then run:<br />
<br />
sudo systemctl enable --now lenovo_fix.service<br />
<br />
The script also supports more advance thermal/performance features including CPU undervolting. See the [https://github.com/erpalma/lenovo-throttling-fix lenovo-throttling-fix repository] <code>README.md</code> for details.<br />
<br />
{{Note|If you installed {{Pkg|thermald}}, it may conflict with the throttling fix in this package. Consider disabling thermald or otherwise work around this.}}<br />
<br />
== TrackPoint and Touchpad issues ==<br />
Some models of the 6th generation X1 Carbon seem to have issues with the TrackPoint and Touchpad working at the same time.<br />
<br />
To get the TrackPoint and Touchpad to work at the same time, add {{ic|1=synaptics_intertouch=1}} to the {{ic|psmouse}} [[kernel module]] options, for example in the cmdline of the [[boot loader]]:<br />
[...] root=/dev/sda1 rw psmouse.synaptics_intertouch=1 [...]<br />
or by editing {{ic|/etc/modprobe.d/psmouse.conf}}:<br />
options psmouse synaptics_intertouch=1<br />
<br />
{{Note|When using [[TLP]] with default powersaving settings, there might be occasional hiccups such as dropouts of tap-to-click functionality for the Touchpad, as well as the TrackPoint not surviving suspends and needing to be re-initialized.}}<br />
<br />
Reconnecting a dead trackpad can be done via<br />
{{bc|echo -n "none" &#124; sudo tee /sys/bus/serio/devices/serio1/drvctl<br />
echo -n "reconnect" &#124; sudo tee /sys/bus/serio/devices/serio1/drvctl}}<br />
<br />
== Full-disk encryption ==<br />
<br />
=== Ramdisk module ===<br />
With LUKS for root, i915 needs to be loaded in ramdisk in order to access the password prompt.<br />
Add i915 to MODULES list in {{ic|/etc/mkinitcpio.conf}} and regenerate the ramdisk.<br />
<br />
== References ==<br />
* [https://delta-xi.net/#056 A good night's sleep for the Lenovo X1 Carbon Gen6]: Patching ACPI DSDT tables to add S3 support<br />
* [https://forums.lenovo.com/t5/Linux-Discussion/X1-Carbon-Gen-6-cannot-enter-deep-sleep-S3-state-aka-Suspend-to/td-p/3998182/highlight/true Lenovo forums: Cannot enter deep sleep S3]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=234913 Thread: No deep sleep]: Includes DSDT patching solution and further discussion<br />
* [https://www.reddit.com/r/thinkpad/comments/870u0a/t480s_linux_throttling_bug/ T480s throttling bug], affects X1C6 as well<br />
* [https://forums.lenovo.com/t5/Linux-Discussion/T480s-low-cTDP-and-trip-temperature-in-Linux/td-p/4028489 Lenovo forums: T480s low cTDP and trip temperature in Linux]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=236367 Thread: TrackPoint/Touchpad issues, 20KG model]<br />
* [https://unix.stackexchange.com/a/431820 StackExchange: Success with enabling RMI4 config flags for Touchpad and TrackPoint]<br />
* [https://patchwork.kernel.org/patch/10324633/ Kernel patch - Input: elantech - add support for SMBus devices]<br />
* [https://patchwork.kernel.org/patch/10330857/ Kernel patch - Input: synaptics - add Lenovo 80 series ids to SMBus]<br />
* [[Intel_graphics|Early KMS start]]: Adding i915 to ramdisk<br />
<br />
== Additional resources ==<br />
<br />
* [https://www.thinkwiki.org/wiki/Category:X1_Carbon_(6th_Gen) ThinkWiki X1 Carbon 6th Gen page]<br />
* Benjamin Tissoires, kernel maintainer of peripherals, has explained how input bugs get fixed in his talk [https://www.youtube.com/watch?v=Bl_0xYxcYd8 Tools to debug a broken input device] ([https://www.x.org/wiki/Events/XDC2015/Program/tissoires_input_debug_tools.html Slides]), especially interesting are slides 16 onward.<br />
* [https://gist.github.com/greigdp/bb70fbc331a0aaf447c2d38eacb85b8f Dell XPS 13 9370 quirks]: Some pointers on getting Watt usage down to ~2W, Intel video powersaving features might be interesting, see also the [[Intel_graphics|Intel Graphics]] page for interesting power-saving options.<br />
* [[Dell XPS 13 (9360)]]: Shares some hardware with the X1C6<br />
* [https://01.org/blogs/rzhang/2015/best-practice-debug-linux-suspend/hibernate-issues Intel Blog: Best practice to debug Linux* suspend/hibernate issues], including the [https://github.com/01org/pm-graph pm-graph] tool to analyze power usage during suspend</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon_(Gen_6)&diff=536426Lenovo ThinkPad X1 Carbon (Gen 6)2018-08-20T12:27:32Z<p>Aorth: Add link to BIOS 1.27</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon (Gen 6)]]<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 2)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 3)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 4)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 5)}}<br />
{{Related articles end}}<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
== Model description ==<br />
<br />
The Lenovo ThinkPad X1 Carbon, 6th generation is an ultrabook introduced in early 2018. It comes in several variants({{ic|20KH*}} and {{ic|20KG*}}) and features a 14" screen, 8th-gen Intel Core processors and integrated [[Intel graphics|Intel UHD 620 graphics]].<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{bc|# dmidecode -t system &#124; grep Version<br />
<br />
Version: ThinkPad X1 Carbon 6th<br />
}}<br />
<br />
=== Support ===<br />
<br />
{| class="wikitable"<br />
| '''Device''' || '''Working''' || '''Modules'''<br />
|-<br />
| [[Intel graphics]] || {{Yes}} || i915, (intel_agp)<br />
|-<br />
| [[Wireless network configuration#iwlwifi|Wireless network]] || {{Yes}} || iwlmvm<br />
|-<br />
| Native Ethernet with [https://www3.lenovo.com/us/en/accessories-and-monitors/cables-and-adapters/adapters/CABLE-BO-TP-OneLink%2B-to-RJ45-Adapter/p/4X90K06975 included dongle] || {{Yes}} || ?<br />
|-<br />
| Mobile broadband || {{No}}*** || ?<br />
|-<br />
| Audio || {{Yes}} || snd_hda_intel<br />
|-<br />
| [[Touchpad]] || {{Yes}}* || psmouse, rmi_smbus, i2c_i801<br />
|-<br />
| [[TrackPoint]] || {{Yes}} || psmouse, rmi_smbus, i2c_i801<br />
|-<br />
| Camera || {{Yes}} || uvcvideo<br />
|-<br />
| Fingerprint Reader || {{No}}** || ?<br />
|-<br />
| [[Power management]] || {{Yes}} || ?<br />
|-<br />
| [[Bluetooth]] || {{Yes}} || btusb<br />
|-<br />
| microSD card reader || {{Yes}} || scsi_mod<br />
|-<br />
| Keyboard Backlight || {{Yes}} || thinkpad_acpi<br />
|-<br />
| Function/Multimedia Keys || {{Yes}} || ?<br />
|}<br />
<nowiki>*</nowiki> via [[#TrackPoint_and_Touchpad_issues|workaround]]<br />
<br />
<nowiki>**</nowiki> [https://github.com/nmikhailov/Validity90 progress being made] on driver<br />
<br />
<nowiki>***</nowiki> no working linux pcie driver for Fibocom L850-GL [https://forums.lenovo.com/t5/Linux-Discussion/X1C-gen-6-Fibocom-L850-GL-Ubuntu-18-04/m-p/4078413 forum link] - also see [https://forums.lenovo.com/t5/Linux-Discussion/Linux-support-for-WWAN-LTE-L850-GL-on-T580-T480/td-p/4067969 this forum] for more progress. <br />
<br />
== BIOS ==<br />
The most convenient way to install Arch Linux is by disabling "Secure Boot" {{ic|Security -> Secure Boot - Set to "Disabled"}}. However it is possible to self-sign your kernel and boot with it enabled. For further information have a look at the [[Secure Boot]] article.<br />
<br />
In case your {{ic|efivars}} are not properly set it is most likely due to you not being booted into [[UEFI]]. Should the problem persist be sure to consult the [[UEFI#UEFI variables]] section.<br />
<br />
=== Updates ===<br />
[https://pcsupport.lenovo.com/us/en/products/laptops-and-netbooks/thinkpad-x-series-laptops/thinkpad-x1-carbon-6th-gen-type-20kh-20kg/downloads BIOS update 1.27] was released on 2018-07-28. Obtain {{aur|geteltorito}} and run {{ic|./geteltorito.pl -o bios-update.img n23ur09w.iso}} on the downloaded ISO file to create a valid [[wikipedia:El_Torito_(CD-ROM_standard)|El Torito]] image file, then flash this file on a USB drive via {{ic|dd}} like you would flash [[USB_flash_installation_media|Arch installation media]]. For further information see [[Flashing_BIOS_from_Linux#Bootable_optical_disk_emulation|flashing BIOS from Linux]].<br />
<br />
The ThinkPad X1 Carbon supports setting a custom splash image at the earliest boot stage(instead of the red "Lenovo" logo), more information can be found in the {{ic|README.TXT}} located in the {{ic|FLASH}} folder of the update image.<br />
<br />
== Suspend issues ==<br />
The 6th Generation X1 Carbon supports S0i3 (also known as Windows Modern Standby), but not S3 out of the box. Missing S3 also causes hybrid-suspend to go directly to hibernate. Thankfully, S3 can be enabled through an ACPI override.<br />
<br />
=== Enabling S3 ===<br />
<br />
First, verify S3 is not currently available by running the following command and making sure S3 is not listed in the supported modes.<br />
<br />
dmesg | grep -i "acpi: (supports"<br />
<br />
To enable S3 support, there is an automatic patching script [https://github.com/fiji-flo/x1carbon2018s3 x1carbon2018s3], that was written with full instructions on both enabling S3 and verifying the patch worked. Follow the instructions in the repository and verify with the above command afterwards.<br />
<br />
The automatic script was based off of a guide written with [https://delta-xi.net/#056 instructions for patching ACPI DSDT tables] to manually add S3 support. A [https://bbs.archlinux.org/viewtopic.php?id=234913 forum thread] has further discussion related to this issue.<br />
<br />
=== Enabling S2idle ===<br />
From [https://forums.lenovo.com/t5/Linux-Discussion/X1-Carbon-Gen-6-cannot-enter-deep-sleep-S3-state-aka-Suspend-to/m-p/4016317/highlight/true#M10682 the Lenovo forums]: Add the following [[kernel parameter]] to enable S2idle support:<br />
acpi.ec_no_wakeup=1<br />
<br />
For example, for GRUB, one might edit `/etc/default/grub` and edit `GRUB_CMDLINE_LINUX_DEFAULT`:<br />
<br />
GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi.ec_no_wakeup=1"<br />
<br />
then perform <br />
<br />
sudo update-grub<br />
<br />
and restart the system.<br />
<br />
{{Note|This disables wakeup/resume via lid open.}}<br />
<br />
{{Note|This supports S2idle state, not S0i3 state as some seem to have been led to believe!}}<br />
<br />
You might also need to disable the Realtek memory card reader (which appears to use a constant 2-3 W) either via the BIOS or via <br />
echo "2-3" | sudo tee /sys/bus/usb/drivers/usb/unbind<br />
<br />
The power consumption might still be higher than that of the S3 state in this case.<br />
<br />
=== BIOS configurations ===<br />
* {{ic|Config -> Thunderbolt BIOS Assist Mode - Set to "Enabled"}}. When disabled, on Linux, power usage appears to be significantly higher because of a substantial number of CPU wakeups during s2idle.<br />
<br />
== Power management/Throttling issues ==<br />
Due to wrong configured power management registers the CPU may consume a lot less power than under windows and the thermal throttling occurs at 80°C (97°C when using Windows, see [https://www.reddit.com/r/thinkpad/comments/870u0a/t480s_linux_throttling_bug/ T480s throttling bug]).<br />
<br />
There is a [https://forums.lenovo.com/t5/Linux-Discussion/T480s-low-cTDP-and-trip-temperature-in-Linux/td-p/4028489 post in the official Lenovo forum] to inform Lenovo about this issue.<br />
<br />
=== Throttling fix ===<br />
<br />
An easy package has been written to address the problem until (or if) Lenovo ever solves it.<br />
<br />
Install {{Aur|lenovo-throttling-fix-git}}, then run:<br />
<br />
sudo systemctl enable --now lenovo_fix.service<br />
<br />
The script also supports more advance thermal/performance features including CPU undervolting. See the [https://github.com/erpalma/lenovo-throttling-fix lenovo-throttling-fix repository] `README.md` for details.<br />
<br />
{{Note|If you installed {{Pkg|thermald}}, it may conflict with the throttling fix in this package. Consider disabling thermald or otherwise work around this.}}<br />
<br />
== TrackPoint and Touchpad issues ==<br />
Some models of the 6th generation X1 Carbon seem to have issues with the TrackPoint and Touchpad working at the same time.<br />
<br />
To get the TrackPoint and Touchpad to work at the same time, add {{ic|1=synaptics_intertouch=1}} to the {{ic|psmouse}} [[kernel module]] options, for example in the cmdline of the [[boot loader]]:<br />
[...] root=/dev/sda1 rw psmouse.synaptics_intertouch=1 [...]<br />
or by editing {{ic|/etc/modprobe.d/psmouse.conf}}:<br />
options psmouse synaptics_intertouch=1<br />
<br />
{{Note|When using [[TLP]] with default powersaving settings, there might be occasional hiccups such as dropouts of tap-to-click functionality for the Touchpad, as well as the TrackPoint not surviving suspends and needing to be re-initialized.}}<br />
<br />
Reconnecting a dead trackpad can be done via<br />
{{bc|echo -n "none" &#124; sudo tee /sys/bus/serio/devices/serio1/drvctl<br />
echo -n "reconnect" &#124; sudo tee /sys/bus/serio/devices/serio1/drvctl}}<br />
<br />
== Full-disk encryption ==<br />
<br />
=== Ramdisk module ===<br />
With LUKS for root, i915 needs to be loaded in ramdisk in order to access the password prompt.<br />
Add i915 to MODULES list in {{ic|/etc/mkinitcpio.conf}} and regenerate the ramdisk.<br />
<br />
== References ==<br />
* [https://delta-xi.net/#056 A good night's sleep for the Lenovo X1 Carbon Gen6]: Patching ACPI DSDT tables to add S3 support<br />
* [https://forums.lenovo.com/t5/Linux-Discussion/X1-Carbon-Gen-6-cannot-enter-deep-sleep-S3-state-aka-Suspend-to/td-p/3998182/highlight/true Lenovo forums: Cannot enter deep sleep S3]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=234913 Thread: No deep sleep]: Includes DSDT patching solution and further discussion<br />
* [https://www.reddit.com/r/thinkpad/comments/870u0a/t480s_linux_throttling_bug/ T480s throttling bug], affects X1C6 as well<br />
* [https://forums.lenovo.com/t5/Linux-Discussion/T480s-low-cTDP-and-trip-temperature-in-Linux/td-p/4028489 Lenovo forums: T480s low cTDP and trip temperature in Linux]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=236367 Thread: TrackPoint/Touchpad issues, 20KG model]<br />
* [https://unix.stackexchange.com/a/431820 StackExchange: Success with enabling RMI4 config flags for Touchpad and TrackPoint]<br />
* [https://patchwork.kernel.org/patch/10324633/ Kernel patch - Input: elantech - add support for SMBus devices]<br />
* [https://patchwork.kernel.org/patch/10330857/ Kernel patch - Input: synaptics - add Lenovo 80 series ids to SMBus]<br />
* [[Intel_graphics|Early KMS start]]: Adding i915 to ramdisk<br />
<br />
== Additional resources ==<br />
<br />
* [https://www.thinkwiki.org/wiki/Category:X1_Carbon_(6th_Gen) ThinkWiki X1 Carbon 6th Gen page]<br />
* Benjamin Tissoires, kernel maintainer of peripherals, has explained how input bugs get fixed in his talk [https://www.youtube.com/watch?v=Bl_0xYxcYd8 Tools to debug a broken input device] ([https://www.x.org/wiki/Events/XDC2015/Program/tissoires_input_debug_tools.html Slides]), especially interesting are slides 16 onward.<br />
* [https://gist.github.com/greigdp/bb70fbc331a0aaf447c2d38eacb85b8f Dell XPS 13 9370 quirks]: Some pointers on getting Watt usage down to ~2W, Intel video powersaving features might be interesting, see also the [[Intel_graphics|Intel Graphics]] page for interesting power-saving options.<br />
* [[Dell XPS 13 (9360)]]: Shares some hardware with the X1C6<br />
* [https://01.org/blogs/rzhang/2015/best-practice-debug-linux-suspend/hibernate-issues Intel Blog: Best practice to debug Linux* suspend/hibernate issues], including the [https://github.com/01org/pm-graph pm-graph] tool to analyze power usage during suspend</div>Aorthhttps://wiki.archlinux.org/index.php?title=Talk:Lenovo_ThinkPad_X1_Carbon_(Gen_6)&diff=531782Talk:Lenovo ThinkPad X1 Carbon (Gen 6)2018-07-31T12:20:32Z<p>Aorth: Add note about ec_no_wakeup in Linux 4.18</p>
<hr />
<div><br />
== Open Issues ==<br />
<br />
* Issues with TrackPoint on NFC models, as noted [https://bbs.archlinux.org/viewtopic.php?id=236367 in this bbs thread], [https://forums.lenovo.com/t5/Linux-Discussion/Troubles-with-X1-Carbon-2018-X1C6-TouchPad-and-TrackPoint-under/td-p/4004815 on the Lenovo forums] and on [https://unix.stackexchange.com/questions/428975/lenovo-x1-carbon-gen-6-2018-touchpad-and-trackpoint-issues-with-linux Unix StackExchange]<br />
* CPU throttling<br />
* Inclusion of X1C6(and Thinkpads in general) into the <code>fwupd</code> program<br />
:* Status as of 2018-07-31: the X1C6 is [https://fwupd.org/lvfs/device/a4b51dca-8f97-4310-8821-3330f83c9135 now supported] by <code>fwupd</code>, but in my test with BIOS update 1.27 the firmware is downloaded and noticed by the BIOS at boot but updates don't seem to actually get applied. [[User:Aorth|Alan Orth]] ([[User talk:Aorth|talk]]) 12:17, 31 July 2018 (UTC)<br />
<br />
== Fingerprint reader ==<br />
<br />
See [https://github.com/nmikhailov/Validity90 github.com/nmikhailov/Validity90], especially the <code>9a</code> branch.<br />
<br />
Device id: <code>06cb:009a</code><br />
<br />
Status as of 04/2018: "Init works, leds work, scan doesn't work yet"<br />
<br />
== Deep sleep (S3) ==<br />
Possible solutions:<br />
* Update of UEFI firmware to allow S3 sleep instead of Si03, i.e. an alternative BIOS for Linux users<br />
* Making Linux play nicely with Si03, which means:<br />
** Activating <code>acpi.ec_no_wakeup=1</code>, which sacrifices the functionality of opening the lid to return from suspend<br />
:* Linux 4.18 will automatically use <code>acpi.ec_no_wakeup=1</code> on X1C6 as of [http://lkml.iu.edu/hypermail/linux/kernel/1806.3/00112.html Linux 4.18-rc2] [[User:Aorth|Alan Orth]] ([[User talk:Aorth|talk]]) 12:20, 31 July 2018 (UTC)<br />
** Fixing the SD-Card reader to consume less power in Si03<br />
* Patching the DSDT tables as noted on [https://delta-xi.net/#056 delta-xi] and [https://bbs.archlinux.org/viewtopic.php?id=234913 the forums] (potentially dangerous and does not play nicely with BIOS updates)<br />
<br />
== Other Power saving ==<br />
Investigate how to get Watt usage down to ~2W like the [https://gist.github.com/greigdp/bb70fbc331a0aaf447c2d38eacb85b8f Dell XPS 13 9360/9370], similar to the instructions on [[Dell_XPS_13_(9360)|the XPS 9360 page]], especially since the i915 video driver can be tweaked similarly [[Intel_graphics#Module-based_Powersaving_Options|with the Intel Graphics Module Powersaving Options]] since it’s also an HD 620 integrated video unit.<br />
<br />
<br />
--[[User:Mrfaber|Mrfaber]] ([[User talk:Mrfaber|talk]]) 22:42, 18 April 2018 (UTC)</div>Aorthhttps://wiki.archlinux.org/index.php?title=Talk:Lenovo_ThinkPad_X1_Carbon_(Gen_6)&diff=531781Talk:Lenovo ThinkPad X1 Carbon (Gen 6)2018-07-31T12:17:20Z<p>Aorth: Add note about fwupd status</p>
<hr />
<div><br />
== Open Issues ==<br />
<br />
* Issues with TrackPoint on NFC models, as noted [https://bbs.archlinux.org/viewtopic.php?id=236367 in this bbs thread], [https://forums.lenovo.com/t5/Linux-Discussion/Troubles-with-X1-Carbon-2018-X1C6-TouchPad-and-TrackPoint-under/td-p/4004815 on the Lenovo forums] and on [https://unix.stackexchange.com/questions/428975/lenovo-x1-carbon-gen-6-2018-touchpad-and-trackpoint-issues-with-linux Unix StackExchange]<br />
* CPU throttling<br />
* Inclusion of X1C6(and Thinkpads in general) into the <code>fwupd</code> program<br />
:* Status as of 2018-07-31: the X1C6 is [https://fwupd.org/lvfs/device/a4b51dca-8f97-4310-8821-3330f83c9135 now supported] by <code>fwupd</code>, but in my test with BIOS update 1.27 the firmware is downloaded and noticed by the BIOS at boot but updates don't seem to actually get applied. [[User:Aorth|Alan Orth]] ([[User talk:Aorth|talk]]) 12:17, 31 July 2018 (UTC)<br />
<br />
== Fingerprint reader ==<br />
<br />
See [https://github.com/nmikhailov/Validity90 github.com/nmikhailov/Validity90], especially the <code>9a</code> branch.<br />
<br />
Device id: <code>06cb:009a</code><br />
<br />
Status as of 04/2018: "Init works, leds work, scan doesn't work yet"<br />
<br />
== Deep sleep (S3) ==<br />
Possible solutions:<br />
* Update of UEFI firmware to allow S3 sleep instead of Si03, i.e. an alternative BIOS for Linux users<br />
* Making Linux play nicely with Si03, which means:<br />
** Activating <code>acpi.ec_no_wakeup=1</code>, which sacrifices the functionality of opening the lid to return from suspend<br />
** Fixing the SD-Card reader to consume less power in Si03<br />
* Patching the DSDT tables as noted on [https://delta-xi.net/#056 delta-xi] and [https://bbs.archlinux.org/viewtopic.php?id=234913 the forums] (potentially dangerous and does not play nicely with BIOS updates)<br />
<br />
== Other Power saving ==<br />
Investigate how to get Watt usage down to ~2W like the [https://gist.github.com/greigdp/bb70fbc331a0aaf447c2d38eacb85b8f Dell XPS 13 9360/9370], similar to the instructions on [[Dell_XPS_13_(9360)|the XPS 9360 page]], especially since the i915 video driver can be tweaked similarly [[Intel_graphics#Module-based_Powersaving_Options|with the Intel Graphics Module Powersaving Options]] since it’s also an HD 620 integrated video unit.<br />
<br />
<br />
--[[User:Mrfaber|Mrfaber]] ([[User talk:Mrfaber|talk]]) 22:42, 18 April 2018 (UTC)</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon&diff=509938Lenovo ThinkPad X1 Carbon2018-02-06T08:53:02Z<p>Aorth: Use HTTPS for ThinkWiki.org links</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon]]<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 2)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 3)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 4)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 5)}}<br />
{{Related articles end}}<br />
<br />
Lenovo ThinkPad X1 Carbon (X1C).<br />
There is also a touch version. Comes without optical drive. <br />
Has UEFI BIOS with BIOS-legacy fallback mode.<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
== Booting ==<br />
<br />
=== Legacy-BIOS ===<br />
<br />
This procedure is far less involved than UEFI and works perfectly.<br />
<br />
Boot into your BIOS and change the boot mode to Legacy. Then simply follow the normal [[installation guide]].<br />
<br />
=== UEFI ===<br />
<br />
{{Accuracy|Making a custom ISO may not be necessary. Try the regular installation ISO first|Talk:Lenovo ThinkPad X1 Carbon#UEFI support}}<br />
{{Merge|GRUB#UEFI systems|unnecessary duplication}}<br />
<br />
Use [[archboot]] to install or see https://bbs.archlinux.org/viewtopic.php?pid=1288500#p1288500<br />
<br />
1. You follow the guide from here and skip the part about errors and refind: [[Unified_Extensible_Firmware_Interface#Create_UEFI_bootable_USB_from_ISO|Create_UEFI_bootable_USB_from_ISO]]<br />
<br />
2. Make sure you USB is mounted to /boot/efi and install grub, like so:<br />
$ grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --boot-directory=/boot/efi/ --recheck --debug<br />
<br />
OBS: You can remove the entry from your EFI bootmanger, with efibootmgr by issuing:<br />
$ efibootmgr -b XX -B<br />
3. Now you can choose if you wanna hack you grub.cfg or use the custom config in grub.d. Either way generate the grub.cfg:<br />
$ grub-mkconfig -o /boot/efi/grub/grub.cfg<br />
<br />
4. Make certain appropriate changes have been made to grub.cfg. My working example, which could use cleaning:<br />
{{hc|/etc/grub.d/10_linux|<nowiki><br />
### BEGIN /etc/grub.d/10_linux ###<br />
menuentry 'Arch Linux test' {<br />
load_video<br />
set gfxpayload=keep<br />
insmod gzio<br />
insmod part_gpt<br />
insmod ext2<br />
set root='hd0,gpt1'<br />
if [ x$feature_platform_search_hint = xy ]; then<br />
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 B35D-FE34<br />
else<br />
search --no-floppy --fs-uuid --set=root B35D-FE34<br />
fi<br />
echo 'Loading Linux core repo kernel ...'<br />
linux /arch/boot/x86_64/vmlinuz root=UUID=B35D-FE34 ro archisobasedir=arch archisolabel=ARCH_201306<br />
echo 'Loading initial ramdisk ...'<br />
initrd /arch/boot/x86_64/archiso.img<br />
}<br />
<br />
### END /etc/grub.d/10_linux ###<br />
</nowiki>}}<br />
<br />
5. Move the grub.efi to overwrite the archiso supplied one (which btw works on my desktop. I guess GRUB includes more workarounds for buggy firmware from manufactureres. See this video, if you have time: http://mjg59.dreamwidth.org/10014.html<br />
$ mv /boot/efi/EFI/arch_grub/grubx64.efi /mnt/efi/EFI/boot/bootx64.efi<br />
<br />
Success. Somethings are implied, like GPT partitiontable etc.<br />
<br />
=== Hanging on "HWP enabled" message ===<br />
<br />
This is due to a [https://bugzilla.kernel.org/show_bug.cgi?id=110941 bug] introduced in Linux 4.4. To work around it, add {{ic|1=intel_pstate=no_hwp}} to your [[kernel parameters]].<br />
<br />
== Hardware ==<br />
<br />
Almost everything works out of the box.<br />
<br />
=== Audio ===<br />
Sound works out of the box.<br />
<br />
==== Xbindkeys ====<br />
<br />
For alternative window managers (Fluxbox, etc..), try installing [[xbindkeys]] and adding the following to {{ic|~/.xbindkeysrc}}:<br />
<br />
"amixer -c 0 set Master 1dB-"<br />
XF86AudioLowerVolume<br />
"amixer -c 0 set Master 1dB+"<br />
XF86AudioRaiseVolume<br />
<br />
=== Network ===<br />
<br />
Wired networking works out of the box with the Ethernet to USB adapter. Wireless works out of the box using the {{ic|iwlwifi}} module.<br />
<br />
{{hc|$ lspci|output: Network controller: Intel Corporation Centrino Advanced-N 6205 [Taylor Peak] (rev 96)}}<br />
<br />
=== Touchscreen ===<br />
<br />
Works out of the box. To enable multi-touch, install [[Touchegg]].<br />
<br />
=== Video ===<br />
<br />
The video card installed is Intel HD Graphics 4000. See [[intel]] for more info.<br />
<br />
==== Brightness control ====<br />
<br />
Default brightness adjustment keys work but need to be pressed multiple times to increase/decrease the screen brightness. Use either the [[#Xbindkeys_2]] or [[#ACPI]] methods to fix this.<br />
<br />
Some desktop environments may lack granularity while changing brightness. This is due to the DE (e.g. gnome-settings-daemon) along with the internal graphics module changing the brightness when brightness adjustment keys are pressed causing multiple steps per press. To work around this add the [[kernel parameter]] {{ic|1=video.brightness_switch_enabled=0}}.<br />
<br />
===== Xbindkeys =====<br />
<br />
Install [[xbindkeys]] and append the following to {{ic|~/.xbindkeysrc}}:<br />
<br />
"xbacklight -dec 5"<br />
XF86MonBrightnessDown<br />
"xbacklight -inc 5"<br />
XF86MonBrightnessUp<br />
<br />
===== ACPI =====<br />
<br />
Writing custom ACPI handlers for the brightness adjustment keys seems to have no effect. In order to use them properly you need to add the [[kernel parameter]] {{ic|1=acpi_osi="!Windows 2012"}}. See also [[Backlight#ACPI]]. Note that the ACPI backlight is [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=fbc9fe1b4f222a7c575e3bd8e9defe59c6190a04 disabled by default] on Windows 8 hardware with a native backlight. Consider using the [[#Xbindkeys]] approach instead.<br />
<br />
==== Wrong EDID for external display ====<br />
<br />
With certain connectors (e.g. MiniDP to VGA), there is a bug getting EDID for the external screen while booting:<br />
[ 93.736330] [drm:intel_dp_i2c_aux_ch] *ERROR* too many retries, giving up<br />
This does not occur if the external screen is connected after booting.<br />
<br />
The correct mode can be added per [[xrandr#Adding undetected resolutions]]:<br />
{{bc|<br />
xrandr --newmode 1920x1200_60 154 1920 1968 2000 2080 1200 1203 1209 1235 -hsync +vsync<br />
xrandr --addmode DP1 1920x1200_60<br />
xrandr --output DP1 --mode 1920x1200_60}}<br />
<br />
=== KMS ===<br />
Enable [[KMS]] using the {{ic|i915}} module and by enabling VT in BIOS.<br />
<br />
=== Webcam ===<br />
Works out of the box. Tested with guvcview<br />
<br />
=== Fingerprint Reader ===<br />
<br />
Works out of the box with [[Fprint]]. <br />
<br />
For a GUI {{AUR|fingerprint-gui}} from the [[AUR]] is already patched to work with the X1's newer fingerprint reader. To get the gui's dropdown to recognize your device, you will have to add your user to the {{ic|plugdev}} group:<br />
<br />
$ gpasswd -a <username> plugdev<br />
<br />
See [[fingerprint-gui]] for more information about config<br />
<br />
----<br />
{{ic|lsusb}} ''output: 147e:2020 Upek TouchChip Fingerprint Coprocessor (WBF advanced mode)''<br />
<br />
=== WWAN (Mobile broadband) ===<br />
<br />
This model includes a [https://www.thinkwiki.org/wiki/Ericsson_H5321_gw_Mobile_Broadband_Module Ericsson H5321gw] adapter that can be used as a mobile broadband adapter and GPS.<br />
<br />
The SIM-card must be inserted in the back of the laptop.<br />
<br />
Add text to the following file and reboot<br />
<br />
{{hc|/etc/modprobe.d/avoid-mbib.conf|<nowiki>options cdc_ncm prefer_mbim=N</nowiki>}}<br />
<br />
Tested OK with [[NetworkManager]] with {{pkg|modemmanager}} installed<br />
----<br />
{{ic|lsusb}} ''output: 0bdb:1926 Ericsson Business Mobile Networks BV''<br />
<br />
=== GPS ===<br />
<br />
Install gpsd from extra and mbm-gpsd-git from AUR.<br />
Add this to the following file<br />
{{hc|/etc/udev/rules.d/99-mbm.rules|<nowiki><br />
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{ID_USB_INTERFACE_NUM}=="09", ENV{MBM_CAPABILITY}="gps_nmea"<br />
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{ID_USB_INTERFACE_NUM}=="03", ENV{MBM_CAPABILITY}="gps_ctrl"<br />
</nowiki>}}<br />
<br />
Reboot to reload udev rules.<br />
<br />
Run {{ic|sudo mbm-gpsd}}<br />
<br />
See if there is GPS-output<br />
{{ic|cat /dev/gps0}}<br />
<br />
Run {{ic|sudo gpsd -b -N /dev/gps0}}<br />
<br />
To test it {{ic|xgps}}<br />
<br />
Or use e.g. {{Pkg|foxtrotgps}} in [[AUR]].<br />
<br />
See [https://www.thinkwiki.org/wiki/Ericsson_H5321_gw_Mobile_Broadband_Module this link] for more info.<br />
----<br />
{{ic|lsusb}} ''output: 0bdb:1926 Ericsson Business Mobile Networks BV''<br />
<br />
=== Keyboard backlight ===<br />
Works out of the box. Use FN+Space<br />
<br />
=== Bluetooth ===<br />
First try to set up [[Bluetooth]] normally. If you get kernel error messages:<br />
<br />
kernel: bluetooth hci0: Direct firmware load for brcm/BCM20702A1-0a5c-21e6.hcd failed with error -2<br />
kernel: Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-0a5c-21e6.hcd not found <br />
You need to manually install the proprietary firmware. The slackware wiki describes one way to do this: http://www.slackwiki.com/Btfirmware-nonfree.<br />
<br />
=== Mouse/Touchpad ===<br />
Works out of the box. See [[TrackPoint]] for additional details.<br />
<br />
=== Docking ===<br />
This model has no docking port.<br />
<br />
Video for USB 3 Docking Stations currently is [http://www.displaylink.org/forum/showthread.php?t=1748 not supported], so you must use a [https://www.thinkwiki.org/wiki/USB_Port_Replicator_with_Digital_Video USB Port Replicator with Digital Video (USB 2.0)]<br />
<br />
This supports:<br />
* USB-devices connected to dock<br />
* Audio<br />
* Microphone<br />
* Ethernet<br />
* Video (see [[DisplayLink]])</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon_(Gen_2)&diff=509937Lenovo ThinkPad X1 Carbon (Gen 2)2018-02-06T08:52:29Z<p>Aorth: Use HTTPS for ThinkWiki.org links</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon (Gen 2)]]<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 3)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 4)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 5)}}<br />
{{Related articles end}}<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
== Model description ==<br />
<br />
Lenovo ThinkPad X1 Carbon, Gen 2 (X1C).<br />
Comes without optical drive. There is also a touch version.<br />
Has UEFI BIOS with BIOS-legacy fallback mode.<br />
<br />
To ensure you have this version, try running ''dmidecode'':<br />
# dmidecode -t system | grep Version<br />
Version: ThinkPad X1 Carbon 2nd<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
=== Legacy-BIOS ===<br />
<br />
{{Expansion|TODO}}<br />
<br />
=== UEFI ===<br />
<br />
Installing the system from an [[Archboot]] device just works.<br />
<br />
Alteratively, to manually install using {{ic|efibootmgr}} (see [[Unified Extensible Firmware Interface#efibootmgr]]), you can run this:<br />
<br />
# efibootmgr -c -d /dev/sda -p 1 -l /EFI/arch_grub/grubx64.efi -L "Arch"<br />
<br />
This assumes that you are using [[GRUB]] with /dev/sda1 as your ESP. If you are using a different partition change the arguments to {{ic|-d}} and {{ic|-p}} arguments. <br />
<br />
{{Note|<br />
This may not work from the [[Archiso]] image, in which case you will need to use the EFI shell built into the archiso image.<br />
<br />
Reboot the computer and drop into the EFI shell at the menu, then run these commands:<br />
<br />
> bcfg boot add 0 fs0:\EFI\arch_grub\grubx64.efi "Arch"<br />
<br />
Make sure you are using the correct disk ({{ic|fs0}}) and bootloader location ({{ic|\EFI\arch_grub\grubx64.efi}}).<br />
}}<br />
<br />
== Hardware ==<br />
<br />
Almost everything works out of the box. Most of the hardware is based on the Intel Lynx Point reference design.<br />
<br />
=== Power Management ===<br />
<br />
The [[kernel module]] {{ic|thinkpad_acpi}} picks up most of the sensors. The kernel module {{ic|tp_smapi}} is not currently supported. PCIe ASPM does not currently work.<br />
<br />
[[Udev]] does not not notify whenever battery discharges by 1%, but it does notify at 80%, 20%, 5%, 4% and 0%. To take advantage of this, see (Suspend On Low Battery [[Laptop#hibernate on low battery level]])<br />
<br />
=== Wake From Suspend ===<br />
<br />
Wake from suspend can be buggy with earlier versions of the bios, see:<br />
[http://linux-thinkpad.10952.n7.nabble.com/Gen-2-Haswell-X1-Carbon-suspend-to-RAM-hang-td21039.html]<br />
<br />
This can be solved by flashing the bios to a version >=1.13. Look here for Lenovo's bios versions:<br />
[http://support.lenovo.com/en_GB/downloads/detail.page?DocID=DS039783]<br />
<br />
A guide how to make a bootable BIOS key drive can be found here:<br />
[http://positon.org/lenovo-thinkpad-bios-update-with-linux-and-usb]<br />
<br />
And some fairly old help from lenovo here:<br />
[https://www.thinkwiki.org/wiki/BIOS_Upgrade#Using_grub4dos_.28also_for_Linux.29]<br />
<br />
If the function keys fail to wake after suspend, ensure you have a kernel version >=3.15.<br />
<br />
If you build your own kernels, make sure to either enable TPM (Trusted Platform Module) drivers or disable the Security Chip in the BIOS.<br />
<br />
=== Keyboard ===<br />
<br />
On kernel 3.14 and lower the adaptive panel at the top of the keyboard is locked to function mode.<br />
<br />
From kernel 3.15, Home mode is also available which allows access to screen brightness and other controls.<br />
<br />
If you wish to remap keys to get back to a sane keyboard layout, you can use either xmodmap or xkb. The difference is largely user preference.<br />
<br />
==== Remapping keys using xmodmap ====<br />
<br />
To get the tilde key back to a sane location on the keyboard you can use xmodmap [[Xmodmap]] to remap Shift-Esc to '~'.<br />
Install {{Pkg|xorg-xmodmap}} and generate a custom key map:<br />
$ xmodmap -pke > ~/.Xmodmap<br />
Then edit your key map:<br />
{{hc|~/.Xmodmap|<nowiki><br />
...<br />
keycode 9 = Escape asciitilde Escape<br />
...<br />
</nowiki>}}<br />
Make sure xmodmap loads your new keymap on login:<br />
{{hc|~/.xinitrc|<nowiki><br />
...<br />
if [ -s ~/.Xmodmap ]; then<br />
xmodmap ~/.Xmodmap<br />
fi<br />
...<br />
</nowiki>}}<br />
<br />
==== Remapping keys using xkb ====<br />
{{Accuracy|This is not the intended usage of [[XKB]], these changes will be lost on every update of {{Pkg|xkeyboard-config}} package which owns the files.}}<br />
<br />
===== Backtick (`) and Tilde (~) =====<br />
To get the backtick/tilde back to a normal location, add the following definition for the Escape button:<br />
<br />
{{hc|/usr/share/X11/xkb/symbols/pc|<nowiki><br />
key <ESC> { [ grave, asciitilde ] };<br />
</nowiki>}}<br />
<br />
===== Home and End =====<br />
You may also wish to remap the 'Home' and 'End' button back to Caps Lock, or Escape. Change the lines for HOME and END as follows:<br />
<br />
{{hc|/usr/share/X11/xkb/symbols/pc|<nowiki><br />
key <HOME> { [ Caps_Lock ] };<br />
key <END> { [ Caps_Lock ] };<br />
</nowiki>}}<br />
<br />
or to make 'Home' and 'End' be Escape:<br />
<br />
{{hc|/usr/share/X11/xkb/symbols/pc|<nowiki><br />
key <HOME> { [ Escape ] };<br />
key <END> { [ Escape ] };<br />
</nowiki>}}<br />
<br />
===== BackSpace and Delete =====<br />
<br />
If you find yourself accidentally hitting the delete key instead of backspace, you may wish to make both backspace and delete be 'BackSpace', while functioning as 'Delete' when you hold down shift:<br />
<br />
{{hc|/usr/share/X11/xkb/symbols/pc|<nowiki><br />
key <BKSP> { [ BackSpace, Delete ] };<br />
key <DELE> { [ BackSpace, Delete ] };<br />
</nowiki>}}<br />
<br />
=== Trackpad ===<br />
<br />
To enable Trackpad support you need to install {{Pkg|xf86-input-synaptics}}.<br />
<br />
{{Warning|the above did the opposite for me. When both {{Pkg|xf86-input-synaptics}} and {{Pkg|xf86-input-libinput}} are installed, the trackpoint (red thingy) uses libinput by default, so it doesn't cooperate with the trackpad (which by default is driven by synaptics), and as a result you can't scroll with middle button + trackpoint. Keeping only {{Pkg|xf86-input-libinput}} got everything working.}}<br />
<br />
==== Lock-ups on click ====<br />
There are significant issues with the trackpad locking up on click. This is due to the trackpad operating in buggy PS/2 mode.<br />
<br />
One alternative is to abandon the trackpad completely and use the trackpoint. Make sure xf86-input-synaptics is not installed - the trackpad will still register button one mouse clicks. Using xbindkeys [[Xbindkeys]] and {{Pkg|xdotool}}, right button clicks can be mapped to some other event. For example:<br />
<br />
{{hc|~/.xbindkeysrc|<nowiki><br />
# Emit a right click on Alt + trackpad click<br />
"xdotool click 3"<br />
Mod1 + b:1 + Release<br />
</nowiki>}}<br />
<br />
==== Tweaking trackpad behavior ====<br />
The behavior of the trackpad by default can be contrary to your expectations, particularly if you are coming from an OS X style trackpad. The following settings can help significantly:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/99-x1carbon.conf|<nowiki><br />
# Copy this to /etc/X11/xorg.conf.d/99-x1carbon.conf<br />
Section "InputClass"<br />
Identifier "X1 carbon stuff"<br />
MatchIsTouchpad "on"<br />
MatchDevicePath "/dev/input/event*"<br />
Driver "synaptics"<br />
<br />
# Enable two finger scrolling vertically, disable horizontally<br />
Option "VertTwoFingerScroll" "1"<br />
Option "HorizTwoFingerScroll" "0"<br />
<br />
# No scrolling along the edge<br />
Option "VertEdgeScroll" "0"<br />
Option "HorizEdgeScroll" "0"<br />
<br />
Option "LockedDrags" "0"<br />
Option "FingerPress" "1"<br />
<br />
# Turn off the blasted corners as buttons<br />
Option "RTCornerButton" "0"<br />
Option "RBCornerButton" "0"<br />
Option "LTCornerButton" "0"<br />
Option "LBCornerButton" "0"<br />
<br />
# Ignore "taps" and listen for "clicks"<br />
Option "TapButton1" "0"<br />
Option "TapButton2" "0"<br />
Option "TapButton3" "0"<br />
Option "ClickFinger1" "1" # Left click one finger<br />
Option "ClickFinger2" "3" # Right click two fingers<br />
Option "ClickFinger3" "0" # Three finger click disabled<br />
<br />
Option "TapAndDragGesture" "0"<br />
<br />
# No circular scrolling<br />
Option "CircularScrolling" "0"<br />
EndSection<br />
</nowiki>}}<br />
<br />
If you are using gnome-shell, you may need to tell the settings app not to overwrite our changes:<br />
<br />
gsettings set org.gnome.settings-daemon.plugins.mouse active false<br />
<br />
<br />
==== Touchpad not working after wake up from sleep ====<br />
See here: <br />
[[Touchpad Synaptics#Touchpad does not work after resuming from hibernate/suspend]]<br />
<br />
=== Keyboard backlight ===<br />
<br />
Works out of the box. there is a button on the soft keyboard to toggle it between off, low, and high brightness.<br />
<br />
==== Automatically turn on backlight when typing ====<br />
<br />
Using a c program that continuously checks for keyboard input, it is possible to activate the backlight for a certain time.<br />
The program source is as a follows<br />
{{hc|kbdbacklight.c|<nowiki><br />
/* Original Author: Howard Chu <hyc@symas.com> 2013-01-15<br />
*<br />
* compile as "gcc -O2 -o kbdbacklight kbdbacklight.c" and run it in the background, or arrange to have it run at bootup.<br />
*<br />
* adapted by gabtub@gmail.com 2017-01-22<br />
* using https://gist.github.com/hadess/6847281<br />
* based on http://askubuntu.com/questions/383501/enable-the-keyboard-backlights-on-supported-lenovo-e-g-carbon-x1-with-command<br />
* original code found at http://forum.notebookreview.com/threads/asus-keyboard-backlight-controller.703985/<br />
* sigterm catching done as shown in https://airtower.wordpress.com/2010/06/16/catch-sigterm-exit-gracefully/<br />
*<br />
* monitor keyboard activity and toggle keyboard backlight<br />
*/<br />
#include <sys/types.h><br />
#include <sys/stat.h><br />
#include <fcntl.h><br />
#include <poll.h><br />
#include <unistd.h><br />
#include <signal.h><br />
#include <string.h><br />
<br />
static char dummybuf[8192];<br />
<br />
/** @brief How many milliseconds before turning off kbd light */<br />
#ifndef IDLE_MSEC<br />
#define IDLE_MSEC 5000<br />
#endif<br />
<br />
#ifndef BRGHT_OFF<br />
#define BRGHT_OFF 3<br />
#endif<br />
#ifndef BRGHT_MED<br />
#define BRGHT_MED 67<br />
#endif<br />
#ifndef BRGHT_MAX<br />
#define BRGHT_MAX 131<br />
#endif<br />
<br />
volatile sig_atomic_t running = 1;<br />
<br />
void term(int signum)<br />
{<br />
// sigterm == 15<br />
running = 0;<br />
}<br />
<br />
int main(int argc, char *argv[])<br />
{<br />
struct sigaction action;<br />
struct pollfd pfd;<br />
int rc, blfd;<br />
int timeout, prev = -1;<br />
/* possible brightness levels for x1<br />
* - 3 off<br />
* - 67 medium<br />
* - 131 max<br />
*/<br />
char bm[1];<br />
bm[0] = BRGHT_MED;<br />
<br />
memset(&action, 0, sizeof(struct sigaction));<br />
action.sa_handler = term;<br />
sigaction(SIGTERM, &action, NULL);<br />
<br />
// potentially needs<br />
// sudo modprobe -r ec_sys<br />
// sudo modprobe ec_sys write_support=1<br />
blfd = open("/sys/kernel/debug/ec/ec0/io", O_WRONLY);<br />
// needs the event bound to the keyboard<br />
// for Xorg ie find using<br />
// cat /var/log/Xorg.0.log | grep "keyboard.*event"<br />
pfd.fd = open("/dev/input/event4", O_RDONLY);<br />
pfd.events = POLLIN;<br />
timeout = IDLE_MSEC;<br />
<br />
while (running) {<br />
rc = poll(&pfd, 1, timeout);<br />
if (rc) {<br />
/* got keyboard input, flush it all and<br />
* wait for the next event.<br />
*/<br />
read(pfd.fd, dummybuf, sizeof(dummybuf));<br />
timeout = IDLE_MSEC;<br />
bm[0] = BRGHT_MED;<br />
} else {<br />
/* once we've gotten a timeout, turn off<br />
* kbd backlight and wait forever for<br />
* the next keypress<br />
*/<br />
timeout = -1;<br />
bm[0] = BRGHT_OFF;<br />
}<br />
if (bm[0] == prev)<br />
continue;<br />
lseek(blfd, 13, SEEK_SET);<br />
write(blfd, bm, 1);<br />
prev = bm[0];<br />
}<br />
// clean up after sigterm<br />
bm[0] = BRGHT_OFF;<br />
lseek(blfd, 13, SEEK_SET);<br />
write(blfd, bm, 1);<br />
}<br />
</nowiki>}}<br />
<br />
This file can be compiled with:<br />
gcc -O2 -o kbdbacklight kbdbacklight.c<br />
and must be executed as root. Furthermore, following kernel modules must be loaded for this to work:<br />
modprobe -r ec_sys<br />
modprobe ec_sys write_support=1<br />
<br />
It would be possible to autostart this by creating a systemd service as follows:<br />
* Create a folder /usr/local/customscripts/kbdbacklight/<br />
* Save the compiled c program to /usr/local/customscripts/kbdbacklight/kbdbacklight<br />
* Create the following bash script in the same folder:<br />
{{hc|/usr/local/customscripts/kbdbacklight/kbdbacklight.sh|<nowiki><br />
#!/bin/bash<br />
# must be executed as root<br />
modprobe -r ec_sys<br />
modprobe ec_sys write_support=1<br />
./kbdbacklight &<br />
RETVAL=$?<br />
PID=$!<br />
[ $RETVAL -eq 0 ] && echo $PID > /usr/local/customscripts/kbdbacklight/pid<br />
</nowiki>}}<br />
* Create the following systemd service and place it in /etc/systemd/system/kbdbacklight.service<br />
{{hc|/etc/systemd/system/kbdbacklight.service|<nowiki><br />
#!/bin/bash<br />
[Unit]<br />
Description=starts a daemon monitoring keyboard usage. will turn on keyboard backlight until no key is pressed for a TIMEOUT period<br />
Requires=<br />
After=<br />
<br />
[Service]<br />
Type=forking<br />
User=root<br />
WorkingDirectory=/usr/local/customscripts/kbdbacklight/<br />
ExecStart=/usr/local/customscripts/kbdbacklight/kbdbacklight.sh &<br />
PIDFile=/usr/local/customscripts/kbdbacklight/pid<br />
<br />
[Install]<br />
WantedBy=multi-user.target<br />
</nowiki>}}<br />
* activate the service with<br />
systemctl enable kbdbacklight<br />
systemctl start kbdbacklight<br />
{{Note|<br />
Specifiy the amount timeout for turning the backlight off again by adjusting the constant IDLE_MSEC in the c program. (and recompiling it again)<br />
}}<br />
<br />
=== Audio ===<br />
Sound works out of the box. Uses the snd_hda_intel kernel module.<br />
You may need to add default sound card options to the module.<br />
<br />
In /etc/modprobe.d/alsa-base.conf include the following line:<br />
<br />
options snd_hda_intel index=1<br />
<br />
=== Processor ===<br />
See [[Microcode#Enabling Intel microcode updates]] how to update to processor's microcode.<br />
<br />
=== BIOS UPDATE ===<br />
To install a BIOS update from linux, download the bootable iso from here:<br />
https://pcsupport.lenovo.com/fi/en/products/LAPTOPS-AND-NETBOOKS/THINKPAD-X-SERIES-LAPTOPS/THINKPAD-X1-CARBON-TYPE-20A7-20A8/downloads/DS039783<br />
<br />
Since there is no CD drive, this method can be used (German):<br />
http://thinkwiki.de/BIOS-Update_ohne_optisches_Laufwerk_unter_Linux#El_Torito_Image_auf_USB-Stick_.28nur_UEFI.29<br />
<br />
== Add ALSA-Preamplifier ==<br />
It is a common problem on laptops running linux that the sound, even on maximum, is not loud enough. This can be fixed by adding an ALSA preamplifier.<br />
Install alsa-utils:<br />
<br />
<pre><br />
sudo pacman -S alsa-utils<br />
</pre><br />
<br />
Change the config in /etc/asound.conf to the following ( you might have to adjust the cardnumber):<br />
<br />
<pre><br />
# Set your DEFAULT device to the softvol plug-in<br />
# NOT to a hardware card device<br />
#<br />
# The "!" means completely override the previous default<br />
# Not just changing/adding to it.<br />
pcm.!default {<br />
type plug<br />
slave.pcm "softvol"<br />
}<br />
<br />
# Configure softvol<br />
pcm.softvol {<br />
type softvol<br />
<br />
# Send softvol's output to dmix<br />
slave {<br />
pcm "dmix"<br />
# If you wanted to you could send the output to a card directly<br />
# But in most cases it's better to send it to dmix and let<br />
# dmix handle where to send it. You can add a whole extra section<br />
# to configure dmix and where it sends output, but I'm<br />
# not covering that here.<br />
<br />
## Use Card 0 Device 0 instead of dmix<br />
# pcm "hw:0,0"<br />
## Use Card 2 Device 0 instead of dmix<br />
# pcm "hw:2,0"<br />
}<br />
<br />
# Add a control slider in your mixer interfaces<br />
# i.e. KMix and alsamixer<br />
control {<br />
name "Pre-Amp"<br />
card 0 #<CardNumberYouWantControlToShowOn> i.e. card 0 or card 2<br />
}<br />
<br />
# Minimum dB when slider is at 0%<br />
min_dB -5.0<br />
<br />
# Maximum DB when slider is at 100%<br />
max_dB 40.0<br />
<br />
# How many levels the slider should go through<br />
# i.e. how granular do you want your control to be<br />
resolution 12<br />
}<br />
<br />
</pre><br />
Taken from [https://web.archive.org/web/20160316004932/http://blog.tpa.me.uk/2013/10/23/alsa-pre-amp-volume-boost-the-simple-explanation/ here].<br />
'''WARNING:''' It is possible to permanently damage your loudspeakers if you turn it up too much!<br />
<br />
=== Network ===<br />
<br />
==== Wired ====<br />
<br />
There is a small port on the right side for Ethernet. An adaptor is required. In case of loss of the adaptor, the part number is for ordering is 04X6435.<br />
<br />
==== Wireless ====<br />
<br />
Works out of the box. The module {{ic|iwlwifi}} should be automatically loaded by [[udev]].<br />
<br />
{{hc|$ lspci|<br />
Network controller: Intel Corporation Wireless 7260 (rev 83)<br />
}}<br />
<br />
=== Display ===<br />
<br />
==== Touchscreen ====<br />
<br />
Works out of the box as single touch. The hardware is multitouch, but current stable drivers only support left-click mouse emulation.<br />
<br />
==== GPU ====<br />
<br />
The video card installed is an integrated Intel Haswell GPU. See [[intel]] for more info.<br />
<br />
==== HiDPI ====<br />
<br />
Since the display has such a high pixel density, you might encounter problems. See here: [[HiDPI]]<br />
<br />
==== Xbindkeys ====<br />
For alternative window managers (Fluxbox, etc..), try installing [[xbindkeys]] and adding the following to {{ic|~/.xbindkeysrc}}<br />
<br />
{{bc|<br />
"xbacklight -dec 5"<br />
XF86MonBrightnessDown<br />
"xbacklight -inc 5"<br />
XF86MonBrightnessUp<br />
}}<br />
<br />
=== KMS ===<br />
Get [[KMS]] working by adding i915 to the modules line<br />
{{hc|/etc/mkinitcpio.conf|2=<br />
MODULES="i915"<br />
}}<br />
<br />
Then regenerate your [[initramfs]]:<br />
# mkinitcpio -p linux<br />
<br />
=== Webcam ===<br />
Works out of the box.<br />
<br />
=== Fingerprint Reader ===<br />
The fingerprint reader is a Validity Sensors model (138a:0017) also used on the Thinkpad X240 and T440. ThinkFinger does NOT support this reader.<br />
<br />
This fingerprint reader requires libfprint to be build from the current git (https://github.com/ars3niy/fprint_vfs5011.git ) as yet no stable fprint release supports it. <br />
<br />
=== WWAN (Mobile broadband) ===<br />
The SIM-card must be inserted in the back of the laptop.<br />
<br />
This is usually a Sierra Wireless EM7345. It uses the cdc_mbim kernel module from kernel 3.14 forward. Since Gnome 3.14.1 it works with NetworkManager after installing modemmanager (after a reboot to catch the udev event).<br />
<br />
=== GPS ===<br />
<br />
This is provided by the Sierra Wireless EM7345. mbim_gpsd is required as well as a udev rule.<br />
<br />
Untested<br />
<br />
=== Bluetooth ===<br />
<br />
Works out of the box after enabling bluetooth.service.<br />
<br />
== Other hardware ==<br />
<br />
=== Docking ===<br />
This model comes with a OneLink dock port, next to the power adaptor. Out of the box, it is covered with a rubber cap that can be removed easily. Tested with OneLink Pro dock.<br />
<br />
Since Kernel 4.12 the touchpad and mousenipple stops working when the notebook is disconnected from the Dockingstation. A temporary solution is to reload the mouse kernel module:<br />
$ rmmod psmouse && modprobe psmouse<br />
<br />
==== Audio ====<br />
Audio works out of the box, but presents as a separate sound card.<br />
<br />
==== Video ====<br />
The dock has DisplayPort and DVI on the back, and either work, but only one at a time. Second external monitor can still be connected to the mini-DisplayPort directly on the laptop.<br />
<br />
==== Other ports ====<br />
All other ports on the dock work as expected.</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon_(Gen_3)&diff=509936Lenovo ThinkPad X1 Carbon (Gen 3)2018-02-06T08:51:37Z<p>Aorth: Use HTTPS for ThinkWiki links</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon (Gen 3)]]<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 2)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 4)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 5)}}<br />
{{Related articles end}}<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
== Model description ==<br />
<br />
Lenovo ThinkPad X1 Carbon, Gen 3. <br />
<br />
* No optical drive.<br />
* [[UEFI]] with BIOS-legacy fallback mode.<br />
<br />
To ensure you have this version, run ''dmidecode'':<br />
<br />
{{bc|# dmidecode -t system &#124; grep Version<br />
<br />
Version: ThinkPad X1 Carbon 3rd<br />
}}<br />
<br />
Options:<br />
<br />
* There is a version with a touch screen<br />
* The integrated mobile broadband can be upgraded to a LTE Sierra EM7345<br />
<br />
=== Support ===<br />
<br />
{| class="wikitable"<br />
| '''Device''' || '''Working'''<br />
|-<br />
| [[Intel graphics]] || {{Yes}}<br />
|-<br />
| [[Wireless network configuration#iwlwifi]] || {{Yes}}<br />
|-<br />
| Mobile broadband || ??<br />
|-<br />
| [[ALSA]] || {{Yes}}<br />
|-<br />
| [[Touchpad]] || {{Yes}}<br />
|-<br />
| [[Touchscreen]] || {{Yes}}<br />
|-<br />
| [[TrackPoint]] || {{Yes}}<br />
|-<br />
| Camera || {{Yes}}<br />
|-<br />
| [[Fingerprint Reader]] || {{Yes}}<br />
|-<br />
| [[Power management]] || {{Yes}}<br />
|-<br />
| [[Bluetooth]] || {{Yes}}<br />
|}<br />
<br />
== Configuration ==<br />
<br />
=== Touchpad ===<br />
<br />
Install {{Pkg|xf86-input-libinput}} and see [[libinput]] for configuration.<br />
<br />
The correct driver is called '''SynPS/2 Synaptics TouchPad'''.<br />
<br />
<br />
Enable Natural scrolling: First get the current settings:<br />
<br />
xinput list-props "SynPS/2 Synaptics TouchPad" | grep "Synaptics Scrolling Distance"<br />
<br />
It shows on my laptop:<br />
<br />
Synaptics Scrolling Distance (301): 114, 114<br />
<br />
Set these two values to negative to reverse the scrolling orientation:<br />
<br />
xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Scrolling Distance" -114 -114<br />
<br />
Similarly, to set tap actions with 1/2/3 fingers:<br />
<br />
xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" 0 0 0 0 1 3 2<br />
<br />
and enable two-finger scrolling in all directions:<br />
<br />
xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Two-Finger Scrolling" 1 1<br />
<br />
To enable the above settings on login, put all those "set-prop" commands into your '''~/.xprofile'''.<br />
<br />
=== Audio ===<br />
<br />
Works with [[PulseAudio]] and [[ALSA]] installed. The built-in speakers, headphone, and mic all work. <br />
<br />
<br />
Some users have experienced problems with white noise and popping/cracking sounds when audio is first played and when the computer is turned off.<br />
<br />
To fix this, blacklist snd_hda_codec_realtek.<br />
{{bc|# echo "blacklist snd_hda_codec_realtek" >> /etc/modprobe.d/blacklist.conf<br />
}}<br />
<br />
=== Display ===<br />
<br />
There are three options for displays:<br />
<br />
* 14" FHD TN (1920 x 1080): Works<br />
* 14" WQHD+ (2560 x 1440): Works, see [[HiDPI]] for configuration.<br />
* 14" WQHD+ (2560 x 1440) Touch Screen: Works, see [[HiDPI]] for configuration.<br />
<br />
Install {{Pkg|xf86-video-intel}} to drive the display. <br />
<br />
{{Pkg|xorg-xbacklight}} works fine to adjust brightness levels.<br />
<br />
==== HDMI ====<br />
<br />
Works with [[xrandr]]. Use {{Pkg|arandr}} or {{Pkg|lxrandr}} for a GUI.<br />
<br />
=== Fingerprint Reader ===<br />
<br />
There are stable releases of {{Pkg|fprintd}} that support this device. See [[Fprint]] for more details about how to configure it.<br />
<br />
To display the reader's model:<br />
<br />
{{bc|# lsusb &#124; grep -i finger<br />
<br />
Bus 001 Device 004: ID 138a:0017 Validity Sensors, Inc. Fingerprint Reader<br />
}}<br />
Note that recent versions of {{Pkg|fprintd}} have been broken for this model : One was able to enroll a finger but recognition always failed. With version 0.7.0-1 everything works.<br />
<br />
=== WiFi ===<br />
There are several cards used - all should be covered by iwlwifi:<br />
<br />
* Intel Wireless-N 7265, 2x2, 802.11b/g/n<br />
* Intel Dual Band Wireless-N 7265, 2x2 802.11a/b/g/n<br />
* Intel Dual Band Wireless-AC 7265, 2x2, 802.11a/b/g/n/ac<br />
<br />
==== Bluetooth ====<br />
<br />
All cards feature BT4.0 connectivity and should work out of the box when starting the bluetooth service<br />
<br />
=== WWAN ===<br />
<br />
There are several cards used<br />
<br />
* Ericsson N5321 (3.5G)<br />
* Sierra Wireless EM7345 (4G)<br />
<br />
EM7345: SIM-Problems, TBD<br />
<br />
==== GPS ====<br />
<br />
N5321 is unknown<br />
EM7345 can output GPS using AT-Commands. You can use [https://github.com/tuxmaster/gpsd-tcp|gpsd-tcp] to interface to gpsd.<br />
<br />
== See also ==<br />
<br />
* [https://push.cx/2015/dual-booting-arch-linux-on-lenovo-x1-carbon-3rd-gen Dual-Booting Arch Linux on Lenovo X1 Carbon 3rd gen]<br />
* [http://natalian.org/archives/2015/02/18/Archlinux_on_a_Lenovo_X1C3/ X1C3 on Archlinux]<br />
* [https://www.thinkwiki.org/wiki/Category:X1_Carbon_(3rd_Gen) ThinkWiki]</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon_(Gen_4)&diff=509935Lenovo ThinkPad X1 Carbon (Gen 4)2018-02-06T08:51:10Z<p>Aorth: Use HTTPS for ThinkWiki links</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon (Gen 4)]]<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 2)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 3)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 5)}}<br />
{{Related articles end}}<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
== Model description ==<br />
<br />
Lenovo ThinkPad X1 Carbon, Gen 4.<br />
<br />
To ensure you have this version, run ''dmidecode'':<br />
<br />
{{bc|# dmidecode -t system &#124; grep Version<br />
<br />
Version: ThinkPad X1 Carbon 4th<br />
}}<br />
<br />
=== UEFI ===<br />
Updating the UEFI works like described here: [https://www.thinkwiki.org/wiki/BIOS_Upgrade#Using_UEFI link ThinkWiki BIOS Upgrade/Using UEFI].<br />
<br />
=== Support ===<br />
<br />
{| class="wikitable"<br />
| '''Device''' || '''Working'''<br />
|-<br />
| [[Intel graphics]] || {{Yes}}<br />
|-<br />
| [[Wireless network configuration#iwlwifi]] || {{Yes}}<br />
|-<br />
| Mobile broadband || ??<br />
|-<br />
| [[ALSA]] || {{Yes}}<br />
|-<br />
| [[Touchpad]] || {{Yes}}<br />
|-<br />
| [[TrackPoint]] || {{Yes}}<br />
|-<br />
| Camera || {{Yes}}<br />
|-<br />
| Fingerprint Reader || {{No}}<br />
|-<br />
| [[Power management]] || {{Yes}}<br />
|-<br />
| [[Bluetooth]] || {{Yes}}<br />
|-<br />
| microSD card reader || {{Yes}}<br />
|}<br />
<br />
===Fingerprint Reader===<br />
The fingerprint reader included with this model `138a:0090 Validity Sensors, Inc` currently lacks a linux driver. [https://bugs.freedesktop.org/show_bug.cgi?id=94536 libfprint bugreport]. Synaptics (which has acquired 'Validity Sensors') has unofficially said that they cannot disclose the protocol, but may possibly release a binary driver.<br />
<br />
Open source Linux driver is being developed by reverse engineering the Windows driver. [https://github.com/nmikhailov/Validity90]<br />
<br />
== Configuration ==<br />
<br />
=== Display ===<br />
<br />
There are two options for displays:<br />
<br />
* 14" FHD IPS (1920 x 1080): Works<br />
* 14" WQHD (2560 x 1440): Works<br />
<br />
HDMI: Works<br />
<br />
Mini DisplayPort: Works<br />
<br />
=== OneLink+ ===<br />
RJ45-Adapter: Works<br />
<br />
==== Dock ====<br />
Ethernet: Works<br />
<br />
DisplayPort: Works<br />
<br />
Audio: Works<br />
<br />
VGA: Works<br />
<br />
=== WiFi ===<br />
There are several cards used:<br />
<br />
* Intel Dual Band Wireless-AC 8260, 2x2<br />
* Intel WiGig 18260 AC 2x2<br />
<br />
==== Bluetooth ====<br />
<br />
All cards feature BT4.1 connectivity and should work out of the box when starting the bluetooth service<br />
<br />
=== WWAN ===<br />
<br />
There are several cards used<br />
* 4G LTE (Huawei ME906S)<br />
* Qualcomm Snapdragon X7 LTE-A (Sierra Wireless EM7455)<br />
<br />
<br />
== See also ==<br />
<br />
* [https://kozikow.wordpress.com/2016/06/03/installing-and-configuring-arch-linux-on-thinkpad-x1-carbon/ Installing and configuring arch linux on thinkpad X1 Carbon (Gen 4), complete guide]</div>Aorthhttps://wiki.archlinux.org/index.php?title=Lenovo_ThinkPad_X1_Carbon_(Gen_5)&diff=509934Lenovo ThinkPad X1 Carbon (Gen 5)2018-02-06T08:50:25Z<p>Aorth: Use HTTPS for ThinkWiki link</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:Lenovo ThinkPad X1 Carbon (Gen 5)]]<br />
{{Related articles start}}<br />
{{Related|Lenovo ThinkPad X1 Carbon}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 2)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 3)}}<br />
{{Related|Lenovo ThinkPad X1 Carbon (Gen 4)}}<br />
{{Related articles end}}<br />
<br />
{{tip| A great resource for thinkpads is https://www.thinkwiki.org/wiki/ThinkWiki}}<br />
<br />
== Model description ==<br />
<br />
Lenovo ThinkPad X1 Carbon, Gen 5.<br />
<br />
To ensure you have this version, [[install]] the package {{Pkg|dmidecode}} and run:<br />
<br />
{{bc|# dmidecode -t system &#124; grep Version<br />
<br />
Version: ThinkPad X1 Carbon 5th<br />
}}<br />
<br />
=== Support ===<br />
<br />
{| class="wikitable"<br />
| '''Device''' || '''Working'''<br />
|-<br />
| [[Intel graphics]] || {{Yes}}<br />
|-<br />
| [[Wireless network configuration#iwlwifi]] || {{Yes}}<br />
|-<br />
| Native Ethernet with [http://shop.lenovo.com/us/en/itemdetails/4X90F84315/460/D60A78A4A48A422E9761BD184AD3750A Dongle] || {{Yes}}<br />
|-<br />
| Mobile broadband || {{Yes}}<br />
|-<br />
| [[ALSA]] || {{Yes}}<br />
|-<br />
| [[Touchpad]] || {{Yes}}<br />
|-<br />
| [[TrackPoint]] || {{Yes}}*<br />
|-<br />
| Camera || {{Yes}}<br />
|-<br />
| Fingerprint Reader || {{No}}<br />
|-<br />
| [[Power management]] || {{Yes}}<br />
|-<br />
| [[Bluetooth]] || {{Yes}}<br />
|-<br />
| microSD card reader || {{Yes}}<br />
|}<br />
<br />
* Lenovo uses several different trackpoint types in the 5th generation X1 Carbon. Only the standard ALPS variant has Linux support.<br />
<br />
===Fingerprint Reader===<br />
The fingerprint reader included with this model `138a:0097 Validity Sensors, Inc` currently lacks a linux driver. [https://bugs.freedesktop.org/show_bug.cgi?id=94536 libfprint bugreport]. Synaptics (which has acquired 'Validity Sensors') has unofficially said that they cannot disclose the protocol, but may possibly release a binary driver.<br />
<br />
Open source Linux driver is being developed by reverse engineering the Windows driver. [https://github.com/nmikhailov/Validity90]<br />
<br />
===Bug: Fans blowing at max speed after resuming===<br />
There is a bug in the current kernel, causing the fans to often go on full throttle non-stop after resuming from suspend-to-ram.<br />
<br />
'''This bug is fixed since the kernel 4.12.4-1.'''<br />
<br />
Set of patches available for older version: https://bugzilla.kernel.org/show_bug.cgi?id=196129#c26<br />
<br />
If you have an older version of the kernel, you need to manually patch the kernel or work around the issue by repeatedly suspend (<kbd>Fn+4</kbd>) and resume (<kbd>Fn</kbd>) until it resumes without the fans starting with a short burst of activity. For me, the issue arises in about 2/3 resumes without the patches and never with kernel <br />
4.12.0-2 with patches.<br />
<br />
===Bug: Trackpoint/Trackpad not working===<br />
Several different trackpoints are used with the X1 Carbon Gen 5. There are at least three different trackpoints in use. You can identify them in dmesg as either LEN0071, LEN0072 or LEN0073. <br />
<br />
There is a bug in Synaptics drivers that prevent both Trackpoint and Trackpad to function properly if Trackpoint is enabled at boot. This issue affects the Elantech trackpoint as well as one of the ALPS variants. <br />
<br />
If you have the Elantech trackpoint, identified as LEN0073 you will see the following in your dmesg log.<br />
<br />
kernel: psmouse serio1: TouchPad at isa0060/serio1/input0 lost sync at byte 1<br />
kernel: psmouse serio1: TouchPad at isa0060/serio1/input0 lost sync at byte 1<br />
kernel: psmouse serio1: TouchPad at isa0060/serio1/input0 lost sync at byte 1<br />
kernel: psmouse serio1: TouchPad at isa0060/serio1/input0 lost sync at byte 1<br />
kernel: psmouse serio1: TouchPad at isa0060/serio1/input0 lost sync at byte 1<br />
kernel: psmouse serio1: issuing reconnect request<br />
<br />
====Solution 1====<br />
Installing {{AUR|linux-tp-x1-carbon-5th}} fixes this, see https://gist.github.com/ursm/6d1007f44a1d6beeb670b3c3a6a78ea4. Note that this only works on the Elantech trackpoint (LEN0073).<br />
<br />
====Solution 2====<br />
Since kernel v4.14 you can workaround this by adding {{ic|1=psmouse.synaptics_intertouch=1}} to your [[kernel parameters]].<br />
<br />
===Bug: System occasionally hanging during startup===<br />
Using the SDDM login manager, the system hangs on every second or third boot on startup before X starts. This is caused by a bug in version 0.16.0 of SDDM, reported here:<br />
<br />
https://github.com/sddm/sddm/issues/905<br />
<br />
It can be solved by letting SDDM wait a little bit before starting. Just create the file '''/etc/systemd/system/sddm.service.d/override.conf''' with this content:<br />
{{bc|1=[Service]<br />
ExecStartPre=/bin/sleep 2<br />
}}<br />
<br />
'''this bug is fixed as of sddm-0.16.0-3'''<br />
<br />
== Configuration ==<br />
<br />
=== Keyboard Fn Shortcuts ===<br />
* Fn+4 sends XF86Sleep (puts computer to sleep by default)<br />
* Fn+S sends Alt_L+Sys_Req<br />
* Fn+P sends Pause<br />
* Fn+B sends Control_L+Break<br />
* Fn+K sends Scroll_Lock<br />
* Fn+Space toggles the keyboard backlight<br />
* Fn by itself sends XF86WakeUp (wakes computer from sleep by default)<br />
<br />
=== Display ===<br />
<br />
There are two options for displays:<br />
<br />
* 14" FHD IPS (1920 x 1080): Works<br />
* 14" WQHD (2560 x 1440): Works<br />
<br />
=== Backlight Control ===<br />
I had issues with the thinkpad_acpi module in linux-4.12 and linux-4.13. When loaded no acpi events are generated for Fn+F5 and Fn+F6 keypress by default, because<br />
{{bc|<br />
kernel: thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver<br />
kernel: thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...<br />
kernel: thinkpad_acpi: Standard ACPI backlight interface available, not loading native one<br />
}}<br />
Setting the acpi_brightness=vendor kernel parameter helped but gave issues with brightness save/restore. In linux-4.14 this issue is resolved.<br />
<br />
=== TrackPoint Scrolling ===<br />
TrackPoint Scrolling is working out of the box in GNOME and MATE.<br />
In some WindowManagers, the TrackPoint middle-button scrolling can be enabled by [[installing]] the {{Pkg|xorg-xinput}} package from the [[official repositories]] and appending the following line to your [[.xinitrc]]:<br />
{{bc|xinput set-prop "TPPS/2 IBM TrackPoint" "libinput Scroll Method Enabled" 0 0 1}}<br />
<br />
=== Lenovo ThinkPad Thunderbolt 3 Dockingstation ===<br />
The USB-C Dock is a Thunderbolt 3 device. Plugging it in results in a whole lot of PCI entries:<br />
<br />
06:00.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)<br />
07:00.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)<br />
07:01.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)<br />
07:02.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)<br />
07:04.0 PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)<br />
3c:00.0 USB controller: Intel Corporation Device 15d4 (rev 02)<br />
<br />
The dock works nearly perfect out of the box with Kernel 4.10.13. Even hot plugging works: unplugging the dock while a display is connected just lets all the devices disappear. Replugging it later works, all the USB devices come back up automagically, thought you might need to issue a xrandr to get the display showing again (tested with Xorg based i3 setup).<br />
<br />
<br />
==== Ethernet ====<br />
<br />
The r8152 based USB Ethernet Port does not work out of the box. It gives the message:<br />
[ 7.574773] r8152 4-1.1:1.0 (unnamed net_device) (uninitialized): Unknown version 0x6010<br />
Installing {{AUR|r8152-dkms}} fixes this (the DKMS module adds the version 0x6010 to the module).<br />
<br />
==== USB ====<br />
<br />
In order for the internal USB hub in the dock to work without having to boot with the dock connected to your computer, you need to set "Security Level" to "No Security" under Thuderbolt settings in BIOS. Also remember to enable the "Support in pre boot environment" for USB peripherals connected to the dock to work at all.<br />
<br />
=== HP Thunderbolt 3 Dock ===<br />
The HP Thunderbolt 3 Dock is working out of the box.<br />
<br />
=== Lenovo p27h-10 (USB Type C) ===<br />
Charging while using the monitor via USB-Type-C is working but the dock functionality needs investigation (e.g. speakers, mouse, directly from the monitor).</div>Aorthhttps://wiki.archlinux.org/index.php?title=Laptop/Lenovo&diff=484589Laptop/Lenovo2017-08-08T08:57:54Z<p>Aorth: /* X series */ Add link to existing X1 Carbon (Gen 5) page</p>
<hr />
<div>[[Category:Lenovo]]<br />
[[ja:ノートパソコン/Lenovo]]<br />
{{Laptops navigation}}<br />
<br><br />
== IBM/Lenovo ==<br />
<br />
=== ThinkPad ===<br />
<br />
==== 300 series ====<br />
<br />
{{HCL/Laptops table header}}<br />
| IBM ThinkPad 380ED || NA|| NA || NA || NA || No || NA || NA || NA || ||<br />
|-<br />
|}<br />
<br />
==== Edge series ====<br />
<br />
{{HCL/Laptops table header}}<br />
| [[Lenovo ThinkPad Edge E330]] || NA || Yes || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad Edge E335]] || NA || Yes || Yes || Yes || Yes || NA || Yes || NA || ||<br />
|-<br />
| Lenovo ThinkPad Edge E420s || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || SDcard (Yes), Webcam (Yes), Trackpoint (No) || <br />
|-<br />
| [[Lenovo ThinkPad Edge E430]] || Yes || Yes || Yes* || Yes* || Not tested || Yes || NA || NA || SD card (yes) || <br />
|-<br />
| [[Lenovo ThinkPad Edge E455]] || 2015.04.01 || Yes* || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
| Lenovo ThinkPad Edge E530 || Yes || Yes || Yes* || Yes* || Yes || Yes || NA || NA || SD card (yes), Finger Print (not tested) || <br />
|-<br />
| Lenovo ThinkPad Edge E540 || 2015.08.01 || Yes || Yes || Yes || Yes || Yes || Yes* || NA || SD card (yes), Finger Print (yes), touch pad and trackpoint (yes), Webcam (yes) || <br />
|-<br />
|}<br />
<br />
==== L series ====<br />
<br />
{{HCL/Laptops table header}}<br />
| Lenovo ThinkPad L420 || Yes || Yes || Yes || Yes || Yes || Not tested || Yes || NA || ||<br />
|-<br />
| Lenovo ThinkPad L430 || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || Trackpoint* ||<br />
|-<br />
| Lenovo ThinkPad L530 || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || Trackpoint*, Fingerprint reader ||<br />
|-<br />
|}<br />
<br />
==== P series ====<br />
<br />
{{HCL/Laptops table header}}<br />
| [[Lenovo ThinkPad P50]] || 2016.04 || Yes || Yes || Yes || Yes || Yes || Suspend working, hibernate not tested || NA || SD card (Yes), Webcam (Yes), Fingerprint Reader (No), || Wifi requires Kernel 4.3.3+ <br />
|-<br />
| [[Lenovo ThinkPad P70]] || 2016.04 || Yes || Yes || Yes || Yes || Yes || Suspend working, hibernate not tested || NA || SD card (Yes), Webcam (Yes), Fingerprint Reader (No), || Wifi requires Kernel 4.3.3+ <br />
|-<br />
|}<br />
<br />
==== R series ====<br />
{{HCL/Laptops table header}}<br />
| IBM ThinkPad R50 || Yes || Yes || Yes || Yes || NA || Yes || Yes || Infrared* || ||<br />
|-<br />
| IBM ThinkPad R52 || Yes || Yes || Yes || Yes || NA || Yes || Yes || Infrared* || ||<br />
|-<br />
| Lenovo ThinkPad R60 || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
|}<br />
<br />
==== T series ====<br />
<br />
{{HCL/Laptops table header}}<br />
| [[IBM ThinkPad T21]] || Yes* || Yes || Yes || NA || NA || Yes* || NA || NA || See below ||<br />
|-<br />
| [[IBM ThinkPad T23]] || Yes || Yes || Yes || NA || NA || Yes || NA || NA || ||<br />
|-<br />
| [[IBM ThinkPad T42]] || Yes || Yes || Yes || Yes || NA || Yes || NA || NA || ||<br />
|-<br />
| IBM ThinkPad T60 || Yes || Yes || Yes || Yes || Yes || Yes || ? || NA || ||<br />
|-<br />
| IBM ThinkPad T60p || Yes || Yes || Yes || Yes || Yes || Yes || ? || NA || ThinkFinger ||<br />
|-<br />
| [[IBM ThinkPad T61]] || Yes || Yes || Yes || Yes || Yes || Yes || NA || || ||<br />
|-<br />
| IBM ThinkPad T61p || Yes || Yes || Yes || Yes || Yes || Yes || NA || || ||<br />
|-<br />
| [[Lenovo ThinkPad T400]] || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad T400s]] || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| Lenovo ThinkPad T410 || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad T420]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || Card reader tested, no Fingerprint scanner||<br />
|-<br />
| [[Lenovo ThinkPad T420s]] || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || Card Reader ||<br />
|-<br />
| [[Lenovo ThinkPad T430]] || Yes || Yes || Yes || Yes || Yes || Yes* || Yes* || Not tested || ||<br />
|-<br />
| [[#Lenovo_ThinkPad_T440p|Lenovo ThinkPad T440p]] || Yes || Yes || Yes || Yes || Yes || Yes* || NA || NA || Card Reader || See below<br />
|-<br />
| [[Lenovo ThinkPad T440s]] || Yes || Yes || Yes || Yes || Yes* || ? || Yes || ? || || See wiki page for more details about wireless<br />
|-<br />
| [[Lenovo ThinkPad T450s]] || 2015.10.01 || Yes || Yes || Yes || Yes || Yes || ? || NA || SD Card reader; fingerprint scanner|| <br />
|-<br />
| [[Lenovo ThinkPad T460s]] || Yes || Yes || no beep || Yes || Yes || Yes || ? || NA || SD Card reader|| <br />
|-<br />
| [[Lenovo ThinkPad T470s]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD Card reader; fingerprint scanner|| <br />
|-<br />
| Lenovo ThinkPad T500 || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad T520]] || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad T530]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad T550]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || DisplayPort ||<br />
|-<br />
| [[Lenovo ThinkPad T560]] || Yes || Yes || Yes || Yes || Yes || No* || Yes* || NA || MiniDP; Fingerprint scanner; Intel + Nvidia GPU; Card Reader || See special notes for the hardware specifications of this test device<br />
|-<br />
| [[Lenovo ThinkPad T570]] || Yes || Yes || Yes || Yes || Yes || ? || Yes* || NA || not yet fully tested || <br />
|}<br />
<br />
==== W series ====<br />
{{HCL/Laptops table header}}<br />
|-<br />
| Lenovo ThinkPad W510 || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD card (Yes), Webcam (Yes), Touchscreen (Yes), Fingeprint Reader (Not tested) || Tested April 2017 / Linux 4.10.8<br />
|-<br />
| Lenovo ThinkPad W540 || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD card (Yes), Webcam (Yes), Fingeprint Reader (Yes) || Tested April 2017 / Linux 4.10.8<br />
|-<br />
| Lenovo ThinkPad W550s || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD card (Not tested), Webcam (Yes), Fingeprint Reader (Yes) ||<br />
|-<br />
|}<br />
<br />
==== X series ====<br />
<br />
{{HCL/Laptops table header}}<br />
| IBM ThinkPad X23 || Yes || Yes || Yes || NA || NA || Yes || NA || NA || ||<br />
|-<br />
| [[IBM ThinkPad X60s]] || Yes|| Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| Lenovo ThinkPad X61s || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD slot ||<br />
|-<br />
| [[Lenovo ThinkPad X100e]] || Yes|| Yes || Yes || Yes || Yes || Yes || Not tested || NA || SD card (Yes), Webcam (Yes) ||<br />
|-<br />
| [[Lenovo ThinkPad X200]] || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad X200S]] || Yes || Yes || Yes || Yes || Yes || Not tested || NA || Not tested || Everything worked out of the box. However, fingerprint, SD card and webcam were not tested ||<br />
|-<br />
| [[Lenovo ThinkPad X201]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || Not tested || ||<br />
|-<br />
| [[Lenovo ThinkPad X220]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD card (Yes), Webcam (Yes) ||<br />
|-<br />
| [[Lenovo ThinkPad X230]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD card (Yes), Webcam (Yes), UMTS Modem (Yes) ||<br />
|-<br />
| [[Lenovo ThinkPad X250]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || SD card (Yes), Webcam (Yes), Fingerprint (yes) ||<br />
|-<br />
| [[Lenovo ThinkPad X270]] || Yes || Yes || Yes || Yes || Yes || Not tested || Yes || NA || Webcam (yes) ||<br />
|-<br />
| [[Lenovo ThinkPad X1 Carbon]] || NA || Yes || Yes || Yes || Yes || Proprietary/nonfree || Yes || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad X1 Carbon (Gen 2)]] || NA || Yes || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad X1 Carbon (Gen 3)]] || NA || Yes || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad X1 Carbon (Gen 4)]] || NA || Yes || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
| [[Lenovo ThinkPad X1 Carbon (Gen 5)]] || NA || Yes || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
|}<br />
<br />
==== Yoga Series ====<br />
{{HCL/Laptops table header}}<br />
| [[Lenovo ThinkPad Yoga 260]] || USB || Yes || Yes || Yes || Yes || Yes || Unknown || Yes || SD card (Yes), Webcam (Yes), Fingerprint Reader (Unknown), Touchscreen (Yes), Tablet (Partial), Accelerometer (No) || Wifi requires Kernel 4.3.3+<br />
|-<br />
|}<br />
<br />
== Lenovo ==<br />
<br />
=== IdeaPad ===<br />
<br />
{{HCL/Laptops table header}}<br />
| [[Lenovo IdeaPad Flex 10]] || Yes || Yes* || Yes || NA || Yes || Yes || Yes || NA || Touchscreen* ||<br />
|-<br />
| [[Lenovo IdeaPad S10]] || Yes || Yes || Yes || Yes || Yes || Yes || NA || NA || ||<br />
|-<br />
| [[Lenovo IdeaPad S400 Touch]] || Yes || Yes || Yes || Yes || Yes || Yes || Not tested || NA || ||<br />
|-<br />
| Lenovo IdeaPad U430p || Yes || Yes || Yes || Yes || Yes || Yes || Not tested || NA || ||<br />
|-<br />
| Lenovo IdeaPad Y700 || 2015.12.01 || Yes || Yes* || Yes || Yes || Yes || Not tested || NA || Trackpad - [https://unix.stackexchange.com/questions/362165/lenovo-y700-elantech-touchpad-query-0x01-failed buggy] || [https://bugzilla.kernel.org/show_bug.cgi?id=151681 Trackpad requires pata_legacy to be blacklisted]<br />
|-<br />
| [[Lenovo IdeaPad Z580]] || Yes || Yes || Yes || Yes || Yes || Yes || Yes || NA || ||<br />
|-<br />
|}<br />
<br />
=== B series ===<br />
<br />
{{HCL/Laptops table header}}<br />
| Lenovo B50 || NA || Yes || Yes || Yes || Yes || Not tested || Not tested || Not tested || ||<br />
|-<br />
| Lenovo B50-70 || Yes || Yes* ||Yes || Yes || Yes || Yes || Not tested || NA || See below* ||<br />
|-<br />
| Lenovo B450 || Yes || Yes ||Yes || Yes || Yes || NA || Not tested || NA || ||<br />
|-<br />
|}<br />
<br />
=== K series ===<br />
<br />
{{HCL/Laptops table header}}<br />
| Lenovo K450e || NA || Yes || Yes || Yes || Yes || Not tested || Yes || Not tested || ||<br />
|-<br />
|}<br />
<br />
=== N series ===<br />
<br />
{{HCL/Laptops table header}}<br />
| Lenovo N200 (3000) || Yes || Yes* || Yes || Yes || Yes || Yes* || NA || NA || See below ||<br />
|-<br />
|}<br />
<br />
=== S series ===<br />
<br />
{{HCL/Laptops table header}}<br />
| Lenovo S21e-20 || 2015.07.01 || Yes || Yes || NA || Yes* || ? || Yes || NA || SD Card (Yes), USB 3.0 (Yes), HDMI Out (?), Touchpad (Yes*) ||<br />
|-<br />
|}<br />
<br />
=== U Series ===<br />
<br />
{{HCL/Laptops table header}}<br />
| Lenovo U31-70 || 2015.10.01 || Yes || Yes || Yes || Yes* || Yes || Yes || NA || SD Card (Yes), USB 3.0 (Yes), HDMI Out (Yes), Touchpad (Yes), Webcam (Yes) ||<br />
|-<br />
|}<br />
<br />
== Special Notes (*): ==<br />
<br />
{{Accuracy|Lots of vague or unproven bugs/workarounds, poor writing}}<br />
<br />
=== Lenovo U31-70 ===<br />
Wireless needs {{Pkg|linux}} >= 4.3 and latest {{Pkg|linux-firmware}}, both packages are currently in testing. Copy one of the firmware blobs {{ic|eeprom_ar6320_2p1_NFA345i.bin}} or {{ic|eeprom_ar6320_2p1_NFA345i_highTX.bin}} from the windows driver to {{ic|/usr/lib/firmware/ath10k/QCA6174/hw2.1/board-pci-168c:0041:17aa:3545.bin}}.<br />
<br />
Wireless with firmware blobs from windows driver may no longer work on {{Pkg|linux}} >= 4.4. Download firmware blob https://github.com/kvalo/ath10k-firmware/blob/f428f53b36b144971c9c4c3d2ebd5fa8cae86c89/QCA6174/hw2.1/board-2.bin and copy it to {{ic|/usr/lib/firmware/ath10k/QCA6174/hw2.1/board-2.bin}}. Tested with {{Pkg|linux}} 4.4.5-1 and {{Pkg|linux-firmware}} 20160113.40e9ae8-1nu<br />
<br />
With packages {{Pkg|linux}} 4.6.1-2 and {{Pkg|linux-firmware}} 20160516.80d463b-1 being in stable, wireless works without any additional steps needed.<br />
<br />
=== Lenovo B50-70 ===<br />
* UEFI:<br />
** to be able to disable Secure Boot (necessary for dual boot, not needed for Linux only), you have to switch from "UEFI first" to "UEFI only" (or something like this) in UEFI setup menu; the Secure Boot option appears then on the Security tab<br />
** after UEFI update having Linux and Windows installed, the Linux bootloader ceased to be the default one, UEFI started to load Windows by default and it was impossible to select the Linux one in the UEFI boot menu and in the UEFI setup - reinstalling the bootloader helped; having no access to a boot media that supports UEFI, a solution might be also replacing the Windows EFI bootloader file with a Linux one temporalily, in order to be able to boot Linux from HDD<br />
** for the UEFI update, a Windows OS is needed<br />
* Touchpad:<br />
** Synaptics - works after installing Synaptics drivers from repo, possible to change behaviour (like reaction for double tap) according to your wish<br />
* Video:<br />
** in laptops with dual video card (Intel and ATI) - detects both, Intel is active as a default, not checked if it's possible at all to switch between them<br />
<br />
==== Operation with a HDD caddy ====<br />
When you install an SSD in the place of the plate HDD drive and you want to have your HDD still inside the laptop, it is possible to install it in the place of the optical drive in a special "HDD caddy". The optical drive is of 9 mm height, but a 9,5 mm caddy (ultra slim) fits in the slot. A caddy with a SATA interface is needed. It is difficult to separate the front bezel from the original optical drive (and opening its case does not help, but brings a danger of making a mess in the opening mechanism; the only option is just to pull the bezel using a bit of force, but you risk breaking the latches).<br />
<br />
While the HDD installed instead of the optical drive operates flawlessly in Windows, it wasn't going to work out of the box in Linux, at least in one case. The kernel tries to establish a connection with the disk, but fails to do it (''SATA link down'' entry in /var/log/messages). The solution is to force a 1.5 Gbps transfer speed (instead of 6 Gbps) by adding a ''libata.force='' kernel parameter. See [https://www.kernel.org/doc/Documentation/kernel-parameters.txt] for details.<br />
<br />
=== Lenovo K450e ===<br />
<br />
After installing Arch Linux and booting, a single beep may be heard. To disable this beep, press F1 during startup, then change Boot Priority to 'UEFI First', as well as enabling 'CSM'.<br />
<br />
=== ThinkPad X1 Carbon 3rd ===<br />
<br />
* http://natalian.org/archives/2015/02/18/Archlinux_on_a_Lenovo_X1C3/<br />
<br />
=== IBM ThinkPad T21 ===<br />
<br />
* Video: <br />
** Incapable of running DRM at 1024x768 and 24-bit color due to 8 MB VRAM. Must drop color or resolution to get DRM.<br />
** For whatever reason, external VGA output (for an external monitor) was disabled. This was fixed by doing this:<br />
*** {{ic|echo 1 > /proc/acpi/video/VID/DOS}}<br />
<br />
=== Lenovo 3000 N200 ===<br />
<br />
* Sound:<br />
** You may have to append <code>options snd_hda_intel model=lenovo</code> to <code>/etc/modprobe.d/modprobe.conf</code> for sound to work.<br />
<br />
=== IBM ThinkPad R52 ===<br />
<br />
* USB network tethering<br />
** Inbound networking via interface ''usb0'' works.<br />
<br />
=== Lenovo ThinkPad T430 ===<br />
<br />
* Bluetooth (0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]) appears to be functional, even during standby or hibernation.<br />
<br />
=== Lenovo ThinkPad T440p ===<br />
<br />
* ClickPad: the whole trackpad clicks, and disabling the trackpad using older versions of synclient makes the trackpoint essentially unusable. This has been resolved in newer versions of {{Pkg|xf86-input-synaptics}}.<br />
** See [http://who-t.blogspot.com.au/2014/03/xorg-synaptics-support-for-lenovo-t440.html this article] and [http://who-t.blogspot.com.au/2013/12/lenovo-t440-touchpad-button.html previous version].<br />
** Install {{AUR|xf86-input-synlx40}}{{Broken package link|{{aur-mirror|xf86-input-synlx40}}}} and {{AUR|xf86-input-mtrack}} for alternative drivers.<br />
* Audio:<br />
** HDMI audio is the default audio output device. Consult the [[ALSA]] page for details on changing the default.<br />
** As the X100e/Mini10, it's possible to mute the headset and speaker outputs separately to the master. Muting the speaker output improves bass output on the headset port.<br />
** If the system fails to wake from sleep, it can lose sync with the internal audio card and speakers/headphones may fail to work. In this case, put the system to sleep, and wake it again and audio functionality should be restored. <br />
* The fingerprint sensor is a Validity VFS5011, which requires [https://github.com/abbradar/fprint_vfs5011 a patched fprintd] and is apparently highly unreliable.<br />
* thinkpad_acpi:<br />
** Controlling the Fn-Lock, Mute, Mic Mute or 'glowing I' LEDs is apparently not possible.<br />
** fan control does not seem to work.<br />
* Graphics and Video:<br />
** With the integrated GPU, [[xrandr]] can crash while attaching or detaching displays connected via the dock.<br />
** The built-in miniDisplayPort will sometimes spew I²C issues into the kernel log.<br />
** [[Hardware video acceleration]] is highly recommended as it performs significantly better than CPU decoding of large media files.<br />
** '''The BIOS should not be upgraded past version 1.14, as newer BIOSes cause memory corruption when used with Bumblebee.''' See [https://github.com/Bumblebee-Project/bbswitch/issues/78#issuecomment-42741698 Bumblebee GitHub]<br />
* Connectivity:<br />
** Bluetooth is ''extremely'' fragile. The controller works fine most of the time, but can cause the system to wedge totally on sleep/wake cycles, especially if a connection was active at sleep. Disable the controller using {{ic|bluetoothctl}} before sleeping.<br />
<br />
=== Lenovo ThinkPad T560 ===<br />
* Bluetooth couldn't be enabled (no out of the box experience)<br />
* No automatic brightness adjusting when switching power supply battery <-> AC<br />
<br />
<br />
* Hardware specifications of test device<br />
** CPU: Intel CORE i7-6600U @ 2.60GHz<br />
** GPU: Intel HD 520<br />
** GPU: Nvidia GeForce 940MX<br />
** WiFi: Intel 8260<br />
** Ethernet: Intel I219-LM<br />
** Card reader: Realtek RTS522A<br />
<br />
=== Lenovo S21e-20 ===<br />
* Tested with {{Pkg|broadcom-wl-dkms}} 802.11 wireless driver<br />
* Synaptics touchpad required 3 patches to {{Pkg|linux}}:drivers/hid/hid-rmi.c on 2015-07-26 ([https://bugs.freedesktop.org/show_bug.cgi?id=91102 bug report], [https://github.com/harisokanovic/archlinux-packages/commit/f4550c211ca7809ecf926f8074c7b7250a74bd92 kernel recipe patch]). The current 4.3 kernel includes these patches. You will also need to install the xf86_64-input-synaptics package([https://www.archlinux.org/packages/?name=xf86-input-synaptics]) <br />
<br />
==== tpacpi-bat ====<br />
<br />
There is an issue with tpacpi-bat not reporting the right value for the stop threshold. This seems to be related to a buggy BIOS and can not be fixed application wise. <br />
<br />
See https://github.com/teleshoes/tpacpi-bat/issues/44<br />
<br />
==== ThinkPad Edge E420s Delay with Space Bar====<br />
Solution: Update BIOS (at least 1.08).<br />
<br />
=== Lenovo IdeaPad Y700 ===<br />
* The subwoofer does not work out of the box and it seems that there is no solution yet.<br />
<br />
== See also ==<br />
* [http://www.thinkwiki.org/wiki Think wiki]</div>Aorth