i.MX8M: System may get hang when cluster enters/exits low power mode in multicore context

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

i.MX8M: System may get hang when cluster enters/exits low power mode in multicore context

i.MX8M: System may get hang when cluster enters/exits low power mode in multicore context

Symptoms

 

On i.MX8MP, when inputting a 80% duty, 0.4V-1.8V, 3KHz square wave, we observed that the system may hang.

We also tested i.MX8MN and i.MX8MM and observed the same phenomenon.

In i.MX8MN RM, there's a note in GPC chapter:

 
terry_lv_2-1705459649653.png

  We believe that the issue described in this note exists not only in the iMX8MN, but also in the iMX8MP and iMX8MM. Meanwhile, there is not only a problem with power down in this issue, but also a problem with wait mode.

Diagnosis

 

In debugging, we find that avoiding accessing LPCR_A53_AD register in imx_set_cluster_powerdown can fix the issue.

So we think that due to frequently power up/down of cores, cores have chances failed to power up.

When the IRQ behavior become more complex, because the IRQ is an async event, it will come in any time. if the wait mode is enabled,

in some conner case, the GPC internal LPM mode state machine will run into problem, then lead to system failure.

Solution

 

1. A workaround patch that bypass the wait mode setting during the cpuidle..

See the patch attached.

2. Will add the Note about "SCU power down should not be enabled in wait mode" to i.MX8MP and i.MX8MM RM.

3. Will try to identify this issue into errta document, ticket TKT0632147.

Attachments
No ratings
Version history
Last update:
‎01-16-2024 08:20 PM
Updated by: