Hi,
I'm trying to run a very simple Flutter application that just prints a string on the console. For the sake of simplicity, I'm using flutter-pi
tool: https://github.com/ardera/flutter-pi. The application can not run because of the following error:
$ flutter-pi flutter_assets/
modesetting.c: Could not set DRM client universal planes capable. drmSetClientCap: Operation not supported
flutter-pi.c: Could not create drmdev from device at "/dev/dri/card0". Continuing.
flutter-pi.c: flutter-pi couldn't find a usable DRM device.
Please make sure you've enabled the Fake-KMS driver in raspi-config.
If you're not using a Raspberry Pi, please make sure there's KMS support for your graphics chip.
How to set up DRM/KMS properly in order to run this app?
Thank you in advance.
It might be hard to get it working. It is made for RPi and their Linux distribution. As it listed at GitHub flutter-pi is only tested on a Rasberry Pi 4 2GB...
It won't work out-of-the-box with any board different than RPi and any distribution different than Raspberry Pi OS. The good news is that Allwinner A20 chip is ARMv7 architecture which is listed as supported by the project. The bad news is I am not sure if the hardware acceleration requirements are met.
Quote from: LubOlimex on May 07, 2024, 08:49:48 AMIt might be hard to get it working. It is made for RPi and their Linux distribution. As it listed at GitHub flutter-pi is only tested on a Rasberry Pi 4 2GB...
It won't work out-of-the-box with any board different than RPi and any distribution different than Raspberry Pi OS. The good news is that Allwinner A20 chip is ARMv7 architecture which is listed as supported by the project. The bad news is I am not sure if the hardware acceleration requirements are met.
According to
flutter-pi
documentation (https://github.com/ardera/flutter-pi),
QuoteAlthough flutter-pi is only tested on a Rasberry Pi 4 2GB, it should work fine on other linux platforms, with the following conditions:
- support for hardware 3D acceleration. more precisely support for kernel-modesetting (KMS) and the direct rendering infrastructure (DRI)
- CPU architecture is one of ARMv7, ARMv8, x86 or x86 64bit.
Of course, condition #2 is met.
Regarding the first one, I don't know how to get detailed information about what mesa/lima drivers for Mali400 do support and do not support.
Using
strace
, I managed to verify that
flutter-pi
quits because of a failing IOCTL that makes use of the DRM_IOCTL_SET_CLIENT_CAP parameter (https://elixir.bootlin.com/linux/v5.10.180/C/ident/DRM_IOCTL_SET_CLIENT_CAP).
Any idea?