- Saved searches
- Use saved searches to filter your results more quickly
- License
- Trel725/yoga2linux
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- Lenovo yoga tablet 2 linux
- Bluetooth
- Accelerated X
- Backlight
- Linux на Lenovo Tablet Yoga 2 1050l
- Install Ubuntu (Desktop or Touch) on Lenovo Yoga Tablet 2 (Windows or Android)
- 3 Answers 3
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Linux for Lenovo Yoga Tab 2
License
Trel725/yoga2linux
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Linux for Lenovo Yoga Tab 2 830f
- BQ27xxx battery contrller. Needed to display battery charge. Added to the DSDT, should work out of the box or need loading of bq27xxx_battery.
- BQ24296 charge controller. Needed to switch USB OTG port between device and host modes. Added to DSDT as BQ24196, which is not 100 % compatible (some register differences according to datasheets), nevertheless switching of device/host modes is same in both chips. Should work out of the box or need loading of bq24190_charger module. After module is loaded, following command should switch USB to host mode:
echo 2 > /sys/class/power_supply/bq24190-charger/f_chg_config - Synaptics I2C touchscreen. Added to DSDT but won’t work unless kernel is patched. Due to the Baytrail GPIO interrupt architecture some of the pins (including touchscreen one) can not be used as IRQ sources (see following patch https://www.fclose.com/linux-kernels/718144/pinctrl-baytrail-do-not-add-all-gpios-to-irq-domain-linux-4-10/).
Somehow during initialization BIT_DIRECT_IRQ_EN is set for the touchscreen GPIO and thus it is excluded from the system IRQ domain.
if (value & BYT_DIRECT_IRQ_EN) < clear_bit(i, gc->irq.valid_mask); dev_dbg(dev, "excluding GPIO %d from IRQ domain\n", i);
To overcome this I’ve used a very dirty ugly hack to prevent touchscreen GPIO from excluding (available in pinctrl.patch)
if (value & BYT_DIRECT_IRQ_EN) < if(i!=12)< clear_bit(i, gc->irq.valid_mask); dev_dbg(dev, "excluding GPIO %d from IRQ domain\n", i); > else< byt_gpio_clear_triggering(vg, i); dev_dbg(dev, "keeping GPIO %d\n", i); >
If it is possible to achieve this in some more elegant way, please let me know.
- Wireless module need firmware, shttps://wiki.debian.org/InstallingDebianOn/Asus/T100TAimilar as desribed here: https://wiki.debian.org/InstallingDebianOn/Asus/T100TA
- Sound. Device uses WM5102 chip, and there is a patch to support it on Baytrail devices: https://patchwork.kernel.org/patch/9764493/, nevertheless it seems that patch was not included in the mainstream kernel. Probably possible.
- Screen brightness. According to the debug messages from Android, display uses some mysterious Chineese chip without support in kernel or even information about. Probably impossible.
- Sensors. This question was not investigated, so unknown.
Lenovo yoga tablet 2 linux
This neat tablet/laptop combo sports a nice 1920×1200 IPS display and a detachable Bluetooth keyboard/touchpad unit. Of course you want to run Linux on it (Fedora in my case). Follow Pascal’s tutorial to get a basic system set up. However, some problems remain:
- The Bluetooth keyboard
- Accelerated X
- Backlight control (important for suspend)
- Sound
Here we’ll solve at least two of them 🙂
Bluetooth
The Bluetooth chip is a Broadcom 4324 which is really picky about the devices it pairs with. Pascal’s systemd service will apparently enable Bluetooth, but the keyboard will not work. In order to fix that, add the following to the service file to load the correct firmware:
/usr/local/bin/brcm_patchram_plus --no2bytes --baudrate 3000000 --use_baudrate_for_download --patchram /etc/firmware/brcm/BCM4324B3_002.004.006.0130.0161.hcd -bd_addr $MAC /dev/ttyS4 -d >/tmp/btlog 2>&1
brcm_patchram_plus can be found here and the firmware file is here. Then just pair and trust the keyboard and it will work.
Update: Starting with 4.15.x kernels in F27, Fedora changed the way of dealing with bluetooth keyboards which at first didn’t work with the Yoga. Hans then fixed it upstream and for F28 you don’t need the bluetooth systemd service file any longer. You only need to copy the firmware to /usr/lib/firmware/brcm/BCM4324B3.hcd and the kernel will do the rest!
Accelerated X
Pascal notes that enabling the i915 driver crashes the kernel. This can be fixed by adding the following boot parameters to the kernel (in /etc/default/grub for example):
i915.modeset=1 intel_pstate=disable intel_idle.max_cstate=1 clocksource=tsc
Section "Device" Identifier "Intel Graphics" Driver "intel" Option "DPMS" Option "AccelMethod" "sna" Option "TearFree" "True" EndSection
This will prevent the CPU from entering the deep sleep states (> C1), but my measurements indicate that this does not impact battery life too much.
Backlight
Pascal found a way to turn it off and on (most important for suspend), and I later discovered how to set the brightness. It’s not the official ACPI way (the hardware is pretty screwed up), but it gets the job done. Create /usr/local/bin/setBacklight:
#!/bin/bash if [[ "$1" == "off" ]]; then /usr/sbin/i2cset -y 9 0x2c 0x00 0 elif [[ "$1" == "on" ]]; then /usr/sbin/i2cset -y 9 0x2c 0x00 1 elif [[ "$1" == "read" ]]; then i2cget -y 9 0x2c 0x04 else /usr/sbin/i2cset -y 9 0x2c 0x00 0 /usr/sbin/i2cset -y 9 0x2c 0x10 0x85 /usr/sbin/i2cset -y 9 0x2c 0x04 $1 /usr/sbin/i2cset -y 9 0x2c 0x00 1 fi
!/bin/sh if [[ "$1" == "pre" ]]; then /usr/local/bin/setBacklight read > /var/tmp/brightness /usr/local/bin/setBacklight off else /usr/local/bin/setBacklight on if [ -f /var/tmp/brightness ] then /usr/local/bin/setBacklight `cat /var/tmp/brightness` fi /bin/systemctl restart bluetooth.service /usr/sbin/powertop --auto-tune fi
Update: at some point the kernel got support for the PWM chip used in the Yoga and you can now control display brightness via the generic Gnome shell slider.
all images — last change: 2018/06/13
Linux на Lenovo Tablet Yoga 2 1050l
Итак, нужна помощь в теме, человек смог завести linux на планшете Lenovo Tablet Yoga 2 1050l.
Я допилил grub2, чтобы он понимал UP/DOWN в качестве hot keys. Вот патч и пример конфига https://savannah.gnu.org/bugs/?46463 По таймауту у меня грузится андроид, по VolumeUp грузится busybox с ядром от Леново, по VolumeDown грузится Ubuntu с флешки. Точнее, пытается грузиться. Сегодня вышло ядро 4.5-rc1, там вроде как исправили баг с HS400, так что буду дальше пытаться сделать дуалбут. grub2 я собирал по инструкции от асуса Т100 или как-то так. Но для x86-64. Потом просто заменил через adb push + adb shell. Оригинальный переименовал в android.efi и он как раз и вызывается по таймауту.
С выходом нового ядра у него все завелось (кроме тач скрина)
Всем привет! У меня получилось запустить Ubuntu на 1050L (Андроид версии). Тач работает, usb тоже. Ядро ванильное, только драйвера к тачскрину пришлось прикручивать из родной 4.4 прошивки.
Человек добился отличного полета, но я профан в adb, android и не хочу окирпичить, ну и немного хомячок ладно. Ищу переводчика и советчика в этом вопросе. Busybox не нужен. Основные вопросы: сборка grub2, установка патча, объяснение работы с adb push + adb shell, извлечение и установка драйвера на тач или нахождение его альтернативы на линь, при возможности перевести сказанное человеком в подробную пошаговую копирку в терминал (я не силен если честно в этих вопросах, а рисковать устройством не хочу, вот и ищу людей мудрых и осведомленых). P.S. Выбор дистрибутива не важен, но приоритеты такие: OpenSuse, Fedora, Ubuntu.
Install Ubuntu (Desktop or Touch) on Lenovo Yoga Tablet 2 (Windows or Android)
I’m looking into possibly getting a Lenovo Yoga Tablet 2. This is a pure tablet device, that comes with either Windows or Android. It has an Intel cpu. Was anybody able to install Ubuntu on either one of those 2 flavors? What was the experience like? I don’t mind using Ubuntu Desktop or Touch (or Ubuntu Next).
3 Answers 3
I was able to boot from USB Drive after disable secure boot in bios. i also was able to install kali and ubuntu after removing windows from the 1051f tablet. i removed the windows installation and recovery partition (after creating recovery usb drive).
Till now, bluetooth wont work. That means, you need a usb hub and keyboard+mouse. GPS wont work and auto-rotation for the display wont work.
The 1051f needs a 32-bit EFI bootloader, which Ubuntu doesn’t provide in its image. Can you give instructions on setting it up?
I wrote up instructions for getting Ubuntu (Desktop) installed on the Windows version (1051F): https://askubuntu.com/a/715843/463546
However, the trouble is hardware support in the kernel. I couldn’t get sound or suspend to work. People work on patching the kernel to support various things in various devices, but the SoCs used in these devices don’t lend themselves to an easy one-kernel-fits-all solution. Perhaps sometime in the future it will all work out of the box, and it’s possible patches already exist somewhere that will do their magic for the Lenovo Yoga Tablet 2 1051F.
I use xubuntu 20.04 with small tweak, and know BKC800 keyboard work well:
- Install xubuntu 20.04
- Download file: BCM4324B3.hcd
- Copy file to folder: /lib/firmware/brcm