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.

SN65DSI85: Cannot create display pipeline in IMX8MQ platform

Part Number: SN65DSI85

Tool/software:

Platform: NXP IMX8MQ
OS: Yocto 5.0
Kernel: 6.6.23

System cannot create display pipeline and there's no failure in kernel log

Under /sys/class/drm, there is no node like card0-MIPI-DSI-1 

Please help check the endpoint settings in dts

Kernel log: 

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.6.23-g2d21fbf7907f-dirty (sean@9bd746f59c96) (aarch64-poky-linux-gcc (GCC) 13.2.0, GNU ld (GNU Binutils) 2.42.0.20240216) #2 SMP PREEMPT Mon Mar 24 07:43:45 UTC 2025
[    0.000000] KASLR disabled due to lack of seed
[    0.000000] Machine model: DFI M8MT51 SN65DSI85
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x0000000080000000, size 896 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] OF: reserved mem: 0x0000000080000000..0x00000000b7ffffff (917504 KiB) map reusable linux,cma
[    0.000000] NUMA: No NUMA configuration found
[    0.000000] NUMA: Faking a node at [mem 0x0000000040000000-0x000000013fffffff]
[    0.000000] NUMA: NODE_DATA [mem 0x13f7c06c0-0x13f7c2fff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000040000000-0x00000000ffffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   [mem 0x0000000100000000-0x000000013fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x000000013fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000013fffffff]
[    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: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.4
[    0.000000] percpu: Embedded 22 pages/cpu s50536 r8192 d31384 u90112
[    0.000000] pcpu-alloc: s50536 r8192 d31384 u90112 alloc=22*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    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] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p2 rootwait rw ethaddr_usb=00:00:00:00:00:00
[    0.000000] Unknown kernel command line parameters "ethaddr_usb=00:00:00:00:00:00", will be passed to user space.
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] Fallback order for Node 0: 0 
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1032192
[    0.000000] Policy zone: Normal
[    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[    0.000000] software IO TLB: area num 4.
[    0.000000] software IO TLB: mapped [mem 0x00000000fbfff000-0x00000000fffff000] (64MB)
[    0.000000] Memory: 3092980K/4194304K available (21440K kernel code, 1680K rwdata, 8924K rodata, 4096K init, 643K bss, 183820K reserved, 917504K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, 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=4.
[    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=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
[    0.000000] GICv3: 128 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:0x0000000038880000
[    0.000000] ITS: No ITS available, not enabling LPIs
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 8.33MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x1ec0311ec, max_idle_ns: 440795202152 ns
[    0.000000] sched_clock: 56 bits at 8MHz, resolution 120ns, wraps every 2199023255541ns
[    0.000566] Console: colour dummy device 80x25
[    0.000661] Calibrating delay loop (skipped), value calculated using timer frequency.. 16.66 BogoMIPS (lpj=33333)
[    0.000676] pid_max: default: 32768 minimum: 301
[    0.000770] LSM: initializing lsm=capability,integrity
[    0.000898] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.000923] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.003012] RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[    0.003101] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[    0.003352] rcu: Hierarchical SRCU implementation.
[    0.003357] rcu: 	Max phase no-delay instances is 1000.
[    0.004766] EFI services will not be available.
[    0.005035] smp: Bringing up secondary CPUs ...
[    0.005627] Detected VIPT I-cache on CPU1
[    0.005697] GICv3: CPU1: found redistributor 1 region 0:0x00000000388a0000
[    0.005738] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.006414] Detected VIPT I-cache on CPU2
[    0.006476] GICv3: CPU2: found redistributor 2 region 0:0x00000000388c0000
[    0.006503] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.007121] Detected VIPT I-cache on CPU3
[    0.007180] GICv3: CPU3: found redistributor 3 region 0:0x00000000388e0000
[    0.007209] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.007295] smp: Brought up 1 node, 4 CPUs
[    0.007304] SMP: Total of 4 processors activated.
[    0.007310] CPU features: detected: 32-bit EL0 Support
[    0.007313] CPU features: detected: 32-bit EL1 Support
[    0.007320] CPU features: detected: CRC32 instructions
[    0.007413] CPU: All CPU(s) started at EL2
[    0.007442] alternatives: applying system-wide alternatives
[    0.010461] devtmpfs: initialized
[    0.020044] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.020064] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.054109] pinctrl core: initialized pinctrl subsystem
[    0.056513] DMI not present or invalid.
[    0.057294] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.058424] DMA: preallocated 512 KiB GFP_KERNEL pool for atomic allocations
[    0.058593] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.058837] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.058885] audit: initializing netlink subsys (disabled)
[    0.059054] audit: type=2000 audit(0.056:1): state=initialized audit_enabled=0 res=1
[    0.059739] thermal_sys: Registered thermal governor 'step_wise'
[    0.059745] thermal_sys: Registered thermal governor 'power_allocator'
[    0.059789] cpuidle: using governor menu
[    0.060051] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.060151] ASID allocator initialised with 65536 entries
[    0.061339] Serial: AMBA PL011 UART driver
[    0.061437] imx mu driver is registered.
[    0.061465] imx rpmsg driver is registered.
[    0.069810] platform soc@0: Fixed dependency cycle(s) with /soc@0/bus@30000000/efuse@30350000/soc-uid@4
[    0.072945] platform 30330000.pinctrl: Fixed dependency cycle(s) with /soc@0/bus@30000000/pinctrl@30330000/hoggrp
[    0.073531] imx8mq-pinctrl 30330000.pinctrl: initialized IMX pinctrl driver
[    0.074636] platform 30350000.efuse: Fixed dependency cycle(s) with /soc@0/bus@30000000/clock-controller@30380000
[    0.076166] platform 30350000.efuse: Fixed dependency cycle(s) with /soc@0/bus@30000000/clock-controller@30380000
[    0.077056] platform 30380000.clock-controller: Fixed dependency cycle(s) with /soc@0/bus@30000000/gpc@303a0000
[    0.077577] platform 30380000.clock-controller: Fixed dependency cycle(s) with /soc@0/bus@30000000/gpc@303a0000
[    0.078656] platform 303a0000.gpc: Fixed dependency cycle(s) with /soc@0/interrupt-controller@38800000
[    0.083841] platform 30a00000.dsi: Fixed dependency cycle(s) with /soc@0/bus@30800000/dsi@30a00000/panel@0
[    0.083880] platform 30a00000.dsi: Fixed dependency cycle(s) with /soc@0/bus@32c00000/display-controller@32e00000
[    0.086286] platform 30a70000.mipi_csi1: Fixed dependency cycle(s) with /soc@0/bus@30800000/csi1_bridge@30a90000
[    0.086629] platform 30a70000.mipi_csi1: Fixed dependency cycle(s) with /soc@0/bus@30800000/csi1_bridge@30a90000
[    0.086726] platform 30a90000.csi1_bridge: Fixed dependency cycle(s) with /soc@0/bus@30800000/mipi_csi1@30a70000
[    0.088317] platform 30b60000.mipi_csi2: Fixed dependency cycle(s) with /soc@0/bus@30800000/csi2_bridge@30b80000
[    0.088676] platform 30b60000.mipi_csi2: Fixed dependency cycle(s) with /soc@0/bus@30800000/csi2_bridge@30b80000
[    0.088774] platform 30b80000.csi2_bridge: Fixed dependency cycle(s) with /soc@0/bus@30800000/mipi_csi2@30b60000
[    0.090720] platform 30a00000.dsi: Fixed dependency cycle(s) with /soc@0/bus@32c00000/display-controller@32e00000
[    0.090824] platform 32e00000.display-controller: Fixed dependency cycle(s) with /soc@0/bus@30800000/dsi@30a00000
[    0.098201] Modules: 23520 pages in range for non-PLT usage
[    0.098207] Modules: 515040 pages in range for PLT usage
[    0.099133] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[    0.099139] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[    0.099146] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[    0.099150] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[    0.099157] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[    0.099163] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[    0.099170] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[    0.099175] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[    0.101642] ACPI: Interpreter disabled.
[    0.102827] debugfs: Directory 'fixed-3.3V' with parent 'regulator' already present!
[    0.103047] iommu: Default domain type: Translated
[    0.103053] iommu: DMA domain TLB invalidation policy: strict mode
[    0.103446] SCSI subsystem initialized
[    0.103603] libata version 3.00 loaded.
[    0.103872] usbcore: registered new interface driver usbfs
[    0.103909] usbcore: registered new interface driver hub
[    0.103948] usbcore: registered new device driver usb
[    0.105191] mc: Linux media interface: v0.10
[    0.105247] videodev: Linux video capture interface: v2.00
[    0.105335] pps_core: LinuxPPS API ver. 1 registered
[    0.105340] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.105383] PTP clock support registered
[    0.105604] EDAC MC: Ver: 3.0.0
[    0.106128] scmi_core: SCMI protocol bus registered
[    0.106655] FPGA manager framework
[    0.106761] Advanced Linux Sound Architecture Driver Initialized.
[    0.107905] Bluetooth: Core ver 2.22
[    0.107938] NET: Registered PF_BLUETOOTH protocol family
[    0.107943] Bluetooth: HCI device and connection manager initialized
[    0.107954] Bluetooth: HCI socket layer initialized
[    0.107962] Bluetooth: L2CAP socket layer initialized
[    0.107978] Bluetooth: SCO socket layer initialized
[    0.108403] vgaarb: loaded
[    0.109027] clocksource: Switched to clocksource arch_sys_counter
[    0.109293] VFS: Disk quotas dquot_6.6.0
[    0.109332] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.109619] pnp: PnP ACPI: disabled
[    0.119144] NET: Registered PF_INET protocol family
[    0.119389] IP idents hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.123456] tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear)
[    0.123559] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.123578] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.123893] TCP bind hash table entries: 32768 (order: 8, 1048576 bytes, linear)
[    0.125067] TCP: Hash tables configured (established 32768 bind 32768)
[    0.125179] UDP hash table entries: 2048 (order: 4, 65536 bytes, linear)
[    0.125293] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear)
[    0.125523] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.125998] RPC: Registered named UNIX socket transport module.
[    0.126004] RPC: Registered udp transport module.
[    0.126009] RPC: Registered tcp transport module.
[    0.126012] RPC: Registered tcp-with-tls transport module.
[    0.126016] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.127495] PCI: CLS 0 bytes, default 64
[    0.127990] kvm [1]: IPA Size Limit: 40 bits
[    0.130834] kvm [1]: vgic-v2@31020000
[    0.130858] kvm [1]: GIC system register CPU interface enabled
[    0.130889] kvm [1]: vgic interrupt IRQ9
[    0.130920] kvm [1]: Hyp mode initialized successfully
[    0.132439] Initialise system trusted keyrings
[    0.132637] workingset: timestamp_bits=42 max_order=20 bucket_order=0
[    0.133044] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.133325] NFS: Registering the id_resolver key type
[    0.133352] Key type id_resolver registered
[    0.133357] Key type id_legacy registered
[    0.133384] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.133391] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    0.133415] jffs2: version 2.2. (NAND) \xc2\xa9 2001-2006 Red Hat, Inc.
[    0.133641] 9p: Installing v9fs 9p2000 file system support
[    0.182327] Key type asymmetric registered
[    0.182336] Asymmetric key parser 'x509' registered
[    0.182397] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
[    0.182405] io scheduler mq-deadline registered
[    0.182411] io scheduler kyber registered
[    0.182448] io scheduler bfq registered
[    0.191000] EINJ: ACPI disabled.
[    0.201217] SoC: i.MX8MQ revision 2.1
[    0.201375] Config NOC for VPU and CPU
[    0.201524] Bus freq driver module loaded
[    0.214578] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.218156] 30860000.serial: ttymxc0 at MMIO 0x30860000 (irq = 15, base_baud = 1562500) is a IMX
[    0.218190] printk: console [ttymxc0] enabled
[    1.485721] 30880000.serial: ttymxc2 at MMIO 0x30880000 (irq = 16, base_baud = 5000000) is a IMX
[    1.495482] 30890000.serial: ttymxc1 at MMIO 0x30890000 (irq = 17, base_baud = 1562500) is a IMX
[    1.505267] 30a60000.serial: ttymxc3 at MMIO 0x30a60000 (irq = 18, base_baud = 1562500) is a IMX
[    1.524744] Sean sn65dsi83_init!!!!!!!!!!!!!!!!!!!!!!!!!!!1
[    1.530385] Sean i2c_add_driver:0 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
[    1.544670] loop: module loaded
[    1.549655] megasas: 07.725.01.00-rc1
[    1.562145] tun: Universal TUN/TAP device driver, 1.6
[    1.567451] CAN device driver interface
[    1.572153] thunder_xcv, ver 1.0
[    1.575429] thunder_bgx, ver 1.0
[    1.578707] nicpf, ver 1.0
[    1.584237] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
[    1.591475] hns3: Copyright (c) 2017 Huawei Corporation.
[    1.596840] hclge is initializing
[    1.600192] e1000: Intel(R) PRO/1000 Network Driver
[    1.605083] e1000: Copyright (c) 1999-2006 Intel Corporation.
[    1.610872] e1000e: Intel(R) PRO/1000 Network Driver
[    1.615847] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    1.621810] igb: Intel(R) Gigabit Ethernet Network Driver
[    1.627221] igb: Copyright (c) 2007-2014 Intel Corporation.
[    1.632835] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[    1.639114] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    1.645245] sky2: driver version 1.30
[    1.649586] PPP generic driver version 2.4.2
[    1.654034] PPP BSD Compression module registered
[    1.658764] PPP Deflate Compression module registered
[    1.663853] PPP MPPE Compression module registered
[    1.668665] NET: Registered PF_PPPOX protocol family
[    1.673729] usbcore: registered new device driver r8152-cfgselector
[    1.680044] usbcore: registered new interface driver r8152
[    1.685579] usbcore: registered new interface driver cdc_ether
[    1.691458] usbcore: registered new interface driver rndis_host
[    1.697436] usbcore: registered new interface driver cdc_ncm
[    1.703141] usbcore: registered new interface driver qmi_wwan
[    1.708932] usbcore: registered new interface driver cdc_mbim
[    1.714727] usbcore: registered new interface driver r8153_ecm
[    1.721007] VFIO - User Level meta-driver version: 0.3
[    1.729474] usbcore: registered new interface driver cdc_acm
[    1.735153] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    1.743200] usbcore: registered new interface driver cdc_wdm
[    1.749054] usbcore: registered new interface driver uas
[    1.754417] usbcore: registered new interface driver usb-storage
[    1.760518] usbcore: registered new interface driver usbserial_generic
[    1.767087] usbserial: USB Serial support registered for generic
[    1.773140] usbcore: registered new interface driver cp210x
[    1.778752] usbserial: USB Serial support registered for cp210x
[    1.784716] usbcore: registered new interface driver ftdi_sio
[    1.790510] usbserial: USB Serial support registered for FTDI USB Serial Device
[    1.797861] usbcore: registered new interface driver option
[    1.803472] usbserial: USB Serial support registered for GSM modem (1-port)
[    1.810476] usbcore: registered new interface driver pl2303
[    1.816088] usbserial: USB Serial support registered for pl2303
[    1.822055] usbcore: registered new interface driver usb_serial_simple
[    1.828628] usbserial: USB Serial support registered for carelink
[    1.834759] usbserial: USB Serial support registered for flashloader
[    1.841151] usbserial: USB Serial support registered for funsoft
[    1.847199] usbserial: USB Serial support registered for google
[    1.853158] usbserial: USB Serial support registered for hp4x
[    1.858943] usbserial: USB Serial support registered for kaufmann
[    1.865075] usbserial: USB Serial support registered for libtransistor
[    1.871642] usbserial: USB Serial support registered for moto_modem
[    1.877948] usbserial: USB Serial support registered for motorola_tetra
[    1.884600] usbserial: USB Serial support registered for nokia
[    1.890477] usbserial: USB Serial support registered for novatel_gps
[    1.896872] usbserial: USB Serial support registered for siemens_mpi
[    1.903265] usbserial: USB Serial support registered for suunto
[    1.909223] usbserial: USB Serial support registered for vivopay
[    1.915276] usbserial: USB Serial support registered for zio
[    1.920987] usbcore: registered new interface driver usb_ehset_test
[    1.929863] emuc: EMUC-B202 SocketCAN interface driver
[    1.935016] emuc: 10 dynamic interface channels.
[    1.940713] input: 30370000.snvs:snvs-powerkey as /devices/platform/soc@0/30000000.bus/30370000.snvs/30370000.snvs:snvs-powerkey/input/input0
[    1.955773] snvs_rtc 30370000.snvs:snvs-rtc-lp: registered as rtc0
[    1.961993] snvs_rtc 30370000.snvs:snvs-rtc-lp: setting system clock to 1970-01-01T00:00:00 UTC (0)
[    1.971199] i2c_dev: i2c /dev entries driver
[    1.977605] mxc-mipi-csi2_yav 30a70000.mipi_csi1: mipi_csi2_probe
[    1.983790] mxc-mipi-csi2_yav 30a70000.mipi_csi: Remote device at endpoint@1 XXX found
[    1.991738] mxc-mipi-csi2_yav 30a70000.mipi_csi1: lanes: 0, name: mxc-mipi-csi2.0
[    1.999670] mxc-mipi-csi2_yav 30b60000.mipi_csi2: mipi_csi2_probe
[    2.005842] mxc-mipi-csi2_yav 30b60000.mipi_csi: Remote device at endpoint@1 XXX found
[    2.013794] mxc-mipi-csi2_yav 30b60000.mipi_csi2: lanes: 0, name: mxc-mipi-csi2.1
[    2.021733] mx6s-csi 30a90000.csi1_bridge: initialising
[    2.027280] CSI: Registered sensor subdevice: mxc-mipi-csi2.0
[    2.033263] mx6s-csi 30b80000.csi2_bridge: initialising
[    2.038804] CSI: Registered sensor subdevice: mxc-mipi-csi2.1
[    2.050107] usbcore: registered new interface driver btusb
[    2.057571] sdhci: Secure Digital Host Controller Interface driver
[    2.063768] sdhci: Copyright(c) Pierre Ossman
[    2.068828] Synopsys Designware Multimedia Card Interface Driver
[    2.075662] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.085607] ledtrig-cpu: registered to indicate activity on CPUs
[    2.093201] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[    2.100239] usbcore: registered new interface driver usbhid
[    2.105829] usbhid: USB HID core driver
[    2.117770] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[    2.128960]  cs_system_cfg: CoreSight Configuration manager initialised
[    2.136642] platform soc@0: Fixed dependency cycle(s) with /soc@0/bus@30000000/efuse@30350000
[    2.146388] optee: probing for conduit method.
[    2.150861] optee: api uid mismatch
[    2.154368] optee: probe of firmware:optee failed with error -22
[    2.177078] NET: Registered PF_LLC protocol family
[    2.181995] u32 classifier
[    2.184747]     input device check on
[    2.188426]     Actions configured
[    2.193834] NET: Registered PF_INET6 protocol family
[    2.202750] Segment Routing with IPv6
[    2.206478] In-situ OAM (IOAM) with IPv6
[    2.210487] NET: Registered PF_PACKET protocol family
[    2.215578] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    2.228546] can: controller area network core
[    2.232947] NET: Registered PF_CAN protocol family
[    2.237758] can: raw protocol
[    2.240732] can: broadcast manager protocol
[    2.244933] can: netlink gateway - max_hops=1
[    2.250971] Bluetooth: RFCOMM TTY layer initialized
[    2.255886] Bluetooth: RFCOMM socket layer initialized
[    2.261053] Bluetooth: RFCOMM ver 1.11
[    2.264815] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    2.270141] Bluetooth: BNEP filters: protocol multicast
[    2.275386] Bluetooth: BNEP socket layer initialized
[    2.280364] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    2.286301] Bluetooth: HIDP socket layer initialized
[    2.292983] 8021q: 802.1Q VLAN Support v1.8
[    2.297214] lib80211: common routines for IEEE802.11 drivers
[    2.302889] lib80211_crypt: registered algorithm 'NULL'
[    2.302897] lib80211_crypt: registered algorithm 'WEP'
[    2.302905] lib80211_crypt: registered algorithm 'CCMP'
[    2.302912] lib80211_crypt: registered algorithm 'TKIP'
[    2.302951] 9pnet: Installing 9P2000 support
[    2.307431] Key type dns_resolver registered
[    2.312864] NET: Registered PF_VSOCK protocol family
[    2.348154] registered taskstats version 1
[    2.352423] Loading compiled-in X.509 certificates
[    2.388293] gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation.
[    2.399903] gpio gpiochip1: Static allocation of GPIO base is deprecated, use dynamic allocation.
[    2.411447] gpio gpiochip2: Static allocation of GPIO base is deprecated, use dynamic allocation.
[    2.422481] gpio gpiochip3: Static allocation of GPIO base is deprecated, use dynamic allocation.
[    2.433718] gpio gpiochip4: Static allocation of GPIO base is deprecated, use dynamic allocation.
[    2.461064] pfuze100-regulator 0-0008: Full layer: 2, Metal layer: 1
[    2.474365] pfuze100-regulator 0-0008: FAB: 0, FIN: 0
[    2.479447] pfuze100-regulator 0-0008: pfuze100 found.
[    2.510373] rtc-s35390a 0-0030: registered as rtc1
[    2.515497] lm75 0-004c: supply vs not found, using dummy regulator
[    2.529952] hwmon hwmon1: temp1_input not attached to any thermal zone
[    2.536507] lm75 0-004c: hwmon1: sensor 'lm75b'
[    2.541120] i2c i2c-0: IMX I2C adapter registered
[    2.550869] sgtl5000 1-000a: sgtl5000 revision 0x11
[    2.737522] st_lsm6dsx_i2c 1-006a: supply vdd not found, using dummy regulator
[    2.744886] st_lsm6dsx_i2c 1-006a: supply vddio not found, using dummy regulator
[    3.624141] st_lsm6dsx_i2c 1-006a: mounting matrix not found: using identity...
[    3.633046] >>>>>>>>>>>>>>>>>>>>>>> DSI85-I2C: Probe called!
[    3.638789] i2c i2c-1: IMX I2C adapter registered
[    3.901147] input: ILI210x Touchscreen as /devices/platform/soc@0/30800000.bus/30a40000.i2c/i2c-2/2-0041/input/input1
[    3.912547] i2c i2c-2: IMX I2C adapter registered
[    3.918158] imx8mq-usb-phy 381f0040.usb-phy: supply vbus not found, using dummy regulator
[    3.926946] imx8mq-usb-phy 382f0040.usb-phy: supply vbus not found, using dummy regulator
[    3.948039] imx-sdma 302c0000.dma-controller: Direct firmware load for imx/sdma/sdma-imx7d.bin failed with error -2
[    3.958529] imx-sdma 302c0000.dma-controller: Falling back to sysfs fallback for: imx/sdma/sdma-imx7d.bin
[    3.963434] mxs-dma 33000000.dma-apbh: initialized
[    3.978089] nwl-dsi 30a00000.dsi: Fixed dependency cycle(s) with /soc@0/bus@30800000/dsi@30a00000/panel@0
[    3.987865] mipi-dsi 30a00000.dsi.0: Fixed dependency cycle(s) with /soc@0/bus@30800000/dsi@30a00000
[    3.997179] sn65_panel_probe, lcd_type=6
[    4.001143] sn65_panel_probe  ... videomode_from_timing  sn65_7inch_AM1024600DTZQW_timing
[    4.089584] nwl-dsi 30a00000.dsi: [drm:nwl_dsi_host_attach] lanes=4, format=0x0 flags=0x813
[    4.098107] nwl-dsi 30a00000.dsi: [drm:nwl_dsi_probe] Using DCSS as input source
[    4.105600] Sean nwl_dsi_probe successfully!!!!!!!!!!!!!!!!!!
[    4.114929] spi_master spi0: will run message pump with realtime priority
[    4.125366] mcp251xfd spi0.0 (unnamed net_device) (uninitialized): Detected MCP2518FD, but firmware specifies a MCP2517FD. Fixing up.
[    4.137953] mcp251xfd spi0.0 can0: MCP2518FD rev0.0 (-RX_INT -PLL -MAB_NO_WARN +CRC_REG +CRC_RX +CRC_TX +ECC -HD o:20.00MHz c:20.00MHz m:20.00MHz rs:8.50MHz es:8.33MHz rf:8.50MHz ef:8.33MHz) successfully initialized.
[    4.159301] pps pps0: new PPS source ptp0
[    4.189536] fec 30be0000.ethernet eth0: registered PHC device 0
[    4.197896] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    4.203496] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 1
[    4.211303] xhci-hcd xhci-hcd.1.auto: hcc params 0x0220fe6c hci version 0x110 quirks 0x0000008000000010
[    4.220772] xhci-hcd xhci-hcd.1.auto: irq 212, io mem 0x38200000
[    4.226966] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    4.232479] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 2
[    4.240157] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0 SuperSpeed
[    4.249341] hub 1-0:1.0: USB hub found
[    4.253173] hub 1-0:1.0: 1 port detected
[    4.259825] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    4.270397] hub 2-0:1.0: USB hub found
[    4.274760] hub 2-0:1.0: 1 port detected
[    4.279680] imx-cpufreq-dt imx-cpufreq-dt: cpu speed grade 2 mkt segment 2 supported-hw 0x4 0x4
[    4.293077] sdhci-esdhc-imx 30b50000.mmc: Got CD GPIO
[    4.300932] galcore: clk_get 2d core clock failed, disable 2d/vg!
[    4.307511] Galcore version 6.4.11.p2.745085
[    4.317120] mmc0: SDHCI controller on 30b40000.mmc [30b40000.mmc] using ADMA
[    4.328321] mmc1: SDHCI controller on 30b50000.mmc [30b50000.mmc] using ADMA
[    4.395907] [drm] Initialized vivante 1.0.0 20170808 for 38000000.gpu3d on minor 0
[    4.408146] update hantro voltage from 900 mV to 1000 mV
[    4.413838] hantrodec: module inserted. Major = 509
[    4.419842] mmc0: new HS400 MMC card at address 0001
[    4.425843] mmcblk0: mmc0:0001 DG4016 14.7 GiB
[    4.432509] imx6q-pcie 33800000.pcie: host bridge /soc@0/pcie@33800000 ranges:
[    4.432630]  mmcblk0: p1 p2
[    4.439847] imx6q-pcie 33800000.pcie:       IO 0x001ff80000..0x001ff8ffff -> 0x0000000000
[    4.443114] mmcblk0boot0: mmc0:0001 DG4016 4.00 MiB
[    4.450771] imx6q-pcie 33800000.pcie:      MEM 0x0018000000..0x001fefffff -> 0x0018000000
[    4.456541] mmcblk0boot1: mmc0:0001 DG4016 4.00 MiB
[    4.469573] mmcblk0rpmb: mmc0:0001 DG4016 4.00 MiB, chardev (234:0)
[    4.525598] usb 1-1: new high-speed USB device number 2 using xhci-hcd
[    4.677336] imx6q-pcie 33800000.pcie: iATU: unroll T, 4 ob, 4 ib, align 64K, limit 4G
[    4.695069] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    4.706510] Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
[    4.714466] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    4.720178] clk: Disabling unused clocks
[    4.724165] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    4.725264] ALSA device list:
[    4.732824] platform regulatory.0: Falling back to sysfs fallback for: regulatory.db
[    4.735791]   #0: sgtl5000
[    4.743685] hub 1-1:1.0: USB hub found
[    4.750037] hub 1-1:1.0: 7 ports detected
[    4.818662] usb 2-1: new SuperSpeed USB device number 2 using xhci-hcd
[    4.888601] hub 2-1:1.0: USB hub found
[    4.892985] hub 2-1:1.0: 7 ports detected
[    5.089579] usb 1-1.6: new full-speed USB device number 3 using xhci-hcd
[    5.217895] ftdi_sio 1-1.6:1.0: FTDI USB Serial Device converter detected
[    5.224781] usb 1-1.6: Detected FT-X
[    5.234658] usb 1-1.6: FTDI USB Serial Device converter now attached to ttyUSB0
[    5.321575] usb 1-1.7: new full-speed USB device number 4 using xhci-hcd
[    5.454400] ftdi_sio 1-1.7:1.0: FTDI USB Serial Device converter detected
[    5.461326] usb 1-1.7: Detected FT-X
[    5.469580] usb 1-1.7: FTDI USB Serial Device converter now attached to ttyUSB1
[    5.542863] ddrc freq set to low bus mode
[    5.681376] imx6q-pcie 33800000.pcie: Phy link never came up
[    6.687736] imx6q-pcie 33800000.pcie: Phy link never came up
[    6.696665] imx6q-pcie 33800000.pcie: PCI host bridge to bus 0000:00
[    6.703659] pci_bus 0000:00: root bus resource [bus 00-ff]
[    6.709207] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    6.715444] pci_bus 0000:00: root bus resource [mem 0x18000000-0x1fefffff]
[    6.722553] pci 0000:00:00.0: [16c3:abcd] type 01 class 0x060400
[    6.728671] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff]
[    6.735001] pci 0000:00:00.0: reg 0x38: [mem 0x00000000-0x0000ffff pref]
[    6.742029] pci 0000:00:00.0: supports D1
[    6.746083] pci 0000:00:00.0: PME# supported from D0 D1 D3hot D3cold
[    6.755524] pci 0000:00:00.0: BAR 0: assigned [mem 0x18000000-0x180fffff]
[    6.762367] pci 0000:00:00.0: BAR 6: assigned [mem 0x18100000-0x1810ffff pref]
[    6.769638] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    6.777718] pcieport 0000:00:00.0: PME: Signaling with IRQ 221
[    6.790027] ddrc freq set to high bus mode
[    6.791479] EXT4-fs (mmcblk0p2): mounting ext3 file system using the ext4 subsystem
[    6.808133] EXT4-fs (mmcblk0p2): mounted filesystem 7b6ddbf2-39a5-41ea-93ed-f9ef26104889 r/w with ordered data mode. Quota mode: none.
[    6.820300] VFS: Mounted root (ext3 filesystem) on device 179:2.
[    6.831594] devtmpfs: mounted
[    6.835660] Freeing unused kernel memory: 4096K
[    6.840327] Run /sbin/init as init process
[    6.844434]   with arguments:
[    6.844437]     /sbin/init
[    6.844440]   with environment:
[    6.844443]     HOME=/
[    6.844446]     TERM=linux
[    6.844448]     ethaddr_usb=00:00:00:00:00:00
[    7.029277] systemd[1]: System time before build time, advancing clock.
[    7.067709] systemd[1]: systemd 255.4^ 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 -TPM2 -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified)
[    7.099630] systemd[1]: Detected architecture arm64.
[    7.121574] systemd[1]: Hostname set to <imx8mqevk>.
[    7.129804] systemd[1]: Initializing machine ID from random generator.
[    7.608141] systemd[1]: Queued start job for default target Graphical Interface.
[    7.660951] systemd[1]: Created slice Slice /system/getty.
[    7.661058] random: crng init done
[    7.687969] systemd[1]: Created slice Slice /system/modprobe.
[    7.711880] systemd[1]: Created slice Slice /system/serial-getty.
[    7.735580] systemd[1]: Created slice User and Session Slice.
[    7.757485] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    7.781401] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    7.805352] systemd[1]: Reached target Host and Network Name Lookups.
[    7.829686] systemd[1]: Reached target Path Units.
[    7.849191] systemd[1]: Reached target Remote File Systems.
[    7.873757] systemd[1]: Reached target Slice Units.
[    7.893129] systemd[1]: Reached target Swaps.
[    7.958663] systemd[1]: Listening on RPCbind Server Activation Socket.
[    7.981340] systemd[1]: Reached target RPC Port Mapper.
[    8.001922] systemd[1]: Listening on Syslog Socket.
[    8.021523] systemd[1]: Listening on initctl Compatibility Named Pipe.
[    8.047121] systemd[1]: Listening on Journal Audit Socket.
[    8.069727] systemd[1]: Listening on Journal Socket (/dev/log).
[    8.094424] systemd[1]: Listening on Journal Socket.
[    8.114080] systemd[1]: Listening on Network Service Netlink Socket.
[    8.142119] systemd[1]: Listening on udev Control Socket.
[    8.165781] systemd[1]: Listening on udev Kernel Socket.
[    8.190304] systemd[1]: Listening on User Database Manager Socket.
[    8.241853] systemd[1]: Mounting Huge Pages File System...
[    8.265995] systemd[1]: Mounting POSIX Message Queue File System...
[    8.298755] systemd[1]: Mounting Kernel Debug File System...
[    8.317589] systemd[1]: Kernel Trace File System was skipped because of an unmet condition check (ConditionPathExists=/sys/kernel/tracing).
[    8.335103] systemd[1]: Mounting Temporary Directory /tmp...
[    8.353621] systemd[1]: Create List of Static Device Nodes was skipped because of an unmet condition check (ConditionFileNotEmpty=/lib/modules/6.6.23-g2d21fbf7907f-dirty/modules.devname).
[    8.373714] systemd[1]: Starting Load Kernel Module configfs...
[    8.397097] systemd[1]: Starting Load Kernel Module drm...
[    8.421209] systemd[1]: Starting Load Kernel Module fuse...
[    8.452586] systemd[1]: Starting RPC Bind...
[    8.469396] systemd[1]: File System Check on Root Device was skipped because of an unmet condition check (ConditionPathIsReadWrite=!/).
[    8.488603] systemd[1]: Starting Journal Service...
[    8.511523] systemd[1]: Load Kernel Modules was skipped because no trigger condition checks were met.
[    8.524698] systemd[1]: Starting Generate network units from Kernel command line...
[    8.583025] systemd[1]: Starting Remount Root and Kernel File Systems...
[    8.590537] systemd-journald[134]: Collecting audit messages is enabled.
[    8.616922] systemd[1]: Starting Apply Kernel Variables...
[    8.649927] systemd[1]: Starting Create Static Device Nodes in /dev gracefully...
[    8.673461] EXT4-fs (mmcblk0p2): re-mounted 7b6ddbf2-39a5-41ea-93ed-f9ef26104889 r/w. Quota mode: none.
[    8.689816] systemd[1]: Starting Coldplug All udev Devices...
[    8.713073] systemd[1]: Starting Virtual Console Setup...
[    8.739006] systemd[1]: Started RPC Bind.
[    8.757559] systemd[1]: Started Journal Service.
[    8.860316] systemd-journald[134]: Received client request to flush runtime journal.
[    8.944679] audit: type=1334 audit(1709054765.907:2): prog-id=6 op=LOAD
[    8.951417] audit: type=1334 audit(1709054765.915:3): prog-id=7 op=LOAD
[    8.958122] audit: type=1334 audit(1709054765.923:4): prog-id=8 op=LOAD
[    9.287959] audit: type=1334 audit(1709054766.251:5): prog-id=9 op=LOAD
[    9.294756] audit: type=1334 audit(1709054766.259:6): prog-id=10 op=LOAD
[    9.560739] audit: type=1334 audit(1709054766.523:7): prog-id=11 op=LOAD
[   11.049539] imx-sdma 302c0000.dma-controller: firmware found.
[   11.049695] imx-sdma 30bd0000.dma-controller: firmware found.
[   11.056279] imx-sdma 302c0000.dma-controller: loaded firmware 4.6
[   11.229389] audit: type=1334 audit(1709054768.195:8): prog-id=12 op=LOAD
[   11.231340] audit: type=1334 audit(1709054768.195:9): prog-id=13 op=LOAD
[   11.231364] audit: type=1334 audit(1709054768.195:10): prog-id=14 op=LOAD
[   11.605701] audit: type=1334 audit(1709054768.571:11): prog-id=15 op=LOAD
[   11.869450] Qualcomm Atheros AR8035 30be0000.ethernet-1:04: attached PHY driver (mii_bus:phy_addr=30be0000.ethernet-1:04, irq=POLL)
[   14.823687] platform sound-bt-sco: deferred probe pending
[   28.915027] kauditd_printk_skb: 21 callbacks suppressed
[   28.915037] audit: type=1006 audit(1709054785.883:21): pid=532 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=3 res=1
[   28.915056] audit: type=1300 audit(1709054785.883:21): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=ffffd9acfa50 a2=1 a3=1 items=0 ppid=1 pid=532 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=3 comm="(systemd)" exe="/usr/lib/systemd/systemd-executor" key=(null)
[   28.915077] audit: type=1327 audit(1709054785.883:21): proctitle="(systemd)"
[   28.974701] audit: type=1334 audit(1709054785.943:22): prog-id=21 op=LOAD
[   28.974733] audit: type=1300 audit(1709054785.943:22): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=ffffe6dd5598 a2=90 a3=0 items=0 ppid=1 pid=532 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=3 comm="systemd" exe="/usr/lib/systemd/systemd" key=(null)
[   28.974753] audit: type=1327 audit(1709054785.943:22): proctitle="(systemd)"
[   28.974787] audit: type=1334 audit(1709054785.943:23): prog-id=21 op=UNLOAD
[   28.974803] audit: type=1300 audit(1709054785.943:23): arch=c00000b7 syscall=57 success=yes exit=0 a0=8 a1=1 a2=0 a3=ffff9d3fbea0 items=0 ppid=1 pid=532 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=3 comm="systemd" exe="/usr/lib/systemd/systemd" key=(null)
[   28.974821] audit: type=1327 audit(1709054785.943:23): proctitle="(systemd)"
[   28.975468] audit: type=1334 audit(1709054785.943:24): prog-id=22 op=LOAD
[   35.813092] VGEN1: disabling
[   35.815205] VGEN6: disabling
[   42.313178] kauditd_printk_skb: 5 callbacks suppressed
[   42.313188] audit: type=1334 audit(1709054799.283:26): prog-id=18 op=UNLOAD
[   42.313206] audit: type=1334 audit(1709054799.283:27): prog-id=17 op=UNLOAD
[   42.313215] audit: type=1334 audit(1709054799.283:28): prog-id=16 op=UNLOAD
[  362.641749] usb 2-1.3: new SuperSpeed USB device number 3 using xhci-hcd
[  362.669864] usb-storage 2-1.3:1.0: USB Mass Storage device detected
[  362.671981] scsi host0: usb-storage 2-1.3:1.0
[  363.692148] scsi 0:0:0:0: Direct-Access     TS-RDF5  SD  Transcend    TS3A PQ: 0 ANSI: 6
[  363.906581] sd 0:0:0:0: [sda] 60526592 512-byte logical blocks: (31.0 GB/28.9 GiB)
[  363.909582] sd 0:0:0:0: [sda] Write Protect is off
[  363.909598] sd 0:0:0:0: [sda] Mode Sense: 23 00 00 00
[  363.910988] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[  363.925651]  sda: sda1
[  363.925987] sd 0:0:0:0: [sda] Attached SCSI removable disk


DTS: 

// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
 * Copyright 2017 NXP
 * Copyright (C) 2017-2018 Pengutronix, Lucas Stach <kernel@pengutronix.de>
 */

/dts-v1/;

#include <dt-bindings/usb/pd.h>
#include "imx8mq.dtsi"

/ {
	model = "NXP i.MX8MQ EVK";
	compatible = "fsl,imx8mq-evk", "fsl,imx8mq";

	chosen {
		stdout-path = &uart1;
	};

	memory@40000000 {
		device_type = "memory";
		reg = <0x00000000 0x40000000 0 0xc0000000>;
	};

	resmem: reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		/* global autoconfigured region for contiguous allocations */
		linux,cma {
			compatible = "shared-dma-pool";
			reusable;
			size = <0 0x38000000>;
			alloc-ranges = <0 0x80000000 0 0x38000000>;
			linux,cma-default;
		};
	};

	pcie0_refclk: pcie0-refclk {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <100000000>;
	};

	reg_usdhc2_vmmc: regulator-vsd-3v3 {
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_reg_usdhc2>;
		compatible = "regulator-fixed";
		regulator-name = "VSD_3V3";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
		off-on-delay-us = <20000>;
		enable-active-high;
	};

	buck2_reg: regulator-buck2 {
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_buck2>;
		compatible = "regulator-gpio";
		regulator-name = "vdd_arm";
		regulator-min-microvolt = <900000>;
		regulator-max-microvolt = <1000000>;
		gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
		states = <1000000 0x0
			  900000 0x1>;
		regulator-boot-on;
		regulator-always-on;
	};

	reg_audio_vdda: regulator-audio_vdda {
		compatible = "regulator-fixed";
		regulator-name = "fixed-3.3V";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;
		regulator-always-on;
	};

	reg_audio_vddio: regulator-audio_vddio {
		compatible = "regulator-fixed";
		regulator-name = "fixed-3.3V";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;
		regulator-always-on;
	};

	reg_audio_vddd: regulator-audio_vddd {
		compatible = "regulator-fixed";
		regulator-name = "fixed-1.8V";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
		regulator-boot-on;
		regulator-always-on;
	};

	audio_codec_bt_sco: audio-codec-bt-sco {
		compatible = "linux,bt-sco";
		#sound-dai-cells = <1>;
	};

	sound-bt-sco {
		compatible = "simple-audio-card";
		simple-audio-card,name = "bt-sco-audio";
		simple-audio-card,format = "dsp_a";
		simple-audio-card,bitclock-inversion;
		simple-audio-card,frame-master = <&btcpu>;
		simple-audio-card,bitclock-master = <&btcpu>;

		btcpu: simple-audio-card,cpu {
			sound-dai = <&sai3>;
			dai-tdm-slot-num = <2>;
			dai-tdm-slot-width = <16>;
		};

		simple-audio-card,codec {
			sound-dai = <&audio_codec_bt_sco 1>;
		};
	};

	sound-hdmi {
		compatible = "fsl,imx-audio-hdmi";
		model = "imx-audio-hdmi";
		audio-cpu = <&sai4>;
		hdmi-out;
		constraint-rate = <44100>,
				<88200>,
				<176400>,
				<32000>,
				<48000>,
				<96000>,
				<192000>;
	};

	sound-spdif {
		compatible = "fsl,imx-audio-spdif";
		model = "imx-spdif";
		spdif-controller = <&spdif1>;
		spdif-out;
		spdif-in;
	};

	sound-hdmi-arc {
		compatible = "fsl,imx-audio-spdif";
		model = "imx-hdmi-arc";
		spdif-controller = <&spdif2>;
		spdif-in;
	};

	extcon_usb0: extcon_usb0 {
		compatible = "linux,extcon-usb-gpio";
		id-gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
		usb_power = <&gpio3 19 GPIO_ACTIVE_HIGH>;
		usb3_power = <&gpio3 20 GPIO_ACTIVE_HIGH>;
		usb_hdr_power = <&gpio3 21 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_extcon_usb0>;
		status = "okay";
	};

	sound-sgtl5000 {
                compatible = "fsl,imx-audio-sgtl5000";
                model = "sgtl5000";
                audio-cpu = <&sai2>;
                audio-codec = <&sgtl5000>;
                audio-routing =
                        "MIC_IN", "Mic Jack",
                        "Mic Jack", "Mic Bias",
                        "Headphone Jack", "HP_OUT",
                        "Mic Jack",
                        "Line Out Jack";
                mux-int-port = <3>;
                mux-ext-port = <1>;
        };

	can0_osc: can0_osc {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <20000000>;
	};

	backlight_power: regulator-backlight_power {
		compatible = "regulator-fixed";
		regulator-name = "backlight_power";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&gpio4 30 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};
/*
	reg_lvds_panel: regulator-reg_lvds_panel {
		compatible = "regulator-fixed";
		regulator-name = "reg_lvds_panel";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};
*/
};

&A53_0 {
	cpu-supply = <&buck2_reg>;
};

&A53_1 {
	cpu-supply = <&buck2_reg>;
};

&A53_2 {
	cpu-supply = <&buck2_reg>;
};

&A53_3 {
	cpu-supply = <&buck2_reg>;
};

&csi1_bridge {
	fsl,mipi-mode;
	fsl,two-8bit-sensor-mode;
	status = "okay";

	port {
		csi1_ep: endpoint {
			remote-endpoint = <&csi1_mipi_ep>;
		};
	};
};

&csi2_bridge {
	fsl,mipi-mode;
	fsl,two-8bit-sensor-mode;
	status = "okay";

	port {
		csi2_ep: endpoint {
			remote-endpoint = <&csi2_mipi_ep>;
		};
	};
};

&fec1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_fec1>;
	phy-mode = "rgmii-id";
	phy-handle = <&ethphy0>;
	fsl,magic-packet;
	status = "okay";

	mdio {
		#address-cells = <1>;
		#size-cells = <0>;

		ethphy0: ethernet-phy@0 {
			compatible = "ethernet-phy-ieee802.3-c22";
			reg = <4>;
			reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
			reset-assert-us = <10000>;
			at803x,led-act-blind-workaround;
			at803x,eee-disabled;
		};
	};
};

&mipi_csi_1 {
	status = "okay";
	port {
		#address-cells = <1>;
		#size-cells = <0>;

		csi1_mipi_ep: endpoint@1 {
			reg = <1>;
			remote-endpoint = <&csi1_ep>;
		};
	};
};

&mipi_csi_2 {
	status = "okay";
	port {
		#address-cells = <1>;
		#size-cells = <0>;

		csi2_mipi_ep: endpoint@1 {
			reg = <1>;
			remote-endpoint = <&csi2_ep>;
		};
	};
};

&i2c1 {
	clock-frequency = <100000>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_i2c1>;
	status = "okay";

	pmic@8 {
		compatible = "fsl,pfuze100";
		fsl,pfuze-support-disable-sw;
		reg = <0x8>;

		regulators {
			sw1a_reg: sw1ab {
				regulator-min-microvolt = <825000>;
				regulator-max-microvolt = <1100000>;
			};

			sw1c_reg: sw1c {
				regulator-min-microvolt = <825000>;
				regulator-max-microvolt = <1100000>;
			};

			sw2_reg: sw2 {
				regulator-min-microvolt = <1100000>;
				regulator-max-microvolt = <1100000>;
				regulator-always-on;
			};

			sw3a_reg: sw3ab {
				regulator-min-microvolt = <825000>;
				regulator-max-microvolt = <1100000>;
				regulator-always-on;
			};

			sw4_reg: sw4 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-always-on;
			};

			swbst_reg: swbst {
				regulator-min-microvolt = <5000000>;
				regulator-max-microvolt = <5150000>;
			};

			snvs_reg: vsnvs {
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <3000000>;
				regulator-always-on;
			};

			vref_reg: vrefddr {
				regulator-always-on;
			};

			vgen1_reg: vgen1 {
				regulator-min-microvolt = <800000>;
				regulator-max-microvolt = <1550000>;
			};

			vgen2_reg: vgen2 {
				regulator-min-microvolt = <850000>;
				regulator-max-microvolt = <975000>;
				regulator-always-on;
			};

			vgen3_reg: vgen3 {
				regulator-min-microvolt = <1675000>;
				regulator-max-microvolt = <1975000>;
				regulator-always-on;
			};

			vgen4_reg: vgen4 {
				regulator-min-microvolt = <1625000>;
				regulator-max-microvolt = <1875000>;
				regulator-always-on;
			};

			vgen5_reg: vgen5 {
				regulator-min-microvolt = <3075000>;
				regulator-max-microvolt = <3625000>;
				regulator-always-on;
			};

			vgen6_reg: vgen6 {
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <3300000>;
			};
		};
	};

	s35390a: s35390a@30 {
		compatible = "s35390a";
		reg = <0x30>;
		status = "okay";
	};

	thermal: lm75b@4c {
		compatible = "national,lm75b";
		reg = <0x4c>;
	};
};

&i2c3 {
	clock-frequency = <100000>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_i2c3>;
	status = "okay";

	ilitek@41 {
		compatible = "ilitek,ili251x";
		pinctrl-0 = <&pinctrl_touch_irq>;
		reg = <0x41>;
		interrupt-parent = <&gpio3>;
		interrupts = <3 GPIO_ACTIVE_LOW>;
		//vdd-supply = <&gpio5>;
		//vcc_i2c-supply = <&gpio3>;
		ilitek,irq-gpio = <&gpio3 3 GPIO_ACTIVE_LOW>;
		//ilitek,reset-gpio = <&gpio5 12 0x0>;
	};
};

&i2c2 {
	clock-frequency = <100000>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_i2c2>;
	status = "okay";

	sgtl5000: audio-codec@a {
		compatible = "fsl,sgtl5000";
		#sound-dai-cells = <0>;
		reg = <0x0a>;
		VDDA-supply = <&reg_audio_vdda>;
		VDDIO-supply = <&reg_audio_vddio>;
		VDDD-supply = <&reg_audio_vddd>;

		micbias-resistor-k-ohms = <2>;
		micbias-voltage-m-volts = <1575>;

		clocks = <&clk IMX8MQ_CLK_SAI2_ROOT>;
		clock-names = "mclk";
		assigned-clock-rates = <24576000>;
	};

	lsm6dsox@6a {
		compatible = "st,lsm6dsox";
		reg = <0x6a>;
		interrupt-parent = <&gpio3>;
		interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
	};

	sn65dsi: sn65dsi8x@2c{
		compatible = "ti,sn65dsi8x"; /* instantiate the dsi85 driver */
		reg = <0x2c>;
		bridge_en = <&gpio5 1 GPIO_ACTIVE_HIGH>;
		status = "okay";
	};
};

&pcie0 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_pcie0>;
	disable-gpio = <&gpio3 0 GPIO_ACTIVE_HIGH>;
	bt-disable-gpio = <&gpio3 5 GPIO_ACTIVE_HIGH>;
	reset-gpio = <&gpio3 1 GPIO_ACTIVE_LOW>;
	wwan-disable-gpio = <&gpio4 31 GPIO_ACTIVE_HIGH>;
	wwan-reset-gpio = <&gpio1 6 GPIO_ACTIVE_HIGH>;
	clocks = <&clk IMX8MQ_CLK_PCIE1_ROOT>,
		 <&pcie0_refclk>,
		 <&clk IMX8MQ_CLK_PCIE1_PHY>,
		 <&clk IMX8MQ_CLK_PCIE1_AUX>;
	vph-supply = <&vgen5_reg>;
	status = "okay";
};

&pgc_gpu {
	power-supply = <&sw1a_reg>;
};

&pgc_vpu {
	power-supply = <&sw1c_reg>;
};

&sai1 {
	pinctrl-names = "default", "pcm_b2m", "dsd";
	pinctrl-0 = <&pinctrl_sai1_pcm>;
	pinctrl-1 = <&pinctrl_sai1_pcm_b2m>;
	pinctrl-2 = <&pinctrl_sai1_dsd>;
	assigned-clocks = <&clk IMX8MQ_CLK_SAI1>;
	assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
	assigned-clock-rates = <49152000>;
	clocks = <&clk IMX8MQ_CLK_SAI1_IPG>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_CLK_SAI1_ROOT>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_CLK_DUMMY>, <&clk IMX8MQ_AUDIO_PLL1_OUT>,
		<&clk IMX8MQ_AUDIO_PLL2_OUT>;
	clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k";
	fsl,sai-multi-lane;
	fsl,dataline = <0 0xff 0xff 2 0xff 0x11>;
	dmas = <&sdma2 8 25 0>, <&sdma2 9 25 0>;
	status = "okay";
};

&sai2 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_sai2>;
	assigned-clocks = <&clk IMX8MQ_CLK_SAI2>;
	assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
	assigned-clock-rates = <24576000>;
	status = "okay";
};

&sai4 {
	assigned-clocks = <&clk IMX8MQ_CLK_SAI4>;
	assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
	assigned-clock-rates = <24576000>;
	clocks = <&clk IMX8MQ_CLK_SAI4_IPG>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_CLK_SAI4_ROOT>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_CLK_DUMMY>, <&clk IMX8MQ_AUDIO_PLL1_OUT>,
		<&clk IMX8MQ_AUDIO_PLL2_OUT>;
	clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k";
	fsl,sai-multi-lane;
	dmas = <&sdma2 0 25 0>, <&sdma2 1 25 0>;
	status = "okay";
};

&snvs_pwrkey {
	status = "okay";
};

&spdif1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_spdif1>;
	assigned-clocks = <&clk IMX8MQ_CLK_SPDIF1>;
	assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
	assigned-clock-rates = <24576000>;
	clocks = <&clk IMX8MQ_CLK_IPG_ROOT>, <&clk IMX8MQ_CLK_25M>,
		<&clk IMX8MQ_CLK_SPDIF1>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_CLK_DUMMY>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_CLK_IPG_ROOT>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_CLK_DUMMY>, <&clk IMX8MQ_CLK_DUMMY>,
		<&clk IMX8MQ_AUDIO_PLL1_OUT>, <&clk IMX8MQ_AUDIO_PLL2_OUT>;
	clock-names = "core", "rxtx0", "rxtx1", "rxtx2", "rxtx3", "rxtx4",
		      "rxtx5", "rxtx6", "rxtx7", "spba", "pll8k", "pll11k";
	status = "okay";
};

&spdif2 {
	assigned-clocks = <&clk IMX8MQ_CLK_SPDIF2>;
	assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
	assigned-clock-rates = <24576000>;
	status = "okay";
};

&uart1 { /* console */
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart1>;
	assigned-clocks = <&clk IMX8MQ_CLK_UART1>;
	assigned-clock-parents = <&clk IMX8MQ_CLK_25M>;
	status = "okay";
};

&uart2 { /* DFI UART */
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_uart2>;
        assigned-clocks = <&clk IMX8MQ_CLK_UART2>;
        assigned-clock-parents = <&clk IMX8MQ_CLK_25M>;
        fsl,uart-has-rtscts;
        status = "okay";
};

&uart3 { /* DFI UART */
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart3>;
	assigned-clocks = <&clk IMX8MQ_CLK_UART3>;
	assigned-clock-parents = <&clk IMX8MQ_SYS1_PLL_80M>;
	status = "okay";
};

&uart4 { /* DFI UART */
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_uart4>;
        assigned-clocks = <&clk IMX8MQ_CLK_UART4>;
        assigned-clock-parents = <&clk IMX8MQ_CLK_25M>;
        fsl,uart-has-rtscts;
        dma-names = "", "tx";
        status = "okay";
};

&usb3_phy0 {
	status = "okay";
};

&usb_dwc3_0 {
	dr_mode = "otg";
	hnp-disable;
	srp-disable;
	adp-disable;
	usb-role-switch;
	role-switch-default-mode = "none";
	extcon = <&extcon_usb0>;
	picophy,pre-emp-curr-control = <3>;
	picophy,dc-vol-level-adjust = <7>;
	status = "okay";
};

&usb3_phy1 {
	status = "okay";
};

&usb_dwc3_1 {
	dr_mode = "host";
	status = "okay";
};

&usdhc1 {
	assigned-clocks = <&clk IMX8MQ_CLK_USDHC1>;
	assigned-clock-rates = <400000000>;
	pinctrl-names = "default", "state_100mhz", "state_200mhz";
	pinctrl-0 = <&pinctrl_usdhc1>;
	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
	vqmmc-supply = <&sw4_reg>;
	bus-width = <8>;
	non-removable;
	no-sd;
	no-sdio;
	status = "okay";
};

&usdhc2 {
	assigned-clocks = <&clk IMX8MQ_CLK_USDHC2>;
	assigned-clock-rates = <200000000>;
	pinctrl-names = "default", "state_100mhz", "state_200mhz";
	pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
	pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
	pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
	cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
	vmmc-supply = <&reg_usdhc2_vmmc>;
	status = "okay";
};

&wdog1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_wdog>;
	fsl,ext-reset-output;
	status = "okay";
};

&iomuxc {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_hog>;

	pinctrl_hog: hoggrp {
		fsl,pins = <
			MX8MQ_IOMUXC_NAND_READY_B_GPIO3_IO16		0x19 /* F81439A_MODE2 */
			MX8MQ_IOMUXC_NAND_WE_B_GPIO3_IO17		0x19 /* F81439A_MODE0 */
			MX8MQ_IOMUXC_NAND_WP_B_GPIO3_IO18		0x19 /* F81439A_MODE1 */
			MX8MQ_IOMUXC_NAND_DATA00_GPIO3_IO6		0x19
			MX8MQ_IOMUXC_NAND_DATA01_GPIO3_IO7		0x19
			MX8MQ_IOMUXC_NAND_DATA02_GPIO3_IO8		0x19
			MX8MQ_IOMUXC_NAND_DATA03_GPIO3_IO9		0x19
			MX8MQ_IOMUXC_NAND_DATA04_GPIO3_IO10		0x19
			MX8MQ_IOMUXC_NAND_DATA05_GPIO3_IO11		0x19
			MX8MQ_IOMUXC_NAND_DATA06_GPIO3_IO12		0x19
			MX8MQ_IOMUXC_NAND_DATA07_GPIO3_IO13		0x19
			MX8MQ_IOMUXC_GPIO1_IO12_GPIO1_IO12		0x19 /* GPO_Debug_LED */
			MX8MQ_IOMUXC_GPIO1_IO15_GPIO1_IO15		0x19 /* GPIO1_DIMM_DC */
			MX8MQ_IOMUXC_NAND_CE3_B_GPIO3_IO4		0x19 /* COM_PWR_EN */
			MX8MQ_IOMUXC_GPIO1_IO14_GPIO1_IO14		0x19 /* Thermal interrupt */
			MX8MQ_IOMUXC_GPIO1_IO00_GPIO1_IO0		0x19 /* LVDS panel power */
			MX8MQ_IOMUXC_GPIO1_IO08_GPIO1_IO8		0x19 /* Backlight enable */
			MX8MQ_IOMUXC_SAI3_TXD_GPIO5_IO1                 0x19 /* LVDS bridge enable */

			MX8MQ_IOMUXC_SAI3_TXC_GPIO5_IO0			0x19 /* M8MT51 GPO_UR1_EN */
			MX8MQ_IOMUXC_SAI2_RXC_GPIO4_IO22		0x19 /* M8MT51 GPO_UR2_EN */
			MX8MQ_IOMUXC_GPIO1_IO03_GPIO1_IO3		0x19 /* M8MT51 RSV_GPIO CAN 120 Ohm */
			MX8MQ_IOMUXC_SAI5_MCLK_GPIO3_IO25		0x19 /* M8MT51 LSM6D_INT1# */
			MX8MQ_IOMUXC_SAI3_RXD_GPIO4_IO30		0x19 /* M8MT51 LED_BL_PWR */
		>;
	};
/*
	pinctrl_mipi_dsi_en: mipidsigrp {
		fsl,pins = <
                        MX8MQ_IOMUXC_SAI3_TXD_GPIO5_IO1                 0x19 // LVDS bridge enable
                >;
	};
*/
	pinctrl_buck2: vddarmgrp {
		fsl,pins = <
			MX8MQ_IOMUXC_GPIO1_IO13_GPIO1_IO13		0x19
		>;
	};

	pinctrl_fec1: fec1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_ENET_MDC_ENET1_MDC			0x3
			MX8MQ_IOMUXC_ENET_MDIO_ENET1_MDIO		0x23
			MX8MQ_IOMUXC_ENET_TD3_ENET1_RGMII_TD3		0x1f
			MX8MQ_IOMUXC_ENET_TD2_ENET1_RGMII_TD2		0x1f
			MX8MQ_IOMUXC_ENET_TD1_ENET1_RGMII_TD1		0x1f
			MX8MQ_IOMUXC_ENET_TD0_ENET1_RGMII_TD0		0x1f
			MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3		0x91
			MX8MQ_IOMUXC_ENET_RD2_ENET1_RGMII_RD2		0x91
			MX8MQ_IOMUXC_ENET_RD1_ENET1_RGMII_RD1		0x91
			MX8MQ_IOMUXC_ENET_RD0_ENET1_RGMII_RD0		0x91
			MX8MQ_IOMUXC_ENET_TXC_ENET1_RGMII_TXC		0x1f
			MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC		0x91
			MX8MQ_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL	0x91
			MX8MQ_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL	0x1f
			MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9		0x19 /* ENET_nRST */
		>;
	};

	pinctrl_i2c1: i2c1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL			0x4000007f
			MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA			0x4000007f
		>;
	};

	pinctrl_i2c3: i2c3grp {
		fsl,pins = <
			MX8MQ_IOMUXC_I2C3_SCL_I2C3_SCL			0x4000007f
			MX8MQ_IOMUXC_I2C3_SDA_I2C3_SDA			0x4000007f
		>;
	};

	pinctrl_i2c2: i2c2grp {
		fsl,pins = <
			MX8MQ_IOMUXC_I2C2_SCL_I2C2_SCL			0x40000067
			MX8MQ_IOMUXC_I2C2_SDA_I2C2_SDA			0x40000067
		>;
	};

	pinctrl_pcie0: pcie0grp {
		fsl,pins = <
			MX8MQ_IOMUXC_I2C4_SCL_PCIE1_CLKREQ_B    0x76 /* open drain, pull up */
			MX8MQ_IOMUXC_NAND_ALE_GPIO3_IO0		0x19 /*M8M051 PCIe_nDIS */
			MX8MQ_IOMUXC_NAND_CE0_B_GPIO3_IO1	0x19 /*M8M051 PCIe_nRST */
			MX8MQ_IOMUXC_NAND_DQS_GPIO3_IO14	0x19 /*M8M051 PCIe_nWAKE */
			MX8MQ_IOMUXC_NAND_CE1_B_GPIO3_IO2	0x19 /*M8M051 BT_DEV_nWAKE */
			MX8MQ_IOMUXC_NAND_CLE_GPIO3_IO5		0x19 /*M8M051 BT_nDIS */
			MX8MQ_IOMUXC_SAI3_TXFS_GPIO4_IO31       0x19 /*M8M051 WWAN_nDIS */
			MX8MQ_IOMUXC_GPIO1_IO06_GPIO1_IO6       0x19 /*M8M051 WWAN_nRST */
		>;
	};

	pinctrl_reg_usdhc2: regusdhc2gpiogrp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD2_RESET_B_GPIO2_IO19		0x41
		>;
	};

	pinctrl_sai2: sai2grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SAI2_TXFS_SAI2_TX_SYNC     0xd6
			MX8MQ_IOMUXC_SAI2_TXC_SAI2_TX_BCLK      0xd6
			MX8MQ_IOMUXC_SAI2_MCLK_SAI2_MCLK        0xd6
			MX8MQ_IOMUXC_SAI2_TXD0_SAI2_TX_DATA0    0xd6
			MX8MQ_IOMUXC_SAI2_RXD0_SAI2_RX_DATA0    0xd6
		>;
	};

	pinctrl_sai1_pcm: sai1grp_pcm {
		fsl,pins = <
			MX8MQ_IOMUXC_SAI1_MCLK_SAI1_MCLK		0xd6
			MX8MQ_IOMUXC_SAI1_TXFS_SAI1_TX_SYNC		0xd6
			MX8MQ_IOMUXC_SAI1_RXD7_SAI1_TX_SYNC		0xd6
			MX8MQ_IOMUXC_SAI1_TXC_SAI1_TX_BCLK		0xd6
			MX8MQ_IOMUXC_SAI1_TXD0_SAI1_TX_DATA0		0xd6
			MX8MQ_IOMUXC_SAI1_TXD1_SAI1_TX_DATA1		0xd6
			MX8MQ_IOMUXC_SAI1_TXD2_SAI1_TX_DATA2		0xd6
			MX8MQ_IOMUXC_SAI1_TXD3_SAI1_TX_DATA3		0xd6
			MX8MQ_IOMUXC_SAI1_TXD4_SAI1_TX_DATA4		0xd6
			MX8MQ_IOMUXC_SAI1_TXD5_SAI1_TX_DATA5		0xd6
			MX8MQ_IOMUXC_SAI1_TXD6_SAI1_TX_DATA6		0xd6
			MX8MQ_IOMUXC_SAI1_TXD7_SAI1_TX_DATA7		0xd6
		>;
	};

	pinctrl_sai1_pcm_b2m: sai1grp_pcm_b2m {
		fsl,pins = <
			MX8MQ_IOMUXC_SAI1_MCLK_SAI1_TX_BCLK		0xd6
			MX8MQ_IOMUXC_SAI1_TXFS_SAI1_TX_SYNC		0xd6
			MX8MQ_IOMUXC_SAI1_RXD7_SAI1_TX_SYNC		0xd6
			MX8MQ_IOMUXC_SAI1_TXC_SAI1_TX_BCLK		0xd6
			MX8MQ_IOMUXC_SAI1_TXD0_SAI1_TX_DATA0		0xd6
			MX8MQ_IOMUXC_SAI1_TXD1_SAI1_TX_DATA1		0xd6
			MX8MQ_IOMUXC_SAI1_TXD2_SAI1_TX_DATA2		0xd6
			MX8MQ_IOMUXC_SAI1_TXD3_SAI1_TX_DATA3		0xd6
			MX8MQ_IOMUXC_SAI1_TXD4_SAI1_TX_DATA4		0xd6
			MX8MQ_IOMUXC_SAI1_TXD5_SAI1_TX_DATA5		0xd6
			MX8MQ_IOMUXC_SAI1_TXD6_SAI1_TX_DATA6		0xd6
			MX8MQ_IOMUXC_SAI1_TXD7_SAI1_TX_DATA7		0xd6
		>;
	};

	pinctrl_sai1_dsd: sai1grp_dsd {
		fsl,pins = <
			MX8MQ_IOMUXC_SAI1_MCLK_SAI1_MCLK		0xd6
			MX8MQ_IOMUXC_SAI1_TXFS_SAI1_TX_SYNC		0xd6
			MX8MQ_IOMUXC_SAI1_RXD7_SAI1_TX_DATA4		0xd6
			MX8MQ_IOMUXC_SAI1_TXC_SAI1_TX_BCLK		0xd6
			MX8MQ_IOMUXC_SAI1_TXD0_SAI1_TX_DATA0		0xd6
			MX8MQ_IOMUXC_SAI1_TXD1_SAI1_TX_DATA1		0xd6
			MX8MQ_IOMUXC_SAI1_TXD2_SAI1_TX_DATA2		0xd6
			MX8MQ_IOMUXC_SAI1_TXD3_SAI1_TX_DATA3		0xd6
			MX8MQ_IOMUXC_SAI1_TXD4_SAI1_TX_DATA4		0xd6
			MX8MQ_IOMUXC_SAI1_TXD5_SAI1_TX_DATA5		0xd6
			MX8MQ_IOMUXC_SAI1_TXD6_SAI1_TX_DATA6		0xd6
			MX8MQ_IOMUXC_SAI1_TXD7_SAI1_TX_DATA7		0xd6
		>;
	};

	pinctrl_spdif1: spdif1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SPDIF_TX_SPDIF1_OUT	0xd6
			MX8MQ_IOMUXC_SPDIF_RX_SPDIF1_IN		0xd6
		>;
	};

	pinctrl_uart1: uart1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_UART1_RXD_UART1_DCE_RX		0x49
			MX8MQ_IOMUXC_UART1_TXD_UART1_DCE_TX		0x49
		>;
	};

	pinctrl_uart2: uart2grp {
		fsl,pins = <
			MX8MQ_IOMUXC_UART2_RXD_UART2_DCE_RX		0x49 /* RS-232 RX*/
			MX8MQ_IOMUXC_UART2_TXD_UART2_DCE_TX		0x49 /* RS-232 TX*/
			MX8MQ_IOMUXC_UART4_TXD_UART2_DCE_RTS_B		0x49 /* RS-232 RTS*/
			MX8MQ_IOMUXC_UART4_RXD_UART2_DCE_CTS_B		0x49 /* RS-232 CTS*/
		>;
	};

	pinctrl_uart3: uart3grp {
		fsl,pins = <
			MX8MQ_IOMUXC_UART3_TXD_UART3_DCE_TX		0x49
			MX8MQ_IOMUXC_UART3_RXD_UART3_DCE_RX		0x49
		>;
	};

	pinctrl_uart4: uart4grp {
		fsl,pins = <
			MX8MQ_IOMUXC_ECSPI2_SCLK_UART4_DCE_RX           0x49 /* RS-232/422/485 */
			MX8MQ_IOMUXC_ECSPI2_MOSI_UART4_DCE_TX           0x49 /* RS-232/422/485 */
			MX8MQ_IOMUXC_ECSPI2_MISO_UART4_DCE_CTS_B        0x49 /* RS-232/422/485 */
			MX8MQ_IOMUXC_ECSPI2_SS0_UART4_DCE_RTS_B         0x49 /* RS-232/422/485 */
		>;
	};

	pinctrl_usdhc1: usdhc1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK			0x83
			MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD			0xc3
			MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0		0xc3
			MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1		0xc3
			MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2		0xc3
			MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3		0xc3
			MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4		0xc3
			MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5		0xc3
			MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6		0xc3
			MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7		0xc3
			MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x83
			MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B		0xc1
		>;
	};

	pinctrl_usdhc1_100mhz: usdhc1-100grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK			0x8d
			MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD			0xcd
			MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0		0xcd
			MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1		0xcd
			MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2		0xcd
			MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3		0xcd
			MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4		0xcd
			MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5		0xcd
			MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6		0xcd
			MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7		0xcd
			MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x8d
			MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B		0xc1
		>;
	};

	pinctrl_usdhc1_200mhz: usdhc1-200grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK			0x9f
			MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD			0xdf
			MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0		0xdf
			MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1		0xdf
			MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2		0xdf
			MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3		0xdf
			MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4		0xdf
			MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5		0xdf
			MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6		0xdf
			MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7		0xdf
			MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x9f
			MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B		0xc1
		>;
	};

	pinctrl_usdhc2_gpio: usdhc2gpiogrp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12		0x41
		>;
	};

	pinctrl_usdhc2: usdhc2grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK			0x83
			MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD			0xc3
			MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0		0xc3
			MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1		0xc3
			MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2		0xc3
			MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3		0xc3
			MX8MQ_IOMUXC_GPIO1_IO04_USDHC2_VSELECT		0xc1
		>;
	};

	pinctrl_usdhc2_100mhz: usdhc2-100grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK			0x85
			MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD			0xc5
			MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0		0xc5
			MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1		0xc5
			MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2		0xc5
			MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3		0xc5
			MX8MQ_IOMUXC_GPIO1_IO04_USDHC2_VSELECT		0xc1
		>;
	};

	pinctrl_usdhc2_200mhz: usdhc2-200grp {
		fsl,pins = <
			MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK			0x87
			MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD			0xc7
			MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0		0xc7
			MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1		0xc7
			MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2		0xc7
			MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3		0xc7
			MX8MQ_IOMUXC_GPIO1_IO04_USDHC2_VSELECT		0xc1
		>;
	};

	pinctrl_wdog: wdog1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B		0xc6
		>;
	};

	pinctrl_ecspi1: ecspi1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_ECSPI1_SCLK_ECSPI1_SCLK		0x13
			MX8MQ_IOMUXC_ECSPI1_MOSI_ECSPI1_MOSI		0x13
			MX8MQ_IOMUXC_ECSPI1_MISO_ECSPI1_MISO		0x13
			MX8MQ_IOMUXC_ECSPI1_SS0_GPIO5_IO9		0x13
		>;
	};

	pinctrl_extcon_usb0: usb0-extcongrp {
		fsl,pins = <
			MX8MQ_IOMUXC_GPIO1_IO10_GPIO1_IO10		0x19
			MX8MQ_IOMUXC_SAI5_RXFS_GPIO3_IO19		0x19 /* USBTC_EN */
			MX8MQ_IOMUXC_SAI5_RXC_GPIO3_IO20                0x19 /* USBTA_EN */
			MX8MQ_IOMUXC_SAI5_RXD0_GPIO3_IO21               0x19 /* USBHdr_EN */
		>;
	};

	pinctrl_can: cangrp {
		fsl,pins = <
			MX8MQ_IOMUXC_NAND_RE_B_GPIO3_IO15		0x19 /* CAN_INT */
		>;
	};

	pinctrl_touch_irq: touch_irq {
		fsl,pins = <
			MX8MQ_IOMUXC_NAND_CE2_B_GPIO3_IO3		0x16 /* touch irq */
		>;
	};

	pinctrl_pwm1: pwm1grp {
		fsl,pins = <
			MX8MQ_IOMUXC_GPIO1_IO01_PWM1_OUT                0x06
		>;
	};
};

&vpu {
	vpu-supply = <&sw1c_reg>;
	status = "okay";
};

&vpu_v4l2 {
	status = "okay";
};

&gpu3d {
	status = "okay";
};

&irqsteer {
	status = "okay";
};

&dcss {
	status = "disabled";
};

&hdmi {
	status = "disabled";
};

&ecspi1 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_ecspi1>;
        cs-gpios = <&gpio5  9 GPIO_ACTIVE_LOW>;
        fsl,spi-num-chipselects = <1>;
        status = "okay";

	can0: can@0 {
		compatible = "microchip,mcp2517fd";
		reg = <0>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_can>;
		clocks = <&can0_osc>;
		interrupt-parent = <&gpio3>;
		interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
		spi-max-frequency = <20000000>;
		microchip,gpio0-xstandby = "true";
		status = "okay";
	};
};

&pwm1 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_pwm1>;
        status = "okay";
};

/*
 * Copyright 2018 NXP
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

#include "imx8mq-M8MT51.dts"

/ {
	model = "DFI M8MT51 SN65DSI85";
	compatible = "dfi,m8mt51", "fsl,imx8mq";

	sound-hdmi {
                status = "disabled";
        };

	lvds_backlight: lvds_backlight {
		compatible = "pwm-backlight";
		pinctrl-0 = <&pinctrl_pwm1>;
		pwms = <&pwm1 0 50000 0>;
		status = "okay";
		brightness-levels = <
				  0   3   5   8  10  13  15  18  20  23
				 26  28  31  33  36  38  41  43  46  48
				 51  54  56  59  61  64  66  69  71  74
				 77  79  82  84  87  89  92  94  97  99
				102 105 107 110 112 115 117 120 122 125
				128 130 133 135 138 140 143 145 148 150
				153 156 158 161 163 166 168 171 173 176
				179 181 184 186 189 191 194 196 199 201
				204 207 209 212 214 217 219 222 224 227
				230 232 235 237 240 242 245 247 250 252
				255
				>;
		default-brightness-level = <80>;
		power-supply = <&backlight_power>;
                enable-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
		panel_power = <&gpio1 0 GPIO_ACTIVE_HIGH>;
	};

};

&mipi_dsi {
	#address-cells = <1>;
	#size-cells = <0>;
	status = "okay";

	panel@0 {
		compatible = "ti,panel-sn65dsi8x";
		#address-cells = <1>;
                #size-cells = <0>;
		reg = <0>;
		dsi-lanes = <4>;
		panel-width-mm = <86>;
		panel-height-mm = <154>;
		lcd_type = <6>;
		lvds_channel_num = <1>;
		client-device  = <&sn65dsi>;
		status = "okay";

		port@1{
			reg = <1>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        sn65dsi_in: endpoint@1 {
                                remote-endpoint = <&mipi_dsi_out>;
                        };
                };
	};

	ports {
		#address-cells = <1>;
		#size-cells = <0>;

		port@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0>;
			mipi_dsi_in: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&dcss_disp0_mipi_dsi>;
            		};
        	};

		port@1 {
			reg = <1>;
			#address-cells = <1>;
			#size-cells = <0>;
			mipi_dsi_out: endpoint@1 {
				reg = <1>;
				remote-endpoint = <&sn65dsi_in>;
			};
		};
	};
};

&dcss {
    	status = "okay";
	disp-dev = "mipi_disp";
	#address-cells = <1>;
	#size-cells = <0>;

        clocks = <&clk IMX8MQ_CLK_DISP_APB_ROOT>,
                 <&clk IMX8MQ_CLK_DISP_AXI_ROOT>,
                 <&clk IMX8MQ_CLK_DISP_RTRM_ROOT>,
                 <&clk IMX8MQ_CLK_DC_PIXEL>,
                 <&clk IMX8MQ_CLK_DISP_DTRC>,
                 <&clk IMX8MQ_VIDEO_PLL1>,
                 <&clk IMX8MQ_CLK_27M>,
                 <&clk IMX8MQ_CLK_25M>;
        clock-names = "apb", "axi", "rtrm", "pix", "dtrc", "pll",
                      "pll_src1", "pll_src2";

        assigned-clocks = <&clk IMX8MQ_CLK_DC_PIXEL>,
                          <&clk IMX8MQ_CLK_DISP_AXI>,
                          <&clk IMX8MQ_CLK_DISP_RTRM>;
        assigned-clock-parents = <&clk IMX8MQ_VIDEO_PLL1_OUT>,
                                 <&clk IMX8MQ_SYS1_PLL_800M>,
                                 <&clk IMX8MQ_SYS1_PLL_800M>;
        assigned-clock-rates = <600000000>,
                               <800000000>,
                               <400000000>;

	port@0 {
		reg = <0>;
		#address-cells = <1>;
		#size-cells = <0>;
		dcss_disp0_mipi_dsi: endpoint@1 {
			reg = <1>;
			remote-endpoint = <&mipi_dsi_in>;
		};
	};
};

&irqsteer {
        status = "okay";
};

&lcdif {
        status = "disabled";
};

&dphy {
        status = "okay";
};

&hdmi {
	status = "disabled";
};

Hardware architecture:
[DCSS] → [MIPI DSI] → [SN65DSI85] → [LVDS Panel]

DTS settings: