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.

AM625: How to compile ti-img-rogue-driver for custom board

Expert 2730 points
Part Number: AM625

Tool/software:

On your SDK there is a Makefile in main folder to compile different targets. If I compile "make ti-img-rogue-driver" it will compile kernel and all uboot targets with default configurations and devicetrees. How should I compile the driver when using custom board with custom configurations and custom devicetrees? Could you add more documentation how to use your SDK with custom boards? At the moment it expects to use your SDK-boards.

JHi

  • I manged to compile it (ti-processor-sdk-linux-am62xx-evm-09.02.01.10), by changing variables in Rules.make. Everything compiled nicely, but the display doesn't work. 

    kmstest
    terminate called after throwing an instance of '[  476.761683] audit: type=1701 audit(482.320:30): auid=4294967295 uid=0 gid=0 ses=4294967295 pid=734 comm="kmstest" exe="/usr/bin/kmstest.kms++" sig=6 res=1
    std::runtime_error'
      what():  No modesetting DRM card found
    [  476.789117] audit: type=1334 audit(482.348:31): prog-id=23 op=LOAD
    Aborted (core dumped)[  476.796354] audit: type=1334 audit(482.348:32): prog-id=24 op=LOAD

    dmesg | grep drm
    [    4.106455] systemd[1]: Starting Load Kernel Module drm...
    [    8.744443] [drm] Initialized pvr 23.3.6512818 20170530 for fd00000.gpu on minor 0

    dmesg | grep tidss
    /* NOTHING */

    lsmod | grep drm
    drm_dma_helper         20480  1 tidss
    drm_kms_helper        184320  4 sii902x,drm_dma_helper,display_connector,tidss
    syscopyarea            16384  1 drm_kms_helper
    sysfillrect            16384  1 drm_kms_helper
    sysimgblt              16384  1 drm_kms_helper
    fb_sys_fops            16384  1 drm_kms_helper
    drm                   561152  7 sii902x,drm_kms_helper,drm_dma_helper,display_connector,pvrsrvkm,tidss
    drm_panel_orientation_quirks    28672  1 drm

    I removed hdmi from my dts and added panel as someone already suggested it for testing:

    panel {
    			compatible = "newhaven,nhd-4.3-480272ef-atxl";
    
    			port {
    					panel_in: endpoint {
    							remote-endpoint = <&dpi1_out>;
    					};
    			};
    	};
    	
    
    &dss_ports {
    	status = "okay";
    	/* VP2: DPI Output */
    	port@1 {
    		reg = <1>;
    
    		dpi1_out: endpoint {
    		remote-endpoint = <&panel_in>;
    			//remote-endpoint = <&sii9022_in>;
    		};
    	};
    };

    Any ideas why display doesn't work? There is no /dev/fb0, but dri is available.

    /dev/dri# ls -l
    drwxr-xr-x    2 root     root            80 Jan  1 00:00 by-path
    crw-rw----    1 root     video     226,   0 Jan  1 00:00 card0
    crw-rw-rw-    1 root     render    226, 128 Jan  1 00:00 renderD128

    JHi

  • Hi,

    Can you share full boot logs and what are you planning to do with the newhaven LCD? Is it just for testing DPI panel or that's your custom panel?

    Regards,
    Krunal

  • First I had hdmi (was also connected), but it didn’t work (same behavior as with newhaven). Then I searched for a solution, and I found this. You suggested first to try with that panel, but it didn’t change anything. I can post the boot log tomorrow.

  • The DPI suggestion was for a customer trying to connect DPI panel but it's interesting how HDMI also fails to enumerate. Have you changed anything from default Kernel? I know you were trying to build the GPU but anything else changed? The TIDSS is a module and you sure it's present in the filesystem. Also, does lsmod | grep -i tidss show anything?

    Regards,
    Krunal 

  • I'm using the default kernel configuration. As I am using the MyIR development board, I'm using their device tree file, which works if booted from eMMC to their rootfs. I didn't want to change anything before I get the board running. I have also tried with the kernel configuration from MyIR, but I got the same results.

    I have attached the boot log and also the dts files.

    lsmod | grep -i tidss
    tidss                  61440  0
    drm_dma_helper         20480  1 tidss
    drm_kms_helper        184320  4 sii902x,drm_dma_helper,display_connector,tidss
    drm                   561152  7 sii902x,drm_kms_helper,drm_dma_helper,display_connector,pvrsrvkm,tidss

    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 6.1.83-00001-g321b5c92f637-dirty (parallels@ubuntu) (aarch64-oe-linux-gcc (GCC) 11.4.0, GNU ld (GNU Binutils) 2.38.20220708) #3 SMP PREEMPT Tue Jun 11 12:32:27 CEST 2024
    [    0.000000] Machine model: Texas Instruments K3 AM625 SoC
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009c800000, size 3 MiB
    [    0.000000] OF: reserved mem: initialized node ipc-memories@9c800000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cb00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-dma-memory@9cb00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cc00000, size 14 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-memory@9cc00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009da00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9da00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009db00000, size 12 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@9db00000, compatible id shared-dma-pool
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x000000009c7fffff]
    [    0.000000]   node   0: [mem 0x000000009c800000-0x000000009e6fffff]
    [    0.000000]   node   0: [mem 0x000000009e700000-0x000000009e77ffff]
    [    0.000000]   node   0: [mem 0x000000009e780000-0x000000009fffffff]
    [    0.000000]   node   0: [mem 0x00000000a0000000-0x00000000ff6fffff]
    [    0.000000]   node   0: [mem 0x00000000ff700000-0x00000000fffc9fff]
    [    0.000000]   node   0: [mem 0x00000000fffca000-0x00000000ffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] cma: Reserved 32 MiB at 0x00000000fb200000
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.4
    [    0.000000] percpu: Embedded 20 pages/cpu s41064 r8192 d32664 u81920
    [    0.000000] pcpu-alloc: s41064 r8192 d32664 u81920 alloc=20*4096
    [    0.000000] pcpu-alloc: [0] 0 [0] 1 
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] alternatives: applying boot alternatives
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 516096
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system) root=PARTUUID=339389e0-02 rw rootfstype=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 1937292K/2097152K available (11712K kernel code, 1258K rwdata, 3816K rodata, 1984K init, 438K bss, 127092K reserved, 32768K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu: 	RCU event tracing is enabled.
    [    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
    [    0.000000] 	Trampoline variant of Tasks RCU enabled.
    [    0.000000] 	Tracing variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 256 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] Root IRQ handler: gic_handle_irq
    [    0.000000] GICv3: GICv3 features: 16 PPIs
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
    [    0.000000] ITS [mem 0x01820000-0x0182ffff]
    [    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
    [    0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19
    [    0.000000] ITS@0x0000000001820000: allocated 524288 Devices @80800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x0000000080030000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080040000
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0x3ffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000001] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008601] Console: colour dummy device 80x25
    [    0.013210] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.023899] pid_max: default: 32768 minimum: 301
    [    0.028679] LSM: Security Framework initializing
    [    0.033563] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.041160] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.051229] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.058689] cblist_init_generic: Setting shift to 1 and lim to 1.
    [    0.064996] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.072393] cblist_init_generic: Setting shift to 1 and lim to 1.
    [    0.078807] rcu: Hierarchical SRCU implementation.
    [    0.083720] rcu: 	Max phase no-delay instances is 1000.
    [    0.089386] Platform MSI: msi-controller@1820000 domain created
    [    0.095767] PCI/MSI: /bus@f0000/interrupt-controller@1800000/msi-controller@1820000 domain created
    [    0.105193] EFI services will not be available.
    [    0.110067] smp: Bringing up secondary CPUs ...
    [    0.115462] Detected VIPT I-cache on CPU1
    [    0.115592] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
    [    0.115617] GICv3: CPU1: using allocated LPI pending table @0x0000000080050000
    [    0.115687] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.115831] smp: Brought up 1 node, 2 CPUs
    [    0.145242] SMP: Total of 2 processors activated.
    [    0.150055] CPU features: detected: 32-bit EL0 Support
    [    0.155336] CPU features: detected: CRC32 instructions
    [    0.160654] CPU: All CPU(s) started at EL2
    [    0.164843] alternatives: applying system-wide alternatives
    [    0.172813] devtmpfs: initialized
    [    0.185946] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.195977] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
    [    0.204500] pinctrl core: initialized pinctrl subsystem
    [    0.210581] DMI not present or invalid.
    [    0.215319] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.222705] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
    [    0.230136] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.238227] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.246435] audit: initializing netlink subsys (disabled)
    [    0.252278] audit: type=2000 audit(0.156:1): state=initialized audit_enabled=0 res=1
    [    0.252919] thermal_sys: Registered thermal governor 'step_wise'
    [    0.260232] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.266593] cpuidle: using governor menu
    [    0.277477] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.284487] ASID allocator initialised with 65536 entries
    [    0.302694] platform 30200000.dss: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    0.315485] platform connector: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    0.325355] KASLR disabled due to lack of seed
    [    0.337483] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.344467] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
    [    0.350881] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.357820] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
    [    0.364228] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.371171] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
    [    0.377578] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.384517] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
    [    0.392756] k3-chipinfo 43000014.chipid: Family:AM62X rev:SR1.0 JTAGID[0x0bb7e02f] Detected
    [    0.404164] iommu: Default domain type: Translated 
    [    0.409167] iommu: DMA domain TLB invalidation policy: strict mode 
    [    0.415935] SCSI subsystem initialized
    [    0.419981] libata version 3.00 loaded.
    [    0.420234] usbcore: registered new interface driver usbfs
    [    0.425897] usbcore: registered new interface driver hub
    [    0.431361] usbcore: registered new device driver usb
    [    0.437129] pps_core: LinuxPPS API ver. 1 registered
    [    0.442210] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.451570] PTP clock support registered
    [    0.455735] EDAC MC: Ver: 3.0.0
    [    0.460148] omap-mailbox 29000000.mailbox: omap mailbox rev 0x66fc9100
    [    0.467315] FPGA manager framework
    [    0.470916] Advanced Linux Sound Architecture Driver Initialized.
    [    0.478216] clocksource: Switched to clocksource arch_sys_counter
    [    0.484789] VFS: Disk quotas dquot_6.6.0
    [    0.488853] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    0.502777] NET: Registered PF_INET protocol family
    [    0.508126] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    0.517575] tcp_listen_portaddr_hash hash table entries: 1024 (order: 2, 16384 bytes, linear)
    [    0.526415] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.534356] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    0.542579] TCP bind hash table entries: 16384 (order: 7, 524288 bytes, linear)
    [    0.550706] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.557654] UDP hash table entries: 1024 (order: 3, 32768 bytes, linear)
    [    0.564600] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes, linear)
    [    0.572169] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    0.578662] RPC: Registered named UNIX socket transport module.
    [    0.584747] RPC: Registered udp transport module.
    [    0.589557] RPC: Registered tcp transport module.
    [    0.594366] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.600962] NET: Registered PF_XDP protocol family
    [    0.605879] PCI: CLS 0 bytes, default 64
    [    0.610712] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
    [    0.621159] Initialise system trusted keyrings
    [    0.626045] workingset: timestamp_bits=46 max_order=19 bucket_order=0
    [    0.637677] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.644400] NFS: Registering the id_resolver key type
    [    0.649635] Key type id_resolver registered
    [    0.653914] Key type id_legacy registered
    [    0.658078] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.664934] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.708916] Key type asymmetric registered
    [    0.713118] Asymmetric key parser 'x509' registered
    [    0.718172] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.725974] io scheduler mq-deadline registered
    [    0.730615] io scheduler kyber registered
    [    0.738833] pinctrl-single 4084000.pinctrl: 34 pins, size 136
    [    0.745818] pinctrl-single f4000.pinctrl: 171 pins, size 684
    [    0.760080] Serial: 8250/16550 driver, 12 ports, IRQ sharing enabled
    [    0.777039] loop: module loaded
    [    0.781696] megasas: 07.719.03.00-rc1
    [    0.789264] tun: Universal TUN/TAP device driver, 1.6
    [    0.795324] VFIO - User Level meta-driver version: 0.3
    [    0.801560] usbcore: registered new interface driver usb-storage
    [    0.808395] i2c_dev: i2c /dev entries driver
    [    0.814681] sdhci: Secure Digital Host Controller Interface driver
    [    0.821034] sdhci: Copyright(c) Pierre Ossman
    [    0.825985] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.832633] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.839021] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    0.846046] usbcore: registered new interface driver usbhid
    [    0.851752] usbhid: USB HID core driver
    [    0.856747] optee: probing for conduit method.
    [    0.861367] optee: revision 4.1 (012cdca4)
    [    0.861708] optee: dynamic shared memory is enabled
    [    0.871369] optee: initialized driver
    [    0.877229] Initializing XFRM netlink socket
    [    0.881686] NET: Registered PF_PACKET protocol family
    [    0.886969] Key type dns_resolver registered
    [    0.891876] registered taskstats version 1
    [    0.896107] Loading compiled-in X.509 certificates
    [    0.912861] ti-sci 44043000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.2.8--v09.02.08 (Kool Koala)')
    [    0.969864] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=81, clk=20, ret=-19
    [    1.003202] omap_i2c 4900000.i2c: bus 0 rev0.12 at 400 kHz
    [    1.010073] platform connector: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    1.019289] platform 30200000.dss: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    1.028685] i2c 1-003b: Fixed dependency cycle(s) with /connector
    [    1.034971] i2c 1-003b: Fixed dependency cycle(s) with /bus@f0000/dss@30200000
    [    1.043056] i2c 1-003c: Fixed dependency cycle(s) with /bus@f0000/ticsi2rx@30102000/csi-bridge@30101000
    [    1.052816] omap_i2c 20000000.i2c: bus 1 rev0.12 at 100 kHz
    [    1.060547] omap_i2c 20010000.i2c: bus 2 rev0.12 at 400 kHz
    [    1.067859] omap_i2c 20030000.i2c: bus 3 rev0.12 at 400 kHz
    [    1.074139] ti-sci-intr 4210000.interrupt-controller: Interrupt Router 5 domain created
    [    1.082515] ti-sci-intr bus@f0000:interrupt-controller@a00000: Interrupt Router 3 domain created
    [    1.091814] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
    [    1.101910] ti-udma 485c0100.dma-controller: Number of rings: 82
    [    1.110570] ti-udma 485c0100.dma-controller: Channels: 48 (bchan: 18, tchan: 12, rchan: 18)
    [    1.122044] ti-udma 485c0000.dma-controller: Number of rings: 150
    [    1.132718] ti-udma 485c0000.dma-controller: Channels: 35 (tchan: 20, rchan: 15)
    [    1.143438] printk: console [ttyS2] disabled
    [    1.147921] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 240, base_baud = 3000000) is a 8250
    [    1.156816] printk: console [ttyS2] enabled
    [    1.165286] printk: bootconsole [ns16550a0] disabled
    [    1.176699] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 242, base_baud = 3000000) is a 8250
    [    1.188344] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
    [    1.196483] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.242244] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.251399] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA01103, cpsw version 0x6BA81103 Ports: 3 quirks:00000006
    [    1.264454] am65-cpsw-nuss 8000000.ethernet: Use random MAC address
    [    1.270741] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.5
    [    1.277872] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
    [    1.284697] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:0
    [    1.295365] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
    [    1.305775] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 1200000 KHz, changing to: 1250000 KHz
    [    1.319607] mmc1: CQHCI version 5.10
    [    1.323461] mmc0: CQHCI version 5.10
    [    1.336177] 2840000.serial: ttyS6 at MMIO 0x2840000 (irq = 430, base_baud = 3000000) is a 8250
    [    1.346074] 2860000.serial: ttyS8 at MMIO 0x2860000 (irq = 431, base_baud = 3000000) is a 8250
    [    1.355460] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.366238] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
    [    1.374586] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
    [    1.402230] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.412458] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.420190] mmc2: CQHCI version 5.10
    [    1.429437] mmc1: new high speed SDHC card at address aaaa
    [    1.436143] mmcblk1: mmc1:aaaa SC32G 29.7 GiB 
    [    1.446394]  mmcblk1: p1 p2
    [    1.458243] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.464040] mmc2: SDHCI controller on fa20000.mmc [fa20000.mmc] using ADMA 64-bit
    [    1.468391] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.507108] mmc2: new high speed SDIO card at address 0001
    [    1.522269] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.532360] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.561666] mmc0: Command Queue Engine enabled
    [    1.566169] mmc0: new HS200 MMC card at address 0001
    [    1.572536] mmcblk0: mmc0:0001 8GUF4R 7.28 GiB 
    [    1.578270] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.579347]  mmcblk0: p1 p2
    [    1.589478] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.590273] mmcblk0boot0: mmc0:0001 8GUF4R 31.9 MiB 
    [    1.602600] mmcblk0boot1: mmc0:0001 8GUF4R 31.9 MiB 
    [    1.608936] mmcblk0rpmb: mmc0:0001 8GUF4R 4.00 MiB, chardev (240:0)
    [    1.634227] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.644576] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.690270] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.700159] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
    [    1.711540] input: gpio-keys as /devices/platform/gpio-keys/input/input0
    [    1.720129] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.723687] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=81, clk=20, ret=-19
    [    1.742297] ALSA device list:
    [    1.745303]   No soundcards found.
    [    1.786241] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    2.197650] EXT4-fs (mmcblk1p2): recovery complete
    [    2.207305] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Quota mode: none.
    [    2.216327] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    2.226249] devtmpfs: mounted
    [    2.230778] Freeing unused kernel memory: 1984K
    [    2.235457] Run /sbin/init as init process
    [    2.239618]   with arguments:
    [    2.239623]     /sbin/init
    [    2.239628]   with environment:
    [    2.239635]     HOME=/
    [    2.239638]     TERM=linux
    [    2.604345] systemd[1]: System time before build time, advancing clock.
    [    2.718650] NET: Registered PF_INET6 protocol family
    [    2.726131] Segment Routing with IPv6
    [    2.729901] In-situ OAM (IOAM) with IPv6
    [    2.784933] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)
    [    2.817162] systemd[1]: Detected architecture arm64.
    [    2.881862] systemd[1]: Hostname set to <myd-y62x>.
    [    2.892776] systemd[1]: Initializing machine ID from random generator.
    [    3.142479] systemd-sysv-generator[152]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    3.539931] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    3.630680] systemd[1]: Queued start job for default target Multi-User System.
    [    3.700699] systemd[1]: Created slice Slice /system/getty.
    [    3.726401] systemd[1]: Created slice Slice /system/modprobe.
    [    3.749890] systemd[1]: Created slice Slice /system/serial-getty.
    [    3.773449] systemd[1]: Created slice User and Session Slice.
    [    3.794954] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [    3.819001] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [    3.842927] systemd[1]: Reached target Path Units.
    [    3.858561] systemd[1]: Reached target Remote File Systems.
    [    3.878604] systemd[1]: Reached target Slice Units.
    [    3.894933] systemd[1]: Reached target Swaps.
    [    3.958373] systemd[1]: Listening on RPCbind Server Activation Socket.
    [    3.986912] systemd[1]: Reached target RPC Port Mapper.
    [    4.033261] systemd[1]: Listening on Process Core Dump Socket.
    [    4.055523] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [    4.082536] systemd[1]: Listening on Journal Audit Socket.
    [    4.108103] systemd[1]: Listening on Journal Socket (/dev/log).
    [    4.132287] systemd[1]: Listening on Journal Socket.
    [    4.150655] systemd[1]: Listening on Network Service Netlink Socket.
    [    4.177908] systemd[1]: Listening on udev Control Socket.
    [    4.200812] systemd[1]: Listening on udev Kernel Socket.
    [    4.225221] systemd[1]: Listening on User Database Manager Socket.
    [    4.291048] systemd[1]: Mounting Huge Pages File System...
    [    4.315250] systemd[1]: Mounting POSIX Message Queue File System...
    [    4.371128] systemd[1]: Mounting Kernel Debug File System...
    [    4.388183] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
    [    4.447195] systemd[1]: Mounting Temporary Directory /tmp...
    [    4.499790] systemd[1]: Starting Create List of Static Device Nodes...
    [    4.534766] systemd[1]: Starting Load Kernel Module configfs...
    [    4.575516] systemd[1]: Starting Load Kernel Module drm...
    [    4.599058] systemd[1]: Starting Load Kernel Module fuse...
    [    4.640043] fuse: init (API version 7.37)
    [    4.661973] systemd[1]: Starting Start psplash boot splash screen...
    [    4.723704] systemd[1]: Starting RPC Bind...
    [    4.742970] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
    [    4.787655] systemd[1]: Starting Journal Service...
    [    4.836208] systemd[1]: Starting Load Kernel Modules...
    [    4.858586] systemd[1]: Starting Generate network units from Kernel command line...
    [    4.894004] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    4.947735] systemd[1]: Starting Coldplug All udev Devices...
    [    4.960760] EXT4-fs (mmcblk1p2): re-mounted. Quota mode: none.
    [    4.987837] systemd[1]: Started RPC Bind.
    [    4.999871] systemd[1]: Started Journal Service.
    [    5.464339] systemd-journald[167]: Received client request to flush runtime journal.
    [    5.765004] audit: type=1334 audit(1651167748.160:2): prog-id=5 op=LOAD
    [    5.772816] audit: type=1334 audit(1651167748.168:3): prog-id=6 op=LOAD
    [    6.754299] random: crng init done
    [    7.119903] CAN device driver interface
    [    7.128233] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    7.167270] m_can_platform 20701000.can: m_can device registered (irq=433, version=32)
    [    7.182381] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    7.215863] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    7.253181] mc: Linux media interface: v0.10
    [    7.377318] videodev: Linux video capture interface: v2.00
    [    7.383068] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    7.424699] OF: graph: no port node found in /bus@f0000/i2c@20030000/ptn5150@3d
    [    7.463618] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    7.471803] ov5640 1-003c: supply DOVDD not found, using dummy regulator
    [    7.488300] rtc-ti-k3 2b1f0000.rtc: registered as rtc0
    [    7.495148] sgtl5000 1-000a: sgtl5000 revision 0x11
    [    7.510333] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    7.510733] rtc-ti-k3 2b1f0000.rtc: setting system clock to 1970-01-01T00:00:13 UTC (13)
    [    7.519289] systemd-journald[167]: Time jumped backwards, rotating.
    [    7.578850] ov5640 1-003c: supply AVDD not found, using dummy regulator
    [    7.600406] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    7.646354] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    7.673948] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    7.684185] ov5640 1-003c: supply DVDD not found, using dummy regulator
    [    7.734604] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    7.781034] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    7.792424] k3-m4-rproc 5000000.m4fss: assigned reserved memory node m4f-dma-memory@9cb00000
    [    7.858366] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    7.862505] ov5640 1-003c: Fixed dependency cycle(s) with /bus@f0000/ticsi2rx@30102000/csi-bridge@30101000
    [    7.887890] audit: type=1334 audit(13.872:4): prog-id=7 op=LOAD
    [    7.897402] platform 30101000.csi-bridge: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/camera@3c
    [    7.906282] audit: type=1334 audit(13.880:5): prog-id=8 op=LOAD
    [    8.034690] ov5640 1-003c: ov5640_write_reg: error: reg=3008, val=42
    [    8.072927] ov5640 1-003c: ov5640_write_reg: error: reg=3103, val=11
    [    8.119707] k3-m4-rproc 5000000.m4fss: configured M4 for remoteproc mode
    [    8.158908] ov5640 1-003c: ov5640_read_reg: error: reg=3108
    [    8.164648] ov5640 1-003c: failed to power on
    [    8.193411] ov5640: probe of 1-003c failed with error -121
    [    8.213039] k3-m4-rproc 5000000.m4fss: local reset is deasserted for device
    [    8.227544] dwc3-am62 f900000.dwc3-usb: invalid resource
    [    8.240116] dwc3-am62 f900000.dwc3-usb: can't map PHY IOMEM resource
    [    8.246824] dwc3-am62: probe of f900000.dwc3-usb failed with error -22
    [    8.258435] remoteproc remoteproc0: 5000000.m4fss is available
    [    8.272538] dwc3-am62 f910000.dwc3-usb: invalid resource
    [    8.272971] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    8.287867] dwc3-am62 f910000.dwc3-usb: can't map PHY IOMEM resource
    [    8.294759] dwc3-am62: probe of f910000.dwc3-usb failed with error -22
    [    8.342296] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    8.357628] remoteproc remoteproc0: Direct firmware load for am62-mcu-m4f0_0-fw failed with error -2
    [    8.369833] remoteproc remoteproc0: powering up 5000000.m4fss
    [    8.370872] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    8.378335] remoteproc remoteproc0: Direct firmware load for am62-mcu-m4f0_0-fw failed with error -2
    [    8.392782] remoteproc remoteproc0: request_firmware failed: -2
    [    8.430332] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    8.478873] at24 0-0050: supply vcc not found, using dummy regulator
    [    8.580073] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    8.617783] platform 78000000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
    [    8.630257] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    8.657068] pvrsrvkm: loading out-of-tree module taints kernel.
    [    8.664111] platform 78000000.r5f: configured R5F for IPC-only mode
    [    8.679140] at24 0-0050: 4096 byte 24c32 EEPROM, writable, 32 bytes/write
    [    8.723279] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    8.729358] platform 78000000.r5f: assigned reserved memory node r5f-dma-memory@9da00000
    [    8.740225] remoteproc remoteproc1: 78000000.r5f is available
    [    8.747300] remoteproc remoteproc1: attaching to 78000000.r5f
    [    8.754120] platform 78000000.r5f: R5F core initialized in IPC-only mode
    [    8.761352] rproc-virtio rproc-virtio.1.auto: assigned reserved memory node r5f-dma-memory@9da00000
    [    8.772997] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    8.774032] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xd
    [    8.778957] rproc-virtio rproc-virtio.1.auto: registered virtio0 (type 7)
    [    8.786159] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    8.792961] remoteproc remoteproc1: remote processor 78000000.r5f is now attached
    [    8.806645] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xe
    [    8.834037] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    8.886310] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    8.918896] PVR_K:  214: Device: fd00000.gpu
    [    8.925369] PVR_K:  214: Read BVNC 33.15.11.3 from HW device registers
    [    8.936704] PVR_K:  214: RGX Device registered with BVNC 33.15.11.3
    [    8.944544] [drm] Initialized pvr 23.3.6512818 20170530 for fd00000.gpu on minor 0
    [    8.946521] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [    8.954508] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    9.009380] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [    9.017749] cfg80211: Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
    [    9.018439] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    9.048600] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
    [    9.066463] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    9.074299] cfg80211: failed to load regulatory.db
    [    9.122357] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    9.310655] mwifiex_sdio mmc2:0001:1: Direct firmware load for mrvl/sdiouart8997_combo_v4.bin failed with error -2
    [    9.324263] mwifiex_sdio mmc2:0001:1: Failed to get firmware mrvl/sdiouart8997_combo_v4.bin
    [    9.335925] mwifiex_sdio mmc2:0001:1: info: _mwifiex_fw_dpc: unregister device
    [    9.352398] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    9.402341] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    9.864478] EXT4-fs (mmcblk1p2): resizing filesystem from 236181 to 7758720 blocks
    [   10.417714] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [   10.478321] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [   10.499067] remoteproc remoteproc2: 30074000.pru is available
    [   10.506035] m_can_platform 20701000.can main_mcan0: renamed from can0
    [   10.506590] remoteproc remoteproc3: 30078000.pru is available
    [   10.523147] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [   10.574320] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [   10.668468] cdns-csi2rx 30101000.csi-bridge: Probed CSI2RX with 2/4 lanes, 4 streams, external D-PHY
    [   10.709858] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [   10.758317] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [   11.084445] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [   11.134324] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [   11.160300] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [   11.210343] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [   12.630873] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Quota mode: none.
    [   12.958579] EXT4-fs (mmcblk1p2): resized filesystem to 7758720
    [   18.851044] audit: type=1334 audit(24.836:6): prog-id=9 op=LOAD
    [   18.860438] audit: type=1334 audit(24.844:7): prog-id=10 op=LOAD
    [   19.622273] audit: type=1006 audit(25.604:8): pid=713 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=1 res=1
    [   19.637674] audit: type=1300 audit(25.604:8): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=fffffdabfd28 a2=1 a3=ffff9b719020 items=0 ppid=1 pid=713 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
    [   19.666302] audit: type=1327 audit(25.604:8): proctitle="(systemd)"
    [   19.719889] audit: type=1334 audit(25.704:9): prog-id=11 op=LOAD
    [   19.726359] audit: type=1300 audit(25.704:9): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=ffffc3b182e0 a2=78 a3=0 items=0 ppid=1 pid=713 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="systemd" exe="/lib/systemd/systemd" key=(null)
    [   19.753998] audit: type=1327 audit(25.704:9): proctitle="(systemd)"
    [   19.764858] audit: type=1334 audit(25.708:10): prog-id=11 op=UNLOAD
    [   19.778498] audit: type=1334 audit(25.736:11): prog-id=12 op=LOAD
    [   21.115989] sii902x 1-003b: Failed to retrieve/request reset gpio: -517
    [   21.125070] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [   21.170235] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [   21.184178] platform leds: deferred probe pending
    [   21.189143] i2c 1-003b: deferred probe pending
    [   21.193823] platform 30200000.dss: deferred probe pending
    [   21.199393] platform 8000f00.mdio: deferred probe pending
    [   24.355610] kauditd_printk_skb: 3 callbacks suppressed
    [   24.355627] audit: type=1701 audit(30.340:13): auid=4294967295 uid=0 gid=0 ses=4294967295 pid=726 comm="kmstest" exe="/usr/bin/kmstest.kms++" sig=6 res=1
    [   24.429938] audit: type=1334 audit(30.412:14): prog-id=13 op=LOAD
    [   24.440434] audit: type=1334 audit(30.420:15): prog-id=14 op=LOAD
    [   25.010782] audit: type=1334 audit(30.996:16): prog-id=14 op=UNLOAD
    [   25.017319] audit: type=1334 audit(30.996:17): prog-id=13 op=UNLOAD
    [   37.670702] audit: type=1701 audit(43.656:18): auid=4294967295 uid=0 gid=0 ses=4294967295 pid=734 comm="kmsprint" exe="/usr/bin/kmsprint" sig=6 res=1
    [   37.722473] audit: type=1334 audit(43.708:19): prog-id=15 op=LOAD
    [   37.731881] audit: type=1334 audit(43.716:20): prog-id=16 op=LOAD
    [   38.306757] audit: type=1334 audit(44.292:21): prog-id=16 op=UNLOAD
    [   38.313349] audit: type=1334 audit(44.292:22): prog-id=15 op=UNLOAD
    

    // SPDX-License-Identifier: GPL-2.0
    /*
     * AM625 SK: https://www.ti.com/lit/zip/sprr448
     *
     * Copyright (C) 2021-2022 Texas Instruments Incorporated - https://www.ti.com/
     */
    
    /dts-v1/;
    
    #include <dt-bindings/leds/common.h>
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/net/ti-dp83867.h>
    #include "myd-y62x-common.dtsi"
    
    / {
    //6252 shut down two watchdog
    	cpus {
    		/delete-node/ cpu-map;
    		/delete-node/ cpu@2;
    		/delete-node/ cpu@3;
    	};
    };
    &main_rti2{
    	status = "disabled";
    };
    
    &main_rti3{
    	status = "disabled";
    };
    

    // SPDX-License-Identifier: GPL-2.0
    /*
     * Common dtsi for AM62x SK and derivatives
     *
     * Copyright (C) 2021-2023 Texas Instruments Incorporated - https://www.ti.com/
     */
    
    #include <dt-bindings/leds/common.h>
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/net/ti-dp83867.h>
    #include <dt-bindings/input/input.h>
    #include "k3-am625.dtsi"
    
    / {
    	aliases {
    		serial2 = &main_uart0;
    		serial3 = &main_uart1;
    		serial6 = &main_uart4;
    		serial8 = &main_uart6;
    		mmc0 = &sdhci0;
    		mmc1 = &sdhci1;
    		mmc2 = &sdhci2;
    		spi0 = &ospi0;
    		ethernet0 = &cpsw_port1;
    		ethernet1 = &cpsw_port2;
    		usb0 = &usb0;
    		usb1 = &usb1;
    	};
    
    	chosen {
    		stdout-path = "serial2:115200n8";
    		bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
    	};
    
    	opp-table {
    		/* Add 1.4GHz OPP for am625-sk board. Requires VDD_CORE to be at 0.85V */
    		opp-1400000000 {
    			opp-hz = /bits/ 64 <1400000000>;
    			opp-supported-hw = <0x01 0x0004>;
    			clock-latency-ns = <6000000>;
    		};
    	};
    
    	memory@80000000 {
    		device_type = "memory";
    		/* 2G RAM */
    		reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
    
    	};
    
    	reserved-memory {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		ranges;
    
    		ramoops@9c700000 {
    			compatible = "ramoops";
    			reg = <0x00 0x9c700000 0x00 0x00100000>;
    			record-size = <0x8000>;
    			console-size = <0x8000>;
    			ftrace-size = <0x00>;
    			pmsg-size = <0x8000>;
    		};
    
    
    
    		rtos_ipc_memory_region: ipc-memories@9c800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9c800000 0x00 0x00300000>;
    			no-map;
    		};
    
    		mcu_m4fss_dma_memory_region: m4f-dma-memory@9cb00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9cb00000 0x00 0x100000>;
    			no-map;
    		};
    
    		mcu_m4fss_memory_region: m4f-memory@9cc00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9cc00000 0x00 0xe00000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9da00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9da00000 0x00 0x00100000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_memory_region: r5f-memory@9db00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9db00000 0x00 0x00c00000>;
    			no-map;
    		};
    
    		lpm_ctx_ddr: lpm-memory@9e700000 {
    			reg = <0x00 0x9e700000 0x00 0x80000>;
    			alignment = <0x1000>;
    		};
    
    		secure_tfa_ddr: tfa@9e780000 {
    			reg = <0x00 0x9e780000 0x00 0x80000>;
    			alignment = <0x1000>;
    			no-map;
    		};
    
    		secure_ddr: optee@9e800000 {
    			reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
    			alignment = <0x1000>;
    			no-map;
    		};
    
    		framebuffer: framebuffer@ff700000 {
    			reg = <0x00 0xff700000 0x00 0x008ca000>;
    			no-map;
    		};
    	};
    
    	vmain_pd: regulator-0 {
    		compatible = "regulator-fixed";
    		regulator-name = "vmain_pd";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vcc_5v0: regulator-1 {
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_5v0";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vcc_3v3_sys: regulator-2 {
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_3v3_sys";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vdd_mmc1: regulator-3 {
    		compatible = "regulator-fixed";
    		regulator-name = "vdd_mmc1";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		regulator-boot-on;
    		enable-active-high;
    		vin-supply = <&vcc_3v3_sys>;
    	};
    
    	vdd_sd_dv: regulator-sd {
    		compatible = "regulator-fixed";
    		regulator-name = "vdd_sd_dv";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		regulator-boot-on;
    		enable-active-high;
    		vin-supply = <&vcc_3v3_sys>;
    	};
    
    	vdd_wl_dv: regulator-wl {
    		compatible = "regulator-fixed";
    		regulator-name = "vdd_wl_dv";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		regulator-boot-on;
    		enable-active-high;
    		vin-supply = <&vcc_3v3_sys>;
    	};
    
    	wlan_reg_on: regulator-4 {
    		compatible = "regulator-fixed";
    		regulator-name = "wlan_reg_on";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		enable-active-high;
    		regulator-boot-on;
    		vin-supply = <&vcc_3v3_sys>;
    		pinctrl-names = "default";
    		pinctrl-1 = <&mcu_wlan_reg_on_pins_default>;
    		gpios = <&mcu_gpio0 15 GPIO_ACTIVE_HIGH>;
    	};
    
    	vcc_1v8: regulator-5 {
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_1v8";
    		regulator-min-microvolt = <1800000>;
    		regulator-max-microvolt = <1800000>;
    		vin-supply = <&vcc_3v3_sys>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	lvds_power: regulator-6 {
    		compatible = "regulator-fixed";
    		regulator-name = "lvds_power";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		enable-active-high;
    		regulator-always-on;
    		regulator-boot-on;
    		vin-supply = <&vcc_5v0>;
    		pinctrl-names = "default";
    		pinctrl-1 = <&mcu_lvds_power_pins_default>;
    		gpios = <&mcu_gpio0 4 GPIO_ACTIVE_HIGH>;
    	};
    
    	csi1_io: csi1-io {
    		compatible = "regulator-fixed";
    		regulator-name = "csi1_pwr";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		gpio = <&mcu_gpio0 3 GPIO_ACTIVE_HIGH>;
    		enable-active-high;
    		regulator-always-on;
    		pinctrl-names = "default";
    		pinctrl-1 = <&csi_io_power_pins_default>;
    	};
    
    
    	hdmi: connector {
    		compatible = "hdmi-connector";
    		label = "hdmi";
    		type = "a";
    		port {
    			hdmi_connector_in: endpoint {
    				remote-endpoint = <&sii9022_out>;
    			};
    		};
    	};
    
    	clk_ov5640_fixed: ov5640-xclk {
    		compatible = "fixed-clock";
    		#clock-cells = <0>;
    		clock-frequency = <12000000>;
    	};
    
    	sgtl5000_mclk: sgtl5000-mclk {
    		compatible = "fixed-clock";
    		#clock-cells = <0>;
    		clock-frequency = <11289600>;
    	};
    
    	codec_audio: sound {
    		compatible = "simple-audio-card";
    		simple-audio-card,name = "AM62x-SKEVM";
    		simple-audio-card,widgets =
    				"Microphone", "Microphone Jack",
    				"Headphone", "Headphone Jack",
    				"Speaker", "Speaker Ext",
    				"Line", "Line In Jack";
    		simple-audio-card,routing =
    				"MIC_IN", "Microphone Jack",
    				"Microphone Jack", "Mic Bias",
    				"LINE_IN", "Line In Jack",
    				"Headphone Jack", "HP_OUT",
    				"Speaker Ext", "LINE_OUT";
    		simple-audio-card,format = "i2s";
    		simple-audio-card,mclk-fs = <256>;
    		simple-audio-card,bitclock-master = <&sound_master>;
    		simple-audio-card,frame-master = <&sound_master>;
    		simple-audio-card,bitclock-inversion;
    
    		simple-audio-card,cpu {
    			sound-dai = <&mcasp0>;
    		};
    
    		sound_master: simple-audio-card,codec {
    			sound-dai = <&sgtl5000>;
    			clocks = <&sgtl5000_mclk>;
    		};
    	};
    
    	leds {
    		compatible = "gpio-leds";
    
    		led-user {
    			label = "am62-sk:d54";
    			gpios = <&at9555 4 GPIO_ACTIVE_LOW>;
    			max-brightness = <255>;
    			linux,default-trigger = "heartbeat";
    			function = LED_FUNCTION_HEARTBEAT;
    			default-state = "off";
    		};
    
    		led-sys {
    			label = "am62-sk:d53";
    			pinctrl-names = "default";
    			pinctrl-1 = <&mcu_run_led_pins_default>;
    			gpios = <&mcu_gpio0 16 GPIO_ACTIVE_LOW>;
    			linux,default-trigger = "heartbeat";
    			function = LED_FUNCTION_HEARTBEAT;
    			default-state = "on";
    		};
    	};
    
    	gpio-keys {
    		compatible = "gpio-keys";
    		autorepeat;
    		pinctrl-names = "default";
    		pinctrl-0 = <&main_user_key_pins_default>;
    
    		user: user {
    			label = "GPIO Key USER1";
    			linux,code = <BTN_0>;
    			gpios = <&main_gpio0 36 GPIO_ACTIVE_LOW>;
    		};
    	};
    };
    
    &main_pmx0 {
    	/* First pad number is ALW package and second is AMC package */
    	main_uart0_pins_default: main-uart0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
    			AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14/E11) UART0_TXD */
    		>;
    	};
    
    	main_uart1_pins_default: main-uart1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0194, PIN_INPUT, 2) /* (B19) MCASP0_AXR3.UART1_CTSn */
    			AM62X_IOPAD(0x0198, PIN_OUTPUT, 2) /* (A19) MCASP0_AXR2.UART1_RTSn */
    			AM62X_IOPAD(0x01ac, PIN_INPUT, 2) /* (E19) MCASP0_AFSR.UART1_RXD */
    			AM62X_IOPAD(0x01b0, PIN_OUTPUT, 2) /* (A20) MCASP0_ACLKR.UART1_TXD */
    		>;
    	};
    
    	main_uart4_pins_default: main-uart4-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x00b0, PIN_INPUT, 3) /* (K22) GPMC0_CSn2.UART4_RXD */
    			AM62X_IOPAD(0x00b4, PIN_OUTPUT, 3) /* (K24) GPMC0_CSn3.UART4_TXD */
    		>;
    	};
    
    	main_uart4_rst_pins_default: main-uart4-rst-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0030, PIN_INPUT, 7) /* (G21) OSPI0_CSn1.GPIO0_12 */
    		>;
    	};
    
    	main_uart6_pins_default: main-uart6-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x009c, PIN_INPUT, 3) /* (V25) GPMC0_WAIT1.UART6_RXD */
    			AM62X_IOPAD(0x00a0, PIN_OUTPUT, 3) /* (K25) GPMC0_WPn.UART6_TXD */
    		>;
    	};
    
    	main_uart6_rst_pins_default: main-uart6-rst-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0258, PIN_INPUT, 7) /* (F18) USB1_DRVVBUS.GPIO1_51 */
    		>;
    	};
    
    	main_i2c0_pins_default: main-i2c0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x1e0, PIN_INPUT_PULLUP, 0) /* (B16/E12) I2C0_SCL */
    			AM62X_IOPAD(0x1e4, PIN_INPUT_PULLUP, 0) /* (A16/D14) I2C0_SDA */
    		>;
    	};
    
    	main_i2c1_pins_default: main-i2c1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17/A17) I2C1_SCL */
    			AM62X_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17/A16) I2C1_SDA */
    		>;
    	};
    
    	main_i2c3_pins_default: main-i2c3-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x1d0, PIN_INPUT_PULLUP, 2) /* (A15) UART0_CTSn.I2C3_SCL */
    			AM62X_IOPAD(0x1d4, PIN_INPUT_PULLUP, 2) /* (B15) UART0_RTSn.I2C3_SDA */
    		>;
    	};
    
    	main_mmc0_pins_default: main-mmc0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x220, PIN_INPUT, 0) /* (Y3/V3) MMC0_CMD */
    			AM62X_IOPAD(0x218, PIN_INPUT, 0) /* (AB1/Y1) MMC0_CLK */
    			AM62X_IOPAD(0x214, PIN_INPUT, 0) /* (AA2/V2) MMC0_DAT0 */
    			AM62X_IOPAD(0x210, PIN_INPUT, 0) /* (AA1/V1) MMC0_DAT1 */
    			AM62X_IOPAD(0x20c, PIN_INPUT, 0) /* (AA3/W2) MMC0_DAT2 */
    			AM62X_IOPAD(0x208, PIN_INPUT, 0) /* (Y4/W1) MMC0_DAT3 */
    			AM62X_IOPAD(0x204, PIN_INPUT, 0) /* (AB2/Y2) MMC0_DAT4 */
    			AM62X_IOPAD(0x200, PIN_INPUT, 0) /* (AC1/W3) MMC0_DAT5 */
    			AM62X_IOPAD(0x1fc, PIN_INPUT, 0) /* (AD2/W4) MMC0_DAT6 */
    			AM62X_IOPAD(0x1f8, PIN_INPUT, 0) /* (AC2/V4) MMC0_DAT7 */
    		>;
    	};
    
    	main_mmc1_pins_default: main-mmc1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x23c, PIN_INPUT, 0) /* (A21/C18) MMC1_CMD */
    			AM62X_IOPAD(0x234, PIN_INPUT, 0) /* (B22/A20) MMC1_CLK */
    			AM62X_IOPAD(0x230, PIN_INPUT, 0) /* (A22/A19) MMC1_DAT0 */
    			AM62X_IOPAD(0x22c, PIN_INPUT, 0) /* (B21/B19) MMC1_DAT1 */
    			AM62X_IOPAD(0x228, PIN_INPUT, 0) /* (C21/B20) MMC1_DAT2 */
    			AM62X_IOPAD(0x224, PIN_INPUT, 0) /* (D22/C19) MMC1_DAT3 */
    			AM62X_IOPAD(0x240, PIN_INPUT, 0) /* (D17/C15) MMC1_SDCD */
    		>;
    	};
    
    	main_mmc2_pins_default: main-mmc2-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x120, PIN_INPUT, 0) /* (C24) MMC2_CMD */
    			AM62X_IOPAD(0x118, PIN_INPUT, 0) /* (D25) MMC2_CLK */
    			AM62X_IOPAD(0x114, PIN_INPUT, 0) /* (B24) MMC2_DAT0 */
    			AM62X_IOPAD(0x110, PIN_INPUT, 0) /* (C25) MMC2_DAT1 */
    			AM62X_IOPAD(0x10c, PIN_INPUT, 0) /* (E23) MMC2_DAT2 */
    			AM62X_IOPAD(0x108, PIN_INPUT, 0) /* (D24) MMC2_DAT3 */
    			AM62X_IOPAD(0x11c, PIN_INPUT, 0) /* (#N/A) MMC2_CLKB */
    		>;
    	};
    
    	main_mdio1_pins_default: main-mdio1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x160, PIN_OUTPUT, 0) /* (AD24/V17) MDIO0_MDC */
    			AM62X_IOPAD(0x15c, PIN_INPUT, 0) /* (AB22/U16) MDIO0_MDIO */
    		>;
    	};
    
    	main_rgmii1_pins_default: main-rgmii1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x14c, PIN_INPUT, 0) /* (AB17/W15) RGMII1_RD0 */
    			AM62X_IOPAD(0x150, PIN_INPUT, 0) /* (AC17/Y16) RGMII1_RD1 */
    			AM62X_IOPAD(0x154, PIN_INPUT, 0) /* (AB16/AA17) RGMII1_RD2 */
    			AM62X_IOPAD(0x158, PIN_INPUT, 0) /* (AA15/Y15) RGMII1_RD3 */
    			AM62X_IOPAD(0x148, PIN_INPUT, 0) /* (AD17/AA16) RGMII1_RXC */
    			AM62X_IOPAD(0x144, PIN_INPUT, 0) /* (AE17/W14) RGMII1_RX_CTL */
    			AM62X_IOPAD(0x134, PIN_OUTPUT, 0) /* (AE20/U14) RGMII1_TD0 */
    			AM62X_IOPAD(0x138, PIN_OUTPUT, 0) /* (AD20/AA19) RGMII1_TD1 */
    			AM62X_IOPAD(0x13c, PIN_OUTPUT, 0) /* (AE18/Y17) RGMII1_TD2 */
    			AM62X_IOPAD(0x140, PIN_OUTPUT, 0) /* (AD18/AA18) RGMII1_TD3 */
    			AM62X_IOPAD(0x130, PIN_OUTPUT, 0) /* (AE19/W16) RGMII1_TXC */
    			AM62X_IOPAD(0x12c, PIN_OUTPUT, 0) /* (AD19/V15) RGMII1_TX_CTL */
    		>;
    	};
    
    	main_rgmii2_pins_default: main-rgmii2-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x184, PIN_INPUT, 0) /* (AE23) RGMII2_RD0 */
    			AM62X_IOPAD(0x188, PIN_INPUT, 0) /* (AB20) RGMII2_RD1 */
    			AM62X_IOPAD(0x18c, PIN_INPUT, 0) /* (AC21) RGMII2_RD2 */
    			AM62X_IOPAD(0x190, PIN_INPUT, 0) /* (AE22) RGMII2_RD3 */
    			AM62X_IOPAD(0x180, PIN_INPUT, 0) /* (AD23) RGMII2_RXC */
    			AM62X_IOPAD(0x17c, PIN_INPUT, 0) /* (AD22) RGMII2_RX_CTL */
    			AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /* (Y18) RGMII2_TD0 */
    			AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1 */
    			AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2 */
    			AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3 */
    			AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC */
    			AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */
    		>;
    	};
    
    	ospi0_pins_default: ospi0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x000, PIN_OUTPUT, 0) /* (H24) OSPI0_CLK */
    			AM62X_IOPAD(0x02c, PIN_OUTPUT, 0) /* (F23) OSPI0_CSn0 */
    			AM62X_IOPAD(0x00c, PIN_INPUT, 0) /* (E25) OSPI0_D0 */
    			AM62X_IOPAD(0x010, PIN_INPUT, 0) /* (G24) OSPI0_D1 */
    			AM62X_IOPAD(0x014, PIN_INPUT, 0) /* (F25) OSPI0_D2 */
    			AM62X_IOPAD(0x018, PIN_INPUT, 0) /* (F24) OSPI0_D3 */
    			AM62X_IOPAD(0x01c, PIN_INPUT, 0) /* (J23) OSPI0_D4 */
    			AM62X_IOPAD(0x020, PIN_INPUT, 0) /* (J25) OSPI0_D5 */
    			AM62X_IOPAD(0x024, PIN_INPUT, 0) /* (H25) OSPI0_D6 */
    			AM62X_IOPAD(0x028, PIN_INPUT, 0) /* (J22) OSPI0_D7 */
    			AM62X_IOPAD(0x008, PIN_INPUT, 0) /* (J24) OSPI0_DQS */
    			AM62X_IOPAD(0x038, PIN_INPUT, 2) /* (E24) OSPI0_CSn3.OSPI0_ECC_FAIL */
    		>;
    	};
    
    	main_dss0_pins_default: main-dss0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0100, PIN_OUTPUT, 0) /* (AC25) VOUT0_VSYNC */
    			AM62X_IOPAD(0x00f8, PIN_OUTPUT, 0) /* (AB24) VOUT0_HSYNC */
    			AM62X_IOPAD(0x0104, PIN_OUTPUT, 0) /* (AC24) VOUT0_PCLK */
    			AM62X_IOPAD(0x00fc, PIN_OUTPUT, 0) /* (Y20) VOUT0_DE */
    			AM62X_IOPAD(0x00b8, PIN_OUTPUT, 0) /* (U22) VOUT0_DATA0 */
    			AM62X_IOPAD(0x00bc, PIN_OUTPUT, 0) /* (V24) VOUT0_DATA1 */
    			AM62X_IOPAD(0x00c0, PIN_OUTPUT, 0) /* (W25) VOUT0_DATA2 */
    			AM62X_IOPAD(0x00c4, PIN_OUTPUT, 0) /* (W24) VOUT0_DATA3 */
    			AM62X_IOPAD(0x00c8, PIN_OUTPUT, 0) /* (Y25) VOUT0_DATA4 */
    			AM62X_IOPAD(0x00cc, PIN_OUTPUT, 0) /* (Y24) VOUT0_DATA5 */
    			AM62X_IOPAD(0x00d0, PIN_OUTPUT, 0) /* (Y23) VOUT0_DATA6 */
    			AM62X_IOPAD(0x00d4, PIN_OUTPUT, 0) /* (AA25) VOUT0_DATA7 */
    			AM62X_IOPAD(0x00d8, PIN_OUTPUT, 0) /* (V21) VOUT0_DATA8 */
    			AM62X_IOPAD(0x00dc, PIN_OUTPUT, 0) /* (W21) VOUT0_DATA9 */
    			AM62X_IOPAD(0x00e0, PIN_OUTPUT, 0) /* (V20) VOUT0_DATA10 */
    			AM62X_IOPAD(0x00e4, PIN_OUTPUT, 0) /* (AA23) VOUT0_DATA11 */
    			AM62X_IOPAD(0x00e8, PIN_OUTPUT, 0) /* (AB25) VOUT0_DATA12 */
    			AM62X_IOPAD(0x00ec, PIN_OUTPUT, 0) /* (AA24) VOUT0_DATA13 */
    			AM62X_IOPAD(0x00f0, PIN_OUTPUT, 0) /* (Y22) VOUT0_DATA14 */
    			AM62X_IOPAD(0x00f4, PIN_OUTPUT, 0) /* (AA21) VOUT0_DATA15 */
    			AM62X_IOPAD(0x005c, PIN_OUTPUT, 1) /* (R24) GPMC0_AD8.VOUT0_DATA16 */
    			AM62X_IOPAD(0x0060, PIN_OUTPUT, 1) /* (R25) GPMC0_AD9.VOUT0_DATA17 */
    			AM62X_IOPAD(0x0064, PIN_OUTPUT, 1) /* (T25) GPMC0_AD10.VOUT0_DATA18 */
    			AM62X_IOPAD(0x0068, PIN_OUTPUT, 1) /* (R21) GPMC0_AD11.VOUT0_DATA19 */
    			AM62X_IOPAD(0x006c, PIN_OUTPUT, 1) /* (T22) GPMC0_AD12.VOUT0_DATA20 */
    			AM62X_IOPAD(0x0070, PIN_OUTPUT, 1) /* (T24) GPMC0_AD13.VOUT0_DATA21 */
    			AM62X_IOPAD(0x0074, PIN_OUTPUT, 1) /* (U25) GPMC0_AD14.VOUT0_DATA22 */
    			AM62X_IOPAD(0x0078, PIN_OUTPUT, 1) /* (U24) GPMC0_AD15.VOUT0_DATA23 */
    		>;
    	};
    
    
    
    	main_mcasp1_pins_default: main-mcasp1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0090, PIN_INPUT, 2) /* (M24) GPMC0_BE0N_CLE.MCASP1_ACLKX */
    			AM62X_IOPAD(0x0098, PIN_INPUT, 2) /* (U23) GPMC0_WAIT0.MCASP1_AFSX */
    			AM62X_IOPAD(0x008c, PIN_OUTPUT, 2) /* (L25) GPMC0_WEN.MCASP1_AXR0 */
    			AM62X_IOPAD(0x0084, PIN_INPUT, 2) /* (L23) GPMC0_ADVN_ALE.MCASP1_AXR2 */
    		>;
    	};
    
    	main_mcasp0_pins_default: main-mcasp0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x01a4, PIN_INPUT, 0) /* (B20) MCASP0_ACLKX.MCASP0_ACLKX */
    			AM62X_IOPAD(0x01a8, PIN_INPUT, 0) /* (D20) MCASP0_AFSX.MCASP0_AFSX */
    			AM62X_IOPAD(0x01a0, PIN_OUTPUT, 0) /* (E18) MCASP0_AXR0.MCASP0_AXR0 */
    			AM62X_IOPAD(0x019c, PIN_INPUT, 0) /* (B18) MCASP0_AXR1.MCASP0_AXR1 */	
    		>;
    	};
    
    	main_ptn5150_vbus_pins_default: main-ptn5150-vbus-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x254, PIN_OUTPUT, 7) /* (C20) USB0_DRVVBUS.GPIO1_50 */
    			AM62X_IOPAD(0x124, PIN_INPUT, 7) /* (A23) MMC2_SDCD.GPIO0_71 */
    
    		>;
    	};
    	main_user_key_pins_default: main-user-key-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0094, PIN_INPUT, 7) /* (N20) GPMC0_BE1n.GPIO0_36 */
    		>;
    	};
    
    	main_mcan0_pins_default: main_mcan0_pins_default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x01d8, PIN_OUTPUT, 0) /* (C15) SoC_UART1_DTRn.MCAN0_TX */
    			AM62X_IOPAD(0x01dc, PIN_INPUT, 0) /* (E15) SoC_UART1_RIn.MCAN0_RX */
    		>;		
    	};
    };
    
    &mcu_pmx0 {
    
    	mcu_i2c0_pins_default: mcu-i2c0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_MCU_IOPAD(0x0044, PIN_INPUT, 0) /* (A8) MCU_I2C0_SCL */
    			AM62X_MCU_IOPAD(0x0048, PIN_INPUT, 0) /* (D10) MCU_I2C0_SDA */
    		>;
    	};
    
    	mcu_wlan_reg_on_pins_default: mcu-wl-reg-on-pins-default {
    		pinctrl-single,pins = <
    			AM62X_MCU_IOPAD(0x003c, PIN_OUTPUT_PULLUP, 7) /* (E5) MCU_MCAN1_TX.MCU_GPIO0_15 */
    		>;
    	};
    
    	mcu_lvds_power_pins_default: mcu-lvds-power-pins-default {
    		pinctrl-single,pins = <
    			AM62X_MCU_IOPAD(0x0010, PIN_OUTPUT_PULLUP, 7) /* (C9) MCU_SPI0_D1.MCU_GPIO0_4 */
    		>;
    	};
    	csi_io_power_pins_default:csi-io-power-pins-default {
    		pinctrl-single,pins = <
    			AM62X_MCU_IOPAD(0x000c, PIN_OUTPUT, 7) /* (D9) MCU_SPI0_D0.MCU_GPIO0_3   VDD */
    		>;
    	};
    	
    	mcu_run_led_pins_default: mymcugpio1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_MCU_IOPAD(0x0040, PIN_INPUT, 7) /* (D4) MCU_MCAN1_RX.MCU_GPIO0_16 */
    		>;
    	};
    	mcu_ov5640_gpio_pins_default: mcu-ov5640-gpio-pins-default {
    		pinctrl-single,pins = <
    			AM62X_MCU_IOPAD(0x0000, PIN_OUTPUT, 7) /* (E8) MCU_SPI0_CS0.MCU_GPIO0_0  RST */
    			AM62X_MCU_IOPAD(0x0008, PIN_OUTPUT, 7) /* (A7) MCU_SPI0_CLK.MCU_GPIO0_2  PWR */
    		>;
    	};
    };
    
    &mcu_gpio0 {
    	pinctrl-names ="default";
    	pinctrl-0=<
    				&mcu_wlan_reg_on_pins_default 				
    				&mcu_lvds_power_pins_default
    				&mcu_run_led_pins_default>;
    	status = "okay";
    };
    
    &main_gpio0 {
    	pinctrl-names ="default";
    
    	status = "okay";
    };
    
    &wkup_uart0 {
    	/* WKUP UART0 is used by DM firmware */
    	status = "reserved";
    };
    
    &main_uart0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart0_pins_default>;
    	status = "okay";
    	interrupts-extended = <&gic500 GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>,
    		       	<&main_pmx0 0x1c8>; /* (D14) UART0_RXD PADCONFIG114 */
    	interrupt-names = "irq", "wakeup";
    };
    
    &main_uart1 {
    	/* Main UART1 is used by TIFS firmware */
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart1_pins_default>;
    	status = "okay";
    };
    
    &main_uart4 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart4_pins_default &main_uart4_rst_pins_default>;
      rts-gpios = <&main_gpio0 12 GPIO_ACTIVE_HIGH>;
    	rs485-rx-during-tx;
    	rs485-rts-delay = <1 1>;
    	linux,rs485-enabled-at-boot-time;
    	status = "okay";
    
    };
    
    &main_uart6 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart6_pins_default &main_uart6_rst_pins_default>;
    	rts-gpios = <&main_gpio1 51 GPIO_ACTIVE_HIGH>;
    	rs485-rx-during-tx;
    	rs485-rts-delay = <1 1>;
    	linux,rs485-enabled-at-boot-time;
    	status = "okay";
    };
    
    &mcu_i2c0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&mcu_i2c0_pins_default>;
    	clock-frequency = <400000>;
    	status = "okay";
    
    	eeprom: 24c32@50 {
    		compatible = "atmel,24c32";
    		reg = <0x50>;
    		pagesize = <32>;
    	};
    };
    
    &main_i2c0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c0_pins_default>;
    	clock-frequency = <100000>;
    	status = "okay";
    	
    		sii9022: sii9022@3b {
    		#sound-dai-cells = <0>;
    		compatible = "sil,sii9022";
    		reg = <0x3b>;
    		status = "okay";
    		iovcc-supply = <&vcc_3v3_sys>;
    		cvcc12-supply = <&vcc_1v8>;
    	
    		reset-gpios = <&at9555 1 GPIO_ACTIVE_LOW>;
    
      
    
    		sil,i2s-data-lanes = < 0 >;
    
    		ports {
    			#address-cells = <1>;
    			#size-cells = <0>;
    
    			port@0 {
    				reg = <0>;
    
    				sii9022_in: endpoint {
    					remote-endpoint = <&dpi1_out>;
    				};
    			};
    
    			port@1 {
    				reg = <1>;
    
    				sii9022_out: endpoint {
    					remote-endpoint = <&hdmi_connector_in>;
    				};
    			};
    		};
    	};
    
    	sgtl5000: audio-codec@a {
    		compatible = "fsl,sgtl5000";
    		status = "okay";
    		reg = <0xa>;
    		#sound-dai-cells = <0>;
    		clocks = <&sgtl5000_mclk>;
    		// micbias-resistor-k-ohms = <2>;
    		// micbias-voltage-m-volts = <2250>;
    		VDDA-supply = <&vcc_3v3_sys>;
    		VDDIO-supply = <&vcc_3v3_sys>;
    		VDDD-supply = <&vcc_1v8>;
    	};
    
    	ov5640: camera@3c {
    		compatible = "ovti,ov5640";
    		reg = <0x3c>;
    		status = "okay";
    		clocks = <&clk_ov5640_fixed>;
    		clock-names = "xclk";
    		pinctrl-names ="default";
    		pinctrl-0=<&mcu_ov5640_gpio_pins_default>;
    		reset-gpios = <&mcu_gpio0 0 GPIO_ACTIVE_LOW>;
    		powerdown-gpios = <&mcu_gpio0 2 GPIO_ACTIVE_HIGH>;
    
    
    		port {
    			csi2_cam0: endpoint {
    				remote-endpoint = <&csi2rx0_in_sensor>;
    				clock-lanes = <0>;
    				data-lanes = <1 2>;
    			};
    		};
    	};
    
    };
    
    &main_i2c1 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c1_pins_default>;
    	clock-frequency = <400000>;
    	status = "okay";
    	at9555: at9555@20 {
    		compatible = "analogtek,at9555";
    		reg = <0x20>;
    		#gpio-cells = <2>;
    		gpio_base = <530>;
    		interrupt-controller;
    		#interrupt-cells = <2>;
    		status = "okay";
    	};
    };
    
    &main_i2c2 {
    	status = "disabled";
    };
    
    &main_i2c3 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c3_pins_default>;
    	clock-frequency = <400000>;
    	status = "okay";
    	rtc: rtc@32 {
    		compatible = "ti,am62-rtc";
    		reg = <0x32>;
    		status = "okay";
        };
    
    	ptn5150: ptn5150@3d {
    		compatible = "nxp,ptn5150";
    		reg = <0x3d>;
    		pinctrl-names = "default";
    		pinctrl-0 = <&main_ptn5150_vbus_pins_default>;
    		vbus-gpios = <&main_gpio1 50 GPIO_ACTIVE_HIGH>;
    		int-gpios = <&main_gpio0 71 IRQ_TYPE_EDGE_FALLING>;
    		status = "okay";
    
    		connector {
    			compatible = "usb-c-connector";
    			label = "USB-C";
    			port {
    				con_usbotg_hs_ep: endpoint {
    					remote-endpoint = <&usbotg_hs_ep>;
    				};
    			};
    		};
    	};
    };
    
    &sdhci0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc0_pins_default>;
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    	status = "okay";
    };
    
    &sdhci1 {
    	/* SD/MMC */
    	vmmc-supply = <&vdd_mmc1>;
    	vqmmc-supply = <&vdd_sd_dv>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc1_pins_default>;
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    	status = "okay";
    };
    
    &sdhci2 {
    	vmmc-supply = <&wlan_reg_on>;
    	vqmmc-supply = <&vdd_wl_dv>;
    	no-1-8-v;
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc2_pins_default>;
    	bus-width = <4>;
    	non-removable;
    	ti,fails-without-test-cd;
    	cap-power-off-card;
    	keep-power-in-suspend;
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    	assigned-clocks = <&k3_clks 157 158>;
    	assigned-clock-parents = <&k3_clks 157 160>;
    	status = "okay";
    };
    
    
    &usbss0 {
            status = "okay";
            ti,vbus-divider;
    };
    &usbss1 {
    	status = "okay";
    	ti,vbus-divider;
    };
    
    &usb0 {
    	#address-cells = <1>;
    	#size-cells = <0>;
    	usb-role-switch;
    	dr_mode = "otg";
    	role-switch-default-mode = "host";
    	status = "okay";
    	
    	port@0 {
    		reg = <0>;
    		usbotg_hs_ep: endpoint {
    			remote-endpoint = <&con_usbotg_hs_ep>;
    		};
    	};
    };
    
    &usb1 {
    	dr_mode = "host";
    	status = "okay";
    };
    &cpsw3g {
    	pinctrl-names = "default";
    	pinctrl-0 = <
    				 &main_rgmii1_pins_default
    		     &main_rgmii2_pins_default>;
    	status = "okay";
    };
    
    &cpsw_port1 {
    	phy-mode = "rgmii-rxid";
    	phy-handle = <&cpsw3g_phy0>;
    	status = "okay";
    };
    
    &cpsw_port2 {
    	phy-mode = "rgmii-rxid";
    	phy-handle = <&cpsw3g_phy1>;
    	status = "okay";
    };
    
    &cpsw3g_mdio {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mdio1_pins_default>;
    	cpsw3g_phy0: ethernet-phy@0 {
    		reg = <5>;
    		reset-gpios = <&at9555 5 GPIO_ACTIVE_LOW>;
    		reset-assert-us = <10000>;
    		reset-deassert-us = <20000>;
    	};
    	
    	cpsw3g_phy1: ethernet-phy@1 {
    		reg = <1>;
    		reset-gpios = <&at9555 6 GPIO_ACTIVE_LOW>;
    		reset-assert-us = <10000>;
    		reset-deassert-us = <20000>;
    	};
    };
    
    &csi0_port0 {
    	status = "okay";
    
    	csi2rx0_in_sensor: endpoint {
    		remote-endpoint = <&csi2_cam0>;
    		// bus-type = <4>; /* CSI2 DPHY. */
    		clock-lanes = <0>;
    		data-lanes = <1 2>;
    	};
    };
    
    &ti_csi2rx0 {
    	status = "okay";
    };
    
    &dphy0 {
    	status = "okay";
    };
    
    &dss {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_dss0_pins_default>;
    	status = "okay";
    };
    
    &dss_ports {
    	status = "okay";
    	/* VP2: DPI Output */
    	port@1 {
    		reg = <1>;
    
    		dpi1_out: endpoint {
    			remote-endpoint = <&sii9022_in>;
    		};
    	};
    };
    
    &mcasp0 {
    	status = "okay";
    	#sound-dai-cells = <0>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mcasp0_pins_default>;
    	
    	op-mode = <0>;          /* MCASP_IIS_MODE */
    	tdm-slots = <2>;
    	/* 16 serializers */
    	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
    	       1 2 0 0
    	       0 0 0 0
    	       0 0 0 0
    	       0 0 0 0
    	>;
    	tx-num-evt = <32>;
    	rx-num-evt = <32>;
    };
    
    
    &mcasp2 {
    	status = "disabled";
    };
    
    &mailbox0_cluster0 {
    	mbox_m4_0: mbox-m4-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    
    	mbox_r5_0: mbox-r5-0 {
    		ti,mbox-rx = <2 0 0>;
    		ti,mbox-tx = <3 0 0>;
    	};
    };
    
    &ospi0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&ospi0_pins_default>;
    	status = "okay";
    	flash@0 {
    		compatible = "jedec,spi-nor";
    		reg = <0x0>;
    		spi-tx-bus-width = <8>;
    		spi-rx-bus-width = <8>;
    		spi-max-frequency = <25000000>;
    		cdns,tshsl-ns = <60>;
    		cdns,tsd2d-ns = <60>;
    		cdns,tchsh-ns = <60>;
    		cdns,tslch-ns = <60>;
    		cdns,read-delay = <4>;
    		cdns,phy-mode;
    
    		partitions {
    			compatible = "fixed-partitions";
    			#address-cells = <1>;
    			#size-cells = <1>;
    
    			partition@0 {
    				label = "ospi.tiboot3";
    				reg = <0x0 0x80000>;
    			};
    
    			partition@80000 {
    				label = "ospi.tispl";
    				reg = <0x80000 0x200000>;
    			};
    
    			partition@280000 {
    				label = "ospi.u-boot";
    				reg = <0x280000 0x400000>;
    			};
    
    			partition@680000 {
    				label = "ospi.env";
    				reg = <0x680000 0x40000>;
    			};
    
    			partition@6c0000 {
    				label = "ospi.env.backup";
    				reg = <0x6c0000 0x40000>;
    			};
    
    			partition@800000 {
    				label = "ospi.rootfs";
    				reg = <0x800000 0x17c0000>;
    			};
    
    			partition@3fc0000 {
    				label = "ospi.phypattern";
    				reg = <0x1fc0000 0x40000>;
    			};
    		};
    	};
    };
    
    &mcu_m4fss {
    	mboxes = <&mailbox0_cluster0 &mbox_m4_0>;
    	memory-region = <&mcu_m4fss_dma_memory_region>,
    			<&mcu_m4fss_memory_region>;
    };
    
    &wkup_r5fss0_core0 {
    	mboxes = <&mailbox0_cluster0 &mbox_r5_0>;
    	memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
    			<&wkup_r5fss0_core0_memory_region>;
    };
    
    &main_mcan0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mcan0_pins_default>;
    	status = "okay";
    };
    
    
    
    
    
    
    
    
    
    
    

  • Ok, I managed to resolve the problem. MyIR uses AT9555 GPIO expander for multiple reset signals, and as that driver is not in Kernel, they wrote a driver them selves. I patched it to kernel and after that HDMI is found and also the kmstest works. 

    This all runs under buildroot, means I managed to build the ti-rogue driver with buildroot (as was discussed here). I still wait for the official TI buildroot release.