How to find a stable configuration for imx6q ddr3

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

How to find a stable configuration for imx6q ddr3

757 Views
lixuhui112
Contributor I

Hello all

         We had designed a custom board based on imx6qsabre-AI , now we have 4 boards with test ,

we use " I.MX6DQSDL DDR3 Script Aid V0.10.xlsx " and "DDR_stress_tester_v2.52" config and test ddr3

b2f13448.bmp.bmp

d36dcdc9.bmp.bmp

but  4 boards calibration not the same result .

1 how can I find a calibration result suitable for my board (Late mass production of the board )

2 now I one calibration result in uboot ,but the uboot load the kernel and file system always appear : Unable to handle kernel paging request at virtual address a8abca4e ,   such  as

###########################################################################################     

IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready

fec 2188000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx

IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

IP-Config: Guessing netmask 255.255.255.0

IP-Config: Complete:

     device=eth0, hwaddr=00:01:02:03:04:05, ipaddr=192.168.23.111, mask=255.255.255.0, gw=255.255.255.255

     host=192.168.23.111, domain=, nis-domain=(none)

     bootserver=255.255.255.255, rootserver=192.168.23.249, rootpath=

ALSA device list:

  No soundcards found.

VFS: Mounted root (nfs filesystem) readonly on device 0:14.

devtmpfs: mounted

Freeing unused kernel memory: 400K (80a7c000 - 80ae0000)

Unable to handle kernel paging request at virtual address a8abca4e

pgd = a8a6c000

[a8abca4e] *pgd=38a1141e(bad)

Internal error: Oops: 1 [#1] PREEMPT SMP ARM

Modules linked in:

CPU: 0 PID: 1 Comm: init Not tainted 4.1.15+ #26

Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)

task: a8070000 ti: a8054000 task.ti: a8054000

PC is at inet_gro_receive+0x104/0x278

LR is at inet_gro_receive+0x58/0x278

pc : [<806595dc>]    lr : [<80659530>]    psr: 50030113

sp : a8055de0  ip : 00000000  fp : 00000008

r10: 004009f9  r9 : 0000000e  r8 : 808272fc

r7 : 00000000  r6 : a82715b4  r5 : a8abca4e  r4 : a87facc0

r3 : 00000000  r2 : 68050045  r1 : a8abca62  r0 : 6f17a8c0

Flags: nZcV  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user

Control: 10c53c7d  Table: 38a6c04a  DAC: 00000015

Process init (pid: 1, stack limit = 0xa8054210)

Stack: (0xa8055de0 to 0xa8056000)

5de0: a8001e00 80ae26bc abc6c780 a87facc0 a8271598 00000040 00000000 00000000

5e00: 0000000e a8271000 00000008 805f355c a8271000 00000a40 00000002 80ae41b4

5e20: 000007f1 a8271598 a87facc0 a87facc0 00000000 ac04a500 00000001 a8271000

5e40: a8271000 805f38a0 00000000 ac04a500 a87facc0 80424c6c 00000000 a8070000

5e60: 80ae2504 00000040 00000000 02000022 00000000 a8240000 a82714c0 00000000

5e80: a82404a0 80ae6b94 a87f8f00 00000000 00000002 a8271524 00000000 ab70c740

5ea0: 00000040 a8271598 80ae26bc a80702ac 80ae2594 a8271598 80424828 80ae2100

5ec0: 0000012c 00000040 80ade000 a8055ef0 ffff8d56 805f3264 a8a68000 ab70d000

5ee0: 2ac2f000 80b49e08 80ae3274 80ae3274 a8055ef0 a8055ef0 a8055ef8 a8055ef8

5f00: 00000001 00000000 00000003 80ae208c a8054000 00000100 80ae2080 80ae2080

5f20: 40000003 80037820 a6023550 a60235a0 a8055f28 80b4f000 0000000a ffff8d55

5f40: 80ae2100 00400100 a8161600 80adbbe8 00000000 0000011d 00000000 00000001

5f60: a8055fb0 a8008000 00005a3c 80037c00 80adbbe8 8006c820 f4a0010c 80ae2834

5f80: a8055fb0 f4a00100 10c53c7d 76e6c970 76e6ebfc 80009450 76f70244 00030010

5fa0: ffffffff 10c53c7d 10c53c7d 80013444 76fd5650 76e6c574 867eeb9f 76e751ec

5fc0: 000bb28c 76edd884 00000000 7ee4aaf0 76fd7050 76e6c970 76e6ebfc 00005a3c

5fe0: 76e6e2bc 7ee4aaa0 0000000b 76f70244 00030010 ffffffff cff7bd15 7fedf7cd

[<806595dc>] (inet_gro_receive) from [<805f355c>] (dev_gro_receive+0x1fc/0x394)

[<805f355c>] (dev_gro_receive) from [<805f38a0>] (napi_gro_receive+0x20/0xa4)

[<805f38a0>] (napi_gro_receive) from [<80424c6c>] (fec_enet_rx_napi+0x444/0xc88)

[<80424c6c>] (fec_enet_rx_napi) from [<805f3264>] (net_rx_action+0x1d8/0x2d4)

[<805f3264>] (net_rx_action) from [<80037820>] (__do_softirq+0x120/0x238)

[<80037820>] (__do_softirq) from [<80037c00>] (irq_exit+0xc0/0xfc)

[<80037c00>] (irq_exit) from [<8006c820>] (__handle_domain_irq+0x80/0xec)

[<8006c820>] (__handle_domain_irq) from [<80009450>] (gic_handle_irq+0x24/0x5c)

[<80009450>] (gic_handle_irq) from [<80013444>] (__irq_usr+0x44/0x60)

Exception stack(0xa8055fb0 to 0xa8055ff8)

5fa0:                                     76fd5650 76e6c574 867eeb9f 76e751ec

5fc0: 000bb28c 76edd884 00000000 7ee4aaf0 76fd7050 76e6c970 76e6ebfc 00005a3c

5fe0: 76e6e2bc 7ee4aaa0 0000000b 76f70244 00030010 ffffffff

Code: e0823862 e1e03003 e1b03823 1affffdf (e8950404)

---[ end trace 0998ea5722b210b7 ]---

Kernel panic - not syncing: Fatal exception in interrupt

CPU1: stopping

CPU: 1 PID: 0 Comm: swapper/1 Tainted: G      D         4.1.15+ #26

Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)

[<80015d04>] (unwind_backtrace) from [<800126a8>] (show_stack+0x10/0x14)

[<800126a8>] (show_stack) from [<80788da4>] (dump_stack+0x84/0xc4)

[<80788da4>] (dump_stack) from [<80014c0c>] (handle_IPI+0x178/0x18c)

[<80014c0c>] (handle_IPI) from [<80009484>] (gic_handle_irq+0x58/0x5c)

[<80009484>] (gic_handle_irq) from [<80013180>] (__irq_svc+0x40/0x74)

Exception stack(0xa8099f50 to 0xa8099f98)

9f40:                                     a8099f98 fffffff7 916814bb 00000001

9f60: ab717e90 00000000 80174d10 00000001 916814bb 00000001 00000001 00000000

9f80: 00000017 a8099f98 a6aaaaab 804fc63c 80000113 ffffffff

[<80013180>] (__irq_svc) from [<804fc63c>] (cpuidle_enter_state+0xd8/0x20c)

[<804fc63c>] (cpuidle_enter_state) from [<8006410c>] (cpu_startup_entry+0x1fc/0x320)

[<8006410c>] (cpu_startup_entry) from [<1000952c>] (0x1000952c)

CPU2: stopping

CPU: 2 PID: 0 Comm: swapper/2 Tainted: G      D         4.1.15+ #26

Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)

[<80015d04>] (unwind_backtrace) from [<800126a8>] (show_stack+0x10/0x14)

[<800126a8>] (show_stack) from [<80788da4>] (dump_stack+0x84/0xc4)

[<80788da4>] (dump_stack) from [<80014c0c>] (handle_IPI+0x178/0x18c)

[<80014c0c>] (handle_IPI) from [<80009484>] (gic_handle_irq+0x58/0x5c)

[<80009484>] (gic_handle_irq) from [<80013180>] (__irq_svc+0x40/0x74)

Exception stack(0xa809bf50 to 0xa809bf98)

bf40:                                     a809bf98 fffffff7 916814bb 00000001

bf60: ab723e90 00000000 80174e5e 00000001 916814bb 00000001 00000001 00000000

bf80: 00000017 a809bf98 a6aaaaab 804fc63c 80000113 ffffffff

[<80013180>] (__irq_svc) from [<804fc63c>] (cpuidle_enter_state+0xd8/0x20c)

[<804fc63c>] (cpuidle_enter_state) from [<8006410c>] (cpu_startup_entry+0x1fc/0x320)

[<8006410c>] (cpu_startup_entry) from [<1000952c>] (0x1000952c)

CPU3: stopping

CPU: 3 PID: 0 Comm: swapper/3 Tainted: G      D         4.1.15+ #26

Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)

[<80015d04>] (unwind_backtrace) from [<800126a8>] (show_stack+0x10/0x14)

[<800126a8>] (show_stack) from [<80788da4>] (dump_stack+0x84/0xc4)

[<80788da4>] (dump_stack) from [<80014c0c>] (handle_IPI+0x178/0x18c)

[<80014c0c>] (handle_IPI) from [<80009484>] (gic_handle_irq+0x58/0x5c)

[<80009484>] (gic_handle_irq) from [<80013180>] (__irq_svc+0x40/0x74)

Exception stack(0xa809df50 to 0xa809df98)

df40:                                     a809df98 fffffff7 916814bb 00000001

df60: ab72fe90 00000000 80174e5e 00000001 916814bb 00000001 00000001 00000000

df80: 00000017 a809df98 a6aaaaab 804fc63c 80000113 ffffffff

[<80013180>] (__irq_svc) from [<804fc63c>] (cpuidle_enter_state+0xd8/0x20c)

[<804fc63c>] (cpuidle_enter_state) from [<8006410c>] (cpu_startup_entry+0x1fc/0x320)

[<8006410c>] (cpu_startup_entry) from [<1000952c>] (0x1000952c)

---[ end Kernel panic - not syncing: Fatal exception in interrupt

Labels (2)
0 Kudos
2 Replies

352 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi xuhui li,

You can refer to the Freescale i.MX6 DRAM Port Application Guide-DDR3  in our community. It can tell you how to configure the DDR in details. And you also can read the DRAM Customization on i.MX6x it will help you.
Have a great day,
Dan

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

0 Kudos

352 Views
lixuhui112
Contributor I

yes ,my ddr config is refer Freescale i.MX6 DRAM Port Application Guide-DDR3 , and I use the config file to calibration is ok . my means is :

I have  4 boards calibration not the same result .

1 how can I find a calibration result suitable for my board (Late mass production of the board )

2 now I one calibration result in uboot ,but the uboot load the kernel and file system always appear : Unable to handle kernel paging request at virtual address a8abca4e ,

0 Kudos