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.

AM4378: LCD display issue

Part Number: AM4378


Hi TI,

I designed an AM4378 custom board to interface INNONUX EJ101IA-02G with 1280*800 which pixel clock 71.1MHz.

For the use of this LCD, I modified the DTS file and panel-simple.c as follows.

    lcd_bl: backlight {
        compatible = "pwm-backlight";
        pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>;
        brightness-levels = <0 51 53 56 62 75 101 152 255>;
        default-brightness-level = <6>;
    };

    lcd0: display {
        compatible = "innolux,ej101ia-01g", "panel-dpi";
        label = "lcd";

        pinctrl-names = "default";
        pinctrl-0 = <&lcd_pins>;

        backlight = <&lcd_bl>;

        enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
        
        port {
            lcd_in: endpoint {
                remote-endpoint = <&dpi_out>;
            };
        };
    };


static const struct display_timing innolux_ej101ia_01g_timing = {
    .pixelclock = { 68900000, 71100000, 73400000 },
    .hactive = { 1280, 1280, 1280 },
    .hfront_porch = { 57, 114, 142 },
    .hback_porch = { 15, 30, 37 },
    .hsync_len = { 16, 16, 16 },
    .vactive = { 800, 800, 800 },
    .vfront_porch = { 5, 10, 14 },
    .vback_porch = { 4, 9, 13 },
    .vsync_len = { 4, 4, 4 },
    .flags = DISPLAY_FLAGS_DE_HIGH,
};

static const struct panel_desc innolux_ej101ia_01g = {
    .timings = &innolux_ej101ia_01g_timing,
    .num_timings = 1,
    .bpc = 8,
    .size = {
        .width = 217,
        .height = 135,
    },
    .delay = {
        .enable = 200,
        .disable = 200,
    },
    .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
};

Then, the board sucessfully boot up. But LCD didn't work and no pclock & signal from DSS.

There are some errors on kenel log..

[    1.451996] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not found, using dummy regulator                        
[    1.461372] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0                                                    
[    1.468274] DSS: OMAP DSS rev 2.0                                                                                            
[    1.472619] omapdss_dss 4832a000.dss: bound 4832a400.dispc (ops dispc_component_ops)                                         
[    1.480916] omapdrm omapdrm.0: DMM not available, disable DMM support                                                        
[    1.487660] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).                                                      
[    1.494349] [drm] No driver support for vblank timestamp query.                                                              
[    1.500635] [drm] Cannot find any crtc or sizes                                                                              
[    1.505923] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0                                                
[    1.513565] cpu cpu0: Linked as a consumer to regulator.3                                                                    
[    1.519035] cpu cpu0: Dropping the link to regulator.3                                                                       
[    1.524401] cpu cpu0: Linked as a consumer to regulator.3 

In command Line,

root@am437x-evm:~# systemctl stop weston                                                                                        
root@am437x-evm:~# kmstest --flip                                                                                               
terminate called after throwing an instance of 'std::invalid_argument'                                                          
  what():  no modes available                                                                                                   
                                                                                                                                
Aborted (core dumped) 

root@am437x-evm:~# kmscube                                                                                                      
trying to load module omapdrm...success.                                                                                        
### Display [0]: CRTC = 47, Connector = 46, format = 0x34325258                                                                 
Segmentation fault (core dumped)

In SDK Document, I read the board only supports a maxinum of 720p@60 due to memory bandwidth linitation.

Is it means 1280x800@60 LCD can not be used with am4378 board ??

No way to use this LCD ??

SDK Version is processor-sdk-linux-am437x-evm-06.01.00.08 and reference design is AM437x GP-EVM.

Any help would be greatly appreciated.

  • Hello,

    With regards to the memory bandwidth issue, please refer to the following documents as a reference: doc1 and doc2 (Advisory 14). Based on the errors you reported earlier, it seems like the DT file may not be configured correctly. I am wondering if you could please confirm if the following settings are indeed configured:

    1. In the DT file, do you have the following DSS node configured: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm/boot/dts/am437x-gp-evm.dts?h=linux-4.19.y#n934?

    2. In the simple-panel driver, do you have the appropriate compatible field set for your LCD: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/gpu/drm/panel/panel-simple.c?h=ti-linux-4.19.y#n2620?

    3. With regards to display, have you compared your board config file with our board config.

    4. On your board, if you run modetest, do you see your LCD enumerate? 

    Regards,
    Krunal

  • Hello.,

    I'm sorry for the late reply because of another project...

    First, I

    I adjusted parameters as following according to Advisory 14 and test it with AM437x GP EVM instead of custom board.

    But LCD didn't work.

    # Kernel and ramdisk load addresses
    kloadaddr=0x81000000
    dtbloadaddr=0x80f80000

    # Now, load the kernel and ramdisk in RAM
    load_kernel=tftp 0x81000000 zImage
    load_dtb=tftp 0x80f80000 am437x-gp-evm.dtb
    z_boot=bootz 0x81000000 - 0x80f80000

    set_bootargs=setenv bootargs 'console=ttyO0,115200n8 rw root=/dev/nfs nfsroot=172.30.1.1:/home/kihan21/ti/ti-processor-sdk-linux-am437x-evm-06.01.00.08/targetNFS,nolock consoleblank=0 earlyprintk ip=dhcp omapdss.def_disp=display1 omapfb.mode=display1:1280x800MR-24@60'

    # A9 limiter = 300MBPS
    a9_limiter=mw.l 0x44005208 0x0; md 0x44005208 0x1; mw.l 0x4400520C 0x5; md 0x4400520C 0x1; mw.l 0x44005210 0x0; md 0x44005210 1

    # EMIF COS
    # mw.l 0x4C000108 0x80000000;
    emif_cos=mw.l 0x4C000120 0x80000405; md 0x4C000120 1; mw.l 0x4C000104 0x80000094; md 0x4C000104 1; md 0x4C000108 1; mw.l 0x4C000100 0x80000009; md 0x4C000100 1; mw.l 0x4C000124 0x000FFFFF; md 0x4C000124 1

    # DSS MREQ Prio
    mreq_prio=mw.l 0x44E10670 0x44444477; md 0x44E10670 1; mw.l 0x44E10674 0x00444400; md 0x44E10674 1

    # Override the default boot sequence and proceed boot with the above images
    uenvcmd=echo Loading kernel; run a9_limiter; run emif_cos; run mreq_prio; run netargs; setenv serverip 172.30.1.1; setenv autoload no; dhcp; run set_bootargs; run load_kernel; run load_dtb; run z_boot

    I attached the boot log file.

    CPU  : AM437X-GP rev 1.2                                                        
    Model: TI AM437x GP EVM                                                         
    DRAM:  2 GiB                                                                    
    PMIC:  TPS65218                                                                 
    NAND:  512 MiB                                                                  
    MMC:   OMAP SD/MMC: 0                                                           
    Loading Environment from FAT... *** Warning - bad CRC, using default environment
                                                                                    
    Net:                                                                            
    Warning: ethernet@4a100000 using MAC address from ROM                           
    eth0: ethernet@4a100000                                                         
    Hit any key to stop autoboot:  0                                                
    switch to partitions #0, OK                                                     
    mmc0 is current device                                                          
    SD/MMC found on device 0                                                        
    ** Unable to read file boot.scr **                                              
    2020 bytes read in 1 ms (1.9 MiB/s)                                             
    Loaded env from uEnv.txt                                                        
    Importing environment from mmc0 ...                                             
    Running uenvcmd ...                                                             
    Loading kernel                                                                  
    44005208: 00000000                               ....                           
    4400520c: 00000005                               ....                           
    44005210: 00000000                               ....                           
    4c000120: 80000405                               ....                           
    4c000104: 80000094                               ....                           
    4c000108: 00000000                               ....                           
    4c000100: 80000009                               ....                           
    4c000124: 000fffff                               ....                           
    44e10670: 44444477                               wDDD                           
    44e10674: 00444400                               .DD.                           
    link up on port 0, speed 100, full duplex                                       
    BOOTP broadcast 1                                                               
    DHCP client bound to address 172.30.1.6 (137 ms)                                
    link up on port 0, speed 100, full duplex                                       
    Using ethernet@4a100000 device                                                  
    TFTP from server 172.30.1.1; our IP address is 172.30.1.6                       
    Filename 'zImage'.                                                              
    Load address: 0x81000000                                                        
    Loading: #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             #################################################################      
             ####                                                                   
             2.5 MiB/s                                                              
    done                                                                            
    Bytes transferred = 4342272 (424200 hex)                                        
    link up on port 0, speed 100, full duplex                                       
    Using ethernet@4a100000 device                                                  
    TFTP from server 172.30.1.1; our IP address is 172.30.1.6                       
    Filename 'am437x-gp-evm.dtb'.                                                   
    Load address: 0x80f80000                                                        
    Loading: ###########                                                            
             2.4 MiB/s                                                              
    done                                                                            
    Bytes transferred = 51989 (cb15 hex)                                            
    ## Flattened Device Tree blob at 80f80000                                       
       Booting using the fdt blob at 0x80f80000                                     
       Loading Device Tree to 8fff0000, end 8ffffb14 ... OK                         
                                                                                    
    Starting kernel ...                                                             
                                                                                    
    [    0.000000] Booting Linux on physical CPU 0x0                                
    [    0.000000] Linux version 4.19.94-gbe5389fd85 (kihan21@ubuntu) (gcc version 0
    [    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d 
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructie
    [    0.000000] OF: fdt: Machine model: TI AM437x GP EVM                         
    [    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 0xfcc00000                               
    [    0.000000] CPU: All CPU(s) started in SVC mode.                             
    [    0.000000] AM437x ES1.2 (sgx neon)                                          
    [    0.000000] random: get_random_bytes called from start_kernel+0xa0/0x420 wit0
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 522559    
    [    0.000000] Kernel command line: console=ttyO0,115200n8 rw root=/dev/nfs nfs0
    [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) 
    [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)   
    [    0.000000] Memory: 2015664K/2097148K available (8192K kernel code, 316K rwd)
    [    0.000000] Virtual kernel memory layout:                                    
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)                
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)                
    [    0.000000]     vmalloc : 0xf0800000 - 0xff800000   ( 240 MB)                
    [    0.000000]     lowmem  : 0xc0000000 - 0xf0000000   ( 768 MB)                
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)                
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)                
    [    0.000000]       .text : 0x(ptrval) - 0x(ptrval)   (9184 kB)                
    [    0.000000]       .init : 0x(ptrval) - 0x(ptrval)   (1024 kB)                
    [    0.000000]       .data : 0x(ptrval) - 0x(ptrval)   ( 317 kB)                
    [    0.000000]        .bss : 0x(ptrval) - 0x(ptrval)   ( 255 kB)                
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1       
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.                
    [    0.000000]  Tasks RCU enabled.                                              
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16                  
    [    0.000000] L2C: platform modifies aux control register: 0x0e030000 -> 0x3e40
    [    0.000000] L2C: DT/platform modifies aux control register: 0x0e030000 -> 0x0
    [    0.000000] L2C-310 enabling early BRESP for Cortex-A9                       
    [    0.000000] OMAP L2C310: ROM does not support power control setting          
    [    0.000000] L2C-310 dynamic clock gating disabled, standby mode disabled     
    [    0.000000] L2C-310 cache controller enabled, 16 ways, 256 kB                
    [    0.000000] L2C-310: CACHE_ID 0x410000c9, AUX_CTRL 0x4e430000                
    [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz                    
    [    0.000011] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 8947s
    [    0.000029] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, mas
    [    0.000038] OMAP clocksource: timer1 at 24000000 Hz                          
    [    0.000404] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xfffffffs
    [    0.000414] OMAP clocksource: 32k_counter at 32768 Hz                        
    [    0.000780] Console: colour dummy device 80x30                               
    [    0.000810] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'       
    [    0.000815] This ensures that you still see kernel messages. Please          
    [    0.000820] update your kernel commandline.                                  
    [    0.000861] Calibrating delay loop... 1987.37 BogoMIPS (lpj=9936896)         
    [    0.060176] pid_max: default: 32768 minimum: 301                             
    [    0.060347] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)      
    [    0.060367] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) 
    [    0.061053] CPU: Testing write buffer coherency: ok                          
    [    0.061104] CPU0: Spectre v2: using BPIALL workaround                        
    [    0.061891] Setting up static identity map for 0x80100000 - 0x80100060       
    [    0.062032] rcu: Hierarchical SRCU implementation.                           
    [    0.062336] EFI services will not be available.                              
    [    0.063383] devtmpfs: initialized                                            
    [    0.071597] VFP support v0.3: implementor 41 architecture 3 part 30 variant 4
    [    0.071955] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ms
    [    0.071976] futex hash table entries: 256 (order: -1, 3072 bytes)            
    [    0.075076] pinctrl core: initialized pinctrl subsystem                      
    [    0.075688] DMI not present or invalid.                                      
    [    0.076078] NET: Registered protocol family 16                               
    [    0.077660] DMA: preallocated 256 KiB pool for atomic coherent allocations   
    [    0.148787] cpuidle: using governor ladder                                   
    [    0.148821] cpuidle: using governor menu                                     
    [    0.155499] OMAP GPIO hardware version 0.1                                   
    [    0.164128] No ATAGs?                                                        
    [    0.164147] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint.
    [    0.164165] hw-breakpoint: maximum watchpoint size is 4 bytes.               
    [    0.176333] edma 49000000.edma: TI EDMA DMA engine driver                    
    [    0.179848] SCSI subsystem initialized                                       
    [    0.180484] media: Linux media interface: v0.10                              
    [    0.180525] videodev: Linux video capture interface: v2.00                   
    [    0.180628] pps_core: LinuxPPS API ver. 1 registered                         
    [    0.180636] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giom>
    [    0.180662] PTP clock support registered                                     
    [    0.180692] EDAC MC: Ver: 3.0.0                                              
    [    0.181564] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400            
    [    0.182149] Advanced Linux Sound Architecture Driver Initialized.            
    [    0.183216] clocksource: Switched to clocksource timer1                      
    [    0.189969] NET: Registered protocol family 2                                
    [    0.190836] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096)
    [    0.190870] TCP established hash table entries: 8192 (order: 3, 32768 bytes) 
    [    0.190928] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)        
    [    0.191002] TCP: Hash tables configured (established 8192 bind 8192)         
    [    0.191145] UDP hash table entries: 512 (order: 1, 8192 bytes)               
    [    0.191171] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes)          
    [    0.191299] NET: Registered protocol family 1                                
    [    0.191827] RPC: Registered named UNIX socket transport module.              
    [    0.191839] RPC: Registered udp transport module.                            
    [    0.191844] RPC: Registered tcp transport module.                            
    [    0.191849] RPC: Registered tcp NFSv4.1 backchannel transport module.        
    [    0.193706] Initialise system trusted keyrings                               
    [    0.193928] workingset: timestamp_bits=14 max_order=19 bucket_order=5        
    [    0.197621] squashfs: version 4.0 (2009/01/31) Phillip Lougher               
    [    0.198265] NFS: Registering the id_resolver key type                        
    [    0.198295] Key type id_resolver registered                                  
    [    0.198301] Key type id_legacy registered                                    
    [    0.198338] ntfs: driver 2.1.32 [Flags: R/O].                                
    [    0.200333] Key type asymmetric registered                                   
    [    0.200349] Asymmetric key parser 'x509' registered                          
    [    0.200408] bounce: pool size: 64 pages                                      
    [    0.200466] Block layer SCSI generic (bsg) driver version 0.4 loaded (major )
    [    0.200476] io scheduler noop registered                                     
    [    0.200482] io scheduler deadline registered                                 
    [    0.200697] io scheduler cfq registered (default)                            
    [    0.200708] io scheduler mq-deadline registered                              
    [    0.200713] io scheduler kyber registered                                    
    [    0.203196] pinctrl-single 44e10800.pinmux: 199 pins, size 796               
    [    0.206699] pwm-backlight backlight: backlight supply power not found, usingr
    [    0.206798] pwm-backlight backlight: Linked as a consumer to regulator.0     
    [    0.245600] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled         
    [    0.248421] omap8250 44e09000.serial: No clock speed specified: using defaul0
    [    0.249087] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 31, base_baud =0
    [    0.951410] console [ttyS0] enabled                                          
    [    0.955486] omap8250 481a6000.serial: No clock speed specified: using defaul0
    [    0.964209] 481a6000.serial: ttyS3 at MMIO 0x481a6000 (irq = 32, base_baud =0
    [    0.974769] omap_rng 48310000.rng: Random Number Generator ver. 20           
    [    0.982118] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not four
    [    0.991622] random: fast init done                                           
    [    0.995281] random: crng init done                                           
    [    0.999367] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0    
    [    1.006314] omapdss_dss 4832a000.dss: Dropping the link to regulator.0       
    [    1.015612] panel-simple display: display supply power not found, using dummr
    [    1.023835] panel-simple display: Linked as a consumer to regulator.0        
    [    1.039632] brd: module loaded                                               
    [    1.050354] loop: module loaded                                              
    [    1.056424] libphy: Fixed MDIO Bus: probed                                   
    [    1.133276] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 0
    [    1.140977] davinci_mdio 4a101000.mdio: detected phy mask fffffffe           
    [    1.148228] libphy: 4a101000.mdio: probed                                    
    [    1.152272] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driY
    [    1.162834] cpsw 4a100000.ethernet: Detected MACID = 34:b1:f7:3d:b9:84       
    [    1.169616] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4         
    [    1.176080] cpsw 4a100000.ethernet: ALE Table size 1024                      
    [    1.181362] cpsw 4a100000.ethernet: cpts: overflow check period 500 (jiffies)
    [    1.189787] i2c /dev entries driver                                          
    [    1.195208] cpuidle: enable-method property 'ti,am4372' found operations     
    [    1.202358] sdhci: Secure Digital Host Controller Interface driver           
    [    1.208667] sdhci: Copyright(c) Pierre Ossman                                
    [    1.214429] omap_hsmmc 47810000.mmc: Linked as a consumer to regulator.2     
    [    1.246259] sdhci-pltfm: SDHCI platform and OF driver helper                 
    [    1.252805] ledtrig-cpu: registered to indicate activity on CPUs             
    [    1.263722] NET: Registered protocol family 10                               
    [    1.269403] Segment Routing with IPv6                                        
    [    1.273317] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver              
    [    1.279963] NET: Registered protocol family 17                               
    [    1.284837] Key type dns_resolver registered                                 
    [    1.289469] omap_voltage_late_init: Voltage driver support not added         
    [    1.296791] Loading compiled-in X.509 certificates                           
    [    1.311861] GPIO line 119 (SelEMMCorNAND) hogged as output/low               
    [    1.318598] GPIO line 136 (SelLCDorHDMI) hogged as output/high               
    [    1.325107] omap-gpmc 50000000.gpmc: GPMC revision 6.0                       
    [    1.330276] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000            
    [    1.337738] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xdc         
    [    1.344173] nand: Micron MT29F4G08ABAEAWP                                    
    [    1.348203] nand: 512 MiB, SLC, erase size: 256 KiB, page size: 4096, OOB si4
    [    1.355972] Using OMAP_ECC_BCH16_CODE_HW ECC scheme                          
    [    1.360967] 10 fixed-partitions partitions found on MTD device omap2-nand.0  
    [    1.367981] Creating 10 MTD partitions on "omap2-nand.0":                    
    [    1.373418] 0x000000000000-0x000000040000 : "NAND.SPL"                       
    [    1.379477] 0x000000040000-0x000000080000 : "NAND.SPL.backup1"               
    [    1.386152] 0x000000080000-0x0000000c0000 : "NAND.SPL.backup2"               
    [    1.392685] 0x0000000c0000-0x000000100000 : "NAND.SPL.backup3"               
    [    1.399269] 0x000000100000-0x000000180000 : "NAND.u-boot-spl-os"             
    [    1.406132] 0x000000180000-0x000000280000 : "NAND.u-boot"                    
    [    1.412331] 0x000000280000-0x0000002c0000 : "NAND.u-boot-env"                
    [    1.418832] 0x0000002c0000-0x000000300000 : "NAND.u-boot-env.backup1"        
    [    1.426049] 0x000000300000-0x000000a00000 : "NAND.kernel"                    
    [    1.433050] 0x000000a00000-0x000020000000 : "NAND.file-system"               
    [    1.548938] omap_i2c 44e0b000.i2c: bus 0 rev0.12 at 100 kHz                  
    [    1.556159] omap_i2c 4802a000.i2c: bus 1 rev0.12 at 100 kHz                  
    [    1.562303] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not four
    [    1.571698] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0    
    [    1.578618] DSS: OMAP DSS rev 2.0                                            
    [    1.582922] omapdss_dss 4832a000.dss: bound 4832a400.dispc (ops dispc_compon)
    [    1.591203] omapdrm omapdrm.0: DMM not available, disable DMM support        
    [    1.597976] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).      
    [    1.604652] [drm] No driver support for vblank timestamp query.              
    [    1.611237] [drm] Cannot find any crtc or sizes                              
    [    1.616531] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0
    [    1.624191] cpu cpu0: Linked as a consumer to regulator.5                    
    [    1.629659] cpu cpu0: Dropping the link to regulator.5                       
    [    1.635029] cpu cpu0: Linked as a consumer to regulator.5                    
    [    1.641720] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000)
    [    1.650572] omap_hsmmc 48060000.mmc: Got CD GPIO                             
    [    1.655667] omap_hsmmc 48060000.mmc: Linked as a consumer to regulator.1     
    [    1.687738] hctosys: unable to open rtc device (rtc0)                        
    [    1.710926] net eth0: initializing cpsw version 1.15 (0)                     
    [    1.773861] mmc1: host does not support reading read-only switch, assuming we
    [    1.787586] mmc1: new high speed SDHC card at address aaaa                   
    [    1.795258] mmcblk1: mmc1:aaaa SC16G 14.8 GiB                                
    [    1.805573]  mmcblk1: p1 p2                                                  
    [    1.817674] Micrel KSZ9031 Gigabit PHY 4a101000.mdio:00: attached PHY driver)
    [    1.835239] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready               
    [    2.645310] [drm] Cannot find any crtc or sizes                              
    [    3.924927] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow cof
    [    3.933327] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready          
    [    3.963346] Sending DHCP requests ., OK                                      
    [    4.127260] IP-Config: Got DHCP answer from 172.30.1.254, my address is 172.6
    [    4.134974] IP-Config: Complete:                                             
    [    4.138245]      device=eth0, hwaddr=34:b1:f7:3d:b9:84, ipaddr=172.30.1.6, m4
    [    4.148505]      host=172.30.1.6, domain=, nis-domain=(none)                 
    [    4.154350]      bootserver=0.0.0.0, rootserver=172.30.1.1, rootpath=        
    [    4.154362]      nameserver0=172.30.1.254, nameserver1=168.126.63.2          
    [    4.168438] ALSA device list:                                                
    [    4.171427]   No soundcards found.                                           
    [    4.181617] VFS: Mounted root (nfs filesystem) on device 0:15.               
    [    4.188070] devtmpfs: mounted                                                
    [    4.192420] Freeing unused kernel memory: 1024K                              
    [    4.197343] Run /sbin/init as init process                                   
    [    4.622426] systemd[1]: System time before build time, advancing clock.      
    [    4.676496] systemd[1]: systemd 239 running in system mode. (+PAM -AUDIT -SE)
    [    4.698625] systemd[1]: Detected architecture arm.                           
                                                                                    
    Welcome to Arago 2019.07!                                                       
                                                                                    
    [    4.744678] systemd[1]: Set hostname to <am437x-evm>.                        
    [    5.170073] systemd[1]: File /lib/systemd/system/systemd-journald.service:36.
    [    5.187356] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warn)
    [    5.699728] systemd[1]: Reached target Remote File Systems.                  
    [  OK  ] Reached target Remote File Systems.                                    
    [    5.736158] systemd[1]: Created slice User and Session Slice.                
    [  OK  ] Created slice User and Session Slice.                                  
    [    5.765346] systemd[1]: Started Forward Password Requests to Wall Directory .
    [  OK  ] Started Forward Password Requests to Wall Directory Watch.             
    [    5.806884] systemd[1]: Listening on Network Service Netlink Socket.         
    [  OK  ] Listening on Network Service Netlink Socket.                           
    [    5.845803] systemd[1]: Listening on Journal Socket.                         
    [  OK  ] Listening on Journal Socket.                                           
    [  OK  ] Reached target Swap.                                                   
             Mounting Temporary Directory (/tmp)...                                 
    [  OK  ] Listening on Process Core Dump Socket.                                 
    [  OK  ] Listening on udev Control Socket.                                      
    [  OK  ] Listening on udev Kernel Socket.                                       
             Starting udev Coldplug all Devices...                                  
             Mounting Kernel Debug File System...                                   
    [  OK  ] Started Dispatch Password Requests to Console Directory Watch.         
    [  OK  ] Reached target Paths.                                                  
    [  OK  ] Created slice system-getty.slice.                                      
    [  OK  ] Started Hardware RNG Entropy Gatherer Daemon.                          
    [  OK  ] Listening on Journal Socket (/dev/log).                                
    [  OK  ] Listening on initctl Compatibility Named Pipe.                         
             Starting Journal Service...                                            
    [  OK  ] Reached target Slices.                                                 
    [  OK  ] Created slice system-serial\x2dgetty.slice.                            
             Starting Load Kernel Modules...                                        
             Mounting POSIX Message Queue File System...                            
             Starting Remount Root and Kernel File Systems...                       
    [  OK  ] Mounted Temporary Directory (/tmp).                                    
    [  OK  ] Mounted Kernel Debug File System.                                      
    [FAILED] Failed to start Load Kernel Modules.                                   
    See 'systemctl status systemd-modules-load.service' for details.                
    [  OK  ] Mounted POSIX Message Queue File System.                               
             Starting Apply Kernel Variables...                                     
             Mounting Kernel Configuration File System...                           
    [  OK  ] Started Remount Root and Kernel File Systems.                          
             Starting Create Static Device Nodes in /dev...                         
    [  OK  ] Mounted Kernel Configuration File System.                              
    [  OK  ] Started Journal Service.                                               
    [  OK  ] Started Apply Kernel Variables.                                        
             Starting Flush Journal to Persistent Storage...                        
    [  OK  ] Started Create Static Device Nodes in /dev.                            
    [    7.134065] systemd-journald[79]: Received request to flush runtime journal 1
    [  OK  ] Reached target Local File Systems (Pre).                               
             Mounting /var/volatile...                                              
             Mounting /media/ram...                                                 
    [  OK  ] Reached target Containers.                                             
             Starting udev Kernel Device Manager...                                 
    [  OK  ] Started Flush Journal to Persistent Storage.                           
    [  OK  ] Mounted /var/volatile.                                                 
    [  OK  ] Mounted /media/ram.                                                    
             Starting Load/Save Random Seed...                                      
    [  OK  ] Reached target Local File Systems.                                     
             Starting Create Volatile Files and Directories...                      
    [  OK  ] Started Load/Save Random Seed.                                         
    [  OK  ] Started udev Kernel Device Manager.                                    
    [  OK  ] Started Create Volatile Files and Directories.                         
             Starting Update UTMP about System Boot/Shutdown...                     
             Starting Network Service...                                            
             Starting Network Time Synchronization...                               
    [  OK  ] Started Update UTMP about System Boot/Shutdown.                        
    [  OK  ] Started Network Service.                                               
             Starting Network Name Resolution...                                    
             Starting Wait for Network to be Configured...                          
    [  OK  ] Started udev Coldplug all Devices.                                     
    [  OK  ] Started Network Time Synchronization.                                  
    [  OK  ] Reached target System Time Synchronized.                               
    [  OK  ] Reached target System Initialization.                                  
    [  OK  ] Started Daily Cleanup of Temporary Directories.                        
    [  OK  ] Listening on dropbear.socket.                                          
             Starting Reboot and dump vmcore via kexec...                           
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.                
    [  OK  ] Listening on D-Bus System Message Bus Socket.                          
    [  OK  ] Started Daily rotation of log files.                                   
    [  OK  ] Reached target Timers.                                                 
    [  OK  ] Listening on RPCbind Server Activation Socket.                         
    [  OK  ] Reached target Sockets.                                                
    [  OK  ] Reached target Basic System.                                           
    [  OK  ] Started Periodic Command Scheduler.                                    
             Starting Login Service...                                              
    [  OK  ] Started Job spooling tools.                                            
             Starting uim-sysfs.service...                                          
    [  OK  ] Started D-Bus System Message Bus.                                      
             Starting RPC Bind Service...                                           
             Starting Print notice about GPLv3 packages...                          
    [  OK  ] Started Network Name Resolution.                                       
    [  OK  ] Started Reboot and dump vmcore via kexec.                              
    [  OK  ] Found device /dev/ttyS0.                                               
    [  OK  ] Started RPC Bind Service.                                              
    [  OK  ] Reached target Host and Network Name Lookups.                          
    [  OK  ] Reached target Network.                                                
    [  OK  ] Started Redis In-Memory Data Store.                                    
             Starting Simple Network Management Protocol (SNMP) Daemon....          
             Starting Permit User Sessions...                                       
             Starting Enable and configure wl18xx bluetooth stack...                
             Starting Lightning Fast Webserver With Light System Requirements...    
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..                       
             Starting Avahi mDNS/DNS-SD Stack...                                    
    [  OK  ] Started Permit User Sessions.                                          
    [  OK  ] Started Lightning Fast Webserver With Light System Requirements.       
    [  OK  ] Started Enable and configure wl18xx bluetooth stack.                   
    [  OK  ] Started Simple Network Management Protocol (SNMP) Daemon..             
    [  OK  ] Started uim-sysfs.service.                                             
    [  OK  ] Started Wait for Network to be Configured.                             
    ***************************************************************                 
    ***************************************************************                 
    NOTICE: This file system contains the following GPLv3 packages:                 
            autoconf                                                                
            bash-dev                                                                
            bash                                                                    
            bc                                                                      
            binutils                                                                
            cifs-utils                                                              
            cpio                                                                    
            cpp-symlinks                                                            
            cpp                                                                     
            dosfstools                                                              
            elfutils                                                                
            findutils                                                               
            g++-symlinks                                                            
            g++                                                                     
            gawk                                                                    
            gcc-symlinks                                                            
            gcc                                                                     
            gdb                                                                     
            gdbserver                                                               
            gettext                                                                 
            glmark2                                                                 
            gstreamer1.0-libav                                                      
            gzip                                                                    
            hidapi                                                                  
            libbfd                                                                  
            libdw1                                                                  
            libelf1                                                                 
            libgdbm-compat4                                                         
            libgdbm-dev                                                             
            libgdbm6                                                                
            libgettextlib                                                           
            libgettextsrc                                                           
            libgmp10                                                                
            libidn2-0                                                               
            libmavconn                                                              
            libmpc3                                                                 
            libmpfr6                                                                
            libreadline-dev                                                         
            libreadline7                                                            
            libunistring2                                                           
            m4-dev                                                                  
            m4                                                                      
            make                                                                    
            mavlink                                                                 
            mavros-extras                                                           
            mavros-msgs                                                             
            mavros                                                                  
            nettle                                                                  
            pdm-anomaly-detection                                                   
            socketcan-interface                                                     
            which                                                                   
                                                                                    
    If you do not wish to distribute GPLv3 components please remove                 
    the above packages prior to distribution.  This can be done using               
    the opkg remove command.  i.e.:                                                 
        opkg remove <package>                                                       
    Where <package> is the name printed in the list above                           
                                                                                    
    NOTE: If the package is a dependency of another package you                     
          will be notified of the dependent packages.  You should                   
          use the --force-removal-of-dependent-packages option to                   
          also remove the dependent packages as well                                
    ***************************************************************                 
    ***************************************************************                 
    [  OK  ] Started Print notice about GPLv3 packages.                             
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.                                       
    [  OK  ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.        
    [  OK  ] Created slice system-systemd\x2dfsck.slice.                            
             Starting File System Check on /dev/mmcblk1p1...                        
             Starting File System Check on /dev/mmcblk1p2...                        
    [  OK  ] Reached target Network is Online.                                      
    [  OK  ] Started strongSwan IPsec IKEv1/IKEv2 daemon using ipsec.conf.          
    [  OK  ] Created slice system-systemd\x2dbacklight.slice.                       
             Starting Load/Save Screen Backlight��…ightness of backlight:backlight..
             Starting rc.pvr.service...                                             
    [  OK  ] Started Getty on tty1.                                                 
    [  OK  ] Started Serial Getty on ttyS0.                                         
    [  OK  ] Reached target Login Prompts.                                          
             Starting Synchronize System and HW clocks...                           
    [  OK  ] Started Load/Save Screen Backlight Brightness of backlight:backlight.  
    [FAILED] Failed to start Synchronize System and HW clocks.                      
    See 'systemctl status sync-clocks.service' for details.                         
    [  OK  ] Started rc.pvr.service.                                                
    [  OK  ] Started File System Check on /dev/mmcblk1p1.                           
    [  OK  ] Started File System Check on /dev/mmcblk1p2.                           
             Mounting /run/media/mmcblk1p2...                                       
             Mounting /run/media/mmcblk1p1...                                       
             Starting weston.service...                                             
    [   33.407316] EXT4-fs (mmcblk1p2): mounting ext3 file system using the ext4 sum
    [   33.560377] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. )
    [  OK  ] Started Login Service.                                                 
    [  OK  ] Mounted /run/media/mmcblk1p2.                                          
    [  OK  ] Mounted /run/media/mmcblk1p1.                                          
    [   34.403338] vmmcwl_fixed: disabling                                          
    [  OK  ] Started weston.service.                                                
             Starting telnetd.service...                                            
             Starting Matrix GUI...                                                 
    [  OK  ] Started telnetd.service.                                               
             Starting LSB: network benchmark...                                     
             Starting thttpd.service...                                             
    [  OK  ] Started Matrix GUI.                                                    
    [  OK  ] Started LSB: network benchmark.                                        
                                                                                    
     _____                    _____           _         _                           
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_                         
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|                        
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|                          
                  |___|                    |___|                                    
                                                                                    
    Arago Project http://arago-project.org am437x-evm ttyS0                         
                                                                                    
    Arago 2019.07 am437x-evm ttyS0                                                  
                                                                                    
    am437x-evm login: 
    
    

    And I tried to test FIFO Merge. But I couldn't because I don't really know how to include the patch files to kernel. Related files was not built during th kernel build.

    Pls let me know how to build these files to enable FIFO Merge.

    For the test, I only changed display type from osd070t1718-19ts to g101ice_l01 which is in pannel-simple .c.

    Nothing changed in pannel-simple.c

    /*
     * Copyright (C) 2013 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.
     */
    
    /* AM437x GP EVM */
    
    /dts-v1/;
    
    #include "am4372.dtsi"
    #include <dt-bindings/pinctrl/am43xx.h>
    #include <dt-bindings/pwm/pwm.h>
    #include <dt-bindings/gpio/gpio.h>
    
    / {
    	model = "TI AM437x GP EVM";
    	compatible = "ti,am437x-gp-evm","ti,am4372","ti,am43";
    
    	aliases {
    		display0 = &lcd0;
    	};
    
    	chosen {
    		stdout-path = &uart0;
    	};
    
    	evm_v3_3d: fixedregulator-v3_3d {
    		compatible = "regulator-fixed";
    		regulator-name = "evm_v3_3d";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		enable-active-high;
    	};
    
    	vtt_fixed: fixedregulator-vtt {
    		compatible = "regulator-fixed";
    		regulator-name = "vtt_fixed";
    		regulator-min-microvolt = <1500000>;
    		regulator-max-microvolt = <1500000>;
    		regulator-always-on;
    		regulator-boot-on;
    		enable-active-high;
    		gpio = <&gpio5 7 GPIO_ACTIVE_HIGH>;
    	};
    
    	vmmcwl_fixed: fixedregulator-mmcwl {
    		compatible = "regulator-fixed";
    		regulator-name = "vmmcwl_fixed";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		gpio = <&gpio1 20 GPIO_ACTIVE_HIGH>;
    		enable-active-high;
    	};
    
    	lcd_bl: backlight {
    		compatible = "pwm-backlight";
    		pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>;
    		brightness-levels = <0 51 53 56 62 75 101 152 255>;
    		default-brightness-level = <8>;
    	};
    
    	matrix_keypad: matrix_keypad0 {
    		compatible = "gpio-matrix-keypad";
    		debounce-delay-ms = <5>;
    		col-scan-delay-us = <2>;
    
    		pinctrl-names = "default", "sleep";
    		pinctrl-0 = <&matrix_keypad_default>;
    		pinctrl-1 = <&matrix_keypad_sleep>;
    
    		linux,wakeup;
    
    		row-gpios = <&gpio0 3 GPIO_ACTIVE_HIGH /* Bank0, pin3 */
    				&gpio4 3 GPIO_ACTIVE_HIGH /* Bank4, pin3 */
    				&gpio4 2 GPIO_ACTIVE_HIGH>; /* Bank4, pin2 */
    
    		col-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH /* Bank3, pin19 */
    				&gpio3 20 GPIO_ACTIVE_HIGH>; /* Bank3, pin20 */
    
    		linux,keymap = <0x00000201      /* P1 */
    				0x00010202      /* P2 */
    				0x01000067      /* UP */
    				0x0101006a      /* RIGHT */
    				0x02000069      /* LEFT */
    				0x0201006c>;      /* DOWN */
    		};
    
    	lcd0: display {
    		compatible = "innolux,g101ice_l01", "panel-dpi";
    		label = "lcd";
    
    		backlight = <&lcd_bl>;
    
    		panel-timing {
    			clock-frequency = <71100000>;
    			hactive = <1280>;
    			vactive = <800>;
    			hfront-porch = <80>;
    			hback-porch = <79>;
    			hsync-len = <1>;
    			vback-porch = <11>;
    			vfront-porch = <1>;
    			vsync-len = <1>;
    			hsync-active = <0>;
    			vsync-active = <0>;
    			de-active = <1>;
    			pixelclk-active = <1>;
    		};
    
    		port {
    			lcd_in: endpoint {
    				remote-endpoint = <&dpi_out>;
    			};
    		};
    	};
    
    	/* fixed 12MHz oscillator */
    	refclk: oscillator {
    		#clock-cells = <0>;
    		compatible = "fixed-clock";
    		clock-frequency = <12000000>;
    	};
    
    	/* fixed 32k external oscillator clock */
    	clk_32k_rtc: clk_32k_rtc {
    		#clock-cells = <0>;
    		compatible = "fixed-clock";
    		clock-frequency = <32768>;
    	};
    
    	sound0: sound0 {
    		compatible = "simple-audio-card";
    		simple-audio-card,name = "AM437x-GP-EVM";
    		simple-audio-card,widgets =
    			"Headphone", "Headphone Jack",
    			"Line", "Line In";
    		simple-audio-card,routing =
    			"Headphone Jack",	"HPLOUT",
    			"Headphone Jack",	"HPROUT",
    			"LINE1L",		"Line In",
    			"LINE1R",		"Line In";
    		simple-audio-card,format = "dsp_b";
    		simple-audio-card,bitclock-master = <&sound0_master>;
    		simple-audio-card,frame-master = <&sound0_master>;
    		simple-audio-card,bitclock-inversion;
    
    		simple-audio-card,cpu {
    			sound-dai = <&mcasp1>;
    			system-clock-frequency = <12000000>;
    		};
    
    		sound0_master: simple-audio-card,codec {
    			sound-dai = <&tlv320aic3106>;
    			system-clock-frequency = <12000000>;
    		};
    	};
    
    	beeper: beeper {
    		compatible = "gpio-beeper";
    		pinctrl-names = "default";
    		pinctrl-0 = <&beeper_pins_default>;
    		pinctrl-1 = <&beeper_pins_sleep>;
    		gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>;
    	};
    
    	audio_mstrclk: mclk_osc {
    		compatible = "fixed-clock";
    		#clock-cells = <0>;
    		clock-frequency = <12000000>;
    	};
    };
    
    &am43xx_pinmux {
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&wlan_pins_default &ddr3_vtt_toggle_default &unused_pins &debugss_pins>;
    	pinctrl-1 = <&wlan_pins_sleep>;
    
    	ddr3_vtt_toggle_default: ddr_vtt_toggle_default {
    		pinctrl-single,pins = <
    			0x25C (DS0_PULL_UP_DOWN_EN | PIN_OUTPUT_PULLUP | DS0_FORCE_OFF_MODE | MUX_MODE7) /* spi0_cs0.gpio5_7 */
    		>;
    	};
    
    	i2c0_pins: i2c0_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x988, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_sda.i2c0_sda */
    			AM4372_IOPAD(0x98c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_scl.i2c0_scl */
    		>;
    	};
    
    	i2c1_pins: i2c1_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x95c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_cs0.i2c1_scl */
    			AM4372_IOPAD(0x958, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_d1.i2c1_sda  */
    		>;
    	};
    
    	mmc1_pins: pinmux_mmc1_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
    		>;
    	};
    
    	ecap0_pins: backlight_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x964, MUX_MODE0)       /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */
    		>;
    	};
    
    	pixcir_ts_pins: pixcir_ts_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa64, PIN_INPUT_PULLUP | MUX_MODE7)  /* spi2_d0.gpio3_22 */
    		>;
    	};
    
    	cpsw_default: cpsw_default {
    		pinctrl-single,pins = <
    			/* Slave 1 */
    			AM4372_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txen.rgmii1_txen */
    			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxdv.rgmii1_rxctl */
    			AM4372_IOPAD(0x91c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd3 */
    			AM4372_IOPAD(0x920, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd2 */
    			AM4372_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd1 */
    			AM4372_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd0 */
    			AM4372_IOPAD(0x92c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txclk.rmii1_tclk */
    			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxclk.rmii1_rclk */
    			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd3 */
    			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd2 */
    			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd1 */
    			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd0 */
    		>;
    	};
    
    	cpsw_sleep: cpsw_sleep {
    		pinctrl-single,pins = <
    			/* Slave 1 reset value */
    			AM4372_IOPAD(0x914, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x91c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x920, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x924, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x928, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x92c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	davinci_mdio_default: davinci_mdio_default {
    		pinctrl-single,pins = <
    			/* MDIO */
    			AM4372_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)	/* mdio_data.mdio_data */
    			AM4372_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0)			/* mdio_clk.mdio_clk */
    		>;
    	};
    
    	davinci_mdio_sleep: davinci_mdio_sleep {
    		pinctrl-single,pins = <
    			/* MDIO reset value */
    			AM4372_IOPAD(0x948, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	nand_flash_x8: nand_flash_x8 {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x800, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad0.gpmc_ad0 */
    			AM4372_IOPAD(0x804, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad1.gpmc_ad1 */
    			AM4372_IOPAD(0x808, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad2.gpmc_ad2 */
    			AM4372_IOPAD(0x80c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad3.gpmc_ad3 */
    			AM4372_IOPAD(0x810, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad4.gpmc_ad4 */
    			AM4372_IOPAD(0x814, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad5.gpmc_ad5 */
    			AM4372_IOPAD(0x818, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad6.gpmc_ad6 */
    			AM4372_IOPAD(0x81c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad7.gpmc_ad7 */
    			AM4372_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_wait0.gpmc_wait0 */
    			AM4372_IOPAD(0x874, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* gpmc_wpn.gpmc_wpn */
    			AM4372_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_csn0.gpmc_csn0  */
    			AM4372_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0)		/* gpmc_advn_ale.gpmc_advn_ale */
    			AM4372_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0)		/* gpmc_oen_ren.gpmc_oen_ren */
    			AM4372_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0)		/* gpmc_wen.gpmc_wen */
    			AM4372_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_be0n_cle.gpmc_be0n_cle */
    		>;
    	};
    
    	dss_pins: dss_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x820, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 8 -> DSS DATA 23 */
    			AM4372_IOPAD(0x824, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x828, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x82c, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x830, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x834, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x838, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x83c, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 15 -> DSS DATA 16 */
    			AM4372_IOPAD(0x8a0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */
    			AM4372_IOPAD(0x8a4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8a8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8ac, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8b0, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8b4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8b8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8bc, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8c0, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8c4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8c8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8cc, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8d0, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8d4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8d8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8dc, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */
    			AM4372_IOPAD(0x8e0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */
    			AM4372_IOPAD(0x8e4, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */
    			AM4372_IOPAD(0x8e8, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */
    			AM4372_IOPAD(0x8ec, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */
    
    		>;
    	};
    
    	display_mux_pins: display_mux_pins {
    		pinctrl-single,pins = <
    			/* GPIO 5_8 to select LCD / HDMI */
    			AM4372_IOPAD(0xa38, PIN_OUTPUT_PULLUP | MUX_MODE7)
    		>;
    	};
    
    	dcan0_default: dcan0_default_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x978, PIN_OUTPUT | MUX_MODE2)		/* uart1_ctsn.d_can0_tx */
    			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_rtsn.d_can0_rx */
    		>;
    	};
    
    	dcan0_sleep: dcan0_sleep_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x978, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_ctsn.gpio0_12 */
    			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rtsn.gpio0_13 */
    		>;
    	};
    
    	dcan1_default: dcan1_default_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x980, PIN_OUTPUT | MUX_MODE2)		/* uart1_rxd.d_can1_tx */
    			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_txd.d_can1_rx */
    		>;
    	};
    
    	dcan1_sleep: dcan1_sleep_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x980, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rxd.gpio0_14 */
    			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_txd.gpio0_15 */
    		>;
    	};
    
    	vpfe0_pins_default: vpfe0_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9b0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_hd mode 0*/
    			AM4372_IOPAD(0x9b4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_vd mode 0*/
    			AM4372_IOPAD(0x9c0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_pclk mode 0*/
    			AM4372_IOPAD(0x9c4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data8 mode 0*/
    			AM4372_IOPAD(0x9c8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data9 mode 0*/
    			AM4372_IOPAD(0xa08, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data0 mode 0*/
    			AM4372_IOPAD(0xa0c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data1 mode 0*/
    			AM4372_IOPAD(0xa10, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data2 mode 0*/
    			AM4372_IOPAD(0xa14, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data3 mode 0*/
    			AM4372_IOPAD(0xa18, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data4 mode 0*/
    			AM4372_IOPAD(0xa1c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data5 mode 0*/
    			AM4372_IOPAD(0xa20, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data6 mode 0*/
    			AM4372_IOPAD(0xa24, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data7 mode 0*/
    		>;
    	};
    
    	vpfe0_pins_sleep: vpfe0_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9b0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_hd mode 0*/
    			AM4372_IOPAD(0x9b4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_vd mode 0*/
    			AM4372_IOPAD(0x9c0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_pclk mode 0*/
    			AM4372_IOPAD(0x9c4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data8 mode 0*/
    			AM4372_IOPAD(0x9c8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data9 mode 0*/
    			AM4372_IOPAD(0xa08, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data0 mode 0*/
    			AM4372_IOPAD(0xa0c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data1 mode 0*/
    			AM4372_IOPAD(0xa10, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data2 mode 0*/
    			AM4372_IOPAD(0xa14, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data3 mode 0*/
    			AM4372_IOPAD(0xa18, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data4 mode 0*/
    			AM4372_IOPAD(0xa1c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data5 mode 0*/
    			AM4372_IOPAD(0xa20, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data6 mode 0*/
    			AM4372_IOPAD(0xa24, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data7 mode 0*/
    		>;
    	};
    
    	vpfe1_pins_default: vpfe1_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9cc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data9 mode 0*/
    			AM4372_IOPAD(0x9d0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data8 mode 0*/
    			AM4372_IOPAD(0x9d4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_hd mode 0*/
    			AM4372_IOPAD(0x9d8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_vd mode 0*/
    			AM4372_IOPAD(0x9dC, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_pclk mode 0*/
    			AM4372_IOPAD(0x9e8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data0 mode 0*/
    			AM4372_IOPAD(0x9ec, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data1 mode 0*/
    			AM4372_IOPAD(0x9f0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data2 mode 0*/
    			AM4372_IOPAD(0x9f4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data3 mode 0*/
    			AM4372_IOPAD(0x9f8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data4 mode 0*/
    			AM4372_IOPAD(0x9fc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data5 mode 0*/
    			AM4372_IOPAD(0xa00, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data6 mode 0*/
    			AM4372_IOPAD(0xa04, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data7 mode 0*/
    		>;
    	};
    
    	vpfe1_pins_sleep: vpfe1_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9cc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data9 mode 0*/
    			AM4372_IOPAD(0x9d0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data8 mode 0*/
    			AM4372_IOPAD(0x9d4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_hd mode 0*/
    			AM4372_IOPAD(0x9d8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_vd mode 0*/
    			AM4372_IOPAD(0x9dc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_pclk mode 0*/
    			AM4372_IOPAD(0x9e8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data0 mode 0*/
    			AM4372_IOPAD(0x9ec, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data1 mode 0*/
    			AM4372_IOPAD(0x9f0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data2 mode 0*/
    			AM4372_IOPAD(0x9f4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data3 mode 0*/
    			AM4372_IOPAD(0x9f8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data4 mode 0*/
    			AM4372_IOPAD(0x9fc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data5 mode 0*/
    			AM4372_IOPAD(0xa00, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data6 mode 0*/
    			AM4372_IOPAD(0xa04, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data7 mode 0*/
    		>;
    	};
    
    	mmc3_pins_default: pinmux_mmc3_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x88c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_clk.mmc2_clk */
    			AM4372_IOPAD(0x888, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_csn3.mmc2_cmd */
    			AM4372_IOPAD(0x844, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a1.mmc2_dat0 */
    			AM4372_IOPAD(0x848, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a2.mmc2_dat1 */
    			AM4372_IOPAD(0x84c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a3.mmc2_dat2 */
    			AM4372_IOPAD(0x878, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_be1n.mmc2_dat3 */
    		>;
    	};
    
    	mmc3_pins_sleep: pinmux_mmc3_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x88c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_clk.mmc2_clk */
    			AM4372_IOPAD(0x888, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_csn3.mmc2_cmd */
    			AM4372_IOPAD(0x844, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a1.mmc2_dat0 */
    			AM4372_IOPAD(0x848, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a2.mmc2_dat1 */
    			AM4372_IOPAD(0x84c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a3.mmc2_dat2 */
    			AM4372_IOPAD(0x878, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_be1n.mmc2_dat3 */
    		>;
    	};
    
    	wlan_pins_default: pinmux_wlan_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
    			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
    			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
    		>;
    	};
    
    	wlan_pins_sleep: pinmux_wlan_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
    			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
    			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLUP | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
    		>;
    	};
    
    	uart3_pins: uart3_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa28, PIN_INPUT | MUX_MODE0)		/* uart3_rxd.uart3_rxd */
    			AM4372_IOPAD(0xa2c, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_txd.uart3_txd */
    			AM4372_IOPAD(0xa30, PIN_INPUT_PULLUP | MUX_MODE0)	/* uart3_ctsn.uart3_ctsn */
    			AM4372_IOPAD(0xa34, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_rtsn.uart3_rtsn */
    		>;
    	};
    
    	mcasp1_pins: mcasp1_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x908, PIN_OUTPUT_PULLDOWN | MUX_MODE4)	/* mii1_col.mcasp1_axr2 */
    			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_crs.mcasp1_aclkx */
    			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_rxerr.mcasp1_fsx */
    			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* rmii1_ref_clk.mcasp1_axr3 */
    		>;
    	};
    
    	mcasp1_sleep_pins: mcasp1_sleep_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x908, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	gpio0_pins: gpio0_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa6c, PIN_OUTPUT | MUX_MODE9) /* spi2_cs0.gpio0_23 SEL_eMMCorNANDn */
    		>;
    	};
    
    	emmc_pins_default: emmc_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
    			AM4372_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
    			AM4372_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
    			AM4372_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
    			AM4372_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
    			AM4372_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
    			AM4372_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
    			AM4372_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
    			AM4372_IOPAD(0x880, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
    			AM4372_IOPAD(0x884, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
    		>;
    	};
    
    	emmc_pins_sleep: emmc_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x800, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad0.gpio1_0 */
    			AM4372_IOPAD(0x804, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad1.gpio1_1 */
    			AM4372_IOPAD(0x808, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad2.gpio1_2 */
    			AM4372_IOPAD(0x80c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad3.gpio1_3 */
    			AM4372_IOPAD(0x810, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad4.gpio1_4 */
    			AM4372_IOPAD(0x814, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad5.gpio1_5 */
    			AM4372_IOPAD(0x818, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad6.gpio1_6 */
    			AM4372_IOPAD(0x81c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad7.gpio1_7 */
    			AM4372_IOPAD(0x880, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn1.gpio1_30 */
    			AM4372_IOPAD(0x884, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn2.gpio1_31 */
    		>;
    	};
    
    	beeper_pins_default: beeper_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9e0, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* cam1_field.gpio4_12 */
    		>;
    	};
    
    	beeper_pins_sleep: beeper_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9e0, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* cam1_field.gpio4_12 */
    		>;
    	};
    
    	unused_pins: unused_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x854, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x858, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x860, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x864, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x868, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x86c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x950, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x990, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x994, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x998, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x99c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x9a0, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa3c, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
    			AM4372_IOPAD(0xa40, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa44, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa48, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa4c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa50, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa54, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
    			AM4372_IOPAD(0xa58, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa60, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
    			AM4372_IOPAD(0xa68, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa70, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa78, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa7c, PIN_INPUT | PULL_DISABLE)
    			AM4372_IOPAD(0xac8, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xad4, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xad8, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xadc, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xae0, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xae4, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xae8, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaec, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaf0, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaf4, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaf8, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xafc, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb00, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb04, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb08, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb0c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb10, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb14, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb18, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	debugss_pins: pinmux_debugss_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa90, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xa94, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xa98, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xa9c, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xaa0, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xaa4, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xaa8, PIN_INPUT_PULLDOWN)
    		>;
    	};
    
    	uart0_pins_default: uart0_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_ctsn.uart0_ctsn */
    			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_rtsn.uart0_rtsn */
    			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
    			AM4372_IOPAD(0x974, PIN_INPUT | PULL_DISABLE | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
    		>;
    	};
    
    	uart0_pins_sleep: uart0_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_ctsn.uart0_ctsn */
    			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_rtsn.uart0_rtsn */
    			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
    			AM4372_IOPAD(0x974, PIN_INPUT_PULLDOWN | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
    		>;
    	};
    
    	matrix_keypad_default: matrix_keypad_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9a4, PIN_OUTPUT | MUX_MODE7)
    			AM4372_IOPAD(0x9a8, PIN_OUTPUT | MUX_MODE7)
    			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
    			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
    		>;
    	};
    
    	matrix_keypad_sleep: matrix_keypad_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9a4, PULL_UP | MUX_MODE7)
    			AM4372_IOPAD(0x9a8, PULL_UP | MUX_MODE7)
    			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
    			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
    		>;
    	};
    };
    
    &uart0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&uart0_pins_default>;
    };
    
    &i2c0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&i2c0_pins>;
    	clock-frequency = <100000>;
    
    	tps65218: tps65218@24 {
    		reg = <0x24>;
    		compatible = "ti,tps65218";
    		interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* NMIn */
    		interrupt-controller;
    		#interrupt-cells = <2>;
    
    		dcdc1: regulator-dcdc1 {
    			regulator-name = "vdd_core";
    			regulator-min-microvolt = <912000>;
    			regulator-max-microvolt = <1144000>;
    			regulator-boot-on;
    			regulator-always-on;
    		};
    
    		dcdc2: regulator-dcdc2 {
    			regulator-name = "vdd_mpu";
    			regulator-min-microvolt = <912000>;
    			regulator-max-microvolt = <1378000>;
    			regulator-boot-on;
    			regulator-always-on;
    		};
    
    		dcdc3: regulator-dcdc3 {
    			regulator-name = "vdcdc3";
    			regulator-boot-on;
    			regulator-always-on;
    			regulator-state-mem {
    				regulator-on-in-suspend;
    			};
    			regulator-state-disk {
    				regulator-off-in-suspend;
    			};
    		};
    
    		dcdc5: regulator-dcdc5 {
    			regulator-name = "v1_0bat";
    			regulator-min-microvolt = <1000000>;
    			regulator-max-microvolt = <1000000>;
    			regulator-boot-on;
    			regulator-always-on;
    			regulator-state-mem {
    				regulator-on-in-suspend;
    			};
    		};
    
    		dcdc6: regulator-dcdc6 {
    			regulator-name = "v1_8bat";
    			regulator-min-microvolt = <1800000>;
    			regulator-max-microvolt = <1800000>;
    			regulator-boot-on;
    			regulator-always-on;
    			regulator-state-mem {
    				regulator-on-in-suspend;
    			};
    		};
    
    		ldo1: regulator-ldo1 {
    			regulator-min-microvolt = <1800000>;
    			regulator-max-microvolt = <1800000>;
    			regulator-boot-on;
    			regulator-always-on;
    		};
    	};
    
    	ov2659@30 {
    		compatible = "ovti,ov2659";
    		reg = <0x30>;
    
    		clocks = <&audio_mstrclk>;
    		clock-names = "xvclk";
    
    		port {
    			ov2659_0: endpoint {
    				remote-endpoint = <&vpfe1_ep>;
    				link-frequencies = /bits/ 64 <70000000>;
    			};
    		};
    	};
    };
    
    &i2c1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&i2c1_pins>;
    	pixcir_ts@5c {
    		compatible = "pixcir,pixcir_tangoc";
    		pinctrl-names = "default";
    		pinctrl-0 = <&pixcir_ts_pins>;
    		reg = <0x5c>;
    
    		attb-gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
    
    		/*
    		 * 0x264 represents the offset of padconf register of
    		 * gpio3_22 from am43xx_pinmux base.
    		 */
    		interrupts-extended = <&gpio3 22 IRQ_TYPE_EDGE_FALLING>,
    				      <&am43xx_pinmux 0x264>;
    		interrupt-names = "tsc", "wakeup";
    
    		touchscreen-size-x = <1024>;
    		touchscreen-size-y = <600>;
    		wakeup-source;
    	};
    
    	ov2659@30 {
    		compatible = "ovti,ov2659";
    		reg = <0x30>;
    
    		clocks = <&audio_mstrclk>;
    		clock-names = "xvclk";
    
    		port {
    			ov2659_1: endpoint {
    				remote-endpoint = <&vpfe0_ep>;
    				link-frequencies = /bits/ 64 <70000000>;
    			};
    		};
    	};
    
    	tlv320aic3106: tlv320aic3106@1b {
    		#sound-dai-cells = <0>;
    		compatible = "ti,tlv320aic3106";
    		reg = <0x1b>;
    		status = "okay";
    
    		/* Regulators */
    		IOVDD-supply = <&evm_v3_3d>; /* V3_3D -> <tps63031> EN: V1_8D -> VBAT */
    		AVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
    		DRVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
    		DVDD-supply = <&ldo1>; /* V1_8D -> LDO1 */
    	};
    };
    
    &epwmss0 {
    	status = "okay";
    };
    
    &tscadc {
    	status = "okay";
    
    	adc {
    		ti,adc-channels = <0 1 2 3 4 5 6 7>;
    	};
    };
    
    &ecap0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&ecap0_pins>;
    };
    
    &gpio0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&gpio0_pins>;
    	status = "okay";
    
    	p23 {
    		gpio-hog;
    		gpios = <23 GPIO_ACTIVE_HIGH>;
    		/* SelEMMCorNAND selects between eMMC and NAND:
    		 * Low: NAND
    		 * High: eMMC
    		 * When changing this line make sure the newly
    		 * selected device node is enabled and the previously
    		 * selected device node is disabled.
    		 */
    		output-low;
    		line-name = "SelEMMCorNAND";
    	};
    };
    
    &gpio1 {
    	status = "okay";
    };
    
    &gpio3 {
    	status = "okay";
    };
    
    &gpio4 {
    	status = "okay";
    };
    
    &gpio5 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&display_mux_pins>;
    	status = "okay";
    	ti,no-reset-on-init;
    
    	p8 {
    		/*
    		 * SelLCDorHDMI selects between display and audio paths:
    		 * Low: HDMI display with audio via HDMI
    		 * High: LCD display with analog audio via aic3111 codec
    		 */
    		gpio-hog;
    		gpios = <8 GPIO_ACTIVE_HIGH>;
    		output-high;
    		line-name = "SelLCDorHDMI";
    	};
    };
    
    &mmc1 {
    	status = "okay";
    	vmmc-supply = <&evm_v3_3d>;
    	bus-width = <4>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&mmc1_pins>;
    	cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
    };
    
    /* eMMC sits on mmc2 */
    &mmc2 {
    	/*
    	 * When enabling eMMC, disable GPMC/NAND and set
    	 * SelEMMCorNAND to output-high
    	 */
    	status = "disabled";
    	vmmc-supply = <&evm_v3_3d>;
    	bus-width = <8>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&emmc_pins_default>;
    	pinctrl-1 = <&emmc_pins_sleep>;
    	ti,non-removable;
    };
    
    &mmc3 {
    	status = "okay";
    	/* these are on the crossbar and are outlined in the
    	   xbar-event-map element */
    	dmas = <&edma_xbar 30 0 1>,
    		<&edma_xbar 31 0 2>;
    	dma-names = "tx", "rx";
    	vmmc-supply = <&vmmcwl_fixed>;
    	bus-width = <4>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mmc3_pins_default>;
    	pinctrl-1 = <&mmc3_pins_sleep>;
    	cap-power-off-card;
    	keep-power-in-suspend;
    	ti,non-removable;
    
    	#address-cells = <1>;
    	#size-cells = <0>;
    	wlcore: wlcore@0 {
    		compatible = "ti,wl1835";
    		reg = <2>;
    		interrupt-parent = <&gpio1>;
    		interrupts = <23 IRQ_TYPE_EDGE_RISING>;
    	};
    };
    
    &uart3 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&uart3_pins>;
    };
    
    &usb2_phy1 {
    	status = "okay";
    };
    
    &usb1 {
    	dr_mode = "otg";
    	status = "okay";
    };
    
    &usb2_phy2 {
    	status = "okay";
    };
    
    &usb2 {
    	dr_mode = "host";
    	status = "okay";
    };
    
    &mac {
    	slaves = <1>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&cpsw_default>;
    	pinctrl-1 = <&cpsw_sleep>;
    	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";
    };
    
    &elm {
    	status = "okay";
    };
    
    &gpmc {
    	/*
    	 * When enabling GPMC, disable eMMC and set
    	 * SelEMMCorNAND to output-low
    	 */
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&nand_flash_x8>;
    	ranges = <0 0 0x08000000 0x01000000>;	/* CS0 space. Min partition = 16MB */
    	nand@0,0 {
    		compatible = "ti,omap2-nand";
    		reg = <0 0 4>;		/* device IO registers */
    		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 = "bch16";
    		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 = <40>;
    		gpmc,cs-wr-off-ns = <40>;
    		gpmc,adv-on-ns = <0>;
    		gpmc,adv-rd-off-ns = <25>;
    		gpmc,adv-wr-off-ns = <25>;
    		gpmc,we-on-ns = <0>;
    		gpmc,we-off-ns = <20>;
    		gpmc,oe-on-ns = <3>;
    		gpmc,oe-off-ns = <30>;
    		gpmc,access-ns = <30>;
    		gpmc,rd-cycle-ns = <40>;
    		gpmc,wr-cycle-ns = <40>;
    		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 0x00040000>;
    		};
    		partition@1 {
    			label = "NAND.SPL.backup1";
    			reg = <0x00040000 0x00040000>;
    		};
    		partition@2 {
    			label = "NAND.SPL.backup2";
    			reg = <0x00080000 0x00040000>;
    		};
    		partition@3 {
    			label = "NAND.SPL.backup3";
    			reg = <0x000c0000 0x00040000>;
    		};
    		partition@4 {
    			label = "NAND.u-boot-spl-os";
    			reg = <0x00100000 0x00080000>;
    		};
    		partition@5 {
    			label = "NAND.u-boot";
    			reg = <0x00180000 0x00100000>;
    		};
    		partition@6 {
    			label = "NAND.u-boot-env";
    			reg = <0x00280000 0x00040000>;
    		};
    		partition@7 {
    			label = "NAND.u-boot-env.backup1";
    			reg = <0x002c0000 0x00040000>;
    		};
    		partition@8 {
    			label = "NAND.kernel";
    			reg = <0x00300000 0x00700000>;
    		};
    		partition@9 {
    			label = "NAND.file-system";
    			reg = <0x00a00000 0x1f600000>;
    		};
    	};
    };
    
    &uart0 {
    	status = "okay";
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&uart0_pins_default>;
    	pinctrl-1 = <&uart0_pins_sleep>;
    };
    
    &dss {
    	status = "ok";
    
    	pinctrl-names = "default";
    	pinctrl-0 = <&dss_pins>;
    
    	port {
    		dpi_out: endpoint {
    			remote-endpoint = <&lcd_in>;
    			data-lines = <24>;
    		};
    	};
    };
    
    &dcan0 {
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&dcan0_default>;
    	pinctrl-1 = <&dcan0_sleep>;
    	status = "okay";
    };
    
    &dcan1 {
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&dcan1_default>;
    	pinctrl-1 = <&dcan1_sleep>;
    	status = "okay";
    };
    
    &vpfe0 {
    	status = "okay";
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&vpfe0_pins_default>;
    	pinctrl-1 = <&vpfe0_pins_sleep>;
    
    	port {
    		vpfe0_ep: endpoint {
    			remote-endpoint = <&ov2659_1>;
    			ti,am437x-vpfe-interface = <0>;
    			bus-width = <8>;
    			hsync-active = <0>;
    			vsync-active = <0>;
    		};
    	};
    };
    
    &vpfe1 {
    	status = "okay";
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&vpfe1_pins_default>;
    	pinctrl-1 = <&vpfe1_pins_sleep>;
    
    	port {
    		vpfe1_ep: endpoint {
    			remote-endpoint = <&ov2659_0>;
    			ti,am437x-vpfe-interface = <0>;
    			bus-width = <8>;
    			hsync-active = <0>;
    			vsync-active = <0>;
    		};
    	};
    };
    
    &mcasp1 {
    	#sound-dai-cells = <0>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mcasp1_pins>;
    	pinctrl-1 = <&mcasp1_sleep_pins>;
    
    	status = "okay";
    
    	op-mode = <0>; /* MCASP_IIS_MODE */
    	tdm-slots = <2>;
    	/* 4 serializers */
    	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
    		0 0 1 2
    	>;
    	tx-num-evt = <32>;
    	rx-num-evt = <32>;
    };
    
    &rtc {
    	clocks = <&clk_32k_rtc>, <&clk_32768_ck>;
    	clock-names = "ext-clk", "int-clk";
    	status = "okay";
    };
    
    &cpu {
    	cpu0-supply = <&dcdc2>;
    };
    
    &wkup_m3_ipc {
    	ti,set-io-isolation;
    	ti,scale-data-fw = "am43x-evm-scale-data.bin";
    };
    
    &sgx {
    	status = "okay";
    };
    
    &pruss_soc_bus {
    	status = "okay";
    
    	pruss1: pruss@54400000 {
    		status = "okay";
    	};
    
    	pruss0: pruss@54440000 {
    		status = "okay";
    	};
    };
    

    The result of kmstest :

    root@am437x-evm:~# kmstest --flip                                               
    terminate called after throwing an instance of 'std::invalid_argument'          
      what():  no modes available                                                   
                                                                                    
    Aborted (core dumped)

    The result of mode test :

    root@am437x-evm:~# modetest                                                     
    trying to open device 'i915'...failed                                           
    trying to open device 'amdgpu'...failed                                         
    trying to open device 'radeon'...failed                                         
    trying to open device 'nouveau'...failed                                        
    trying to open device 'vmwgfx'...failed                                         
    trying to open device 'omapdrm'...done                                          
    Encoders:                                                                       
    id      crtc    type    possible crtcs  possible clones                         
    45      0       TMDS    0x00000001      0x00000000                              
                                                                                    
    Connectors:                                                                     
    id      encoder status          name            size (mm)       modes   encoders
    46      0       connected       DPI-1           217x136         0       45      
      props:                                                                        
            1 EDID:                                                                 
                    flags: immutable blob                                           
                    blobs:                                                          
                                                                                    
                    value:                                                          
            2 DPMS:                                                                 
                    flags: enum                                                     
                    enums: On=0 Standby=1 Suspend=2 Off=3                           
                    value: 0                                                        
            5 link-status:                                                          
                    flags: enum                                                     
                    enums: Good=0 Bad=1                                             
                    value: 0                                                        
            6 non-desktop:                                                          
                    flags: immutable range                                          
                    values: 0 1                                                     
                    value: 0                                                        
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 0                                                        
                                                                                    
    CRTCs:                                                                          
    id      fb      pos     size                                                    
    47      0       (0,0)   (0x0)                                                   
       0 0 0 0 0 0 0 0 0 0 flags: ; type:                                           
      props:                                                                        
            20 ACTIVE:                                                              
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
            21 MODE_ID:                                                             
                    flags: blob                                                     
                    blobs:                                                          
                                                                                    
                    value:                                                          
            18 OUT_FENCE_PTR:                                                       
                    flags: range                                                    
                    values: 0 18446744073709551615                                  
                    value: 0                                                        
            31 background:                                                          
                    flags: range                                                    
                    values: 0 16777215                                              
                    value: 0                                                        
            32 trans-key-mode:                                                      
                    flags: enum                                                     
                    enums: disable=0 gfx-dst=1 vid-src=2                            
                    value: 0                                                        
            33 trans-key:                                                           
                    flags: range                                                    
                    values: 0 16777215                                              
                    value: 0                                                        
            34 alpha_blender:                                                       
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 0                                                        
                                                                                    
    Planes:                                                                         
    id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs  
    35      0       0       0,0             0,0     0               0x00000001      
      formats: RX12 AR12 RG16 XR24 RG24 AR24 RA24 RX24                              
      props:                                                                        
            7 type:                                                                 
                    flags: immutable enum                                           
                    enums: Overlay=0 Primary=1 Cursor=2                             
                    value: 1                                                        
            16 FB_ID:                                                               
                    flags: object                                                   
                    value: 0                                                        
            17 IN_FENCE_FD:                                                         
                    flags: signed range                                             
                    values: -1 2147483647                                           
                    value: -1                                                       
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 0                                                        
            12 CRTC_X:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            13 CRTC_Y:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            14 CRTC_W:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            15 CRTC_H:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            8 SRC_X:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            9 SRC_Y:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            10 SRC_W:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            11 SRC_H:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 0                                                        
            36 zpos:                                                                
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 0                                                        
            29 global_alpha:                                                        
                    flags: range                                                    
                    values: 0 255                                                   
                    value: 255                                                      
            30 pre_mult_alpha:                                                      
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
    37      0       0       0,0             0,0     0               0x00000001      
      formats: XR24 RG24 RX12 RG16 YUYV UYVY                                        
      props:                                                                        
            7 type:                                                                 
                    flags: immutable enum                                           
                    enums: Overlay=0 Primary=1 Cursor=2                             
                    value: 0                                                        
            16 FB_ID:                                                               
                    flags: object                                                   
                    value: 0                                                        
            17 IN_FENCE_FD:                                                         
                    flags: signed range                                             
                    values: -1 2147483647                                           
                    value: -1                                                       
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 0                                                        
            12 CRTC_X:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            13 CRTC_Y:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            14 CRTC_W:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            15 CRTC_H:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            8 SRC_X:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            9 SRC_Y:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            10 SRC_W:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            11 SRC_H:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 1                                                        
            38 zpos:                                                                
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 1                                                        
            39 COLOR_ENCODING:                                                      
                    flags: enum                                                     
                    enums: ITU-R BT.601 YCbCr=0 ITU-R BT.709 YCbCr=1                
                    value: 0                                                        
            40 COLOR_RANGE:                                                         
                    flags: enum                                                     
                    enums: YCbCr limited range=0 YCbCr full range=1                 
                    value: 1                                                        
            29 global_alpha:                                                        
                    flags: range                                                    
                    values: 0 255                                                   
                    value: 255                                                      
            30 pre_mult_alpha:                                                      
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
    41      0       0       0,0             0,0     0               0x00000001      
      formats: RX12 AR12 RG16 XR24 RG24 YUYV UYVY AR24 RA24 RX24                    
      props:                                                                        
            7 type:                                                                 
                    flags: immutable enum                                           
                    enums: Overlay=0 Primary=1 Cursor=2                             
                    value: 0                                                        
            16 FB_ID:                                                               
                    flags: object                                                   
                    value: 0                                                        
            17 IN_FENCE_FD:                                                         
                    flags: signed range                                             
                    values: -1 2147483647                                           
                    value: -1                                                       
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 0                                                        
            12 CRTC_X:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            13 CRTC_Y:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            14 CRTC_W:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            15 CRTC_H:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            8 SRC_X:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            9 SRC_Y:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            10 SRC_W:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            11 SRC_H:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 2                                                        
            42 zpos:                                                                
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 2                                                        
            43 COLOR_ENCODING:                                                      
                    flags: enum                                                     
                    enums: ITU-R BT.601 YCbCr=0 ITU-R BT.709 YCbCr=1                
                    value: 0                                                        
            44 COLOR_RANGE:                                                         
                    flags: enum                                                     
                    enums: YCbCr limited range=0 YCbCr full range=1                 
                    value: 1                                                        
            29 global_alpha:                                                        
                    flags: range                                                    
                    values: 0 255                                                   
                    value: 255                                                      
            30 pre_mult_alpha:                                                      
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
                                                                                    
    Frame buffers:                                                                  
    id      size    pitch  

    Thanks, kihan.

  • Hello Kihan,

    As an experiment, could you please take the pre-built binaries and boot your AM437x GPEVM? Before, we modify anything, let's make sure the LCD works out of box.

    Regards,
    Krunal  

  • Hi, Krunal.

    Thanks for prompt your reply.

    I  booted my AM437x GP EVM with pre-built binaries as you recommanded.

    The LCD works fine.

    I attached the boot log, kmstest and modetest result.

    U-Boot 2019.01-g029e4c009a (Oct 19 2019 - 23:19:05 +0000)                       
                                                                                    
    CPU  : AM437X-GP rev 1.2                                                        
    Model: TI AM437x GP EVM                                                         
    DRAM:  2 GiB                                                                    
    PMIC:  TPS65218                                                                 
    NAND:  512 MiB                                                                  
    MMC:   OMAP SD/MMC: 0                                                           
    Loading Environment from FAT... *** Warning - bad CRC, using default environment
                                                                                    
    Net:                                                                            
    Warning: ethernet@4a100000 using MAC address from ROM                           
    eth0: ethernet@4a100000                                                         
    Hit any key to stop autoboot:  0                                                
    switch to partitions #0, OK                                                     
    mmc0 is current device                                                          
    SD/MMC found on device 0                                                        
    ** Unable to read file boot.scr **                                              
    ** Unable to read file uEnv.txt **                                              
    switch to partitions #0, OK                                                     
    mmc0 is current device                                                          
    SD/MMC found on device 0                                                        
    4297216 bytes read in 223 ms (18.4 MiB/s)                                       
    52345 bytes read in 7 ms (7.1 MiB/s)                                            
    ## Flattened Device Tree blob at 88000000                                       
       Booting using the fdt blob at 0x88000000                                     
       Loading Device Tree to 8fff0000, end 8ffffc78 ... OK                         
                                                                                    
    Starting kernel ...                                                             
                                                                                    
    [    0.000000] Booting Linux on physical CPU 0x0                                
    [    0.000000] Linux version 4.19.94-gbe5389fd85 (oe-user@oe-host) (gcc version0
    [    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d 
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructie
    [    0.000000] OF: fdt: Machine model: TI AM437x GP EVM                         
    [    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 0xfcc00000                               
    [    0.000000] CPU: All CPU(s) started in SVC mode.                             
    [    0.000000] AM437x ES1.2 (sgx neon)                                          
    [    0.000000] random: get_random_bytes called from start_kernel+0xa4/0x434 wit0
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 522559    
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=556b06t
    [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) 
    [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)   
    [    0.000000] Memory: 2014640K/2097148K available (9216K kernel code, 316K rwd)
    [    0.000000] Virtual kernel memory layout:                                    
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)                
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)                
    [    0.000000]     vmalloc : 0xf0800000 - 0xff800000   ( 240 MB)                
    [    0.000000]     lowmem  : 0xc0000000 - 0xf0000000   ( 768 MB)                
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)                
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)                
    [    0.000000]       .text : 0x(ptrval) - 0x(ptrval)   (10208 kB)               
    [    0.000000]       .init : 0x(ptrval) - 0x(ptrval)   (1024 kB)                
    [    0.000000]       .data : 0x(ptrval) - 0x(ptrval)   ( 317 kB)                
    [    0.000000]        .bss : 0x(ptrval) - 0x(ptrval)   ( 255 kB)                
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1       
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.                
    [    0.000000]  Tasks RCU enabled.                                              
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16                  
    [    0.000000] L2C: platform modifies aux control register: 0x0e030000 -> 0x3e40
    [    0.000000] L2C: DT/platform modifies aux control register: 0x0e030000 -> 0x0
    [    0.000000] L2C-310 enabling early BRESP for Cortex-A9                       
    [    0.000000] OMAP L2C310: ROM does not support power control setting          
    [    0.000000] L2C-310 dynamic clock gating disabled, standby mode disabled     
    [    0.000000] L2C-310 cache controller enabled, 16 ways, 256 kB                
    [    0.000000] L2C-310: CACHE_ID 0x410000c9, AUX_CTRL 0x4e430000                
    [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz                    
    [    0.000013] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 8947s
    [    0.000031] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, mas
    [    0.000039] OMAP clocksource: timer1 at 24000000 Hz                          
    [    0.000434] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xfffffffs
    [    0.000445] OMAP clocksource: 32k_counter at 32768 Hz                        
    [    0.000841] Console: colour dummy device 80x30                               
    [    0.000869] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'       
    [    0.000874] This ensures that you still see kernel messages. Please          
    [    0.000878] update your kernel commandline.                                  
    [    0.000921] Calibrating delay loop... 1987.37 BogoMIPS (lpj=9936896)         
    [    0.060187] pid_max: default: 32768 minimum: 301                             
    [    0.060370] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)      
    [    0.060394] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) 
    [    0.061139] CPU: Testing write buffer coherency: ok                          
    [    0.061195] CPU0: Spectre v2: using BPIALL workaround                        
    [    0.062080] Setting up static identity map for 0x80100000 - 0x80100060       
    [    0.062226] rcu: Hierarchical SRCU implementation.                           
    [    0.062565] EFI services will not be available.                              
    [    0.063645] devtmpfs: initialized                                            
    [    0.072657] VFP support v0.3: implementor 41 architecture 3 part 30 variant 4
    [    0.073034] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ms
    [    0.073056] futex hash table entries: 256 (order: -1, 3072 bytes)            
    [    0.076190] pinctrl core: initialized pinctrl subsystem                      
    [    0.076883] DMI not present or invalid.                                      
    [    0.077324] NET: Registered protocol family 16                               
    [    0.078989] DMA: preallocated 256 KiB pool for atomic coherent allocations   
    [    0.152166] cpuidle: using governor ladder                                   
    [    0.152205] cpuidle: using governor menu                                     
    [    0.159239] OMAP GPIO hardware version 0.1                                   
    [    0.168507] No ATAGs?                                                        
    [    0.168528] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint.
    [    0.168548] hw-breakpoint: maximum watchpoint size is 4 bytes.               
    [    0.182086] edma 49000000.edma: TI EDMA DMA engine driver                    
    [    0.185939] SCSI subsystem initialized                                       
    [    0.186431] media: Linux media interface: v0.10                              
    [    0.186471] videodev: Linux video capture interface: v2.00                   
    [    0.186590] pps_core: LinuxPPS API ver. 1 registered                         
    [    0.186599] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giom>
    [    0.186624] PTP clock support registered                                     
    [    0.186659] EDAC MC: Ver: 3.0.0                                              
    [    0.187624] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400            
    [    0.188256] Advanced Linux Sound Architecture Driver Initialized.            
    [    0.189341] clocksource: Switched to clocksource timer1                      
    [    0.196907] NET: Registered protocol family 2                                
    [    0.197666] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096)
    [    0.197700] TCP established hash table entries: 8192 (order: 3, 32768 bytes) 
    [    0.197760] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)        
    [    0.197833] TCP: Hash tables configured (established 8192 bind 8192)         
    [    0.198008] UDP hash table entries: 512 (order: 1, 8192 bytes)               
    [    0.198032] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes)          
    [    0.198168] NET: Registered protocol family 1                                
    [    0.198719] RPC: Registered named UNIX socket transport module.              
    [    0.198733] RPC: Registered udp transport module.                            
    [    0.198739] RPC: Registered tcp transport module.                            
    [    0.198745] RPC: Registered tcp NFSv4.1 backchannel transport module.        
    [    0.200701] Initialise system trusted keyrings                               
    [    0.201010] workingset: timestamp_bits=14 max_order=19 bucket_order=5        
    [    0.205045] squashfs: version 4.0 (2009/01/31) Phillip Lougher               
    [    0.205736] NFS: Registering the id_resolver key type                        
    [    0.205772] Key type id_resolver registered                                  
    [    0.205779] Key type id_legacy registered                                    
    [    0.205818] ntfs: driver 2.1.32 [Flags: R/O].                                
    [    0.208054] Key type asymmetric registered                                   
    [    0.208071] Asymmetric key parser 'x509' registered                          
    [    0.208134] bounce: pool size: 64 pages                                      
    [    0.208197] Block layer SCSI generic (bsg) driver version 0.4 loaded (major )
    [    0.208209] io scheduler noop registered                                     
    [    0.208215] io scheduler deadline registered                                 
    [    0.208439] io scheduler cfq registered (default)                            
    [    0.208450] io scheduler mq-deadline registered                              
    [    0.208457] io scheduler kyber registered                                    
    [    0.211356] pinctrl-single 44e10800.pinmux: 199 pins, size 796               
    [    0.214948] pwm-backlight backlight: backlight supply power not found, usingr
    [    0.215044] pwm-backlight backlight: Linked as a consumer to regulator.0     
    [    0.257883] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled         
    [    0.261165] omap8250 44e09000.serial: No clock speed specified: using defaul0
    [    0.261863] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 31, base_baud =0
    [    0.950357] console [ttyS0] enabled                                          
    [    0.954477] omap8250 481a6000.serial: No clock speed specified: using defaul0
    [    0.963236] 481a6000.serial: ttyS3 at MMIO 0x481a6000 (irq = 32, base_baud =0
    [    0.974048] omap_rng 48310000.rng: Random Number Generator ver. 20           
    [    0.980492] random: fast init done                                           
    [    0.984106] random: crng init done                                           
    [    0.989509] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not four
    [    0.998855] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0    
    [    1.005837] omapdss_dss 4832a000.dss: Dropping the link to regulator.0       
    [    1.015461] panel-simple display: display supply power not found, using dummr
    [    1.023683] panel-simple display: Linked as a consumer to regulator.0        
    [    1.041143] brd: module loaded                                               
    [    1.052984] loop: module loaded                                              
    [    1.059147] libphy: Fixed MDIO Bus: probed                                   
    [    1.129403] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 0
    [    1.137104] davinci_mdio 4a101000.mdio: detected phy mask fffffffe           
    [    1.144382] libphy: 4a101000.mdio: probed                                    
    [    1.148427] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driY
    [    1.159062] cpsw 4a100000.ethernet: Detected MACID = 34:b1:f7:3d:b9:84       
    [    1.165837] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4         
    [    1.172303] cpsw 4a100000.ethernet: ALE Table size 1024                      
    [    1.177586] cpsw 4a100000.ethernet: cpts: overflow check period 500 (jiffies)
    [    1.186126] i2c /dev entries driver                                          
    [    1.191760] cpuidle: enable-method property 'ti,am4372' found operations     
    [    1.198927] sdhci: Secure Digital Host Controller Interface driver           
    [    1.205242] sdhci: Copyright(c) Pierre Ossman                                
    [    1.211085] omap_hsmmc 47810000.mmc: Linked as a consumer to regulator.2     
    [    1.242410] sdhci-pltfm: SDHCI platform and OF driver helper                 
    [    1.249039] ledtrig-cpu: registered to indicate activity on CPUs             
    [    1.260409] NET: Registered protocol family 10                               
    [    1.266186] Segment Routing with IPv6                                        
    [    1.270103] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver              
    [    1.276877] NET: Registered protocol family 17                               
    [    1.281801] Key type dns_resolver registered                                 
    [    1.286349] omap_voltage_late_init: Voltage driver support not added         
    [    1.293670] Loading compiled-in X.509 certificates                           
    [    1.309427] GPIO line 119 (SelEMMCorNAND) hogged as output/low               
    [    1.316145] GPIO line 136 (SelLCDorHDMI) hogged as output/high               
    [    1.322735] omap-gpmc 50000000.gpmc: GPMC revision 6.0                       
    [    1.327905] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000            
    [    1.335487] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xdc         
    [    1.341928] nand: Micron MT29F4G08ABAEAWP                                    
    [    1.345959] nand: 512 MiB, SLC, erase size: 256 KiB, page size: 4096, OOB si4
    [    1.353734] Using OMAP_ECC_BCH16_CODE_HW ECC scheme                          
    [    1.358729] 10 fixed-partitions partitions found on MTD device omap2-nand.0  
    [    1.365742] Creating 10 MTD partitions on "omap2-nand.0":                    
    [    1.371182] 0x000000000000-0x000000040000 : "NAND.SPL"                       
    [    1.377294] 0x000000040000-0x000000080000 : "NAND.SPL.backup1"               
    [    1.384045] 0x000000080000-0x0000000c0000 : "NAND.SPL.backup2"               
    [    1.390742] 0x0000000c0000-0x000000100000 : "NAND.SPL.backup3"               
    [    1.397328] 0x000000100000-0x000000180000 : "NAND.u-boot-spl-os"             
    [    1.404249] 0x000000180000-0x000000280000 : "NAND.u-boot"                    
    [    1.410567] 0x000000280000-0x0000002c0000 : "NAND.u-boot-env"                
    [    1.417086] 0x0000002c0000-0x000000300000 : "NAND.u-boot-env.backup1"        
    [    1.424349] 0x000000300000-0x000000a00000 : "NAND.kernel"                    
    [    1.431488] 0x000000a00000-0x000020000000 : "NAND.file-system"               
    [    1.545365] omap_i2c 44e0b000.i2c: bus 0 rev0.12 at 100 kHz                  
    [    1.552714] omap_i2c 4802a000.i2c: bus 1 rev0.12 at 100 kHz                  
    [    1.558896] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not four
    [    1.568298] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0    
    [    1.575229] DSS: OMAP DSS rev 2.0                                            
    [    1.579686] omapdss_dss 4832a000.dss: bound 4832a400.dispc (ops dispc_compon)
    [    1.587959] omapdrm omapdrm.0: DMM not available, disable DMM support        
    [    1.594756] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).      
    [    1.601437] [drm] No driver support for vblank timestamp query.              
    [    1.616407] Console: switching to colour frame buffer device 100x30          
    [    1.626650] omapdrm omapdrm.0: fb0: omapdrm frame buffer device              
    [    1.633346] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0
    [    1.641058] cpu cpu0: Linked as a consumer to regulator.5                    
    [    1.646535] cpu cpu0: Dropping the link to regulator.5                       
    [    1.651939] cpu cpu0: Linked as a consumer to regulator.5                    
    [    1.658710] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000)
    [    1.667580] omap_hsmmc 48060000.mmc: Got CD GPIO                             
    [    1.672709] omap_hsmmc 48060000.mmc: Linked as a consumer to regulator.1     
    [    1.706967] hctosys: unable to open rtc device (rtc0)                        
    [    1.713934] ALSA device list:                                                
    [    1.717004]   No soundcards found.                                           
    [    1.722773] Waiting for root device PARTUUID=556b06e5-02...                  
    [    1.781483] mmc1: host does not support reading read-only switch, assuming we
    [    1.793246] mmc1: new high speed SDHC card at address aaaa                   
    [    1.800158] mmcblk1: mmc1:aaaa SL08G 7.40 GiB                                
    [    1.806573]  mmcblk1: p1 p2                                                  
    [    1.886366] EXT4-fs (mmcblk1p2): recovery complete                           
    [    1.891287] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. )
    [    1.899687] VFS: Mounted root (ext4 filesystem) on device 179:2.             
    [    1.914641] devtmpfs: mounted                                                
    [    1.919558] Freeing unused kernel memory: 1024K                              
    [    1.924283] Run /sbin/init as init process                                   
    [    2.300098] systemd[1]: System time before build time, advancing clock.      
    [    2.348590] systemd[1]: systemd 239 running in system mode. (+PAM -AUDIT -SE)
    [    2.370816] systemd[1]: Detected architecture arm.                           
                                                                                    
    Welcome to Arago 2019.11!                                                       
                                                                                    
    [    2.421006] systemd[1]: Set hostname to <am437x-evm>.                        
    [    2.757868] systemd[1]: File /lib/systemd/system/systemd-journald.service:36.
    [    2.775288] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warn)
    [    3.184995] systemd[1]: Reached target Swap.                                 
    [  OK  ] Reached target Swap.                                                   
    [    3.222366] systemd[1]: Listening on Network Service Netlink Socket.         
    [  OK  ] Listening on Network Service Netlink Socket.                           
    [    3.269015] systemd[1]: Created slice system-getty.slice.                    
    [  OK  ] Created slice system-getty.slice.                                      
    [    3.299839] systemd[1]: Reached target Remote File Systems.                  
    [  OK  ] Reached target Remote File Systems.                                    
    [    3.331512] systemd[1]: Listening on initctl Compatibility Named Pipe.       
    [  OK  ] Listening on initctl Compatibility Named Pipe.                         
    [  OK  ] Listening on udev Control Socket.                                      
    [  OK  ] Listening on udev Kernel Socket.                                       
    [  OK  ] Started Forward Password Requests to Wall Directory Watch.             
    [  OK  ] Created slice system-serial\x2dgetty.slice.                            
    [  OK  ] Created slice User and Session Slice.                                  
    [  OK  ] Reached target Slices.                                                 
    [  OK  ] Listening on Journal Socket.                                           
             Starting Remount Root and Kernel File Systems...                       
             Mounting Temporary Directory (/tmp)...                                 
    [    3.730841] EXT4-fs (mmcblk1p2): re-mounted. Opts: (null)                    
             Starting Load Kernel Modules...                                        
             Mounting Kernel Debug File System...                                   
    [    3.812271] cmemk: loading out-of-tree module taints kernel.                 
    [    3.825111] CMEMK module: reference Linux version 4.19.94                    
    [  OK  ] Started Hardware RNG Entropy Gatherer Daemon.                          
    [    3.843675] no physical memory specified                                     
    [    3.851686] cmemk initialized                                                
    [    3.868972] cryptodev: driver 1.9 loaded.                                    
             Starting udev Coldplug all Devices...                                  
    [  OK  ] Listening on Journal Socket (/dev/log).                                
    [    3.948528] usbcore: registered new interface driver usbfs                   
             Starting Journal Service...                                            
    [    3.973476] usbcore: registered new interface driver hub                     
             [    4.005310] usbcore: registered new device driver usb               
    Mounting POSIX Message Queue File System...                                     
    [  OK  ] Started Dispatch Password Requests to Console Directory Watch.         
    [  OK  ] Reached target Paths.                                                  
    [    4.053111] usbcore: registered new interface driver ftdi_sio                
    [    4.058963] usbserial: USB Serial support registered for FTDI USB Serial Deve
    [  OK  ] Listening on Process Core Dump Socket.                                 
    [  OK  ] Started Remount Root and Kernel File Systems.                          
    [  OK  ] Mounted Temporary Directory (/tmp).                                    
    [  OK  ] Started Load Kernel Modules.                                           
    [  OK  ] Mounted Kernel Debug File System.                                      
    [  OK  ] Mounted POSIX Message Queue File System.                               
             Starting Apply Kernel Variables...                                     
             Mounting Kernel Configuration File System...                           
             Starting Create Static Device Nodes in /dev...                         
    [  OK  ] Mounted Kernel Configuration File System.                              
    [  OK  ] Started Apply Kernel Variables.                                        
    [  OK  ] Started Journal Service.                                               
             Starting Flush Journal to Persistent Storage...                        
    [  OK  ] Started Create Static Device Nodes in /dev.                            
    [    4.610357] systemd-journald[83]: Received request to flush runtime journal 1
    [  OK  ] Reached target Local File Systems (Pre).                               
             Mounting /var/volatile...                                              
             Mounting /media/ram...                                                 
    [  OK  ] Reached target Containers.                                             
             Starting udev Kernel Device Manager...                                 
    [  OK  ] Started Flush Journal to Persistent Storage.                           
    [  OK  ] Mounted /var/volatile.                                                 
    [  OK  ] Mounted /media/ram.                                                    
             Starting Load/Save Random Seed...                                      
    [  OK  ] Reached target Local File Systems.                                     
             Starting Create Volatile Files and Directories...                      
    [  OK  ] Started Load/Save Random Seed.                                         
    [  OK  ] Started udev Kernel Device Manager.                                    
    [  OK  ] Started Create Volatile Files and Directories.                         
             Starting Update UTMP about System Boot/Shutdown...                     
             Starting Network Service...                                            
             Starting Network Time Synchronization...                               
    [  OK  ] Started Update UTMP about System Boot/Shutdown.                        
    [  OK  ] Started Network Service.                                               
             Starting Network Name Resolution...                                    
             Starting Wait for Network to be Configured...                          
    [  OK  ] Started Network Time Synchronization.                                  
    [  OK  ] Reached target System Time Synchronized.                               
    [  OK  ] Started Network Name Resolution.                                       
    [  OK  ] Reached target Host and Network Name Lookups.                          
    [  OK  ] Reached target Network.                                                
    [    6.881921] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec   
    [    6.890922] remoteproc remoteproc0: wkup_m3 is available                     
    [    6.909179] omap_rtc 44e3e000.rtc: registered as rtc0                        
    [  OK  ] Found device /dev/ttyS0.                                               
    [  OK  ] Started udev Coldplug all Devices.                                     
    [  OK  ] Reached target System Initialization.                                  
    [    7.229505] remoteproc remoteproc0: powering up wkup_m3                      
    [    7.302915] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf,8
    [  OK  ] Listening on dropbear.socket.                                          
    [    7.450841] remoteproc remoteproc0: remote processor wkup_m3 is now up       
    [    7.457438] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x192   
    [    7.465783] ov2659 0-0030: Sensor detection failed (3030, 0)                 
    [    7.485634] tlv320aic3x-codec 1-001b: Linked as a consumer to regulator.1    
             Starting Reboot and dump vmcore via kexec...                           
    [  OK  ] Started Daily rotation of log files.                                   
    [    7.589504] tlv320aic3x-codec 1-001b: Linked as a consumer to regulator.10   
    [    7.613126] ov2659 1-0030: Found OV2656 sensor                               
    [  OK  ] Listening on RPCbind Server Activation Socket.                         
    [    7.659231] CAN device driver interface                                      
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.                
    [  OK  ] Started Daily Cleanup of Temporary Directories.                        
    [    7.729208] input: pixcir_tangoc as /devices/platform/44000000.ocp/4802a000.0
    [  OK  ] Reached target Timers.                                                 
    [    7.743432] c_can_platform 481cc000.can: c_can_platform device registered (r)
    [    7.759035] ov2659 1-0030: ov2659 1-0030 sensor driver registered !!         
    [  OK  ] Listening on D-Bus System Message Bus Socket.                          
    [  OK  ] Reached target Sockets.                                                
    [  OK  ] Reached target Basic System.                                           
    [    7.915811] c_can_platform 481d0000.can: c_can_platform device registered (r)
             Starting Enable and configure wl18xx bluetooth stack...                
    [  OK  ] Started Redis In-Memory Data Store.                                    
             Starting rc.pvr.service...                                             
             Starting Permit User Sessions...                                       
             Starting Lightning Fast Webserver With Light System Requirements...    
             Starting Print notice about GPLv3 packages...                          
    [  OK  ] Started Job spooling tools.                                            
             Starting Login Service...                                              
             Starting Avahi mDNS/DNS-SD Stack...                                    
    [    8.830496] [drm] Initialized pvr 1.17.4948957 20110701 for 56000000.sgx on 1
    [    8.931577] omap-sham 53100000.sham: hw accel on OMAP rev 0.0                
             Starting RPC Bind Service...                                           
    [    9.009271] omap-aes 53501000.aes: OMAP AES hw accel rev: 0.1                
    [    9.049231] omap-des 53701000.des: OMAP DES hw accel rev: 0.33               
    [  OK  ] Started Periodic Command Scheduler.                                    
    [    9.158367] omap-aes 53501000.aes: will run requests pump with realtime prioy
    [    9.219672] omap-des 53701000.des: will run requests pump with realtime prioy
    [    9.239735] PVR_K: UM DDK-(4948957) and KM DDK-(4948957) match. [ OK ]       
             Starting Simple Network Management Protocol (SNMP) Daemon....          
    [  OK  ] Started D-Bus System Message Bus.                                      
    [  OK  ] Started Reboot and dump vmcore via kexec.                              
    [  OK  ] Started rc.pvr.service.                                                
    [  OK  ] Started Permit User Sessions.                                          
    [  OK  ] Started Lightning Fast Webserver With Light System Requirements.       
    [  OK  ] Started RPC Bind Service.                                              
    [   11.135199] net eth0: initializing cpsw version 1.15 (0)                     
    [   11.334229] Micrel KSZ9031 Gigabit PHY 4a101000.mdio:00: attached PHY driver)
    [  OK  ] Started Enable and configure wl18xx bluetooth stack.                   
    [   11.562459] input: matrix_keypad0 as /devices/platform/matrix_keypad0/input/1
    [   11.618705] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready               
    [   11.776162] PM: bootloader does not support rtc-only!                        
    [   12.081185] asoc-simple-card sound0: tlv320aic3x-hifi <-> 4803c000.mcasp mapk
    [   12.088993] asoc-simple-card sound0: ASoC: no DMI vendor name!               
    [  OK  ] Started Simple Network Management Protocol (SNMP) Daemon..             
    [   13.611289] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow cof
    [   13.721548] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready          
    [   18.453912] dwc3 48390000.usb: Failed to get clk 'ref': -2                   
    [   18.573043] OF: graph: no port node found in /ocp@44000000/ocp2scp@483a8000/0
    [   18.676729] dwc3 483d0000.usb: Failed to get clk 'ref': -2                   
    [   19.055882] remoteproc remoteproc1: 54434000.pru is available                
    [   19.153410] pru-rproc 54434000.pru: PRU rproc node pru@54434000 probed succey
    [   19.247590] remoteproc remoteproc2: 54438000.pru is available                
    [   19.274117] xhci-hcd xhci-hcd.4.auto: xHCI Host Controller                   
    [   19.286552] pru-rproc 54438000.pru: PRU rproc node pru@54438000 probed succey
    [   19.311748] xhci-hcd xhci-hcd.4.auto: new USB bus registered, assigned bus n1
    [   19.342449] remoteproc remoteproc3: 54474000.pru is available                
    [   19.348310] pru-rproc 54474000.pru: PRU rproc node pru@54474000 probed succey
    [   19.381613] xhci-hcd xhci-hcd.4.auto: hcc params 0x0238f06d hci version 0x100
    [   19.444840] remoteproc remoteproc4: 54478000.pru is available                
    [   19.454595] xhci-hcd xhci-hcd.4.auto: irq 106, io mem 0x483d0000             
    [   19.473775] pru-rproc 54478000.pru: PRU rproc node pru@54478000 probed succey
    [   19.485345] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, b9
    [   19.549554] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber1
    [   19.556825] usb usb1: Product: xHCI Host Controller                          
    [   19.637340] usb usb1: Manufacturer: Linux 4.19.94-gbe5389fd85 xhci-hcd       
    [   19.676361] usb usb1: SerialNumber: xhci-hcd.4.auto                          
    [   19.701130] hub 1-0:1.0: USB hub found                                       
    [   19.713815] hub 1-0:1.0: 1 port detected                                     
    [   19.736339] xhci-hcd xhci-hcd.4.auto: xHCI Host Controller                   
    [   19.759566] xhci-hcd xhci-hcd.4.auto: new USB bus registered, assigned bus n2
    [   19.787991] xhci-hcd xhci-hcd.4.auto: Host supports USB 3.0 SuperSpeed       
    [   19.812023] usb usb2: We don't know the algorithms for LPM for this host, di.
    [   19.842552] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, b9
    [   19.871467] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber1
    [   19.896357] usb usb2: Product: xHCI Host Controller                          
    [   19.914926] usb usb2: Manufacturer: Linux 4.19.94-gbe5389fd85 xhci-hcd       
    [   19.937419] usb usb2: SerialNumber: xhci-hcd.4.auto                          
    [   19.962108] hub 2-0:1.0: USB hub found                                       
    [   19.976431] hub 2-0:1.0: 1 port detected                                     
    ***************************************************************                 
    ***************************************************************                 
    NOTICE: This file system contains the following GPLv3 packages:                 
            autoconf                                                                
            bash-dev                                                                
            bash                                                                    
            bc                                                                      
            binutils                                                                
            cifs-utils                                                              
            cpio                                                                    
            cpp-symlinks                                                            
            cpp                                                                     
            dosfstools                                                              
            elfutils                                                                
            findutils                                                               
            g++-symlinks                                                            
            g++                                                                     
            gawk                                                                    
            gcc-symlinks                                                            
            gcc                                                                     
            gdb                                                                     
            gdbserver                                                               
            gettext                                                                 
            glmark2                                                                 
            gstreamer1.0-libav                                                      
            gzip                                                                    
            hidapi                                                                  
            libbfd                                                                  
            libcairo-perf-utils                                                     
            libdw1                                                                  
            libelf1                                                                 
            libgdbm-compat4                                                         
            libgdbm-dev                                                             
            libgdbm6                                                                
            libgettextlib                                                           
            libgettextsrc                                                           
            libgmp10                                                                
            libidn2-0                                                               
            libmavconn                                                              
            libmpc3                                                                 
            libmpfr6                                                                
            libreadline-dev                                                         
            libreadline7                                                            
            libunistring2                                                           
            m4-dev                                                                  
            m4                                                                      
            make                                                                    
            mavlink                                                                 
            mavros-extras                                                           
            mavros-msgs                                                             
            mavros                                                                  
            nettle                                                                  
            pdm-anomaly-detection                                                   
            socketcan-interface                                                     
            swig-dev                                                                
            swig                                                                    
            which                                                                   
                                                                                    
    If you do not wish to distribute GPLv3 components please remove                 
    the above packages prior to distribution.  This can be done using               
    the opkg remove command.  i.e.:                                                 
        opkg remove <package>                                                       
    Where <package> is the name printed in the list above                           
                                                                                    
    NOTE: If the package is a dependency of another package you                     
          will be notified of the dependent packages.  You should                   
          use the --force-removal-of-dependent-packages option to                   
          also remove the dependent packages as well                                
    ***************************************************************                 
    ***************************************************************                 
    [  OK  ] Started Print notice about GPLv3 packages.                             
             Starting Save/Restore Sound Card State...                              
    [  OK  ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.        
    [  OK  ] Created slice system-systemd\x2dfsck.slice.                            
             Starting File System Check on /dev/mmcblk1p1...                        
             Starting Rotate log files...                                           
    [  OK  ] Created slice system-systemd\x2dbacklight.slice.                       
             Starting Load/Save Screen Backlight��…ightness of backlight:backlight..
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..                       
    [  OK  ] Started Getty on tty1.                                                 
    [  OK  ] Started Serial Getty on ttyS0.                                         
    [  OK  ] Reached target Login Prompts.                                          
             Starting Synchronize System and HW clocks...                           
             Starting weston.service...                                             
    [  OK  ] Started Save/Restore Sound Card State.                                 
    [  OK  ] Started Load/Save Screen Backlight Brightness of backlight:backlight.  
    [  OK  ] Started Synchronize System and HW clocks.                              
    [  OK  ] Reached target Sound Card.                                             
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.                                       
    [  OK  ] Started Login Service.                                                 
    [  OK  ] Started File System Check on /dev/mmcblk1p1.                           
             Mounting /run/media/mmcblk1p1...                                       
    [  OK  ] Started weston.service.                                                
             Starting telnetd.service...                                            
             Starting Matrix GUI...                                                 
    [  OK  ] Mounted /run/media/mmcblk1p1.                                          
    [  OK  ] Started telnetd.service.                                               
    [  OK  ] Started Matrix GUI.                                                    
             Starting thttpd.service...                                             
    [  OK  ] Started thttpd.service.                                                
    [  OK  ] Started Rotate log files.                                              
    [  OK  ] Started Wait for Network to be Configured.                             
    [  OK  ] Reached target Network is Online.                                      
             Starting LSB: network benchmark...                                     
    [  OK  ] Started strongSwan IPsec IKEv1/IKEv2 daemon using ipsec.conf.          
             Starting LSB: Redis, a key-value store...                              
    [  OK  ] Started LSB: network benchmark.                                        
    [  OK  ] Started LSB: Redis, a key-value store.                                 
             Starting thermal-zone-init.service...                                  
             Starting parse-ip.service...                                           
    [  OK  ] Started thermal-zone-init.service.                                     
    [  OK  ] Started parse-ip.service.                                              
    [  OK  ] Reached target Multi-User System.                                      
             Starting Update UTMP about System Runlevel Changes...                  
    [   28.063096] NET: Registered protocol family 15                               
    [  OK  ] Started Update UTMP about System Runlevel Changes.                     
    [   28.548447] Initializing XFRM netlink socket                                 
                                                                                    
     _____                    _____           _         _                           
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_                         
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|                        
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|                          
                  |___|                    |___|                                    
                                                                                    
    Arago Project http://arago-project.org am437x-evm ttyS0                         
                                                                                    
    Arago 2019.11 am437x-evm ttyS0                                                  
                                                                                    
    am437x-evm login: [   31.849506] vmmcwl_fixed: disabling                        
                                                                                    
     _____                    _____           _         _                           
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_                         
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|                        
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|                          
                  |___|                    |___|                                    
                                                                                    
    Arago Project http://arago-project.org am437x-evm ttyS0                         
                                                                                    
    Arago 2019.11 am437x-evm ttyS0                                                  
                                                                                    
    am437x-evm login: 
    

    am437x-evm login: root                                                          
    root@am437x-evm:~# systemctl stop weston                                        
    root@am437x-evm:~# kmstest --flip                                               
    Connector 0/@46: DPI-1                                                          
      Crtc 0/@47: 800x480 33.000 800/210/30/16/- 480/22/13/10/- 60 (59.52) 0xa 0x48 
      Plane 0/@35: 0,0-800x480                                                      
        Fb 51 800x480-XR24                                                          
    press enter to exit                                                             
    Connector 0: fps 59.531694, slowest 17.48 ms                                    
    Connector 0: fps 59.523790, slowest 16.96 ms                                    
    Connector 0: fps 59.524225, slowest 17.01 ms                                    
    Connector 0: fps 59.524255, slowest 17.02 ms                                    
                                                                                    
    Exit due to user-input                                                          
    root@am437x-evm:~#                                                              
    root@am437x-evm:~# modetest                                                     
    trying to open device 'i915'...failed                                           
    trying to open device 'amdgpu'...failed                                         
    trying to open device 'radeon'...failed                                         
    trying to open device 'nouveau'...failed                                        
    trying to open device 'vmwgfx'...failed                                         
    trying to open device 'omapdrm'...done                                          
    Encoders:                                                                       
    id      crtc    type    possible crtcs  possible clones                         
    45      47      TMDS    0x00000001      0x00000000                              
                                                                                    
    Connectors:                                                                     
    id      encoder status          name            size (mm)       modes   encoders
    46      45      connected       DPI-1           152x91          1       45      
      modes:                                                                        
            name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)                
      800x480 60 800 1010 1040 1056 480 502 515 525 33000 flags: nhsync, nvsync; tyr
      props:                                                                        
            1 EDID:                                                                 
                    flags: immutable blob                                           
                    blobs:                                                          
                                                                                    
                    value:                                                          
            2 DPMS:                                                                 
                    flags: enum                                                     
                    enums: On=0 Standby=1 Suspend=2 Off=3                           
                    value: 0                                                        
            5 link-status:                                                          
                    flags: enum                                                     
                    enums: Good=0 Bad=1                                             
                    value: 0                                                        
            6 non-desktop:                                                          
                    flags: immutable range                                          
                    values: 0 1                                                     
                    value: 0                                                        
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 47                                                       
                                                                                    
    CRTCs:                                                                          
    id      fb      pos     size                                                    
    47      50      (0,0)   (800x480)                                               
      800x480 60 800 1010 1040 1056 480 502 515 525 33000 flags: nhsync, nvsync; tyr
      props:                                                                        
            20 ACTIVE:                                                              
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 1                                                        
            21 MODE_ID:                                                             
                    flags: blob                                                     
                    blobs:                                                          
                                                                                    
                    value:                                                          
                            e88000002003f203100420040000e001                        
                            f60103020d0200003c0000000a000000                        
                            48000000383030783438300000000000                        
                            00000000000000000000000000000000                        
                            00000000                                                
            18 OUT_FENCE_PTR:                                                       
                    flags: range                                                    
                    values: 0 18446744073709551615                                  
                    value: 0                                                        
            31 background:                                                          
                    flags: range                                                    
                    values: 0 16777215                                              
                    value: 0                                                        
            32 trans-key-mode:                                                      
                    flags: enum                                                     
                    enums: disable=0 gfx-dst=1 vid-src=2                            
                    value: 0                                                        
            33 trans-key:                                                           
                    flags: range                                                    
                    values: 0 16777215                                              
                    value: 0                                                        
            34 alpha_blender:                                                       
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 0                                                        
                                                                                    
    Planes:                                                                         
    id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs  
    35      47      50      0,0             0,0     0               0x00000001      
      formats: RX12 AR12 RG16 XR24 RG24 AR24 RA24 RX24                              
      props:                                                                        
            7 type:                                                                 
                    flags: immutable enum                                           
                    enums: Overlay=0 Primary=1 Cursor=2                             
                    value: 1                                                        
            16 FB_ID:                                                               
                    flags: object                                                   
                    value: 50                                                       
            17 IN_FENCE_FD:                                                         
                    flags: signed range                                             
                    values: -1 2147483647                                           
                    value: -1                                                       
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 47                                                       
            12 CRTC_X:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            13 CRTC_Y:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            14 CRTC_W:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 800                                                      
            15 CRTC_H:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 480                                                      
            8 SRC_X:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            9 SRC_Y:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            10 SRC_W:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 52428800                                                 
            11 SRC_H:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 31457280                                                 
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 0                                                        
            36 zpos:                                                                
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 0                                                        
            29 global_alpha:                                                        
                    flags: range                                                    
                    values: 0 255                                                   
                    value: 255                                                      
            30 pre_mult_alpha:                                                      
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
    37      0       0       0,0             0,0     0               0x00000001      
      formats: XR24 RG24 RX12 RG16 YUYV UYVY                                        
      props:                                                                        
            7 type:                                                                 
                    flags: immutable enum                                           
                    enums: Overlay=0 Primary=1 Cursor=2                             
                    value: 0                                                        
            16 FB_ID:                                                               
                    flags: object                                                   
                    value: 0                                                        
            17 IN_FENCE_FD:                                                         
                    flags: signed range                                             
                    values: -1 2147483647                                           
                    value: -1                                                       
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 0                                                        
            12 CRTC_X:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            13 CRTC_Y:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            14 CRTC_W:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            15 CRTC_H:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            8 SRC_X:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            9 SRC_Y:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            10 SRC_W:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            11 SRC_H:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 1                                                        
            38 zpos:                                                                
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 1                                                        
            39 COLOR_ENCODING:                                                      
                    flags: enum                                                     
                    enums: ITU-R BT.601 YCbCr=0 ITU-R BT.709 YCbCr=1                
                    value: 0                                                        
            40 COLOR_RANGE:                                                         
                    flags: enum                                                     
                    enums: YCbCr limited range=0 YCbCr full range=1                 
                    value: 1                                                        
            29 global_alpha:                                                        
                    flags: range                                                    
                    values: 0 255                                                   
                    value: 255                                                      
            30 pre_mult_alpha:                                                      
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
    41      0       0       0,0             0,0     0               0x00000001      
      formats: RX12 AR12 RG16 XR24 RG24 YUYV UYVY AR24 RA24 RX24                    
      props:                                                                        
            7 type:                                                                 
                    flags: immutable enum                                           
                    enums: Overlay=0 Primary=1 Cursor=2                             
                    value: 0                                                        
            16 FB_ID:                                                               
                    flags: object                                                   
                    value: 0                                                        
            17 IN_FENCE_FD:                                                         
                    flags: signed range                                             
                    values: -1 2147483647                                           
                    value: -1                                                       
            19 CRTC_ID:                                                             
                    flags: object                                                   
                    value: 0                                                        
            12 CRTC_X:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            13 CRTC_Y:                                                              
                    flags: signed range                                             
                    values: -2147483648 2147483647                                  
                    value: 0                                                        
            14 CRTC_W:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            15 CRTC_H:                                                              
                    flags: range                                                    
                    values: 0 2147483647                                            
                    value: 0                                                        
            8 SRC_X:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            9 SRC_Y:                                                                
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            10 SRC_W:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            11 SRC_H:                                                               
                    flags: range                                                    
                    values: 0 4294967295                                            
                    value: 0                                                        
            28 zorder:                                                              
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 2                                                        
            42 zpos:                                                                
                    flags: range                                                    
                    values: 0 2                                                     
                    value: 2                                                        
            43 COLOR_ENCODING:                                                      
                    flags: enum                                                     
                    enums: ITU-R BT.601 YCbCr=0 ITU-R BT.709 YCbCr=1                
                    value: 0                                                        
            44 COLOR_RANGE:                                                         
                    flags: enum                                                     
                    enums: YCbCr limited range=0 YCbCr full range=1                 
                    value: 1                                                        
            29 global_alpha:                                                        
                    flags: range                                                    
                    values: 0 255                                                   
                    value: 255                                                      
            30 pre_mult_alpha:                                                      
                    flags: range                                                    
                    values: 0 1                                                     
                    value: 0                                                        
                                                                                    
    Frame buffers:                                                                  
    id      size    pitch                                       

    Thansk, kihan.

  • Hello Kihan,

    The logs look good and with regards to the A9 limiter and DSS priority, you do not need to define anything in the uEnv.txt file because it is already integrated in Uboot (ref patch).

    Regards,
    Krunal 

  • Hi Krunal,

    Thanks for your reply and good support.

    I clearly understood the contents of ref patch in Uboot.

    I tried to boot AM437x GP EVM after I changed DT with the LCD which has the higher resolution(innolux, g101ice-l01, 1280x800@60).

    And no signal from DSS.

    I attached boot log, DT, and modetest result.

    AM437x-GP-EVM-1280x800_boot_log.txt

    AM437x-GP-EVM-1280x800_boot_log.txt

    /* AM437x GP EVM */
    
    /dts-v1/;
    
    #include "am4372.dtsi"
    #include <dt-bindings/pinctrl/am43xx.h>
    #include <dt-bindings/pwm/pwm.h>
    #include <dt-bindings/gpio/gpio.h>
    
    / {
    	model = "TI AM437x GP EVM";
    	compatible = "ti,am437x-gp-evm","ti,am4372","ti,am43";
    
    	aliases {
    		display0 = &lcd0;
    	};
    
    	chosen {
    		stdout-path = &uart0;
    	};
    
    	evm_v3_3d: fixedregulator-v3_3d {
    		compatible = "regulator-fixed";
    		regulator-name = "evm_v3_3d";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		enable-active-high;
    	};
    
    	vtt_fixed: fixedregulator-vtt {
    		compatible = "regulator-fixed";
    		regulator-name = "vtt_fixed";
    		regulator-min-microvolt = <1500000>;
    		regulator-max-microvolt = <1500000>;
    		regulator-always-on;
    		regulator-boot-on;
    		enable-active-high;
    		gpio = <&gpio5 7 GPIO_ACTIVE_HIGH>;
    	};
    
    	vmmcwl_fixed: fixedregulator-mmcwl {
    		compatible = "regulator-fixed";
    		regulator-name = "vmmcwl_fixed";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		gpio = <&gpio1 20 GPIO_ACTIVE_HIGH>;
    		enable-active-high;
    	};
    
    	lcd_bl: backlight {
    		compatible = "pwm-backlight";
    		pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>;
    		brightness-levels = <0 51 53 56 62 75 101 152 255>;
    		default-brightness-level = <8>;
    	};
    
    	matrix_keypad: matrix_keypad0 {
    		compatible = "gpio-matrix-keypad";
    		debounce-delay-ms = <5>;
    		col-scan-delay-us = <2>;
    
    		pinctrl-names = "default", "sleep";
    		pinctrl-0 = <&matrix_keypad_default>;
    		pinctrl-1 = <&matrix_keypad_sleep>;
    
    		linux,wakeup;
    
    		row-gpios = <&gpio0 3 GPIO_ACTIVE_HIGH /* Bank0, pin3 */
    				&gpio4 3 GPIO_ACTIVE_HIGH /* Bank4, pin3 */
    				&gpio4 2 GPIO_ACTIVE_HIGH>; /* Bank4, pin2 */
    
    		col-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH /* Bank3, pin19 */
    				&gpio3 20 GPIO_ACTIVE_HIGH>; /* Bank3, pin20 */
    
    		linux,keymap = <0x00000201      /* P1 */
    				0x00010202      /* P2 */
    				0x01000067      /* UP */
    				0x0101006a      /* RIGHT */
    				0x02000069      /* LEFT */
    				0x0201006c>;      /* DOWN */
    		};
    
    	lcd0: display {
    		compatible = "innolux,g101ice-l01", "panel-dpi";
    		label = "lcd";
    
    		backlight = <&lcd_bl>;
    
    		panel-timing {
    			clock-frequency = <71100000>;
    			hactive = <1280>;
    			vactive = <800>;
    			hfront-porch = <80>;
    			hback-porch = <79>;
    			hsync-len = <1>;
    			vback-porch = <11>;
    			vfront-porch = <1>;
    			vsync-len = <1>;
    			hsync-active = <0>;
    			vsync-active = <0>;
    			de-active = <1>;
    			pixelclk-active = <1>;
    		};
    
    		port {
    			lcd_in: endpoint {
    				remote-endpoint = <&dpi_out>;
    			};
    		};
    	};
    
    	/* fixed 12MHz oscillator */
    	refclk: oscillator {
    		#clock-cells = <0>;
    		compatible = "fixed-clock";
    		clock-frequency = <12000000>;
    	};
    
    	/* fixed 32k external oscillator clock */
    	clk_32k_rtc: clk_32k_rtc {
    		#clock-cells = <0>;
    		compatible = "fixed-clock";
    		clock-frequency = <32768>;
    	};
    
    	sound0: sound0 {
    		compatible = "simple-audio-card";
    		simple-audio-card,name = "AM437x-GP-EVM";
    		simple-audio-card,widgets =
    			"Headphone", "Headphone Jack",
    			"Line", "Line In";
    		simple-audio-card,routing =
    			"Headphone Jack",	"HPLOUT",
    			"Headphone Jack",	"HPROUT",
    			"LINE1L",		"Line In",
    			"LINE1R",		"Line In";
    		simple-audio-card,format = "dsp_b";
    		simple-audio-card,bitclock-master = <&sound0_master>;
    		simple-audio-card,frame-master = <&sound0_master>;
    		simple-audio-card,bitclock-inversion;
    
    		simple-audio-card,cpu {
    			sound-dai = <&mcasp1>;
    			system-clock-frequency = <12000000>;
    		};
    
    		sound0_master: simple-audio-card,codec {
    			sound-dai = <&tlv320aic3106>;
    			system-clock-frequency = <12000000>;
    		};
    	};
    
    	beeper: beeper {
    		compatible = "gpio-beeper";
    		pinctrl-names = "default";
    		pinctrl-0 = <&beeper_pins_default>;
    		pinctrl-1 = <&beeper_pins_sleep>;
    		gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>;
    	};
    
    	audio_mstrclk: mclk_osc {
    		compatible = "fixed-clock";
    		#clock-cells = <0>;
    		clock-frequency = <12000000>;
    	};
    };
    
    &am43xx_pinmux {
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&wlan_pins_default &ddr3_vtt_toggle_default &unused_pins &debugss_pins>;
    	pinctrl-1 = <&wlan_pins_sleep>;
    
    	ddr3_vtt_toggle_default: ddr_vtt_toggle_default {
    		pinctrl-single,pins = <
    			0x25C (DS0_PULL_UP_DOWN_EN | PIN_OUTPUT_PULLUP | DS0_FORCE_OFF_MODE | MUX_MODE7) /* spi0_cs0.gpio5_7 */
    		>;
    	};
    
    	i2c0_pins: i2c0_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x988, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_sda.i2c0_sda */
    			AM4372_IOPAD(0x98c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_scl.i2c0_scl */
    		>;
    	};
    
    	i2c1_pins: i2c1_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x95c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_cs0.i2c1_scl */
    			AM4372_IOPAD(0x958, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_d1.i2c1_sda  */
    		>;
    	};
    
    	mmc1_pins: pinmux_mmc1_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
    		>;
    	};
    
    	ecap0_pins: backlight_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x964, MUX_MODE0)       /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */
    		>;
    	};
    
    	pixcir_ts_pins: pixcir_ts_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa64, PIN_INPUT_PULLUP | MUX_MODE7)  /* spi2_d0.gpio3_22 */
    		>;
    	};
    
    	cpsw_default: cpsw_default {
    		pinctrl-single,pins = <
    			/* Slave 1 */
    			AM4372_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txen.rgmii1_txen */
    			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxdv.rgmii1_rxctl */
    			AM4372_IOPAD(0x91c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd3 */
    			AM4372_IOPAD(0x920, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd2 */
    			AM4372_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd1 */
    			AM4372_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd0 */
    			AM4372_IOPAD(0x92c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txclk.rmii1_tclk */
    			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxclk.rmii1_rclk */
    			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd3 */
    			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd2 */
    			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd1 */
    			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd0 */
    		>;
    	};
    
    	cpsw_sleep: cpsw_sleep {
    		pinctrl-single,pins = <
    			/* Slave 1 reset value */
    			AM4372_IOPAD(0x914, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x91c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x920, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x924, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x928, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x92c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	davinci_mdio_default: davinci_mdio_default {
    		pinctrl-single,pins = <
    			/* MDIO */
    			AM4372_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)	/* mdio_data.mdio_data */
    			AM4372_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0)			/* mdio_clk.mdio_clk */
    		>;
    	};
    
    	davinci_mdio_sleep: davinci_mdio_sleep {
    		pinctrl-single,pins = <
    			/* MDIO reset value */
    			AM4372_IOPAD(0x948, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	nand_flash_x8: nand_flash_x8 {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x800, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad0.gpmc_ad0 */
    			AM4372_IOPAD(0x804, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad1.gpmc_ad1 */
    			AM4372_IOPAD(0x808, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad2.gpmc_ad2 */
    			AM4372_IOPAD(0x80c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad3.gpmc_ad3 */
    			AM4372_IOPAD(0x810, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad4.gpmc_ad4 */
    			AM4372_IOPAD(0x814, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad5.gpmc_ad5 */
    			AM4372_IOPAD(0x818, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad6.gpmc_ad6 */
    			AM4372_IOPAD(0x81c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad7.gpmc_ad7 */
    			AM4372_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_wait0.gpmc_wait0 */
    			AM4372_IOPAD(0x874, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* gpmc_wpn.gpmc_wpn */
    			AM4372_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_csn0.gpmc_csn0  */
    			AM4372_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0)		/* gpmc_advn_ale.gpmc_advn_ale */
    			AM4372_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0)		/* gpmc_oen_ren.gpmc_oen_ren */
    			AM4372_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0)		/* gpmc_wen.gpmc_wen */
    			AM4372_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_be0n_cle.gpmc_be0n_cle */
    		>;
    	};
    
    	dss_pins: dss_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x820, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 8 -> DSS DATA 23 */
    			AM4372_IOPAD(0x824, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x828, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x82c, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x830, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x834, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x838, PIN_OUTPUT_PULLUP | MUX_MODE1)
    			AM4372_IOPAD(0x83c, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 15 -> DSS DATA 16 */
    			AM4372_IOPAD(0x8a0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */
    			AM4372_IOPAD(0x8a4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8a8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8ac, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8b0, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8b4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8b8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8bc, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8c0, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8c4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8c8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8cc, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8d0, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8d4, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8d8, PIN_OUTPUT_PULLUP | MUX_MODE0)
    			AM4372_IOPAD(0x8dc, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */
    			AM4372_IOPAD(0x8e0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */
    			AM4372_IOPAD(0x8e4, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */
    			AM4372_IOPAD(0x8e8, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */
    			AM4372_IOPAD(0x8ec, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */
    
    		>;
    	};
    
    	display_mux_pins: display_mux_pins {
    		pinctrl-single,pins = <
    			/* GPIO 5_8 to select LCD / HDMI */
    			AM4372_IOPAD(0xa38, PIN_OUTPUT_PULLUP | MUX_MODE7)
    		>;
    	};
    
    	dcan0_default: dcan0_default_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x978, PIN_OUTPUT | MUX_MODE2)		/* uart1_ctsn.d_can0_tx */
    			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_rtsn.d_can0_rx */
    		>;
    	};
    
    	dcan0_sleep: dcan0_sleep_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x978, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_ctsn.gpio0_12 */
    			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rtsn.gpio0_13 */
    		>;
    	};
    
    	dcan1_default: dcan1_default_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x980, PIN_OUTPUT | MUX_MODE2)		/* uart1_rxd.d_can1_tx */
    			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_txd.d_can1_rx */
    		>;
    	};
    
    	dcan1_sleep: dcan1_sleep_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x980, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rxd.gpio0_14 */
    			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_txd.gpio0_15 */
    		>;
    	};
    
    	vpfe0_pins_default: vpfe0_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9b0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_hd mode 0*/
    			AM4372_IOPAD(0x9b4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_vd mode 0*/
    			AM4372_IOPAD(0x9c0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_pclk mode 0*/
    			AM4372_IOPAD(0x9c4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data8 mode 0*/
    			AM4372_IOPAD(0x9c8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data9 mode 0*/
    			AM4372_IOPAD(0xa08, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data0 mode 0*/
    			AM4372_IOPAD(0xa0c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data1 mode 0*/
    			AM4372_IOPAD(0xa10, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data2 mode 0*/
    			AM4372_IOPAD(0xa14, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data3 mode 0*/
    			AM4372_IOPAD(0xa18, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data4 mode 0*/
    			AM4372_IOPAD(0xa1c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data5 mode 0*/
    			AM4372_IOPAD(0xa20, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data6 mode 0*/
    			AM4372_IOPAD(0xa24, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data7 mode 0*/
    		>;
    	};
    
    	vpfe0_pins_sleep: vpfe0_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9b0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_hd mode 0*/
    			AM4372_IOPAD(0x9b4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_vd mode 0*/
    			AM4372_IOPAD(0x9c0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_pclk mode 0*/
    			AM4372_IOPAD(0x9c4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data8 mode 0*/
    			AM4372_IOPAD(0x9c8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data9 mode 0*/
    			AM4372_IOPAD(0xa08, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data0 mode 0*/
    			AM4372_IOPAD(0xa0c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data1 mode 0*/
    			AM4372_IOPAD(0xa10, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data2 mode 0*/
    			AM4372_IOPAD(0xa14, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data3 mode 0*/
    			AM4372_IOPAD(0xa18, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data4 mode 0*/
    			AM4372_IOPAD(0xa1c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data5 mode 0*/
    			AM4372_IOPAD(0xa20, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data6 mode 0*/
    			AM4372_IOPAD(0xa24, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data7 mode 0*/
    		>;
    	};
    
    	vpfe1_pins_default: vpfe1_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9cc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data9 mode 0*/
    			AM4372_IOPAD(0x9d0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data8 mode 0*/
    			AM4372_IOPAD(0x9d4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_hd mode 0*/
    			AM4372_IOPAD(0x9d8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_vd mode 0*/
    			AM4372_IOPAD(0x9dC, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_pclk mode 0*/
    			AM4372_IOPAD(0x9e8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data0 mode 0*/
    			AM4372_IOPAD(0x9ec, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data1 mode 0*/
    			AM4372_IOPAD(0x9f0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data2 mode 0*/
    			AM4372_IOPAD(0x9f4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data3 mode 0*/
    			AM4372_IOPAD(0x9f8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data4 mode 0*/
    			AM4372_IOPAD(0x9fc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data5 mode 0*/
    			AM4372_IOPAD(0xa00, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data6 mode 0*/
    			AM4372_IOPAD(0xa04, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data7 mode 0*/
    		>;
    	};
    
    	vpfe1_pins_sleep: vpfe1_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9cc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data9 mode 0*/
    			AM4372_IOPAD(0x9d0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data8 mode 0*/
    			AM4372_IOPAD(0x9d4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_hd mode 0*/
    			AM4372_IOPAD(0x9d8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_vd mode 0*/
    			AM4372_IOPAD(0x9dc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_pclk mode 0*/
    			AM4372_IOPAD(0x9e8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data0 mode 0*/
    			AM4372_IOPAD(0x9ec, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data1 mode 0*/
    			AM4372_IOPAD(0x9f0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data2 mode 0*/
    			AM4372_IOPAD(0x9f4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data3 mode 0*/
    			AM4372_IOPAD(0x9f8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data4 mode 0*/
    			AM4372_IOPAD(0x9fc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data5 mode 0*/
    			AM4372_IOPAD(0xa00, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data6 mode 0*/
    			AM4372_IOPAD(0xa04, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data7 mode 0*/
    		>;
    	};
    
    	mmc3_pins_default: pinmux_mmc3_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x88c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_clk.mmc2_clk */
    			AM4372_IOPAD(0x888, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_csn3.mmc2_cmd */
    			AM4372_IOPAD(0x844, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a1.mmc2_dat0 */
    			AM4372_IOPAD(0x848, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a2.mmc2_dat1 */
    			AM4372_IOPAD(0x84c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a3.mmc2_dat2 */
    			AM4372_IOPAD(0x878, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_be1n.mmc2_dat3 */
    		>;
    	};
    
    	mmc3_pins_sleep: pinmux_mmc3_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x88c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_clk.mmc2_clk */
    			AM4372_IOPAD(0x888, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_csn3.mmc2_cmd */
    			AM4372_IOPAD(0x844, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a1.mmc2_dat0 */
    			AM4372_IOPAD(0x848, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a2.mmc2_dat1 */
    			AM4372_IOPAD(0x84c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a3.mmc2_dat2 */
    			AM4372_IOPAD(0x878, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_be1n.mmc2_dat3 */
    		>;
    	};
    
    	wlan_pins_default: pinmux_wlan_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
    			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
    			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
    		>;
    	};
    
    	wlan_pins_sleep: pinmux_wlan_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
    			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
    			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLUP | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
    		>;
    	};
    
    	uart3_pins: uart3_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa28, PIN_INPUT | MUX_MODE0)		/* uart3_rxd.uart3_rxd */
    			AM4372_IOPAD(0xa2c, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_txd.uart3_txd */
    			AM4372_IOPAD(0xa30, PIN_INPUT_PULLUP | MUX_MODE0)	/* uart3_ctsn.uart3_ctsn */
    			AM4372_IOPAD(0xa34, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_rtsn.uart3_rtsn */
    		>;
    	};
    
    	mcasp1_pins: mcasp1_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x908, PIN_OUTPUT_PULLDOWN | MUX_MODE4)	/* mii1_col.mcasp1_axr2 */
    			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_crs.mcasp1_aclkx */
    			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_rxerr.mcasp1_fsx */
    			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* rmii1_ref_clk.mcasp1_axr3 */
    		>;
    	};
    
    	mcasp1_sleep_pins: mcasp1_sleep_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x908, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	gpio0_pins: gpio0_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa6c, PIN_OUTPUT | MUX_MODE9) /* spi2_cs0.gpio0_23 SEL_eMMCorNANDn */
    		>;
    	};
    
    	emmc_pins_default: emmc_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
    			AM4372_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
    			AM4372_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
    			AM4372_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
    			AM4372_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
    			AM4372_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
    			AM4372_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
    			AM4372_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
    			AM4372_IOPAD(0x880, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
    			AM4372_IOPAD(0x884, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
    		>;
    	};
    
    	emmc_pins_sleep: emmc_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x800, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad0.gpio1_0 */
    			AM4372_IOPAD(0x804, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad1.gpio1_1 */
    			AM4372_IOPAD(0x808, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad2.gpio1_2 */
    			AM4372_IOPAD(0x80c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad3.gpio1_3 */
    			AM4372_IOPAD(0x810, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad4.gpio1_4 */
    			AM4372_IOPAD(0x814, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad5.gpio1_5 */
    			AM4372_IOPAD(0x818, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad6.gpio1_6 */
    			AM4372_IOPAD(0x81c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad7.gpio1_7 */
    			AM4372_IOPAD(0x880, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn1.gpio1_30 */
    			AM4372_IOPAD(0x884, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn2.gpio1_31 */
    		>;
    	};
    
    	beeper_pins_default: beeper_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9e0, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* cam1_field.gpio4_12 */
    		>;
    	};
    
    	beeper_pins_sleep: beeper_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9e0, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* cam1_field.gpio4_12 */
    		>;
    	};
    
    	unused_pins: unused_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x854, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x858, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x860, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x864, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x868, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x86c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x950, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x990, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x994, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x998, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x99c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0x9a0, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa3c, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
    			AM4372_IOPAD(0xa40, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa44, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa48, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa4c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa50, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa54, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
    			AM4372_IOPAD(0xa58, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa60, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
    			AM4372_IOPAD(0xa68, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa70, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa78, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xa7c, PIN_INPUT | PULL_DISABLE)
    			AM4372_IOPAD(0xac8, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xad4, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xad8, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xadc, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xae0, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xae4, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xae8, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaec, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaf0, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaf4, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xaf8, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xafc, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb00, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb04, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb08, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb0c, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb10, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb14, PIN_INPUT_PULLDOWN | MUX_MODE7)
    			AM4372_IOPAD(0xb18, PIN_INPUT_PULLDOWN | MUX_MODE7)
    		>;
    	};
    
    	debugss_pins: pinmux_debugss_pins {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0xa90, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xa94, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xa98, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xa9c, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xaa0, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xaa4, PIN_INPUT_PULLDOWN)
    			AM4372_IOPAD(0xaa8, PIN_INPUT_PULLDOWN)
    		>;
    	};
    
    	uart0_pins_default: uart0_pins_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_ctsn.uart0_ctsn */
    			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_rtsn.uart0_rtsn */
    			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
    			AM4372_IOPAD(0x974, PIN_INPUT | PULL_DISABLE | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
    		>;
    	};
    
    	uart0_pins_sleep: uart0_pins_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_ctsn.uart0_ctsn */
    			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_rtsn.uart0_rtsn */
    			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
    			AM4372_IOPAD(0x974, PIN_INPUT_PULLDOWN | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
    		>;
    	};
    
    	matrix_keypad_default: matrix_keypad_default {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9a4, PIN_OUTPUT | MUX_MODE7)
    			AM4372_IOPAD(0x9a8, PIN_OUTPUT | MUX_MODE7)
    			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
    			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
    		>;
    	};
    
    	matrix_keypad_sleep: matrix_keypad_sleep {
    		pinctrl-single,pins = <
    			AM4372_IOPAD(0x9a4, PULL_UP | MUX_MODE7)
    			AM4372_IOPAD(0x9a8, PULL_UP | MUX_MODE7)
    			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
    			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
    		>;
    	};
    };
    
    &uart0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&uart0_pins_default>;
    };
    
    &i2c0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&i2c0_pins>;
    	clock-frequency = <100000>;
    
    	tps65218: tps65218@24 {
    		reg = <0x24>;
    		compatible = "ti,tps65218";
    		interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* NMIn */
    		interrupt-controller;
    		#interrupt-cells = <2>;
    
    		dcdc1: regulator-dcdc1 {
    			regulator-name = "vdd_core";
    			regulator-min-microvolt = <912000>;
    			regulator-max-microvolt = <1144000>;
    			regulator-boot-on;
    			regulator-always-on;
    		};
    
    		dcdc2: regulator-dcdc2 {
    			regulator-name = "vdd_mpu";
    			regulator-min-microvolt = <912000>;
    			regulator-max-microvolt = <1378000>;
    			regulator-boot-on;
    			regulator-always-on;
    		};
    
    		dcdc3: regulator-dcdc3 {
    			regulator-name = "vdcdc3";
    			regulator-boot-on;
    			regulator-always-on;
    			regulator-state-mem {
    				regulator-on-in-suspend;
    			};
    			regulator-state-disk {
    				regulator-off-in-suspend;
    			};
    		};
    
    		dcdc5: regulator-dcdc5 {
    			regulator-name = "v1_0bat";
    			regulator-min-microvolt = <1000000>;
    			regulator-max-microvolt = <1000000>;
    			regulator-boot-on;
    			regulator-always-on;
    			regulator-state-mem {
    				regulator-on-in-suspend;
    			};
    		};
    
    		dcdc6: regulator-dcdc6 {
    			regulator-name = "v1_8bat";
    			regulator-min-microvolt = <1800000>;
    			regulator-max-microvolt = <1800000>;
    			regulator-boot-on;
    			regulator-always-on;
    			regulator-state-mem {
    				regulator-on-in-suspend;
    			};
    		};
    
    		ldo1: regulator-ldo1 {
    			regulator-min-microvolt = <1800000>;
    			regulator-max-microvolt = <1800000>;
    			regulator-boot-on;
    			regulator-always-on;
    		};
    	};
    
    	ov2659@30 {
    		compatible = "ovti,ov2659";
    		reg = <0x30>;
    
    		clocks = <&audio_mstrclk>;
    		clock-names = "xvclk";
    
    		port {
    			ov2659_0: endpoint {
    				remote-endpoint = <&vpfe1_ep>;
    				link-frequencies = /bits/ 64 <70000000>;
    			};
    		};
    	};
    };
    
    &i2c1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&i2c1_pins>;
    	pixcir_ts@5c {
    		compatible = "pixcir,pixcir_tangoc";
    		pinctrl-names = "default";
    		pinctrl-0 = <&pixcir_ts_pins>;
    		reg = <0x5c>;
    
    		attb-gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
    
    		/*
    		 * 0x264 represents the offset of padconf register of
    		 * gpio3_22 from am43xx_pinmux base.
    		 */
    		interrupts-extended = <&gpio3 22 IRQ_TYPE_EDGE_FALLING>,
    				      <&am43xx_pinmux 0x264>;
    		interrupt-names = "tsc", "wakeup";
    
    		touchscreen-size-x = <1024>;
    		touchscreen-size-y = <600>;
    		wakeup-source;
    	};
    
    	ov2659@30 {
    		compatible = "ovti,ov2659";
    		reg = <0x30>;
    
    		clocks = <&audio_mstrclk>;
    		clock-names = "xvclk";
    
    		port {
    			ov2659_1: endpoint {
    				remote-endpoint = <&vpfe0_ep>;
    				link-frequencies = /bits/ 64 <70000000>;
    			};
    		};
    	};
    
    	tlv320aic3106: tlv320aic3106@1b {
    		#sound-dai-cells = <0>;
    		compatible = "ti,tlv320aic3106";
    		reg = <0x1b>;
    		status = "okay";
    
    		/* Regulators */
    		IOVDD-supply = <&evm_v3_3d>; /* V3_3D -> <tps63031> EN: V1_8D -> VBAT */
    		AVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
    		DRVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
    		DVDD-supply = <&ldo1>; /* V1_8D -> LDO1 */
    	};
    };
    
    &epwmss0 {
    	status = "okay";
    };
    
    &tscadc {
    	status = "okay";
    
    	adc {
    		ti,adc-channels = <0 1 2 3 4 5 6 7>;
    	};
    };
    
    &ecap0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&ecap0_pins>;
    };
    
    &gpio0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&gpio0_pins>;
    	status = "okay";
    
    	p23 {
    		gpio-hog;
    		gpios = <23 GPIO_ACTIVE_HIGH>;
    		/* SelEMMCorNAND selects between eMMC and NAND:
    		 * Low: NAND
    		 * High: eMMC
    		 * When changing this line make sure the newly
    		 * selected device node is enabled and the previously
    		 * selected device node is disabled.
    		 */
    		output-low;
    		line-name = "SelEMMCorNAND";
    	};
    };
    
    &gpio1 {
    	status = "okay";
    };
    
    &gpio3 {
    	status = "okay";
    };
    
    &gpio4 {
    	status = "okay";
    };
    
    &gpio5 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&display_mux_pins>;
    	status = "okay";
    	ti,no-reset-on-init;
    
    	p8 {
    		/*
    		 * SelLCDorHDMI selects between display and audio paths:
    		 * Low: HDMI display with audio via HDMI
    		 * High: LCD display with analog audio via aic3111 codec
    		 */
    		gpio-hog;
    		gpios = <8 GPIO_ACTIVE_HIGH>;
    		output-high;
    		line-name = "SelLCDorHDMI";
    	};
    };
    
    &mmc1 {
    	status = "okay";
    	vmmc-supply = <&evm_v3_3d>;
    	bus-width = <4>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&mmc1_pins>;
    	cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
    };
    
    /* eMMC sits on mmc2 */
    &mmc2 {
    	/*
    	 * When enabling eMMC, disable GPMC/NAND and set
    	 * SelEMMCorNAND to output-high
    	 */
    	status = "disabled";
    	vmmc-supply = <&evm_v3_3d>;
    	bus-width = <8>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&emmc_pins_default>;
    	pinctrl-1 = <&emmc_pins_sleep>;
    	ti,non-removable;
    };
    
    &mmc3 {
    	status = "okay";
    	/* these are on the crossbar and are outlined in the
    	   xbar-event-map element */
    	dmas = <&edma_xbar 30 0 1>,
    		<&edma_xbar 31 0 2>;
    	dma-names = "tx", "rx";
    	vmmc-supply = <&vmmcwl_fixed>;
    	bus-width = <4>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mmc3_pins_default>;
    	pinctrl-1 = <&mmc3_pins_sleep>;
    	cap-power-off-card;
    	keep-power-in-suspend;
    	ti,non-removable;
    
    	#address-cells = <1>;
    	#size-cells = <0>;
    	wlcore: wlcore@0 {
    		compatible = "ti,wl1835";
    		reg = <2>;
    		interrupt-parent = <&gpio1>;
    		interrupts = <23 IRQ_TYPE_EDGE_RISING>;
    	};
    };
    
    &uart3 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&uart3_pins>;
    };
    
    &usb2_phy1 {
    	status = "okay";
    };
    
    &usb1 {
    	dr_mode = "otg";
    	status = "okay";
    };
    
    &usb2_phy2 {
    	status = "okay";
    };
    
    &usb2 {
    	dr_mode = "host";
    	status = "okay";
    };
    
    &mac {
    	slaves = <1>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&cpsw_default>;
    	pinctrl-1 = <&cpsw_sleep>;
    	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";
    };
    
    &elm {
    	status = "okay";
    };
    
    &gpmc {
    	/*
    	 * When enabling GPMC, disable eMMC and set
    	 * SelEMMCorNAND to output-low
    	 */
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&nand_flash_x8>;
    	ranges = <0 0 0x08000000 0x01000000>;	/* CS0 space. Min partition = 16MB */
    	nand@0,0 {
    		compatible = "ti,omap2-nand";
    		reg = <0 0 4>;		/* device IO registers */
    		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 = "bch16";
    		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 = <40>;
    		gpmc,cs-wr-off-ns = <40>;
    		gpmc,adv-on-ns = <0>;
    		gpmc,adv-rd-off-ns = <25>;
    		gpmc,adv-wr-off-ns = <25>;
    		gpmc,we-on-ns = <0>;
    		gpmc,we-off-ns = <20>;
    		gpmc,oe-on-ns = <3>;
    		gpmc,oe-off-ns = <30>;
    		gpmc,access-ns = <30>;
    		gpmc,rd-cycle-ns = <40>;
    		gpmc,wr-cycle-ns = <40>;
    		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 0x00040000>;
    		};
    		partition@1 {
    			label = "NAND.SPL.backup1";
    			reg = <0x00040000 0x00040000>;
    		};
    		partition@2 {
    			label = "NAND.SPL.backup2";
    			reg = <0x00080000 0x00040000>;
    		};
    		partition@3 {
    			label = "NAND.SPL.backup3";
    			reg = <0x000c0000 0x00040000>;
    		};
    		partition@4 {
    			label = "NAND.u-boot-spl-os";
    			reg = <0x00100000 0x00080000>;
    		};
    		partition@5 {
    			label = "NAND.u-boot";
    			reg = <0x00180000 0x00100000>;
    		};
    		partition@6 {
    			label = "NAND.u-boot-env";
    			reg = <0x00280000 0x00040000>;
    		};
    		partition@7 {
    			label = "NAND.u-boot-env.backup1";
    			reg = <0x002c0000 0x00040000>;
    		};
    		partition@8 {
    			label = "NAND.kernel";
    			reg = <0x00300000 0x00700000>;
    		};
    		partition@9 {
    			label = "NAND.file-system";
    			reg = <0x00a00000 0x1f600000>;
    		};
    	};
    };
    
    &uart0 {
    	status = "okay";
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&uart0_pins_default>;
    	pinctrl-1 = <&uart0_pins_sleep>;
    };
    
    &dss {
    	status = "ok";
    
    	pinctrl-names = "default";
    	pinctrl-0 = <&dss_pins>;
    
    	port {
    		dpi_out: endpoint {
    			remote-endpoint = <&lcd_in>;
    			data-lines = <24>;
    		};
    	};
    };
    
    &dcan0 {
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&dcan0_default>;
    	pinctrl-1 = <&dcan0_sleep>;
    	status = "okay";
    };
    
    &dcan1 {
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&dcan1_default>;
    	pinctrl-1 = <&dcan1_sleep>;
    	status = "okay";
    };
    
    &vpfe0 {
    	status = "okay";
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&vpfe0_pins_default>;
    	pinctrl-1 = <&vpfe0_pins_sleep>;
    
    	port {
    		vpfe0_ep: endpoint {
    			remote-endpoint = <&ov2659_1>;
    			ti,am437x-vpfe-interface = <0>;
    			bus-width = <8>;
    			hsync-active = <0>;
    			vsync-active = <0>;
    		};
    	};
    };
    
    &vpfe1 {
    	status = "okay";
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&vpfe1_pins_default>;
    	pinctrl-1 = <&vpfe1_pins_sleep>;
    
    	port {
    		vpfe1_ep: endpoint {
    			remote-endpoint = <&ov2659_0>;
    			ti,am437x-vpfe-interface = <0>;
    			bus-width = <8>;
    			hsync-active = <0>;
    			vsync-active = <0>;
    		};
    	};
    };
    
    &mcasp1 {
    	#sound-dai-cells = <0>;
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mcasp1_pins>;
    	pinctrl-1 = <&mcasp1_sleep_pins>;
    
    	status = "okay";
    
    	op-mode = <0>; /* MCASP_IIS_MODE */
    	tdm-slots = <2>;
    	/* 4 serializers */
    	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
    		0 0 1 2
    	>;
    	tx-num-evt = <32>;
    	rx-num-evt = <32>;
    };
    
    &rtc {
    	clocks = <&clk_32k_rtc>, <&clk_32768_ck>;
    	clock-names = "ext-clk", "int-clk";
    	status = "okay";
    };
    
    &cpu {
    	cpu0-supply = <&dcdc2>;
    };
    
    &wkup_m3_ipc {
    	ti,set-io-isolation;
    	ti,scale-data-fw = "am43x-evm-scale-data.bin";
    };
    
    &sgx {
    	status = "okay";
    };
    
    &pruss_soc_bus {
    	status = "okay";
    
    	pruss1: pruss@54400000 {
    		status = "okay";
    	};
    
    	pruss0: pruss@54440000 {
    		status = "okay";
    	};
    };
    

    What should I do for the next step to make LCD works well ?

    Your prompt response would be highly appreciated..

    Thanks, kihan.

  • Hi Kihan,

    Please refer to the following thread. Due to the silicon errata, we have the max-bandwidth limitation on AM437x and based on your system, the display bandwidth is about 245760000(1280*800*60(fps)*4(bytes/pixel)). Please keep in mind that is an estimate and I recommend you to tune the number based on your system testing.

    Regards,
    Krunal