Support Required for GPU Crash and Display Issue on i.MX8MM – Android 12 Porting

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

Support Required for GPU Crash and Display Issue on i.MX8MM – Android 12 Porting

Jump to solution
1,341 Views
Santhrupthi_123
Contributor I

 

We are currently working on porting the platform to Android 12 (android-12.0.0_2.0.0) for our i.MX8MM custom board with LPDDR4 4GB RAM. The source code was downloaded from the NXP website:
 
The build and flashing process completed successfully.
 
Initial Issue – GPU Crash and Kernel Panic
During the 4GB flash, we encountered:
  • GPU crash
  • Kernel panic
  • Memory abort issue
Logs I have been attached for your reference (gpu_crash_logs.txt)
Based on discussions in the NXP community forum, it was suggested to modify the reserved memory and GPU CMA size.
  Accordingly, we updated:
  • Reserved memory (linux,cma) in imx8mm.dtsi by modifying the alloc-ranges.
  • GPU node reg configuration by updating the contiguous_mem region.
  • BoardConfig.mk by increasing CMASIZE:
    • 736M → 1024M (DRM enabled)
    • 800M → 1184M (Non-DRM)
       After these changes, the board boots successfully and we are able to enter adb shell without any kernel panic or memory abort.
Current Issue – Display and GPU Failure
After stabilizing the boot:
  • We added our custom display driver ILI9881C and built it as a module (.ko).
  • The driver loads successfully.
  • The probe function executes properly.
  • Reset GPIOs and pinctrl configurations are correct.
However:
  • The ili9881c_prepare() function is not being called in the normal boot scenario.
  • No kernel logo is displayed.
  • The screen remains black after Android initialization.
  • surfaceflinger and hwcomposer services keep restarting continuously.
  • Galcore probe is failing again. Attached Surfaceflinger logs (Surfaceflinger.txt)
     
Additional Observation with CMA=512M
When we explicitly pass CMA as 512M in boot arguments:

 

setenv bootargs ${bootargs} cma=512M saveenv

 

 
In this case, the device boots into recovery mode, and the ili9881c_prepare() function is invoked successfully.
We observe the following logs:

 

SAN inside imx_sec_dsim_encoder_atomic_check SAN inside imx_sec_dsim_encoder_atomic_enable SAN inside imx_sec_dsim_encoder_get_new_crtc imx_sec_dsim_drv 32e10000.mipi_dsi: SAN atomic_enable called! panel=(____ptrval____) enabled=0 ili9881c-dsi 32e10000.mipi_dsi.0: Inside Prepare ili9881c-dsi 32e10000.mipi_dsi.0: ili9881c_enable: Set 4-lane mode ; Color 7
 
At this stage, the panel initialization sequence runs, and display output is partially visible (attached Display image for reference). However, this behavior only occurs when CMA is set to 512M via bootargs.
Reference Attempt
We also tried GPU memory configuration changes based on the following NXP community discussion:
In that case:
  • GPU driver probe was successful.
  • However, the GPU crash still occurred.
  • The display issue remained unresolved.
Request
We kindly request your guidance on:
  1. Proper GPU CMA and contiguous memory configuration for a 4GB LPDDR4 setup on Android 12.
  2. Why ili9881c_prepare() is triggered only when CMA=512M is passed via bootargs.
  3. The correct memory layout between CMA, GPU contiguous memory, and DDR mapping.
  4. Resolving galcore crash and restoring stable kernel display output.
  5. Stabilizing SurfaceFlinger and HWC initialization.
I have also attached our dts files and logs txt files for your refrence.
Your support would be greatly appreciated.
Thank you for your time and assistance.
0 Kudos
Reply
1 Solution
1,305 Views
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

As I can see you are using a custom board and will be difficult to reproduce the issue in my side, unfortunately we do not have references with 4GB configuration.

Since you are basing your design in our EVK, I suggest you check if there are some declarations in device tree that could be sharing resources with your new system requirements such as reserved memory and peripherals, remove all the nodes that you do no need and debug by adding/testing each one, one by one.

This might help you to check if removes the GPU crash in your design.

Did you try to use CMA configuration as is our Linux BSP?

Best regards.

View solution in original post

0 Kudos
Reply
4 Replies
882 Views
Santhrupthi_123
Contributor I

Hi,

Any information on the above issue. Please assist

0 Kudos
Reply
1,215 Views
Santhrupthi_123
Contributor I

Hi,

Thank you for your reply.

I have reverted the changes I previously made to the reserved memory and GPU contiguous memory. Instead, I only modified the CMA size in the BoardConfig.mk file as shown below:

ifeq ($(PRODUCT_IMX_DRM),true)
CMASIZE=736M
else
CMASIZE=800M
endif

Changed to:

ifeq ($(PRODUCT_IMX_DRM),true)
CMASIZE=1024M
else
CMASIZE=1184M
endif

With this change, the GPU crash is no longer occurring and the GPU driver is initializing properly. I have attached the logs for your reference.

Additionally, I added the MIPI DSI ILI9881C display driver in the kernel DTS. The driver is initializing correctly and the prepare function is being called, which can also be verified in the logs.

However, after Android initialization, the system gets stuck at the Android boot animation. At that point, the zygote and surfaceflinger init services keep restarting (as shown in the logs), and the display remains a black screen.

Also, I have not made any changes related to the init services.

Please let me know if you need any additional information.

Thanks.

0 Kudos
Reply
1,306 Views
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

As I can see you are using a custom board and will be difficult to reproduce the issue in my side, unfortunately we do not have references with 4GB configuration.

Since you are basing your design in our EVK, I suggest you check if there are some declarations in device tree that could be sharing resources with your new system requirements such as reserved memory and peripherals, remove all the nodes that you do no need and debug by adding/testing each one, one by one.

This might help you to check if removes the GPU crash in your design.

Did you try to use CMA configuration as is our Linux BSP?

Best regards.

0 Kudos
Reply
977 Views
Santhrupthi_123
Contributor I

Hi,

Thank you for your reply.

I have reverted the changes I previously made to the reserved memory and GPU contiguous memory. Instead, I only modified the CMA size in the BoardConfig.mk file as shown below:

ifeq ($(PRODUCT_IMX_DRM),true)
CMASIZE=736M
else
CMASIZE=800M
endif

Changed to:

ifeq ($(PRODUCT_IMX_DRM),true)
CMASIZE=1024M
else
CMASIZE=1184M
endif

With this change, the GPU crash is no longer occurring and the GPU driver is initializing properly. I have attached the logs for your reference.

Additionally, I added the MIPI DSI ILI9881C display driver in the kernel DTS. The driver is initializing correctly and the prepare function is being called, which can also be verified in the logs.

However, after Android initialization, the system gets stuck at the Android boot animation. At that point, the zygote and surfaceflinger init services keep restarting (as shown in the logs), and the display remains a black screen.

Also, I have not made any changes related to the init services.

Please let me know if you need any additional information.

Thanks.

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2323460%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ESupport%20Required%20for%20GPU%20Crash%20and%20Display%20Issue%20on%20i.MX8MM%20%E2%80%93%20Android%2012%20Porting%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2323460%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CBR%20%2F%3E%3CDIV%20class%3D%22%22%3EWe%20are%20currently%20working%20on%20porting%20the%20platform%20to%20Android%2012%20(android-12.0.0_2.0.0)%20for%20our%20i.MX8MM%20custom%20board%20with%20LPDDR4%204GB%20RAM.%20The%20source%20code%20was%20downloaded%20from%20the%20NXP%20website%3A%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CA%20title%3D%22https%3A%2F%2Fwww.nxp.com%2Fdesign%2Fdesign-center%2Fsoftware%2Fembedded-software%2Fi-mx-software%2Fandroid-os-for-i-mx-applications-processors%3AIMXANDROID%22%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fdesign%2Fdesign-center%2Fsoftware%2Fembedded-software%2Fi-mx-software%2Fandroid-os-for-i-mx-applications-processors%3AIMXANDROID%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20nofollow%22%3Ehttps%3A%2F%2Fwww.nxp.com%2Fdesign%2Fdesign-center%2Fsoftware%2Fembedded-software%2Fi-mx-software%2Fandroid-os-for-i-mx-applications-processors%3AIMXANDROID%3C%2FA%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EThe%20build%20and%20flashing%20process%20completed%20successfully.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSTRONG%3EInitial%20Issue%20%E2%80%93%20GPU%20Crash%20and%20Kernel%20Panic%3C%2FSTRONG%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EDuring%20the%204GB%20flash%2C%20we%20encountered%3A%3C%2FDIV%3E%3CUL%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EGPU%20crash%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EKernel%20panic%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EMemory%20abort%20issue%3C%2FDIV%3E%3C%2FLI%3E%3C%2FUL%3E%3CDIV%20class%3D%22%22%3ELogs%20I%20have%20been%20attached%20for%20your%20reference%20(gpu_crash_logs.txt)%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EBased%20on%20discussions%20in%20the%20NXP%20community%20forum%2C%20it%20was%20suggested%20to%20modify%20the%20reserved%20memory%20and%20GPU%20CMA%20size.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%20Accordingly%2C%20we%20updated%3A%3C%2FDIV%3E%3CUL%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EReserved%20memory%20(linux%2Ccma)%20in%20imx8mm.dtsi%20by%20modifying%20the%20alloc-ranges.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EGPU%20node%20reg%20configuration%20by%20updating%20the%20contiguous_mem%20region.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EBoardConfig.mk%20by%20increasing%20CMASIZE%3A%3C%2FDIV%3E%3C%2FLI%3E%3CUL%3E%3CLI%3E%3CDIV%20class%3D%22%22%3E736M%20%E2%86%92%201024M%20(DRM%20enabled)%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3E800M%20%E2%86%92%201184M%20(Non-DRM)%3C%2FDIV%3E%3C%2FLI%3E%3C%2FUL%3E%3C%2FUL%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20After%20these%20changes%2C%20the%20board%20boots%20successfully%20and%20we%20are%20able%20to%20enter%20adb%20shell%20without%20any%20kernel%20panic%20or%20memory%20abort.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSTRONG%3ECurrent%20Issue%20%E2%80%93%20Display%20and%20GPU%20Failure%3C%2FSTRONG%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EAfter%20stabilizing%20the%20boot%3A%3C%2FDIV%3E%3CUL%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EWe%20added%20our%20custom%20display%20driver%20ILI9881C%20and%20built%20it%20as%20a%20module%20(.ko).%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EThe%20driver%20loads%20successfully.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EThe%20probe%20function%20executes%20properly.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EReset%20GPIOs%20and%20pinctrl%20configurations%20are%20correct.%3C%2FDIV%3E%3C%2FLI%3E%3C%2FUL%3E%3CDIV%20class%3D%22%22%3EHowever%3A%3C%2FDIV%3E%3CUL%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EThe%20ili9881c_prepare()%20function%20is%20not%20being%20called%20in%20the%20normal%20boot%20scenario.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3ENo%20kernel%20logo%20is%20displayed.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EThe%20screen%20remains%20black%20after%20Android%20initialization.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3Esurfaceflinger%20and%20hwcomposer%20services%20keep%20restarting%20continuously.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EGalcore%20probe%20is%20failing%20again.%20Attached%20Surfaceflinger%20logs%20(Surfaceflinger.txt)%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%3C%2FDIV%3E%3C%2FLI%3E%3C%2FUL%3E%3CDIV%20class%3D%22%22%3E%3CSTRONG%3EAdditional%20Observation%20with%20CMA%3D512M%3C%2FSTRONG%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EWhen%20we%20explicitly%20pass%20CMA%20as%20512M%20in%20boot%20arguments%3A%3C%2FDIV%3E%3CBR%20%2F%3E%3CDIV%20class%3D%22%22%3E%3CSTRONG%3Esetenv%20bootargs%20%24%7Bbootargs%7D%20cma%3D512M%20saveenv%3C%2FSTRONG%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CPRE%3E%26nbsp%3B%3C%2FPRE%3E%3CDIV%20class%3D%22%22%3EIn%20this%20case%2C%20the%20device%20boots%20into%20%3CSTRONG%3Erecovery%20mode%3C%2FSTRONG%3E%2C%20and%20the%20ili9881c_prepare()%20function%20is%20invoked%20successfully.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EWe%20observe%20the%20following%20logs%3A%3C%2FDIV%3E%3CBR%20%2F%3E%3CDIV%20class%3D%22%22%3E%3CI%3ESAN%20inside%20imx_sec_dsim_encoder_atomic_check%20SAN%20inside%20imx_sec_dsim_encoder_atomic_enable%20SAN%20inside%20imx_sec_dsim_encoder_get_new_crtc%20imx_sec_dsim_drv%2032e10000.mipi_dsi%3A%20SAN%20atomic_enable%20called!%20panel%3D(____ptrval____)%20enabled%3D0%20ili9881c-dsi%2032e10000.mipi_dsi.0%3A%20Inside%20Prepare%20ili9881c-dsi%2032e10000.mipi_dsi.0%3A%20ili9881c_enable%3A%20Set%204-lane%20mode%20%3B%20Color%207%3C%2FI%3E%3C%2FDIV%3E%3CPRE%3E%26nbsp%3B%3C%2FPRE%3E%3CDIV%20class%3D%22%22%3EAt%20this%20stage%2C%20the%20panel%20initialization%20sequence%20runs%2C%20and%20display%20output%20is%20partially%20visible%20(attached%20Display%20image%20for%20reference).%20However%2C%20this%20behavior%20only%20occurs%20when%20CMA%20is%20set%20to%20512M%20via%20bootargs.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EReference%20Attempt%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EWe%20also%20tried%20GPU%20memory%20configuration%20changes%20based%20on%20the%20following%20NXP%20community%20discussion%3A%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CA%20title%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fi-MX-Processors%2FIMX8MM-Android-14-GPU-crashed-when-first-boot%2Ftd-p%2F1845026%22%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fi-MX-Processors%2FIMX8MM-Android-14-GPU-crashed-when-first-boot%2Ftd-p%2F1845026%22%20target%3D%22_blank%22%3Ehttps%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fi-MX-Processors%2FIMX8MM-Android-14-GPU-crashed-when-first-boot%2Ftd-p%2F1845026%3C%2FA%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EIn%20that%20case%3A%3C%2FDIV%3E%3CUL%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EGPU%20driver%20probe%20was%20successful.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EHowever%2C%20the%20GPU%20crash%20still%20occurred.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EThe%20display%20issue%20remained%20unresolved.%3C%2FDIV%3E%3C%2FLI%3E%3C%2FUL%3E%3CDIV%20class%3D%22%22%3ERequest%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EWe%20kindly%20request%20your%20guidance%20on%3A%3C%2FDIV%3E%3COL%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EProper%20GPU%20CMA%20and%20contiguous%20memory%20configuration%20for%20a%204GB%20LPDDR4%20setup%20on%20Android%2012.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EWhy%20ili9881c_prepare()%20is%20triggered%20only%20when%20CMA%3D512M%26nbsp%3Bis%20passed%20via%20bootargs.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EThe%20correct%20memory%20layout%20between%20CMA%2C%20GPU%20contiguous%20memory%2C%20and%20DDR%20mapping.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EResolving%20galcore%20crash%20and%20restoring%20stable%20kernel%20display%20output.%3C%2FDIV%3E%3C%2FLI%3E%3CLI%3E%3CDIV%20class%3D%22%22%3EStabilizing%20SurfaceFlinger%20and%20HWC%20initialization.%3C%2FDIV%3E%3C%2FLI%3E%3C%2FOL%3E%3CDIV%20class%3D%22%22%3EI%20have%20also%20attached%20our%20dts%20files%20and%20logs%20txt%20files%20for%26nbsp%3Byour%20refrence.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EYour%20support%20would%20be%20greatly%20appreciated.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3EThank%20you%20for%20your%20time%20and%20assistance.%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2323970%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Support%20Required%20for%20GPU%20Crash%20and%20Display%20Issue%20on%20i.MX8MM%20%E2%80%93%20Android%2012%20Porting%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2323970%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CDIV%3E%0A%3CDIV%3E%0A%3CDIV%3E%0A%3CP%3EHello%2C%3C%2FP%3E%0A%3CP%3EAs%20I%20can%20see%20you%20are%20using%20a%20custom%20board%20and%20will%20be%20difficult%20to%20reproduce%20the%20issue%20in%20my%20side%2C%20unfortunately%20we%20do%20not%20have%20references%20with%204GB%20configuration.%3C%2FP%3E%0A%3CP%3ESince%20you%20are%20basing%20your%20design%20in%20our%20EVK%2C%20I%20suggest%20you%20check%20if%20there%20are%20some%20declarations%20in%20device%20tree%20that%20could%20be%20sharing%20resources%20with%20your%20new%20system%20requirements%20such%20as%20reserved%20memory%20and%20peripherals%2C%20remove%20all%20the%20nodes%20that%20you%20do%20no%20need%20and%20debug%20by%20adding%2Ftesting%20each%20one%2C%20one%20by%20one.%3C%2FP%3E%0A%3CP%3EThis%20might%20help%20you%20to%20check%20if%20removes%20the%20GPU%20crash%20in%20your%20design.%3C%2FP%3E%0A%3CP%3EDid%20you%20try%20to%20use%20CMA%20configuration%20as%20is%20our%20%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fnxp-imx%2Flinux-imx%2Fblob%2Flf-6.12.y%2Farch%2Farm64%2Fboot%2Fdts%2Ffreescale%2Fimx8mm.dtsi%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3ELinux%20BSP%3C%2FA%3E%3F%3C%2FP%3E%0A%3CP%3EBest%20regards.%3C%2FP%3E%0A%3C%2FDIV%3E%0A%3C%2FDIV%3E%0A%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2327681%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Support%20Required%20for%20GPU%20Crash%20and%20Display%20Issue%20on%20i.MX8MM%20%E2%80%93%20Android%2012%20Porting%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2327681%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EHi%2C%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EThank%20you%20for%20your%20reply.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EI%20have%20reverted%20the%20changes%20I%20previously%20made%20to%20the%20reserved%20memory%20and%20GPU%20contiguous%20memory.%20Instead%2C%20I%20only%20modified%20the%20CMA%20size%20in%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3EBoardConfig.mk%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20file%20as%20shown%20below%3A%3C%2FSPAN%3E%3C%2FP%3E%3CPRE%3E%3CSPAN%3Eifeq%20(%24(PRODUCT_IMX_DRM)%2Ctrue)%0ACMASIZE%3D736M%0Aelse%0ACMASIZE%3D800M%0Aendif%3C%2FSPAN%3E%3C%2FPRE%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EChanged%20to%3A%3C%2FSPAN%3E%3C%2FP%3E%3CPRE%3E%3CSPAN%3Eifeq%20(%24(PRODUCT_IMX_DRM)%2Ctrue)%0ACMASIZE%3D1024M%0Aelse%0ACMASIZE%3D1184M%0Aendif%3C%2FSPAN%3E%3C%2FPRE%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EWith%20this%20change%2C%20the%20GPU%20crash%20is%20no%20longer%20occurring%20and%20the%20GPU%20driver%20is%20initializing%20properly.%20I%20have%20attached%20the%20logs%20for%20your%20reference.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EAdditionally%2C%20I%20added%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3EMIPI%20DSI%20ILI9881C%20display%20driver%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20in%20the%20kernel%20DTS.%20The%20driver%20is%20initializing%20correctly%20and%20the%20%3C%2FSPAN%3E%3CSPAN%3Eprepare%3C%2FSPAN%3E%3CSPAN%3E%20function%20is%20being%20called%2C%20which%20can%20also%20be%20verified%20in%20the%20logs.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EHowever%2C%20after%20Android%20initialization%2C%20the%20system%20gets%20stuck%20at%20the%20Android%20boot%20animation.%20At%20that%20point%2C%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3Ezygote%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20and%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3Esurfaceflinger%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20init%20services%20keep%20restarting%20(as%20shown%20in%20the%20logs)%2C%20and%20the%20display%20remains%20a%20black%20screen.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EAlso%2C%20I%20have%20not%20made%20any%20changes%20related%20to%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3Einit%20services%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EPlease%20let%20me%20know%20if%20you%20need%20any%20additional%20information.%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EThanks.%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2329398%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Support%20Required%20for%20GPU%20Crash%20and%20Display%20Issue%20on%20i.MX8MM%20%E2%80%93%20Android%2012%20Porting%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2329398%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CDIV%20class%3D%22%22%3E%3CDIV%20class%3D%22%22%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EHi%2C%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EThank%20you%20for%20your%20reply.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EI%20have%20reverted%20the%20changes%20I%20previously%20made%20to%20the%20reserved%20memory%20and%20GPU%20contiguous%20memory.%20Instead%2C%20I%20only%20modified%20the%20CMA%20size%20in%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3EBoardConfig.mk%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20file%20as%20shown%20below%3A%3C%2FSPAN%3E%3C%2FP%3E%3CPRE%3E%3CSPAN%3Eifeq%20(%24(PRODUCT_IMX_DRM)%2Ctrue)%0ACMASIZE%3D736M%0Aelse%0ACMASIZE%3D800M%0Aendif%3C%2FSPAN%3E%3C%2FPRE%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EChanged%20to%3A%3C%2FSPAN%3E%3C%2FP%3E%3CPRE%3E%3CSPAN%3Eifeq%20(%24(PRODUCT_IMX_DRM)%2Ctrue)%0ACMASIZE%3D1024M%0Aelse%0ACMASIZE%3D1184M%0Aendif%3C%2FSPAN%3E%3C%2FPRE%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EWith%20this%20change%2C%20the%20GPU%20crash%20is%20no%20longer%20occurring%20and%20the%20GPU%20driver%20is%20initializing%20properly.%20I%20have%20attached%20the%20logs%20for%20your%20reference.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EAdditionally%2C%20I%20added%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3EMIPI%20DSI%20ILI9881C%20display%20driver%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20in%20the%20kernel%20DTS.%20The%20driver%20is%20initializing%20correctly%20and%20the%20%3C%2FSPAN%3E%3CSPAN%3Eprepare%3C%2FSPAN%3E%3CSPAN%3E%20function%20is%20being%20called%2C%20which%20can%20also%20be%20verified%20in%20the%20logs.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EHowever%2C%20after%20Android%20initialization%2C%20the%20system%20gets%20stuck%20at%20the%20Android%20boot%20animation.%20At%20that%20point%2C%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3Ezygote%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20and%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3Esurfaceflinger%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E%20init%20services%20keep%20restarting%20(as%20shown%20in%20the%20logs)%2C%20and%20the%20display%20remains%20a%20black%20screen.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EAlso%2C%20I%20have%20not%20made%20any%20changes%20related%20to%20the%20%3C%2FSPAN%3E%3CSTRONG%3E%3CSPAN%3Einit%20services%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%3E.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EPlease%20let%20me%20know%20if%20you%20need%20any%20additional%20information.%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EThanks.%3C%2FSPAN%3E%3C%2FP%3E%3C%2FDIV%3E%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2330692%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Support%20Required%20for%20GPU%20Crash%20and%20Display%20Issue%20on%20i.MX8MM%20%E2%80%93%20Android%2012%20Porting%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2330692%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3CBR%20%2F%3E%3CBR%20%2F%3EAny%20information%20on%20the%20above%20issue.%20Please%20assist%3C%2FP%3E%3C%2FLINGO-BODY%3E