[OS] Debian Bullseye for Exynos4 boards

Post Reply
User avatar
Posts: 12137
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 94 times
Been thanked: 681 times

[OS] Debian Bullseye for Exynos4 boards

Post by meveric »

This is my version of Debian Bullseye (11) for the Exynos 4 boards ODROID U2/U3, X, X2

It uses Kernel 5.19.10 at the moment, but will get updates as usual from my repository.

It's a headless server image only with user root. But it has all my repositories included, which allows for easy installation and updates of packages such as Kernel and Headers and other packages.

The image has my usual setup: means on first boot it's resizing the rootfs partition and configures SSH. It will automatically reboot after the initial setup after which this image is ready to use.
Kernel and headers are already installed if you need to build your own drivers.
A few basic tools such as htop, mc, vim and bash-completion are already installed for your convenience.

Download: Debian-Bullseye md5 sha512 sig

Size compressed: 149MiB
Size uncompressed: 1.3GiB

Default Login: root
Default Password: odroid

It's ready to be used as a server image.

  • Debian Bullseye (11) debootstrap image (minimal OS)
  • u-boot 2020-10
  • upstream Kernel (5.19.10)
  • ext4 partitions for both bootfs and rootfs
  • unified flash-kernel config (should be fitting for all ODROID armhf boards)
  • uses opensource drivers for GPU (Lima)
  • OpenGL 2.1 and OpenGL ES 2.0 support for Mali 400 GPU via Lima
First things first:
Since there's constantly new development for this image and ODROIDs in general the First thing you should do after the image is up and running is to install all updates:

Code: Select all

apt update && apt upgrade && apt dist-upgrade
How to convert the image into a Desktop image:
The image can easily converted into a Desktop image looking similar to this:

I created a setup tool that's already preinstalled:

Code: Select all

Which should easily allow you to install a Desktop Environment.

Wayland desktop is also supported:

Changing language:
If you install a Desktop environment you should already have keybord-configuration installed, it will ask upon the first installation what keyboard layout it should use.
This configuration is for your X11 Desktop so you have your desired keyboard layout.
For console you need to install console-setup to do the same, so just in case:

Code: Select all

apt install console-setup keyboard-configuration
dpkg-reconfigure keyboard-configuration
should be all that is needed to change your keyboard layout.
You probably want to set timezone as well

Code: Select all

dpkg-reconfigure tzdata
Setting up WLAN from command line:
Edit the file /etc/network/interfaces or create a new one under /etc/network/interfaces.d/ and add the following lines

Code: Select all

auto wlan0
iface wlan0 inet dhcp
    wpa-essid <NAME-OF-YOUR-WLAN>
    wpa-psk <WLAN-PASSWORD>
If you're using a "hidden" network, please also add wpa-scan-ssid 1

Chromium and Firefox work fine, Chromium can be started with --use-gl=egl flag to run with WebGL hardware acceleration.
Although WebGL is supported, the Mali 400 GPU is very limited and results are not that great.
It works fine for hardware accelerated browsing (smoother scrolling of web-pages) but WebGL applications like WebGL Aquarium (although working) are very slow.
Same goes for YouTube, the performance is very bad and I would suggest using external player (for example mpv) to run YouTube videos.

Video Playback
While Kodi can be installed and runs both from X11 desktop as well as directly from terminal (GBM). It does not support hardware accelerated video playback.
If you install a desktop via setup-odroid I opted for installing mpv as a video player. It currently does not support hardware acceleration, but the CPU is fast enough to support 720p or even 1080p H264 content software decoded.
Maybe in future hardware accelerated video decoding will work again as it technically is included in the Kernel and applications, but currently doesn't work.

Known Issues:
Exynos 4 boards are by now quite old an lack some of the features modern OS expect from GPUs and CPUs, therefore your experience is somewhat limited.

Desktop performance:
I mainly use MATE desktop which works fine is low on resources but still pleasing to the eye and has many features of modern desktops.
While it works fine on the Exynos 4 boards, I noticed that using software composing (used for transparent effects and smoother window scrolling) can have a negative impact on the overall GPU performance.
While on other boards software compositing has no affect on the GPU performance on Exynos 4 boards it reduces GPU performance up to 50%.
So if you run applications that require a lot of GPU performance, best to disable software compositing

Wayland runs ok, I'm not a big fan, but if you want to use it that's fine.
Please be aware, MOST Linux application are still written for X11 and Wayland uses XWalyand to run X11 applications on Wayland.
This will also cause a huge performance hit, as the Wayland Desktop runs completely on the GPU and running an XWayland server within Wayland therefor runs with reduced overall GPU performance.
So while Gnome itself may run fine, and the few Wayland capable application out there also run ok, some application that are written for X11, may run worse under Wayland than when using an X11 Desktop instead.

No Output on TV or Monitor:
While the ODROID U3 seems to work out of the box, I had some issues with my ODROID X2, where it would not output anything on the TV.
Apparently the EDID is not always working on the X2. A workaround for this is to use the config.ini on the bootfs to configure a fixed screen resolution.
I had best experience with videoconfig="drm.edid_firmware=edid/1920x1080.bin"

Please Note: the image requires a newer version of u-boot!
This means while you can flash the image on an SD card and it will work out of the box, for eMMC the image only works if you perform an eMMC recovery process that flashes the newer u-boot from Debian repository.
I haven't tested this yet, so I suggest using SD card for the meantime.

As usual feedback is welcome.
These users thanked the author meveric for the post:
odroid (Tue Oct 18, 2022 9:18 am)
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Post Reply

Return to “Other OS”

Who is online

Users browsing this forum: No registered users and 1 guest