도와주세요!!
안녕하세요~
현재 S5PV210으로 열심히 테스트하고 있는 하드웨어 유저입니다.
단말기 테스트중에 특정한 곳에서 계속 Booting 불량이 발생해서요.
고수님들의 조언을 듣고자 글을 남깁니다.
우선, 문제 현상은 커널 부팅시 아래와 같은 메세지가 뜨며, 부팅이 멈춥니다.
(부팅 멈추는 곳은 일정치가 않습니다.)
여기서, 중요한 부분은 빨간색의 글씨중 제일 마지막 부분인 주소가 항상 다르다는건데요.
DDR2 타이밍 문제가 아닐까하여 EMRS REGISTRY의 ODT 옵션을 설정하여 150ohm으로
맞추었더니 부팅멈춤 현상이 사라졌습니다.
문제는 대략적인 짐작으로 DDR2의 ODT를 설정했으나, 정확한 문제에 대한 대책사항이
아닌듯하여, 고수님들의 의견을 듣고자 합니다.
이러한 유사한 경험이 있으신분들은 아래 문제를 어떻게 해결하셨으며, 어떠한 것이
문제라고 생각이 드시는지요??
CPU: ARMv7 Processor [412fc082] revision 2 (ARMv7), cr=10c53c7f
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
Machine: EZS5PV210
Memory policy: ECC disabled, Data cache writeback
CPU S5PV210/S5PC110 (id 0x43110220)
S3C24XX Clocks, Copyright 2004 Simtec Electronics
mout_audss: bad source 0
sclk_csis: no parent clock specified
S5PV210: PLL settings, A=1000000000, M=667000000, E=80000000 V=54000000
S5PV210: ARMCLK=1000000000, HCLKM=200000000, HCLKD=166750000
HCLKP=133400000, PCLKM=100000000, PCLKD=83375000, PCLKP=66700000
sclk_csis: no parent clock specified
s5pv310: 3145728 bytes system memory reserved for fimd at 0x304cd000
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 512MB = 512MB total
Memory: 487244k/487244k available, 37044k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xff000000 - 0xffe00000 ( 14 MB)
vmalloc : 0xa0800000 - 0xe0000000 (1016 MB)
lowmem : 0x80000000 - 0xa0000000 ( 512 MB)
modules : 0x7f000000 - 0x80000000 ( 16 MB)
.init : 0x80008000 - 0x80049000 ( 260 kB)
.text : 0x80049000 - 0x8043f000 (4056 kB)
.data : 0x8045c000 - 0x8048b780 ( 190 kB)
SLUB: Genslabs=9, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Hierarchical RCU implementation.
RCU-based detection of stalled CPUs is disabled.
Verbose stalled-CPUs detection is disabled.
NR_IRQS:176
VIC @f4000000: id 0x00041192, vendor 0x41
VIC @f4010000: id 0x00041192, vendor 0x41
VIC @f4020000: id 0x00041192, vendor 0x41
VIC @f4030000: id 0x00041192, vendor 0x41
Console: colour dummy device 80x30
console [ttySAC2] enabled
Calibrating delay loop... 996.14 BogoMIPS (lpj=2490368)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
Unable to handle kernel NULL pointer dereference at virtual address 00000008
pgd = 80004000
[00000008] *pgd=00000000
Internal error: Oops: 805 [#1] PREEMPT
last sysfs file:
Modules linked in:
CPU: 0 Not tainted (2.6.35-Atec #TR300R-VALIDATOR-K-v5)
PC is at __kmalloc+0x4/0xd4
LR is at netlink_kernel_create+0xa0/0x180
pc : [<800bad18>] lr : [<802cd0c8>] psr: 80000013
sp : 9fc37f40 ip : ffffffff fp : 00000000
r10: 804b9f78 r9 : 00000000 r8 : 00000000
r7 : 00000020 r6 : 00000000 r5 : 0000000f r4 : 9fc31800
r3 : 9f804300 r2 : 00000001 r1 : 000080d0 r0 : 00000010
Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
네. 부트로더에서는 DRAM 512MB 영역과 NAND 영역 정상적으로 읽힙니다.
전원이 의심스러워서 (특히, ARM 1.25V) 파워서플라이에서 공급해 보았으나
동일하게 오류가 나네요.
부트로더에서 사용하시는 전체 메모리에 대한 access 가 가능한 상태인가요?