This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

66AK2H12 ARM cores don't come up

Other Parts Discussed in Thread: 66AK2H12

I'm trying to bring up Linux on a new 66ak2h12 design, loosely based on the K2H-EVM.  I have U-Boot from

git://git.ti.com/ti-u-boot/ti-u-boot.git

the boot monitor from

git://git.ti.com/processor-firmware/ks2-boot-monitor.git

and the kernel from

git://git.ti.com/processor-sdk/processor-sdk-linux.git

The ROM boot loader gets U-Boot via the UART (xmodem), U-Boot starts up and downloads the kernel and flattened device tree using TFTP, and the boot up commences.  Everything goes fine -- boot log is attached (ignore the panic at the end, which is because I haven't set up a root filesystem yet), except that cores 1-3 fail to come online (core 0 is running, of course).  I turned on all the debugging flags, and even added some debuggery of my own, and as far as I can see, it looks like the ARM CorePac power domains start transitioning and never finish (the PDSTAT register indicates that the power domain is stuck in the transition state).

I took a look at the CVDD current, and it looks like it is well within the capabilities of our regulator (about 5 amps out of 13).  No alerts are generated on the PMBus.

Can anybody lend me a clue?

5277.session.log
initcall: 0c03dbcd
initcall: 0c03fed5


U-Boot 2016.03-00673-g028b7fb-dirty (May 04 2016 - 15:08:45 -0400)

initcall: 0c00dc31
initcall: 0c000c55
CPU: 66AK2Hx SR2.0
initcall: 0c00dd41
I2C:   ready
initcall: 0c00dd31
DRAM:  initcall: 0c001d85
DDR3 speed 1600
DRAM: 2 GiB (includes reported below)

Clear entire DDR3 memory to enable ECC
initcall: 0c00de75
initcall: 0c00dc4d
initcall: 0c00dc61
initcall: 0c00dc8f
initcall: 0c00dc93
initcall: 0c00dcbd
initcall: 0c00dde1
initcall: 0c00dccd
initcall: 0c00dcd1
initcall: 0c00dce7
initcall: 0c00dd29
initcall: 0c00deb1
initcall: 0c00de59
initcall: 0c00de11
2 GiB
initcall: 0c00dd21
initcall: 0c00ddb5
initcall: 0c00dd8f
initcall: fff3def1
initcall: fff3def5
initcall: 0c00e025 (relocated to fff3e025)
initcall: 0c00dffd (relocated to fff3dffd)
initcall: 0c00df09 (relocated to fff3df09)
initcall: 0c00dfe5 (relocated to fff3dfe5)
initcall: 0c00df0d (relocated to fff3df0d)
initcall: 0c00deed (relocated to fff3deed)
initcall: 0c00dfd3 (relocated to fff3dfd3)
fdtdec_get_int_array: ranges
get_prop_check_min_len: ranges
Looking for 'serial' at 16988, name serial@02530c00
   - serial0, /soc/serial@02530c00
Found seq 0
Looking for 'serial' at 17144, name serial@02531000
   - serial0, /soc/serial@02530c00
Not found
initcall: 0c00dfc7 (relocated to fff3dfc7)
initcall: 0c001db9 (relocated to fff31db9)
initcall: 0c03b7a9 (relocated to fff6b7a9)
initcall: 0c013c11 (relocated to fff43c11)
initcall: 0c00dfbd (relocated to fff3dfbd)
fdtdec_get_int: reg-offset: (not found)
fdtdec_get_int: reg-shift: 0x2 (2)
fdtdec_get_int: clock-frequency: (not found)
initcall: 0c00df15 (relocated to fff3df15)
initcall: 0c00df11 (relocated to fff3df11)
initcall: 0c00dfa9 (relocated to fff3dfa9)
NAND:  1024 MiB
initcall: 0c00df61 (relocated to fff3df61)
fdtdec_get_config_int: load-environment
NAND read from offset 100000 failed -74
*** Warning - readenv() failed, using default environment

Destroy Hash Table: fff8b600 table = 00000000
Create Hash Table: N=438
DELETE CANDIDATE: "bootargs"
hdelete: DELETE key "bootargs"
DELETE ERROR ##############################
INSERT: table fff8b600, filled 1/439 rv feef7394 ==> name="bootcmd" value="run init_${boot} init_fw_rd_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern"
INSERT: table fff8b600, filled 2/439 rv feef7c7c ==> name="bootdelay" value="2"
INSERT: table fff8b600, filled 3/439 rv feef7434 ==> name="baudrate" value="115200"
INSERT: table fff8b600, filled 4/439 rv feef7ac4 ==> name="arch" value="arm"
INSERT: table fff8b600, filled 5/439 rv feef7858 ==> name="cpu" value="armv7"
INSERT: table fff8b600, filled 6/439 rv feef7fb0 ==> name="board" value="ks2_evm"
INSERT: table fff8b600, filled 7/439 rv feef6fac ==> name="board_name" value="ks2_evm"
INSERT: table fff8b600, filled 8/439 rv feef75c4 ==> name="vendor" value="ti"
INSERT: table fff8b600, filled 9/439 rv feef6750 ==> name="soc" value="keystone"
INSERT: table fff8b600, filled 10/439 rv feef8708 ==> name="loadaddr" value="0x82000000"
INSERT: table fff8b600, filled 11/439 rv feef7c2c ==> name="kernel_addr_r" value="0x82000000"
INSERT: table fff8b600, filled 12/439 rv feef74ac ==> name="fdtaddr" value="0x88000000"
INSERT: table fff8b600, filled 13/439 rv feef8780 ==> name="fdt_addr_r" value="0x88000000"
INSERT: table fff8b600, filled 14/439 rv feef7e0c ==> name="rdaddr" value="0x88080000"
INSERT: table fff8b600, filled 15/439 rv feef7614 ==> name="ramdisk_addr_r" value="0x88080000"
INSERT: table fff8b600, filled 16/439 rv feef6bb0 ==> name="scriptaddr" value="0x80000000"
INSERT: table fff8b600, filled 17/439 rv feef67b4 ==> name="pxefile_addr_r" value="0x80100000"
INSERT: table fff8b600, filled 18/439 rv feef82bc ==> name="bootm_size" value="0x10000000"
INSERT: table fff8b600, filled 19/439 rv feef74d4 ==> name="name_fw_rd" value="k2-fw-initrd.cpio.gz"
INSERT: table fff8b600, filled 20/439 rv feef7e34 ==> name="set_rd_spec" value="setenv rd_spec ${rdaddr}:${filesize}"
INSERT: table fff8b600, filled 21/439 rv feef77b8 ==> name="init_fw_rd_net" value="dhcp ${rdaddr} ${tftp_root}/${name_fw_rd}; run set_rd_spec"
INSERT: table fff8b600, filled 22/439 rv feef8884 ==> name="init_fw_rd_ramfs" value="setenv rd_spec -"
INSERT: table fff8b600, filled 23/439 rv feef7704 ==> name="init_fw_rd_ubi" value="ubifsload ${rdaddr} ${bootdir}/${name_fw_rd}; run set_rd_spec"
INSERT: table fff8b600, filled 24/439 rv feef78f8 ==> name="boot" value="ubi"
INSERT: table fff8b600, filled 25/439 rv feef669c ==> name="addr_mon" value="0x0c5f0000"
INSERT: table fff8b600, filled 26/439 rv feef7ab0 ==> name="args_ubi" value="setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=ubifs,2048"
INSERT: table fff8b600, filled 27/439 rv feef84ec ==> name="name_fdt" value="k2hk-evm.dtb"
INSERT: table fff8b600, filled 28/439 rv feef849c ==> name="name_mon" value="skern-k2hk.bin"
INSERT: table fff8b600, filled 29/439 rv feef8474 ==> name="name_ubi" value="k2hk-evm-ubifs.ubi"
INSERT: table fff8b600, filled 30/439 rv feef8820 ==> name="name_uboot" value="u-boot-spi-k2hk-evm.gph"
INSERT: table fff8b600, filled 31/439 rv feef6b60 ==> name="name_fs" value="arago-console-image-k2hk-evm.cpio.gz"
INSERT: table fff8b600, filled 32/439 rv feef86e0 ==> name="bootdir" value="/boot"
INSERT: table fff8b600, filled 33/439 rv feef83d4 ==> name="tftp_root" value="/"
INSERT: table fff8b600, filled 34/439 rv feef82a8 ==> name="nfs_root" value="/export"
INSERT: table fff8b600, filled 35/439 rv feef85f0 ==> name="mem_lpae" value="1"
INSERT: table fff8b600, filled 36/439 rv feef7a88 ==> name="mem_reserve" value="512M"
INSERT: table fff8b600, filled 37/439 rv feef6674 ==> name="addr_ubi" value="0x82000000"
INSERT: table fff8b600, filled 38/439 rv feef8370 ==> name="addr_secdb_key" value="0xc000000"
INSERT: table fff8b600, filled 39/439 rv feef8848 ==> name="name_kern" value="zImage"
INSERT: table fff8b600, filled 40/439 rv feef66b0 ==> name="run_mon" value="mon_install ${addr_mon}"
INSERT: table fff8b600, filled 41/439 rv feef8438 ==> name="run_kern" value="bootz ${loadaddr} ${rd_spec} ${fdtaddr}"
INSERT: table fff8b600, filled 42/439 rv feef7128 ==> name="init_net" value="run args_all args_net"
INSERT: table fff8b600, filled 43/439 rv feef68cc ==> name="init_nfs" value="setenv autoload no; dhcp; run args_all args_net"
INSERT: table fff8b600, filled 44/439 rv feef8758 ==> name="init_ubi" value="run args_all args_ubi; ubi part ubifs; ubifsmount ubi:rootfs;"
INSERT: table fff8b600, filled 45/439 rv feef83ac ==> name="get_fdt_net" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
INSERT: table fff8b600, filled 46/439 rv feef6b10 ==> name="get_fdt_nfs" value="nfs ${fdtaddr} ${nfs_root}/boot/${name_fdt}"
INSERT: table fff8b600, filled 47/439 rv feef6fe8 ==> name="get_fdt_ubi" value="ubifsload ${fdtaddr} ${bootdir}/${name_fdt}"
INSERT: table fff8b600, filled 48/439 rv feef8078 ==> name="get_kern_net" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
INSERT: table fff8b600, filled 49/439 rv feef6e44 ==> name="get_kern_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_kern}"
INSERT: table fff8b600, filled 50/439 rv feef7650 ==> name="get_kern_ubi" value="ubifsload ${loadaddr} ${bootdir}/${name_kern}"
INSERT: table fff8b600, filled 51/439 rv feef7b14 ==> name="get_mon_net" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
INSERT: table fff8b600, filled 52/439 rv feef73a8 ==> name="get_mon_nfs" value="nfs ${addr_mon} ${nfs_root}/boot/${name_mon}"
INSERT: table fff8b600, filled 53/439 rv feef8118 ==> name="get_mon_ubi" value="ubifsload ${addr_mon} ${bootdir}/${name_mon}"
INSERT: table fff8b600, filled 54/439 rv feef7934 ==> name="get_uboot_net" value="dhcp ${loadaddr} ${tftp_root}/${name_uboot}"
INSERT: table fff8b600, filled 55/439 rv feef7588 ==> name="get_uboot_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_uboot}"
INSERT: table fff8b600, filled 56/439 rv feef7ad8 ==> name="burn_uboot_spi" value="sf probe; sf erase 0 0x80000; sf write ${loadaddr} 0 ${filesize}"
INSERT: table fff8b600, filled 57/439 rv feef73e4 ==> name="burn_uboot_nand" value="nand erase 0 0x100000; nand write ${loadaddr} 0 ${filesize}"
INSERT: table fff8b600, filled 58/439 rv feef7d80 ==> name="args_all" value="setenv bootargs console=ttyS0,115200n8 rootwait=1"
INSERT: table fff8b600, filled 59/439 rv feef86cc ==> name="args_net" value="setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp"
INSERT: table fff8b600, filled 60/439 rv feef82f8 ==> name="nfs_options" value="v3,tcp,rsize=4096,wsize=4096"
INSERT: table fff8b600, filled 61/439 rv feef74c0 ==> name="get_fdt_ramfs" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
INSERT: table fff8b600, filled 62/439 rv feef7e5c ==> name="get_kern_ramfs" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
INSERT: table fff8b600, filled 63/439 rv feef6c3c ==> name="get_mon_ramfs" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
INSERT: table fff8b600, filled 64/439 rv feef70b0 ==> name="get_fs_ramfs" value="dhcp ${rdaddr} ${tftp_root}/${name_fs}"
INSERT: table fff8b600, filled 65/439 rv feef6cf0 ==> name="get_ubi_net" value="dhcp ${addr_ubi} ${tftp_root}/${name_ubi}"
INSERT: table fff8b600, filled 66/439 rv feef81cc ==> name="get_ubi_nfs" value="nfs ${addr_ubi} ${nfs_root}/boot/${name_ubi}"
INSERT: table fff8b600, filled 67/439 rv feef7664 ==> name="burn_ubi" value="nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}"
INSERT: table fff8b600, filled 68/439 rv feef8730 ==> name="init_ramfs" value="run args_all args_ramfs get_fs_ramfs"
INSERT: table fff8b600, filled 69/439 rv feef8230 ==> name="args_ramfs" value="setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x808080000,80M"
INSERT: table fff8b600, filled 70/439 rv feef7a60 ==> name="no_post" value="1"
INSERT: table fff8b600, filled 71/439 rv feef6d68 ==> name="mtdparts" value="mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)"
INSERT: free(data = feef5a88)
INSERT: done
initcall: 0c00e031 (relocated to fff3e031)
initcall: 0c013c25 (relocated to fff43c25)
initcall: 0c00df57 (relocated to fff3df57)
initcall: 0c0124f9 (relocated to fff424f9)
initcall: 0c001d31 (relocated to fff31d31)
initcall: 0c00089d (relocated to fff3089d)
initcall: 0c00df4d (relocated to fff3df4d)
initcall: 0c00df35 (relocated to fff3df35)
initcall: 0c00df21 (relocated to fff3df21)
Net:   SERDES lane 0 initialized
Could not get PHY for ethernet-mdio: addr -1
SERDES lane 0 initialized
Could not get PHY for ethernet-mdio: addr -1
SERDES lane 0 initialized
Could not get PHY for ethernet-mdio: addr -1
SERDES lane 0 initialized
Could not get PHY for ethernet-mdio: addr -1
K2HK_EMAC, K2HK_EMAC1
Error: K2HK_EMAC1 address not set.
, K2HK_EMAC2
Error: K2HK_EMAC2 address not set.
, K2HK_EMAC3
Error: K2HK_EMAC3 address not set.

initcall: 0c00df19 (relocated to fff3df19)
fdtdec_get_config_int: bootdelay
fdtdec_get_config_int: kernel-offset
fdtdec_get_config_int: rootdisk-offset
fdtdec_get_config_string: bootcmd
fdtdec_get_config_int: bootsecure
Hit any key to stop autoboot:  2  0 
OJM-SoC> dhcp ${loadaddr}
+ emac_close
+ emac_open
- emac_open
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
DHCP client bound to address 192.168.1.3 (1009 ms)
Using K2HK_EMAC device
TFTP from server 192.168.1.1; our IP address is 192.168.1.3
Filename '/uImage'.
Load address: 0x82000000
Loading: *#################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 ####
	 3.6 MiB/s
done
Bytes transferred = 3864496 (3af7b0 hex)
+ emac_close
- emac_close
OJM-SoC> tftpboot ${addr_mon} skern-k2hk.bin
+ emac_close
+ emac_open
- emac_open
Using K2HK_EMAC device
TFTP from server 192.168.1.1; our IP address is 192.168.1.3
Filename 'skern-k2hk.bin'.
Load address: 0xc5f0000
Loading: *####
	 3.6 MiB/s
done
Bytes transferred = 45056 (b000 hex)
+ emac_close
- emac_close
OJM-SoC> mon_install ${addr_mon}
DEBUG: Message2 from Secure Mode: Core freq - 200000000Hz

K2_BM_15.07-39-g035329c-dirty SoC:k2hk built:13:26:40, May  5 2016

DEBUG: ARMCOREPAC_PID=0x44902300

DEBUG: AINTC_PID=0x44912100

## installed monitor, freq [200000000], status 0
OJM-SoC> tftpboot ${fdtaddr} k2hk-ojm.dtb
+ emac_close
+ emac_open
- emac_open
Using K2HK_EMAC device
TFTP from server 192.168.1.1; our IP address is 192.168.1.3
Filename 'k2hk-ojm.dtb'.
Load address: 0x88000000
Loading: *####
	 3.4 MiB/s
done
Bytes transferred = 50434 (c502 hex)
+ emac_close
- emac_close
OJM-SoC> bootm ${loadaddr} - ${fdtaddr}
## Booting kernel from Legacy Image at 82000000 ...
   Image Name:   Linux-4.1.18-gbbe8cfc-dirty
   Created:      2016-05-05  15:05:49 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3864432 Bytes = 3.7 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
   Loading Kernel Image ... OK
   Loading Device Tree to 8fff0000, end 8ffff501 ... OK

Starting kernel ...

DEBUG: >>>> skern_poweron_cpu(1) >>>>

DEBUG: >>>> before pdstat=0x00020002

DEBUG: >>>> after pdstat=0x08040000

DEBUG: >>>> skern_poweron_cpu(2) >>>>

DEBUG: >>>> before pdstat=0x00020002

DEBUG: >>>> after pdstat=0x08040000

DEBUG: >>>> skern_poweron_cpu(3) >>>>

DEBUG: >>>> before pdstat=0x00020002

DEBUG: >>>> after pdstat=0x08040000

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.1.18-gbbe8cfc-dirty (ch22073@517033-mitll) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #3 SMP PREEMPT Thu May 5 11:05:40 EDT 2016
[    0.000000] CPU: ARMv7 Processor [412fc0f4] revision 4 (ARMv7), cr=30c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] Machine model: Texas Instruments Keystone 2 Kepler/Hawking EVM
[    0.000000] Switching physical address space to 0x800000000
[    0.000000] Reserved memory: created CMA memory pool at 0x000000081f800000, size 8 MiB
[    0.000000] Reserved memory: initialized node dsp_common_cma_pool, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x0000000820000000, size 512 MiB
[    0.000000] Reserved memory: initialized node dsp_reserved_mpm_area, compatible id shared-dma-pool
[    0.000000] cma: Reserved 16 MiB at 0x000000085f000000
[    0.000000] Forcing write-allocate cache policy for SMP
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] On node 0 totalpages: 262144
[    0.000000] free_area_init_node: node 0, pgdat c078dbc0, node_mem_map debf5000
[    0.000000]   DMA zone: 1520 pages used for memmap
[    0.000000]   DMA zone: 0 pages reserved
[    0.000000]   DMA zone: 131072 pages, LIFO batch:31
[    0.000000]   HighMem zone: 131072 pages, LIFO batch:31
[    0.000000] PERCPU: Embedded 12 pages/cpu @deb96000 s17536 r8192 d23424 u49152
[    0.000000] pcpu-alloc: s17536 r8192 d23424 u49152 alloc=12*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 260624
[    0.000000] Kernel command line: console=ttyS0,115200n8 debug earlyprintk
[    0.000000] log_buf_len individual max cpu contribution: 4096 bytes
[    0.000000] log_buf_len total cpu_extra contributions: 12288 bytes
[    0.000000] log_buf_len min size: 16384 bytes
[    0.000000] log_buf_len: 32768 bytes
[    0.000000] early log buf free: 14264(87%)
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 1006980K/1048576K available (5178K kernel code, 344K rwdata, 1888K rodata, 316K init, 174K bss, 17020K reserved, 24576K cma-reserved, 507904K 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 - 0xc06eeb68   (7067 kB)
[    0.000000]       .init : 0xc06ef000 - 0xc073e000   ( 316 kB)
[    0.000000]       .data : 0xc073e000 - 0xc0794014   ( 345 kB)
[    0.000000]        .bss : 0xc0797000 - 0xc07c29f0   ( 175 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] 	Additional per-CPU info printed with stalls.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] Architected cp15 timer(s) running at 200.00MHz (virt).
[    0.000000] clocksource arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
[    0.000003] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
[    0.000011] Switching to timer-based delay loop, resolution 5ns
[    0.000165] keystone timer clock @200000000 Hz
[    0.000386] Console: colour dummy device 80x30
[    0.000401] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=2000000)
[    0.000411] pid_max: default: 4096 minimum: 301
[    0.000472] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000479] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000919] Initializing cgroup subsys blkio
[    0.000931] Initializing cgroup subsys devices
[    0.000941] Initializing cgroup subsys freezer
[    0.000958] CPU: Testing write buffer coherency: ok
[    0.001133] /cpus/cpu@0 missing clock-frequency property
[    0.001160] /cpus/cpu@1 missing clock-frequency property
[    0.001186] /cpus/cpu@2 missing clock-frequency property
[    0.001212] /cpus/cpu@3 missing clock-frequency property
[    0.001221] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.001259] Setting up static identity map for 0x800082c0 - 0x800083cc
[    1.070890] CPU1: failed to come online
[    2.102239] CPU2: failed to come online
[    3.134101] CPU3: failed to come online
[    3.134134] Brought up 1 CPUs
[    3.134148] SMP: Total of 1 processors activated (400.00 BogoMIPS).
[    3.134161] CPU: All CPU(s) started in SVC mode.
[    3.134721] devtmpfs: initialized
[    3.165292] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[    3.165929] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    3.166769] pinctrl core: initialized pinctrl subsystem
[    3.167272] NET: Registered protocol family 16
[    3.169659] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    3.196386] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.197314] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.198052] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.198614] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.199166] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.199810] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.200362] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.201177] irq: no irq domain found for /soc/keystone_irq@26202a0 !
[    3.221333] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    3.221347] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    3.258767] vgaarb: loaded
[    3.259293] SCSI subsystem initialized
[    3.260234] usbcore: registered new interface driver usbfs
[    3.260433] usbcore: registered new interface driver hub
[    3.260750] usbcore: registered new device driver usb
[    3.267840] Switched to clocksource arch_sys_counter
[    3.370417] NET: Registered protocol family 2
[    3.371140] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    3.371180] TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
[    3.371243] TCP: Hash tables configured (established 4096 bind 4096)
[    3.371308] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    3.371332] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    3.371592] NET: Registered protocol family 1
[    3.372158] RPC: Registered named UNIX socket transport module.
[    3.372173] RPC: Registered udp transport module.
[    3.372186] RPC: Registered tcp transport module.
[    3.372199] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    3.372222] PCI: CLS 0 bytes, default 64
[    3.372753] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
[    3.372803] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
[    3.374662] platform alarmtimer: set dma_pfn_offset00780000
[    3.376355] futex hash table entries: 16 (order: -2, 1024 bytes)
[    3.416646] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    3.416839] ntfs: driver 2.1.32 [Flags: R/O].
[    3.417749] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    3.422876] NET: Registered protocol family 38
[    3.422959] bounce: pool size: 64 pages
[    3.423356] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[    3.423375] io scheduler noop registered
[    3.423392] io scheduler deadline registered
[    3.423446] io scheduler cfq registered (default)
[    3.423744] keystone_irq soc:keystone_irq@26202a0: irqchip registered, nr_irqs 28
[    3.427803] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 0, number of queues 8192
[    3.432148] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 0, num of queues 8192, reg_peek f01c0000, reg_status f01e2000, reg_config f01e4000, reg_region f01e6000, reg_push f0200000, reg_pop f0240000
[    3.432169] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 8192, number of queues 8192
[    3.432445] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 8192, num of queues 8192, reg_peek f0280000, reg_status f01e8400, reg_config f01ea000, reg_region f01ec000, reg_push f02c0000, reg_pop f0300000
[    3.433067] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp0
[    3.433185] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp3
[    3.433303] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp7
[    3.435647] keystone-navigator-qmss soc:qmss@2a40000: pdsp id 0 not started for range acc-low-0
[    3.437361] keystone-navigator-dma soc:knav_dmas@0: DMA dma_gbe registered 41 logical channels, flows 32, tx chans: 9, rx chans: 24
[    3.437643] keystone-navigator-dma soc:knav_dmas@0: DMA dma_xgbe registered 48 logical channels, flows 32, tx chans: 16, rx chans: 16
[    3.647220] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    3.647390] platform serial8250: set dma_pfn_offset00780000
[    3.654031] console [ttyS0] disabled
[    3.654109] 2530c00.serial: ttyS0 at MMIO 0x2530c00 (irq = 26, base_baud = 12500000) is a 16550A
[    4.529398] console [ttyS0] enabled
[    4.535691] 2531000.serial: ttyS1 at MMIO 0x2531000 (irq = 27, base_baud = 12500000) is a 16550A
[    4.557333] loop: module loaded
[    4.561236] at24 0-0050: 131072 byte 24c1024 EEPROM, writable, 1 bytes/write
[    4.573133] m25p80 spi32766.0: unrecognized JEDEC id bytes: 00,  0,  0
[    4.579939] spi_davinci 21000400.spi: Controller at 0xf026a400
[    4.586612] spi_davinci 21000600.spi: Controller at 0xf026c600
[    4.593451] spi_davinci 21000800.spi: Controller at 0xf026e800
[    4.602114] Division by zero in kernel.
[    4.605975] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.1.18-gbbe8cfc-dirty #3
[    4.613233] Hardware name: Keystone
[    4.616756] [<c0016198>] (unwind_backtrace) from [<c0012afc>] (show_stack+0x10/0x14)
[    4.624543] [<c0012afc>] (show_stack) from [<c04e99d8>] (dump_stack+0x88/0x9c)
[    4.631806] [<c04e99d8>] (dump_stack) from [<c0291910>] (Ldiv0+0x8/0x10)
[    4.638546] [<c0291910>] (Ldiv0) from [<c0370f94>] (__davinci_mdio_reset+0x64/0x80)
[    4.646245] [<c0370f94>] (__davinci_mdio_reset) from [<c0370fc0>] (davinci_mdio_reset+0x10/0x94)
[    4.655077] [<c0370fc0>] (davinci_mdio_reset) from [<c036f9d8>] (mdiobus_register+0xb8/0x180)
[    4.663646] [<c036f9d8>] (mdiobus_register) from [<c03714f8>] (davinci_mdio_probe+0x1f0/0x420)
[    4.672303] [<c03714f8>] (davinci_mdio_probe) from [<c0318edc>] (platform_drv_probe+0x44/0xa4)
[    4.680957] [<c0318edc>] (platform_drv_probe) from [<c0317a6c>] (driver_probe_device+0x17c/0x2bc)
[    4.689875] [<c0317a6c>] (driver_probe_device) from [<c0317c7c>] (__driver_attach+0x8c/0x90)
[    4.698357] [<c0317c7c>] (__driver_attach) from [<c0315fcc>] (bus_for_each_dev+0x68/0x9c)
[    4.706577] [<c0315fcc>] (bus_for_each_dev) from [<c0317210>] (bus_add_driver+0x14c/0x1f4)
[    4.714883] [<c0317210>] (bus_add_driver) from [<c0318030>] (driver_register+0x78/0xf8)
[    4.722928] [<c0318030>] (driver_register) from [<c00096f0>] (do_one_initcall+0x8c/0x1d8)
[    4.731147] [<c00096f0>] (do_one_initcall) from [<c06efdd0>] (kernel_init_freeable+0x144/0x1e4)
[    4.739891] [<c06efdd0>] (kernel_init_freeable) from [<c04e61fc>] (kernel_init+0xc/0xe8)
[    4.748023] [<c04e61fc>] (kernel_init) from [<c000f368>] (ret_from_fork+0x14/0x2c)
[    4.798245] davinci_mdio 2090300.mdio: davinci mdio revision 1.5
[    4.804283] davinci_mdio 2090300.mdio: no live phy, scanning all
[    4.822252] davinci_mdio: probe of 2090300.mdio failed with error -5
[    5.879164] netcp-1.0 2620110.netcp: module(netcp-xgbe) not used for device
[    6.290481] platform xhci-hcd.0.auto: set dma_pfn_offset00780000
[    6.298508] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    6.304928] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    6.313292] xhci-hcd xhci-hcd.0.auto: hcc params 0x0298f06d hci version 0x100 quirks 0x00210010
[    6.322114] xhci-hcd xhci-hcd.0.auto: irq 34, io mem 0x02690000
[    6.328427] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    6.335250] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    6.342578] usb usb1: Product: xHCI Host Controller
[    6.347481] usb usb1: Manufacturer: Linux 4.1.18-gbbe8cfc-dirty xhci-hcd
[    6.354373] usb usb1: SerialNumber: xhci-hcd.0.auto
[    6.360538] hub 1-0:1.0: USB hub found
[    6.364558] hub 1-0:1.0: 1 port detected
[    6.369401] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    6.375330] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    6.383360] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    6.391800] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[    6.398693] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    6.405951] usb usb2: Product: xHCI Host Controller
[    6.410983] usb usb2: Manufacturer: Linux 4.1.18-gbbe8cfc-dirty xhci-hcd
[    6.417718] usb usb2: SerialNumber: xhci-hcd.0.auto
[    6.423859] hub 2-0:1.0: USB hub found
[    6.427930] hub 2-0:1.0: 1 port detected
[    6.433608] usbcore: registered new interface driver usb-storage
[    6.440635] mousedev: PS/2 mouse device common for all mice
[    6.447070] i2c /dev entries driver
[    6.452732] davinci-wdt 22f0080.wdt: heartbeat 60 sec
[    6.461791] usbcore: registered new interface driver usbhid
[    6.467392] usbhid: USB HID core driver
[    6.474933] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xb3
[    6.481481] nand: Micron 30000000.nand
[    6.485250] nand: bus width 8 instead 16 bit
[    6.489612] nand: No NAND device found
[    6.493875] davinci_nand: probe of 30000000.nand failed with error -22
[    6.501694] platform oprofile-perf.0: set dma_pfn_offset00780000
[    6.508739] oprofile: using timer interrupt.
[    6.513068] Netfilter messages via NETLINK v0.30.
[    6.518082] nf_conntrack version 0.5.0 (16118 buckets, 64472 max)
[    6.525215] ctnetlink v0.93: registering with nfnetlink.
[    6.533303] ipip: IPv4 over IPv4 tunneling driver
[    6.539433] gre: GRE over IPv4 demultiplexor driver
[    6.544592] ip_tables: (C) 2000-2006 Netfilter Core Team
[    6.550440] ipt_CLUSTERIP: ClusterIP Version 0.8 loaded successfully
[    6.556870] arp_tables: (C) 2002 David S. Miller
[    6.561745] Initializing XFRM netlink socket
[    6.566068] NET: Registered protocol family 17
[    6.570631] NET: Registered protocol family 15
[    6.575104] 8021q: 802.1Q VLAN Support v1.8
[    6.579450] Registering SWP/SWPB emulation handler
[    6.773068] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[    6.780661] Please append a correct "root=" boot option; here are the available partitions:
[    6.789290] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    6.797597] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.1.18-gbbe8cfc-dirty #3
[    6.804856] Hardware name: Keystone
[    6.808373] [<c0016198>] (unwind_backtrace) from [<c0012afc>] (show_stack+0x10/0x14)
[    6.816160] [<c0012afc>] (show_stack) from [<c04e99d8>] (dump_stack+0x88/0x9c)
[    6.823422] [<c04e99d8>] (dump_stack) from [<c04e7810>] (panic+0xa0/0x200)
[    6.830336] [<c04e7810>] (panic) from [<c06f0190>] (mount_block_root+0x18c/0x228)
[    6.837858] [<c06f0190>] (mount_block_root) from [<c06f0334>] (mount_root+0x108/0x110)
[    6.845816] [<c06f0334>] (mount_root) from [<c06f0494>] (prepare_namespace+0x158/0x19c)
[    6.853863] [<c06f0494>] (prepare_namespace) from [<c06efe60>] (kernel_init_freeable+0x1d4/0x1e4)
[    6.862780] [<c06efe60>] (kernel_init_freeable) from [<c04e61fc>] (kernel_init+0xc/0xe8)
[    6.870914] [<c04e61fc>] (kernel_init) from [<c000f368>] (ret_from_fork+0x14/0x2c)
[    6.878536] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

  • Please ensure to install the monitor code before booting the Linux,

    > mon_install 0x0c5f0000

    Please refer mcsdk explore wiki for more information about the boot monitor usage and purpose.

    Thank you.

  • Hi Charles,

    I would recommend you the following things.

    1.  Stick to the released tagged version of the Linux kernel. For example, if you use the Processor SDK 2.0.2, open the release note and observe the tag and use it to pull it from the git repository. Because that would be tested version of Linux kernel on K2HK.

    //syntax

    $ git reset --hard <Release tag>where release tag can be obtained from the release notes. For example, release tag used is DEV.MCSDK-2013-01.11

    $ git reset --hard DEV.MCSDK-2013-01.11

    2. This is applicable for U-boot and Boot monitor too. USe the tagged versions of it.

    3. For the first attempt, use the pre-built images of Kernel, boot monitor and the U-boot.

    Follow the procedures given at

  • If you look at the session log I posted, you will see that I did install the monitor.  In fact, I turned on all the debugging outputs in the monitor, and added some of my own.  Here's from U-Boot

    OJM-SoC> mon_install ${addr_mon}
    DEBUG: Message2 from Secure Mode: Core freq - 200000000Hz

    K2_BM_15.07-39-g035329c-dirty SoC:k2hk built:13:26:40, May 5 2016

    DEBUG: ARMCOREPAC_PID=0x44902300

    DEBUG: AINTC_PID=0x44912100

    ## installed monitor, freq [200000000], status 0

    You'll also see this as the kernel tries to bring the CPUs on line


    DEBUG: >>>> skern_poweron_cpu(1) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    DEBUG: >>>> skern_poweron_cpu(2) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    DEBUG: >>>> skern_poweron_cpu(3) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    what's interesting here is that a reserved bit in the PDSTAT register comes on (see spruhj4, Table 2-13); does anybody know what that means?

     

  • It isn't possible for me to use the released tagged versions of the kernel or U-Boot because I am not using the EVM; I am trying to bring up our own hardware design that is loosely based on the EVM. So at the very least, the devicetree has to be different. But it gets worse, since a lot of the clock frequencies are hard-coded in, as is the assumption that the PASS PLL is used for the NETCP (although it can also be clocked by the main PLL). So I have to make changes, there's no avoiding that, or I wouldn't even have gotten as far as I have.

    Furthermore, I don't think this is a kernel/U-Boot problem. If you look at the debugging output from the monitor upthread, you'll see a couple of interesting things. Before the monitor writes to the PDCTRL and PTCMD registers (spruhj4, 2.5.4-5), the PDSTAT register shows both the current and next state of the power domain are "010: Powered OFF. Dynamic Wakeup on interrupt." After the monitor writes to PDCTRL and PTCMD, the next state is "00: Powered ON" and the current state is "100: Domain in transition". It never comes out of transition, whether the monitor is invoked by the kernel or by U-Boot (using the "mon_power" command). So for some reason, CPUs 1-3 are getting stuck in the transition state:

    DEBUG: >>>> skern_poweron_cpu(1) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    DEBUG: >>>> skern_poweron_cpu(2) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    DEBUG: >>>> skern_poweron_cpu(3) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000



    The other thing I notice is that one of the reserved bits (bit 27) lights up. Seems like that might have some significance, hmmm?
  • 0066.session.log
    initcall: 0c03dbcd
    initcall: 0c03fed5
    
    
    U-Boot 2016.03-00673-g028b7fb-dirty (May 04 2016 - 15:08:45 -0400)
    
    initcall: 0c00dc31
    initcall: 0c000c55
    CPU: 66AK2Hx SR2.0
    initcall: 0c00dd41
    I2C:   ready
    initcall: 0c00dd31
    DRAM:  initcall: 0c001d85
    DDR3 speed 1600
    DRAM: 2 GiB (includes reported below)
    
    Clear entire DDR3 memory to enable ECC
    initcall: 0c00de75
    initcall: 0c00dc4d
    initcall: 0c00dc61
    initcall: 0c00dc8f
    initcall: 0c00dc93
    initcall: 0c00dcbd
    initcall: 0c00dde1
    initcall: 0c00dccd
    initcall: 0c00dcd1
    initcall: 0c00dce7
    initcall: 0c00dd29
    initcall: 0c00deb1
    initcall: 0c00de59
    initcall: 0c00de11
    2 GiB
    initcall: 0c00dd21
    initcall: 0c00ddb5
    initcall: 0c00dd8f
    initcall: fff3def1
    initcall: fff3def5
    initcall: 0c00e025 (relocated to fff3e025)
    initcall: 0c00dffd (relocated to fff3dffd)
    initcall: 0c00df09 (relocated to fff3df09)
    initcall: 0c00dfe5 (relocated to fff3dfe5)
    initcall: 0c00df0d (relocated to fff3df0d)
    initcall: 0c00deed (relocated to fff3deed)
    initcall: 0c00dfd3 (relocated to fff3dfd3)
    fdtdec_get_int_array: ranges
    get_prop_check_min_len: ranges
    Looking for 'serial' at 16988, name serial@02530c00
       - serial0, /soc/serial@02530c00
    Found seq 0
    Looking for 'serial' at 17144, name serial@02531000
       - serial0, /soc/serial@02530c00
    Not found
    initcall: 0c00dfc7 (relocated to fff3dfc7)
    initcall: 0c001db9 (relocated to fff31db9)
    initcall: 0c03b7a9 (relocated to fff6b7a9)
    initcall: 0c013c11 (relocated to fff43c11)
    initcall: 0c00dfbd (relocated to fff3dfbd)
    fdtdec_get_int: reg-offset: (not found)
    fdtdec_get_int: reg-shift: 0x2 (2)
    fdtdec_get_int: clock-frequency: (not found)
    initcall: 0c00df15 (relocated to fff3df15)
    initcall: 0c00df11 (relocated to fff3df11)
    initcall: 0c00dfa9 (relocated to fff3dfa9)
    NAND:  1024 MiB
    initcall: 0c00df61 (relocated to fff3df61)
    fdtdec_get_config_int: load-environment
    NAND read from offset 100000 failed -74
    *** Warning - readenv() failed, using default environment
    
    Destroy Hash Table: fff8b600 table = 00000000
    Create Hash Table: N=438
    DELETE CANDIDATE: "bootargs"
    hdelete: DELETE key "bootargs"
    DELETE ERROR ##############################
    INSERT: table fff8b600, filled 1/439 rv feef7394 ==> name="bootcmd" value="run init_${boot} init_fw_rd_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern"
    INSERT: table fff8b600, filled 2/439 rv feef7c7c ==> name="bootdelay" value="2"
    INSERT: table fff8b600, filled 3/439 rv feef7434 ==> name="baudrate" value="115200"
    INSERT: table fff8b600, filled 4/439 rv feef7ac4 ==> name="arch" value="arm"
    INSERT: table fff8b600, filled 5/439 rv feef7858 ==> name="cpu" value="armv7"
    INSERT: table fff8b600, filled 6/439 rv feef7fb0 ==> name="board" value="ks2_evm"
    INSERT: table fff8b600, filled 7/439 rv feef6fac ==> name="board_name" value="ks2_evm"
    INSERT: table fff8b600, filled 8/439 rv feef75c4 ==> name="vendor" value="ti"
    INSERT: table fff8b600, filled 9/439 rv feef6750 ==> name="soc" value="keystone"
    INSERT: table fff8b600, filled 10/439 rv feef8708 ==> name="loadaddr" value="0x82000000"
    INSERT: table fff8b600, filled 11/439 rv feef7c2c ==> name="kernel_addr_r" value="0x82000000"
    INSERT: table fff8b600, filled 12/439 rv feef74ac ==> name="fdtaddr" value="0x88000000"
    INSERT: table fff8b600, filled 13/439 rv feef8780 ==> name="fdt_addr_r" value="0x88000000"
    INSERT: table fff8b600, filled 14/439 rv feef7e0c ==> name="rdaddr" value="0x88080000"
    INSERT: table fff8b600, filled 15/439 rv feef7614 ==> name="ramdisk_addr_r" value="0x88080000"
    INSERT: table fff8b600, filled 16/439 rv feef6bb0 ==> name="scriptaddr" value="0x80000000"
    INSERT: table fff8b600, filled 17/439 rv feef67b4 ==> name="pxefile_addr_r" value="0x80100000"
    INSERT: table fff8b600, filled 18/439 rv feef82bc ==> name="bootm_size" value="0x10000000"
    INSERT: table fff8b600, filled 19/439 rv feef74d4 ==> name="name_fw_rd" value="k2-fw-initrd.cpio.gz"
    INSERT: table fff8b600, filled 20/439 rv feef7e34 ==> name="set_rd_spec" value="setenv rd_spec ${rdaddr}:${filesize}"
    INSERT: table fff8b600, filled 21/439 rv feef77b8 ==> name="init_fw_rd_net" value="dhcp ${rdaddr} ${tftp_root}/${name_fw_rd}; run set_rd_spec"
    INSERT: table fff8b600, filled 22/439 rv feef8884 ==> name="init_fw_rd_ramfs" value="setenv rd_spec -"
    INSERT: table fff8b600, filled 23/439 rv feef7704 ==> name="init_fw_rd_ubi" value="ubifsload ${rdaddr} ${bootdir}/${name_fw_rd}; run set_rd_spec"
    INSERT: table fff8b600, filled 24/439 rv feef78f8 ==> name="boot" value="ubi"
    INSERT: table fff8b600, filled 25/439 rv feef669c ==> name="addr_mon" value="0x0c5f0000"
    INSERT: table fff8b600, filled 26/439 rv feef7ab0 ==> name="args_ubi" value="setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=ubifs,2048"
    INSERT: table fff8b600, filled 27/439 rv feef84ec ==> name="name_fdt" value="k2hk-evm.dtb"
    INSERT: table fff8b600, filled 28/439 rv feef849c ==> name="name_mon" value="skern-k2hk.bin"
    INSERT: table fff8b600, filled 29/439 rv feef8474 ==> name="name_ubi" value="k2hk-evm-ubifs.ubi"
    INSERT: table fff8b600, filled 30/439 rv feef8820 ==> name="name_uboot" value="u-boot-spi-k2hk-evm.gph"
    INSERT: table fff8b600, filled 31/439 rv feef6b60 ==> name="name_fs" value="arago-console-image-k2hk-evm.cpio.gz"
    INSERT: table fff8b600, filled 32/439 rv feef86e0 ==> name="bootdir" value="/boot"
    INSERT: table fff8b600, filled 33/439 rv feef83d4 ==> name="tftp_root" value="/"
    INSERT: table fff8b600, filled 34/439 rv feef82a8 ==> name="nfs_root" value="/export"
    INSERT: table fff8b600, filled 35/439 rv feef85f0 ==> name="mem_lpae" value="1"
    INSERT: table fff8b600, filled 36/439 rv feef7a88 ==> name="mem_reserve" value="512M"
    INSERT: table fff8b600, filled 37/439 rv feef6674 ==> name="addr_ubi" value="0x82000000"
    INSERT: table fff8b600, filled 38/439 rv feef8370 ==> name="addr_secdb_key" value="0xc000000"
    INSERT: table fff8b600, filled 39/439 rv feef8848 ==> name="name_kern" value="zImage"
    INSERT: table fff8b600, filled 40/439 rv feef66b0 ==> name="run_mon" value="mon_install ${addr_mon}"
    INSERT: table fff8b600, filled 41/439 rv feef8438 ==> name="run_kern" value="bootz ${loadaddr} ${rd_spec} ${fdtaddr}"
    INSERT: table fff8b600, filled 42/439 rv feef7128 ==> name="init_net" value="run args_all args_net"
    INSERT: table fff8b600, filled 43/439 rv feef68cc ==> name="init_nfs" value="setenv autoload no; dhcp; run args_all args_net"
    INSERT: table fff8b600, filled 44/439 rv feef8758 ==> name="init_ubi" value="run args_all args_ubi; ubi part ubifs; ubifsmount ubi:rootfs;"
    INSERT: table fff8b600, filled 45/439 rv feef83ac ==> name="get_fdt_net" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
    INSERT: table fff8b600, filled 46/439 rv feef6b10 ==> name="get_fdt_nfs" value="nfs ${fdtaddr} ${nfs_root}/boot/${name_fdt}"
    INSERT: table fff8b600, filled 47/439 rv feef6fe8 ==> name="get_fdt_ubi" value="ubifsload ${fdtaddr} ${bootdir}/${name_fdt}"
    INSERT: table fff8b600, filled 48/439 rv feef8078 ==> name="get_kern_net" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
    INSERT: table fff8b600, filled 49/439 rv feef6e44 ==> name="get_kern_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_kern}"
    INSERT: table fff8b600, filled 50/439 rv feef7650 ==> name="get_kern_ubi" value="ubifsload ${loadaddr} ${bootdir}/${name_kern}"
    INSERT: table fff8b600, filled 51/439 rv feef7b14 ==> name="get_mon_net" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
    INSERT: table fff8b600, filled 52/439 rv feef73a8 ==> name="get_mon_nfs" value="nfs ${addr_mon} ${nfs_root}/boot/${name_mon}"
    INSERT: table fff8b600, filled 53/439 rv feef8118 ==> name="get_mon_ubi" value="ubifsload ${addr_mon} ${bootdir}/${name_mon}"
    INSERT: table fff8b600, filled 54/439 rv feef7934 ==> name="get_uboot_net" value="dhcp ${loadaddr} ${tftp_root}/${name_uboot}"
    INSERT: table fff8b600, filled 55/439 rv feef7588 ==> name="get_uboot_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_uboot}"
    INSERT: table fff8b600, filled 56/439 rv feef7ad8 ==> name="burn_uboot_spi" value="sf probe; sf erase 0 0x80000; sf write ${loadaddr} 0 ${filesize}"
    INSERT: table fff8b600, filled 57/439 rv feef73e4 ==> name="burn_uboot_nand" value="nand erase 0 0x100000; nand write ${loadaddr} 0 ${filesize}"
    INSERT: table fff8b600, filled 58/439 rv feef7d80 ==> name="args_all" value="setenv bootargs console=ttyS0,115200n8 rootwait=1"
    INSERT: table fff8b600, filled 59/439 rv feef86cc ==> name="args_net" value="setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp"
    INSERT: table fff8b600, filled 60/439 rv feef82f8 ==> name="nfs_options" value="v3,tcp,rsize=4096,wsize=4096"
    INSERT: table fff8b600, filled 61/439 rv feef74c0 ==> name="get_fdt_ramfs" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
    INSERT: table fff8b600, filled 62/439 rv feef7e5c ==> name="get_kern_ramfs" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
    INSERT: table fff8b600, filled 63/439 rv feef6c3c ==> name="get_mon_ramfs" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
    INSERT: table fff8b600, filled 64/439 rv feef70b0 ==> name="get_fs_ramfs" value="dhcp ${rdaddr} ${tftp_root}/${name_fs}"
    INSERT: table fff8b600, filled 65/439 rv feef6cf0 ==> name="get_ubi_net" value="dhcp ${addr_ubi} ${tftp_root}/${name_ubi}"
    INSERT: table fff8b600, filled 66/439 rv feef81cc ==> name="get_ubi_nfs" value="nfs ${addr_ubi} ${nfs_root}/boot/${name_ubi}"
    INSERT: table fff8b600, filled 67/439 rv feef7664 ==> name="burn_ubi" value="nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}"
    INSERT: table fff8b600, filled 68/439 rv feef8730 ==> name="init_ramfs" value="run args_all args_ramfs get_fs_ramfs"
    INSERT: table fff8b600, filled 69/439 rv feef8230 ==> name="args_ramfs" value="setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x808080000,80M"
    INSERT: table fff8b600, filled 70/439 rv feef7a60 ==> name="no_post" value="1"
    INSERT: table fff8b600, filled 71/439 rv feef6d68 ==> name="mtdparts" value="mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)"
    INSERT: free(data = feef5a88)
    INSERT: done
    initcall: 0c00e031 (relocated to fff3e031)
    initcall: 0c013c25 (relocated to fff43c25)
    initcall: 0c00df57 (relocated to fff3df57)
    initcall: 0c0124f9 (relocated to fff424f9)
    initcall: 0c001d31 (relocated to fff31d31)
    initcall: 0c00089d (relocated to fff3089d)
    initcall: 0c00df4d (relocated to fff3df4d)
    initcall: 0c00df35 (relocated to fff3df35)
    initcall: 0c00df21 (relocated to fff3df21)
    Net:   SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    K2HK_EMAC, K2HK_EMAC1
    Error: K2HK_EMAC1 address not set.
    , K2HK_EMAC2
    Error: K2HK_EMAC2 address not set.
    , K2HK_EMAC3
    Error: K2HK_EMAC3 address not set.
    
    initcall: 0c00df19 (relocated to fff3df19)
    fdtdec_get_config_int: bootdelay
    fdtdec_get_config_int: kernel-offset
    fdtdec_get_config_int: rootdisk-offset
    fdtdec_get_config_string: bootcmd
    fdtdec_get_config_int: bootsecure
    Hit any key to stop autoboot:  2  0 
    OJM-SoC> dhcp ${loadaddr}
    + emac_close
    + emac_open
    - emac_open
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    DHCP client bound to address 192.168.1.3 (1009 ms)
    Using K2HK_EMAC device
    TFTP from server 192.168.1.1; our IP address is 192.168.1.3
    Filename '/uImage'.
    Load address: 0x82000000
    Loading: *#################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 ####
    	 3.6 MiB/s
    done
    Bytes transferred = 3864496 (3af7b0 hex)
    + emac_close
    - emac_close
    OJM-SoC> tftpboot ${addr_mon} skern-k2hk.bin
    + emac_close
    + emac_open
    - emac_open
    Using K2HK_EMAC device
    TFTP from server 192.168.1.1; our IP address is 192.168.1.3
    Filename 'skern-k2hk.bin'.
    Load address: 0xc5f0000
    Loading: *####
    	 3.3 MiB/s
    done
    Bytes transferred = 45056 (b000 hex)
    + emac_close
    - emac_close
    OJM-SoC> mon_install ${addr_mon}
    DEBUG: Message2 from Secure Mode: Core freq - 200000000Hz
    
    K2_BM_15.07-39-g035329c-dirty SoC:k2hk built:13:26:40, May  5 2016
    
    DEBUG: ARMCOREPAC_PID=0x44902300
    
    DEBUG: AINTC_PID=0x44912100
    
    ## installed monitor, freq [200000000], status 0
    OJM-SoC> tftpboot ${fdtaddr} k2hk-ojm.dtb
    + emac_close
    + emac_open
    - emac_open
    Using K2HK_EMAC device
    TFTP from server 192.168.1.1; our IP address is 192.168.1.3
    Filename 'k2hk-ojm.dtb'.
    Load address: 0x88000000
    Loading: *####
    	 3.4 MiB/s
    done
    Bytes transferred = 49850 (c2ba hex)
    + emac_close
    - emac_close
    OJM-SoC> bootm ${loadaddr} - ${fdtaddr}
    ## Booting kernel from Legacy Image at 82000000 ...
       Image Name:   Linux-4.1.18-gbbe8cfc-dirty
       Created:      2016-05-05  15:05:49 UTC
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    3864432 Bytes = 3.7 MiB
       Load Address: 80008000
       Entry Point:  80008000
       Verifying Checksum ... OK
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       Loading Kernel Image ... OK
       Loading Device Tree to 8fff0000, end 8ffff2b9 ... OK
    
    Starting kernel ...
    
    DEBUG: >>>> skern_poweron_cpu(1) >>>>
    
    DEBUG: >>>> before pdstat=0x00020002
    
    DEBUG: >>>> after pdstat=0x08040000
    
    DEBUG: >>>> skern_poweron_cpu(2) >>>>
    
    DEBUG: >>>> before pdstat=0x00020002
    
    DEBUG: >>>> after pdstat=0x08040000
    
    DEBUG: >>>> skern_poweron_cpu(3) >>>>
    
    DEBUG: >>>> before pdstat=0x00020002
    
    DEBUG: >>>> after pdstat=0x08040000
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Initializing cgroup subsys cpu
    [    0.000000] Initializing cgroup subsys cpuacct
    [    0.000000] Linux version 4.1.18-gbbe8cfc-dirty (ch22073@517033-mitll) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #3 SMP PREEMPT Thu May 5 11:05:40 EDT 2016
    [    0.000000] CPU: ARMv7 Processor [412fc0f4] revision 4 (ARMv7), cr=30c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
    [    0.000000] Machine model: Texas Instruments Keystone 2 Kepler/Hawking EVM
    [    0.000000] Switching physical address space to 0x800000000
    [    0.000000] Reserved memory: created CMA memory pool at 0x000000081f800000, size 8 MiB
    [    0.000000] Reserved memory: initialized node dsp_common_cma_pool, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x0000000820000000, size 512 MiB
    [    0.000000] Reserved memory: initialized node dsp_reserved_mpm_area, compatible id shared-dma-pool
    [    0.000000] cma: Reserved 16 MiB at 0x000000085f000000
    [    0.000000] Forcing write-allocate cache policy for SMP
    [    0.000000] Memory policy: Data cache writealloc
    [    0.000000] On node 0 totalpages: 262144
    [    0.000000] free_area_init_node: node 0, pgdat c078dbc0, node_mem_map debf5000
    [    0.000000]   DMA zone: 1520 pages used for memmap
    [    0.000000]   DMA zone: 0 pages reserved
    [    0.000000]   DMA zone: 131072 pages, LIFO batch:31
    [    0.000000]   HighMem zone: 131072 pages, LIFO batch:31
    [    0.000000] PERCPU: Embedded 12 pages/cpu @deb96000 s17536 r8192 d23424 u49152
    [    0.000000] pcpu-alloc: s17536 r8192 d23424 u49152 alloc=12*4096
    [    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 260624
    [    0.000000] Kernel command line: console=ttyS0,115200n8 debug earlyprintk ip=dhcp root=/dev/nfs nfsroot=192.168.1.1:/export/rootfs,nfsvers=3
    [    0.000000] log_buf_len individual max cpu contribution: 4096 bytes
    [    0.000000] log_buf_len total cpu_extra contributions: 12288 bytes
    [    0.000000] log_buf_len min size: 16384 bytes
    [    0.000000] log_buf_len: 32768 bytes
    [    0.000000] early log buf free: 14200(86%)
    [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Memory: 1006980K/1048576K available (5178K kernel code, 344K rwdata, 1888K rodata, 316K init, 174K bss, 17020K reserved, 24576K cma-reserved, 507904K 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 - 0xc06eeb68   (7067 kB)
    [    0.000000]       .init : 0xc06ef000 - 0xc073e000   ( 316 kB)
    [    0.000000]       .data : 0xc073e000 - 0xc0794014   ( 345 kB)
    [    0.000000]        .bss : 0xc0797000 - 0xc07c29f0   ( 175 kB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000] 	Additional per-CPU info printed with stalls.
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] Architected cp15 timer(s) running at 200.00MHz (virt).
    [    0.000000] clocksource arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000004] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.000011] Switching to timer-based delay loop, resolution 5ns
    [    0.000163] keystone timer clock @200000000 Hz
    [    0.000373] Console: colour dummy device 80x30
    [    0.000388] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=2000000)
    [    0.000398] pid_max: default: 4096 minimum: 301
    [    0.000461] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.000468] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.000871] Initializing cgroup subsys blkio
    [    0.000883] Initializing cgroup subsys devices
    [    0.000894] Initializing cgroup subsys freezer
    [    0.000911] CPU: Testing write buffer coherency: ok
    [    0.001091] /cpus/cpu@0 missing clock-frequency property
    [    0.001118] /cpus/cpu@1 missing clock-frequency property
    [    0.001143] /cpus/cpu@2 missing clock-frequency property
    [    0.001169] /cpus/cpu@3 missing clock-frequency property
    [    0.001178] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    [    0.001212] Setting up static identity map for 0x800082c0 - 0x800083cc
    [    1.070887] CPU1: failed to come online
    [    2.102246] CPU2: failed to come online
    [    3.134103] CPU3: failed to come online
    [    3.134135] Brought up 1 CPUs
    [    3.134150] SMP: Total of 1 processors activated (400.00 BogoMIPS).
    [    3.134163] CPU: All CPU(s) started in SVC mode.
    [    3.134795] devtmpfs: initialized
    [    3.164891] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
    [    3.165520] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    3.166358] pinctrl core: initialized pinctrl subsystem
    [    3.166860] NET: Registered protocol family 16
    [    3.169171] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    3.195623] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.196359] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.197109] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.197661] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.198214] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.198855] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.199404] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.200236] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.219956] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
    [    3.219970] hw-breakpoint: maximum watchpoint size is 8 bytes.
    [    3.257475] vgaarb: loaded
    [    3.257989] SCSI subsystem initialized
    [    3.258900] usbcore: registered new interface driver usbfs
    [    3.259101] usbcore: registered new interface driver hub
    [    3.259423] usbcore: registered new device driver usb
    [    3.266483] Switched to clocksource arch_sys_counter
    [    3.368507] NET: Registered protocol family 2
    [    3.369229] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    3.369269] TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
    [    3.369331] TCP: Hash tables configured (established 4096 bind 4096)
    [    3.369392] UDP hash table entries: 256 (order: 1, 8192 bytes)
    [    3.369416] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
    [    3.369683] NET: Registered protocol family 1
    [    3.370347] RPC: Registered named UNIX socket transport module.
    [    3.370362] RPC: Registered udp transport module.
    [    3.370375] RPC: Registered tcp transport module.
    [    3.370388] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    3.370411] PCI: CLS 0 bytes, default 64
    [    3.370939] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
    [    3.370989] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
    [    3.372818] platform alarmtimer: set dma_pfn_offset00780000
    [    3.374512] futex hash table entries: 16 (order: -2, 1024 bytes)
    [    3.414629] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
    [    3.414823] ntfs: driver 2.1.32 [Flags: R/O].
    [    3.415717] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    [    3.420793] NET: Registered protocol family 38
    [    3.420876] bounce: pool size: 64 pages
    [    3.421275] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
    [    3.421295] io scheduler noop registered
    [    3.421313] io scheduler deadline registered
    [    3.421366] io scheduler cfq registered (default)
    [    3.421655] keystone_irq soc:keystone_irq@26202a0: irqchip registered, nr_irqs 28
    [    3.425670] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 0, number of queues 8192
    [    3.425945] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 0, num of queues 8192, reg_peek f01c0000, reg_status f01e2000, reg_config f01e4000, reg_region f01e6000, reg_push f0200000, reg_pop f0240000
    [    3.425965] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 8192, number of queues 8192
    [    3.426224] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 8192, num of queues 8192, reg_peek f0280000, reg_status f01e8400, reg_config f01ea000, reg_region f01ec000, reg_push f02c0000, reg_pop f0300000
    [    3.430865] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp0
    [    3.430985] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp3
    [    3.431104] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp7
    [    3.433459] keystone-navigator-qmss soc:qmss@2a40000: pdsp id 0 not started for range acc-low-0
    [    3.435170] keystone-navigator-dma soc:knav_dmas@0: DMA dma_gbe registered 41 logical channels, flows 32, tx chans: 9, rx chans: 24
    [    3.435454] keystone-navigator-dma soc:knav_dmas@0: DMA dma_xgbe registered 48 logical channels, flows 32, tx chans: 16, rx chans: 16
    [    3.644999] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
    [    3.645172] platform serial8250: set dma_pfn_offset00780000
    [    3.651690] console [ttyS0] disabled
    [    3.651768] 2530c00.serial: ttyS0 at MMIO 0x2530c00 (irq = 26, base_baud = 12500000) is a 16550A
    [    4.532850] console [ttyS0] enabled
    [    4.539170] 2531000.serial: ttyS1 at MMIO 0x2531000 (irq = 27, base_baud = 12500000) is a 16550A
    [    4.560838] loop: module loaded
    [    4.564770] at24 0-0050: 131072 byte 24c1024 EEPROM, writable, 1 bytes/write
    [    4.576003] spi_davinci 21000400.spi: Controller at 0xf026a400
    [    4.582749] spi_davinci 21000600.spi: Controller at 0xf026c600
    [    4.589624] spi_davinci 21000800.spi: Controller at 0xf026e800
    [    5.648811] netcp-1.0 2620110.netcp: module(netcp-xgbe) not used for device
    [    6.060108] platform xhci-hcd.0.auto: set dma_pfn_offset00780000
    [    6.068107] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    6.074523] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [    6.082903] xhci-hcd xhci-hcd.0.auto: hcc params 0x0298f06d hci version 0x100 quirks 0x00210010
    [    6.091726] xhci-hcd xhci-hcd.0.auto: irq 34, io mem 0x02690000
    [    6.098047] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [    6.104870] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    6.112196] usb usb1: Product: xHCI Host Controller
    [    6.117264] usb usb1: Manufacturer: Linux 4.1.18-gbbe8cfc-dirty xhci-hcd
    [    6.124000] usb usb1: SerialNumber: xhci-hcd.0.auto
    [    6.130163] hub 1-0:1.0: USB hub found
    [    6.134172] hub 1-0:1.0: 1 port detected
    [    6.139003] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    6.144915] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
    [    6.152921] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
    [    6.161371] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
    [    6.168262] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    6.175521] usb usb2: Product: xHCI Host Controller
    [    6.180548] usb usb2: Manufacturer: Linux 4.1.18-gbbe8cfc-dirty xhci-hcd
    [    6.187341] usb usb2: SerialNumber: xhci-hcd.0.auto
    [    6.193420] hub 2-0:1.0: USB hub found
    [    6.197500] hub 2-0:1.0: 1 port detected
    [    6.203196] usbcore: registered new interface driver usb-storage
    [    6.210219] mousedev: PS/2 mouse device common for all mice
    [    6.216714] i2c /dev entries driver
    [    6.222407] davinci-wdt 22f0080.wdt: heartbeat 60 sec
    [    6.230084] usbcore: registered new interface driver usbhid
    [    6.235684] usbhid: USB HID core driver
    [    6.242825] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xb3
    [    6.249372] nand: Micron MT29F8G16ADBDAH4
    [    6.253405] nand: 1024 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
    [    6.262418] Bad block table not found for chip 0
    [    6.268536] Bad block table not found for chip 0
    [    6.273177] Scanning device for bad blocks
    [    6.863281] Bad block table written to 0x00003ffe0000, version 0x01
    [    6.870419] Bad block table written to 0x00003ffc0000, version 0x01
    [    6.876830] 3 ofpart partitions found on MTD device 30000000.nand
    [    6.882953] Creating 3 MTD partitions on "30000000.nand":
    [    6.888407] 0x000000000000-0x000000100000 : "u-boot"
    [    6.895465] 0x000000100000-0x000000180000 : "params"
    [    6.902910] 0x000000180000-0x000020000000 : "ubifs"
    [    6.910513] davinci_nand 30000000.nand: controller rev. 2.5
    [    6.917550] platform oprofile-perf.0: set dma_pfn_offset00780000
    [    6.924535] oprofile: using timer interrupt.
    [    6.929117] Netfilter messages via NETLINK v0.30.
    [    6.933868] nf_conntrack version 0.5.0 (16118 buckets, 64472 max)
    [    6.941077] ctnetlink v0.93: registering with nfnetlink.
    [    6.947396] ipip: IPv4 over IPv4 tunneling driver
    [    6.953549] gre: GRE over IPv4 demultiplexor driver
    [    6.958952] ip_tables: (C) 2000-2006 Netfilter Core Team
    [    6.964443] ipt_CLUSTERIP: ClusterIP Version 0.8 loaded successfully
    [    6.970949] arp_tables: (C) 2002 David S. Miller
    [    6.975655] Initializing XFRM netlink socket
    [    6.980302] NET: Registered protocol family 17
    [    6.984803] NET: Registered protocol family 15
    [    6.989336] 8021q: 802.1Q VLAN Support v1.8
    [    6.993628] Registering SWP/SWPB emulation handler
    [    7.022452] 8021q: adding VLAN 0 to HW filter on device eth0
    [    7.551727] 8021q: adding VLAN 0 to HW filter on device eth1
    [    7.576501] Sending DHCP requests ., OK
    [    7.656529] IP-Config: Got DHCP answer from 192.168.1.1, my address is 192.168.1.3
    [    8.377932] IP-Config: Complete:
    [    8.381183]      device=eth0, hwaddr=d4:f5:13:83:b9:3d, ipaddr=192.168.1.3, mask=255.255.255.0, gw=192.168.1.1
    [    8.391292]      host=ojm-soc, domain=, nis-domain=(none)
    [    8.396787]      bootserver=192.168.1.1, rootserver=192.168.1.1, rootpath=/export/rootfs
    [    8.404741]      nameserver0=155.34.3.8, nameserver1=155.34.3.22
    [    8.587142] VFS: Mounted root (nfs filesystem) readonly on device 0:15.
    [    8.594154] devtmpfs: mounted
    [    8.597528] Freeing unused kernel memory: 316K (c06ef000 - c073e000)
    INIT: version 2.88 booting
    Error opening /dev/fb0: No such file or directory
    Starting udev
    [    9.158762] udevd[1197]: starting version 182
    depmod: ERROR: could not open directory /lib/modules/4.1.18-gbbe8cfc-dirty: No such file or directory
    depmod: WARNING: -e needs -E or -F
    depmod: ERROR: could not open directory /lib/modules/4.1.18-gbbe8cfc-dirty: No such file or directory
    depmod: FATAL: could not search modules: No such file or directory
    [   13.788051] random: dd urandom read with 85 bits of entropy available
    Wed Apr  6 00:46:10 UTC 2016
    INIT: Entering runlevel: 5
    NOT configuring network interfaces: / is an NFS mount
    udhcpc (v1.23.1) started
    Sending discover...
    Sending select for 192.168.1.3...
    Lease of 192.168.1.3 obtained, lease time 600
    RTNETLINK answers: File exists
    /etc/udhcpc.d/50default: Adding DNS 155.34.3.8
    /etc/udhcpc.d/50default: Adding DNS 155.34.3.22
    [   16.822303] random: nonblocking pool is initialized
    Starting system message bus: dbus.
    Starting telnet daemon.
    Starting rpcbind daemon...rpcbind: cannot create socket for udp6
    rpcbind: cannot create socket for tcp6
    done.
    starting statd: done
    Starting syslogd/klogd: done
    Starting thttpd.
    Enabling thermal zones...
    /etc/rc5.d/S98thermal-zone-init: line 7: /sys/class/thermal/thermal_zone*/mode: No such file or directory
    
     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            
    
    Arago Project http://arago-project.org k2hk-evm /dev/ttyS0
    
    Arago 2016.03 k2hk-evm /dev/ttyS0
    
    k2hk-evm login: root
    root@k2hk-evm:~# uname -a
    Linux k2hk-evm 4.1.18-gbbe8cfc-dirty #3 SMP PREEMPT Thu May 5 11:05:40 EDT 2016 armv7l GNU/Linux
    root@k2hk-evm:~# df
    Filesystem           1K-blocks      Used Available Use% Mounted on
    192.168.1.1:/export/rootfs
                          52403200  13841020  38562180  26% /
    devtmpfs                503488         4    503484   0% /dev
    tmpfs                   515936        80    515856   0% /run
    tmpfs                    51200        56     51144   0% /var/volatile
    root@k2hk-evm:~# cat /r proc/cpuinfo
    processor	: 0
    model name	: ARMv7 Processor rev 4 (v7l)
    BogoMIPS	: 400.00
    Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm 
    CPU implementer	: 0x41
    CPU architecture: 7
    CPU variant	: 0x2
    CPU part	: 0xc0f
    CPU revision	: 4
    
    Hardware	: Keystone
    Revision	: 0000
    Serial		: 0000000000000000
    root@k2hk-evm:~# 
    OK, I took things a little farther: I can get the system fully up (all the way to a bash prompt), but still only one CPU.  I'm attaching the full session log from the serial console.

  • Are you using SMP kernel or normal kernel ?
    We can enable/disable it via make menuconfig.
    Also, please make sure that you have not touched the CPU related stuff in dts file (k2hk.dtsi).
    I think, problem could be from dts file.

    Can you please check again ?

    If you have EVM with you, just compare with that.
  • I am definitely running an SMP kernel.  Here's a snapshot from a recent bootup, the "DEBUG: >>>>" messages come from the boot monitor.

    [    0.067138] CPU: Testing write buffer coherency: ok

    [    0.072317] /cpus/cpu@0 missing clock-frequency property

    [    0.077784] /cpus/cpu@1 missing clock-frequency property

    [    0.083264] /cpus/cpu@2 missing clock-frequency property

    [    0.088732] /cpus/cpu@3 missing clock-frequency property

    [    0.094190] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000

    [    0.100016] Setting up static identity map for 0x80008300 - 0x8000840c

    DEBUG: >>>> skern_poweron_cpu(1) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    [    1.177712] CPU1: failed to come online

    DEBUG: >>>> skern_poweron_cpu(2) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    [    2.209107] CPU2: failed to come online

    DEBUG: >>>> skern_poweron_cpu(3) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    [    3.240987] CPU3: failed to come online

    [    3.244966] Brought up 1 CPUs

    [    3.248053] SMP: Total of 1 processors activated (400.00 BogoMIPS).

    [    3.254497] CPU: All CPU(s) started in SVC mode.

    Also, I'm attaching my .config, which has "CONFIG_SMP=y".

    I'm also attaching the devicetree source files and some diffs; I haven't touched the CPUs (obviously, the kernel is trying to bring them up, and wouldn't if they weren't in the devicetree).

    Like I said, there's no direct comparison with the EVM possible because this is custom hardware that differs from the EVM enough so that the same U-Boot/devicetree cannot be used.

    dot.config

  • Here's the complete session log that I excerpted upthread.  Basically, it shows a normal boot up and interactive shell, just with the exception that three of four cores do not come up.

    session-fullup.log
    initcall: 0c03dbcd
    initcall: 0c03fed5
    
    
    U-Boot 2016.03-00673-g028b7fb-dirty (May 04 2016 - 15:08:45 -0400)
    
    initcall: 0c00dc31
    initcall: 0c000c55
    CPU: 66AK2Hx SR2.0
    initcall: 0c00dd41
    I2C:   ready
    initcall: 0c00dd31
    DRAM:  initcall: 0c001d85
    DDR3 speed 1600
    DRAM: 2 GiB (includes reported below)
    
    Clear entire DDR3 memory to enable ECC
    initcall: 0c00de75
    initcall: 0c00dc4d
    initcall: 0c00dc61
    initcall: 0c00dc8f
    initcall: 0c00dc93
    initcall: 0c00dcbd
    initcall: 0c00dde1
    initcall: 0c00dccd
    initcall: 0c00dcd1
    initcall: 0c00dce7
    initcall: 0c00dd29
    initcall: 0c00deb1
    initcall: 0c00de59
    initcall: 0c00de11
    2 GiB
    initcall: 0c00dd21
    initcall: 0c00ddb5
    initcall: 0c00dd8f
    initcall: fff3def1
    initcall: fff3def5
    initcall: 0c00e025 (relocated to fff3e025)
    initcall: 0c00dffd (relocated to fff3dffd)
    initcall: 0c00df09 (relocated to fff3df09)
    initcall: 0c00dfe5 (relocated to fff3dfe5)
    initcall: 0c00df0d (relocated to fff3df0d)
    initcall: 0c00deed (relocated to fff3deed)
    initcall: 0c00dfd3 (relocated to fff3dfd3)
    fdtdec_get_int_array: ranges
    get_prop_check_min_len: ranges
    Looking for 'serial' at 16988, name serial@02530c00
       - serial0, /soc/serial@02530c00
    Found seq 0
    Looking for 'serial' at 17144, name serial@02531000
       - serial0, /soc/serial@02530c00
    Not found
    initcall: 0c00dfc7 (relocated to fff3dfc7)
    initcall: 0c001db9 (relocated to fff31db9)
    initcall: 0c03b7a9 (relocated to fff6b7a9)
    initcall: 0c013c11 (relocated to fff43c11)
    initcall: 0c00dfbd (relocated to fff3dfbd)
    fdtdec_get_int: reg-offset: (not found)
    fdtdec_get_int: reg-shift: 0x2 (2)
    fdtdec_get_int: clock-frequency: (not found)
    initcall: 0c00df15 (relocated to fff3df15)
    initcall: 0c00df11 (relocated to fff3df11)
    initcall: 0c00dfa9 (relocated to fff3dfa9)
    NAND:  1024 MiB
    initcall: 0c00df61 (relocated to fff3df61)
    fdtdec_get_config_int: load-environment
    NAND read from offset 100000 failed -74
    *** Warning - readenv() failed, using default environment
    
    Destroy Hash Table: fff8b600 table = 00000000
    Create Hash Table: N=438
    DELETE CANDIDATE: "bootargs"
    hdelete: DELETE key "bootargs"
    DELETE ERROR ##############################
    INSERT: table fff8b600, filled 1/439 rv feef7394 ==> name="bootcmd" value="run init_${boot} init_fw_rd_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern"
    INSERT: table fff8b600, filled 2/439 rv feef7c7c ==> name="bootdelay" value="2"
    INSERT: table fff8b600, filled 3/439 rv feef7434 ==> name="baudrate" value="115200"
    INSERT: table fff8b600, filled 4/439 rv feef7ac4 ==> name="arch" value="arm"
    INSERT: table fff8b600, filled 5/439 rv feef7858 ==> name="cpu" value="armv7"
    INSERT: table fff8b600, filled 6/439 rv feef7fb0 ==> name="board" value="ks2_evm"
    INSERT: table fff8b600, filled 7/439 rv feef6fac ==> name="board_name" value="ks2_evm"
    INSERT: table fff8b600, filled 8/439 rv feef75c4 ==> name="vendor" value="ti"
    INSERT: table fff8b600, filled 9/439 rv feef6750 ==> name="soc" value="keystone"
    INSERT: table fff8b600, filled 10/439 rv feef8708 ==> name="loadaddr" value="0x82000000"
    INSERT: table fff8b600, filled 11/439 rv feef7c2c ==> name="kernel_addr_r" value="0x82000000"
    INSERT: table fff8b600, filled 12/439 rv feef74ac ==> name="fdtaddr" value="0x88000000"
    INSERT: table fff8b600, filled 13/439 rv feef8780 ==> name="fdt_addr_r" value="0x88000000"
    INSERT: table fff8b600, filled 14/439 rv feef7e0c ==> name="rdaddr" value="0x88080000"
    INSERT: table fff8b600, filled 15/439 rv feef7614 ==> name="ramdisk_addr_r" value="0x88080000"
    INSERT: table fff8b600, filled 16/439 rv feef6bb0 ==> name="scriptaddr" value="0x80000000"
    INSERT: table fff8b600, filled 17/439 rv feef67b4 ==> name="pxefile_addr_r" value="0x80100000"
    INSERT: table fff8b600, filled 18/439 rv feef82bc ==> name="bootm_size" value="0x10000000"
    INSERT: table fff8b600, filled 19/439 rv feef74d4 ==> name="name_fw_rd" value="k2-fw-initrd.cpio.gz"
    INSERT: table fff8b600, filled 20/439 rv feef7e34 ==> name="set_rd_spec" value="setenv rd_spec ${rdaddr}:${filesize}"
    INSERT: table fff8b600, filled 21/439 rv feef77b8 ==> name="init_fw_rd_net" value="dhcp ${rdaddr} ${tftp_root}/${name_fw_rd}; run set_rd_spec"
    INSERT: table fff8b600, filled 22/439 rv feef8884 ==> name="init_fw_rd_ramfs" value="setenv rd_spec -"
    INSERT: table fff8b600, filled 23/439 rv feef7704 ==> name="init_fw_rd_ubi" value="ubifsload ${rdaddr} ${bootdir}/${name_fw_rd}; run set_rd_spec"
    INSERT: table fff8b600, filled 24/439 rv feef78f8 ==> name="boot" value="ubi"
    INSERT: table fff8b600, filled 25/439 rv feef669c ==> name="addr_mon" value="0x0c5f0000"
    INSERT: table fff8b600, filled 26/439 rv feef7ab0 ==> name="args_ubi" value="setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=ubifs,2048"
    INSERT: table fff8b600, filled 27/439 rv feef84ec ==> name="name_fdt" value="k2hk-evm.dtb"
    INSERT: table fff8b600, filled 28/439 rv feef849c ==> name="name_mon" value="skern-k2hk.bin"
    INSERT: table fff8b600, filled 29/439 rv feef8474 ==> name="name_ubi" value="k2hk-evm-ubifs.ubi"
    INSERT: table fff8b600, filled 30/439 rv feef8820 ==> name="name_uboot" value="u-boot-spi-k2hk-evm.gph"
    INSERT: table fff8b600, filled 31/439 rv feef6b60 ==> name="name_fs" value="arago-console-image-k2hk-evm.cpio.gz"
    INSERT: table fff8b600, filled 32/439 rv feef86e0 ==> name="bootdir" value="/boot"
    INSERT: table fff8b600, filled 33/439 rv feef83d4 ==> name="tftp_root" value="/"
    INSERT: table fff8b600, filled 34/439 rv feef82a8 ==> name="nfs_root" value="/export"
    INSERT: table fff8b600, filled 35/439 rv feef85f0 ==> name="mem_lpae" value="1"
    INSERT: table fff8b600, filled 36/439 rv feef7a88 ==> name="mem_reserve" value="512M"
    INSERT: table fff8b600, filled 37/439 rv feef6674 ==> name="addr_ubi" value="0x82000000"
    INSERT: table fff8b600, filled 38/439 rv feef8370 ==> name="addr_secdb_key" value="0xc000000"
    INSERT: table fff8b600, filled 39/439 rv feef8848 ==> name="name_kern" value="zImage"
    INSERT: table fff8b600, filled 40/439 rv feef66b0 ==> name="run_mon" value="mon_install ${addr_mon}"
    INSERT: table fff8b600, filled 41/439 rv feef8438 ==> name="run_kern" value="bootz ${loadaddr} ${rd_spec} ${fdtaddr}"
    INSERT: table fff8b600, filled 42/439 rv feef7128 ==> name="init_net" value="run args_all args_net"
    INSERT: table fff8b600, filled 43/439 rv feef68cc ==> name="init_nfs" value="setenv autoload no; dhcp; run args_all args_net"
    INSERT: table fff8b600, filled 44/439 rv feef8758 ==> name="init_ubi" value="run args_all args_ubi; ubi part ubifs; ubifsmount ubi:rootfs;"
    INSERT: table fff8b600, filled 45/439 rv feef83ac ==> name="get_fdt_net" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
    INSERT: table fff8b600, filled 46/439 rv feef6b10 ==> name="get_fdt_nfs" value="nfs ${fdtaddr} ${nfs_root}/boot/${name_fdt}"
    INSERT: table fff8b600, filled 47/439 rv feef6fe8 ==> name="get_fdt_ubi" value="ubifsload ${fdtaddr} ${bootdir}/${name_fdt}"
    INSERT: table fff8b600, filled 48/439 rv feef8078 ==> name="get_kern_net" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
    INSERT: table fff8b600, filled 49/439 rv feef6e44 ==> name="get_kern_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_kern}"
    INSERT: table fff8b600, filled 50/439 rv feef7650 ==> name="get_kern_ubi" value="ubifsload ${loadaddr} ${bootdir}/${name_kern}"
    INSERT: table fff8b600, filled 51/439 rv feef7b14 ==> name="get_mon_net" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
    INSERT: table fff8b600, filled 52/439 rv feef73a8 ==> name="get_mon_nfs" value="nfs ${addr_mon} ${nfs_root}/boot/${name_mon}"
    INSERT: table fff8b600, filled 53/439 rv feef8118 ==> name="get_mon_ubi" value="ubifsload ${addr_mon} ${bootdir}/${name_mon}"
    INSERT: table fff8b600, filled 54/439 rv feef7934 ==> name="get_uboot_net" value="dhcp ${loadaddr} ${tftp_root}/${name_uboot}"
    INSERT: table fff8b600, filled 55/439 rv feef7588 ==> name="get_uboot_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_uboot}"
    INSERT: table fff8b600, filled 56/439 rv feef7ad8 ==> name="burn_uboot_spi" value="sf probe; sf erase 0 0x80000; sf write ${loadaddr} 0 ${filesize}"
    INSERT: table fff8b600, filled 57/439 rv feef73e4 ==> name="burn_uboot_nand" value="nand erase 0 0x100000; nand write ${loadaddr} 0 ${filesize}"
    INSERT: table fff8b600, filled 58/439 rv feef7d80 ==> name="args_all" value="setenv bootargs console=ttyS0,115200n8 rootwait=1"
    INSERT: table fff8b600, filled 59/439 rv feef86cc ==> name="args_net" value="setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp"
    INSERT: table fff8b600, filled 60/439 rv feef82f8 ==> name="nfs_options" value="v3,tcp,rsize=4096,wsize=4096"
    INSERT: table fff8b600, filled 61/439 rv feef74c0 ==> name="get_fdt_ramfs" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
    INSERT: table fff8b600, filled 62/439 rv feef7e5c ==> name="get_kern_ramfs" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
    INSERT: table fff8b600, filled 63/439 rv feef6c3c ==> name="get_mon_ramfs" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
    INSERT: table fff8b600, filled 64/439 rv feef70b0 ==> name="get_fs_ramfs" value="dhcp ${rdaddr} ${tftp_root}/${name_fs}"
    INSERT: table fff8b600, filled 65/439 rv feef6cf0 ==> name="get_ubi_net" value="dhcp ${addr_ubi} ${tftp_root}/${name_ubi}"
    INSERT: table fff8b600, filled 66/439 rv feef81cc ==> name="get_ubi_nfs" value="nfs ${addr_ubi} ${nfs_root}/boot/${name_ubi}"
    INSERT: table fff8b600, filled 67/439 rv feef7664 ==> name="burn_ubi" value="nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}"
    INSERT: table fff8b600, filled 68/439 rv feef8730 ==> name="init_ramfs" value="run args_all args_ramfs get_fs_ramfs"
    INSERT: table fff8b600, filled 69/439 rv feef8230 ==> name="args_ramfs" value="setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x808080000,80M"
    INSERT: table fff8b600, filled 70/439 rv feef7a60 ==> name="no_post" value="1"
    INSERT: table fff8b600, filled 71/439 rv feef6d68 ==> name="mtdparts" value="mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)"
    INSERT: free(data = feef5a88)
    INSERT: done
    initcall: 0c00e031 (relocated to fff3e031)
    initcall: 0c013c25 (relocated to fff43c25)
    initcall: 0c00df57 (relocated to fff3df57)
    initcall: 0c0124f9 (relocated to fff424f9)
    initcall: 0c001d31 (relocated to fff31d31)
    initcall: 0c00089d (relocated to fff3089d)
    initcall: 0c00df4d (relocated to fff3df4d)
    initcall: 0c00df35 (relocated to fff3df35)
    initcall: 0c00df21 (relocated to fff3df21)
    Net:   SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    SERDES lane 0 initialized
    Could not get PHY for ethernet-mdio: addr -1
    K2HK_EMAC, K2HK_EMAC1
    Error: K2HK_EMAC1 address not set.
    , K2HK_EMAC2
    Error: K2HK_EMAC2 address not set.
    , K2HK_EMAC3
    Error: K2HK_EMAC3 address not set.
    
    initcall: 0c00df19 (relocated to fff3df19)
    fdtdec_get_config_int: bootdelay
    fdtdec_get_config_int: kernel-offset
    fdtdec_get_config_int: rootdisk-offset
    fdtdec_get_config_string: bootcmd
    fdtdec_get_config_int: bootsecure
    Hit any key to stop autoboot:  2  0 
    OJM-SoC> dhcp ${loadaddr}
    + emac_close
    + emac_open
    - emac_open
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    DHCP client bound to address 192.168.1.4 (1011 ms)
    Using K2HK_EMAC device
    TFTP from server 192.168.1.1; our IP address is 192.168.1.4
    Filename '/uImage'.
    Load address: 0x82000000
    Loading: *#################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 ####
    	 3.5 MiB/s
    done
    Bytes transferred = 3865488 (3afb90 hex)
    + emac_close
    - emac_close
    OJM-SoC> tftpboot ${addr_mon} skern-k2hk.bin
    + emac_close
    + emac_open
    - emac_open
    Using K2HK_EMAC device
    TFTP from server 192.168.1.1; our IP address is 192.168.1.4
    Filename 'skern-k2hk.bin'.
    Load address: 0xc5f0000
    Loading: *####
    	 3.6 MiB/s
    done
    Bytes transferred = 45056 (b000 hex)
    + emac_close
    - emac_close
    OJM-SoC> mon_install ${addr_mon}
    DEBUG: Message2 from Secure Mode: Core freq - 200000000Hz
    
    K2_BM_15.07-39-g035329c-dirty SoC:k2hk built:13:26:40, May  5 2016
    
    DEBUG: ARMCOREPAC_PID=0x44902300
    
    DEBUG: AINTC_PID=0x44912100
    
    ## installed monitor, freq [200000000], status 0
    OJM-SoC> tftpboot ${fdtaddr} k2hk-ojm.dtb
    + emac_close
    + emac_open
    - emac_open
    Using K2HK_EMAC device
    TFTP from server 192.168.1.1; our IP address is 192.168.1.4
    Filename 'k2hk-ojm.dtb'.
    Load address: 0x88000000
    Loading: *####
    	 3.4 MiB/s
    done
    Bytes transferred = 49850 (c2ba hex)
    + emac_close
    - emac_close
    OJM-SoC> bootm ${loadaddr} - ${fdtaddr}
    ## Booting kernel from Legacy Image at 82000000 ...
       Image Name:   Linux-4.1.18-W1CMC-gbbe8cfc-dirt
       Created:      2016-05-06  14:48:13 UTC
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    3865424 Bytes = 3.7 MiB
       Load Address: 80008000
       Entry Point:  80008000
       Verifying Checksum ... OK
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       Loading Kernel Image ... OK
       Loading Device Tree to 8fff0000, end 8ffff2b9 ... OK
    
    Starting kernel ...
    
    Uncompressing Linux... done, booting the kernel.
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Initializing cgroup subsys cpu
    [    0.000000] Initializing cgroup subsys cpuacct
    [    0.000000] Linux version 4.1.18-W1CMC-gbbe8cfc-dirty (ch22073@517033-mitll) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #4 SMP PREEMPT Fri May 6 10:48:06 EDT 2016
    [    0.000000] CPU: ARMv7 Processor [412fc0f4] revision 4 (ARMv7), cr=30c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
    [    0.000000] Machine model: Texas Instruments Keystone 2 Kepler/Hawking EVM
    [    0.000000] bootconsole [earlycon0] enabled
    [    0.000000] Switching physical address space to 0x800000000
    [    0.000000] Reserved memory: created CMA memory pool at 0x000000081f800000, size 8 MiB
    [    0.000000] Reserved memory: initialized node dsp_common_cma_pool, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x0000000820000000, size 512 MiB
    [    0.000000] Reserved memory: initialized node dsp_reserved_mpm_area, compatible id shared-dma-pool
    [    0.000000] cma: Reserved 16 MiB at 0x000000085f000000
    [    0.000000] Forcing write-allocate cache policy for SMP
    [    0.000000] Memory policy: Data cache writealloc
    [    0.000000] On node 0 totalpages: 262144
    [    0.000000] free_area_init_node: node 0, pgdat c078dc00, node_mem_map debf4000
    [    0.000000]   DMA zone: 1520 pages used for memmap
    [    0.000000]   DMA zone: 0 pages reserved
    [    0.000000]   DMA zone: 131072 pages, LIFO batch:31
    [    0.000000]   HighMem zone: 131072 pages, LIFO batch:31
    [    0.000000] PERCPU: Embedded 12 pages/cpu @deb95000 s17536 r8192 d23424 u49152
    [    0.000000] pcpu-alloc: s17536 r8192 d23424 u49152 alloc=12*4096
    [    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 260624
    [    0.000000] Kernel command line: console=ttyS0,115200n8 debug earlyprintk ip=dhcp root=/dev/nfs nfsroot=192.168.1.1:/export/rootfs,nfsvers=3
    [    0.000000] log_buf_len individual max cpu contribution: 4096 bytes
    [    0.000000] log_buf_len total cpu_extra contributions: 12288 bytes
    [    0.000000] log_buf_len min size: 16384 bytes
    [    0.000000] log_buf_len: 32768 bytes
    [    0.000000] early log buf free: 14148(86%)
    [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Memory: 1006976K/1048576K available (5178K kernel code, 344K rwdata, 1888K rodata, 316K init, 174K bss, 17024K reserved, 24576K cma-reserved, 507904K 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 - 0xc06eeb9c   (7067 kB)
    [    0.000000]       .init : 0xc06ef000 - 0xc073e000   ( 316 kB)
    [    0.000000]       .data : 0xc073e000 - 0xc0794054   ( 345 kB)
    [    0.000000]        .bss : 0xc0797000 - 0xc07c29f0   ( 175 kB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000] 	Additional per-CPU info printed with stalls.
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] Architected cp15 timer(s) running at 200.00MHz (virt).
    [    0.000000] clocksource arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000003] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008171] Switching to timer-based delay loop, resolution 5ns
    [    0.014376] keystone timer clock @200000000 Hz
    [    0.019182] Console: colour dummy device 80x30
    [    0.023762] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=2000000)
    [    0.034486] pid_max: default: 4096 minimum: 301
    [    0.039199] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.045972] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.053575] Initializing cgroup subsys blkio
    [    0.057985] Initializing cgroup subsys devices
    [    0.062558] Initializing cgroup subsys freezer
    [    0.067138] CPU: Testing write buffer coherency: ok
    [    0.072317] /cpus/cpu@0 missing clock-frequency property
    [    0.077784] /cpus/cpu@1 missing clock-frequency property
    [    0.083264] /cpus/cpu@2 missing clock-frequency property
    [    0.088732] /cpus/cpu@3 missing clock-frequency property
    [    0.094190] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    [    0.100016] Setting up static identity map for 0x80008300 - 0x8000840c
    DEBUG: >>>> skern_poweron_cpu(1) >>>>
    
    DEBUG: >>>> before pdstat=0x00020002
    
    DEBUG: >>>> after pdstat=0x08040000
    
    [    1.177712] CPU1: failed to come online
    DEBUG: >>>> skern_poweron_cpu(2) >>>>
    
    DEBUG: >>>> before pdstat=0x00020002
    
    DEBUG: >>>> after pdstat=0x08040000
    
    [    2.209107] CPU2: failed to come online
    DEBUG: >>>> skern_poweron_cpu(3) >>>>
    
    DEBUG: >>>> before pdstat=0x00020002
    
    DEBUG: >>>> after pdstat=0x08040000
    
    [    3.240987] CPU3: failed to come online
    [    3.244966] Brought up 1 CPUs
    [    3.248053] SMP: Total of 1 processors activated (400.00 BogoMIPS).
    [    3.254497] CPU: All CPU(s) started in SVC mode.
    [    3.259868] devtmpfs: initialized
    [    3.293323] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
    [    3.301845] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    3.313056] pinctrl core: initialized pinctrl subsystem
    [    3.318914] NET: Registered protocol family 16
    [    3.326132] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    3.359495] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.367066] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.374313] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.381509] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.388743] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.395850] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.403078] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.410204] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    3.437296] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
    [    3.445814] hw-breakpoint: maximum watchpoint size is 8 bytes.
    [    3.488613] vgaarb: loaded
    [    3.492366] SCSI subsystem initialized
    [    3.497514] usbcore: registered new interface driver usbfs
    [    3.503966] usbcore: registered new interface driver hub
    [    3.509796] usbcore: registered new device driver usb
    [    3.523206] Switched to clocksource arch_sys_counter
    [    3.627114] NET: Registered protocol family 2
    [    3.632622] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    3.639862] TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
    [    3.646828] TCP: Hash tables configured (established 4096 bind 4096)
    [    3.653444] UDP hash table entries: 256 (order: 1, 8192 bytes)
    [    3.659439] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
    [    3.666171] NET: Registered protocol family 1
    [    3.671076] RPC: Registered named UNIX socket transport module.
    [    3.678715] RPC: Registered udp transport module.
    [    3.683614] RPC: Registered tcp transport module.
    [    3.688457] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    3.695132] PCI: CLS 0 bytes, default 64
    [    3.699702] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
    [    3.705899] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
    [    3.716112] platform alarmtimer: set dma_pfn_offset00780000
    [    3.723965] futex hash table entries: 16 (order: -2, 1024 bytes)
    [    3.769414] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
    [    3.776468] ntfs: driver 2.1.32 [Flags: R/O].
    [    3.781844] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    [    3.793999] NET: Registered protocol family 38
    [    3.798649] bounce: pool size: 64 pages
    [    3.803249] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
    [    3.810819] io scheduler noop registered
    [    3.815125] io scheduler deadline registered
    [    3.819571] io scheduler cfq registered (default)
    [    3.825472] keystone_irq soc:keystone_irq@26202a0: irqchip registered, nr_irqs 28
    [    3.838879] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 0, number of queues 8192
    [    3.848909] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 0, num of queues 8192, reg_peek f01c0000, reg_status f01ba000, reg_config f01bc000, reg_region f01be000, reg_push f0200000, reg_pop f0240000
    [    3.868974] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 8192, number of queues 8192
    [    3.878452] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 8192, num of queues 8192, reg_peek f0280000, reg_status f01e2400, reg_config f01e4000, reg_region f01e6000, reg_push f02c0000, reg_pop f0300000
    [    3.899237] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp0
    [    3.907943] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp3
    [    3.916862] keystone-navigator-qmss soc:qmss@2a40000: failed to get firmware for pdsp pdsp7
    [    3.927806] keystone-navigator-qmss soc:qmss@2a40000: pdsp id 0 not started for range acc-low-0
    [    3.938407] keystone-navigator-dma soc:knav_dmas@0: DMA dma_gbe registered 41 logical channels, flows 32, tx chans: 9, rx chans: 24
    [    3.950921] keystone-navigator-dma soc:knav_dmas@0: DMA dma_xgbe registered 48 logical channels, flows 32, tx chans: 16, rx chans: 16
    [    4.170767] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
    [    4.177698] platform serial8250: set dma_pfn_offset00780000
    [    4.190739] console [ttyS0] disabled
    [    4.194661] 2530c00.serial: ttyS0 at MMIO 0x2530c00 (irq = 26, base_baud = 12500000) is a 16550A
    [    4.203763] console [ttyS0] enabled
    [    4.203763] console [ttyS0] enabled
    [    4.210873] bootconsole [earlycon0] disabled
    [    4.210873] bootconsole [earlycon0] disabled
    [    4.224453] 2531000.serial: ttyS1 at MMIO 0x2531000 (irq = 27, base_baud = 12500000) is a 16550A
    [    4.246603] loop: module loaded
    [    4.250542] at24 0-0050: 131072 byte 24c1024 EEPROM, writable, 1 bytes/write
    [    4.261900] spi_davinci 21000400.spi: Controller at 0xf0262400
    [    4.268658] spi_davinci 21000600.spi: Controller at 0xf0264600
    [    4.275794] spi_davinci 21000800.spi: Controller at 0xf0266800
    [    5.335072] netcp-1.0 2620110.netcp: module(netcp-xgbe) not used for device
    [    5.746098] platform xhci-hcd.0.auto: set dma_pfn_offset00780000
    [    5.754098] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    5.760505] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [    5.768894] xhci-hcd xhci-hcd.0.auto: hcc params 0x0298f06d hci version 0x100 quirks 0x00210010
    [    5.777717] xhci-hcd xhci-hcd.0.auto: irq 34, io mem 0x02690000
    [    5.784036] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [    5.790859] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    5.798189] usb usb1: Product: xHCI Host Controller
    [    5.803255] usb usb1: Manufacturer: Linux 4.1.18-W1CMC-gbbe8cfc-dirty xhci-hcd
    [    5.810513] usb usb1: SerialNumber: xhci-hcd.0.auto
    [    5.816673] hub 1-0:1.0: USB hub found
    [    5.820688] hub 1-0:1.0: 1 port detected
    [    5.825514] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    5.831422] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
    [    5.839423] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
    [    5.847848] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
    [    5.854740] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    5.861998] usb usb2: Product: xHCI Host Controller
    [    5.867025] usb usb2: Manufacturer: Linux 4.1.18-W1CMC-gbbe8cfc-dirty xhci-hcd
    [    5.874341] usb usb2: SerialNumber: xhci-hcd.0.auto
    [    5.880441] hub 2-0:1.0: USB hub found
    [    5.884526] hub 2-0:1.0: 1 port detected
    [    5.890224] usbcore: registered new interface driver usb-storage
    [    5.897219] mousedev: PS/2 mouse device common for all mice
    [    5.903615] i2c /dev entries driver
    [    5.909410] davinci-wdt 22f0080.wdt: heartbeat 60 sec
    [    5.917098] usbcore: registered new interface driver usbhid
    [    5.924265] usbhid: USB HID core driver
    [    5.929836] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xb3
    [    5.936383] nand: Micron MT29F8G16ADBDAH4
    [    5.940415] nand: 1024 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
    [    5.949448] Bad block table not found for chip 0
    [    5.955553] Bad block table not found for chip 0
    [    5.960194] Scanning device for bad blocks
    [    6.557519] Bad block table written to 0x00003ffe0000, version 0x01
    [    6.564653] Bad block table written to 0x00003ffc0000, version 0x01
    [    6.571039] 3 ofpart partitions found on MTD device 30000000.nand
    [    6.577188] Creating 3 MTD partitions on "30000000.nand":
    [    6.582641] 0x000000000000-0x000000100000 : "u-boot"
    [    6.589709] 0x000000100000-0x000000180000 : "params"
    [    6.597153] 0x000000180000-0x000020000000 : "ubifs"
    [    6.604769] davinci_nand 30000000.nand: controller rev. 2.5
    [    6.611838] platform oprofile-perf.0: set dma_pfn_offset00780000
    [    6.618696] oprofile: using timer interrupt.
    [    6.623373] Netfilter messages via NETLINK v0.30.
    [    6.628126] nf_conntrack version 0.5.0 (16118 buckets, 64472 max)
    [    6.635331] ctnetlink v0.93: registering with nfnetlink.
    [    6.641560] ipip: IPv4 over IPv4 tunneling driver
    [    6.647692] gre: GRE over IPv4 demultiplexor driver
    [    6.653198] ip_tables: (C) 2000-2006 Netfilter Core Team
    [    6.658698] ipt_CLUSTERIP: ClusterIP Version 0.8 loaded successfully
    [    6.665201] arp_tables: (C) 2002 David S. Miller
    [    6.669907] Initializing XFRM netlink socket
    [    6.674554] NET: Registered protocol family 17
    [    6.679053] NET: Registered protocol family 15
    [    6.683586] 8021q: 802.1Q VLAN Support v1.8
    [    6.687881] Registering SWP/SWPB emulation handler
    [    6.719051] 8021q: adding VLAN 0 to HW filter on device eth0
    [    7.248724] 8021q: adding VLAN 0 to HW filter on device eth1
    [    7.272392] Sending DHCP requests ., OK
    [    7.352420] IP-Config: Got DHCP answer from 192.168.1.1, my address is 192.168.1.4
    [    8.073825] IP-Config: Complete:
    [    8.077076]      device=eth0, hwaddr=d4:f5:13:83:b9:3d, ipaddr=192.168.1.4, mask=255.255.255.0, gw=192.168.1.1
    [    8.087184]      host=ojm-soc, domain=, nis-domain=(none)
    [    8.092679]      bootserver=192.168.1.1, rootserver=192.168.1.1, rootpath=/export/rootfs
    [    8.100633]      nameserver0=155.34.3.8, nameserver1=155.34.3.22
    [    8.282822] VFS: Mounted root (nfs filesystem) readonly on device 0:15.
    [    8.289785] devtmpfs: mounted
    [    8.293159] Freeing unused kernel memory: 316K (c06ef000 - c073e000)
    INIT: version 2.88 booting
    Error opening /dev/fb0: No such file or directory
    Starting udev
    [    8.855493] udevd[1197]: starting version 182
    [   11.397880] keystone-crypto 20c0000.crypto: crypto accelerator enabled
    [   13.768080] random: dd urandom read with 104 bits of entropy available
    Wed Apr  6 00:51:56 UTC 2016
    INIT: Entering runlevel: 5
    NOT configuring network interfaces: / is an NFS mount
    udhcpc (v1.23.1) started
    Sending discover...
    Sending select for 192.168.1.3...
    Lease of 192.168.1.3 obtained, lease time 600
    /etc/udhcpc.d/50default: Adding DNS 155.34.3.8
    /etc/udhcpc.d/50default: Adding DNS 155.34.3.22
    [   16.064153] random: nonblocking pool is initialized
    Starting system message bus: dbus.
    Starting telnet daemon.
    Starting rpcbind daemon...[   17.081257] NET: Registered protocol family 10
    done.
    starting statd: done
    Starting syslogd/klogd: done
    Starting thttpd.
    Enabling thermal zones...
    /etc/rc5.d/S98thermal-zone-init: line 7: /sys/class/thermal/thermal_zone*/mode: No such file or directory
    
     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            
    
    Arago Project http://arago-project.org ojm-soc /dev/ttyS0
    
    Arago 2016.03 ojm-soc /dev/ttyS0
    
    ojm-soc login: root
    root@ojm-soc:~# uname -a
    Linux ojm-soc 4.1.18-W1CMC-gbbe8cfc-dirty #4 SMP PREEMPT Fri May 6 10:48:06 EDT 2016 armv7l GNU/Linux
    root@ojm-soc:~# cat /proc/cpuinfo
    processor	: 0
    model name	: ARMv7 Processor rev 4 (v7l)
    BogoMIPS	: 400.00
    Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm 
    CPU implementer	: 0x41
    CPU architecture: 7
    CPU variant	: 0x2
    CPU part	: 0xc0f
    CPU revision	: 4
    
    Hardware	: Keystone
    Revision	: 0000
    Serial		: 0000000000000000
    root@ojm-soc:~# 

  • Hi Charles,

      I'm wondering if you could give us a block diagram of your system, as I'm confused as to whether you have one processor, or four.

    Thanks,

    ~Leonard  

  • Hi Charles,

    Our experts are baffled as to why the three cores are seemingly stuck in the Transition state.  They are reviewing the BootMonitor code to see if they can determine this.  What is even more puzzling is that the EVM works correctly.

    ~Leonard 

     

  • Here's a very coarse block diagram of the design.  It's an OpenVPX 3U card that has a Xilinx Virtex 7 FPGA and the 66AK2H12 (shown as an '06, but populated by the '12 ... I double-checked that since I know the '06 has two cores and the others have four).

  • Dear Charles,
    Can you please download the processor SDK package and check the same behavior ?
    Linux,U-boot,and boot monitor source codes from actual processor SDK release download link.
    software-dl.ti.com/.../k2hk-evm-linux-sdk-src-02.00.02.11.tar.gz

    You can apply the same changes into this PSDK that you made it already for your custom board .

    Why I am asking you to do this, the UART booting is not working on latest processor SDK release like this guy (Sivanatham), I too checked it, I'm able to boot uboot via UART boot mode with MCSDK package but not with latest processor SDK (that also we are working on it).

    e2e.ti.com/.../1859165


    The ROM boot loader gets U-Boot via the UART (xmodem), U-Boot starts up and downloads the kernel and flattened device tree using TFTP, and the boot up commences. Everything goes fine

    But you mentioned here that you were able to boot u-boot via UART boot mode.
    So can you please try to work with our latest processor SDK package (uboot,boot monitor and kernel) ?

    Our HW & SW team is involved on this issue with high priority.

    Thanks for your patience.
  • OK, I downloaded the archive from the link you provided above. When I expand it, the top-level directories are

    board-support/boot-monitor-3.0+gitAUTOINC+035329caed
    board-support/u-boot-2015.07+gitAUTOINC+46c915c963
    board-support/linux-4.1.18+gitAUTOINC+bbe8cfc1da-gbbe8cfc
    board-support/extra-drivers

    Right away, it looks like these are snapshots from git repositories. So I checked the SHA1 hashes in the directory names above against the commits in the git repositories I cloned from git.ti.com.

    First is the boot-monitor:

    $ git remote -v
    origin git://git.ti.com/processor-firmware/ks2-boot-monitor.git (fetch)
    origin git://git.ti.com/processor-firmware/ks2-boot-monitor.git (push)
    $ git rev-parse 035329caed
    035329caed63abe7193c855ad5d561ae783b19d7
    $ git rev-parse HEAD
    035329caed63abe7193c855ad5d561ae783b19d7

    So the HEAD of the master branch of the repository I cloned was the source for the boot-monitor code in the archive you had me download. Therefore, as far as the boot-monitor is concerned, I am already running the code you want me to run.

    U-Boot was a little more tricky. First, to identify the origin of the repository

    $ git remote -v
    origin git://git.ti.com/ti-u-boot/ti-u-boot.git (fetch)
    origin git://git.ti.com/ti-u-boot/ti-u-boot.git (push)
    $ git rev-parse 46c915c963
    46c915c96358c426bb1f4dd1e25a9a805d93a24e
    $ git rev-parse HEAD
    4ed6ed3c27a069a00c8a557d606a05276cc4653e

    So the snapshot in the archive contains a commit from the git repository, but it is not the HEAD of the master branch. So let's figure out where it is:

    $ git branch --contains 46c915c96358c426bb1f4dd1e25a9a805d93a24e
    ti-u-boot-2015.07
    ti-u-boot-2015.07-next

    Ah-ha. So we should be on a completely different branch (not master). So I did this:

    $ git checkout 46c915c96358c426bb1f4dd1e25a9a805d93a24e
    Note: checking out '46c915c96358c426bb1f4dd1e25a9a805d93a24e'.

    You are in 'detached HEAD' state. [blah, blah]
    $ git checkout -b testing

    OK, now I have a branch "testing" that, at its HEAD, contains exactly the code you want me to run. However, as I said upthread, it won't run on my platform due to hardware differences. So I brought in my changes by cherry-picking them one at a time, and got U-Boot working (again). It doesn't look like this is going to help, though. I can use the "mon_power" U-Boot command to try to bring up the cores, and they still don't come up:

    U-Boot# mon_install ${addr_mon}
    DEBUG: Message2 from Secure Mode: Core freq - 200000000Hz

    K2_BM_15.07-39-g035329c-dirty SoC:k2hk built:13:26:40, May 5 2016

    DEBUG: ARMCOREPAC_PID=0x44902300

    DEBUG: AINTC_PID=0x44912100

    ## installed monitor, freq [200000000], status 0
    U-Boot# mon_power 1 1
    DEBUG: >>>> skern_poweron_cpu(1) >>>>

    DEBUG: >>>> before pdstat=0x00020002

    DEBUG: >>>> after pdstat=0x08040000

    core 1 powered on successfully
    U-Boot#

    Note that although it says "core 1 powered on successfully", the pdstat register indicates that it did not. This is the boot-monitor buglet I referred to upthread, and comes from this code in the function skern_poweron_cpu:

    #define PD_OFF 3
    #define PD_IN_TRANSITION 4

    /* poll for status change */
    while (((*(addr + TETRIS_PD_CPU_N_PDSTAT) >> PD_ACTUAL_STATE_SHIFT)
    & PD_OFF))
    ;

    Note that this test completely misses the PD_IN_TRANSITION state that my cores are stuck it. However, if I fix it, the main core simply gets stuck in an infinite loop polling the PDSTAT register, so I left it as is.

    Now let's look at the kernel:

    $ git remote -v
    origin git://git.ti.com/processor-sdk/processor-sdk-linux.git (fetch)
    origin git://git.ti.com/processor-sdk/processor-sdk-linux.git (push)
    $ git rev-parse bbe8cfc1da
    bbe8cfc1daae684faa5d82c2479fbcf9e9498641
    $ git rev-parse HEAD
    bbe8cfc1daae684faa5d82c2479fbcf9e9498641

    So it really looks like I have the same kernel code, also.

    OK, so I've checked the boot-monitor, U-Boot and the kernel, and all of these are in sync with your SDK, insofar as it is possible to be when targetting my hardware. And still my cores don't come up.

    Does anybody have any idea why that reserved bit in the PDSTAT register lights up?
  • There are four pins CORESEL0-3 that determine which core gets the LRESET and NMI signals. I had them all driven low (a side effect of their doing double duty as BOOTMODE pins on POR). Just for grins, I set them all high as soon as the SoC comes out of reset, but that did not make any difference.
  • Just wondering what happened with this issue?  Did it get resolved?

  • No, we are still experiencing the same problem.  Do you have any suggestions for something I could try?

  • I finally made some progress on this. It appears that the problem is a regression introduced in the boot monitor some time after commit 4b0287a3fa9c7a25c75bbe3a54f4ac2a92dc0aaa, and very likely right after that with commit 6511ba0706517cf46d0755b4fbc9fe17df9ec3a8 "boot-monitor: rework to support secondary CPU fast-boot". Something is going wrong with the fast boot, I think. I am able to bring up all four cores, no problems, if I build from the 4b0287 commit. Nothing after that works, although some of the commits won't even build so git-bisect isn't as helpful as you might hope.
  • I find this commit very thought provoking:

    commit 6794aac4dc532d1d159cb6d01af459c4d9433f33
    Author: Murali Karicheri <m-karicheri2@ti.com>
    Date: Fri May 15 10:53:47 2015 -0400

    boot-monitor: add pre-built binary to support pre pg2 devices/evms

    The fast boot support is not available on pre-pg2 k2hk devices and EVMs.
    The current boot monitor source available is not backward compatible
    with pre-pg2 socs. So to support these h/w, provide a pre-built binary
    that can be used by the users. This binary is expected to be present
    in the release pre-built binaries and UBI image. To build this binary
    either revert the commit "boot-monitor: rework to support secondary
    CPU fast-boot" and build.

    Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>

    That was, of course, exactly what I did to get my cores to boot.

  • Well, maybe that was a red herring.  According to sprz402d p. 6

    I added some code to U-Boot to read the REVIDR:

    static inline void print_revidr(void)
    {
           static const char xdig[] = "0123456789ABCDEF";
           u32 revidr;
           asm volatile("mrc p15, #0, %0, c0, c0, #6\n" : "=r" (revidr));
    
           puts("REVIDR: ");
           putc(xdig[(revidr >> 12) & 15]);
           putc(xdig[(revidr >> 8) & 15]);
           putc(xdig[(revidr >> 4) & 15]);
           putc(xdig[revidr & 15]);
           putc('\n');
    }
    

    but this reports the PG2.0 value, 020A.

  • Charles and Leonard,

    Thank you both for your work on this issue.

    I'm also experiencing the same symptoms on a custom board using the 66ak2h12.

    I tried going back to the 4b0287a boot monitor commit, building that, and re-running, but the secondary CPU cores are still not booting. I also tried using the pre-pg2 prebuilt image, but didn't have any luck with that either.

    Any ideas? Any further developments here? Maybe this is a separate issue deserving its own post?

    Attached is my boot log with u-boot and kernel messages: 

    2860.bootlog.txt
    U-Boot 2016.05-00118-g38b843c-dirty (Nov 14 2016 - 13:48:35 -0500)
    
    initcall: 0c00ee39
    U-Boot code: 0C000000 -> 0C06B188  BSS: -> 0C0CC76C
    initcall: 0c000c7d
    CPU: 66AK2Hx SR2.0
    initcall: 0c00ee69
    I2C:   ready
    initcall: 0c00ee59
    DRAM:  initcall: 0c00251d
    DDR3A Speed will be configured for 1600 Operation.
    Detected SO-DIMM [9965527-029.A00LF ]
    DDR3 speed 1600
    DRAM: 8 GiB (includes reported below)
    
    Clear entire DDR3 memory to enable ECC
    initcall: 0c00f049
    Monitor len: 000CC76C
    Ram size: 80000000
    Ram top: 00000000
    initcall: 0c00ece5
    initcall: 0c00edf1
    TLB table from ffff0000 to ffff4000
    initcall: 0c00ef79
    initcall: 0c00edb1
    Reserving 817k for U-Boot at: fff23000
    initcall: 0c00ed8d
    Reserving 16640k for malloc() at: feee3000
    initcall: 0c00ef3d
    Reserving 88 Bytes for Board Info at: feee2fa8
    initcall: 0c00ef7d
    initcall: 0c00ed65
    Reserving 200 Bytes for Global Data at: feee2ee0
    initcall: 0c00ed15
    Reserving 33600 Bytes for FDT at: feedaba0
    initcall: 0c00ef75
    initcall: 0c00f0b1
    initcall: 0c00f02d
    initcall: 0c00ef89
    
    RAM Configuration:
    Bank #0: 80000000 2 GiB
    Bank #1: 0 0 Bytes
    
    DRAM:  2 GiB
    initcall: 0c00ed01
    New Stack Pointer is: feedab80
    initcall: 0c00ef11
    initcall: 0c00eeb9
    Relocation Offset is: f3f23000
    Relocating to fff23000, new gd at feee2ee0, sp at feedab80
    initcall: fff32267
    initcall: fff320f1
    initcall: 0c00f259 (relocated to fff32259)
    initcall: 0c00f231 (relocated to fff32231)
    initcall: 0c00f263 (relocated to fff32263)
    initcall: 0c00f205 (relocated to fff32205)
    Pre-reloc malloc() used 0x108 bytes (0 KB)
    using memory 0xfeee3000-0xfff23000 for malloc()
    initcall: 0c00f105 (relocated to fff32105)
    initcall: 0c00f0ed (relocated to fff320ed)
    initcall: 0c00f1f3 (relocated to fff321f3)
    uclass_find_device_by_seq: 0 -1
    uclass_find_device_by_seq: 0 0
       - -1 -1
       - not found
    bind node chosen
    Device 'chosen' has no compatible string
    bind node aliases
    Device 'aliases' has no compatible string
    bind node memory
    Device 'memory' has no compatible string
    bind node interrupt-controller
    No match for node 'interrupt-controller'
    bind node timer
    No match for node 'timer'
    bind node pmu
    No match for node 'pmu'
    bind node soc
       - found match at 'generic_simple_bus'
    fdtdec_get_int_array: ranges
    get_prop_check_min_len: ranges
    bind node pll-controller@02310000
    No match for node 'pll-controller@02310000'
    bind node device-state-control@02620000
    No match for node 'device-state-control@02620000'
    bind node reset-controller
    No match for node 'reset-controller'
    bind node clocks
    Device 'clocks' has no compatible string
    bind node serial@02530c00
       - found match at 'ns16550_serial'
    Looking for 'serial' at 17116, name serial@02530c00
       - serial0, /soc/serial@02531000
       - spi0, /soc/spi@21000400
       - spi1, /soc/spi@21000600
       - spi2, /soc/spi@21000800
    Not found
    Bound device serial@02530c00 to soc
    bind node serial@02531000
       - found match at 'ns16550_serial'
    Looking for 'serial' at 17272, name serial@02531000
       - serial0, /soc/serial@02531000
    Found seq 0
    Bound device serial@02531000 to soc
    bind node i2c@2530000
    No match for node 'i2c@2530000'
    bind node i2c@2530400
    No match for node 'i2c@2530400'
    bind node i2c@2530800
    No match for node 'i2c@2530800'
    bind node spi@21000400
       - found match at 'davinci_spi'
    Looking for 'spi' at 17952, name spi@21000400
       - serial0, /soc/serial@02531000
       - spi0, /soc/spi@21000400
    Found seq 0
    bind node n25q128a11@0
       - found match at 'spi_flash_std'
    fdtdec_get_int: reg: 0x0 (0)
    fdtdec_get_int: spi-max-frequency: 0x337f980 (54000000)
    fdtdec_get_bool: spi-cpol
    fdtdec_get_bool: spi-cpha
    fdtdec_get_bool: spi-cs-high
    fdtdec_get_bool: spi-3wire
    fdtdec_get_bool: spi-half-duplex
    fdtdec_get_uint: spi-tx-bus-width: (not found)
    fdtdec_get_uint: spi-rx-bus-width: (not found)
    Bound device n25q128a11@0 to spi@21000400
    Bound device spi@21000400 to soc
    bind node spi@21000600
       - found match at 'davinci_spi'
    Looking for 'spi' at 18424, name spi@21000600
       - serial0, /soc/serial@02531000
       - spi0, /soc/spi@21000400
       - spi1, /soc/spi@21000600
    Found seq 1
    Bound device spi@21000600 to soc
    bind node spi@21000800
       - found match at 'davinci_spi'
    Looking for 'spi' at 18600, name spi@21000800
       - serial0, /soc/serial@02531000
       - spi0, /soc/spi@21000400
       - spi1, /soc/spi@21000600
       - spi2, /soc/spi@21000800
    Found seq 2
    Bound device spi@21000800 to soc
    bind node usb_phy@2620738
    No match for node 'usb_phy@2620738'
    bind node usb@2680000
    No match for node 'usb@2680000'
    bind node wdt@022f0080
    No match for node 'wdt@022f0080'
    bind node timer@22f0000
    No match for node 'timer@22f0000'
    bind node gpio@260bf00
    No match for node 'gpio@260bf00'
    bind node aemif@21000A00
    No match for node 'aemif@21000A00'
    bind node keystone_irq@26202a0
    No match for node 'keystone_irq@26202a0'
       - ignoring disabled device
    bind node keystone_dsp_gpio@02620240
    No match for node 'keystone_dsp_gpio@02620240'
    bind node keystone_dsp_gpio@2620244
    No match for node 'keystone_dsp_gpio@2620244'
    bind node keystone_dsp_gpio@2620248
    No match for node 'keystone_dsp_gpio@2620248'
    bind node keystone_dsp_gpio@262024c
    No match for node 'keystone_dsp_gpio@262024c'
    bind node keystone_dsp_gpio@2620250
    No match for node 'keystone_dsp_gpio@2620250'
    bind node keystone_dsp_gpio@2620254
    No match for node 'keystone_dsp_gpio@2620254'
    bind node keystone_dsp_gpio@2620258
    No match for node 'keystone_dsp_gpio@2620258'
    bind node keystone_dsp_gpio@262025c
    No match for node 'keystone_dsp_gpio@262025c'
       - ignoring disabled device
    bind node rapidio@2900000
       - found match at 'rio_keystone'
    Bound device rapidio@2900000 to soc
    bind node qmss@2a40000
    No match for node 'qmss@2a40000'
    bind node knav_dmas@0
    No match for node 'knav_dmas@0'
    bind node netcp@2000000
       - found match at 'eth_ks2'
    Looking for 'eth' at 26120, name netcp@2000000
       - serial0, /soc/serial@02531000
       - spi0, /soc/spi@21000400
       - spi1, /soc/spi@21000600
       - spi2, /soc/spi@21000800
    Not found
    Bound device netcp@2000000 to soc
    Bound device soc to root_driver
    bind node cpus
    Device 'cpus' has no compatible string
    bind node leds
    No match for node 'leds'
    initcall: 0c00f1e7 (relocated to fff321e7)
    initcall: 0c002559 (relocated to fff25559)
    initcall: 0c03e379 (relocated to fff61379)
    initcall: 0c01601d (relocated to fff3901d)
    initcall: 0c00f1dd (relocated to fff321dd)
    uclass_find_device_by_seq: 0 -1
    uclass_find_device_by_seq: 0 0
       - -1 -1
       - not found
    uclass_find_device_by_seq: 0 0
       - -1 -1
       - 0 -1
       - not found
    OF: ** translation for device serial@02531000 **
    OF: bus is default (na=1, ns=1) on soc
    OF: translating address: 00105302
    OF: parent bus is default (na=1, ns=1) on 
    OF: no ranges, 1:1 translation
    OF: parent translation for: 00000000
    OF: with offset: 38998016
    OF: one level translation: 00105302
    OF: reached root node
    fdtdec_get_int: reg-offset: (not found)
    fdtdec_get_int: reg-shift: 0x2 (2)
    fdtdec_get_int: clock-frequency: (not found)
    initcall: 0c00f1c9 (relocated to fff321c9)
    Now running in RAM - U-Boot at: fff23000
    initcall: 0c00f109 (relocated to fff32109)
    initcall: 0c00f1b5 (relocated to fff321b5)
    NAND:  0 MiB
    initcall: 0c00f19d (relocated to fff3219d)
    MMC:   
    initcall: 0c00f155 (relocated to fff32155)
    fdtdec_get_config_int: load-environment
    *** Warning - readenv() failed, using default environment
    
    Destroy Hash Table: fff87060 table = 00000000
    Create Hash Table: N=437
    DELETE CANDIDATE: "bootargs"
    hdelete: DELETE key "bootargs"
    DELETE ERROR ##############################
    INSERT: table fff87060, filled 1/439 rv feee4fe4 ==> name="bootcmd" value="run init_${boot} init_fw_rd_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern"
    INSERT: table fff87060, filled 2/439 rv feee58cc ==> name="bootdelay" value="2"
    INSERT: table fff87060, filled 3/439 rv feee5084 ==> name="baudrate" value="115200"
    INSERT: table fff87060, filled 4/439 rv feee5714 ==> name="arch" value="arm"
    INSERT: table fff87060, filled 5/439 rv feee54a8 ==> name="cpu" value="armv7"
    INSERT: table fff87060, filled 6/439 rv feee5c00 ==> name="board" value="ks2_evm"
    INSERT: table fff87060, filled 7/439 rv feee4bfc ==> name="board_name" value="ks2_evm"
    INSERT: table fff87060, filled 8/439 rv feee5214 ==> name="vendor" value="ti"
    INSERT: table fff87060, filled 9/439 rv feee43a0 ==> name="soc" value="keystone"
    INSERT: table fff87060, filled 10/439 rv feee6358 ==> name="loadaddr" value="0x82000000"
    INSERT: table fff87060, filled 11/439 rv feee587c ==> name="kernel_addr_r" value="0x82000000"
    INSERT: table fff87060, filled 12/439 rv feee50fc ==> name="fdtaddr" value="0x88000000"
    INSERT: table fff87060, filled 13/439 rv feee63d0 ==> name="fdt_addr_r" value="0x88000000"
    INSERT: table fff87060, filled 14/439 rv feee5a5c ==> name="rdaddr" value="0x88080000"
    INSERT: table fff87060, filled 15/439 rv feee5264 ==> name="ramdisk_addr_r" value="0x88080000"
    INSERT: table fff87060, filled 16/439 rv feee4800 ==> name="scriptaddr" value="0x80000000"
    INSERT: table fff87060, filled 17/439 rv feee4404 ==> name="pxefile_addr_r" value="0x80100000"
    INSERT: table fff87060, filled 18/439 rv feee5f0c ==> name="bootm_size" value="0x10000000"
    INSERT: table fff87060, filled 19/439 rv feee5124 ==> name="name_fw_rd" value="k2-fw-initrd.cpio.gz"
    INSERT: table fff87060, filled 20/439 rv feee5a84 ==> name="set_rd_spec" value="setenv rd_spec ${rdaddr}:${filesize}"
    INSERT: table fff87060, filled 21/439 rv feee5408 ==> name="init_fw_rd_net" value="dhcp ${rdaddr} ${tftp_root}/${name_fw_rd}; run set_rd_spec"
    INSERT: table fff87060, filled 22/439 rv feee64d4 ==> name="init_fw_rd_ramfs" value="setenv rd_spec -"
    INSERT: table fff87060, filled 23/439 rv feee5354 ==> name="init_fw_rd_ubi" value="ubifsload ${rdaddr} ${bootdir}/${name_fw_rd}; run set_rd_spec"
    INSERT: table fff87060, filled 24/439 rv feee5548 ==> name="boot" value="ubi"
    INSERT: table fff87060, filled 25/439 rv feee42ec ==> name="addr_mon" value="0x0c5f0000"
    INSERT: table fff87060, filled 26/439 rv feee5700 ==> name="args_ubi" value="setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=ubifs,2048"
    INSERT: table fff87060, filled 27/439 rv feee613c ==> name="name_fdt" value="keystone-k2hk-evm.dtb"
    INSERT: table fff87060, filled 28/439 rv feee60ec ==> name="name_mon" value="skern-k2hk.bin"
    INSERT: table fff87060, filled 29/439 rv feee60c4 ==> name="name_ubi" value="k2hk-evm-ubifs.ubi"
    INSERT: table fff87060, filled 30/439 rv feee6470 ==> name="name_uboot" value="u-boot-spi-k2hk-evm.gph"
    INSERT: table fff87060, filled 31/439 rv feee47b0 ==> name="name_fs" value="arago-console-image-k2hk-evm.cpio.gz"
    INSERT: table fff87060, filled 32/439 rv feee6330 ==> name="bootdir" value="/boot"
    INSERT: table fff87060, filled 33/439 rv feee6024 ==> name="tftp_root" value="/"
    INSERT: table fff87060, filled 34/439 rv feee5ef8 ==> name="nfs_root" value="/export"
    INSERT: table fff87060, filled 35/439 rv feee6240 ==> name="mem_lpae" value="1"
    INSERT: table fff87060, filled 36/439 rv feee42c4 ==> name="addr_ubi" value="0x82000000"
    INSERT: table fff87060, filled 37/439 rv feee5fc0 ==> name="addr_secdb_key" value="0xc000000"
    INSERT: table fff87060, filled 38/439 rv feee6498 ==> name="name_kern" value="zImage"
    INSERT: table fff87060, filled 39/439 rv feee4300 ==> name="run_mon" value="mon_install ${addr_mon}"
    INSERT: table fff87060, filled 40/439 rv feee6088 ==> name="run_kern" value="bootz ${loadaddr} ${rd_spec} ${fdtaddr}"
    INSERT: table fff87060, filled 41/439 rv feee4d78 ==> name="init_net" value="run args_all args_net"
    INSERT: table fff87060, filled 42/439 rv feee451c ==> name="init_nfs" value="setenv autoload no; dhcp; run args_all args_net"
    INSERT: table fff87060, filled 43/439 rv feee63a8 ==> name="init_ubi" value="run args_all args_ubi; ubi part ubifs; ubifsmount ubi:rootfs;"
    INSERT: table fff87060, filled 44/439 rv feee5ffc ==> name="get_fdt_net" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
    INSERT: table fff87060, filled 45/439 rv feee4760 ==> name="get_fdt_nfs" value="nfs ${fdtaddr} ${nfs_root}/boot/${name_fdt}"
    INSERT: table fff87060, filled 46/439 rv feee4c38 ==> name="get_fdt_ubi" value="ubifsload ${fdtaddr} ${bootdir}/${name_fdt}"
    INSERT: table fff87060, filled 47/439 rv feee5cc8 ==> name="get_kern_net" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
    INSERT: table fff87060, filled 48/439 rv feee4a94 ==> name="get_kern_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_kern}"
    INSERT: table fff87060, filled 49/439 rv feee52a0 ==> name="get_kern_ubi" value="ubifsload ${loadaddr} ${bootdir}/${name_kern}"
    INSERT: table fff87060, filled 50/439 rv feee5764 ==> name="get_mon_net" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
    INSERT: table fff87060, filled 51/439 rv feee4ff8 ==> name="get_mon_nfs" value="nfs ${addr_mon} ${nfs_root}/boot/${name_mon}"
    INSERT: table fff87060, filled 52/439 rv feee5d68 ==> name="get_mon_ubi" value="ubifsload ${addr_mon} ${bootdir}/${name_mon}"
    INSERT: table fff87060, filled 53/439 rv feee5584 ==> name="get_uboot_net" value="dhcp ${loadaddr} ${tftp_root}/${name_uboot}"
    INSERT: table fff87060, filled 54/439 rv feee51d8 ==> name="get_uboot_nfs" value="nfs ${loadaddr} ${nfs_root}/boot/${name_uboot}"
    INSERT: table fff87060, filled 55/439 rv feee5728 ==> name="burn_uboot_spi" value="sf probe; sf erase 0 0x90000; sf write ${loadaddr} 0 ${filesize}"
    INSERT: table fff87060, filled 56/439 rv feee5034 ==> name="burn_uboot_nand" value="nand erase 0 0x100000; nand write ${loadaddr} 0 ${filesize}"
    INSERT: table fff87060, filled 57/439 rv feee59d0 ==> name="args_all" value="setenv bootargs console=ttyS0,115200n8 rootwait=1"
    INSERT: table fff87060, filled 58/439 rv feee631c ==> name="args_net" value="setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp"
    INSERT: table fff87060, filled 59/439 rv feee5f48 ==> name="nfs_options" value="v3,tcp,rsize=4096,wsize=4096"
    INSERT: table fff87060, filled 60/439 rv feee5110 ==> name="get_fdt_ramfs" value="dhcp ${fdtaddr} ${tftp_root}/${name_fdt}"
    INSERT: table fff87060, filled 61/439 rv feee5aac ==> name="get_kern_ramfs" value="dhcp ${loadaddr} ${tftp_root}/${name_kern}"
    INSERT: table fff87060, filled 62/439 rv feee488c ==> name="get_mon_ramfs" value="dhcp ${addr_mon} ${tftp_root}/${name_mon}"
    INSERT: table fff87060, filled 63/439 rv feee4d00 ==> name="get_fs_ramfs" value="dhcp ${rdaddr} ${tftp_root}/${name_fs}"
    INSERT: table fff87060, filled 64/439 rv feee4940 ==> name="get_ubi_net" value="dhcp ${addr_ubi} ${tftp_root}/${name_ubi}"
    INSERT: table fff87060, filled 65/439 rv feee5e1c ==> name="get_ubi_nfs" value="nfs ${addr_ubi} ${nfs_root}/boot/${name_ubi}"
    INSERT: table fff87060, filled 66/439 rv feee52b4 ==> name="burn_ubi" value="nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}"
    INSERT: table fff87060, filled 67/439 rv feee6380 ==> name="init_ramfs" value="run args_all args_ramfs get_fs_ramfs"
    INSERT: table fff87060, filled 68/439 rv feee56d8 ==> name="args_ramfs" value="setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x808080000,80M"
    INSERT: table fff87060, filled 69/439 rv feee56b0 ==> name="no_post" value="1"
    INSERT: table fff87060, filled 70/439 rv feee49b8 ==> name="mtdparts" value="mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)"
    INSERT: free(data = feee36e0)
    INSERT: done
    Initial value for argc=3
    Final value for argc=3
    initcall: 0c00f26d (relocated to fff3226d)
    initcall: 0c016031 (relocated to fff39031)
    initcall: 0c00f14b (relocated to fff3214b)
    initcall: 0c014401 (relocated to fff37401)
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    initcall: 0c001d4d (relocated to fff24d4d)
    initcall: 0c0008c1 (relocated to fff238c1)
    initcall: 0c00f141 (relocated to fff32141)
    initcall: 0c00f129 (relocated to fff32129)
    initcall: 0c00f115 (relocated to fff32115)
    Net:   uclass_find_device_by_seq: 0 -1
    uclass_find_device_by_seq: 0 0
       - -1 -1
       - not found
    fdtdec_get_int: slave-port: 0x0 (0)
    fdtdec_get_int: slave-port: 0x1 (1)
    Looking for 'eth' at 26720, name interface-1
       - serial0, /soc/serial@02531000
       - spi0, /soc/spi@21000400
       - spi1, /soc/spi@21000600
       - spi2, /soc/spi@21000800
    Not found
    Bound device netcp@slave-1 to netcp@2000000
    fdtdec_get_int: slave-port: (not found)
    fdtdec_get_int: slave-port: 0x0 (0)
    fdtdec_get_int_array_count: ti,navigator-dmas
    fdtdec_get_int: link-interface: 0x1 (1)
    fdtdec_lookup_phandle: phy-handle
    fdtdec_get_int: reg: 0x0 (0)
    fdtdec_get_addr_size_fixed: reg: addr=02090300
    OF: ** translation for device netcp@2000000 **
    OF: bus is default (na=1, ns=1) on soc
    OF: translating address: 10016202
    OF: parent bus is default (na=1, ns=1) on 
    OF: no ranges, 1:1 translation
    OF: parent translation for: 00000000
    OF: with offset: 39977232
    OF: one level translation: 10016202
    OF: reached root node
    netcp@2000000 connected to Marvell 88E1510
    Initial value for argc=3
    Final value for argc=3
    uclass_find_device_by_seq: 0 0
       - -1 0
       - found
    
    Warning: netcp@2000000 using MAC address from ROM
    eth0: netcp@2000000uclass_find_device_by_seq: 0 -1
    uclass_find_device_by_seq: 0 0
       - -1 0
       - found
    uclass_find_device_by_seq: 0 1
       - -1 0
       - -1 -1
       - not found
    fdtdec_get_int: slave-port: 0x1 (1)
    fdtdec_get_int_array_count: ti,navigator-dmas
    fdtdec_get_int: link-interface: 0x1 (1)
    fdtdec_lookup_phandle: phy-handle
    fdtdec_get_int: reg: 0x1 (1)
    fdtdec_get_addr_size_fixed: reg: addr=02090300
    fdtdec_get_addr_size_fixed: reg: addr=02620110
    netcp@slave-1 connected to Marvell 88E1510
    
    Warning: netcp@slave-1 (eth1) using random MAC address - 16:80:dc:98:6c:87
    , eth1: netcp@slave-1
    initcall: 0c00f10d (relocated to fff3210d)
    Initial value for argc=3
    Final value for argc=3
    fdtdec_get_config_int: bootdelay
    ### main_loop entered: bootdelay=2
    
    fdtdec_get_config_int: kernel-offset
    fdtdec_get_config_int: rootdisk-offset
    fdtdec_get_config_string: bootcmd
    fdtdec_get_config_int: bootsecure
    ### main_loop: bootcmd="run init_${boot} init_fw_rd_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern"
    Hit any key to stop autoboot:  0 
    => 
    => setenv ipaddr 192.168.2.12;setenv serverip 192.168.2.243;setenv args_net 'setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=192.168.2.12:192.168.2.243:192.168.2.243:255.255.255.0:k2hk:eth0:off:192.168.0.20:192.168.0.21'
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    => setenv init_fw_rd_net 'tftp ${rdaddr} ${tftp_root}/${name_fw_rd}; run set_rd_spec';setenv get_fdt_net 'tftp ${fdtaddr} ${tftp_root}/${name_fdt}';setenv get_kern_net 'tftp ${loadaddr} ${tftp_root}/${name_kern}';setenv get_mon_net 'tftp ${addr_mon} ${tftp_root}/${name_mon}';setenv get_ubi_net 'tftp ${addr_ubi} ${tftp_root}/${name_ubi}'
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    => setenv tftp_root /tftpboot;setenv boot net;setenv args_all 'setenv bootargs console=ttyS1,115200n8 rootwait=1 earlyprintk loglevel=7';setenv nfs_root '/home/parallels/procsdk/nfsroot';setenv init_nfs 'setenv autoload no; run args_all args_net'
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    => setenv run_mon 'mon_install ${addr_mon}; mon_power 1 1; mon_power 2 1; mon_power 3 1'
    Initial value for argc=3
    Final value for argc=3
    => setenv name_mon skern-k2hk-pre-pg2-evm.bin
    Initial value for argc=3
    Final value for argc=3
    => boot
    Initial value for argc=6
    Final value for argc=6
    Initial value for argc=11
    Final value for argc=11
    Initial value for argc=3
    Final value for argc=3
    Trying netcp@2000000
    
    netcp@2000000 Waiting for SGMII auto negotiation to complete. done
    TFTP blocksize = 1468, timeout = 5000 ms
    Using netcp@2000000 device
    TFTP from server 192.168.2.243; our IP address is 192.168.2.12
    Filename '/tftpboot/k2-fw-initrd.cpio.gz'.
    Load address: 0x88080000
    Loading: send option "timeout 5"
    #Server did not acknowledge timeout option!
    #########
    	 2 KiB/s
    done
    Bytes transferred = 49676 (c20c hex)
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Trying netcp@2000000
    
    netcp@2000000 Waiting for SGMII auto negotiation to complete. done
    TFTP blocksize = 1468, timeout = 5000 ms
    Using netcp@2000000 device
    TFTP from server 192.168.2.243; our IP address is 192.168.2.12
    Filename '/tftpboot/keystone-k2hk-evm.dtb'.
    Load address: 0x88000000
    Loading: send option "timeout 5"
    #Server did not acknowledge timeout option!
    ##########
    	 854.5 KiB/s
    done
    Bytes transferred = 54297 (d419 hex)
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Trying netcp@2000000
    
    netcp@2000000 Waiting for SGMII auto negotiation to complete. done
    TFTP blocksize = 1468, timeout = 5000 ms
    Using netcp@2000000 device
    TFTP from server 192.168.2.243; our IP address is 192.168.2.12
    Filename '/tftpboot/skern-k2hk-pre-pg2-evm.bin'.
    Load address: 0xc5f0000
    Loading: send option "timeout 5"
    #Server did not acknowledge timeout option!
    ########
    	 862.3 KiB/s
    done
    Bytes transferred = 45056 (b000 hex)
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Trying netcp@2000000
    
    netcp@2000000 Waiting for SGMII auto negotiation to complete. done
    TFTP blocksize = 1468, timeout = 5000 ms
    Using netcp@2000000 device
    TFTP from server 192.168.2.243; our IP address is 192.168.2.12
    Filename '/tftpboot/zImage'.
    Load address: 0x82000000
    Loading: send option "timeout 5"
    #Server did not acknowledge timeout option!
    ################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 #################################################################
    	 ######################
    	 1.1 MiB/s
    done
    Bytes transferred = 3437552 (3473f0 hex)
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    Initial value for argc=3
    Final value for argc=3
    ## installed monitor, freq [200000000], status 0
    core 1 powered on successfully
    core 2 powered on successfully
    core 3 powered on successfully
    ## Current stack ends at 0xfeeda5b0 *  kernel: cmdline image address = 0x82000000
    Kernel image @ 0x82000000 [ 0x000000 - 0x3473f0 ]
    *  ramdisk: cmdline image address = 0x88080000
       ramdisk start = 0x88080000, ramdisk end = 0x8808c20c
    *  fdt: cmdline image address = 0x88000000
    ## Checking for 'FDT'/'FDT Image' at 88000000
    *  fdt: raw FDT blob
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       of_flat_tree at 0x88000000 size 0x0000d419
    Initial value for argc=3
    Final value for argc=3
    using: FDT
    ## initrd_high = 0x90000000, copy_to_ram = 1
       Loading Ramdisk to 8fff3000, end 8ffff20c ... OK
       ramdisk load start = 0x8fff3000, ramdisk load end = 0x8ffff20c
    ## device tree at 88000000 ... 8800d418 (len=66585 [0x10419])
       Loading Device Tree to 8ffe2000, end 8fff2418 ... OK
    Initial value for argc=3
    Final value for argc=3
    ## Transferring control to Linux (at address 82000000)...
    
    Starting kernel ...
    
    Uncompressing Linux... done, booting the 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.4.19-rt25-gf572d285f0 (parallels@ubuntu) (gcc version 5.3.1 20160113 (Linaro GCC 5.3-2016.02) ) #8 SMP PREEMPT RT Tue Nov 15 10:24:57 EST 2016
    [    0.000000] CPU: ARMv7 Processor [412fc0f4] revision 4 (ARMv7), cr=30c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
    [    0.000000] Machine model: Texas Instruments Keystone 2 Kepler/Hawking EVM
    [    0.000000] bootconsole [earlycon0] enabled
    [    0.000000] Switching physical address space to 0x800000000
    [    0.000000] Reserved memory: OVERLAP DETECTED!
    [    0.000000] mpm_block_mem@820000000 (0x0000000820000000--0x0000000822000000) overlaps with dsp_reserved_mpm_area (0x0000000820000000--0x0000000840000000)
    [    0.000000] Reserved memory: OVERLAP DETECTED!
    [    0.000000] dsp_reserved_mpm_area (0x0000000820000000--0x0000000840000000) overlaps with cmem_block_mem@822000000 (0x0000000822000000--0x0000000829000000)
    [    0.000000] Reserved memory: created CMA memory pool at 0x000000081f800000, size 8 MiB
    [    0.000000] Reserved memory: initialized node dsp_common_cma_pool, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x0000000820000000, size 512 MiB
    [    0.000000] Reserved memory: initialized node dsp_reserved_mpm_area, compatible id shared-dma-pool
    [    0.000000] cma: Reserved 24 MiB at 0x000000087e400000
    [    0.000000] Forcing write-allocate cache policy for SMP
    [    0.000000] Memory policy: Data cache writealloc
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: Using PSCI v0.1 Function IDs from DT
    [    0.000000] PERCPU: Embedded 11 pages/cpu @daf73000 s15232 r8192 d21632 u45056
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 1964352
    [    0.000000] Kernel command line: console=ttyS1,115200n8 rootwait=1 earlyprintk loglevel=7 rootfstype=nfs root=/dev/nfs rw nfsroot=192.168.2.243:/home/parallels/procsdk/nfsroot,v3,tcp,rsize=4096,wsize=4096 ip=192.168.2.12:192.168.2.243:192.168.2.243:255.255.255.0:k2hk:eth0:off:192.168.0.20:192.168.0.21
    [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Memory: 7751488K/7864320K available (6491K kernel code, 258K rwdata, 2228K rodata, 284K init, 330K bss, 80064K reserved, 32768K cma-reserved, 7315456K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    [    0.000000]     vmalloc : 0xf0800000 - 0xff800000   ( 240 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xf0000000   ( 768 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc088c04c   (8721 kB)
    [    0.000000]       .init : 0xc088d000 - 0xc08d4000   ( 284 kB)
    [    0.000000]       .data : 0xc08d4000 - 0xc09148a0   ( 259 kB)
    [    0.000000]        .bss : 0xc0917000 - 0xc096982c   ( 331 kB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000] 	RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
    [    0.000000] 	RCU kthread priority: 1.
    [    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] Architected cp15 timer(s) running at 200.00MHz (virt).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000003] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.000008] Switching to timer-based delay loop, resolution 5ns
    [    0.000190] keystone timer clock @200000000 Hz
    [    0.000441] Console: colour dummy device 80x30
    [    0.322506] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=2000000)
    [    0.322509] pid_max: default: 32768 minimum: 301
    [    0.322600] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.322606] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.323124] Initializing cgroup subsys io
    [    0.323135] Initializing cgroup subsys memory
    [    0.323154] Initializing cgroup subsys devices
    [    0.323162] Initializing cgroup subsys freezer
    [    0.323170] Initializing cgroup subsys perf_event
    [    0.323177] Initializing cgroup subsys pids
    [    0.323220] CPU: Testing write buffer coherency: ok
    [    0.323437] /cpus/cpu@0 missing clock-frequency property
    [    0.390189] /cpus/cpu@1 missing clock-frequency property
    [    0.395666] /cpus/cpu@2 missing clock-frequency property
    [    0.401146] /cpus/cpu@3 missing clock-frequency property
    [    0.406599] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    [    0.412418] Setting up static identity map for 0x80008300 - 0x8000840c
    [    0.530409] CPU1: failed to boot: -22
    [    0.570499] CPU2: failed to boot: -22
    [    0.610566] CPU3: failed to boot: -22
    [    0.614409] Brought up 1 CPUs
    [    0.617492] SMP: Total of 1 processors activated (400.00 BogoMIPS).
    [    0.623908] CPU: All CPU(s) started in SVC mode.
    [    0.629038] devtmpfs: initialized
    [    0.650720] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
    [    0.658871] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.671331] pinctrl core: initialized pinctrl subsystem
    [    0.677514] NET: Registered protocol family 16
    [    0.683529] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.700243] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.707063] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.713887] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.720735] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.727526] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.734366] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.741167] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.747957] irq: no irq domain found for /soc/keystone_irq@26202a0 !
    [    0.764289] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
    [    0.772464] hw-breakpoint: maximum watchpoint size is 8 bytes.
    [    0.896036] media: Linux media interface: v0.10
    [    0.900754] Linux video capture interface: v2.00
    [    0.905568] pps_core: LinuxPPS API ver. 1 registered
    [    0.910668] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.920002] PTP clock support registered
    [    0.924106] EDAC MC: Ver: 3.0.0
    [    0.931737] Advanced Linux Sound Architecture Driver Initialized.
    [    0.938922] clocksource: Switched to clocksource arch_sys_counter
    [    0.955642] NET: Registered protocol family 2
    [    0.960702] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.967944] TCP bind hash table entries: 4096 (order: 4, 114688 bytes)
    [    0.974799] TCP: Hash tables configured (established 4096 bind 4096)
    [    0.981403] UDP hash table entries: 256 (order: 2, 16384 bytes)
    [    0.987491] UDP-Lite hash table entries: 256 (order: 2, 16384 bytes)
    [    0.994218] NET: Registered protocol family 1
    [    1.009069] RPC: Registered named UNIX socket transport module.
    [    1.015134] RPC: Registered udp transport module.
    [    1.020007] RPC: Registered tcp transport module.
    [    1.024843] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    1.031682] Unpacking initramfs...
    [    1.038734] Freeing initrd memory: 52K (cfff3000 - d0000000)
    [    1.044814] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
    [    1.053975] platform alarmtimer: set dma_pfn_offset00780000
    [    1.060218] futex hash table entries: 1024 (order: 4, 65536 bytes)
    [    1.085318] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    1.102116] NFS: Registering the id_resolver key type
    [    1.107325] Key type id_resolver registered
    [    1.111711] Key type id_legacy registered
    [    1.115909] ntfs: driver 2.1.32 [Flags: R/O].
    [    1.122212] bounce: pool size: 64 pages
    [    1.126336] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
    [    1.133921] io scheduler noop registered
    [    1.137975] io scheduler deadline registered
    [    1.142655] io scheduler cfq registered (default)
    [    1.147641] keystone_irq soc:keystone_irq@26202a0: irqchip registered, nr_irqs 28
    [    1.155743] ti,keystone-serdes 2320000.phy: init fw ks2_pcie_serdes.bin: version 3.3.0.2c
    [    1.165195] ti,keystone-serdes 232a000.phy: init fw ks2_gbe_serdes.bin: version 3.3.0.2c
    [    1.177678] PCI host bridge /soc/pcie@21800000 ranges:
    [    1.182997]   No bus range found for /soc/pcie@21800000, using [bus 00-ff]
    [    1.190042]   MEM 0x50000000..0x5fffffff -> 0x50000000
    [    1.395023] keystone-pcie 21801000.pcie: phy link never came up
    [    1.401281] keystone-pcie 21801000.pcie: PCI host bridge to bus 0000:00
    [    1.408054] pci_bus 0000:00: root bus resource [bus 00-ff]
    [    1.413684] pci_bus 0000:00: root bus resource [mem 0x50000000-0x5fffffff]
    [    1.421058] PCI: bus0: Fast back to back transfers disabled
    [    1.426891] PCI: bus1: Fast back to back transfers enabled
    [    1.432607] pci 0000:00:00.0: PCI bridge to [bus 01]
    [    1.438053] pcieport 0000:00:00.0: Signaling PME through PCIe PME interrupt
    [    1.455906] keystone-rapidio 2900000.rapidio: KeyStone RapidIO driver v1.4
    [    1.462985] keystone-rapidio 2900000.rapidio: missing "rx-queue" parameter for mbox 0, using qpend
    [    1.472132] keystone-rapidio 2900000.rapidio: missing "tx-completion-queue" parameter for mbox 0, using qpend
    [    1.482238] keystone-rapidio 2900000.rapidio: missing "tx-garbage-queue" parameter for mbox 0, using qpend
    [    1.492105] keystone-rapidio 2900000.rapidio: missing "rx-queue" parameter for mbox 1, using qpend
    [    1.501251] keystone-rapidio 2900000.rapidio: missing "tx-completion-queue" parameter for mbox 1, using qpend
    [    1.511356] keystone-rapidio 2900000.rapidio: missing "tx-garbage-queue" parameter for mbox 1, using qpend
    [    1.521323] keystone-rapidio 2900000.rapidio: using K2 SerDes
    [    1.527257] keystone-rapidio 2900000.rapidio: initializing 5.00 Gbps interface with port configuration 4
    [    1.749012] keystone-rapidio 2900000.rapidio: packet forwarding disabled
    [    1.859957] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 0, number of queues 8192
    [    1.869054] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 0, num of queues 8192, reg_peek f09c0000, reg_status f0982000, reg_config f0988000, reg_region f098a000, reg_push f0a80000, reg_pop f0ac0000
    [    1.888641] keystone-navigator-qmss soc:qmss@2a40000: qmgr start queue 8192, number of queues 8192
    [    1.897981] keystone-navigator-qmss soc:qmss@2a40000: added qmgr start queue 8192, num of queues 8192, reg_peek f0b00000, reg_status f098c400, reg_config f098e000, reg_region f0990000, reg_push f0b40000, reg_pop f0b80000
    [    1.918275] keystone-navigator-qmss soc:qmss@2a40000: firmware file ks2_qmss_pdsp_acc48.bin downloaded for pdsp0
    [    1.928749] keystone-navigator-qmss soc:qmss@2a40000: firmware file ks2_qmss_pdsp_qos.bin downloaded for pdsp3
    [    1.939087] keystone-navigator-qmss soc:qmss@2a40000: firmware file ks2_qmss_pdsp_qos.bin downloaded for pdsp7
    [    1.950739] keystone-navigator-qmss soc:qmss@2a40000: qos: sched port @8096, drop sched @8000
    [    1.961778] keystone-navigator-qmss soc:qmss@2a40000: qos: sched port @6496, drop sched @6400
    [    1.973492] keystone-navigator-qmss soc:qmss@2a40000: qos version 0x200010b, magic valid
    [    1.982346] keystone-navigator-qmss soc:qmss@2a40000: qos version 0x200010b, magic valid
    [    1.991874] keystone-navigator-dma soc:knav_dmas@0: DMA dma_gbe registered 41 logical channels, flows 32, tx chans: 9, rx chans: 24
    [    2.004145] keystone-navigator-dma soc:knav_dmas@0: DMA dma_xgbe registered 48 logical channels, flows 32, tx chans: 16, rx chans: 16
    [    2.016520] keystone-navigator-dma soc:knav_dmas@0: DMA dma_srio registered 36 logical channels, flows 20, tx chans: 16, rx chans: 16
    [    2.090268] Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
    [    2.096946] platform serial8250: set dma_pfn_offset00780000
    [    2.105590] 2530c00.serial: ttyS0 at MMIO 0x2530c00 (irq = 26, base_baud = 12500000) is a 16550A
    [    2.115511] console [ttyS1] disabled
    [    2.119270] 2531000.serial: ttyS1 at MMIO 0x2531000 (irq = 27, base_baud = 12500000) is a 16550A
    [    2.128268] console [ttyS1] enabled
    [    2.128268] console [ttyS1] enabled
    [    2.135370] bootconsole [earlycon0] disabled
    [    2.135370] bootconsole [earlycon0] disabled
    [    2.144697] [drm] Initialized drm 1.1.0 20060810
    [    2.237523] loop: module loaded
    [    2.241023] at24 0-0050: 131072 byte 24c1024 EEPROM, writable, 1 bytes/write
    [    2.250140] spi_davinci 21000400.spi: DMA is not supported (-19)
    [    2.256956] m25p80 spi32766.0: unrecognized JEDEC id bytes: 10, dd,  c
    [    2.263531] spi_davinci 21000400.spi: Controller at 0xf09fc400
    [    2.269774] spi_davinci 21000600.spi: DMA is not supported (-19)
    [    2.276194] spi_davinci 21000600.spi: Controller at 0xf09fe600
    [    2.282412] spi_davinci 21000800.spi: DMA is not supported (-19)
    [    2.288827] spi_davinci 21000800.spi: Controller at 0xf0a42800
    [    2.295486] platform Fixed MDIO bus.0: set dma_pfn_offset00780000
    [    2.301787] libphy: Fixed MDIO Bus: probed
    [    2.348940] davinci_mdio 2090300.mdio: davinci mdio revision 1.5
    [    2.354972] libphy: 2090300.mdio: probed
    [    2.369863] davinci_mdio 2090300.mdio: phy[0]: device 2090300.mdio:00, driver Marvell 88E1510
    [    2.378425] davinci_mdio 2090300.mdio: phy[1]: device 2090300.mdio:01, driver Marvell 88E1510
    [    2.387782] ti,keystone-serdes 232a000.phy: Requested PHY is disabled
    [    2.897683] ti,keystone-serdes 232a000.phy: Requested PHY is disabled
    [    3.407149] netcp-1.0 2620110.netcp: initialized cpsw ale version 1.3
    [    3.413620] netcp-1.0 2620110.netcp: ALE Table size 1024
    [    3.420908] netcp-1.0 2620110.netcp: module(netcp-xgbe) not used for device
    [    3.428201] netcp-1.0 2620110.netcp: pa_clk_rate(163840000 HZ),mult(25000),shift(12)
    [    3.437752] netcp-1.0 2620110.netcp: Using PA fw version 03.00.02.00:0x03000200 on pdsp 0
    [    3.445967] netcp-1.0 2620110.netcp: Using PA fw version 03.00.02.00:0x03000200 on pdsp 1
    [    3.454181] netcp-1.0 2620110.netcp: Using PA fw version 03.00.02.00:0x03000200 on pdsp 2
    [    3.462395] netcp-1.0 2620110.netcp: Using PA fw version 03.00.02.00:0x03000200 on pdsp 3
    [    3.470609] netcp-1.0 2620110.netcp: Using PA fw version 03.00.02.00:0x03000200 on pdsp 4
    [    3.478821] netcp-1.0 2620110.netcp: Using PA fw version 03.00.02.00:0x03000200 on pdsp 5
    [    3.487842] netcp-1.0 2620110.netcp: module(netcp-pa2) not used for device
    [    3.495890] 2620738.usb_phy supply vcc not found, using dummy regulator
    [    3.503074] mousedev: PS/2 mouse device common for all mice
    [    3.519226] i2c /dev entries driver
    [    3.527869] nand: No NAND device found
    [    3.532693] platform snd-soc-dummy: set dma_pfn_offset00780000
    [    3.540315] NET: Registered protocol family 10
    [    3.555876] sit: IPv6 over IPv4 tunneling driver
    [    3.561105] NET: Registered protocol family 17
    [    3.565793] Key type dns_resolver registered
    [    3.570193] Registering SWP/SWPB emulation handler
    [    3.587081] hctosys: unable to open rtc device (rtc0)
    [    3.608365] netcp-1.0 2620110.netcp eth0: Link is Up - 100Mbps/Half - flow control off
    [    3.616699] pps pps0: new PPS source ptp0
    [    3.620751] cpts rftclk: sel(1),rate(400000000 HZ),mult(2560),shift(10),div(1)
    [    3.635140] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
    [    4.918934] netcp-1.0 2620110.netcp eth0: Link is Up - 100Mbps/Half - flow control off
    [    7.599303] netcp-1.0 2620110.netcp eth0: Link is Up - 100Mbps/Half - flow control off
    [    7.618957] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    [    7.639122] IP-Config: Complete:
    [    7.642368]      device=eth0, hwaddr=74:da:ea:3a:d4:d9, ipaddr=192.168.2.12, mask=255.255.255.0, gw=192.168.2.243
    [    7.652672]      host=k2hk, domain=, nis-domain=(none)
    [    7.657830]      bootserver=192.168.2.243, rootserver=192.168.2.243, rootpath=
    [    7.664908]      nameserver0=192.168.0.20, nameserver1=192.168.0.21
    [    7.682057] ALSA device list:
    [    7.685034]   No soundcards found.
    [   33.058948] keystone-rapidio 2900000.rapidio: RIO port register timeout, port mask 0x1 not ready
    [  120.749175] VFS: Unable to mount root fs via NFS, trying floppy.
    [  120.755289] List of all partitions:
    [  120.758799] No filesystem could mount root, tried:  nfs
    [  120.764064] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
    
    

  • In your boot log, I see

    [ 0.530409] CPU1: failed to boot: -22
    [ 0.570499] CPU2: failed to boot: -22
    [ 0.610566] CPU3: failed to boot: -22

    that message comes from __cpu_up in arch/arm/kernel/smp.c when boot_secondary fails. boot_secondary either calls smp_ops.smp_boot_secondary (if it exists) or returns -ENOSYS if it doesn't. ENOSYS = 38, so it looks like it must be coming from smp_ops.smp_boot_secondary. On the keystone architecture, this is initialized to keystons_smp_boot_secondary in arch/arm/mach-keystone/platsmp.c, and this is where it calls into the boot monitor. Looks like error code 22 is coming from the boot monitor.

    22 is -EINVAL, but it doesn't look like my version of the boot monitor would ever return that. Take a look at psci.c in the boot monitor code, or maybe grep the whole thing for EINVAL.
  • Thanks for your help, I think that is pointing me in the right direction.

    In smp.c there's the function:

    static int keystone_smp_boot_secondary(unsigned int cpu,
    struct task_struct *idle)
    {
    unsigned long start = virt_to_idmap(&secondary_startup);
    int error;

    pr_debug("keystone-smp: booting cpu %d, vector %08lx\n",
    cpu, start);

    error = keystone_cpu_smc(KEYSTONE_MON_CPU_UP_IDX, cpu, start);
    if (error)
    pr_err("CPU %d bringup failed with %d\n", cpu, error);

    return error;
    }

    I'm not seeing the pr_err there. It seems that this function is never even being run. Maybe the smp_ops struct containing the pointer to this function is never being set up, which could happen if the device tree isn't pointing to this smp code.

    I'm digging into the psci stuff now to see if my device tree is set up wrong. I haven't touched anything relating to this from the packaged DTS files, however.
  • For anyone interested, my problem was different than the original post here.

    Linux (in processorSDK) interacts with the boot monitor using the built-in ARM PSCI code, not the code in the mach-keystone directory. It was sending proper power on commands. The cores in my case were already powered on (maybe by boot configuration pins?) so the boot monitor was returning an "already powered on" error. The linux PSCI code didn't recognize that error when translating it to linux error codes, so it used EINVAL instead.

    Powering off the cores in u-boot before starting linux fixed this issue. (Or, one could modify the code to recognize and ignore the "already powered on" error.)