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.

Linux/AM3351: Nandflash

Part Number: AM3351
Other Parts Discussed in Thread: TPS65910, TLV320AIC3106, DP83848C, AM3352

Tool/software: Linux

Hi TI,

In my new project, I use MT29F1G08 NAND flash,  AM3351, SDK7.0, Now, the uboot can run normally, but the kernal cann't boot. 

I changed pin mux and gpmc in dts, but it cann't probe the nand. So, I don't know what to do!  I really hope to get your help. Thanks a lot.

Pin Mux:

nandflash_pins_default: nandflash_pins_default {

                                    pinctrl-single,pins = <

                                                0x0  (PIN_INPUT_PULLUP | MUX_MODE0)   /* U7->gpmc_ad0->gpmc_ad0 */

                                                0x4  (PIN_INPUT_PULLUP | MUX_MODE0)   /* V7->gpmc_ad1->gpmc_ad1 */

                                                0x8  (PIN_INPUT_PULLUP | MUX_MODE0)   /* R8->gpmc_ad2->gpmc_ad2 */

                                                0xc  (PIN_INPUT_PULLUP | MUX_MODE0)   /* T8->gpmc_ad3->gpmc_ad3 */

                                                0x10 (PIN_INPUT_PULLUP | MUX_MODE0)  /* U8->gpmc_ad4->gpmc_ad4 */

                                                0x14 (PIN_INPUT_PULLUP | MUX_MODE0)  /* V8->gpmc_ad5->gpmc_ad5 */

                                                0x18 (PIN_INPUT_PULLUP | MUX_MODE0)  /* R9->gpmc_ad6->gpmc_ad6 */

                                                0x1c (PIN_INPUT_PULLUP | MUX_MODE0)   /* T9->gpmc_ad7->gpmc_ad7 */

                                               

                                                0x70 (PIN_INPUT_PULLUP | MUX_MODE0)  /* T17->gpmc_wait0->gpmc_wait0 */

                                                0x7c (PIN_OUTPUT | MUX_MODE0)              /* V6->gpmc_csn0->gpmc_csn0  */

                                                0x90 (PIN_OUTPUT | MUX_MODE0)              /* R7->gpmc_advn_ale->gpmc_advn_ale */

                                                0x94 (PIN_OUTPUT | MUX_MODE0)              /* T7->gpmc_oen_ren->gpmc_oen_ren */

                                                0x98 (PIN_OUTPUT | MUX_MODE0)              /* U6->gpmc_wen->gpmc_wen */

                                                0x9c (PIN_OUTPUT | MUX_MODE0)              /* T6->gpmc_be0n_cle->gpmc_be0n_cle */

                                    >;

                        };

 

                        nandflash_pins_sleep: nandflash_pins_sleep {

                                    pinctrl-single,pins = <

                                                0x0 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x4 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x8 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0xc (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x10 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x14 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x18 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x1c (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                               

                                                0x70 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x7c (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x94 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x98 (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                                0x9c (PIN_INPUT_PULLDOWN | MUX_MODE7)

                                    >;

                        };

 

gpmc config

gpmc: gpmc@50000000 {        

                                    status = "okay";

                                    pinctrl-names = "default", "sleep";

                                    pinctrl-0 = <&nandflash_pins_default>;

                                    pinctrl-1 = <&nandflash_pins_sleep>;

                                    ranges = <0 0 0x08000000 0x8000000>; /* CS0: NAND */

                                    nand@0,0 {

                                                reg = <0 0 0>; /* CS0, offset 0 */

                                                nand-bus-width = <8>;

                                                gpmc,device-width = <1>;

                                                gpmc,sync-clk-ps = <0>;

                                                gpmc,cs-on-ns = <0>;

                                                gpmc,cs-rd-off-ns = <44>;

                                                gpmc,cs-wr-off-ns = <44>;

                                                gpmc,adv-on-ns = <6>;

                                                gpmc,adv-rd-off-ns = <34>;

                                                gpmc,adv-wr-off-ns = <44>;

                                                gpmc,we-on-ns = <0>;

                                                gpmc,we-off-ns = <40>;

                                                gpmc,oe-on-ns = <0>;

                                                gpmc,oe-off-ns = <54>;

                                                gpmc,access-ns = <64>;

                                                gpmc,rd-cycle-ns = <82>;

                                                gpmc,wr-cycle-ns = <82>;

                                                gpmc,wait-on-read = "true";

                                                gpmc,wait-on-write = "true";

                                                gpmc,bus-turnaround-ns = <0>;

                                                gpmc,cycle2cycle-delay-ns = <0>;

                                                gpmc,clk-activation-ns = <0>;

                                                gpmc,wait-monitoring-ns = <0>;

                                                gpmc,wr-access-ns = <40>;

                                                gpmc,wr-data-mux-bus-ns = <0>;

                                                ti,nand-ecc-opt= "bch8";

                                                ti,elm-id = <&elm>;

                                                /* MTD partition table */

                                       /* All SPL-* partitions are sized to minimal length

                                                * which can be independently programmable. For

                                                * NAND flash this is equal to size of erase-block */

                                                #address-cells = <1>;

                                                #size-cells = <1>;

                                                partition@0 {

                                                            label = "NAND.SPL";

                                                            reg = <0x00000000 0x000020000>;

                                                };

                                                partition@1 {

                                                            label = "NAND.SPL.backup1";

                                                            reg = <0x00020000 0x00020000>;

                                                };

                                                partition@2 {

                                                            label = "NAND.SPL.backup2";

                                                            reg = <0x00040000 0x00020000>;

                                                };

                                                partition@3 {

                                                            label = "NAND.SPL.backup3";

                                                            reg = <0x00060000 0x00020000>;

                                                };

                                                partition@4 {

                                                            label = "NAND.u-boot-spl-os";

                                                            reg = <0x00080000 0x00040000>;

                                                };

                                                partition@5 {

                                                            label = "NAND.u-boot";

                                                            reg = <0x000C0000 0x00100000>;

                                                };

                                                partition@6 {

                                                            label = "NAND.u-boot-env";

                                                            reg = <0x001C0000 0x00020000>;

                                                };

                                                partition@7 {

                                                            label = "NAND.u-boot-env.backup1";

                                                            reg = <0x001E0000 0x00020000>;

                                                };

                                                partition@8 {

                                                            label = "NAND.kernel";

                                                            reg = <0x00200000 0x00800000>;

                                                };

                                                partition@9 {

                                                            label = "NAND.rootfs";

                                                            reg = <0x00A00000 0x07600000>;

                                                };

                                    };

boot Log:

U-Boot SPL 2013.10-00189-g78d8ebd-dirty (Mar 15 2019 - 15:15:44)

The Expected Linux image was not found. Please check your NAND configuration.

Trying to start u-boot now...

 

 

U-Boot 2013.10-00189-g78d8ebd-dirty (Mar 15 2019 - 15:15:44)

 

I2C:   ready

DRAM:  256 MiB

NAND:  128 MiB

MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1

*** Warning - bad CRC, using default environment

 

Net:   <ethaddr> not set. Validating first E-fuse MAC

cpsw, usb_ether

Hit any key to stop autoboot:  0 

Booting from nand ...

 

NAND read: device 0 offset 0x80000, size 0x40000

 262144 bytes read: OK

 

NAND read: device 0 offset 0x200000, size 0x800000

 8388608 bytes read: OK

Kernel image @ 0x80200000 [ 0x000000 - 0x3ed988 ]

## Flattened Device Tree blob at 80f80000

   Booting using the fdt blob at 0x80f80000

   Loading Device Tree to 8f307000, end 8f312d41 ... OK

 

Starting kernel ...

 

[    0.000000] Booting Linux on physical CPU 0x0

[    0.000000] Linux version 3.12.10-ti2013.12.01 (root@ubuntu) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03) ) #6 Mon Mar 18 14:11:48 CST 2019

[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d

[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache

[    0.000000] Machine: Generic AM33XX (Flattened Device Tree), model: TI AM335x EVM-SK

[    0.000000] cma: CMA: reserved 24 MiB at 8d800000

[    0.000000] Memory policy: ECC disabled, Data cache writeback

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

[    0.000000] AM335X ES2.1 (neon )

[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 64256

[    0.000000] Kernel command line: console=ttyO0,115200n8 root=ubi0:rootfs rw ubi.mtd=NAND.rootfs,2048 rootfstype=ubifs rootwait=1

[    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)

[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)

[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)

[    0.000000] Memory: 223444K/259072K available (5559K kernel code, 559K rwdata, 1880K rodata, 345K init, 225K bss, 35628K reserved, 0K highmem)

[    0.000000] Virtual kernel memory layout:

[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)

[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

[    0.000000]     vmalloc : 0xd0800000 - 0xff000000   ( 744 MB)

[    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)

[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)

[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)

[    0.000000]       .text : 0xc0008000 - 0xc074c04c   (7441 kB)

[    0.000000]       .init : 0xc074d000 - 0xc07a3678   ( 346 kB)

[    0.000000]       .data : 0xc07a4000 - 0xc082fe98   ( 560 kB)

[    0.000000]        .bss : 0xc082fe98 - 0xc08684c0   ( 226 kB)

[    0.000000] NR_IRQS:16 nr_irqs:16 16

[    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] OMAP clockevent source: timer2 at 26000000 Hz

[    0.000000] sched_clock: 32 bits at 26MHz, resolution 38ns, wraps every 165191ms

[    0.000000] OMAP clocksource: timer1 at 26000000 Hz

[    0.000000] Console: colour dummy device 80x30

[    0.000347] Calibrating delay loop... 415.33 BogoMIPS (lpj=2076672)

[    0.059660] pid_max: default: 32768 minimum: 301

[    0.059770] Security Framework initialized

[    0.059823] Mount-cache hash table entries: 512

[    0.069003] CPU: Testing write buffer coherency: ok

[    0.069435] Setting up static identity map for 0xc0573868 - 0xc05738d8

[    0.070464] devtmpfs: initialized

[    0.072522] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3

[    0.135586] omap_hwmod: debugss: _wait_target_disable failed

[    0.136357] pinctrl core: initialized pinctrl subsystem

[    0.137294] regulator-dummy: no parameters

[    0.139977] NET: Registered protocol family 16

[    0.142454] DMA: preallocated 256 KiB pool for atomic coherent allocations

[    0.145434] cpuidle: using governor ladder

[    0.145451] cpuidle: using governor menu

[    0.155522] platform mpu.1: FIXME: clock-name 'fck' DOES NOT exist in dt!

[    0.156752] platform 49000000.edma: FIXME: clock-name 'fck' DOES NOT exist in dt!

[    0.158138] OMAP GPIO hardware version 0.1

[    0.167377] omap-gpmc 50000000.gpmc: could not find pctldev for node /pinmux@44e10800/nandflash_pins_default, deferring probe

[    0.167410] platform 50000000.gpmc: Driver omap-gpmc requests probe deferral

[    0.169269] DSS not supported on this SoC

[    0.169288] No ATAGs?

[    0.169300] hw-breakpoint: debug architecture 0x4 unsupported.

[    0.196680] bio: create slab <bio-0> at 0

[    0.213520] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver

[    0.214422] vbat: 5000 mV 

[    0.214877] lis3_reg: no parameters

[    0.217907] vgaarb: loaded

[    0.219322] SCSI subsystem initialized

[    0.220912] usbcore: registered new interface driver usbfs

[    0.221119] usbcore: registered new interface driver hub

[    0.221340] usbcore: registered new device driver usb

[    0.222365] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@44e10800/pinmux_i2c0_pins, deferring probe

[    0.222394] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral

[    0.222627] media: Linux media interface: v0.10

[    0.222820] Linux video capture interface: v2.00

[    0.223118] pps_core: LinuxPPS API ver. 1 registered

[    0.223130] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>

[    0.223286] PTP clock support registered

[    0.226169] Switched to clocksource timer1

[    0.247634] NET: Registered protocol family 2

[    0.248340] TCP established hash table entries: 2048 (order: 2, 16384 bytes)

[    0.248401] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)

[    0.248436] TCP: Hash tables configured (established 2048 bind 2048)

[    0.248506] TCP: reno registered

[    0.248530] UDP hash table entries: 256 (order: 0, 4096 bytes)

[    0.248554] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)

[    0.248779] NET: Registered protocol family 1

[    0.249205] RPC: Registered named UNIX socket transport module.

[    0.249220] RPC: Registered udp transport module.

[    0.249228] RPC: Registered tcp transport module.

[    0.249236] RPC: Registered tcp NFSv4.1 backchannel transport module.

[    0.250207] NetWinder Floating Point Emulator V0.97 (double precision)

[    0.250859] PM: Loading am335x-pm-firmware.bin

[    0.428625] VFS: Disk quotas dquot_6.5.2

[    0.428712] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)

[    0.429386] NFS: Registering the id_resolver key type

[    0.429509] Key type id_resolver registered

[    0.429520] Key type id_legacy registered

[    0.429567] jffs2: version 2.2. (NAND) (SUMMARY)  漏 2001-2006 Red Hat, Inc.

[    0.429776] msgmni has been set to 484

[    0.431589] NET: Registered protocol family 38

[    0.431635] io scheduler noop registered

[    0.431646] io scheduler deadline registered

[    0.431679] io scheduler cfq registered (default)

[    0.433787] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568

[    0.440918] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled

[    0.443984] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud = 3000000) is a OMAP UART0

[    1.032001] console [ttyO0] enabled

[    1.036483] 48022000.serial: ttyO1 at MMIO 0x48022000 (irq = 89, base_baud = 3000000) is a OMAP UART1

[    1.046694] 48024000.serial: ttyO2 at MMIO 0x48024000 (irq = 90, base_baud = 3000000) is a OMAP UART2

[    1.057524] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20

[    1.075630] brd: module loaded

[    1.084630] loop: module loaded

[    1.092551] mtdoops: mtd device (mtddev=name/number) must be supplied

[    1.103343] usbcore: registered new interface driver asix

[    1.109121] usbcore: registered new interface driver ax88179_178a

[    1.115528] usbcore: registered new interface driver cdc_ether

[    1.121636] usbcore: registered new interface driver r815x

[    1.127440] usbcore: registered new interface driver smsc95xx

[    1.133482] usbcore: registered new interface driver net1080

[    1.139405] usbcore: registered new interface driver cdc_subset

[    1.145618] usbcore: registered new interface driver zaurus

[    1.151526] usbcore: registered new interface driver cdc_ncm

[    1.157883] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver

[    1.164516] ehci-pci: EHCI PCI platform driver

[    1.169284] ehci-omap: OMAP-EHCI Host Controller driver

[    1.175519] usbcore: registered new interface driver cdc_wdm

[    1.181526] usbcore: registered new interface driver usb-storage

[    1.188810] mousedev: PS/2 mouse device common for all mice

[    1.196496] input: ti-tsc as /devices/ocp.2/44e0d000.tscadc/TI-am335x-tsc/input/input0

[    1.206852] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0

[    1.215061] i2c /dev entries driver

[    1.219286] Driver for 1-wire Dallas network protocol.

[    1.226898] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec

[    1.235694] ledtrig-cpu: registered to indicate activity on CPUs

[    1.242285] edma-dma-engine edma-dma-engine.0: allocated channel for 0:36

[    1.249275] omap-sham 53100000.sham: hw accel on OMAP rev 4.3

[    1.256457] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2

[    1.262329] edma-dma-engine edma-dma-engine.0: allocated channel for 0:5

[    1.269246] edma-dma-engine edma-dma-engine.0: allocated channel for 0:6

[    1.277559] usbcore: registered new interface driver usbhid

[    1.283221] usbhid: USB HID core driver

[    1.289462] oprofile: no performance counters

[    1.294320] oprofile: using timer interrupt.

[    1.299080] TCP: cubic registered

[    1.302448] Initializing XFRM netlink socket

[    1.306833] NET: Registered protocol family 17

[    1.311393] NET: Registered protocol family 15

[    1.315956] 8021q: 802.1Q VLAN Support v1.8

[    1.320363] Key type dns_resolver registered

[    1.325363] cpu cpu0: cpu0 regulator not ready, retry

[    1.330636] platform cpufreq-cpu0.0: Driver cpufreq-cpu0 requests probe deferral

[    1.338749] ThumbEE CPU extension supported.

[    1.345065] omap-gpmc 50000000.gpmc: GPMC revision 6.0

[    1.350367] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000

[    1.357399] busw = 0 //this is my debug info

[    1.359854] No NAND device found

[    1.365171] tps65910 0-002d: No interrupt support, no core IRQ

[    1.373530] vrtc: 1800 mV 

[    1.376574] vrtc: supplied by vbat

[    1.381316] vio: at 1500 mV 

[    1.384318] vio: supplied by vbat

[    1.389095] vdd_mpu: 912 <--> 1375 mV at 1137 mV 

[    1.393945] vdd_mpu: supplied by vbat

[    1.399046] vdd_core: 912 <--> 1150 mV at 1137 mV 

[    1.403978] vdd_core: supplied by vbat

[    1.408978] vdd3: 5000 mV 

[    1.412901] vdig1: at 1800 mV 

[    1.416077] vdig1: supplied by vbat

[    1.420843] vdig2: at 1800 mV 

[    1.424022] vdig2: supplied by vbat

[    1.428776] vpll: at 1800 mV 

[    1.431853] vpll: supplied by vbat

[    1.436521] vdac: at 1800 mV 

[    1.439601] vdac: supplied by vbat

[    1.444249] vaux1: at 1800 mV 

[    1.447441] vaux1: supplied by vbat

[    1.452179] vaux2: at 3300 mV 

[    1.455344] vaux2: supplied by vbat

[    1.460080] vaux33: at 3300 mV 

[    1.463349] vaux33: supplied by vbat

[    1.468211] vmmc: 1800 <--> 3300 mV at 3300 mV 

[    1.472879] vmmc: supplied by vbat

[    1.477907] tps65910-rtc tps65910-rtc: IRQ is not free.

[    1.483236] tps65910-rtc: probe of tps65910-rtc failed with error -22

[    1.491309] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz

[    1.497600] cpufreq_cpu0: Bootloader freq 624000000Hz no match to table, Using 600000000Hz

[    1.507319] UBI error: ubi_init: cannot open mtd NAND.rootfs, error -2

[    1.576234] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6

[    1.582418] davinci_mdio 4a101000.mdio: detected phy mask fffffff7

[    1.589402] libphy: 4a101000.mdio: probed

[    1.593471] davinci_mdio 4a101000.mdio: phy[3]: device 4a101000.mdio:03, driver unknown

[    1.602405] Missing slave[1] phy_id property

[    1.606771] cpsw: platform data missing

[    1.611479] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)

[    1.623444] platform 4a100000.ethernet: omap_device_late_idle: enabled but no driver.  Idling

[    1.632809] UBIFS error (pid 1): ubifs_mount: cannot open "ubi0:rootfs", error -19

[    1.640529] VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0): error -19

[    1.648642] Please append a correct "root=" boot option; here are the available partitions:

[    1.657133] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

  • Sorry, SDK 7.0 is obsolete since more than 3 years ago, and is no longer supported by TI. Please move to the new Processor SDK: www.ti.com/.../PROCESSOR-SDK-AM335X
  • Dear Biser,

    Thank you very much for your help. I now used SDK ti-processor-sdk-linux-am335x-evm-05.02.00.10, but it still doesn't work.

    am335x-evmsk.dts:

    /*
    * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
    *
    * This program is free software; you can redistribute it and/or modify
    * it under the terms of the GNU General Public License version 2 as
    * published by the Free Software Foundation.
    */

    /*
    * AM335x Starter Kit
    * www.ti.com/.../tmdssk3358
    */

    /dts-v1/;

    #include "am33xx.dtsi"
    #include <dt-bindings/pwm/pwm.h>
    #include <dt-bindings/interrupt-controller/irq.h>

    / {
    model = "TI AM335x EVM-SK";
    compatible = "ti,am335x-evmsk", "ti,am33xx";

    cpus {
    cpu@0 {
    cpu0-supply = <&vdd1_reg>;
    };
    };

    memory@80000000 {
    device_type = "memory";
    reg = <0x80000000 0x10000000>; /* 256 MB */
    };

    chosen {
    stdout-path = &uart0;
    };

    vbat: fixedregulator0 {
    compatible = "regulator-fixed";
    regulator-name = "vbat";
    regulator-min-microvolt = <5000000>;
    regulator-max-microvolt = <5000000>;
    regulator-boot-on;
    };

    lis3_reg: fixedregulator1 {
    compatible = "regulator-fixed";
    regulator-name = "lis3_reg";
    regulator-boot-on;
    };


    };

    &am33xx_pinmux {
    pinctrl-names = "default";
    pinctrl-0 = <&clkout2_pin &ddr3_vtt_toggle>;

    ddr3_vtt_toggle: ddr3_vtt_toggle {
    pinctrl-single,pins = <
    0x164 (PIN_OUTPUT | MUX_MODE7) /* ecap0_in_pwm0_out.gpio0_7 */
    >;
    };


    i2c0_pins: pinmux_i2c0_pins {
    pinctrl-single,pins = <
    AM33XX_IOPAD(0x988, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
    AM33XX_IOPAD(0x98c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
    >;
    };

    uart0_pins: pinmux_uart0_pins {
    pinctrl-single,pins = <
    AM33XX_IOPAD(0x970, PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
    AM33XX_IOPAD(0x974, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
    >;
    };

    uart1_pins: pinmux_uart0_pins {
    pinctrl-single,pins = <
    AM33XX_IOPAD(0x980, PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
    AM33XX_IOPAD(0x984, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
    >;
    };

    uart2_pins: pinmux_uart0_pins {
    pinctrl-single,pins = <
    AM33XX_IOPAD(0x950, PIN_INPUT_PULLUP | MUX_MODE1) /* uart0_rxd.uart0_rxd */
    AM33XX_IOPAD(0x954, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* uart0_txd.uart0_txd */
    >;
    };

    nandflash_pins_s0: nandflash_pins_s0 {
    pinctrl-single,pins = <
    AM33XX_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */
    AM33XX_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */
    AM33XX_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */
    AM33XX_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */
    AM33XX_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */
    AM33XX_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */
    AM33XX_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */
    AM33XX_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */
    AM33XX_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */
    AM33XX_IOPAD(0x874, PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_30 */
    AM33XX_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */
    AM33XX_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */
    AM33XX_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */
    AM33XX_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */
    AM33XX_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */
    >;
    };

    clkout2_pin: pinmux_clkout2_pin {
    pinctrl-single,pins = <
    AM33XX_IOPAD(0x9b4, PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
    >;
    };

    cpsw_default: cpsw_default {
    pinctrl-single,pins = <
    /* Slave 1 */
    AM33XX_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txen.rgmii1_tctl */
    AM33XX_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxdv.rgmii1_rctl */
    AM33XX_IOPAD(0x91c, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd3.rgmii1_td3 */
    AM33XX_IOPAD(0x920, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd2.rgmii1_td2 */
    AM33XX_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd1.rgmii1_td1 */
    AM33XX_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txd0.rgmii1_td0 */
    AM33XX_IOPAD(0x92c, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mii1_txclk.rgmii1_tclk */
    AM33XX_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxclk.rgmii1_rclk */
    AM33XX_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd3.rgmii1_rd3 */
    AM33XX_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd2.rgmii1_rd2 */
    AM33XX_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd1.rgmii1_rd1 */
    AM33XX_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE2) /* mii1_rxd0.rgmii1_rd0 */

    /* Slave 2 */
    AM33XX_IOPAD(0x840, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a0.rgmii2_tctl */
    AM33XX_IOPAD(0x844, PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a1.rgmii2_rctl */
    AM33XX_IOPAD(0x848, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a2.rgmii2_td3 */
    AM33XX_IOPAD(0x84c, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a3.rgmii2_td2 */
    AM33XX_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a4.rgmii2_td1 */
    AM33XX_IOPAD(0x854, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a5.rgmii2_td0 */
    AM33XX_IOPAD(0x858, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a6.rgmii2_tclk */
    AM33XX_IOPAD(0x85c, PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a7.rgmii2_rclk */
    AM33XX_IOPAD(0x860, PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a8.rgmii2_rd3 */
    AM33XX_IOPAD(0x864, PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a9.rgmii2_rd2 */
    AM33XX_IOPAD(0x868, PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a10.rgmii2_rd1 */
    AM33XX_IOPAD(0x86c, PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a11.rgmii2_rd0 */
    >;
    };

    cpsw_sleep: cpsw_sleep {
    pinctrl-single,pins = <
    /* Slave 1 reset value */
    AM33XX_IOPAD(0x914, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x91c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x920, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x924, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x928, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x92c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE7)

    /* Slave 2 reset value*/
    AM33XX_IOPAD(0x840, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x844, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x848, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x84c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x850, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x854, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x858, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x85c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x860, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x864, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x868, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x86c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    >;
    };

    davinci_mdio_default: davinci_mdio_default {
    pinctrl-single,pins = <
    /* MDIO */
    AM33XX_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
    AM33XX_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
    >;
    };

    davinci_mdio_sleep: davinci_mdio_sleep {
    pinctrl-single,pins = <
    /* MDIO reset value */
    AM33XX_IOPAD(0x948, PIN_INPUT_PULLDOWN | MUX_MODE7)
    AM33XX_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    >;
    };
    };

    &uart0 {
    pinctrl-names = "default";
    pinctrl-0 = <&uart0_pins>;

    status = "okay";
    };

    &uart1 {
    pinctrl-names = "default";
    pinctrl-0 = <&uart1_pins>;

    status = "okay";
    };

    &uart2 {
    pinctrl-names = "default";
    pinctrl-0 = <&uart2_pins>;

    status = "okay";
    };

    &gpmc {
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <&nandflash_pins_s0>;
    ranges = <0 0 0x08000000 0x8000000>; /* CS0: 128MB for NAND */
    nand@0,0 {
    compatible = "ti,omap2-nand";
    reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
    interrupt-parent = <&gpmc>;
    interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
    <1 IRQ_TYPE_NONE>; /* termcount */
    rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 */
    ti,nand-xfer-type = "prefetch-dma";
    ti,nand-ecc-opt = "bch8";
    ti,elm-id = <&elm>;
    nand-bus-width = <8>;
    gpmc,device-width = <1>;
    gpmc,sync-clk-ps = <0>;
    gpmc,cs-on-ns = <0>;
    gpmc,cs-rd-off-ns = <44>;
    gpmc,cs-wr-off-ns = <44>;
    gpmc,adv-on-ns = <6>;
    gpmc,adv-rd-off-ns = <34>;
    gpmc,adv-wr-off-ns = <44>;
    gpmc,we-on-ns = <0>;
    gpmc,we-off-ns = <40>;
    gpmc,oe-on-ns = <0>;
    gpmc,oe-off-ns = <54>;
    gpmc,access-ns = <64>;
    gpmc,rd-cycle-ns = <82>;
    gpmc,wr-cycle-ns = <82>;
    gpmc,bus-turnaround-ns = <0>;
    gpmc,cycle2cycle-delay-ns = <0>;
    gpmc,clk-activation-ns = <0>;
    gpmc,wr-access-ns = <40>;
    gpmc,wr-data-mux-bus-ns = <0>;
    /* MTD partition table */
    /* All SPL-* partitions are sized to minimal length
    * which can be independently programmable. For
    * NAND flash this is equal to size of erase-block */
    #address-cells = <1>;
    #size-cells = <1>;
    partition@0 {
    label = "NAND.SPL";
    reg = <0x00000000 0x000020000>;
    };
    partition@1 {
    label = "NAND.SPL.backup1";
    reg = <0x00020000 0x00020000>;
    };
    partition@2 {
    label = "NAND.SPL.backup2";
    reg = <0x00040000 0x00020000>;
    };
    partition@3 {
    label = "NAND.SPL.backup3";
    reg = <0x00060000 0x00020000>;
    };
    partition@4 {
    label = "NAND.u-boot-spl-os";
    reg = <0x00080000 0x00040000>;
    };
    partition@5 {
    label = "NAND.u-boot";
    reg = <0x000C0000 0x00100000>;
    };
    partition@6 {
    label = "NAND.u-boot-env";
    reg = <0x001C0000 0x00020000>;
    };
    partition@7 {
    label = "NAND.u-boot-env.backup1";
    reg = <0x001E0000 0x00020000>;
    };
    partition@8 {
    label = "NAND.kernel";
    reg = <0x00200000 0x00800000>;
    };
    partition@9 {
    label = "NAND.rootfs";
    reg = <0x00A00000 0x0F600000>;
    };
    };
    };

    &i2c0 {
    pinctrl-names = "default";
    pinctrl-0 = <&i2c0_pins>;

    status = "okay";
    clock-frequency = <400000>;

    tps: tps@2d {
    reg = <0x2d>;
    };

    lis331dlh: lis331dlh@18 {
    compatible = "st,lis331dlh", "st,lis3lv02d";
    reg = <0x18>;
    Vdd-supply = <&lis3_reg>;
    Vdd_IO-supply = <&lis3_reg>;

    st,click-single-x;
    st,click-single-y;
    st,click-single-z;
    st,click-thresh-x = <10>;
    st,click-thresh-y = <10>;
    st,click-thresh-z = <10>;
    st,irq1-click;
    st,irq2-click;
    st,wakeup-x-lo;
    st,wakeup-x-hi;
    st,wakeup-y-lo;
    st,wakeup-y-hi;
    st,wakeup-z-lo;
    st,wakeup-z-hi;
    st,min-limit-x = <120>;
    st,min-limit-y = <120>;
    st,min-limit-z = <140>;
    st,max-limit-x = <550>;
    st,max-limit-y = <550>;
    st,max-limit-z = <750>;
    };

    tlv320aic3106: tlv320aic3106@1b {
    #sound-dai-cells = <0>;
    compatible = "ti,tlv320aic3106";
    reg = <0x1b>;
    status = "okay";

    /* Regulators */
    AVDD-supply = <&vaux2_reg>;
    IOVDD-supply = <&vaux2_reg>;
    DRVDD-supply = <&vaux2_reg>;
    DVDD-supply = <&vbat>;
    };
    };


    &wkup_m3_ipc {
    ti,needs-vtt-toggle;
    ti,vtt-gpio-pin = <7>;
    ti,scale-data-fw = "am335x-evm-scale-data.bin";
    };

    #include "tps65910.dtsi"

    &tps {
    vcc1-supply = <&vbat>;
    vcc2-supply = <&vbat>;
    vcc3-supply = <&vbat>;
    vcc4-supply = <&vbat>;
    vcc5-supply = <&vbat>;
    vcc6-supply = <&vbat>;
    vcc7-supply = <&vbat>;
    vccio-supply = <&vbat>;

    regulators {
    vrtc_reg: regulator@0 {
    regulator-always-on;
    };

    vio_reg: regulator@1 {
    regulator-always-on;
    };

    vdd1_reg: regulator@2 {
    /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
    regulator-name = "vdd_mpu";
    regulator-min-microvolt = <912500>;
    regulator-max-microvolt = <1351500>;
    regulator-boot-on;
    regulator-always-on;
    };

    vdd2_reg: regulator@3 {
    /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
    regulator-name = "vdd_core";
    regulator-min-microvolt = <912500>;
    regulator-max-microvolt = <1150000>;
    regulator-boot-on;
    regulator-always-on;
    };

    vdd3_reg: regulator@4 {
    regulator-always-on;
    };

    vdig1_reg: regulator@5 {
    regulator-always-on;
    };

    vdig2_reg: regulator@6 {
    regulator-always-on;
    };

    vpll_reg: regulator@7 {
    regulator-always-on;
    };

    vdac_reg: regulator@8 {
    regulator-always-on;
    };

    vaux1_reg: regulator@9 {
    regulator-always-on;
    };

    vaux2_reg: regulator@10 {
    regulator-always-on;
    };

    vaux33_reg: regulator@11 {
    regulator-always-on;
    };

    vmmc_reg: regulator@12 {
    regulator-min-microvolt = <1800000>;
    regulator-max-microvolt = <3300000>;
    regulator-always-on;
    };
    };
    };

    &mac {
    pinctrl-names = "default", "sleep";
    pinctrl-0 = <&cpsw_default>;
    pinctrl-1 = <&cpsw_sleep>;
    dual_emac = <1>;
    status = "okay";
    };

    &davinci_mdio {
    pinctrl-names = "default", "sleep";
    pinctrl-0 = <&davinci_mdio_default>;
    pinctrl-1 = <&davinci_mdio_sleep>;
    status = "okay";
    };

    &cpsw_emac0 {
    phy_id = <&davinci_mdio>, <0>;
    phy-mode = "rgmii-txid";
    dual_emac_res_vlan = <3>;
    };


    &gpio0 {
    ti,no-reset-on-init;
    };


    &rtc {
    clocks = <&clk_32768_ck>, <&clkdiv32k_ick>;
    clock-names = "ext-clk", "int-clk";
    };

    &pruss_soc_bus {
    status = "okay";

    pruss: pruss@0 {
    status = "okay";
    };
    };



    Boot log:

    U-Boot 2013.10-00189-g78d8ebd-dirty (Mar 15 2019 - 15:15:44)

    I2C: ready
    DRAM: 256 MiB
    NAND: 128 MiB
    MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
    *** Warning - bad CRC, using default environment

    Net: <ethaddr> not set. Validating first E-fuse MAC
    cpsw, usb_ether
    Hit any key to stop autoboot: 0
    Booting from nand ...

    NAND read: device 0 offset 0x80000, size 0x40000
    262144 bytes read: OK

    NAND read: device 0 offset 0x200000, size 0x800000
    8388608 bytes read: OK
    Kernel image @ 0x80200000 [ 0x000000 - 0x3b0200 ]
    ## Flattened Device Tree blob at 80f80000
    Booting using the fdt blob at 0x80f80000
    Loading Device Tree to 8f307000, end 8f313006 ... OK

    Starting kernel ...

    [ 0.000000] Booting Linux on physical CPU 0x0
    [ 0.000000] Linux version 4.14.79-gbde58ab01e (mei@ubuntu) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #1 PREEMPT Tue Mar 19 00:11:55 PDT 2019
    [ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [ 0.000000] OF: fdt: Machine model: TI AM335x EVM-SK
    [ 0.000000] Memory policy: Data cache writeback
    [ 0.000000] efi: Getting EFI parameters from FDT:
    [ 0.000000] efi: UEFI not found.
    [ 0.000000] cma: Reserved 48 MiB at 0x8c000000
    [ 0.000000] CPU: All CPU(s) started in SVC mode.
    [ 0.000000] AM335X ES2.1 (neon)
    [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 64960
    [ 0.000000] Kernel command line: console=ttyO0,115200n8 root=ubi0:rootfs rw ubi.mtd=NAND.rootfs,2048 rootfstype=ubifs rootwait=1
    [ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
    [ 0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
    [ 0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
    [ 0.000000] Memory: 197284K/262144K available (8192K kernel code, 319K rwdata, 2484K rodata, 1024K init, 267K bss, 15708K reserved, 49152K cma-reserved, 0K highmem)
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
    [ 0.000000] vmalloc : 0xd0800000 - 0xff800000 ( 752 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xd0000000 ( 256 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
    [ 0.000000] .text : 0xc0008000 - 0xc0900000 (9184 kB)
    [ 0.000000] .init : 0xc0c00000 - 0xc0d00000 (1024 kB)
    [ 0.000000] .data : 0xc0d00000 - 0xc0d4fd40 ( 320 kB)
    [ 0.000000] .bss : 0xc0d4fd40 - 0xc0d92a8c ( 268 kB)
    [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [ 0.000000] Preemptible hierarchical RCU implementation.
    [ 0.000000] Tasks RCU enabled.
    [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [ 0.000000] OMAP clockevent source: timer2 at 26000000 Hz
    [ 0.000018] sched_clock: 32 bits at 26MHz, resolution 38ns, wraps every 82595524588ns
    [ 0.000044] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 73510017198 ns
    [ 0.000059] OMAP clocksource: timer1 at 26000000 Hz
    [ 0.000263] timer_probe: no matching timers found
    [ 0.000516] Console: colour dummy device 80x30
    [ 0.000549] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [ 0.000558] This ensures that you still see kernel messages. Please
    [ 0.000565] update your kernel commandline.
    [ 0.000605] Calibrating delay loop... 623.41 BogoMIPS (lpj=3117056)
    [ 0.048883] pid_max: default: 32768 minimum: 301
    [ 0.049121] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [ 0.049140] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [ 0.050106] CPU: Testing write buffer coherency: ok
    [ 0.050182] CPU0: Spectre v2: using BPIALL workaround
    [ 0.051008] Setting up static identity map for 0x80100000 - 0x80100060
    [ 0.051204] Hierarchical SRCU implementation.
    [ 0.051650] EFI services will not be available.
    [ 0.053470] devtmpfs: initialized
    [ 0.063710] random: get_random_u32 called from bucket_table_alloc+0x8c/0x1ac with crng_init=0
    [ 0.064299] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [ 0.064663] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [ 0.064690] futex hash table entries: 256 (order: -1, 3072 bytes)
    [ 0.069224] pinctrl core: initialized pinctrl subsystem
    [ 0.070098] DMI not present or invalid.
    [ 0.070597] NET: Registered protocol family 16
    [ 0.073387] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [ 0.090769] omap_hwmod: debugss: _wait_target_disable failed
    [ 0.094405] omap_hwmod: d_can0: _wait_target_ready failed: -16
    [ 0.094418] omap_hwmod: d_can0: cannot be enabled for reset (3)
    [ 0.097382] omap_hwmod: d_can1: _wait_target_ready failed: -16
    [ 0.097392] omap_hwmod: d_can1: cannot be enabled for reset (3)
    [ 0.150822] cpuidle: using governor ladder
    [ 0.150866] cpuidle: using governor menu
    [ 0.156447] OMAP GPIO hardware version 0.1
    [ 0.165712] omap-gpmc 50000000.gpmc: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/nandflash_pins_s0, deferring probe
    [ 0.168052] No ATAGs?
    [ 0.168070] hw-breakpoint: debug architecture 0x4 unsupported.
    [ 0.184892] edma 49000000.edma: TI EDMA DMA engine driver
    [ 0.189217] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
    [ 0.189382] media: Linux media interface: v0.10
    [ 0.189442] Linux video capture interface: v2.00
    [ 0.189585] pps_core: LinuxPPS API ver. 1 registered
    [ 0.189597] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [ 0.189628] PTP clock support registered
    [ 0.189672] EDAC MC: Ver: 3.0.0
    [ 0.190219] dmi: Firmware registration failed.
    [ 0.190737] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [ 0.191153] Advanced Linux Sound Architecture Driver Initialized.
    [ 0.192571] clocksource: Switched to clocksource timer1
    [ 0.203272] NET: Registered protocol family 2
    [ 0.204180] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.204224] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.204259] TCP: Hash tables configured (established 2048 bind 2048)
    [ 0.204379] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [ 0.204406] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [ 0.204603] NET: Registered protocol family 1
    [ 0.205137] RPC: Registered named UNIX socket transport module.
    [ 0.205155] RPC: Registered udp transport module.
    [ 0.205165] RPC: Registered tcp transport module.
    [ 0.205174] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [ 0.206194] hw perfevents: no interrupt-affinity property for /pmu, guessing.
    [ 0.206342] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [ 0.208151] workingset: timestamp_bits=14 max_order=16 bucket_order=2
    [ 0.213931] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [ 0.214921] NFS: Registering the id_resolver key type
    [ 0.214972] Key type id_resolver registered
    [ 0.214982] Key type id_legacy registered
    [ 0.215041] ntfs: driver 2.1.32 [Flags: R/O].
    [ 0.217656] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [ 0.217682] io scheduler noop registered
    [ 0.217693] io scheduler deadline registered
    [ 0.217976] io scheduler cfq registered (default)
    [ 0.217990] io scheduler mq-deadline registered
    [ 0.218000] io scheduler kyber registered
    [ 0.219447] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [ 0.285025] Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
    [ 0.288890] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 30, base_baud = 3000000) is a 8250
    [ 0.921902] console [ttyS0] enabled
    [ 0.925802] pinctrl-single 44e10800.pinmux: pin PIN84 already requested by 44e09000.serial; cannot claim for 48022000.serial
    [ 0.936701] pinctrl-single 44e10800.pinmux: pin-84 (48022000.serial) status -22
    [ 0.943789] pinctrl-single 44e10800.pinmux: could not request pin 84 (PIN84) from group pinmux_uart0_pins on device pinctrl-single
    [ 0.955231] omap8250 48022000.serial: Error applying setting, reverse things back
    [ 0.962484] omap8250: probe of 48022000.serial failed with error -22
    [ 0.968717] pinctrl-single 44e10800.pinmux: pin PIN84 already requested by 44e09000.serial; cannot claim for 48024000.serial
    [ 0.979583] pinctrl-single 44e10800.pinmux: pin-84 (48024000.serial) status -22
    [ 0.986668] pinctrl-single 44e10800.pinmux: could not request pin 84 (PIN84) from group pinmux_uart0_pins on device pinctrl-single
    [ 0.998107] omap8250 48024000.serial: Error applying setting, reverse things back
    [ 1.005368] omap8250: probe of 48024000.serial failed with error -22
    [ 1.013349] omap_rng 48310000.rng: Random Number Generator ver. 20
    [ 1.034484] brd: module loaded
    [ 1.045774] loop: module loaded
    [ 1.051288] libphy: Fixed MDIO Bus: probed
    [ 1.122670] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [ 1.130086] davinci_mdio 4a101000.mdio: detected phy mask fffffff7
    [ 1.137393] libphy: 4a101000.mdio: probed
    [ 1.141292] davinci_mdio 4a101000.mdio: phy[3]: device 4a101000.mdio:03, driver NS DP83848C 10/100 Mbps PHY
    [ 1.151882] cpsw 4a100000.ethernet: No slave[1] phy_id, phy-handle, or fixed-link property
    [ 1.160014] cpsw 4a100000.ethernet: Missing dual_emac_res_vlan in DT.
    [ 1.166342] cpsw 4a100000.ethernet: Using 2 as Reserved VLAN for 1 slave
    [ 1.172875] cpsw 4a100000.ethernet: Detected MACID = 10:ce:a9:9e:d7:68
    [ 1.179324] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4
    [ 1.185533] cpsw 4a100000.ethernet: ALE Table size 1024
    [ 1.190633] cpsw 4a100000.ethernet: cpts: overflow check period 500 (jiffies)
    [ 1.198584] cpsw 4a100000.ethernet: cpsw: Detected MACID = 10:ce:a9:9e:d7:6a
    [ 1.206999] i2c /dev entries driver
    [ 1.210898] IR NEC protocol handler initialized
    [ 1.215361] IR RC5(x/sz) protocol handler initialized
    [ 1.220242] IR RC6 protocol handler initialized
    [ 1.224637] IR JVC protocol handler initialized
    [ 1.229012] IR Sony protocol handler initialized
    [ 1.233488] IR SANYO protocol handler initialized
    [ 1.238032] IR Sharp protocol handler initialized
    [ 1.242714] IR MCE Keyboard/mouse protocol handler initialized
    [ 1.248352] IR XMP protocol handler initialized
    [ 1.254675] cpuidle: enable-method property 'ti,am3352' found operations
    [ 1.261557] sdhci: Secure Digital Host Controller Interface driver
    [ 1.267617] sdhci: Copyright(c) Pierre Ossman
    [ 1.272206] sdhci-pltfm: SDHCI platform and OF driver helper
    [ 1.278398] ledtrig-cpu: registered to indicate activity on CPUs
    [ 1.288171] NET: Registered protocol family 10
    [ 1.294341] Segment Routing with IPv6
    [ 1.298000] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [ 1.304721] NET: Registered protocol family 17
    [ 1.309334] Key type dns_resolver registered
    [ 1.313911] omap_voltage_late_init: Voltage driver support not added
    [ 1.326723] omap-gpmc 50000000.gpmc: GPMC revision 6.0
    [ 1.331717] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000
    [ 1.339823] nand: No NAND device found
    [ 1.343623] omap2-nand 8000000.nand: scan failed, may be bus-width mismatch
    [ 1.372862] tps65910 0-002d: No interrupt support, no core IRQ
    [ 1.380831] vrtc: supplied by vbat
    [ 1.388028] vio: supplied by vbat
    [ 1.392842] vdd1: supplied by vbat
    [ 1.398057] vdd2: supplied by vbat
    [ 1.404822] vdig1: supplied by vbat
    [ 1.408257] random: fast init done
    [ 1.412955] vdig2: supplied by vbat
    [ 1.417764] vpll: supplied by vbat
    [ 1.422527] vdac: supplied by vbat
    [ 1.427311] vaux1: supplied by vbat
    [ 1.432138] vaux2: supplied by vbat
    [ 1.436999] vaux33: supplied by vbat
    [ 1.441901] vmmc: supplied by vbat
    [ 1.446680] vbb: supplied by vbat
    [ 1.451814] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [ 1.458449] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 624000 KHz
    [ 1.465704] cpu cpu0: dev_pm_opp_set_rate: failed to find current OPP for freq 624000000 (-34)
    [ 1.474475] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 600000 KHz
    [ 1.483310] UBI error: cannot open mtd NAND.rootfs, error -2
    [ 1.489084] hctosys: unable to open rtc device (rtc0)
    [ 1.494730] lis3_reg: disabling
    [ 1.498005] ALSA device list:
    [ 1.500882] No soundcards found.
    [ 1.505064] VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0): error -19
    [ 1.512938] Please append a correct "root=" boot option; here are the available partitions:
    [ 1.521025] 0100 65536 ram0
    [ 1.521032] (driver?)
    [ 1.526991] 0101 65536 ram1
    [ 1.526996] (driver?)
    [ 1.532964] 0102 65536 ram2
    [ 1.532969] (driver?)
    [ 1.538869] 0103 65536 ram3
    [ 1.538873] (driver?)
    [ 1.544797] 0104 65536 ram4
    [ 1.544802] (driver?)
    [ 1.550701] 0105 65536 ram5
    [ 1.550705] (driver?)
    [ 1.556650] 0106 65536 ram6
    [ 1.556655] (driver?)
    [ 1.562573] 0107 65536 ram7
    [ 1.562579] (driver?)
    [ 1.568476] 0108 65536 ram8
    [ 1.568481] (driver?)
    [ 1.574397] 0109 65536 ram9
    [ 1.574402] (driver?)
    [ 1.580300] 010a 65536 ram10
    [ 1.580304] (driver?)
    [ 1.586332] 010b 65536 ram11
    [ 1.586337] (driver?)
    [ 1.592318] 010c 65536 ram12
    [ 1.592323] (driver?)
    [ 1.598326] 010d 65536 ram13
    [ 1.598331] (driver?)
    [ 1.604354] 010e 65536 ram14
    [ 1.604360] (driver?)
    [ 1.610341] 010f 65536 ram15
    [ 1.610346] (driver?)
    [ 1.616359] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
    [ 1.624357] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
  • Hello yongpam,

    Please, try to find out why the nand_get_flash_type function exits with error and the NAND device is not found.
    [ 1.339823] nand: No NAND device found

    <Processor SDK>/board-support/linux-<version>/drivers/mtd/nand/nand_base.c

    	/* Read the flash type */
    	type = nand_get_flash_type(mtd, chip, &nand_maf_id,
    				   &nand_dev_id, table);
    
    	if (IS_ERR(type)) {
    		if (!(chip->options & NAND_SCAN_SILENT_NODEV))
    			pr_warn("No NAND device found\n");
    		chip->select_chip(mtd, -1);
    		return PTR_ERR(type);
    	}

    Best regards,
    Kemal

  • Dear TI,
    The problem has been resolved, it caused by incorrect SYSBOOT[15:14], i used 25M oscillator, but SYSBOOT[15:14] be initialied 11b, so kernel clock be set to 26M.

  • Yes, this is correct. Now I remember the similar issue was addressed in this, this and this thread. Thank you for providing the resolution and reminding me this.