Other Parts Discussed in Thread: BEAGLEBOARD-X15, DRA752, AM5728, PMP, DRA742, TPS51200, TPD12S015, TLV320AIC3104, TMP102
Hello there,
at the moment i'm working with an AM5728AABCxx-PG1.1 on a custom board. (Before that, i was working with a BeagleBoard-x15 to verify some stuff, and to make friend with the new linux-kernel...)
I am using Linux-4.1.13 and U-Boot 2016.05
The problem is: my linux kernel hangs after trying to bring up the second cpu.
U-Boot SPL 2016.05-dirty (Jul 06 2016 - 16:11:14)
DRA752 ES1.1
Trying to boot from MMC1
reading args
spl_load_image_fat_os: error reading image args, err - -1
reading u-boot.img
reading u-boot.img
U-Boot 2016.05-dirty (Jul 06 2016 - 16:11:14 +0200)
CPU : DRA752 ES1.1
Model: TI AM5728 BeagleBoard-X15
Board: UNKNOWN(BeagleBoard X15?) REV UNKNOWN
I2C: ready
DRAM: 1 GiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
reading uboot.env
** Unable to read "uboot.env" from mmc0:1 **
Using default environment
i2c_write: error waiting for addr ACK (status=0x116)
SCSI: SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst
scanning bus for devices...
Found 0 device(s).
Net: emif_status: 40000004
dmm_lisa_hwinfo: 204
<ethaddr> not set. Validating first E-fuse MAC
cpsw
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
reading boot.scr
** Unable to read file boot.scr **
reading uEnv.txt
129 bytes read in 7 ms (17.6 KiB/s)
Loaded env from uEnv.txt
Importing environment from mmc0 ...
Booting from network ...
cpsw Waiting for PHY auto negotiation to complete....... done
link up on port 0, speed 1000, full duplex
Using cpsw device
TFTP from server 192.168.3.23; our IP address is 192.168.3.120
Filename 'zImage'.
Load address: 0x82000000
Loading: #################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
###########################################################
429.7 KiB/s
done
Bytes transferred = 2630736 (282450 hex)
link up on port 0, speed 1000, full duplex
Using cpsw device
TFTP from server 192.168.3.23; our IP address is 192.168.3.120
Filename 'FPC57.dtb'.
Load address: 0x88000000
Loading: ##################
3 MiB/s
done
Bytes transferred = 90036 (15fb4 hex)
Kernel image @ 0x82000000 [ 0x000000 - 0x282450 ]
## Flattened Device Tree blob at 88000000
Booting using the fdt blob at 0x88000000
Loading Device Tree to 8ffe7000, end 8fffffb3 ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 4.1.13-g8dc6617 (fpc@VSRV-ENTW-FPC57-TK) (gcc version 5.2.1 20151005 (Linaro GCC 5.2-2015.11-2) ) #61 SMP PREEMPT Fri Jul 8 18:14:11 CEST 2016
[ 0.000000] CPU: ARMv7 Processor [412fc0f2] revision 2 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[ 0.000000] Machine model: TI AM572x EVM
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] Reserved memory: created CMA memory pool at 0x95800000, size 56 MiB
[ 0.000000] Reserved memory: initialized node ipu2_cma@95800000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created CMA memory pool at 0x99000000, size 64 MiB
[ 0.000000] Reserved memory: initialized node dsp1_cma@99000000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created CMA memory pool at 0x9d000000, size 32 MiB
[ 0.000000] Reserved memory: initialized node ipu1_cma@9d000000, compatible id shared-dma-pool
[ 0.000000] Reserved memory: created CMA memory pool at 0x9f000000, size 8 MiB
[ 0.000000] Reserved memory: initialized node dsp2_cma@9f000000, compatible id shared-dma-pool
[ 0.000000] cma: Reserved 16 MiB at 0xbe800000
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] DRA752 ES1.1
[ 0.000000] PERCPU: Embedded 12 pages/cpu @eee2a000 s17280 r8192 d23680 u49152
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 210770
[ 0.000000] Kernel command line: console=ttyS2,115200n8 earlyprintk=serial,uart3,115200 root=/dev/nfs nfsroot=192.168.3.23:/export/rootfs,nolock rw ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Memory: 645136K/849920K available (5023K kernel code, 277K rwdata, 1516K rodata, 292K init, 8211K bss, 24560K reserved, 180224K cma-reserved, 251904K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xf0000000 - 0xff000000 ( 240 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xef800000 ( 760 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc066afa4 (6540 kB)
[ 0.000000] .init : 0xc066b000 - 0xc06b4000 ( 292 kB)
[ 0.000000] .data : 0xc06b4000 - 0xc06f9660 ( 278 kB)
[ 0.000000] .bss : 0xc06fc000 - 0xc0f00d84 (8212 kB)
[ 0.000000] Running RCU self tests
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] RCU lockdep checking is enabled.
[ 0.000000] Additional per-CPU info printed with stalls.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] OMAP clockevent source: timer1 at 32768 Hz
[ 0.000000] clocksource 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns
[ 0.000030] sched_clock: 32 bits at 32kHz, resolution 30517ns, wraps every 65535999984741ns
[ 0.008666] OMAP clocksource: 32k_counter at 32768 Hz
[ 0.014465] Architected cp15 timer(s) running at 6.14MHz (virt).
[ 0.020751] clocksource arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x16af5adb9, max_idle_ns: 440795202250 ns
[ 0.031804] sched_clock: 56 bits at 6MHz, resolution 162ns, wraps every 4398046511023ns
[ 0.040105] Switching to timer-based delay loop, resolution 162ns
[ 0.047400] Console: colour dummy device 80x30
[ 0.052079] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
[ 0.060124] ... MAX_LOCKDEP_SUBCLASSES: 8
[ 0.064424] ... MAX_LOCK_DEPTH: 48
[ 0.068811] ... MAX_LOCKDEP_KEYS: 8191
[ 0.073376] ... CLASSHASH_SIZE: 4096
[ 0.077941] ... MAX_LOCKDEP_ENTRIES: 32768
[ 0.082594] ... MAX_LOCKDEP_CHAINS: 65536
[ 0.087248] ... CHAINHASH_SIZE: 32768
[ 0.091901] memory used by lock dependency info: 5167 kB
[ 0.097535] per task-struct memory footprint: 1152 bytes
[ 0.103185] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.29 BogoMIPS (lpj=24590)
[ 0.113822] pid_max: default: 32768 minimum: 301
[ 0.119044] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.125941] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.135088] Initializing cgroup subsys blkio
[ 0.139595] Initializing cgroup subsys memory
[ 0.144222] Initializing cgroup subsys devices
[ 0.148922] Initializing cgroup subsys freezer
[ 0.153669] CPU: Testing write buffer coherency: ok
[ 0.159556] /cpus/cpu@0 missing clock-frequency property
[ 0.165158] /cpus/cpu@1 missing clock-frequency property
[ 0.170716] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.176671] Setting up static identity map for 0x80008340 - 0x80008398
at this moment the system becomes unpredictable. Sometimes it ends up in __dabt_svc, sometimes in a spinlock, sometimes it's unable to handle a kernel paging request.
So what can i do now?
/cpus/cpu@0 missing clock-frequency property
/cpus/cpu@1 missing clock-frequency property
Those two lines are bewildering me a bit. As a device-tree i'm using a customized version of the "am57xx-beagle-x15.dtb"
Therefore the CPU-frequencies should be known from "clocks = <&dpll_mpu_ck>" in the file "dra74x.dtsi".
Anyways, here's the rest of the log (don't mind my DEBUG messages):
[ 0.200150] DEBUG: start cpu_up()
[ 0.203371] DEBUG: start _cpu_up(1)
[ 0.211952] DEBUG: start __cpu_notify
[ 0.215836] DEBUG: call __raw_notifier_call_chain(0x100000003,0xee077edcffffffff,0x1,0x1c06b6494,0xee077ed8ee077f0c)
[ 0.227565] DEBUG: finish __cpu_notify
[ 0.231691] DEBUG: cpu_notify
[ 0.231695] DEBUG: start __cpu_notify
[ 0.231701] DEBUG: call __raw_notifier_call_chain(0x10000000a,0xffffffff,0x10000000a,0xc06fc28800000001,0xee0a3fb0ee0a3fc4)
[ 0.231728] DEBUG: finish __cpu_notify
[ 0.231735] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.231835] DEBUG: 2 hcpu=1
[ 0.263190] DEBUG: cpu_notify
[ 0.266331] DEBUG: start __cpu_notify
[ 0.270175] DEBUG: call __raw_notifier_call_chain(0x100000002,0xffffffff,0x100000002,0x1c06b6494,0xee077ec0ee077ed4)
[ 0.281229] Unhandled fault: alignment exception (0x001) at 0x00000001
[ 0.281396] DEBUG: finish __cpu_notify
[ 0.281400] DEBUG: 3
[ 0.281413] DEBUG: finished _cpu_up()
[ 0.281414] Brought up 2 CPUs
[ 0.281422] SMP: Total of 2 processors activated (24.59 BogoMIPS).
[ 0.281427] CPU: All CPU(s) started in SVC mode.
[ 0.312450] pgd = c0004000
[ 0.315310] [00000001] *pgd=00000000
[ 0.319070] Internal error: : 1 [#1] PREEMPT SMP ARM
[ 0.324249] Modules linked in:
[ 0.327475] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.1.13-g8dc6617 #61
[ 0.334524] Hardware name: Generic DRA74X (Flattened Device Tree)
[ 0.340862] task: ee09cac0 ti: ee0a2000 task.ti: ee0a2000
[ 0.346490] PC is at __und_svc+0x10/0x48
[ 0.350603] LR is at trace_hardirqs_on_caller+0x158/0x1fc
[ 0.356228] pc : [<c0013f10>] lr : [<c0083fcc>] psr: 20000093
[ 0.356228] sp : ee0a3e74 ip : ee0a3eb8 fp : ee0a3ed4
[ 0.368182] r10: 00000001 r9 : eee39790 r8 : ee09c040
[ 0.373627] r7 : 00000001 r6 : 00000001 r5 : ee09cac0 r4 : c04ed834
[ 0.380409] r3 : ee0a3eb8 r2 : 00000000 r1 : 00000001 r0 : 00000001
[ 0.387193] Flags: nzCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 0.394866] Control: 10c5387d Table: 8000406a DAC: 00000015
[ 0.400846] Process swapper/1 (pid: 0, stack limit = 0xee0a2218)
[ 0.407094] Stack: (0xee0a3e74 to 0xee0a4000)
[ 0.411650] 3e60: 00000001 00000000 ee0a3eb8
[ 0.420129] 3e80: c04ed834 ee09cac0 00000001 00000001 ee09c040 eee39790 00000001 ee0a3ed4
[ 0.428606] 3ea0: ee0a3eb8 eee39790 ee0a3ed4 ee0a3eb8 c0083fcc c0083de8 eee39780 c06d6818
[ 0.437083] 3ec0: ee0a9540 00000001 ee0a3ee4 ee0a3ed8 c0084084 c0083e80 ee0a3efc ee0a3ee8
[ 0.445561] 3ee0: c04ed834 c008407c eee39780 c06d6818 ee0a3f2c ee0a3f00 c0059b70 c04ed814
[ 0.454040] 3f00: 00000001 00000000 c0059af0 ee0a3f18 eee39780 ee09cac0 00000000 c06d6818
[ 0.462517] 3f20: ee0a3f6c ee0a3f30 c04e7bfc c0059afc eee377d0 00000000 10c237d7 00000000
[ 0.470996] 3f40: ee0a3f5c ee0a2000 c06b64f8 c06b6494 00000000 00000000 ee0a3fa0 c04f1550
[ 0.479473] 3f60: ee0a3f84 ee0a3f70 c04e8090 c04e7880 ffffe000 c06b64f8 ee0a3f9c ee0a3f88
[ 0.487951] 3f80: c04e84bc c04e8058 ee0a2000 c06b64f8 ee0a3fd4 ee0a3fa0 c0078c24 c04e849c
[ 0.496428] 3fa0: c06d6818 c06b1780 c06b6500 c06fc288 c06f90ca 412fc0f2 c06b0d88 c06ae384
[ 0.504906] 3fc0: ee0a3fa8 c06fc288 ee0a3ff4 ee0a3fd8 c001516c c0078ae8 ae08006a 00000015
[ 0.513386] 3fe0: 10c0387d c06fc288 00000000 ee0a3ff8 8000956c c0015008 15242000 40008000
[ 0.521859] Backtrace:
[ 0.524463] [<c0083e74>] (trace_hardirqs_on_caller) from [<c0084084>] (trace_hardirqs_on+0x14/0x18)
[ 0.533830] r7:00000001 r6:ee0a9540 r5:c06d6818 r4:eee39780
[ 0.539747] [<c0084070>] (trace_hardirqs_on) from [<c04ed834>] (_raw_spin_unlock_irq+0x2c/0x64)
[ 0.548766] [<c04ed808>] (_raw_spin_unlock_irq) from [<c0059b70>] (finish_task_switch+0x80/0x128)
[ 0.557954] r5:c06d6818 r4:eee39780
[ 0.561718] [<c0059af0>] (finish_task_switch) from [<c04e7bfc>] (__schedule+0x388/0x7d8)
[ 0.570104] r7:c06d6818 r6:00000000 r5:ee09cac0 r4:eee39780
[ 0.576016] [<c04e7874>] (__schedule) from [<c04e8090>] (schedule+0x44/0x9c)
[ 0.583334] r10:c04f1550 r9:ee0a3fa0 r8:00000000 r7:00000000 r6:c06b6494 r5:c06b64f8
[ 0.591474] r4:ee0a2000
[ 0.594162] [<c04e804c>] (schedule) from [<c04e84bc>] (schedule_preempt_disabled+0x2c/0x44)
[ 0.602815] r5:c06b64f8 r4:ffffe000
[ 0.606579] [<c04e8490>] (schedule_preempt_disabled) from [<c0078c24>] (cpu_startup_entry+0x148/0x324)
[ 0.616212] r5:c06b64f8 r4:ee0a2000
[ 0.619975] [<c0078adc>] (cpu_startup_entry) from [<c001516c>] (secondary_start_kernel+0x170/0x178)
[ 0.629341] r7:c06fc288
[ 0.632031] [<c0014ffc>] (secondary_start_kernel) from [<8000956c>] (0x8000956c)
[ 0.639703] r7:c06fc288 r6:10c0387d r5:00000015 r4:ae08006a
[ 0.645614] Code: e24dd044 e31d0004 024dd004 e88d1ffe (e8900038)
[ 0.651967] ---[ end trace 779656412eaa2046 ]---
[ 0.656792] Kernel panic - not syncing: Attempted to kill the idle task!
[ 0.663757] CPU0: stopping
[ 0.666626] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G D 4.1.13-g8dc6617 #61
[ 0.674923] Hardware name: Generic DRA74X (Flattened Device Tree)
[ 0.681259] Backtrace:
[ 0.683868] [<c0013190>] (dump_backtrace) from [<c00133b4>] (show_stack+0x18/0x1c)
[ 0.691720] r7:fa212000 r6:00000000 r5:00000000 r4:c06de740
[ 0.697634] [<c001339c>] (show_stack) from [<c04e6c78>] (dump_stack+0x8c/0xcc)
[ 0.705134] [<c04e6bec>] (dump_stack) from [<c0015550>] (handle_IPI+0x154/0x164)
[ 0.712808] r5:00000000 r4:c06afcf4
[ 0.716572] [<c00153fc>] (handle_IPI) from [<c00094c0>] (gic_handle_irq+0x60/0x64)
[ 0.724424] r7:fa212000 r6:ee077ca8 r5:c06b7014 r4:fa21200c
[ 0.730336] [<c0009460>] (gic_handle_irq) from [<c0013e84>] (__irq_svc+0x44/0x7c)
[ 0.738100] Exception stack(0xee077ca8 to 0xee077cf0)
[ 0.743370] 7ca0: 00000000 fffffef0 00000002 00000003 00000001 c00b75fc
[ 0.751849] 7cc0: 00000002 00000003 00000001 00000000 c06b6494 ee077d24 ee077c20 ee077cf0
[ 0.760327] 7ce0: c0083e4c c00b7b5c 20000013 ffffffff
[ 0.765592] r7:ee077cdc r6:ffffffff r5:20000013 r4:c00b7b5c
[ 0.771510] [<c00b7a0c>] (smp_call_function_single) from [<c00b808c>] (smp_call_function_many+0x280/0x2d0)
[ 0.781501] r7:00000001 r6:c06b6494 r5:00000000 r4:c06b6d68
[ 0.787415] [<c00b7e0c>] (smp_call_function_many) from [<c00b8124>] (smp_call_function+0x48/0x7c)
[ 0.796602] r10:00000268 r9:000000d0 r8:00000008 r7:00000000 r6:0000001b r5:00000036
[ 0.804744] r4:ffffe000
[ 0.807434] [<c00b80dc>] (smp_call_function) from [<c00b8218>] (kick_all_cpus_sync+0x24/0x28)
[ 0.816266] r5:00000036 r4:ee044c40
[ 0.820033] [<c00b81f4>] (kick_all_cpus_sync) from [<c010aff8>] (__do_tune_cpucache+0x44/0x2cc)
[ 0.829049] [<c010afb4>] (__do_tune_cpucache) from [<c010b2ac>] (do_tune_cpucache+0x2c/0xdc)
[ 0.837791] r10:00000268 r9:00000008 r8:0000001b r7:00000036 r6:000000d0 r5:ee044c40
[ 0.845931] r4:ee044c40
[ 0.848622] [<c010b280>] (do_tune_cpucache) from [<c010b3c4>] (enable_cpucache+0x68/0x114)
[ 0.857187] r10:00000268 r9:00000008 r8:00040000 r7:000000d0 r6:00000036 r5:0000001b
[ 0.865327] r4:ee044c40
[ 0.868020] [<c010b35c>] (enable_cpucache) from [<c04e541c>] (setup_cpu_cache+0x130/0x1f8)
[ 0.876584] r7:ee044c40 r6:c0ee0300 r5:000000d0 r4:ee044c40
[ 0.882499] [<c04e52ec>] (setup_cpu_cache) from [<c010bb30>] (__kmem_cache_create+0x29c/0x3cc)
[ 0.891420] r9:00000008 r8:00040000 r7:ee044c40 r6:ee077e80 r5:00000008 r4:00000006
[ 0.899479] [<c010b894>] (__kmem_cache_create) from [<c00f1844>] (do_kmem_cache_create+0x7c/0x13c)
[ 0.908756] r10:c05f9bbc r9:00000268 r8:00000268 r7:00000008 r6:c0ee01f8 r5:00000000
[ 0.916896] r4:ee044c40
[ 0.919585] [<c00f17c8>] (do_kmem_cache_create) from [<c00f19e4>] (kmem_cache_create+0xe0/0x190)
[ 0.928683] r10:c05f9bbc r9:00000000 r8:00000000 r7:00000268 r6:c05f9bbc r5:00040000
[ 0.936824] r4:00040000 r3:00000008
[ 0.940588] [<c00f1904>] (kmem_cache_create) from [<c06811ac>] (shmem_init+0x4c/0xbc)
[ 0.948706] r10:00000000 r9:00000000 r8:00000001 r7:00000001 r6:c06acfc8 r5:00009400
[ 0.956846] r4:c0ee0134
[ 0.959537] [<c0681160>] (shmem_init) from [<c066befc>] (kernel_init_freeable+0x198/0x2e0)
[ 0.968101] r5:00009400 r4:00009b20
[ 0.971866] [<c066bd64>] (kernel_init_freeable) from [<c04e479c>] (kernel_init+0x18/0xe8)
[ 0.980341] r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c04e4784
[ 0.988481] r4:c06fc000
[ 0.991172] [<c04e4784>] (kernel_init) from [<c000fc38>] (ret_from_fork+0x14/0x3c)
[ 0.999023] r5:c04e4784 r4:00000000
[ 1.002787] ---[ end Kernel panic - not syncing: Attempted to kill the idle task!
Any suggestions?
Best regards, Tim