I am trying to bringup custom board based on dm365.
I am using u-boot and linux kernel from ipnc_rdk version 5
I could flash UBL, u-boot through UART boot mode, using serial_flash utility.
UBL and u-boot also works fine.(I have used dm365_evm board configuration for all UBL, u-boot and Linux).
But when i load linux kernel through UART and boot, kernel hangs at "Starting kernel ..."
After refering few e2e posts i have checked two things,
1. Machine type which is set correctly, both in u-boot and linux kernel.
2. In linux kernel Serial console initialization is done for UART0 and looks fine, it is as follows
static struct davinci_uart_config uart_config __initdata = {
.enabled_uarts = (1 << 0),
};
Despite this initialization i dont see any message on console after "Starting kernel ..."
I used XDS510USB emulator to debug kernel startup, i followed steps mentioned in below presentation to debug linux kernel startup
And when i did step by step debugging, kernel goes till the point where it searches for root file system and stops there as i have not flashed ubifs on NAND.
So it seems that UART0 is not intialized in kernel.
Now my question is how do i solve this problem, because all the PIN muxing is done in bootloader and in linux kernel pinmuxing is not done.
How should i proceed to solve this problem.
Can somebody please guide me?
Thank you in advance..
Here is startup log,
TI UBL Version: 1.50 Booting Catalog Boot Loader BootMode = NAND Starting NAND Copy... Valid magicnum, 0xA1ACED66, found in block 0x00000019. DONE Jumping to entry point at 0x81080000. U-Boot 1.3.4 (Nov 30 2013 - 16:29:23) IPNC-DM36xEVM-5.1.0 I2C: ready RAM Configuration: Bank #0: 80000000 128 MB NAND: NAND device: Manufacturer ID: 0x2c, Chip ID: 0x38 (Micron NAND 1GiB 3,3V 8-bit) Bad block table not found for chip 0 Bad block table not found for chip 0 loop oob 81021dd8 Bad block table written to 0x3ffc0000, version 0x01 loop oob 81021dd8 Bad block table written to 0x3ff80000, version 0x01 No NAND device found!!! 1024 MiB In: serial Out: serial Err: serial EEPROM @ 0x50 read FAILED!!! SYS_PERI_CLKCTL 0x243f04fcpll1_clk = 0x1e6 pll2_clk = 0x252 PLL1_DIV2 = 0x1 PLL2_DIV2 = 0x1 PLL2_DIV = 0x1 PLL1_DIV7 = 0x0 ARM Clock :- 297MHz DDR Clock :- 243MHz No ETH PHY detected!!! ethernet init failed! Hit any key to stop autoboot: 0 DM365 EVM :> DM365 EVM :> DM365 EVM :> DM365 EVM :>print bootdelay=4 baudrate=115200 bootfile="uImage" verify=no filesize=49EE20 bootargs=mem=48m console=ttyS0,115200n8 noinitrd ip=off rw ubi.mtd=3,2048 rootfstype=ubifs root=ubi0:rootfs nohz=off stdin=serial stdout=serial stderr=serial ver=U-Boot 1.3.4 (Nov 30 2013 - 16:29:23) IPNC-DM36xEVM-5.1.0 bootcmd=nand read 0x80700000 0x1000000 0x500000; bootm 0x80700000 DM365 EVM :>boot NAND read: device 0 offset 0x1000000, size 0x500000 5242880 bytes read: OK ## Booting kernel from Legacy Image at 80700000 ... Image Name: Linux-2.6.37_IPNC_DM365EVM_5.1.0 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 4845024 Bytes = 4.6 MB Load Address: 80008000 Entry Point: 80008000 Loading Kernel Image ... OK OK Inside function do_bootm_linux do_bootm:Kernel Entry point 0x80008000 Starting kernel ... Cleanup is done machid - 1939 ----------------->>> Printing from bootm.c in u-boot.