上电日志 ddr 异常 (ddr内存-->内存是其它硬件与CPU进行沟通的桥梁)
(220817_11:21:48.229)[dramc] DRAM_FATAL_ERR_FLAG = 0x80000020
(220817_11:21:48.229)[dramc] fatal dram exception found! reset system..
(220817_11:22:25.531)Pll init start... PLL(Phase Locked Loop): 为锁相回路或锁相环,用来统一整合时钟信号
(220817_11:22:25.541)Pll init Done!
程序跑飞是指系统受到某种干扰后,程序计数器PC的值偏离了给定的唯一变化历程,导致程序运行偏离正常的运行路径.
程序跑飞因素及后果往往是不可预计的.在很多情况下,程序跑飞后系统会进入死循环而导致死机.”
导致问题:PMU(电源管理,cpu,ddr)
(220817_14:36:50.274)[ 49.499550] <2>.(2)[108:kswapd0]Unable to handle kernel NULL pointer dereference at virtual address 00000004
(220817_14:36:50.290)[ 49.500981] <2>.(2)[108:kswapd0]pgd = c0004000
(220817_14:36:50.290)[ 49.501897] [00000004] *pgd=00000000
(220817_14:36:50.290)[ 49.502378] <2>-(2)[108:kswapd0]Internal error: Oops: 5 [#1] PREEMPT SMP ARM
(220817_14:36:50.290)[ 49.503266] disable aee kernel api[ 49.503672] <2>-(2)[108:kswapd0]Kernel Offset: disabled
(220817_14:36:50.290)[ 49.504333] Modules linked in: wlan_drv_gen4m bf18b000 (null) 1900544 0 (O) wmt_chrdev_wifi bf182000 (null) 20480 0 (O) gps_drv bf175000 (null) 32768 0 (O) fmradio_drv bf140000 (null) 176128 0 (O) bt_drv bf135000 (null) 28672 0 (O) wmt_drv bf008000 (null) 1081344 0 (O) fpsgo bf000000 (null) 16384 0 (O)
(220817_14:36:51.289)[ 50.507809] <2>-(2)[108:kswapd0]Non-crashing CPUs did not react to IPI
(220817_14:36:51.321)[ 50.508640] <2>-(2)[108:kswapd0]CPU: 2 PID: 108 Comm: kswapd0 Tainted: G B W O 4.9.117 #2
(220817_14:36:51.321)[ 50.509760] <2>-(2)[108:kswapd0]Hardware name: Generic DT based system
(220817_14:36:51.321)[ 50.510577] <2>-(2)[108:kswapd0]task: dc47e000 task.stack: dc4c6000
(220817_14:36:51.321)[ 50.511370] <2>-(2)[108:kswapd0]PC is at down_read_trylock+0xc/0x64
(220817_14:36:51.321)[ 50.512159] <2>-(2)[108:kswapd0]LR is at page_lock_anon_vma_read+0x58/0x164
(220817_14:36:51.321)[ 50.513029] <2>-(2)[108:kswapd0]pc : [<c01a4f54>] lr : [<c0294058>] psr: 200f0013
(220817_14:36:51.321)[ 50.513029] <2>sp : dc4c7b58 ip : dc4c7b68 fp : dc4c7b64
(220817_14:36:51.321)[ 50.514707] <2>-(2)[108:kswapd0]r10: dc4c7c90 r9 : 00000001 r8 : 00000004
(220817_14:36:51.321)[ 50.515577] <2>-(2)[108:kswapd0]r7 : 00000001 r6 : dd75d60c r5 : cd9f31f1 r4 : cd9f31f0
(220817_14:36:51.321)[ 50.516608] <2>-(2)[108:kswapd0]r3 : 00000100 r2 : dc47e000 r1 : dc4c7bf0 r0 : 00000004
(220817_14:36:51.321)[ 50.517640] <2>-(2)[108:kswapd0]Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
(220817_14:36:51.321)[ 50.518747] <2>-(2)[108:kswapd0]Control: 10c5383d Table: 4d22806a DAC: 00000051
(220817_14:36:51.321)[ 50.519682] <2>-(2)[108:kswapd0]
(220817_14:36:51.321)[ 50.519682] <2>PC: 0xc01a4ed4:
pmic(电源管理)
重启 没有进入内核 [LK]jump to K64 0x40008000 pmic
(220822_16:14:08.810)[1378] lk boot time = 1277 ms
(220822_16:14:08.810)[1379] lk boot mode = 0
(220822_16:14:08.810)[1380] lk boot reason = usb
(220822_16:14:08.810)[1380] lk finished --> jump to linux kernel 32Bit
(220822_16:14:08.810)[1381]
(220822_16:14:08.810)[LK]jump to K64 0x40008000
(220822_16:14:08.810)[ATF](0)[1.491366]INFO: clear_all_on_mux
(220822_16:14:08.810)[ATF](0)[1.491836]INFO: SPM: enable SPMC mode
(220822_16:14:08.811)[ATF](0)[1.492393]INFO: save kernel info
(220822_16:14:08.811)[ATF](0)[1.492862]NOTICE: Kernel is 32Bit
(220822_16:14:08.811)[ATF](0)[1.493335]NOTICE: pc=0x40008000, r0=0x0, r1=0x2041, r2=0x47880000
(220822_16:14:08.811)[ATF](0)[1.494154]INFO: BL3-1: Preparing for EL3 exit to normal world, Kernel
(220822_16:14:08.811)[ATF](0)[1.495037]INFO: BL3-1: Next image address = 0x40008000
(220822_16:14:08.811)[ATF](0)[1.495758]INFO: BL3-1: Next image spsr = 0x1da
(220822_16:14:08.811)[ATF](0)[1.496397]INFO: el3_exit
(220822_16:14:11.040)Pll init start...
(220822_16:14:11.047)Pll init Done!
正确开机日志 进入内核,有内核[ 0.000000] 打印
[ATF](0)[1.444597]INFO: clear_all_on_mux
[ATF](0)[1.445067]INFO: SPM: enable SPMC mode
[ATF](0)[1.445622]INFO: save kernel info
[ATF](0)[1.446091]NOTICE: Kernel is 32Bit
[ATF](0)[1.446566]NOTICE: pc=0x40008000, r0=0x0, r1=0x2041, r2=0x47880000
[ATF](0)[1.447384]INFO: BL3-1: Preparing for EL3 exit to normal world, Kernel
[ATF](0)[1.448267]INFO: BL3-1: Next image address = 0x40008000
[ATF](0)[1.448988]INFO: BL3-1: Next image spsr = 0x1da
ATF](0)[1.449627]INFO: el3_exit
[ 0.000000] <3>-(0)[0:swapper]Booting Linux on physical CPU 0x0
[" 0.000000] <3>-(0)[0:swapper]Linux version 4.9.117 (xyauto@zx-46) (gcc version 4.9.x 20150123 (prerelease) (GCC) ) #2 SMP PREEMPT Thu Jun 30 22:08:27 CST 2032
[ 0.000000] <3>-(0)[0:swapper]CPU: ARMv7 Processor [410fd034] revision 4 (ARMv7), cr=10c5383d
[ 0.000000] <3>-(0)[0:swapper]CPU: div instructions available: patching division code
[ 0.000000] <3>-(0)[0:swapper]CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] <3>-(0)[0:swapper]OF: fdt:Machine model: AC8257V/WAB
[ 0.000000] <3>-(0)[0:swapper]mrdump_get_cb: mrdump_cbaddr=0x0010e800, mrdump_cbsize=0x00001400
[ 0.000000] <3>-(0)[0:swapper]OF: reserved mem: failed to allocate memory for node 'zone-movable-cma-memory'
[ 0.000000] <3>-(0)[0:swapper][CONNADP][W]reserve_memory_consys_fn: name: consys-reserve-memory,base: 0xbf000000,size: 0x400000
[ 0.000000] <3>-(0)[0:swapper]OF: reserved mem: initialized node consys-reserve-memory, compatible id mediatek
如果时间重启相差时间远 中间没有报错 硬件问题 看ddr pmic 重启相差时间不远 Android 问题
大概300ms
(220823_14:46:40.163)[ 2.308077] <1>.(1)[204:kworker/u16:4][AUTOK][HS400]======Cost:134 ms====== 突然断电了 没有日志打印了
(220823_14:47:40.534)Pll init start...
(220823_14:47:40.534)Pll init Done!
pmic 如果时间重启相差时间远 500ms
(220824_14:38:19.166)kedump: offset:0x3e8, data:0x481014b8, size:0x40
(220824_14:38:19.166)kedump mini done
(220824_14:38:19.166)[715] kedump:full pmic reset!
(220824_14:38:19.166)[716] [WDT] mtk_arch_full_reset
(220824_14:38:19.658)Pll init start...
(220824_14:38:19.661)Pll init Done!
看门狗问题
(220824_14:38:06.821)[ATF](0)[10.148177]NOTICE: Kernel WDT not ready
(220824_14:38:06.821)[ATF](0)[10.148715]NOTICE: Wait timeout.
(220824_14:38:17.240)Pll init start...
(220824_14:38:17.252)Pll init Done!
开不了机 preloader fatal error... ddr 问题
(220902_15:16:31.256)rank 0 coarse = 14
(220902_15:16:31.256)rank 0 fine = 64
(220902_15:16:31.256)10:| 0 0 0 0 0 0 0 0
(220902_15:16:31.256)cannot find opt_dle value
(220902_15:16:31.256)[EMI] DRAMC calibration failed
(220902_15:16:31.256)[MEM] complex R/W mem test fail :FFFFFFFE
(220902_15:16:31.256)<ASSERT> memory.c:line 109 0
(220902_15:16:31.256)[PLFM] preloader fatal error...
标签:ATF,14,16,36,220817,108,Android,日志,底层
From: https://www.cnblogs.com/kato-T/p/18089154