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.

Boot fails on custom AM335x board

I have a custom am335x board currently working with ti-linux-3.12.y, and I am currently trying to get ti-linux-3.14.y to work.  After resolving a minor issue with u-boot, the kernel starts, but stops part way through, like so:

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 3.14.31p1-00373-g4761520-dirty (matthew@sylvester) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03) ) #24 Mon Jun 22 15:18:59 EDT 2015
[    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 model: TI AM335x ICG P3
[    0.000000] cma: CMA: reserved 24 MiB at 9d800000
[    0.000000] Memory policy: 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: 129536
[    0.000000] Kernel command line: console=ttyO0,115200n8 musb_hdrc.use_dma=n root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait
[    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: 484488K/522240K available (5411K kernel code, 600K rwdata, 1880K rodata, 334K init, 227K bss, 37752K 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 : 0xe0800000 - 0xff000000   ( 488 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc072704c   (7293 kB)
[    0.000000]       .init : 0xc0728000 - 0xc077bbfc   ( 335 kB)
[    0.000000]       .data : 0xc077c000 - 0xc0812178   ( 601 kB)
[    0.000000]        .bss : 0xc0812178 - 0xc084b020   ( 228 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 24000000 Hz
[    0.000013] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956969942ns
[    0.000033] OMAP clocksource: timer1 at 24000000 Hz
[    0.000286] Console: colour dummy device 80x30
[    0.000315] Calibrating delay loop... 795.44 BogoMIPS (lpj=3977216)
[    0.089426] pid_max: default: 32768 minimum: 301
[    0.089523] Security Framework initialized
[    0.089617] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.089627] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.096463] CPU: Testing write buffer coherency: ok
[    0.096820] Setting up static identity map for 0x8054e8a0 - 0x8054e910
[    0.100141] devtmpfs: initialized
[    0.101955] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[    0.109023] omap_hwmod: tptc0 using broken dt data from edma
[    0.109104] omap_hwmod: tptc1 using broken dt data from edma
[    0.109176] omap_hwmod: tptc2 using broken dt data from edma
[    0.113393] omap_hwmod: debugss: _wait_target_disable failed
[    0.168774] pinctrl core: initialized pinctrl subsystem
[    0.169706] regulator-dummy: no parameters
[    0.171882] NET: Registered protocol family 16
[    0.173818] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.176112] cpuidle: using governor ladder
[    0.176126] cpuidle: using governor menu
[    0.183780] syscon 44e10000.control_module: regmap [mem 0x44e10000-0x44e107fb] registered
[    0.185229] platform 49000000.edma: alias fck already exists
[    0.185254] platform 49000000.edma: alias fck already exists
[    0.185268] platform 49000000.edma: alias fck already exists
[    0.186338] OMAP GPIO hardware version 0.1
[    0.201283] No ATAGs?
[    0.201305] hw-breakpoint: debug architecture 0x4 unsupported.
[    0.220456] bio: create slab <bio-0> at 0
[    0.235041] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
[    0.236014] vbat: 5000 mV 
[    0.236520] wlan-en-regulator: 1800 mV 
[    0.239379] vgaarb: loaded
[    0.239899] i2c-core: driver [palmas] using legacy suspend method
[    0.239909] i2c-core: driver [palmas] using legacy resume method
[    0.240578] SCSI subsystem initialized
[    0.242054] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@44e10800/pinmux_i2c0_pins, deferring probe
[    0.242081] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral
[    0.242742] omap_i2c 4819c000.i2c: bus 2 rev0.11 at 400 kHz
[    0.243205] pps_core: LinuxPPS API ver. 1 registered
[    0.243216] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.243338] PTP clock support registered
[    0.245116] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
[    0.246874] Switched to clocksource timer1
[    0.264564] NET: Registered protocol family 2
[    0.265407] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.265464] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    0.265510] TCP: Hash tables configured (established 4096 bind 4096)
[    0.265577] TCP: reno registered
[    0.265591] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.265609] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.265797] NET: Registered protocol family 1
[    0.266093] RPC: Registered named UNIX socket transport module.
[    0.266104] RPC: Registered udp transport module.
[    0.266111] RPC: Registered tcp transport module.
[    0.266117] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.266519] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.266660] hw perfevents: enabled with ARMv7 Cortex-A8 PMU driver, 5 counters available
[    0.269505] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.401889] VFS: Disk quotas dquot_6.5.2
[    0.401960] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.402448] NFS: Registering the id_resolver key type
[    0.402542] Key type id_resolver registered
[    0.402551] Key type id_legacy registered
[    0.402589] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    0.402752] msgmni has been set to 994
[    0.404118] NET: Registered protocol family 38
[    0.404157] io scheduler noop registered
[    0.404165] io scheduler deadline registered
[    0.404191] io scheduler cfq registered (default)
[    0.405383] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
[    0.410710] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.413140] omap_uart 44e09000.serial: no wakeirq for uart0
[    0.413300] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud = 3000000) is a OMAP UART0
[    1.044448] console [ttyO0] enabled
[    1.048841] omap_uart 48022000.serial: no wakeirq for uart0
[    1.054775] 48022000.serial: ttyO1 at MMIO 0x48022000 (irq = 89, base_baud = 3000000) is a OMAP UART1
[    1.065022] omap_uart 48024000.serial: no wakeirq for uart0
[    1.070983] 48024000.serial: ttyO2 at MMIO 0x48024000 (irq = 90, base_baud = 3000000) is a OMAP UART2
[    1.081199] omap_uart 481a6000.serial: no wakeirq for uart0
[    1.087145] 481a6000.serial: ttyO3 at MMIO 0x481a6000 (irq = 60, base_baud = 3000000) is a OMAP UART3
[    1.097349] omap_uart 481a8000.serial: no wakeirq for uart0
[    1.103254] 481a8000.serial: ttyO4 at MMIO 0x481a8000 (irq = 61, base_baud = 3000000) is a OMAP UART4
[    1.113423] omap_uart 481aa000.serial: no wakeirq for uart0
[    1.119358] 481aa000.serial: ttyO5 at MMIO 0x481aa000 (irq = 62, base_baud = 3000000) is a OMAP UART5
[    1.130267] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
[    1.147436] brd: module loaded
[    1.155756] loop: module loaded
[    1.159371] (stk) :sysfs entries created
[    1.163505] (stk) : debugfs entries created 
[    1.171638] mtdoops: mtd device (mtddev=name/number) must be supplied
[    1.182247] mousedev: PS/2 mouse device common for all mice
[    1.189962] input: ti-tsc as /devices/ocp.3/44e0d000.tscadc/TI-am335x-tsc/input/input0
[    1.200451] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
[    1.207894] 44e3e000.rtc: already running
[    1.212811] i2c /dev entries driver
[    1.216858] Driver for 1-wire Dallas network protocol.
[    1.224152] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[    1.233357] omap_hsmmc 48060000.mmc: unable to get vmmc regulator -517
[    1.240336] platform 48060000.mmc: Driver omap_hsmmc requests probe deferral
[    1.248015] omap_hsmmc 481d8000.mmc: unable to get vmmc regulator -517
[    1.254894] platform 481d8000.mmc: Driver omap_hsmmc requests probe deferral
[    1.262602] omap_hsmmc 47810000.mmc: pins are not configured from the driver

or like so:

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 3.14.31p1-00373-g4761520-dirty (matthew@sylvester) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-20130313 - Linaro GCC 2013.03) ) #24 Mon Jun 22 15:18:59 EDT 2015
[    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 model: TI AM335x ICG P3
[    0.000000] cma: CMA: reserved 24 MiB at 9d800000
[    0.000000] Memory policy: 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: 129536
[    0.000000] Kernel command line: console=ttyO0,115200n8 musb_hdrc.use_dma=n root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait
[    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: 484488K/522240K available (5411K kernel code, 600K rwdata, 1880K rodata, 334K init, 227K bss, 37752K 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 : 0xe0800000 - 0xff000000   ( 488 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc072704c   (7293 kB)
[    0.000000]       .init : 0xc0728000 - 0xc077bbfc   ( 335 kB)
[    0.000000]       .data : 0xc077c000 - 0xc0812178   ( 601 kB)
[    0.000000]        .bss : 0xc0812178 - 0xc084b020   ( 228 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 24000000 Hz
[    0.000013] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956969942ns
[    0.000033] OMAP clocksource: timer1 at 24000000 Hz
[    0.000282] Console: colour dummy device 80x30
[    0.000311] Calibrating delay loop... 795.44 BogoMIPS (lpj=3977216)
[    0.089422] pid_max: default: 32768 minimum: 301
[    0.089517] Security Framework initialized
[    0.089608] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.089618] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.096465] CPU: Testing write buffer coherency: ok
[    0.096823] Setting up static identity map for 0x8054e8a0 - 0x8054e910
[    0.100142] devtmpfs: initialized
[    0.101950] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[    0.109031] omap_hwmod: tptc0 using broken dt data from edma
[    0.109113] omap_hwmod: tptc1 using broken dt data from edma
[    0.109186] omap_hwmod: tptc2 using broken dt data from edma
[    0.113402] omap_hwmod: debugss: _wait_target_disable failed
[    0.168789] pinctrl core: initialized pinctrl subsystem
[    0.169735] regulator-dummy: no parameters
[    0.171926] NET: Registered protocol family 16
[    0.173840] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.176144] cpuidle: using governor ladder
[    0.176160] cpuidle: using governor menu
[    0.183797] syscon 44e10000.control_module: regmap [mem 0x44e10000-0x44e107fb] registered
[    0.185255] platform 49000000.edma: alias fck already exists
[    0.185277] platform 49000000.edma: alias fck already exists
[    0.185291] platform 49000000.edma: alias fck already exists
[    0.186364] OMAP GPIO hardware version 0.1
[    0.201325] No ATAGs?
[    0.201347] hw-breakpoint: debug architecture 0x4 unsupported.
[    0.220478] bio: create slab <bio-0> at 0
[    0.235068] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
[    0.236038] vbat: 5000 mV 
[    0.236548] wlan-en-regulator: 1800 mV 
[    0.239477] vgaarb: loaded
[    0.239944] i2c-core: driver [palmas] using legacy suspend method
[    0.239954] i2c-core: driver [palmas] using legacy resume method
[    0.240625] SCSI subsystem initialized
[    0.242092] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@44e10800/pinmux_i2c0_pins, deferring probe
[    0.242118] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral
[    0.242787] omap_i2c 4819c000.i2c: bus 2 rev0.11 at 400 kHz
[    0.243237] pps_core: LinuxPPS API ver. 1 registered
[    0.243249] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.243375] PTP clock support registered
[    0.245162] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
[    0.246904] Switched to clocksource timer1
[    0.264635] NET: Registered protocol family 2
[    0.265472] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.265529] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    0.265576] TCP: Hash tables configured (established 4096 bind 4096)
[    0.265643] TCP: reno registered
[    0.265657] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.265675] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.265865] NET: Registered protocol family 1
[    0.266167] RPC: Registered named UNIX socket transport module.
[    0.266179] RPC: Registered udp transport module.
[    0.266186] RPC: Registered tcp transport module.
[    0.266192] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.266591] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.266728] hw perfevents: enabled with ARMv7 Cortex-A8 PMU driver, 5 counters available
[    0.269563] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.402334] VFS: Disk quotas dquot_6.5.2
[    0.402403] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.402892] NFS: Registering the id_resolver key type
[    0.402963] Key type id_resolver registered
[    0.402971] Key type id_legacy registered
[    0.403009] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    0.403177] msgmni has been set to 994
[    0.404541] NET: Registered protocol family 38
[    0.404578] io scheduler noop registered
[    0.404586] io scheduler deadline registered
[    0.404610] io scheduler cfq registered (default)
[    0.405803] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
[    0.411147] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.413599] omap_uart 44e09000.serial: no wakeirq for uart0
[    0.413757] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud = 3000000) is a OMAP UART0
[    1.045053] console [ttyO0] enabled
[    1.049439] omap_uart 48022000.serial: no wakeirq for uart0
[    1.055373] 48022000.serial: ttyO1 at MMIO 0x48022000 (irq = 89, base_baud = 3000000) is a OMAP UART1
[    1.065606] omap_uart 48024000.serial: no wakeirq for uart0
[    1.071564] 48024000.serial: ttyO2 at MMIO 0x48024000 (irq = 90, base_baud = 3000000) is a OMAP UART2
[    1.081784] omap_uart 481a6000.serial: no wakeirq for uart0
[    1.087728] 481a6000.serial: ttyO3 at MMIO 0x481a6000 (irq = 60, base_baud = 3000000) is a OMAP UART3
[    1.097904] omap_uart 481a8000.serial: no wakeirq for uart0
[    1.103808] 481a8000.serial: ttyO4 at MMIO 0x481a8000 (irq = 61, base_baud = 3000000) is a OMAP UART4
[    1.113990] omap_uart 481aa000.serial: no wakeirq for uart0
[    1.119919] 481aa000.serial: ttyO5 at MMIO 0x481aa000 (irq = 62, base_baud = 3000000) is a OMAP UART5
[    1.130833] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
[    1.148039] brd: module loaded
[    1.156347] loop: module loaded
[    1.159965] (stk) :sysfs entries created
[    1.164101] (stk) : debugfs entries created 
[    1.172249] mtdoops: mtd device (mtddev=name/number) must be supplied
[    1.182829] mousedev: PS/2 mouse device common for all mice
[    1.190573] input: ti-tsc as /devices/ocp.3/44e0d000.tscadc/TI-am335x-tsc/input/input0
[    1.201024] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
[    1.208467] 44e3e000.rtc: already running
[    1.213376] i2c /dev entries driver
[    1.217465] Driver for 1-wire Dallas network protocol.
[    1.224691] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[    1.233875] omap_hsmmc 48060000.mmc: unable to get vmmc regulator -517
[    1.240856] platform 48060000.mmc: Driver omap_hsmmc requests probe deferral
[    1.248538] omap_hsmmc 481d8000.mmc: unable to get vmmc regulator -517
[    1.255413] platform 481d8000.mmc: Driver omap_hsmmc requests probe deferral
[    1.263115] omap_hsmmc 47810000.mmc: pins are not configured from the driver
[    1.387792] ledtrig-cpu: registered to indicate activity on CPUs
[    1.394389] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
[    1.404758] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
[    1.410838] omap_hsmmc 47810000.mmc: card claims to support voltages below defined range
[    1.421043] platform 44d00000.wkup_m3: Driver wkup_m3 requests probe deferral
[    1.429705] oprofile: using arm/armv7
[    1.433833] TCP: cubic registered
[    1.437329] Initializing XFRM netlink socket
[    1.441797] NET: Registered protocol family 17
[    1.446481] NET: Registered protocol family 15
[    1.451176] 8021q: 802.1Q VLAN Support v1.8
[    1.455615] Key type dns_resolver registered
[    1.460865] cpu cpu0: of_pm_voltdm_notifier_register: Failed to get cpu0 regulator/voltdm: -517
[    1.469988] cpu cpu0: cpu0 clock notifier not ready, retry
[    1.475730] platform cpufreq-cpu0.0: Driver cpufreq-cpu0 requests probe deferral
[    1.484057] PM: Voltage scaling data blob not provided from DT.
[    1.490369] PM: bootloader does not support rtc-only!
[    1.495643] ThumbEE CPU extension supported.
[    1.501668] vbat: disabling
[    1.504594] regulator-dummy: disabling
[    1.510686] tps65910 0-002d: No interrupt support, no core IRQ

A few hours of searching hasn't helped find the cause of any of the error messages.

Here is my device tree file, in case it helps:

/dts-v1/;

#include "am33xx.dtsi"

/ {
	model = "TI AM335x ICG P3";
	compatible = "ti,am33xx", "ti,omap3";

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

	memory {
		device_type = "memory";
		reg = <0x80000000 0x20000000>; /* 512 MB */
	};

	am33xx_pinmux: pinmux@44e10800 {

		pinctrl-names = "default";
		pinctrl-0 = <&ddr3_vtt_toggle &rgmii2_pins &gpio_pins &gpio_led_pins
 			&mmc1_wp_only_pins &mmc2_pins &wlan_pins>;

		ddr3_vtt_toggle: ddr3_vtt_toggle {
			pinctrl-single,pins = <
				0x164 0x7	/* ecap0_in_pwm0_out.gpio0_7, OUTPUT | MODE7 */
			>;
		};

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

		i2c2_pins: pinmux_i2c2_pins {
			pinctrl-single,pins = <
				0x150 (PIN_INPUT_PULLUP | MUX_MODE2)	/* spi0_sclk.i2c2_sda */
				0x154 (PIN_INPUT_PULLUP | MUX_MODE2)	/* spi0_d0.itc2_scl */
			>;
		};

		rgmii2_pins: pinmux_rgmii2_pins {
			pinctrl-single,pins = <
				0x040 (PIN_OUTPUT         | MUX_MODE2)	/* gpmc_a0.rgmii2_tctl */
				0x044 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* gpmc_a1.rgmii2_rctl */
				0x048 (PIN_OUTPUT         | MUX_MODE2)	/* gpmc_a2.rgmii2_td3 */
				0x04C (PIN_OUTPUT         | MUX_MODE2)	/* gpmc_a3.rgmii2_td2 */
				0x050 (PIN_OUTPUT         | MUX_MODE2)	/* gpmc_a4.rgmii2_td1 */
				0x054 (PIN_OUTPUT         | MUX_MODE2)	/* gpmc_a5.rgmii2_td0 */
				0x058 (PIN_OUTPUT         | MUX_MODE2)	/* gpmc_a6.rgmii2_tclk */
				0x05C (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* gpmc_a7.rgmii2_rclk */
				0x060 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* gpmc_a8.rgmii2_rd3 */
				0x064 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* gpmc_a9.rgmii2_rd2 */
				0x068 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* gpmc_a10.rgmii2_rd1 */
				0x06C (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* gpmc_a11.rgmii2_rd0 */
			>;
		};

		davinci_mdio_default: davinci_mdio_default {
			pinctrl-single,pins = <
				/* MDIO */
				0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data, AM335X_RGMII1)MDIO_DATA */
				0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0)		         /* mdio_clk.mdio_clk, AM335X_RGMII1)MDIO_CLK */
			>;
		};

		davinci_mdio_sleep: davinci_mdio_sleep {
			pinctrl-single,pins = <
				/* MDIO reset value */
				0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* mdio_data.mdio_data, AM335X_RGMII1)MDIO_DATA */
				0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* mdio_clk.mdio_clk, AM335X_RGMII1)MDIO_CLK */
			>;
		};

		gpio_pins: pinmux_gpio_pins {
			pinctrl-single,pins = <
				0x098 (PIN_INPUT           | MUX_MODE7)	/* gpmc_wen.gpio2_4, GPIO_KEY1 */
				0x094 (PIN_INPUT           | MUX_MODE7)	/* gpmc_oen_ren.gpio2_3, GPIO_KEY2 */
				0x090 (PIN_INPUT           | MUX_MODE7)	/* gpmc_advn_ale.gpio2_2, GPIO_KEY3 */
				0x09C (PIN_INPUT           | MUX_MODE7)	/* gpmc_be0n_cle.gpio2_5, GPIO_KEY4 */
				0x020 (PIN_INPUT           | MUX_MODE7)	/* gpmc_ad8.gpio0_22, AM335X_GPIO0_22 */
				0x024 (PIN_INPUT           | MUX_MODE7)	/* gpmc_ad9.gpio0_23, AM335X_GPIO0_23 */
				0x0C8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data10.gpio2_16, WWAN_IN_WAKEn */
				0x0CC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data11.gpio2_17, WWAN_GPS_DISn */
				0x0D0 (PIN_INPUT           | MUX_MODE7)	/* lcd_data12.gpio0_8, WWAN_GPIO5 */
				0x0D4 (PIN_INPUT           | MUX_MODE7)	/* lcd_data13.gpio0_9, WWAN_OUT_WAKEn */
				0x1A4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* mcasp0_fsr.gpio3_19, WWAN_DISn */
				0x140 (PIN_INPUT_PULLDOWN  | MUX_MODE7)	/* mii1_rxd0.gpio2_21, WWAN_RSTn */
				0x0E8 (PIN_INPUT           | MUX_MODE7)	/* lcd_pclk.gpio2_24, USNAP_MDET */
				0x028 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* gpmc_ad10.gpio0_26, UART2_RST */
				0x02C (PIN_INPUT_PULLDOWN  | MUX_MODE7)	/* gpmc_ad11.gpio0_27, AM335X_LCD_DATA20 */
				0x0A0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data0.gpio2_6, AM335X_LCD_DATA0 */
				0x0A4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data1.gpio2_7, AM335X_LCD_DATA1 */
				0x0A8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data2.gpio2_8, AM335X_LCD_DATA2 */
				0x0AC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data3.gpio2_9, AM335X_LCD_DATA3 */
				0x0BC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data7.gpio2_13, AM335X_LCD_DATA7 */
				0x158 (PIN_INPUT_PULLUP    | MUX_MODE7)	/* spi0_d1.gpio0_4, RTC_INT */
				0x15C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* spi0_cs0.gpio0_5, AM335X_UART3_485CTL */
				0x0EC (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_ac_bias_en.gpio2_25, PMIC_INT1_GPIO */
				0x1A0 (PIN_INPUT_PULLUP    | MUX_MODE7)	/* mcasp0_aclkr.gpio3_18, AM335X_USB1_OC */
			>;
		};

		gpio_led_pins: pinmux_gpio_led_pins {
			pinctrl-single,pins = <
				0x13C (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* mii1_rxd1.gpio2_20, AM335X_GPIO_LED1 */
				0x78 (PIN_OUTPUT_PULLDOWN  | MUX_MODE7)	/* gpmc_be1n.gpio1_28, AM335X_GPIO_LED2 */
				0x0E0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_vsync.gpio2_22, AM335X_GPIO_LED3 */
				0x0E4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_hsync.gpio2_23, AM335X_GPIO_LED4 */
				0x0B8 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data6.gpio2_12, AM335X_GPIO_LED5 */
				0x0B0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data4.gpio2_10, LED_GP */
				0x0B4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* lcd_data5.gpio2_11, LED_RP */
			>;
		};

		mcasp1_pins: pinmux_mcasp1_pins {
			pinctrl-single,pins = <
				0x10C (PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_crs.mcasp1_aclkx */
				0x110 (PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_rxerr.mcasp1_fsx */
				0x128 (PIN_INPUT_PULLDOWN | MUX_MODE3)	/* mii1_txd0.mcasp1_axr2 */
				0x144 (PIN_INPUT_PULLDOWN | MUX_MODE4)	/* rmii1_refclk.mcasp1_axr3 */
			>;
		};

		mcasp1_sleep_pins: mcasp1_sleep_pins {
			pinctrl-single,pins = <
				0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* mii1_crs.mcasp1_aclkx */
				0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* mii1_rxerr.mcasp1_fsx */
				0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* mii1_txd0.mcasp1_axr2 */
				0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* rmii1_refclk.mcasp1_axr3 */
			>;
		};

		emmc_pins: pinmux_emmc_pins {
			pinctrl-single,pins = <
				0x00 (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad0.mmc1_dat0 */
				0x04 (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad1.mmc1_dat1 */
				0x08 (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad2.mmc1_dat2 */
				0x0C (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad3.mmc1_dat3 */
				0x10 (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad4.mmc1_dat4 */
				0x14 (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad5.mmc1_dat5 */
				0x18 (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad6.mmc1_dat6 */
				0x1C (PIN_INPUT_PULLUP | MUX_MODE1)	/* gpmc_ad7.mmc1_dat7 */
				0x80 (PIN_INPUT_PULLUP | MUX_MODE2)	/* gpmc_csn1.mmc1_clk */
				0x84 (PIN_INPUT_PULLUP | MUX_MODE2)	/* gpmc_csn2.mmc1_cmd */
			>;
		};

		mmc1_wp_only_pins: pinmux_mmc1_wp_only_pins {
			pinctrl-single,pins = <
				0x07C (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* gpmc_csn0.gpio1_29 */
			>;
		};

		mmc1_cd_only_pins: pinmux_mmc1_cd_only_pins {
			pinctrl-single,pins = <
				0x090 (PIN_INPUT_PULLUP | MUX_MODE7)	/* gpmc_advn_ale.gpio2_2 */

			>;
		};

		wlan_pins: pinmux_wlan_pins {
			pinctrl-single,pins = <
				0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* mii1_txen.gpio3_3, COMWL_RST */
				0x124 (PIN_INPUT_PULLDOWN  | MUX_MODE7)	/* mii1_txd1.gpio0_21, AM335X_COM_WL_IRQ */
				0x1AC (PIN_OUTPUT_PULLUP   | MUX_MODE7)	/* mcasp0_ahclkx.gpio3_21, COM_BT_RST */
			>;
		};

		/* wl12xx/wl18xx card on mmc2 */
		mmc2_pins: pinmux_mmc2_pins {
			pinctrl-single,pins = <
				0x30 (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_ad12.mmc2_dat0 */
				0x34 (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_ad13.mmc2_dat1 */
				0x38 (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_ad14.mmc2_dat2 */
				0x3C (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_ad15.mmc2_dat3 */
				0x88 (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_csn3.mmc2_cmd */
				0x8C (PIN_INPUT_PULLUP | MUX_MODE3)	/* gpmc_clk.mmc2_clk */
			>;
		};

		/* SD Card card on mmc0 */
		mmc0_pins: pinmux_mmc0_pins {
			pinctrl-single,pins = <
				0x0FC (PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc0_dat0.mmc0_dat0 */
				0x0F8 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc0_dat1.mmc0_dat1 */
				0x0F4 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc0_dat2.mmc0_dat2 */
				0x0F0 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc0_dat3.mmc0_dat3 */
				0x104 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc0_cmd.mmc0_cmd */
				0x100 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mmc0_clk.mmc0_clk */
			>;
		};

		mmc0_cd_only_pins: pinmux_mmc0_cd_only_pins {
			pinctrl-single,pins = <
				0x160 (PIN_INPUT_PULLUP | MUX_MODE1)	/* spi0_cs1.spi0_cs1 */
			>;
		};


		uart0_pins: pinmux_uart0_pins {
			pinctrl-single,pins = <
				0x168 (PIN_INPUT           | MUX_MODE0)	 /* uart0_ctsn.uart0_ctsn */
				0x16C (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	 /* uart0_rtsn.uart0_rtsn */
				0x170 (PIN_INPUT_PULLUP    | MUX_MODE0)	 /* uart0_rxd.uart0_rxd */
				0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	 /* uart0_txd.uart0_txd */
			>;
		};

		uart1_pins_default: pinmux_uart1_pins_default {
			pinctrl-single,pins = <
				0x178 (PIN_INPUT           | MUX_MODE0)	 /* uart1_ctsn.uart1_ctsn */
				0x17C (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	 /* uart1_rtsn.uart1_rtsn */
				0x180 (PIN_INPUT_PULLUP    | MUX_MODE0)	 /* uart1_rxd.uart1_rxd */
				0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)  /* uart1_txd.uart1_txd */
			>;
		};

		uart1_pins_sleep: pinmux_uart1_pins_sleep {
			pinctrl-single,pins = <
				0x178 (PIN_INPUT_PULLDOWN | MUX_MODE7)	 /* uart1_ctsn.uart1_ctsn */
				0x17C (PIN_INPUT_PULLDOWN | MUX_MODE7)	 /* uart1_rtsn.uart1_rtsn */
				0x180 (PIN_INPUT_PULLDOWN | MUX_MODE7)	 /* uart1_rxd.uart1_rxd */
				0x184 (PIN_INPUT_PULLDOWN | MUX_MODE7)  /* uart1_txd.uart1_txd */
			>;
		};

		uart2_pins: pinmux_uart2_pins {
			pinctrl-single,pins = <
				0x0C0 (PIN_INPUT           | MUX_MODE6)	 /* lcd_data8.uart2_ctsn, UART2_CTS */
				0x0C4 (PIN_OUTPUT_PULLDOWN | MUX_MODE6)	 /* lcd_data9.uart2_rtsn, UART2_RTS */
				0x12C (PIN_INPUT_PULLUP    | MUX_MODE1)	 /* mii1_txclk.uart2_rxd, UART2_RXD */
				0x130 (PIN_OUTPUT_PULLDOWN | MUX_MODE1)	 /* mii1_rxclk.uart2_txd, UART2_TXD */
			>;
		};

		uart3_pins: pinmux_uart3_pins {
			pinctrl-single,pins = <
				0x134 (PIN_INPUT_PULLUP    | MUX_MODE1)	 /* mii1_rxd3.uart3_rxd, AM335X_UART3_RX */
				0x138 (PIN_OUTPUT_PULLDOWN | MUX_MODE1)	 /* mii1_rxd2.uart3_txd, AM335X_UART3_TX */
			>;
		};

		uart4_pins: pinmux_uart4_pins {
			pinctrl-single,pins = <
				0x70 (PIN_INPUT_PULLUP    | MUX_MODE6)	/* gpmc_wait0.uart4_rxd, AM335X_UART4_RXD */
				0x74 (PIN_OUTPUT_PULLDOWN | MUX_MODE6)	/* gpmc_wpn.uart4_txd, AM335X_UART4_TXD */
			>;
		};

		uart5_pins: pinmux_uart5_pins {
			pinctrl-single,pins = <
				0x0D8 (PIN_INPUT           | MUX_MODE6)	 /* lcd_data14.uart5_ctsn, UART5_CTS */
				0x0DC (PIN_OUTPUT_PULLDOWN | MUX_MODE6)  /* lcd_data15.uart5_rtsn, UART5_RTS */
				0x108 (PIN_INPUT_PULLUP    | MUX_MODE3)  /* mii1_col.uart5_rxd, UART5_RX */
				0x118 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)	 /* mii1_rxdv.uart5_txd, UART5_TX */
			>;
		};

		spi1_pins: pinmux_spi1_pins {
			pinctrl-single,pins = <
				0x190 (PIN_OUTPUT_PULLUP | MUX_MODE3)	/* mcasp0_aclkx.spi1_sclk */
				0x194 (PIN_INPUT_PULLUP  | MUX_MODE3)	/* mcasp0_fsx.spi1_d0 */
				0x198 (PIN_OUTPUT_PULLUP | MUX_MODE3)	/* mcasp0_axr0.spi1_d1 */
				0x19C (PIN_OUTPUT_PULLUP | MUX_MODE3)	/* mcasp0_ahclkr.spi1_cs0 */
				/*0x1A8 (PIN_INPUT_PULLUP  | MUX_MODE7)*/	/* mcasp0_axr1.gpio3_20 */
			>;
		};

		dcan0_pins: pinmux_dcan0_pins {
			pinctrl-single,pins = <
				0x11C (PIN_OUTPUT_PULLDOWN  | MUX_MODE1) /* mii1_txd3.dcan0_tx, AM335X_DCAN0_TX */
				0x120 (PIN_INPUT_PULLDOWN  | MUX_MODE1)  /* mii1_txd2.dcan0_rx, AM335X_DCAN0_RX */
			>;
		};

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

	};

	ocp {
		uart0: serial@44e09000 {
			pinctrl-names = "default";
			pinctrl-0 = <&uart0_pins>;
			status = "okay";
		};

		uart1: serial@48022000 {
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&uart1_pins_default>;
			pinctrl-1 = <&uart1_pins_sleep>;
			status = "okay";
		};

		uart2: serial@48024000 {
			pinctrl-names = "default";
			pinctrl-0 = <&uart2_pins>;
			status = "okay";
		};

		uart3: serial@481a6000 {
			pinctrl-names = "default";
			pinctrl-0 = <&uart3_pins>;
			status = "okay";
		};

		uart4: serial@481a8000 {
			pinctrl-names = "default";
			pinctrl-0 = <&uart4_pins>;
			status = "okay";
		};

		uart5: serial@481aa000 {
			pinctrl-names = "default";
			pinctrl-0 = <&uart5_pins>;
			status = "okay";
		};


		i2c0: i2c@44e0b000 {
			pinctrl-names = "default";
			pinctrl-0 = <&i2c0_pins>;

			status = "okay";
			clock-frequency = <400000>;
			/* Set OPP50 (0.95V) for VDD core */
			sleep-sequence = /bits/ 8 <
				0x02 0x2d 0x25 0x1f /* Set VDD2 to 0.95V */
			>;

			/* Set OPP100 (1.10V) for VDD core */
			wake-sequence = /bits/ 8 <
				0x02 0x2d 0x25 0x2b /* Set VDD2 to 1.1V */
			>;

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

            rtc_bq32k@68 {
                compatible = "bq32000";
				reg = <0x68>;
            };

            eeprom_24c256@50 {
                compatible = "at24,24c256";
                reg = <0x50>;
            };

		};


		i2c2: i2c@4819c000 {
			status = "okay";
			clock-frequency = <400000>;
		};


        spi1: spi@481a0000 {
            pinctrl-names = "default";
            pinctrl-0 = <&spi1_pins>;
            clock-frequency = <1000000>;         
            status = "okay";
            spidev1:spidev@1{
                compatible        = "spidev";
                reg               = <1>;
                spi-max-frequency = <10000000>;
            };
		};


		dcan0: can@481cc000 {
            pinctrl-names = "default";
            pinctrl-0 = <&dcan0_pins>;
            status = "okay";
		};


		usb: usb@47400000 {
			status = "okay";

			control@44e10000 {
				status = "okay";
			};

			usb-phy@47401300 {
				status = "okay";
			};

			usb-phy@47401b00 {
				status = "okay";
			};

			usb@47401000 {
				status = "okay";
				dr_mode = "peripheral";
			};

			usb@47401800 {
				status = "okay";
				dr_mode = "host";
			};

			dma-controller@07402000  {
				status = "okay";
			};
		};

		elm: elm@48080000 {
			status = "okay";
		};

	};


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

	wlan_en_reg: fixedregulator@2 {
		compatible = "regulator-fixed";
		regulator-name = "wlan-en-regulator";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;

		/* WLAN_EN GPIO for this board - Bank3, pin3 */
		gpio = <&gpio3 3 0>;

		/* WLAN card specific delay */
		startup-delay-us = <70000>;
		enable-active-high;
	};


	wlcore {
		compatible = "wlcore";
		/*gpio = <&gpio0 21 0>;*/ /* Bank0, pin21 */
		gpio = <21>; /* Bank0, pin21 */

		/*
		 * TODO: use edge irqs for suspend/resume.
		 * in newer kerenls, we seem to miss interrupts when
		 * working with edge irqs, so revert back to level irqs.
		 */
		 /* platform-quirks = <1>; */

		/* if a 12xx card is there, configure the clock to
		   WL12XX_REFCLOCK_38_XTAL */
		/*						       */
		/* WL12XX_REFCLOCK_19	= 0, 	19.2 MHz       */
		/* WL12XX_REFCLOCK_26	= 1, 	26 MHz         */
		/* WL12XX_REFCLOCK_38	= 2, 	38.4 MHz       */
		/* WL12XX_REFCLOCK_52	= 3, 	52 MHz         */
		/* WL12XX_REFCLOCK_38_XTAL = 4, 38.4 MHz, XTAL */
		/* WL12XX_REFCLOCK_26_XTAL = 5, 26 MHz, XTAL   */
		board-ref-clock = <5>;
	};

	kim {
		compatible = "kim";
		/*nshutdown_gpio = <&gpio3 21 0>;*/ /* Bank3, pin21 */
		nshutdown_gpio = <117>; /* Bank3, pin21 */
		dev_name = "/dev/ttyO1";
		flow_cntrl = <1>;
		baud_rate = <3000000>;
	};

	btwilink {
		compatible = "btwilink";
	};
};

&wkup_m3 {
	ti,needs-vtt-toggle;
	ti,vtt-gpio-pin = <7>;
};

#include "tps65910.dtsi"

&mcasp1 {
		pinctrl-names = "default", "sleep";
		pinctrl-0 = <&mcasp1_pins>;
		pinctrl-1 = <&mcasp1_sleep_pins>;

		status = "okay";

		op-mode = <0>;          /* MCASP_IIS_MODE */
		tdm-slots = <2>;
		/* 16 serializer */
		serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
			0 0 1 2
		>;
		tx-num-evt = <32>;
		rx-num-evt = <32>;
};

&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.325V with +/-4% tolerance */
			regulator-name = "vdd_mpu";
			regulator-min-microvolt = <912500>;
			regulator-max-microvolt = <1378000>;
			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;
		};
	};
};

&gpio0 {
	ti,no-reset;
};

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

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

&cpsw_emac1 {
	phy_id = <&davinci_mdio>, <1>;
	phy-mode = "rgmii-txid";
};

&tscadc {
	status = "okay";
	tsc {
		ti,wires = <4>;
		ti,x-plate-resistance = <200>;
		ti,coordinate-readouts = <5>;
		ti,wire-config = <0x00 0x11 0x22 0x33>;
	};
};

&mmc1 {
	vmmc-supply = <&vmmc_reg>;
	pinctrl-names = "default";
	pinctrl-0 = <&mmc0_pins>;
	bus-width = <4>;
	status = "okay";
	/*cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;*/
	/*wp-gpios = <&gpio3 18 GPIO_ACTIVE_HIGH>;*/
};

&mmc2 {
	vmmc-supply = <&vmmc_reg>;
	pinctrl-names = "default";
	pinctrl-0 = <&emmc_pins>;
	bus-width = <8>;
	ti,non-removable;
	status = "okay";
};

&mmc3 {
	/* these are on the crossbar and are outlined in the
	   xbar-event-map element */
	dmas = <&edma 12
		&edma 13>;
	dma-names = "tx", "rx";

	status = "okay";
	vmmc-supply = <&wlan_en_reg>;
	bus-width = <4>;
	ti,non-removable;
	ti,needs-special-hs-handling;
	cap-power-off-card;
	keep-power-in-suspend;
};

&edma {
	ti,edma-xbar-event-map = <1 12
				  2 13>;
};

Unfortunately, all of the porting work was done by a previous engineer, so I am not sure where to start to figure out the problem.