Lenovo Ideapad 120S

notes on getting various operating systems working 18 March 2018
Posted in: Linux OpenBSD Debian laptop arm64 hardware

I picked up a Lenovo Ideapad 120S for ~$150USD, a relative steal even for such a puny machine. I’m compiling my notes on hardware support under Linux and OpenBSD as I go.

General notes

The trackpad is pretty great for a cheap laptop, but not as nice as a MacBook’s. Windows 10 performance is terrible; taking multiple hours to install Windows updates. Battery life is good; right now I’m seeing ~7 hours reported remaining at 90% capacity under Debian.


The keyboard is of a chiclet design, similar to current generation MacBooks. Key caps are slightly rounded on the bottom, giving the keys a shield shape. The position of the Fn and Ctrl keys is my major complaint with the keyboard; they should be swapped.

Esc F1 F2 F3 F4
~ 1 2 3 4
Tab Q W E R
CapsLk A S D
Shift Z X C
Ctrl Fn Alt  


The device comes with Windows 10 Home 64-bit installed on it. The hard drive appears to be a 64 GB MMC reader. The drive is partitioned with:

Although it would be possible to resize the NTFS partition to 35 GB or so and install another operating system alongside Windows, I chose to nuke the entire partition map so that I wouldn’t be space constrained.


The system has a small button on the right hand side you may depress with a paper clip to enter the BIOS/EFI configuration screen. Disable “Secure Boot” before attempting to install another operating system. You may also adjust the boot order here. Insert your USB drive before entering the configuration menu and allow it to boot first.

There are also options related to enabling virtualization features (I turned these on).

Debian Testing (buster)

The install image I picked was debian-testing-amd64-netinst.iso ; I burned it to a flash drive by running (on a Mac)

sudo dd if=debian-testing-amd64-netinst.iso of=/dev/diskXXX bs=1m

The trackpad did not work during install, so I used the text-based installer. It was totally functional upon reboot.

You will be prompted for missing non-free firmware for the Atheros wireless card. I followed the instructions and loaded the firmware via a second USB drive. The installer prompted me again for missing firmware, this time with a much shorter list (including ath10k). You may safely proceed. If your installer prompts you to manually select your network card (instead of proceeding to WiFi configuration), you messed up; restart the installation.


So far I’ve tried 6.2 and a snapshot of pre-release 6.3. I will note where 6.3 differs. This section is subject to revision

Attempting to boot with the system in EFI mode results in a blank screen after the BOOTX64 prompt. Booting using BIOS gets you into the installer in 6.2. 6.3 successfully boots the installer using EFI.

The internal storage is an MMC device, which although supposedly supported & and visible in the dmesg, does not show up as a sd device. We are unable to proceed further unless we install to a USB drive. The Atheros wireless isn’t supported and shows up as See dmesg:

vendor "Atheros", unknown product 0x0042 (class network subclass miscellaneous, rev 0x31) at pci2 dev 0 function 0 not configured

I’ve noticed problems with mass storage devices not showing up, which seems to relate to the USB hub

uhub0: device problem, disabling port 5

After installing 6.3 snapshot to a second USB drive, selecting the USB drive as the boot target and booting, we see the regular 6.3 multiprocessor kernel spin up as expected. After a bit, we get a blank screen like we did booting the 6.2 install with BIOS and are unable to proceed further.