Skip to content

Mediatek: add initial project with Genio device#10891

Draft
rpardini wants to merge 10 commits intoLibreELEC:masterfrom
rpardini:mediatek-genio-wip
Draft

Mediatek: add initial project with Genio device#10891
rpardini wants to merge 10 commits intoLibreELEC:masterfrom
rpardini:mediatek-genio-wip

Conversation

@rpardini
Copy link
Copy Markdown
Contributor

@rpardini rpardini commented Jan 11, 2026

While I was working on the Radxa NIO-12L in Armbian, @amazingfate asked for some tests which made me realize those Mediatek "Genio" boards have some staleless decoders [1]. I've no idea what that means but wondered what would happen if I tried to bring up LibreELEC on it.

These are the results of that effort; most of it is dubious at best. It is by no means usable in this state, but maybe it's enough for someone who knows what they're actually doing to get further ahead.

I've based most of the work on Collabora's, all credits on anything that actually works to them.

In short:

  • using Collabora's kernel + Armbian's "extra" DT patches
  • it boots into a usable serial console (921600 baud) & Mesa driven GBM Kodi interface;
  • no, accelerated playback does not work, and I'm about as ignorant about why as possible.

I've faked a none configured u-boot build, just to get dtb and extlinux.conf into the image.

  • Those Genio-1200 devices boot exclusively from builtin media (UFS/eMMC - no SD), and the bootloader is stored in a separate LUN or eMMC boot0/1 device, thus wouldn't be shippable in a standard .img anyway.
  • For now, I've been testing by using Armbian's u-boot [2] in UFS boot0 (via mtk-flash), and using an SD card for LibreELEC. u-boot env is in boot1 offset 0x200000, so, easy to switch Armbian on UFS <-> LE on SD.
  • Something [3] tells me we're not that far away from mainline u-boot support. Even then, the TF-A build / FIP building is pretty boring due to the way Mediatek distributes its blobs. [4]

With this I hope to get feedback and learn. Who knows what can come of it.


[1] (on Armbian)

root@radxa-nio-12l:~# gst-inspect-1.0 | grep -i -e v4l2 -e videoforlinux
v4l2codecs:  v4l2slav1dec: V4L2 Stateless AV1 Video Decoder
v4l2codecs:  v4l2slh264dec: V4L2 Stateless H.264 Video Decoder
v4l2codecs:  v4l2slh265dec: V4L2 Stateless H.265 Video Decoder
v4l2codecs:  v4l2slvp8alphadecodebin: VP8 Alpha Decoder
v4l2codecs:  v4l2slvp8dec: V4L2 Stateless VP8 Video Decoder
v4l2codecs:  v4l2slvp9alphadecodebin: VP9 Alpha Decoder
v4l2codecs:  v4l2slvp9dec: V4L2 Stateless VP9 Video Decoder
...

[2] (Mediatek vendor u-boot 22.10 + Collabora + Armbian fixes for SD-first booting + DRAM auto-detect) armbian/build#9159

[3] u-boot/u-boot@633e560

[4] I've started preparing https://github.com/armbian/mtkbin a-la rkbin / amlogic-fip, original blobs are available from vendor

@chewitt chewitt changed the title RFC: projects/Mediatek: introduce Mediatek project with Genio device [WiP] Mediatek: add initial Mediatek project with Genio device Jan 12, 2026
@chewitt
Copy link
Copy Markdown
Member

chewitt commented Jan 12, 2026

@rpardini I can see some minor nits in configs/files but overall it looks fairly complete for a first pass effort, well done. I'll see if Radxa can send me a Neo-12L board for experiments. As long as the image is usable with Kodi there's no objection to merging support. I'd perhaps see if the RPi ffmpeg sources that I use for Amlogic (https://github.com/chewitt/LibreELEC.tv/blob/amlogic/packages/multimedia/ffmpeg/package.mk#L19) are any better than the default ones; there are some general improvements for v4l2_m2m and includes some 'quirks' handing code in libavcodec/v4l2_m2m_dec.c which might either help or be the point where some additional quirks can be added.

@ndufresne
Copy link
Copy Markdown

no, accelerated playback does not work, and I'm about as ignorant about why as possible.

I'm pretty sure all is needed for playback is to plumb the MM21 (and its 10bit variants) into the ffmpeg fork and kodi GPU rendering path. Alternatively, implement MDP3 color conversion for GPU-less playback.

@chewitt chewitt changed the title Mediatek: add initial Mediatek project with Genio device Mediatek: add initial project with Genio device Jan 18, 2026
@ndufresne
Copy link
Copy Markdown

Driver by comment, another thing to check, is that the scp firmware is installed and loaded properly. This is part of linux-firmware project, but yet, not everyone ship everything.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants