Booting Linux and Ubuntu issues on MINIX Neo Z83-4 mini PCs

#1
Since commit ca876c7483b6 ("gpiolib-acpi: make sure we trigger edge events at least once on boot") in the Linux mainline v4.18 kernel (and also in stable v4.14.68 as commit fbb37b72489d) the Linux kernel now calls _AEI edge handlers at boot.

Unfortunately the MINIX Neo Z83-4 mini PC has a DSDT bug where some copy and pasted code for dealing with Micro USB-B connector host/device role switching messes with the DDC data pin from the HDMI connector (switching it to GPIO mode) breaking HDMI support.

For Ubuntu Bionic the mainline kernel change "gpiolib-acpi: make sure we trigger edge events at least once on boot" is included in the Ubuntu-4.15.0-56.61 tag as commit 4ea03f3e93f8 and released in the 4.15.0-58.64 linux package.

Starting with the 4.15.0-58.64 linux package and subsequent linux packages including linux-hwe (4.18 and now 5.0 based) and linux-hwe-edge (5.0 and now 5.2 based) packages Ubuntu fails to boot with working HDMI.

However the kernel does fully boot and it is possible to remotely "ssh" to the device.

An alternative work around on the MINIX Neo Z83-4U device is to interrupt the GRUB boot process by pressing ESC when it comes up with the purple screen. From the menu that appears select the "Advanced options for Ubuntu" and then the "recovery" option of the kernel you want to boot e.g. Ubuntu, with Linux 4.15.0-60-generic (recovery mode). After a few moments, it will display a Recovery Menu with a number of options. Select the first option "resume" for "Resume normal boot" followed by "OK". Your device will then complete booting and HDMI will now work.

To fix this a proposed patch has already been submitted to the mainline kernel that disables the running of _AEI edge event handlers at boot using a DMI based blacklist with the initial version of this blacklist contains the MINIX Neo Z83-4. This patch is currently under review.

As another alternative you can compile own kernels or install pre-compiled patched kernels. I have backported the proposed patch to Ubuntu Bionic and the source is available from my github repository ubuntu-bionic (https://github.com/linuxium/ubuntu-bionic). I've then compiled the source to create linux "linuxium-flavoured" linux packages which can be downloaded from http://bit.ly/linux-4_15_0-58-linuxium or http://bit.ly/linux-4_15_0-60-linuxium and unzipped then installed to provide the latest patched Ubuntu Bionic kernel e.g. "unzip linux-4.15.0-60-linuxium.zip" followed by "sudo apt install ./linux-headers-4.15.0-60_4.15.0-60.67+Linuxium_all.deb ./linux-headers-4.15.0-60-linuxium_4.15.0-60.67+Linuxium_amd64.deb ./linux-modules-4.15.0-60-linuxium_4.15.0-60.67+Linuxium_amd64.deb ./linux-modules-extra-4.15.0-60-linuxium_4.15.0-60.67+Linuxium_amd64.deb ./linux-image-unsigned-4.15.0-60-linuxium_4.15.0-60.67+Linuxium_amd64.deb".

I will update this post as the proposed patch progresses.
 
#4
The patch that fixes the MINIX Neo Z83-4 boot issue was incorporated into the mainline 5.3 kernel released today. A Canonical compilation of this kernel can be downloaded from https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.3/ and installed using the following commands:

wget https://kernel.ubuntu.com/~kernel-p....3.0-050300_5.3.0-050300.201909152230_all.deb
wget https://kernel.ubuntu.com/~kernel-p...0-generic_5.3.0-050300.201909152230_amd64.deb
wget https://kernel.ubuntu.com/~kernel-p...0-generic_5.3.0-050300.201909152230_amd64.deb
wget https://kernel.ubuntu.com/~kernel-p...0-generic_5.3.0-050300.201909152230_amd64.deb
sudo apt install ./linux-headers-5.3.0-050300_5.3.0-050300.201909152230_all.deb ./linux-headers-5.3.0-050300-generic_5.3.0-050300.201909152230_amd64.deb ./linux-modules-5.3.0-050300-generic_5.3.0-050300.201909152230_amd64.deb ./linux-image-unsigned-5.3.0-050300-generic_5.3.0-050300.201909152230_amd64.deb
sudo ln -s /lib/firmware/brcm/brcmfmac43455-sdio.txt /lib/firmware/brcm/brcmfmac43455-sdio.MINIX-Z83-4.txt

Note that installing this kernel will not include automatic updates so manual intervention will be required in the future to install new kernels with security fixes and enhancements.

However it is still anticipated that the patch will be included into stable kernels resulting with inclusion into Ubuntu kernels and specifically the 4.15 Bionic kernel. I will update this thread with progress as appropriate.
 
#5
I only installed linux in the past on virtual machines and now i also tested again linux on VM.
It is good to know that infornation , it can help minix users with linux installed, thank you ☺.
 
Top