lenovo_x1_carbon_7th_generation_vs._ubuntu_19.10

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revisionBoth sides next revision
lenovo_x1_carbon_7th_generation_vs._ubuntu_19.10 [07.11.2019 01:22] – [internal LTE modem does not work] Pascal Suterlenovo_x1_carbon_7th_generation_vs._ubuntu_19.10 [07.11.2019 01:57] – [internal LTE modem does not work] Pascal Suter
Line 15: Line 15:
  
 ===== internal LTE modem does not work ===== ===== internal LTE modem does not work =====
-it is started in PCIe mode bu there are no linux drivers for the module in pcie mode and there will never be pcie drivers+it is started in PCIe mode but there are no linux drivers for the module in pcie mode and there will never be pcie drivers. The module has however also a USB mode and in USB mode it behaves like a normal USB dongle and can be used in Linux as well! 
 + 
 +there is a [[https://github.com/abrasive/xmm7360|script]] available.. called [[https://github.com/abrasive/xmm7360|xmm2usb]] which can be run to switch the modem into usb mode. After switching the modem into usb mode for the first time, the usb mode must be changed from ''0'' to ''7''. Once this is done, ubuntu will detect a broadband modem and off you go.  
 + 
 +The **problem** with this solution is, that you need to run this script every time the PCI card is re-initialized which is at least aver every reboot if not after every wakeup (haven't tried this yet). This alone would be no problem, but the script needs a kernel module called [[https://github.com/mkottman/acpi_call|acpi_call]] which is poorly maintained and won't compile on newer kernels (4.5.5 and newer iirc) without modification of the source code. The modification is very simple however, simply make sure that at the begining of the file ''acpi_call.c'' the two ''include'' statements for ''acpi.h'' and ''uaccess.h'' contain the path ''linux/acpi.h'' and ''linux/uaccess.h'' and not ''acpi/acpi.h'' etc.. once this is changed the module will compile but ''make install'' won't install it and it will not be loadable using ''insmod'' because of secure boot. So you need to disable secure boot and then you can load the module via ''sudo insmod acpi_call.ko''. once this is done, the xmm2usb script can be run. however, the script will try to load the module via modprobe which won't work because ''make install'' failed.. I simply commented out the ''modprobe'' line in the script and it worked.  
 + 
 +now all these snags can be fixe and the startup of this cript could be automated using systemd or whatever.. however, a poorely maintained kernel module that needs to be recompiled after every kernel update does sound like trouble. maybe dkms could help with the re-compiling.  
  
-  
 ===== the speaker volume can only be 100% or 0% ===== ===== the speaker volume can only be 100% or 0% =====
 any volume higher than 0% will result in 100% volume (even though a lower value is displayes it will scream out of its speakers)  any volume higher than 0% will result in 100% volume (even though a lower value is displayes it will scream out of its speakers) 
  
  
  • lenovo_x1_carbon_7th_generation_vs._ubuntu_19.10.txt
  • Last modified: 16.12.2020 06:36
  • by Pascal Suter