mini2440 linux 串口驅動異常問題

最剛好掏出塵封的mini2440,弄了個buildroot 2016編譯mini2440 linux內核 3.0.4版本

出現如下問題:

Unable to handle kernel paging request at virtual address 30c39280

pgd = c0004000
[30c39280] *pgd=00000000
Internal error: Oops: 5 [#1]
last sysfs file:
Modules linked in:
CPU: 0    Not tainted  (2.6.32.63 #2)
PC is at kmem_cache_alloc+0x30/0x88
LR is at con_insert_unipair+0x34/0xdc
pc : [<c008715c>]    lr : [<c019bd4c>]    psr: 20000093
sp : c3823f00  ip : 0000005f  fp : 00000003
r10: c0417c34  r9 : c03d3644  r8 : 00000001
r7 : 000000d0  r6 : 00000080  r5 : a0000013  r4 : 30c39280
r3 : 00000000  r2 : a0000093  r1 : 000000d0  r0 : c03bc40c
Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: c000717f  Table: 30004000  DAC: 00000017
Process swapper (pid: 1, stack limit = 0xc3822270)
Stack: (0xc3823f00 to 0xc3824000)
3f00: c03bc40c 000000d0 0000005f 0000f804 c3929600 0000005f 0000001f c019bd4c
3f20: c03d364a c3801000 c3929600 0000005f 00000000 c019c940 0000005f c03d364a
3f40: 00000014 00000000 00000014 c0418010 c00187b4 00000000 c3822030 00000000
3f60: 00000000 c0018f48 00000000 00000000 c0417d34 c00193b8 c036a2b4 c016b278
3f80: 20000013 c04178a0 00000000 c03e34c0 c00187b4 c0018884 c03477cf 00000002
3fa0: 00a10e78 00a10e78 00000002 c002837c 000000cc 00000000 00a10e78 00000002
3fc0: 00000054 c00219dc c0021b9c 00000000 00000000 00000000 00000000 c00089b0
3fe0: 00000000 00000000 c000890c 00000000 00000000 c00296f4 ffffffff ffffffff
[<c008715c>] (kmem_cache_alloc+0x30/0x88) from [<c019bd4c>] (con_insert_unipair+0x34/0xdc)
[<c019bd4c>] (con_insert_unipair+0x34/0xdc) from [<c019c940>] (con_set_default_unimap+0xc4/0x14c)
[<c019c940>] (con_set_default_unimap+0xc4/0x14c) from [<c0018f48>] (console_map_init+0x38/0x4c)
[<c0018f48>] (console_map_init+0x38/0x4c) from [<c00193b8>] (vty_init+0x120/0x15c)
[<c00193b8>] (vty_init+0x120/0x15c) from [<c0018884>] (tty_init+0xd0/0x104)
[<c0018884>] (tty_init+0xd0/0x104) from [<c002837c>] (do_one_initcall+0x5c/0x190)
[<c002837c>] (do_one_initcall+0x5c/0x190) from [<c00089b0>] (kernel_init+0xa4/0x110)
[<c00089b0>] (kernel_init+0xa4/0x110) from [<c00296f4>] (kernel_thread_exit+0x0/0x8)
Code: e5904080 e5906090 e3540000 1590308c (17943103)
---[ end trace e06eb57aa385dd0b ]---
Kernel panic - not syncing: Attempted to kill init!
[<c002d598>] (unwind_backtrace+0x0/0xcc) from [<c02c2f48>] (panic+0x3c/0x110)
[<c02c2f48>] (panic+0x3c/0x110) from [<c003d534>] (do_exit+0x60/0x5b8)
[<c003d534>] (do_exit+0x60/0x5b8) from [<c002c39c>] (die+0x150/0x174)
[<c002c39c>] (die+0x150/0x174) from [<c02c2e5c>] (__do_kernel_fault.part.3+0x54/0x64)
[<c02c2e5c>] (__do_kernel_fault.part.3+0x54/0x64) from [<c002e558>] (do_page_fault+0x1c4/0x1dc)
[<c002e558>] (do_page_fault+0x1c4/0x1dc) from [<c0028220>] (do_DataAbort+0x34/0x98)
[<c0028220>] (do_DataAbort+0x34/0x98) from [<c00288e0>] (__dabt_svc+0x40/0x60)

Exception stack(0xc3823eb8 to 0xc3823f00)


找了很久,原因未知,先留個念想。

但最終通過更換gcc版本解決:4.8.x -> 4.5.4

求教?!




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章