i.MX8MP, Use GUI-GUIDE generate app by use DRM/FBDEV display

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX8MP, Use GUI-GUIDE generate app by use DRM/FBDEV display

1,141 Views
IKnow
Contributor II

Currently, I use GUI-GUIDE to generate UI on the i.MX8MP by DRM/FBDEV is a display driver.

When run application on the target board, I found that the application runs on the CPU.

If I want the application to run on the GPU by using DRM/FBDEV, is it possible?

 

Tags (2)
0 Kudos
Reply
3 Replies

1,115 Views
Chavira
NXP TechSupport
NXP TechSupport

Hi @IKnow,

By default, GUI Guider is configured to work only with i.MX9 processors.
Since the i.MX93 does not include a GPU, all graphics rendering is handled by the CPU, with limited acceleration through the PXP engine.
For the i.MX8MP, the recommended approach is generate the project source code using the i.MX93 template, then disable the PXP-related configurations in the lv_conf.h file.


You can change the display backend directly in the Project Settings inside GUI Guider by selecting DRM instead of Wayland.


You can follow the compilation steps described in the following guide:

Build GUI Guider projects (GUI GUIDER 1.9.X, 1.10.x) for iMX processors


A more generic option to generate an LVGL project is using SquareLine Studio.
You can follow the guide here:

How to run an SquareLine project on i.MX 93 EVK using FrameBuffer.

 

I hope this information helps.


Best regards,
Chavira

1,039 Views
IKnow
Contributor II
HI. @Chavira,
I want to confirm my understanding of using DRM with LVGL on i.MX8MP

please correct me if anything is wrong.
My understanding:

DRM It is a Linux kernel subsystem that manages the dedicated display controller hardware (LCDIF) on the i.MX8MP directly.
When LVGL uses DRM as its display backend:
LVGL renders the UI and hands the buffer to DRM
DRM passes it to the LCDIF display controller hardware
LCDIF fetches and outputs pixels independently — without CPU involvement

This offloads the display output work from CPU to dedicated hardware

Is my understanding correct?
0 Kudos
Reply

1,085 Views
IKnow
Contributor II

I want to confirm my understanding of using DRM with LVGL on i.MX8MP

please correct me if anything is wrong.
My understanding:

DRM It is a Linux kernel subsystem that manages the dedicated display controller hardware (LCDIF) on the i.MX8MP directly.
When LVGL uses DRM as its display backend:
LVGL renders the UI and hands the buffer to DRM
DRM passes it to the LCDIF display controller hardware
LCDIF fetches and outputs pixels independently — without CPU involvement

This offloads the display output work from CPU to dedicated hardware

Is my understanding correct?

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2321784%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3Ei.MX8MP%2C%20Use%20GUI-GUIDE%20generate%20app%20by%20use%20DRM%2FFBDEV%20display%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2321784%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3ECurrently%2C%20I%20use%26nbsp%3BGUI-GUIDE%20to%20generate%20UI%20on%20the%20i.MX8MP%20by%20DRM%2FFBDEV%20is%20a%20display%20driver.%3CBR%20%2F%3E%3CBR%20%2F%3EWhen%20run%20application%20on%20the%20target%20board%2C%20I%20found%20that%20the%20application%20runs%20on%20the%20CPU.%3C%2FP%3E%3CP%3EIf%20I%20want%20the%20application%20to%20run%20on%20the%20GPU%20by%20using%20DRM%2FFBDEV%2C%20is%20it%20possible%3F%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2322064%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20i.MX8MP%2C%20Use%20GUI-GUIDE%20generate%20app%20by%20use%20DRM%2FFBDEV%20display%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2322064%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F259636%22%20target%3D%22_blank%22%3E%40IKnow%3C%2FA%3E%2C%3C%2FP%3E%0A%3CP%3EBy%20default%2C%20GUI%20Guider%20is%20configured%20to%20work%20only%20with%20i.MX9%20processors.%3CBR%20%2F%3ESince%20the%20i.MX93%20does%20not%20include%20a%20GPU%2C%20all%20graphics%20rendering%20is%20handled%20by%20the%20CPU%2C%20with%20limited%20acceleration%20through%20the%20PXP%20engine.%3CBR%20%2F%3EFor%20the%20i.MX8MP%2C%20the%20recommended%20approach%20is%20generate%20the%20project%20source%20code%20using%20the%20i.MX93%20template%2C%20then%20disable%20the%20PXP-related%20configurations%20in%20the%20lv_conf.h%20file.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EYou%20can%20change%20the%20display%20backend%20directly%20in%20the%20Project%20Settings%20inside%20GUI%20Guider%20by%20selecting%20DRM%20instead%20of%20Wayland.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EYou%20can%20follow%20the%20compilation%20steps%20described%20in%20the%20following%20guide%3A%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Ftkb%2Fworkflowpage%2Ftkb-id%2Fimx-processors%2540tkb%2Farticle-id%2F6216%22%20target%3D%22_self%22%3EBuild%20GUI%20Guider%20projects%20(GUI%20GUIDER%201.9.X%2C%201.10.x)%20for%20iMX%20processors%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EA%20more%20generic%20option%20to%20generate%20an%20LVGL%20project%20is%20using%20SquareLine%20Studio.%3CBR%20%2F%3EYou%20can%20follow%20the%20guide%20here%3A%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fi-MX-Processors-Knowledge-Base%2FHow-to-run-an-SquareLine-project-on-i-MX-93-EVK-using%2Fta-p%2F2001400%22%20target%3D%22_self%22%3EHow%20to%20run%20an%20SquareLine%20project%20on%20i.MX%2093%20EVK%20using%20FrameBuffer.%20%3C%2FA%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EI%20hope%20this%20information%20helps.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EBest%20regards%2C%3CBR%20%2F%3EChavira%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2324092%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20i.MX8MP%2C%20Use%20GUI-GUIDE%20generate%20app%20by%20use%20DRM%2FFBDEV%20display%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2324092%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EI%20want%20to%20confirm%20my%20understanding%20of%20using%20DRM%20with%20LVGL%20on%20i.MX8MP%3CBR%20%2F%3E%3CBR%20%2F%3Eplease%20correct%20me%20if%20anything%20is%20wrong.%3CBR%20%2F%3EMy%20understanding%3A%3CBR%20%2F%3E%3CBR%20%2F%3EDRM%20It%20is%20a%20Linux%20kernel%20subsystem%20that%20manages%20the%20dedicated%20display%20controller%20hardware%20(LCDIF)%20on%20the%20i.MX8MP%20directly.%3CBR%20%2F%3EWhen%20LVGL%20uses%20DRM%20as%20its%20display%20backend%3A%3CBR%20%2F%3ELVGL%20renders%20the%20UI%20and%20hands%20the%20buffer%20to%20DRM%3CBR%20%2F%3EDRM%20passes%20it%20to%20the%20LCDIF%20display%20controller%20hardware%3CBR%20%2F%3ELCDIF%20fetches%20and%20outputs%20pixels%20independently%20%E2%80%94%20without%20CPU%20involvement%3CBR%20%2F%3E%3CBR%20%2F%3EThis%20offloads%20the%20display%20output%20work%20from%20CPU%20to%20dedicated%20hardware%3CBR%20%2F%3E%3CBR%20%2F%3EIs%20my%20understanding%20correct%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2324783%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20i.MX8MP%2C%20Use%20GUI-GUIDE%20generate%20app%20by%20use%20DRM%2FFBDEV%20display%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2324783%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EHI.%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F206761%22%20target%3D%22_blank%22%3E%40Chavira%3C%2FA%3E%2C%3CBR%20%2F%3EI%20want%20to%20confirm%20my%20understanding%20of%20using%20DRM%20with%20LVGL%20on%20i.MX8MP%3CBR%20%2F%3E%3CBR%20%2F%3Eplease%20correct%20me%20if%20anything%20is%20wrong.%3CBR%20%2F%3EMy%20understanding%3A%3CBR%20%2F%3E%3CBR%20%2F%3EDRM%20It%20is%20a%20Linux%20kernel%20subsystem%20that%20manages%20the%20dedicated%20display%20controller%20hardware%20(LCDIF)%20on%20the%20i.MX8MP%20directly.%3CBR%20%2F%3EWhen%20LVGL%20uses%20DRM%20as%20its%20display%20backend%3A%3CBR%20%2F%3ELVGL%20renders%20the%20UI%20and%20hands%20the%20buffer%20to%20DRM%3CBR%20%2F%3EDRM%20passes%20it%20to%20the%20LCDIF%20display%20controller%20hardware%3CBR%20%2F%3ELCDIF%20fetches%20and%20outputs%20pixels%20independently%20%E2%80%94%20without%20CPU%20involvement%3CBR%20%2F%3E%3CBR%20%2F%3EThis%20offloads%20the%20display%20output%20work%20from%20CPU%20to%20dedicated%20hardware%3CBR%20%2F%3E%3CBR%20%2F%3EIs%20my%20understanding%20correct%3F%3C%2FLINGO-BODY%3E