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.

kernel hangs at :Uncompressing Linux... done, booting the kernel.

Other Parts Discussed in Thread: TPS65910, PMP, ADS7846, TMP102

hi, i have a custom DM8148 board. 

I can boot the kernel of  TI EVM board. 

when i insert the same SD card into my custom board, and boot from sd,

it hangs at: Uncompressing Linux... done, booting the kernel.

where should i start to check ?  bootargs ,images are totally the same.

I have 4 128*16bits DDR3 chips on my board

  • sorry, my sd card can not boot from TI EVM, it can boot from another DM8148 board, which has the same 4 128M*16bit DDR3 chips
  • Hi Jin,

    I would also add that you will need to test and verify your DDR3 memory is correct. Please run mtest from u-boot for both boards and compare the results.

    Regards,
    Pavel
  • hi, i have add the low level debug option already ,and there is no log printed
  • i tested this ddr section ,and it's ok
    U-Boot 2010.06 (Apr 26 2016 - 08:58:11)

    TI8148-GP rev 3.0

    ARM clk: 600MHz
    DDR clk: 400MHz

    DRAM: 2 GiB
    MMC: OMAP SD/MMC: 0
    Using default environment

    The 2nd stage U-Boot will now be auto-loaded
    Please do not interrupt the countdown till TI8148_EVM prompt if 2nd stage is already flashed
    Hit any key to stop autoboot: 0
    reading u-boot.bin

    185476 bytes read
    ## Starting application at 0x80800000 ...


    U-Boot 2010.06 (Apr 25 2016 - 14:54:52)

    TI8148-GP rev 3.0

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C: ready
    DRAM: 2 GiB
    NAND: HW ECC BCH8 Selected
    512 MiB
    MMC: OMAP SD/MMC: 0
    *** Warning - bad CRC or MMC, using default environment

    .:;rrr;;.
    ,5#@@@@#####@@@@@@#2,
    ,A@@@hi;;;r5;;;;r;rrSG@@@A,
    r@@#i;:;s222hG;rrsrrrrrr;ri#@@r
    :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:
    B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B
    @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@
    @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@
    @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@
    G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
    @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
    X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
    @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
    @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
    @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
    @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
    M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
    :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
    @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
    @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@
    ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@;
    r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r
    ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,
    B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H
    .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.
    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.
    ;&@@@@MhXS5i5SX9B@@@@G;
    :ihM#@@@@@##hs,

    Net: <ethaddr> not set. Reading from E-fuse
    Detected MACID:74:da:ea:42:de:b4
    cpsw
    Hit any key to stop autoboot: 0
    TI8148_EVM#mtest 0x80800000 0x90000000 0x55aa55aa 1
    Pattern 55AA55AA Writing... Reading...Tested 1 iteration(s) with 0 errors.
    TI8148_EVM#
  • Jin,

    You have 512MByte DDR3, but you are testing only the first 256MByte of that memory?

    The test above you run on the failing board and on working board?

    Are there any differences between your two custom boards (working one and failing one)? Can you provide me full boot up log from the working board and from the failing board?

    Regards,
    Pavel
  • i thought if 256MB is ok ,then it should not be the DDR problem.
    anyway i have checked another 2 boards, and found that one board can boot the kernel ,but it hangs here:(my board has no tps65910)

    U-Boot 2010.06 (Apr 25 2016 - 14:54:52)

    TI8148-GP rev 3.0

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C: ready
    DRAM: 2 GiB
    NAND: HW ECC BCH8 Selected
    512 MiB
    MMC: OMAP SD/MMC: 0
    *** Warning - bad CRC or MMC, using default environment

    .:;rrr;;.
    ,5#@@@@#####@@@@@@#2,
    ,A@@@hi;;;r5;;;;r;rrSG@@@A,
    r@@#i;:;s222hG;rrsrrrrrr;ri#@@r
    :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:
    B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B
    @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@
    @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@
    @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@
    G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
    @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
    X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
    @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
    @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
    @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
    @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
    M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
    :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
    @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
    @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@
    ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@;
    r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r
    ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,
    B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H
    .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.
    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.
    ;&@@@@MhXS5i5SX9B@@@@G;
    :ihM#@@@@@##hs,

    Net: <ethaddr> not set. Reading from E-fuse
    Detected MACID:74:da:ea:42:e5:1c
    cpsw
    Hit any key to stop autoboot: 0
    reading boot.scr

    354 bytes read
    Running bootscript from MMC/SD to set the ENV...
    ## Executing script at 80900000
    reading ti_logo.bmp

    ** Unable to read "ti_logo.bmp" from mmc 0:1 **
    Unknown command 'bmp' - try 'help'
    reading uImage

    2810452 bytes read
    ## Booting kernel from Legacy Image at 80009000 ...
    Image Name: Linux-2.6.37
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 2810388 Bytes = 2.7 MiB
    Load Address: 80008000
    Entry Point: 80008000
    Verifying Checksum ... OK
    Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    [ 0.000000] Linux version 2.6.37 (user@ubuntu) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #2 Mon Jul 4 14:56:42 CST 2016
    [ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
    [ 0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [ 0.000000] Machine: ti8148evm
    [ 0.000000] reserved size = 52428800 at 0x0
    [ 0.000000] FB: Reserving 52428800 bytes SDRAM for VRAM
    [ 0.000000] Memory policy: ECC disabled, Data cache writeback
    [ 0.000000] OMAP chip is TI8148 3.0
    [ 0.000000] SRAM: Mapped pa 0x402f1000 to va 0xfe400000 size: 0xf000
    [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 160648
    [ 0.000000] Kernel command line: console=ttyO0,115200n8 rootwait root=/dev/mmcblk0p2 rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000 ip=off noinitrd
    [ 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: 364MB 270MB = 634MB total
    [ 0.000000] Memory: 637296k/637296k available, 63120k reserved, 276480K highmem
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
    [ 0.000000] DMA : 0xfee00000 - 0xffe00000 ( 16 MB)
    [ 0.000000] vmalloc : 0xd7000000 - 0xf8000000 ( 528 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xd6c00000 ( 364 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
    [ 0.000000] .init : 0xc0008000 - 0xc003d000 ( 212 kB)
    [ 0.000000] .text : 0xc003d000 - 0xc0550000 (5196 kB)
    [ 0.000000] .data : 0xc0550000 - 0xc059e1c0 ( 313 kB)
    [ 0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [ 0.000000] NR_IRQS:407
    [ 0.000000] omap_hwmod: gpio2: softreset failed (waited 10000 usec)
    [ 0.000000] omap_hwmod: gpio3: softreset failed (waited 10000 usec)
    [ 0.000000] omap_hwmod: gpio4: softreset failed (waited 10000 usec)
    [ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [ 0.000000] Total of 128 interrupts on 1 active controller
    [ 0.000000] GPMC revision 6.0
    [ 0.000000] Trying to install interrupt handler for IRQ400
    [ 0.000000] Trying to install interrupt handler for IRQ401
    [ 0.000000] Trying to install interrupt handler for IRQ402
    [ 0.000000] Trying to install interrupt handler for IRQ403
    [ 0.000000] Trying to install interrupt handler for IRQ404
    [ 0.000000] Trying to install interrupt handler for IRQ405
    [ 0.000000] Trying to install interrupt handler for IRQ406
    [ 0.000000] Trying to install type control for IRQ407
    [ 0.000000] Trying to set irq flags for IRQ407
    [ 0.000000] OMAP clockevent source: GPTIMER1 at 20000000 Hz
    [ 0.000000] Console: colour dummy device 80x30
    [ 0.000000] Calibrating delay loop... 599.65 BogoMIPS (lpj=2998272)
    [ 0.220000] pid_max: default: 32768 minimum: 301
    [ 0.220000] Security Framework initialized
    [ 0.220000] Mount-cache hash table entries: 512
    [ 0.220000] CPU: Testing write buffer coherency: ok
    [ 0.220000] devtmpfs: initialized
    [ 0.220000] omap_voltage_early_init: voltage driver support not added
    [ 0.220000] regulator: core version 0.5
    [ 0.220000] regulator: dummy:
    [ 0.220000] NET: Registered protocol family 16
    [ 0.220000] omap_voltage_domain_lookup: Voltage driver init not yet happened.Faulting!
    [ 0.220000] omap_voltage_add_dev: VDD specified does not exist!
    [ 0.220000] OMAP GPIO hardware version 0.1
    [ 0.220000] OMAP GPIO hardware version 0.1
    [ 0.220000] OMAP GPIO hardware version 0.1
    [ 0.220000] OMAP GPIO hardware version 0.1
    [ 0.220000] omap_mux_init: Add partition: #1: core, flags: 4
    [ 0.230000] NOR: Can't request GPMC CS
    [ 0.250000] Debugfs: Only enabling/disabling deep sleep and wakeup timer is supported now
    [ 0.250000] registered ti81xx_vpss device
    [ 0.250000] registered ti81xx_vidout device
    [ 0.250000] registered ti81xx on-chip HDMI device
    [ 0.250000] registered ti81xx_fb device
    [ 0.250000] registered ti81xx_vin device
    [ 0.250000] ti81xx_pcie: Invoking PCI BIOS...
    [ 0.250000] ti81xx_pcie: Setting up Host Controller...
    [ 0.250000] ti81xx_pcie: Register base mapped @0xd7018000
    [ 0.360000] ti81xx_pcie: Starting PCI scan...
    [ 0.360000] PCI: bus0: Fast back to back transfers enabled
    [ 0.360000] bio: create slab <bio-0> at 0
    [ 0.360000] Timer6 will run at at 20000000 Hz
    [ 0.370000] vgaarb: loaded
    [ 0.370000] SCSI subsystem initialized
    [ 0.370000] usbcore: registered new interface driver usbfs
    [ 0.370000] usbcore: registered new interface driver hub
    [ 0.370000] usbcore: registered new device driver usb
    [ 0.370000] USBSS revision 4ea2080b
    [ 0.370000] registerd cppi-dma Intr @ IRQ 17
    [ 0.370000] Cppi41 Init Done
    [ 0.370000] omap_i2c omap_i2c.1: bus 1 rev4.0 at 100 kHz
    [ 0.370000] pcf857x: probe of 1-0021 failed with error -121
    [ 0.370000] tps65910 1-002d: read from reg 3f failed
    [ 0.370000] tps65910 1-002d: read from reg 1e failed
    [ 0.370000] set_machine_constraints: failed to enable VRTC
    [ 0.370000] tps65910 1-002d: failed to register tps65910-pmic regulator
    [ 0.370000] tps65910-pmic: probe of tps65910-pmic failed with error -121
    [ 0.370000] tps65910 1-002d: No interrupt support, no core IRQ
    [ 0.390000] omap_i2c omap_i2c.4: bus 4 rev4.0 at 100 kHz
    [ 0.390000] Advanced Linux Sound Architecture Driver Version 1.0.23.
    [ 0.390000] Switching to clocksource gp timer
    [ 0.400000] musb-hdrc: version 6.0, host, debug=0
    [ 0.400000] musb-hdrc musb-hdrc.0: dma type: dma-cppi41
    [ 0.400000] MUSB controller-0 revision 4ea20800
    [ 0.400000] musb-hdrc musb-hdrc.0: MUSB HDRC host driver
    [ 0.400000] musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 1
    [ 0.400000] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [ 0.400000] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [ 0.400000] usb usb1: Product: MUSB HDRC host driver
    [ 0.400000] usb usb1: Manufacturer: Linux 2.6.37 musb-hcd
    [ 0.400000] usb usb1: SerialNumber: musb-hdrc.0
    [ 0.400000] hub 1-0:1.0: USB hub found
    [ 0.400000] hub 1-0:1.0: 1 port detected
    [ 0.400000] musb-hdrc musb-hdrc.0: USB Host mode controller at d701e000 using DMA, IRQ 18
    [ 0.400000] musb-hdrc musb-hdrc.1: dma type: dma-cppi41
    [ 0.400000] MUSB controller-1 revision 4ea20800
    [ 0.400000] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
    [ 0.400000] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 2
    [ 0.400000] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
    [ 0.400000] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [ 0.400000] usb usb2: Product: MUSB HDRC host driver
    [ 0.400000] usb usb2: Manufacturer: Linux 2.6.37 musb-hcd
    [ 0.400000] usb usb2: SerialNumber: musb-hdrc.1
    [ 0.400000] hub 2-0:1.0: USB hub found
    [ 0.400000] hub 2-0:1.0: 1 port detected
    [ 0.400000] musb-hdrc musb-hdrc.1: USB Host mode controller at d702a800 using DMA, IRQ 19
    [ 0.400000] NET: Registered protocol family 2
    [ 0.400000] IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
    [ 0.400000] TCP established hash table entries: 65536 (order: 7, 524288 bytes)
    [ 0.400000] TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
    [ 0.410000] TCP: Hash tables configured (established 65536 bind 65536)
    [ 0.410000] TCP reno registered
    [ 0.410000] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [ 0.410000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [ 0.410000] NET: Registered protocol family 1
    [ 0.410000] RPC: Registered udp transport module.
    [ 0.410000] RPC: Registered tcp transport module.
    [ 0.410000] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [ 0.410000] NetWinder Floating Point Emulator V0.97 (double precision)
    [ 0.410000] PMU: registered new PMU device of type 0
    [ 0.410000] omap-iommu omap-iommu.0: ducati registered
    [ 0.410000] omap-iommu omap-iommu.1: sys registered
    [ 0.550000] highmem bounce pool size: 64 pages
    [ 0.560000] JFFS2 version 2.2. (NAND) ? 2001-2006 Red Hat, Inc.
    [ 0.560000] msgmni has been set to 704
    [ 0.560000] io scheduler noop registered
    [ 0.560000] io scheduler deadline registered
    [ 0.560000] io scheduler cfq registered (default)
    [ 0.560000] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
    [ 0.560000] omap_uart.0: ttyO0 at MMIO 0x48020000 (irq = 72) is a OMAP UART0
    [ 1.380000] console [ttyO0] enabled
    [ 1.390000] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
    [ 1.390000] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
    [ 1.400000] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
    [ 1.410000] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
    [ 1.420000] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
    [ 1.430000] brd: module loaded
    [ 1.440000] loop: module loaded
    [ 1.440000] ahci ahci.0: forcing PORTS_IMPL to 0x1
    [ 1.450000] ahci ahci.0: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode
    [ 1.460000] ahci ahci.0: flags: ncq sntf pm led clo only pmp pio slum part ccc apst
    [ 1.460000] scsi0 : ahci_platform
    [ 1.470000] ata1: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a150fff] port 0x100 irq 16
    [ 1.480000] m25p80 spi1.0: w25q64 (8192 Kbytes)
    [ 1.480000] Creating 5 MTD partitions on "spi_flash":
    [ 1.490000] 0x000000000000-0x000000040000 : "U-Boot-min"
    [ 1.490000] 0x000000040000-0x0000000c0000 : "U-Boot"
    [ 1.500000] 0x0000000c0000-0x000000100000 : "U-Boot Env"
    [ 1.510000] 0x000000100000-0x000000500000 : "Kernel"
    [ 1.510000] 0x000000500000-0x000000800000 : "Reserved"
    [ 1.520000] omap2-nand driver initializing
    [ 1.520000] ONFI flash detected
    [ 1.530000] ONFI param page 0 valid
    [ 1.530000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xdc (Micron NAND 512MiB 3,3V 8-bit)
    [ 1.540000] Creating 5 MTD partitions on "omap2-nand.0":
    [ 1.550000] 0x000000000000-0x000000040000 : "U-Boot-min"
    [ 1.550000] 0x000000040000-0x0000000c0000 : "U-Boot"
    [ 1.560000] 0x0000000c0000-0x000000100000 : "U-Boot Env"
    [ 1.570000] 0x000000100000-0x000000500000 : "Kernel"
    [ 1.570000] 0x000000500000-0x000020000000 : "File System"
    [ 1.840000] davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
    [ 1.840000] davinci_mdio davinci_mdio.0: no live phy, scanning all
    [ 1.850000] davinci_mdio: probe of davinci_mdio.0 failed with error -5
    [ 1.860000] CAN device driver interface
    [ 1.860000] CAN bus driver for Bosch D_CAN controller 1.0
    [ 1.870000] d_can d_can.0: d_can device registered (irq=52, irq_obj=53)
    [ 1.870000] d_can d_can.1: d_can device registered (irq=55, irq_obj=56)
    [ 1.880000] usbcore: registered new interface driver cdc_ether
    [ 1.890000] usbcore: registered new interface driver dm9601
    [ 1.890000] usbcore: registered new interface driver cdc_acm
    [ 1.900000] cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters
    [ 1.910000] Initializing USB Mass Storage driver...
    [ 1.910000] usbcore: registered new interface driver usb-storage
    [ 1.920000] USB Mass Storage support registered.
    [ 1.920000] mice: PS/2 mouse device common for all mice
    [ 1.930000] ata1: SATA link down (SStatus 0 SControl 300)
    [ 1.940000] ads7846 spi1.2: touchscreen, irq 182
    [ 1.940000] input: ADS7846 Touchscreen as /devices/platform/omap2_mcspi.1/spi1.2/input/input0
    [ 1.950000] tps65910-rtc: probe of tps65910-rtc failed with error -121
    [ 1.960000] i2c /dev entries driver
    [ 1.960000] Linux video capture interface: v2.00
    [ 1.970000] usbcore: registered new interface driver uvcvideo
    [ 1.970000] USB Video Class driver (v1.0.0)
    [ 1.980000] Timer7 will run at at 20000000 Hz
    [ 1.980000] pwm-fan pwm-fan.1: PWM fan initialized
    [ 1.990000] tmp102 1-0049: error reading config register
    [ 2.000000] tmp102: probe of 1-0049 failed with error -121
    [ 2.000000] OMAP Watchdog Timer Rev 0x00: initial timeout 60 sec
    [ 2.010000] usbcore: registered new interface driver usbhid
    [ 2.020000] usbhid: USB HID core driver
    [ 2.020000] notify_init : notify drivercreated for remote proc id 2 at physical Address 0xbf900000
    [ 2.030000] usbcore: registered new interface driver snd-usb-audio
    [ 2.040000] asoc: tlv320aic3x-hifi <-> davinci-mcasp.2 mapping ok
    [ 2.050000] ALSA device list:
    [ 2.050000] #0: TI81XX EVM
    [ 2.050000] nf_conntrack version 0.5.0 (9957 buckets, 39828 max)
    [ 2.060000] ip_tables: (C) 2000-2006 Netfilter Core Team
    [ 2.070000] TCP cubic registered
    [ 2.070000] NET: Registered protocol family 17
    [ 2.080000] can: controller area network core (rev 20090105 abi 8)
    [ 2.080000] NET: Registered protocol family 29
    [ 2.090000] can: raw protocol (rev 20090105)
    [ 2.090000] can: broadcast manager protocol (rev 20090105 t)
    [ 2.100000] Registering the dns_resolver key type
    [ 2.100000] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [ 2.110000] omap_voltage_late_init: Voltage driver support not added
    [ 2.120000] Power Management for TI81XX.
    [ 2.130000] Detected MACID=74:da:ea:42:e5:1c
    [ 2.140000] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
    [ 2.140000] Waiting for root device /dev/mmcblk0p2...
  • Jin Yibin said:
    i thought if 256MB is ok ,then it should not be the DDR problem.

    256MB should be enough to start the linux kernel loading. But I will recommend to test the whole 512MB memory range.

    Jin Yibin said:
    anyway i have checked another 2 boards

    How many DM814x custom boards you have? How many of them boot fine and how many failed?

    Jin Yibin said:
    and found that one board can boot the kernel ,but it hangs here:(my board has no tps65910)

    So you have only one partially working board? This partially working board can boot the kernel and hangs at "Waiting for root device /dev/mmcblk0p2"? Your partially working board has no tps65910, while your other non working board have it?

    What about the boot log of the non working board?

    Regards,
    Pavel

  • hi, i have 3 custom boards. all of them has no TPs65910, only one can boot ,and hangs at Waiting for root device /dev/mmcblk0p2,here is the non working boot log: (by the way ,my micro sd card has no card detect pin)

    U-Boot 2010.06 (Apr 26 2016 - 08:58:11)

    TI8148-GP rev 3.0

    ARM clk: 600MHz
    DDR clk: 400MHz

    DRAM: 2 GiB
    MMC: OMAP SD/MMC: 0
    Using default environment

    The 2nd stage U-Boot will now be auto-loaded
    Please do not interrupt the countdown till TI8148_EVM prompt if 2nd stage is already flashed
    Hit any key to stop autoboot: 0
    reading u-boot.bin

    185476 bytes read
    ## Starting application at 0x80800000 ...


    U-Boot 2010.06 (Apr 25 2016 - 14:54:52)

    TI8148-GP rev 3.0

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C: ready
    DRAM: 2 GiB
    NAND: HW ECC BCH8 Selected
    512 MiB
    MMC: OMAP SD/MMC: 0
    *** Warning - bad CRC or MMC, using default environment

    .:;rrr;;.
    ,5#@@@@#####@@@@@@#2,
    ,A@@@hi;;;r5;;;;r;rrSG@@@A,
    r@@#i;:;s222hG;rrsrrrrrr;ri#@@r
    :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:
    B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B
    @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@
    @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@
    @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@
    G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
    @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
    X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
    @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
    @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
    @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
    @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
    M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
    :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
    @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
    @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@
    ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@;
    r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r
    ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,
    B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H
    .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.
    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.
    ;&@@@@MhXS5i5SX9B@@@@G;
    :ihM#@@@@@##hs,

    Net: <ethaddr> not set. Reading from E-fuse
    Detected MACID:74:da:ea:42:e5:6
    cpsw
    Hit any key to stop autoboot: 0
    reading boot.scr

    354 bytes read
    Running bootscript from MMC/SD to set the ENV...
    ## Executing script at 80900000
    reading ti_logo.bmp

    ** Unable to read "ti_logo.bmp" from mmc 0:1 **
    Unknown command 'bmp' - try 'help'
    reading uImage

    2810472 bytes read
    ## Booting kernel from Legacy Image at 80009000 ...
    Image Name: Linux-2.6.37
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 2810408 Bytes = 2.7 MiB
    Load Address: 80008000
    Entry Point: 80008000
    Verifying Checksum ... OK
    Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
  • there are only DDR,NAND flash, spi flash ,and video decoder on my custom board. no tps65910 , no ethernet ,etc
  • Jin Yibin said:
    hi, i have 3 custom boards. all of them has no TPs65910, only one can boot

    Do you have any hardware or software differences between these 3 boards?

    Jin Yibin said:
    DRAM: 2 GiB

    You have 512MB, you might want to update this u-boot report message. The below patch change it from 2GiB to 1GiB, you can change from 2GiB to 512MiB.

    Jin Yibin said:
    Net: <ethaddr> not set. Reading from E-fuse
    Detected MACID:74:da:ea:42:e5:6
    cpsw
    Hit any key to stop autoboot

    Can you interrupt the countdown, enter into the u-boot prompt and print the boot environment with print command. Do this for working board, and for non-working board and provide me the result.

    Jin Yibin said:
    reading uImage

    2810472 bytes read

    Jin Yibin said:
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 2810408 Bytes = 2.7 MiB

    In working board, you have different size for the linux kernel uImage:

    reading uImage

    2810452 bytes read

    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 2810388 Bytes = 2.7 MiB

    Can you double check you are using the same uImage for working board and for non-working board?

    Jin Yibin said:
    Uncompressing Linux... done, booting the kernel.

    Enable Kernel low-level debugging and see where exactly it hangs:

    Regards,
    Pavel

  • hi, the Waiting for root device /dev/mmcblk0p2 problem is solved, i just pull down the sd_cd pin ,and it's ok.
    now the only problem is the other 2 boards that can not boot
  • hi,

    all my 3 boards has 2GB DDR3,not 512MB

    i have enable low level debug in the kernel config,but why there are no  printf after boot ing the kernel?

    here is the printenv output log,

    TI8148_EVM#printenv
    bootcmd=if mmc rescan 0; then if run loadbootscript; then run bootscript; else echo In case ENV on MMC/SD is required; echo Please put a valid script named boot.scr on the card; echo Refer to the User Guide on how to generate the image; fi; else echo Please set bootargs and bootcmd before booting the kernel; echo If that has already been done please ignore this message; fi
    bootdelay=3
    baudrate=115200
    autoload=yes
    verify=yes
    bootfile=uImage
    ramdisk_file=ramdisk.gz
    loadaddr=0x81000000
    script_addr=0x80900000
    loadbootscript=fatload mmc 0 ${script_addr} boot.scr
    bootscript= echo Running bootscript from MMC/SD to set the ENV...; source ${script_addr}
    stdin=serial
    stdout=serial
    stderr=serial
    ethaddr=74:da:ea:42:de:b4
    ethact=cpsw

    Environment size: 732/8188 bytes

  • here is my bootargs in boot.scr:
    fatload mmc 0 0x81000000 ti_logo.bmp
    bmp display 0x81000000
    setenv bootargs 'console=ttyO0,115200n8 rootwait root=/dev/mmcblk0p2 rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000 ip=off noinitrd'
    fatload mmc 0 0x80009000 uImage
    bootm 0x80009000
  • hi, i add ealyprink in the bootargs, now here is the log, it says bootconsole disabled
    U-Boot 2010.06 (Apr 25 2016 - 14:54:52)

    TI8148-GP rev 3.0

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C: ready
    DRAM: 2 GiB
    NAND: HW ECC BCH8 Selected
    512 MiB
    MMC: OMAP SD/MMC: 0
    *** Warning - bad CRC or MMC, using default environment

    .:;rrr;;.
    ,5#@@@@#####@@@@@@#2,
    ,A@@@hi;;;r5;;;;r;rrSG@@@A,
    r@@#i;:;s222hG;rrsrrrrrr;ri#@@r
    :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:
    B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B
    @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@
    @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@
    @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@
    G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
    @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
    X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
    @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
    @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
    @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
    @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
    M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
    :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
    @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
    @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@
    ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@;
    r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r
    ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,
    B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H
    .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.
    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.
    ;&@@@@MhXS5i5SX9B@@@@G;
    :ihM#@@@@@##hs,

    Net: <ethaddr> not set. Reading from E-fuse
    Detected MACID:74:da:ea:42:de:b4
    cpsw
    Hit any key to stop autoboot: 0
    reading boot.scr

    358 bytes read
    Running bootscript from MMC/SD to set the ENV...
    ## Executing script at 80900000
    reading ti_logo.bmp

    ** Unable to read "ti_logo.bmp" from mmc 0:1 **
    Unknown command 'bmp' - try 'help'
    reading uImage

    2810472 bytes read
    ## Booting kernel from Legacy Image at 80009000 ...
    Image Name: Linux-2.6.37
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 2810408 Bytes = 2.7 MiB
    Load Address: 80008000
    Entry Point: 80008000
    Verifying Checksum ... OK
    Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    [ 0.000000] Linux version 2.6.37 (user@ubuntu) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #10 Wed Jun 29 10:04:12 CST 2016
    [ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
    [ 0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [ 0.000000] Machine: ti8148evm
    [ 0.000000] bootconsole [earlycon0] enabled
    [ 0.000000] reserved size = 52428800 at 0x0
    [ 0.000000] FB: Reserving 52428800 bytes SDRAM for VRAM
    [ 0.000000] Memory policy: ECC disabled, Data cache writeback
    [ 0.000000] OMAP chip is TI8148 3.0
    [ 0.000000] SRAM: Mapped pa 0x402f1000 to va 0xfe400000 size: 0xf000
    [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 160648
    [ 0.000000] Kernel command line: earlyprintk=ttyO0,115200n8 rootwait root=/dev/mmcblk0p2 rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000 ip=off noinitrd
    [ 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: 364MB 270MB = 634MB total
    [ 0.000000] Memory: 637296k/637296k available, 63120k reserved, 276480K highmem
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
    [ 0.000000] DMA : 0xfee00000 - 0xffe00000 ( 16 MB)
    [ 0.000000] vmalloc : 0xd7000000 - 0xf8000000 ( 528 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xd6c00000 ( 364 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
    [ 0.000000] .init : 0xc0008000 - 0xc003d000 ( 212 kB)
    [ 0.000000] .text : 0xc003d000 - 0xc0550000 (5196 kB)
    [ 0.000000] .data : 0xc0550000 - 0xc059e1c0 ( 313 kB)
    [ 0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [ 0.000000] NR_IRQS:407
    [ 0.000000] omap_hwmod: gpio2: softreset failed (waited 10000 usec)
    [ 0.000000] omap_hwmod: gpio3: softreset failed (waited 10000 usec)
    [ 0.000000] omap_hwmod: gpio4: softreset failed (waited 10000 usec)
    [ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [ 0.000000] Total of 128 interrupts on 1 active controller
    [ 0.000000] GPMC revision 6.0
    [ 0.000000] Trying to install interrupt handler for IRQ400
    [ 0.000000] Trying to install interrupt handler for IRQ401
    [ 0.000000] Trying to install interrupt handler for IRQ402
    [ 0.000000] Trying to install interrupt handler for IRQ403
    [ 0.000000] Trying to install interrupt handler for IRQ404
    [ 0.000000] Trying to install interrupt handler for IRQ405
    [ 0.000000] Trying to install interrupt handler for IRQ406
    [ 0.000000] Trying to install type control for IRQ407
    [ 0.000000] Trying to set irq flags for IRQ407
    [ 0.000000] OMAP clockevent source: GPTIMER1 at 20000000 Hz
    [ 0.000000] Console: colour dummy device 80x30
    [ 0.000000] console [tty0] enabled, bootconsole disabled
  • after i add earlyprink in the bootargs , here is the new log:
    U-Boot 2010.06 (Apr 25 2016 - 14:54:52)

    TI8148-GP rev 3.0

    ARM clk: 600MHz
    DDR clk: 400MHz

    I2C: ready
    DRAM: 2 GiB
    NAND: HW ECC BCH8 Selected
    512 MiB
    MMC: OMAP SD/MMC: 0
    *** Warning - bad CRC or MMC, using default environment

    .:;rrr;;.
    ,5#@@@@#####@@@@@@#2,
    ,A@@@hi;;;r5;;;;r;rrSG@@@A,
    r@@#i;:;s222hG;rrsrrrrrr;ri#@@r
    :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:
    B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B
    @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@
    @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@
    @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@
    G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G
    @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@
    X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
    @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
    @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
    @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
    @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
    M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
    :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
    @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@
    @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@
    ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@;
    r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r
    ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,
    B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H
    .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.
    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.
    ;&@@@@MhXS5i5SX9B@@@@G;
    :ihM#@@@@@##hs,

    Net: <ethaddr> not set. Reading from E-fuse
    Detected MACID:74:da:ea:42:de:b4
    cpsw
    Hit any key to stop autoboot: 0
    reading boot.scr

    366 bytes read
    Running bootscript from MMC/SD to set the ENV...
    ## Executing script at 80900000
    reading ti_logo.bmp

    ** Unable to read "ti_logo.bmp" from mmc 0:1 **
    Unknown command 'bmp' - try 'help'
    reading uImage

    2810472 bytes read
    ## Booting kernel from Legacy Image at 80009000 ...
    Image Name: Linux-2.6.37
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 2810408 Bytes = 2.7 MiB
    Load Address: 80008000
    Entry Point: 80008000
    Verifying Checksum ... OK
    Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    [ 0.000000] Linux version 2.6.37 (user@ubuntu) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #10 Wed Jun 29 10:04:12 CST 2016
    [ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
    [ 0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [ 0.000000] Machine: ti8148evm
    [ 0.000000] bootconsole [earlycon0] enabled
    [ 0.000000] reserved size = 52428800 at 0x0
    [ 0.000000] FB: Reserving 52428800 bytes SDRAM for VRAM
    [ 0.000000] Memory policy: ECC disabled, Data cache writeback
    [ 0.000000] OMAP chip is TI8148 3.0
    [ 0.000000] SRAM: Mapped pa 0x402f1000 to va 0xfe400000 size: 0xf000
    [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 160648
    [ 0.000000] Kernel command line: earlyprintk console=ttyO0,115200n8 rootwait root=/dev/mmcblk0p2 rw mem=364M@0x80000000 mem=320M@0x9FC00000 vmalloc=500M notifyk.vpssm3_sva=0xBF900000 ip=off noinitrd
    [ 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: 364MB 270MB = 634MB total
    [ 0.000000] Memory: 637296k/637296k available, 63120k reserved, 276480K highmem
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
    [ 0.000000] DMA : 0xfee00000 - 0xffe00000 ( 16 MB)
    [ 0.000000] vmalloc : 0xd7000000 - 0xf8000000 ( 528 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xd6c00000 ( 364 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
    [ 0.000000] .init : 0xc0008000 - 0xc003d000 ( 212 kB)
    [ 0.000000] .text : 0xc003d000 - 0xc0550000 (5196 kB)
    [ 0.000000] .data : 0xc0550000 - 0xc059e1c0 ( 313 kB)
    [ 0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [ 0.000000] NR_IRQS:407
    [ 0.000000] omap_hwmod: gpio2: softreset failed (waited 10000 usec)
    [ 0.000000] omap_hwmod: gpio3: softreset failed (waited 10000 usec)
    [ 0.000000] omap_hwmod: gpio4: softreset failed (waited 10000 usec)
    [ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [ 0.000000] Total of 128 interrupts on 1 active controller
    [ 0.000000] GPMC revision 6.0
    [ 0.000000] Trying to install interrupt handler for IRQ400
    [ 0.000000] Trying to install interrupt handler for IRQ401
    [ 0.000000] Trying to install interrupt handler for IRQ402
    [ 0.000000] Trying to install interrupt handler for IRQ403
    [ 0.000000] Trying to install interrupt handler for IRQ404
    [ 0.000000] Trying to install interrupt handler for IRQ405
    [ 0.000000] Trying to install interrupt handler for IRQ406
    [ 0.000000] Trying to install type control for IRQ407
    [ 0.000000] Trying to set irq flags for IRQ407
    [ 0.000000] OMAP clockevent source: GPTIMER1 at 20000000 Hz
    [ 0.000000] Console: colour dummy device 80x30
    [ 0.000000] Calibrating delay loop... 599.65 BogoMIPS (lpj=2998272)
    [ 0.230000] pid_max: default: 32768 minimum: 301
    [ 0.230000] Security Framework initialized
    [ 0.240000] Mount-cache hash table entries: 512
    [ 0.240000] CPU: Testing write buffer coherency: ok
    [ 0.250000] devtmpfs: initialized
    [ 0.250000] omap_voltage_early_init: voltage driver support not added
    [ 0.260000] regulator: core version 0.5
    [ 0.260000] regulator: dummy:
    [ 0.270000] NET: Registered protocol family 16
    [ 0.270000] omap_voltage_domain_lookup: Voltage driver init not yet happened.Faulting!
    [ 0.280000] omap_voltage_add_dev: VDD specified does not exist!
    [ 0.290000] OMAP GPIO hardware version 0.1
    [ 0.290000] OMAP GPIO hardware version 0.1
    [ 0.300000] OMAP GPIO hardware version 0.1
    [ 0.300000] OMAP GPIO hardware version 0.1
    [ 0.310000] omap_mux_init: Add partition: #1: core, flags: 4
    [ 0.320000] NOR: Can't request GPMC CS
  • hi, my board can now boot up after i did as this thread suggested.yet still i do not know what's wrong with PCIE
    e2e.ti.com/.../1230003
  • the strange thing is , i have 3 boards, two of them have to disable the PCIE init as this to boot ,yet one board has to enable pcie init to boot ,otherwise it hangs at [ 0.320000] NOR: Can't request GPMC CS
    #ifdef CONFIG_ARCH_TI81XX
    if (cpu_is_ti814x()) {
    /* Init PCIe,SATA PLL here, before invoking respective init*/
    //ti814x_pcie_pllcfg();
    ti814x_sata_pllcfg();
    }


    ti81xx_ethernet_init();
    //ti81xx_init_pcie();
    ti81xx_register_edma();
    ti81xx_init_pcm();
    ti816x_sr_init();
    ti81xx_video_mux();
  • Jin Yibin said:
    all my 3 boards has 2GB DDR3,not 512MB

    Then I would suggest to test all the 2GB memory area. See also the below wiki page for 2GB memory config:

    Regards,
    Pavel

  • Jin Yibin said:
    the strange thing is , i have 3 boards, two of them have to disable the PCIE init as this to boot ,yet one board has to enable pcie init to boot ,otherwise it hangs

    Do you have PCIe on your 3 custom boards? The DM814x TI EVM has PCIe, so that PCIe is enabled by default in the kernel. If you do not have PCIe, then you should remove PCI support also from the .config file through menuconfig.

    In which function your kernel hang, in ti814x_pcie_pllcfg() or ti81xx_init_pcie()? In which line exactly? See also the below e2e thread:

    Regards,
    Pavel

  • there is no PCIE on my board, I am not sure where it hangs exactly , i will dig in later , and let you know as soon as i get the answer,thanks
  • hi,where to remove PCIE support in the menuconfig? i can not find it
  • nevermind ,i have found it , sorry
  • hi, i have remove the PCIE in the menuconfig , and the board that can boot with pcie init enabled now hangs at sata_pllcfg , i do not have 100MHZ serdes clock ,so it can not lock ?
  • Jin Yibin said:
    now hangs at sata_pllcfg

    Do you mean ti814x_sata_pllcfg ?

    Jin Yibin said:
    i do not have 100MHZ serdes clock ,so it can not lock ?

    Most probably this is the reason, but you can check this. Trace the code inside the ti814x_sata_pllcfg() function and see at which line exactly it hangs. See also the below e2e threads and patch:

    Regards,
    Pavel

  • hi,i have seen these threads, there is no 100Mhz clock on my board , so is it ok to use 20MHz?
  • It is OK to use 20MHz to not hang the linux kernel, but it is not OK to use 20MHz for stable SATA operation.

    BR
    Pavel
  • hi,now i can boot my board , here is what i do ,disable pcie, sata and ethernet init as follows:

    #ifdef CONFIG_ARCH_TI81XX
    if (cpu_is_ti814x()) {
    /* Init PCIe,SATA PLL here, before invoking respective init*/

    //ti814x_pcie_pllcfg();
    printk("End of pcie_pllcfg()\n");
    //ti814x_sata_pllcfg();
    printk("End of sata_pllcfg()\n");
    }

    //ti81xx_ethernet_init();
    //ti81xx_init_pcie();
    printk("End of init_pcie()\n");
    ti81xx_register_edma();
    ti81xx_init_pcm();
    ti816x_sr_init();
    ti81xx_video_mux();

    here is what i found:

    1. there is no 100 MHz  ref clock on my board ,  yet the pcie , sata and ethernet all need this 100MHz clock to work properly, so when kernel boot ,it hangs here

    2. in the dm8148 datasheet , it says this ref clock is a must for PCIE , yet optional for sata , as to ethernet  , i do not know why it is related to

    3. in this function ti814x_sata_pllcfg(),  sata is set to use 100MHz as source clock , this is to fix the jitter problem when using internal 20MHz as source clock, especially when sata is working above 3Gbps .  and this bug is not stated clearly in the datasheet .

    4.after i disable function ti814x_sata_pllcfg(),  my sata drive  seems can work still ,but i have not test it for a long time

  • Thanks for sharing your findings, these might be useful for the e2e community.

    Regards,
    Pavel