Kernel Panic in imx6_pm_common_init with 3.14.28 kernel

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

Kernel Panic in imx6_pm_common_init with 3.14.28 kernel

Jump to solution
1,711 Views
dilshad_alam
Senior Contributor II

Trying to Bring up Kernel from Git repo.

http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/log/?h=imx_3.14.28_1.0.0_ga

Kernel Panic is observed in imx6_pm_common_init

[    0.066166] Unable to handle kernel paging request at virtual address f4000000

[    0.073495] pgd = 80004000

[    0.076297] [f4000000] *pgd=00000000

[    0.079982] Internal error: Oops - BUG: 805 [#1] ARM

[    0.085045] Modules linked in:

[    0.088212] CPU: 0 PID: 1 Comm: swapper Not tainted 3.14.28 #40

[    0.094235] task: 8c058000 ti: 8c05c000 task.ti: 8c05c000

[    0.099746] PC is at imx6_pm_common_init+0x70/0x26c

[    0.104728] LR is at suspend_set_ops+0x90/0xa0

[    0.109272] pc : [<805666cc>]    lr : [<8005b038>]    psr: 60000153

[    0.109272] sp : 8c05de80  ip : 8c05de68  fp : 8c05de9c

[    0.120949] r10: 8058d3d8  r9 : 00000000  r8 : 805567e8

[    0.126273] r7 : 805f1d40  r6 : 805a18d0  r5 : 8058d3c0  r4 : f4000000

[    0.132902] r3 : 00000000  r2 : f4000000  r1 : 00000000  r0 : 805f2edc

[    0.139533] Flags: nZCv  IRQs on  FIQs off  Mode SVC_32  ISA ARM  Segment kernel

[    0.147032] Control: 10c53c7d  Table: 10004059  DAC: 00000015

[    0.152878] Process swapper (pid: 1, stack limit = 0x8c05c230)

[    0.158811] Stack: (0x8c05de80 to 0x8c05e000)

[    0.163273] de80: 8c14cc00 8058d3c0 805a4360 805f1d40 8c05deac 8c05dea0 80566a80 80566668

[    0.171560] dea0: 8c05dec4 8c05deb0 8055f7ac 80566a78 8058c464 00000003 8c05ded4 8c05dec8

[    0.179849] dec0: 8055680c 8055f5bc 8c05df54 8c05ded8 80008818 805567f4 8c05df04 80044214

[    0.188138] dee0: 8fffc2ab 8fffc2a5 8c05df00 8c05def8 80044214 80044198 8fffc2a5 00000000

[    0.196426] df00: 8c05df54 8c05df10 80044400 805554d8 00000000 8055372c 00000003 00000003

[    0.204714] df20: 00000061 8055311c 8c05df54 00000003 8058d3c0 805a4360 805f1d40 00000061

[    0.213002] df40: 00000000 8058d3d8 8c05df94 8c05df58 80555b48 80008780 00000003 00000003

[    0.221289] df60: 805554cc 00000000 00000000 00000000 00000000 803e05b0 00000000 00000000

[    0.229577] df80: 00000000 00000000 8c05dfac 8c05df98 803e05c8 80555a64 8c05c000 00000000

[    0.237864] dfa0: 00000000 8c05dfb0 8000e378 803e05bc 00000000 00000000 00000000 00000000

[    0.246151] dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

[    0.254438] dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000

[    0.262718] Backtrace:

[    0.265278] [<8056665c>] (imx6_pm_common_init) from [<80566a80>] (imx6dl_pm_init+0x14/0x1c)

[    0.273734]  r7:805f1d40 r6:805a4360 r5:8058d3c0 r4:8c14cc00

[    0.279542] [<80566a6c>] (imx6dl_pm_init) from [<8055f7ac>] (imx6q_init_machine+0x1fc/0x27c)

[    0.288093] [<8055f5b0>] (imx6q_init_machine) from [<8055680c>] (customize_machine+0x24/0x48)

[    0.296720]  r4:00000003 r3:8058c464

[    0.300420] [<805567e8>] (customize_machine) from [<80008818>] (do_one_initcall+0xa4/0x118)

[    0.308884] [<80008774>] (do_one_initcall) from [<80555b48>] (kernel_init_freeable+0xf0/0x1b8)

[    0.317599]  r10:8058d3d8 r9:00000000 r8:00000061 r7:805f1d40 r6:805a4360 r5:8058d3c0

[    0.325582]  r4:00000003

[    0.328228] [<80555a58>] (kernel_init_freeable) from [<803e05c8>] (kernel_init+0x18/0xf4)

[    0.336508]  r10:00000000 r8:00000000 r7:00000000 r6:00000000 r5:803e05b0 r4:00000000

[    0.344501] [<803e05b0>] (kernel_init) from [<8000e378>] (ret_from_fork+0x14/0x20)

[    0.352171]  r4:00000000 r3:8c05c000

[    0.355865] Code: e282233d e0822221 e203140a e0824221 (e7823221)

[    0.362080] ---[ end trace 994439b5388a6327 ]---

[    0.366798] Kernel panic - not syncing: Fatal exception

[   82.909701] random: nonblocking pool is initialized

Labels (2)
0 Kudos
Reply
1 Solution
1,414 Views
dilshad_alam
Senior Contributor II

This Problem is solved now.

PM code is completely changed in 3.14.28 kernel.

iram_tlb_base_addr Variable was not getting initialized since it was not able to find DT poperty fsl,lpm-sram which is responsible for IRAM/OCRAM allocation.

Enabled the DT configuration to fix this issue.

View solution in original post

0 Kudos
Reply
6 Replies
1,415 Views
dilshad_alam
Senior Contributor II

This Problem is solved now.

PM code is completely changed in 3.14.28 kernel.

iram_tlb_base_addr Variable was not getting initialized since it was not able to find DT poperty fsl,lpm-sram which is responsible for IRAM/OCRAM allocation.

Enabled the DT configuration to fix this issue.

0 Kudos
Reply
1,414 Views
igorpadykov
NXP Employee
NXP Employee

Hi Dilshad

please try ldo mode (not ldo bypass) and check processor power supplies.

One can check Chapter 4 Requirements for Power Management IMX6DQ6SDLHDG

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply
1,414 Views
dilshad_alam
Senior Contributor II

Hi Igor,

Thanks for your reply.

Can you please suggest the changes which needs to be incorporated for this?

Regards,

Dilshad

0 Kudos
Reply
1,414 Views
igorpadykov
NXP Employee
NXP Employee

Hi Dilshad

please try with imx6q-sabresd-ldo.dts

Best regards

igor

0 Kudos
Reply
1,414 Views
dilshad_alam
Senior Contributor II

Hi Igor,

I have tried it, but result is same.

Could you please tell changes incorporated between 3.10.17 and 3.14.28 kernel for mach-imx/pm-imx6.c file.

or

Any application note on Power Domain related changed between these two versions?

Thanks,

Dilshad

0 Kudos
Reply
1,414 Views
igorpadykov
NXP Employee
NXP Employee

Hi Dilshad

for changes you can look at linux documents

L3.10.17_1.0.0_IMX6QDLS_BUNDLE

L3.14.28_1.0.0_iMX6QDLS_BUNDLE

I am not aware of any application notes describing linux power

management drivers. Suggest to build minimal image and try.

What PMIC are you using ? Had you checked power voltages by osilloscope,

are they comply with datasheet requirements ?

Best regards

igor

0 Kudos
Reply