Boot Linux on your Lenovo Ideapad Yoga 11.
Progress has been made on the Lenovo Ideapad Yoga 11. It is now possible to boot Linux on the device.
None of the Open Surface RT members owns a device like this. Testing was done by @not_important and @lgibson02. We have had to rely on their feedback if something works or not, or which workarounds are required for what. Thanks for the help.
- Screen & HDMI
- Keyboard (without FN functionality)
- USB ports
- Micro SD card
TODO: still need to be checked if they work.
You cannot apply Yahallo (Disable secure boot) on this device. It's Surface RT & Surface RT 2 only, as off August 2021.
- Take the
tegra30-lenovo-ideapad-yoga-11.dtbfrom above and copy it to your USB drive.
As disabling secure boot isn't supported on this device, the Golden Key exploit needs to be used to enable booting a Linux kernel. The Linux kernel's EFI Stub has a security check built-in that would normally prevent us from loading a custom device tree. This security check has been patched. This means we require to use the Golden Key USB setup.
The WiFi driver requires being a module, as the built-in version would access a configuration file on the root filesystem, before the root filesystem is available. There are many other modules which is rather unimportant.
Copying the modules and the configuration file may be an issue on Windows as the root filesystem is likely ext4. Feel free to extract the ZIP onto the root filesystem and create the configuration file once Linux runs. All of these files are not required for booting. For the changes to take affect you may need to reboot.
To install the modules, extract the modules ZIP file from above onto your root filesystem. The
libfolder of the ZIP and the root filesystem should merge.
To get WiFi working you need to put the already mentioned configuration file onto your root filesystem too. The file path is integrated into the filename of the code block at the top.
This configuration file may contain bad parameters as the values were taken from two different devices. It is just enough to get WiFi working.
# this design has 2.4GHz SP3T switch
# 2.4G Tx Power offsets
Additional steps may be required to get WiFi working. See the message bellow for possible steps.
@lgibson02 please test if it's working for you by placing the following file (config file above) in
/lib/firmware/brcmYou can also use connection manager with the frontend same as in the screenshot if you want:
sudo apt-get install connman
sudo apt-get install cmstAnd then just run
If you have done everything correctly RPI OS should show up after some time (up to 60 seconds).
Have fun 🙂
If you have trouble, feel free to ask for help on our discord server.
Compiling the Linux kernel requires Linux installed on your system.
To download run
git clone https://github.com/Open-Surface-RT/grate-linux.git -b lenovo-ideapad-yoga-11.
We provide a defconfig for this device. Simply run
make ARCH=arm lenovo-ideapad-yoga-11_defconfig.
Compiling is as simple as running
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j<value>where value is the number of CPU cores you have available. Depending on your processors speed, the build takes from a handful of minutes to 10 minutes or longer.
If the build complains that
arm-linux-gnueabihf-gccwas not found, install the compiler. For Ubuntu the install command looks like this:
The output kernel image (
arch/arm/boot/zImage. The output device tree is
Just put the
zImageonto your USB drive and rename it to
boot.efi. The device tree needs to be copied over too. No need to rename it.
To get your modules run
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j6 INSTALL_MOD_PATH=module_out/ modules_install. The modules are put into the module_out/ folder with the correct directory structure. Just copy over the lib folder to your root filesystem. If you chose to compile the kernel yourself you need to use these modules.