kendryte / k230_sdk

Kendryte K230 SDK
BSD 2-Clause "Simplified" License
165 stars 35 forks source link

[help]: How to use HDMI output in Linux with Big Core of CanMV #52

Open troibe opened 8 months ago

troibe commented 8 months ago

Help

I'm trying use the HDMI output to display 3D graphics which are computed on the big core. My setup is currently running buidroot linux on the big core.

Now I have a couple of questions for the CanMV board:

The only document I could find so far is this. For this document I have the following questions:

Background: I have added Vector extension support to SwiftShader (a graphics driver for CPUs). Currently I have a working setup in qemu using buildroot that I want to try on real hardware.

zhangxiaojingCAN commented 8 months ago

Hi, K230 chip only has MIPI DSI interface. On CanMV-K230 board, we use a MIPI-TO-HDMI chip that converts MIPI signal to HDMI video. The MIPI-TO-HDMI chip is controlled by I2C interface. As you know, in current SDK, big C908 core runs a RTOS and little C908 core runs linux. Both cores can controlled any device like external MIPI-TO-HDMI chip or VO/DSI module of K230 chip. However, in current SDK, HDMI/DSI/VO is only initialized on big C908 core running RTOS. Though little C908 core supports DRM driver, it just controls several graphics layers of VO. In another word, the DRM dirver in linux is not a full version. If you just run a linux on big core, existing DRM driver doesn't initialize full hardware for HDMI output. We're implementing the full functional DRM driver for linux. It would be released in couple of weeks. By then, you can use HDMI output in a linux. We will also release Ubuntu and Debian image.

troibe commented 6 months ago

Did you already make any progress on this issue? For now I resorted to rendering to a virtual framebuffer using Xvfb. The performance is really promising (close to 2x the framerate compared to scalar execution). So of course it would be nice to have a visual demo using a real framebuffer.

intx82 commented 1 month ago

any news?

zhangxiaojingCAN commented 3 weeks ago

Linux DRM dirver was released in linux SDK https://github.com/kendryte/k230_linux_sdk