Post Go back to editing

What is the best place to start with Linux code for the adrv9002?

What is the best place to start with Liniux code for the adrv9002 for a board that is not an evaluation board (i.e. not zc706 or zcu102)?

I am a bit confused.

Should I start with the files defined at https://wiki.analog.com/resources/tools-software/linux-drivers/iio-transceiver/adrv9002

If so, how do I do a git for all the files I need. There are links to a few files, but there are a lot of includes that are not listed.

Should I start with the adrv9001-sdk.zip? found at https://www.analog.com/en/design-center/landing-pages/001/transceiver-evaluation-software.html ?

I can build this, but it does not seem very portable to another platform.

Some guidance would be awesome

Thanks

Top Replies

    •  Analog Employees 
    May 4, 2021 in reply to swie +1 verified

    Hi,

    I see from the zcu102 hdl reference design that the axi_adrv9001 has an address of 0x84A00000.
    This is the address and reg for the axi-adrv9002-rx-lpc above.

    The core_tx1 uses this address…

Parents
  • Hi,

    What FPGA/processor do you want to use? Normally, you can use the same defconfig for building the Linux kernel, but customize the devicetree according to your platform.

    Thanks,
    Dragos

  • Hello Dragos,

    Thanks for the reply.

    I am using a Xilinx Zynq Ultrasacle+, and use the main APU running petalinux.

    I can update the device tree with the adrv9001 and the spi etc.

    Then which software should I start with?

    Should I start with the files defined at https://wiki.analog.com/resources/tools-software/linux-drivers/iio-transceiver/adrv9002

    If so, how do I do a git for all the files I need. There are links to a few files, but there are a lot of includes that are not listed.

    Should I start with the adrv9001-sdk.zip? found at https://www.analog.com/en/design-center/landing-pages/001/transceiver-evaluation-software.html ?

    I can build this, but it does not seem very portable to another platform.

    Thanks again

  • libiio can be used locally or remotely. When the context is created you just have to tell it what you want to connect to.

    The command line tools that come on the board (iio_info, iio_attr, ...) all use libiio.

    -Travis

  • Hi Guys,

    Petalinux boot hangs 

    I am attempting to use the Petalinux build for the ADRV9002+ZCU102 that you referenced, as a starting point for the adrv9002 on the zcuj106 board..

    I followed the notes in meta-adi-xilinx/README.md, for adding this to yacto and then adding a new device tree. 

    Petalinux builds OK, but hangs on boot.

    If I remove the yacto user layers that reference meta-adi-core and meta-adi-xilinx, then it boots just fine.
    Note that the same .xsa and bit file are used in both cases.

    I captured the boot via the serial port into files.

    I noticed that the build that uses the meta-adi in the yacto user layers has Model: ZynqMP ZCU102 Rev1.0. Even though the board is defined as zcu106-reva.

    I am guessing that the model is being overwritten by the meta-adi stuff???

    I am also guessing that this is the reason for the boot hanging?

    Any suggestions on how to resolve this?

    The two boot files are attached.

    Thanks

    =============================

    Xilinx Zynq MP First Stage Boot Loader
    Release 2020.1   Apr 20 2021  -  10:25:24
    NOTICE:  ATF running on XCZU7EV/silicon v4/RTL5.1 at 0xfffea000
    NOTICE:  BL31: v2.2(release):v1.1-5588-g5918e656e
    NOTICE:  BL31: Built : 17:22:08, Apr 20 2021
    
    
    U-Boot 2020.01 (Apr 20 2021 - 17:51:23 +0000)
    
    Model: ZynqMP ZCU102 Rev1.0
    Board: Xilinx ZynqMP
    DRAM:  4 GiB
    PMUFW:  v1.1
    EL Level:       EL2
    Chip ID:        zu7ev
    NAND:  0 MiB
    MMC:   mmc@ff170000: 0
    In:    serial@ff000000
    Out:   serial@ff000000
    Err:   serial@ff000000
    Bootmode: LVL_SHFT_SD_MODE1
    Reset reason:   EXTERNAL
    Net:
    ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 12, interface rgmii-id
    
    Warning: ethernet@ff0e0000 using MAC address from ROM
    eth0: ethernet@ff0e0000
    Hit any key to stop autoboot:  0
    switch to partitions #0, OK
    mmc0 is current device
    Scanning mmc 0:1...
    Found U-Boot script /boot.scr
    2007 bytes read in 19 ms (102.5 KiB/s)
    ## Executing script at 20000000
    9839556 bytes read in 670 ms (14 MiB/s)
    ## Loading kernel from FIT Image at 10000000 ...
       Using 'conf@system-top.dtb' configuration
       Trying 'kernel@1' kernel subimage
         Description:  Linux kernel
         Type:         Kernel Image
         Compression:  gzip compressed
         Data Start:   0x100000f4
         Data Size:    9776482 Bytes = 9.3 MiB
         Architecture: AArch64
         OS:           Linux
         Load Address: 0x00080000
         Entry Point:  0x00080000
         Hash algo:    sha256
         Hash value:   ac9c79008a958851fb4b18be5c41ad2f08b3b358611c2975a306d3e7fc6a5d73
       Verifying Hash Integrity ... sha256+ OK
    ## Loading fdt from FIT Image at 10000000 ...
       Using 'conf@system-top.dtb' configuration
       Trying 'fdt@system-top.dtb' fdt subimage
         Description:  Flattened Device Tree blob
         Type:         Flat Device Tree
         Compression:  uncompressed
         Data Start:   0x10952f68
         Data Size:    61169 Bytes = 59.7 KiB
         Architecture: AArch64
         Hash algo:    sha256
         Hash value:   826298b2f69ff85253b8d1a38db10b39e2364d3ede73130127c1ee82389fedb8
       Verifying Hash Integrity ... sha256+ OK
       Booting using the fdt blob at 0x10952f68
       Uncompressing Kernel Image
       Loading Device Tree to 000000000ffee000, end 000000000ffffef0 ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 5.4.0 (oe-user@oe-host) (gcc version 9.2.0 (GCC)) #1 SMP Tue Apr 20 12:44:42 UTC 2021
    [    0.000000] Machine model: ZynqMP ZCU102 Rev1.0
    [    0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8')
    [    0.000000] printk: bootconsole [cdns0] enabled
    [    0.000000] efi: Getting EFI parameters from FDT:
    [    0.000000] efi: UEFI not found.
    [    0.000000] cma: Reserved 256 MiB at 0x0000000070000000
    [    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.1
    [    0.000000] percpu: Embedded 21 pages/cpu s48600 r8192 d29224 u86016
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] Speculative Store Bypass Disable mitigation not required
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1034240
    [    0.000000] Kernel command line: earlycon clk_ignore_unused console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 uio_pdrv_genirq.of_id="generic-uio"
    [    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] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: mapped [mem 0x6c000000-0x70000000] (64MB)
    [    0.000000] Memory: 3766380K/4194304K available (13372K kernel code, 1510K rwdata, 11468K rodata, 768K init, 324K bss, 165780K reserved, 262144K cma-reserved)
    [    0.000000] rcu: Hierarchical RCU implementation.
    [    0.000000] rcu:     RCU event tracing is enabled.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
    [    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] GIC: Adjusting CPU interface base to 0x00000000f902f000
    [    0.000000] GIC: Using split EOI/Deactivate mode
    [    0.000000] random: get_random_bytes called from start_kernel+0x2a8/0x43c with crng_init=0
    [    0.000000] arch_timer: cp15 timer(s) running at 100.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x171024e7e0, max_idle_ns: 440795205315 ns
    [    0.000003] sched_clock: 56 bits at 100MHz, resolution 10ns, wraps every 4398046511100ns
    [    0.008437] Console: colour dummy device 80x25
    [    0.012476] Calibrating delay loop (skipped), value calculated using timer frequency.. 200.00 BogoMIPS (lpj=400000)
    [    0.022840] pid_max: default: 32768 minimum: 301
    [    0.027535] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
    [    0.034787] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
    [    0.043360] ASID allocator initialised with 32768 entries
    [    0.047974] rcu: Hierarchical SRCU implementation.
    [    0.052964] EFI services will not be available.
    [    0.057296] smp: Bringing up secondary CPUs ...
    [    0.061984] Detected VIPT I-cache on CPU1
    [    0.062014] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.062349] Detected VIPT I-cache on CPU2
    [    0.062367] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
    [    0.062677] Detected VIPT I-cache on CPU3
    [    0.062695] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
    [    0.062741] smp: Brought up 1 node, 4 CPUs
    [    0.097142] SMP: Total of 4 processors activated.
    [    0.101814] CPU features: detected: 32-bit EL0 Support
    [    0.106918] CPU features: detected: CRC32 instructions
    [    0.112051] CPU: All CPU(s) started at EL2
    [    0.116097] alternatives: patching kernel code
    [    0.121548] devtmpfs: initialized
    [    0.130125] Registered cp15_barrier emulation handler
    [    0.130173] Registered setend emulation handler
    [    0.134153] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.143736] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
    [    0.156648] xor: measuring software checksum speed
    [    0.194631]    8regs     :  2375.000 MB/sec
    [    0.234655]    32regs    :  2725.000 MB/sec
    [    0.274685]    arm64_neon:  2365.000 MB/sec
    [    0.274722] xor: using function: 32regs (2725.000 MB/sec)
    [    0.278597] pinctrl core: initialized pinctrl subsystem
    [    0.284411] NET: Registered protocol family 16
    [    0.289156] DMA: preallocated 256 KiB pool for atomic allocations
    [    0.294265] audit: initializing netlink subsys (disabled)
    [    0.299713] audit: type=2000 audit(0.236:1): state=initialized audit_enabled=0 res=1
    [    0.307331] cpuidle: using governor menu
    [    0.311354] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.325287] irq: type mismatch, failed to map hwirq-138 for interrupt-controller@f9010000!
    [    0.334271] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.335317] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.341985] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.348642] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
    [    1.429144] DRBG: Continuing without Jitter RNG
    [    1.504655] raid6: neonx8   gen()  1558 MB/s
    [    1.572703] raid6: neonx8   xor()  1460 MB/s
    [    1.640778] raid6: neonx4   gen()  1475 MB/s
    [    1.708789] raid6: neonx4   xor()  1418 MB/s
    [    1.776851] raid6: neonx2   gen()  1122 MB/s
    [    1.844892] raid6: neonx2   xor()  1172 MB/s
    [    1.912981] raid6: neonx1   gen()   728 MB/s
    [    1.981001] raid6: neonx1   xor()   880 MB/s
    [    2.049023] raid6: int64x8  gen()  1160 MB/s
    [    2.117087] raid6: int64x8  xor()   750 MB/s
    [    2.185143] raid6: int64x4  gen()   977 MB/s
    [    2.253159] raid6: int64x4  xor()   733 MB/s
    [    2.321260] raid6: int64x2  gen()   678 MB/s
    [    2.389267] raid6: int64x2  xor()   592 MB/s
    [    2.457376] raid6: int64x1  gen()   450 MB/s
    [    2.525384] raid6: int64x1  xor()   452 MB/s
    [    2.525421] raid6: using algorithm neonx8 gen() 1558 MB/s
    [    2.529375] raid6: .... xor() 1460 MB/s, rmw enabled
    [    2.534305] raid6: using neon recovery algorithm
    [    2.539368] iommu: Default domain type: Translated
    [    2.543933] SCSI subsystem initialized
    [    2.547600] usbcore: registered new interface driver usbfs
    [    2.552930] usbcore: registered new interface driver hub
    [    2.558211] usbcore: registered new device driver usb
    [    2.563343] mc: Linux media interface: v0.10
    [    2.567451] videodev: Linux video capture interface: v2.00
    [    2.572923] pps_core: LinuxPPS API ver. 1 registered
    [    2.577815] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    2.586906] PTP clock support registered
    [    2.590799] EDAC MC: Ver: 3.0.0
    [    2.594279] zynqmp-ipi-mbox mailbox@ff990400: Registered ZynqMP IPI mbox with TX/RX channels.
    [    2.602772] jesd204: found 0 devices and 0 topologies
    [    2.607432] FPGA manager framework
    [    2.610916] Advanced Linux Sound Architecture Driver Initialized.
    [    2.617093] Bluetooth: Core ver 2.22
    [    2.620384] NET: Registered protocol family 31
    [    2.624786] Bluetooth: HCI device and connection manager initialized
    [    2.631102] Bluetooth: HCI socket layer initialized
    [    2.635944] Bluetooth: L2CAP socket layer initialized
    [    2.640966] Bluetooth: SCO socket layer initialized
    [    2.646179] clocksource: Switched to clocksource arch_sys_counter
    [    2.651940] VFS: Disk quotas dquot_6.6.0
    [    2.655789] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    2.666536] NET: Registered protocol family 2
    [    2.667222] tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear)
    [    2.675434] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    2.683461] TCP bind hash table entries: 32768 (order: 7, 524288 bytes, linear)
    [    2.690918] TCP: Hash tables configured (established 32768 bind 32768)
    [    2.697081] UDP hash table entries: 2048 (order: 4, 65536 bytes, linear)
    [    2.703747] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear)
    [    2.710911] NET: Registered protocol family 1
    [    2.715326] RPC: Registered named UNIX socket transport module.
    [    2.720981] RPC: Registered udp transport module.
    [    2.725651] RPC: Registered tcp transport module.
    [    2.730317] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    2.736941] PCI: CLS 0 bytes, default 64
    [    2.741056] hw perfevents: no interrupt-affinity property for /pmu, guessing.
    [    2.747856] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
    [    2.756215] Initialise system trusted keyrings
    [    2.759892] workingset: timestamp_bits=62 max_order=20 bucket_order=0
    [    2.766851] NFS: Registering the id_resolver key type
    [    2.771245] Key type id_resolver registered
    [    2.775382] Key type id_legacy registered
    [    2.779367] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    2.786036] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
    [    2.805787] NET: Registered protocol family 38
    [    2.805828] Key type asymmetric registered
    [    2.808661] Asymmetric key parser 'x509' registered
    [    2.813518] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
    [    2.820856] io scheduler mq-deadline registered
    [    2.825352] io scheduler kyber registered
    [    2.856355] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
    [    2.861606] cacheinfo: Unable to detect cache hierarchy for CPU 0
    [    2.866988] brd: module loaded
    [    2.871137] loop: module loaded
    [    2.871335] Registered mathworks_ip class
    [    2.874166] mtdoops: mtd device (mtddev=name/number) must be supplied
    [    2.880858] libphy: Fixed MDIO Bus: probed
    [    2.884685] tun: Universal TUN/TAP device driver, 1.6
    [    2.888801] CAN device driver interface
    [    2.893555] usbcore: registered new interface driver asix
    [    2.897939] usbcore: registered new interface driver ax88179_178a
    [    2.903970] usbcore: registered new interface driver cdc_ether
    [    2.909761] usbcore: registered new interface driver net1080
    [    2.915384] usbcore: registered new interface driver cdc_subset
    [    2.921267] usbcore: registered new interface driver zaurus
    [    2.926812] usbcore: registered new interface driver cdc_ncm
    [    2.933291] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    [    2.938894] ehci-pci: EHCI PCI platform driver
    [    2.943643] usbcore: registered new interface driver uas
    [    2.948608] usbcore: registered new interface driver usb-storage
    [    2.954603] usbcore: registered new interface driver usbserial_generic
    [    2.961053] usbserial: USB Serial support registered for generic
    [    2.967024] usbcore: registered new interface driver ftdi_sio
    [    2.972728] usbserial: USB Serial support registered for FTDI USB Serial Device
    [    2.979997] usbcore: registered new interface driver upd78f0730
    [    2.985877] usbserial: USB Serial support registered for upd78f0730
    [    2.993696] rtc_zynqmp ffa60000.rtc: registered as rtc0
    [    2.997347] i2c /dev entries driver
    [    3.003031] usbcore: registered new interface driver uvcvideo
    [    3.006451] USB Video Class driver (1.1.1)
    [    3.012093] Bluetooth: HCI UART driver ver 2.3
    [    3.014934] Bluetooth: HCI UART protocol H4 registered
    [    3.020032] Bluetooth: HCI UART protocol BCSP registered
    [    3.025322] Bluetooth: HCI UART protocol LL registered
    [    3.030410] Bluetooth: HCI UART protocol ATH3K registered
    [    3.035786] Bluetooth: HCI UART protocol Three-wire (H5) registered
    [    3.042041] Bluetooth: HCI UART protocol Intel registered
    [    3.047376] Bluetooth: HCI UART protocol QCA registered
    [    3.052579] usbcore: registered new interface driver bcm203x
    [    3.058202] usbcore: registered new interface driver bpa10x
    [    3.063735] usbcore: registered new interface driver bfusb
    [    3.069186] usbcore: registered new interface driver btusb
    [    3.074649] usbcore: registered new interface driver ath3k
    [    3.080174] EDAC MC: ECC not enabled
    [    3.083773] EDAC DEVICE0: Giving out device to module zynqmp-ocm-edac controller zynqmp_ocm: DEV ff960000.memory-controller (INTERRUPT)
    [    3.096173] sdhci: Secure Digital Host Controller Interface driver
    [    3.101861] sdhci: Copyright(c) Pierre Ossman
    [    3.106184] sdhci-pltfm: SDHCI platform and OF driver helper
    [    3.112244] ledtrig-cpu: registered to indicate activity on CPUs
    [    3.117823] zynqmp_firmware_probe Platform Management API v1.1
    [    3.123574] zynqmp_firmware_probe Trustzone version v1.0
    [    3.132061] zynqmp-pinctrl firmware:zynqmp-firmware:pinctrl: zynqmp pinctrl initialized
    [    3.160764] alg: No test for xilinx-zynqmp-aes (zynqmp-aes)
    [    3.160933] zynqmp_aes zynqmp_aes: AES Successfully Registered
    [    3.160933]
    [    3.168257] alg: No test for xilinx-keccak-384 (zynqmp-keccak-384)
    [    3.174436] alg: No test for xilinx-zynqmp-rsa (zynqmp-rsa)
    [    3.179994] usbcore: registered new interface driver usbhid
    [    3.185265] usbhid: USB HID core driver
    [   24.198173] rcu: INFO: rcu_sched detected stalls on CPUs/tasks:
    [   24.198447] rcu:     3-...0: (0 ticks this GP) idle=ff6/1/0x4000000000000000 softirq=65/65 fqs=2626
    [   24.207267]  (detected by 0, t=5254 jiffies, g=-1075, q=13)
    [   24.212801] Task dump for CPU 3:
    [   24.216002] swapper/0       R  running task        0     1      0 0x0000000a
    [   24.223008] Call trace:
    [   24.225437]  __switch_to+0x1c4/0x288
    [   24.228978]  0xffffff887a05f1f1
    
    

    ====================================

    Xilinx Zynq MP First Stage Boot Loader
    Release 2020.1   Apr 20 2021  -  18:28:49
    NOTICE:  ATF running on XCZU7EV/silicon v4/RTL5.1 at 0xfffea000
    NOTICE:  BL31: v2.2(release):v1.1-5588-g5918e656e
    NOTICE:  BL31: Built : 18:37:38, Apr 20 2021
    
    
    U-Boot 2020.01 (Apr 20 2021 - 18:38:17 +0000)
    
    Model: ZynqMP ZCU106 RevA
    Board: Xilinx ZynqMP
    DRAM:  4 GiB
    PMUFW:  v1.1
    EL Level:       EL2
    Chip ID:        zu7ev
    NAND:  0 MiB
    MMC:   mmc@ff170000: 0
    In:    serial@ff000000
    Out:   serial@ff000000
    Err:   serial@ff000000
    Bootmode: LVL_SHFT_SD_MODE1
    Reset reason:   EXTERNAL
    Net:
    ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 12, interface rgmii-id
    
    Warning: ethernet@ff0e0000 using MAC address from DT
    eth0: ethernet@ff0e0000
    Hit any key to stop autoboot:  0
    switch to partitions #0, OK
    mmc0 is current device
    Scanning mmc 0:1...
    Found U-Boot script /boot.scr
    2007 bytes read in 18 ms (108.4 KiB/s)
    ## Executing script at 20000000
    7898284 bytes read in 539 ms (14 MiB/s)
    ## Loading kernel from FIT Image at 10000000 ...
       Using 'conf@system-top.dtb' configuration
       Trying 'kernel@1' kernel subimage
         Description:  Linux kernel
         Type:         Kernel Image
         Compression:  gzip compressed
         Data Start:   0x100000e8
         Data Size:    7840927 Bytes = 7.5 MiB
         Architecture: AArch64
         OS:           Linux
         Load Address: 0x00080000
         Entry Point:  0x00080000
         Hash algo:    sha256
         Hash value:   942468e6363e5dbacfdeb0fee83bebde09095c2eeb7b61ce3601d1eeeda420c5
       Verifying Hash Integrity ... sha256+ OK
    ## Loading fdt from FIT Image at 10000000 ...
       Using 'conf@system-top.dtb' configuration
       Trying 'fdt@system-top.dtb' fdt subimage
         Description:  Flattened Device Tree blob
         Type:         Flat Device Tree
         Compression:  uncompressed
         Data Start:   0x1077a698
         Data Size:    55468 Bytes = 54.2 KiB
         Architecture: AArch64
         Hash algo:    sha256
         Hash value:   6dfb7c53c9b70ca57bcb4e798a75e53d271ce79687b5d636e5bd630994fcc249
       Verifying Hash Integrity ... sha256+ OK
       Booting using the fdt blob at 0x1077a698
       Uncompressing Kernel Image
       Loading Device Tree to 000000000ffef000, end 000000000ffff8ab ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 5.4.0 (oe-user@oe-host) (gcc version 9.2.0 (GCC)) #1 SMP Tue Apr 20 18:37:48 UTC 2021
    [    0.000000] Machine model: ZynqMP ZCU106 RevA
    [    0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8')
    [    0.000000] printk: bootconsole [cdns0] enabled
    [    0.000000] efi: Getting EFI parameters from FDT:
    [    0.000000] efi: UEFI not found.
    [    0.000000] cma: Reserved 256 MiB at 0x000000006fc00000
    [    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.1
    [    0.000000] percpu: Embedded 21 pages/cpu s48664 r8192 d29160 u86016
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] Speculative Store Bypass Disable mitigation not required
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1033987
    [    0.000000] Kernel command line: earlycon clk_ignore_unused console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 uio_pdrv_genirq.of_id="generic-uio"
    [    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] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: mapped [mem 0x6bc00000-0x6fc00000] (64MB)
    [    0.000000] Memory: 3776448K/4193280K available (11196K kernel code, 618K rwdata, 3532K rodata, 704K init, 310K bss, 154688K reserved, 262144K cma-reserved)
    [    0.000000] rcu: Hierarchical RCU implementation.
    [    0.000000] rcu:     RCU event tracing is enabled.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
    [    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] GIC: Adjusting CPU interface base to 0x00000000f902f000
    [    0.000000] GIC: Using split EOI/Deactivate mode
    [    0.000000] random: get_random_bytes called from start_kernel+0x2a8/0x43c with crng_init=0
    [    0.000000] arch_timer: cp15 timer(s) running at 100.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x171024e7e0, max_idle_ns: 440795205315 ns
    [    0.000003] sched_clock: 56 bits at 100MHz, resolution 10ns, wraps every 4398046511100ns
    [    0.008419] Console: colour dummy device 80x25
    [    0.012477] Calibrating delay loop (skipped), value calculated using timer frequency.. 200.00 BogoMIPS (lpj=400000)
    [    0.022840] pid_max: default: 32768 minimum: 301
    [    0.027539] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
    [    0.034788] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
    [    0.043356] ASID allocator initialised with 32768 entries
    [    0.047975] rcu: Hierarchical SRCU implementation.
    [    0.052938] EFI services will not be available.
    [    0.057299] smp: Bringing up secondary CPUs ...
    [    0.061986] Detected VIPT I-cache on CPU1
    [    0.062017] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.062346] Detected VIPT I-cache on CPU2
    [    0.062365] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
    [    0.062669] Detected VIPT I-cache on CPU3
    [    0.062688] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
    [    0.062734] smp: Brought up 1 node, 4 CPUs
    [    0.097142] SMP: Total of 4 processors activated.
    [    0.101814] CPU features: detected: 32-bit EL0 Support
    [    0.106918] CPU features: detected: CRC32 instructions
    [    0.112052] CPU: All CPU(s) started at EL2
    [    0.116097] alternatives: patching kernel code
    [    0.121528] devtmpfs: initialized
    [    0.129529] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.133625] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
    [    0.146542] xor: measuring software checksum speed
    [    0.184527]    8regs     :  2375.000 MB/sec
    [    0.224554]    32regs    :  2725.000 MB/sec
    [    0.264581]    arm64_neon:  2365.000 MB/sec
    [    0.264618] xor: using function: 32regs (2725.000 MB/sec)
    [    0.268493] pinctrl core: initialized pinctrl subsystem
    [    0.274294] NET: Registered protocol family 16
    [    0.279046] DMA: preallocated 256 KiB pool for atomic allocations
    [    0.284165] audit: initializing netlink subsys (disabled)
    [    0.289611] audit: type=2000 audit(0.232:1): state=initialized audit_enabled=0 res=1
    [    0.297226] cpuidle: using governor menu
    [    0.301240] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.320795] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.321841] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.328510] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.335169] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
    [    1.415470] DRBG: Continuing without Jitter RNG
    [    1.490556] raid6: neonx8   gen()  1549 MB/s
    [    1.558589] raid6: neonx8   xor()  1466 MB/s
    [    1.626635] raid6: neonx4   gen()  1489 MB/s
    [    1.694681] raid6: neonx4   xor()  1430 MB/s
    [    1.762742] raid6: neonx2   gen()  1135 MB/s
    [    1.830772] raid6: neonx2   xor()  1189 MB/s
    [    1.898851] raid6: neonx1   gen()   740 MB/s
    [    1.966879] raid6: neonx1   xor()   895 MB/s
    [    2.034937] raid6: int64x8  gen()  1166 MB/s
    [    2.102948] raid6: int64x8  xor()   763 MB/s
    [    2.171032] raid6: int64x4  gen()   984 MB/s
    [    2.239056] raid6: int64x4  xor()   740 MB/s
    [    2.307105] raid6: int64x2  gen()   683 MB/s
    [    2.375163] raid6: int64x2  xor()   600 MB/s
    [    2.443188] raid6: int64x1  gen()   451 MB/s
    [    2.511273] raid6: int64x1  xor()   460 MB/s
    [    2.511310] raid6: using algorithm neonx8 gen() 1549 MB/s
    [    2.515267] raid6: .... xor() 1466 MB/s, rmw enabled
    [    2.520197] raid6: using neon recovery algorithm
    [    2.525230] iommu: Default domain type: Translated
    [    2.529821] SCSI subsystem initialized
    [    2.533475] usbcore: registered new interface driver usbfs
    [    2.538820] usbcore: registered new interface driver hub
    [    2.544101] usbcore: registered new device driver usb
    [    2.549130] mc: Linux media interface: v0.10
    [    2.553342] videodev: Linux video capture interface: v2.00
    [    2.558792] pps_core: LinuxPPS API ver. 1 registered
    [    2.563707] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    2.572800] PTP clock support registered
    [    2.576691] EDAC MC: Ver: 3.0.0
    [    2.580169] zynqmp-ipi-mbox mailbox@ff990400: Registered ZynqMP IPI mbox with TX/RX channels.
    [    2.588470] FPGA manager framework
    [    2.591778] Advanced Linux Sound Architecture Driver Initialized.
    [    2.597948] Bluetooth: Core ver 2.22
    [    2.601262] NET: Registered protocol family 31
    [    2.605661] Bluetooth: HCI device and connection manager initialized
    [    2.611977] Bluetooth: HCI socket layer initialized
    [    2.616820] Bluetooth: L2CAP socket layer initialized
    [    2.621841] Bluetooth: SCO socket layer initialized
    [    2.626983] clocksource: Switched to clocksource arch_sys_counter
    [    2.632808] VFS: Disk quotas dquot_6.6.0
    [    2.636666] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    2.647245] NET: Registered protocol family 2
    [    2.648089] tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear)
    [    2.656312] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    2.664337] TCP bind hash table entries: 32768 (order: 7, 524288 bytes, linear)
    [    2.671794] TCP: Hash tables configured (established 32768 bind 32768)
    [    2.677958] UDP hash table entries: 2048 (order: 4, 65536 bytes, linear)
    [    2.684621] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear)
    [    2.691785] NET: Registered protocol family 1
    [    2.696221] RPC: Registered named UNIX socket transport module.
    [    2.701856] RPC: Registered udp transport module.
    [    2.706522] RPC: Registered tcp transport module.
    [    2.711192] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    2.717836] PCI: CLS 0 bytes, default 64
    [    2.721897] hw perfevents: no interrupt-affinity property for /pmu, guessing.
    [    2.728730] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
    [    2.737081] Initialise system trusted keyrings
    [    2.740760] workingset: timestamp_bits=62 max_order=20 bucket_order=0
    [    2.747749] NFS: Registering the id_resolver key type
    [    2.752118] Key type id_resolver registered
    [    2.756258] Key type id_legacy registered
    [    2.760242] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    2.766912] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    [    2.786648] NET: Registered protocol family 38
    [    2.786689] Key type asymmetric registered
    [    2.789520] Asymmetric key parser 'x509' registered
    [    2.794380] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247)
    [    2.801715] io scheduler mq-deadline registered
    [    2.806212] io scheduler kyber registered
    [    2.835042] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
    [    2.839742] cacheinfo: Unable to detect cache hierarchy for CPU 0
    [    2.845560] brd: module loaded
    [    2.849653] loop: module loaded
    [    2.850518] mtdoops: mtd device (mtddev=name/number) must be supplied
    [    2.855530] libphy: Fixed MDIO Bus: probed
    [    2.859349] tun: Universal TUN/TAP device driver, 1.6
    [    2.863513] CAN device driver interface
    [    2.868227] usbcore: registered new interface driver asix
    [    2.872641] usbcore: registered new interface driver ax88179_178a
    [    2.878676] usbcore: registered new interface driver cdc_ether
    [    2.884471] usbcore: registered new interface driver net1080
    [    2.890093] usbcore: registered new interface driver cdc_subset
    [    2.895974] usbcore: registered new interface driver zaurus
    [    2.901520] usbcore: registered new interface driver cdc_ncm
    [    2.907970] usbcore: registered new interface driver uas
    [    2.912421] usbcore: registered new interface driver usb-storage
    [    2.918921] rtc_zynqmp ffa60000.rtc: registered as rtc0
    [    2.923610] i2c /dev entries driver
    [    2.928824] usbcore: registered new interface driver uvcvideo
    [    2.932719] USB Video Class driver (1.1.1)
    [    2.937750] Bluetooth: HCI UART driver ver 2.3
    [    2.941202] Bluetooth: HCI UART protocol H4 registered
    [    2.946300] Bluetooth: HCI UART protocol BCSP registered
    [    2.951590] Bluetooth: HCI UART protocol LL registered
    [    2.956678] Bluetooth: HCI UART protocol ATH3K registered
    [    2.962053] Bluetooth: HCI UART protocol Three-wire (H5) registered
    [    2.968308] Bluetooth: HCI UART protocol Intel registered
    [    2.973647] Bluetooth: HCI UART protocol QCA registered
    [    2.978846] usbcore: registered new interface driver bcm203x
    [    2.984466] usbcore: registered new interface driver bpa10x
    [    2.990005] usbcore: registered new interface driver bfusb
    [    2.995454] usbcore: registered new interface driver btusb
    [    3.000913] usbcore: registered new interface driver ath3k
    [    3.006443] EDAC MC: ECC not enabled
    [    3.010032] EDAC DEVICE0: Giving out device to module zynqmp-ocm-edac controller zynqmp_ocm: DEV ff960000.memory-controller (INTERRUPT)
    [    3.022398] sdhci: Secure Digital Host Controller Interface driver
    [    3.028129] sdhci: Copyright(c) Pierre Ossman
    [    3.032452] sdhci-pltfm: SDHCI platform and OF driver helper
    [    3.038461] ledtrig-cpu: registered to indicate activity on CPUs
    [    3.044085] zynqmp_firmware_probe Platform Management API v1.1
    [    3.049841] zynqmp_firmware_probe Trustzone version v1.0
    [    3.058295] zynqmp-pinctrl firmware:zynqmp-firmware:pinctrl: zynqmp pinctrl initialized
    [    3.086749] alg: No test for xilinx-zynqmp-aes (zynqmp-aes)
    [    3.086935] zynqmp_aes zynqmp_aes: AES Successfully Registered
    [    3.086935]
    [    3.094221] alg: No test for xilinx-keccak-384 (zynqmp-keccak-384)
    [    3.100417] alg: No test for xilinx-zynqmp-rsa (zynqmp-rsa)
    [    3.105962] usbcore: registered new interface driver usbhid
    [    3.111248] usbhid: USB HID core driver
    [    3.117388] fpga_manager fpga0: Xilinx ZynqMP FPGA Manager registered
    [    3.121780] usbcore: registered new interface driver snd-usb-audio
    [    3.128525] pktgen: Packet Generator for packet performance testing. Version: 2.75
    [    3.135497] Initializing XFRM netlink socket
    [    3.139434] NET: Registered protocol family 10
    [    3.144147] Segment Routing with IPv6
    [    3.147491] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [    3.153594] NET: Registered protocol family 17
    [    3.157705] NET: Registered protocol family 15
    [    3.162119] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
    [    3.175031] can: controller area network core (rev 20170425 abi 9)
    [    3.181166] NET: Registered protocol family 29
    [    3.185551] can: raw protocol (rev 20170425)
    [    3.189787] can: broadcast manager protocol (rev 20170425 t)
    [    3.195411] can: netlink gateway (rev 20190810) max_hops=1
    [    3.200935] Bluetooth: RFCOMM TTY layer initialized
    [    3.205711] Bluetooth: RFCOMM socket layer initialized
    [    3.210827] Bluetooth: RFCOMM ver 1.11
    [    3.214530] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
    [    3.219801] Bluetooth: BNEP filters: protocol multicast
    [    3.224995] Bluetooth: BNEP socket layer initialized
    [    3.229922] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
    [    3.235806] Bluetooth: HIDP socket layer initialized
    [    3.240853] 9pnet: Installing 9P2000 support
    [    3.244991] Key type dns_resolver registered
    [    3.249465] registered taskstats version 1
    [    3.253283] Loading compiled-in X.509 certificates
    [    3.258394] Btrfs loaded, crc32c=crc32c-generic
    [    3.270869] ff000000.serial: ttyPS0 at MMIO 0xff000000 (irq = 44, base_baud = 6249999) is a xuartps
    [    3.279887] printk: console [ttyPS0] enabled
    [    3.279887] printk: console [ttyPS0] enabled
    [    3.284183] printk: bootconsole [cdns0] disabled
    [    3.284183] printk: bootconsole [cdns0] disabled
    [    3.293660] ff010000.serial: ttyPS1 at MMIO 0xff010000 (irq = 45, base_baud = 6249999) is a xuartps
    [    3.306913] of-fpga-region fpga-full: FPGA Region probed
    [    3.313879] xilinx-dpdma fd4c0000.dma: Xilinx DPDMA engine is probed
    [    3.320448] xilinx-zynqmp-dma fd500000.dma: ZynqMP DMA driver Probe success
    [    3.327555] xilinx-zynqmp-dma fd510000.dma: ZynqMP DMA driver Probe success
    [    3.334659] xilinx-zynqmp-dma fd520000.dma: ZynqMP DMA driver Probe success
    [    3.341761] xilinx-zynqmp-dma fd530000.dma: ZynqMP DMA driver Probe success
    [    3.348863] xilinx-zynqmp-dma fd540000.dma: ZynqMP DMA driver Probe success
    [    3.355960] xilinx-zynqmp-dma fd550000.dma: ZynqMP DMA driver Probe success
    [    3.363076] xilinx-zynqmp-dma fd560000.dma: ZynqMP DMA driver Probe success
    [    3.370179] xilinx-zynqmp-dma fd570000.dma: ZynqMP DMA driver Probe success
    [    3.377353] xilinx-zynqmp-dma ffa80000.dma: ZynqMP DMA driver Probe success
    [    3.384456] xilinx-zynqmp-dma ffa90000.dma: ZynqMP DMA driver Probe success
    [    3.391559] xilinx-zynqmp-dma ffaa0000.dma: ZynqMP DMA driver Probe success
    [    3.398660] xilinx-zynqmp-dma ffab0000.dma: ZynqMP DMA driver Probe success
    [    3.405757] xilinx-zynqmp-dma ffac0000.dma: ZynqMP DMA driver Probe success
    [    3.412856] xilinx-zynqmp-dma ffad0000.dma: ZynqMP DMA driver Probe success
    [    3.419957] xilinx-zynqmp-dma ffae0000.dma: ZynqMP DMA driver Probe success
    [    3.427071] xilinx-zynqmp-dma ffaf0000.dma: ZynqMP DMA driver Probe success
    [    3.434382] xilinx-psgtr fd400000.zynqmp_phy: Lane:1 type:8 protocol:4 pll_locked:yes
    [    3.446169] zynqmp_clk_divider_set_rate() set divider failed for pl3_ref_div1, ret = -13
    [    3.454931] xilinx-dp-snd-codec fd4a0000.zynqmp-display:zynqmp_dp_snd_codec0: Xilinx DisplayPort Sound Codec probed
    [    3.465610] xilinx-dp-snd-pcm zynqmp_dp_snd_pcm0: Xilinx DisplayPort Sound PCM probed
    [    3.473655] xilinx-dp-snd-pcm zynqmp_dp_snd_pcm1: Xilinx DisplayPort Sound PCM probed
    [    3.481945] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: xilinx-dp-snd-codec-dai <-> xilinx-dp-snd-codec-dai mapping ok
    [    3.494374] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: xilinx-dp-snd-codec-dai <-> xilinx-dp-snd-codec-dai mapping ok
    [    3.507072] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: Xilinx DisplayPort Sound Card probed
    [    3.517233] OF: graph: no port node found in /amba/zynqmp-display@fd4a0000
    [    3.524197] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [    3.530803] [drm] No driver support for vblank timestamp query.
    [    3.536783] xlnx-drm xlnx-drm.0: bound fd4a0000.zynqmp-display (ops 0xffffffc010c34270)
    [    4.623001] [drm] Cannot find any crtc or sizes
    [    4.627760] [drm] Initialized xlnx 1.0.0 20130509 for fd4a0000.zynqmp-display on minor 0
    [    4.635865] zynqmp-display fd4a0000.zynqmp-display: ZynqMP DisplayPort Subsystem driver probed
    [    4.644659] ahci-ceva fd0c0000.ahci: fd0c0000.ahci supply ahci not found, using dummy regulator
    [    4.653390] ahci-ceva fd0c0000.ahci: fd0c0000.ahci supply phy not found, using dummy regulator
    [    4.662039] ahci-ceva fd0c0000.ahci: fd0c0000.ahci supply target not found, using dummy regulator
    [    4.671053] xilinx-psgtr fd400000.zynqmp_phy: Lane:3 type:3 protocol:2 pll_locked:yes
    [    4.678928] ahci-ceva fd0c0000.ahci: AHCI 0001.0301 32 slots 2 ports 6 Gbps 0x3 impl platform mode
    [    4.687888] ahci-ceva fd0c0000.ahci: flags: 64bit ncq sntf pm clo only pmp fbs pio slum part ccc sds apst
    [    4.698201] scsi host0: ahci-ceva
    [    4.701745] scsi host1: ahci-ceva
    [    4.705170] ata1: SATA max UDMA/133 mmio [mem 0xfd0c0000-0xfd0c1fff] port 0x100 irq 40
    [    4.713081] ata2: SATA max UDMA/133 mmio [mem 0xfd0c0000-0xfd0c1fff] port 0x180 irq 40
    [    4.722278] spi-nor spi0.0: SPI-NOR-UniqueID 1044002eae970004fbff1a00a20b968eea
    [    4.729583] spi-nor spi0.0: found mt25qu512a (n25q512a), expected m25p80
    [    4.736609] spi-nor spi0.0: mt25qu512a (n25q512a) (131072 Kbytes)
    [    4.742713] 3 fixed-partitions partitions found on MTD device spi0.0
    [    4.749056] Creating 3 MTD partitions on "spi0.0":
    [    4.753843] 0x000000000000-0x000000100000 : "boot"
    [    4.759358] 0x000000100000-0x000000140000 : "bootenv"
    [    4.765033] 0x000000140000-0x000001740000 : "kernel"
    [    4.772635] macb ff0e0000.ethernet: Not enabling partial store and forward
    [    4.779951] libphy: MACB_mii_bus: probed
    [    4.785430] TI DP83867 ff0e0000.ethernet-ffffffff:0c: attached PHY driver [TI DP83867] (mii_bus:phy_addr=ff0e0000.ethernet-ffffffff:0c, irq=POLL)
    [    4.798473] macb ff0e0000.ethernet eth0: Cadence GEM rev 0x50070106 at 0xff0e0000 irq 30 (00:0a:35:00:22:01)
    [    4.808567] xilinx-axipmon ffa00000.perf-monitor: Probed Xilinx APM
    [    4.815093] xilinx-axipmon fd0b0000.perf-monitor: Probed Xilinx APM
    [    4.821574] xilinx-axipmon fd490000.perf-monitor: Probed Xilinx APM
    [    4.828060] xilinx-axipmon ffa10000.perf-monitor: Probed Xilinx APM
    [    4.835941] dwc3 fe200000.dwc3: Failed to get clk 'ref': -2
    [    4.841721] xilinx-psgtr fd400000.zynqmp_phy: Lane:2 type:0 protocol:3 pll_locked:yes
    [    4.852012] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    4.857503] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [    4.865263] xhci-hcd xhci-hcd.0.auto: hcc params 0x0238f625 hci version 0x100 quirks 0x0000000202010810
    [    4.874671] xhci-hcd xhci-hcd.0.auto: irq 54, io mem 0xfe200000
    [    4.880793] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04
    [    4.889053] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    4.896273] usb usb1: Product: xHCI Host Controller
    [    4.901140] usb usb1: Manufacturer: Linux 5.4.0 xhci-hcd
    [    4.906442] usb usb1: SerialNumber: xhci-hcd.0.auto
    [    4.911591] hub 1-0:1.0: USB hub found
    [    4.915353] hub 1-0:1.0: 1 port detected
    [    4.919448] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    4.924931] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
    [    4.932588] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
    [    4.939312] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04
    [    4.947572] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    4.954782] usb usb2: Product: xHCI Host Controller
    [    4.959652] usb usb2: Manufacturer: Linux 5.4.0 xhci-hcd
    [    4.964954] usb usb2: SerialNumber: xhci-hcd.0.auto
    [    4.970045] hub 2-0:1.0: USB hub found
    [    4.973808] hub 2-0:1.0: 1 port detected
    [    4.978773] pca953x 0-0020: 0-0020 supply vcc not found, using dummy regulator
    [    4.986685] pca953x 0-0021: 0-0021 supply vcc not found, using dummy regulator
    [    5.002205] i2c i2c-0: Added multiplexed i2c bus 3
    [    5.013005] i2c i2c-0: Added multiplexed i2c bus 4
    [    5.029738] random: fast init done
    [    5.033218] ata2: SATA link down (SStatus 0 SControl 330)
    [    5.038644] ata1: SATA link down (SStatus 0 SControl 330)
    [    5.064292] i2c i2c-0: Added multiplexed i2c bus 5
    [    5.069195] i2c i2c-0: Added multiplexed i2c bus 6
    [    5.073982] pca954x 0-0075: registered 4 multiplexed busses for I2C mux pca9544
    [    5.081311] cdns-i2c ff020000.i2c: 400 kHz mmio ff020000 irq 32
    [    5.088987] at24 7-0054: 1024 byte 24c08 EEPROM, writable, 1 bytes/write
    [    5.095713] i2c i2c-1: Added multiplexed i2c bus 7
    [    5.100699] i2c i2c-1: Added multiplexed i2c bus 8
    [    5.108305] si570 9-005d: registered, current frequency 300000000 Hz
    [    5.114678] i2c i2c-1: Added multiplexed i2c bus 9
    [    5.134339] si570 10-005d: registered, current frequency 148500000 Hz
    [    5.140797] i2c i2c-1: Added multiplexed i2c bus 10
    [    5.145850] si5324 11-0069: si5328 probed
    [    5.208737] si5324 11-0069: si5328 probe successful
    [    5.213642] i2c i2c-1: Added multiplexed i2c bus 11
    [    5.218712] i2c i2c-1: Added multiplexed i2c bus 12
    [    5.223701] i2c i2c-1: Added multiplexed i2c bus 13
    [    5.228692] i2c i2c-1: Added multiplexed i2c bus 14
    [    5.233563] pca954x 1-0074: registered 8 multiplexed busses for I2C switch pca9548
    [    5.241459] i2c i2c-1: Added multiplexed i2c bus 15
    [    5.246445] i2c i2c-1: Added multiplexed i2c bus 16
    [    5.251433] i2c i2c-1: Added multiplexed i2c bus 17
    [    5.256383] usb 1-1: new high-speed USB device number 2 using xhci-hcd
    [    5.263355] i2c i2c-1: Added multiplexed i2c bus 18
    [    5.268352] i2c i2c-1: Added multiplexed i2c bus 19
    [    5.273344] i2c i2c-1: Added multiplexed i2c bus 20
    [    5.278338] i2c i2c-1: Added multiplexed i2c bus 21
    [    5.283327] i2c i2c-1: Added multiplexed i2c bus 22
    [    5.288204] pca954x 1-0075: registered 8 multiplexed busses for I2C switch pca9548
    [    5.295790] cdns-i2c ff030000.i2c: 400 kHz mmio ff030000 irq 33
    [    5.305636] cdns-wdt fd4d0000.watchdog: Xilinx Watchdog Timer with timeout 60s
    [    5.313072] cdns-wdt ff150000.watchdog: Xilinx Watchdog Timer with timeout 10s
    [    5.353549] mmc0: SDHCI controller on ff170000.mmc [ff170000.mmc] using ADMA 64-bit
    [    5.363895] input: gpio-keys as /devices/platform/gpio-keys/input/input0
    [    5.370909] rtc_zynqmp ffa60000.rtc: setting system clock to 2021-04-20T18:53:58 UTC (1618944838)
    [    5.379783] of_cfs_init
    [    5.382231] of_cfs_init: OK
    [    5.385173] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [    5.408122] mmc0: new high speed SDHC card at address 5048
    [    5.413950] mmcblk0: mmc0:5048 DDINC 14.9 GiB
    [    5.419489]  mmcblk0: p1 p2
    [    5.433095] usb 1-1: New USB device found, idVendor=0bda, idProduct=5411, bcdDevice= 1.21
    [    5.441268] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [    5.448396] usb 1-1: Product: 4-Port USB 2.0 Hub
    [    5.453004] usb 1-1: Manufacturer: Generic
    [    5.515739] hub 1-1:1.0: USB hub found
    [    5.520385] hub 1-1:1.0: 4 ports detected
    [    5.521816] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [    5.530915] clk: Not disabling unused clocks
    [    5.535181] ALSA device list:
    [    5.538132]   #0: DisplayPort monitor
    [    5.542066] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
    [    5.550678] cfg80211: failed to load regulatory.db
    [    5.579515] usb 2-1: new SuperSpeed Gen 1 USB device number 2 using xhci-hcd
    [    5.592728] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem
    [    5.600038] EXT4-fs (mmcblk0p2): write access will be enabled during recovery
    [    5.616007] usb 2-1: New USB device found, idVendor=0bda, idProduct=0411, bcdDevice= 1.21
    [    5.624184] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [    5.631314] usb 2-1: Product: 4-Port USB 3.0 Hub
    [    5.635921] usb 2-1: Manufacturer: Generic
    [    5.694163] hub 2-1:1.0: USB hub found
    [    5.699512] hub 2-1:1.0: 4 ports detected
    [    5.751008] [drm] Cannot find any crtc or sizes
    [    5.874995] usb 1-1.1: new low-speed USB device number 3 using xhci-hcd
    [    5.983323] usb 1-1.1: New USB device found, idVendor=0461, idProduct=4d51, bcdDevice= 7.17
    [    5.991667] usb 1-1.1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
    [    5.998964] usb 1-1.1: Product: DELL Laser Mouse
    [    6.062327] input: DELL Laser Mouse as /devices/platform/amba/ff9d0000.usb0/fe200000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1.1/1-1.1:1.0/0003:0461:4D51.0001/input/input1
    [    6.077007] hid-generic 0003:0461:4D51.0001: input: USB HID v1.11 Mouse [DELL Laser Mouse] on usb-xhci-hcd.0.auto-1.1/input0
    [    6.166991] usb 1-1.4: new high-speed USB device number 4 using xhci-hcd
    [    6.272175] usb 1-1.4: New USB device found, idVendor=0bda, idProduct=8178, bcdDevice= 2.00
    [    6.280520] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [    6.287817] usb 1-1.4: Product: 802.11n WLAN Adapter
    [    6.292773] usb 1-1.4: Manufacturer: Realtek
    [    6.297034] usb 1-1.4: SerialNumber: 00e04c000001
    [    7.901283] EXT4-fs (mmcblk0p2): recovery complete
    [    7.912570] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [    7.920690] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
    [    7.928285] devtmpfs: mounted
    [    7.931402] Freeing unused kernel memory: 704K
    [    7.935874] Run /sbin/init as init process
    INIT: version 2.88 booting
    Starting udev
    [    8.329659] udevd[169]: starting version 3.2.8
    [    8.341029] random: udevd: uninitialized urandom read (16 bytes read)
    [    8.348210] random: udevd: uninitialized urandom read (16 bytes read)
    [    8.355452] random: udevd: uninitialized urandom read (16 bytes read)
    [    8.392390] udevd[170]: starting eudev-3.2.8
    [    8.491303] mali: loading out-of-tree module taints kernel.
    [    8.868517] cramfs: Unknown parameter 'umask'
    [    8.878010] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [    8.931764] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
    INIT: Entering runlevel: 5
    Configuring network interfaces... [    9.214341] pps pps0: new PPS source ptp0
    [    9.218364] macb ff0e0000.ethernet: gem-ptp-timer ptp clock registered.
    udhcpc: started, v1.31.0
    udhcpc: sending discover
    udhcpc: sending discover
    udhcpc: sending discover
    udhcpc: no lease, forking to background
    done.
    Starting system message bus: [   18.460380] urandom_read: 5 callbacks suppressed
    [   18.460385] random: dbus-daemon: uninitialized urandom read (12 bytes read)
    [   18.486285] random: dbus-daemon: uninitialized urandom read (12 bytes read)
    dbus.
    Starting haveged: haveged: listening socket at 3
    haveged: haveged starting up
    
    
    Starting Xserver
    Starting Dropbear SSH server: dropbear.
    Starting internet superserver: inetd
    .
    Starting syslogd/klogd: done
    Starting tcf-agent:
    X.Org X Server 1.20.5
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 3.10.0-693.el7.x86_64 x86_64
    Current Operating System: Linux dk-zcu106-osADI-2 5.4.0 #1 SMP Tue Apr 20 18:37:48 UTC 2021 aarch64
    Kernel command line: earlycon clk_ignore_unused console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 uio_pdrv_genirq.of_id="generic-uio"
    Build Date: 26 May 2020  09:01:47PM
    
    Current version of pixman: 0.38.4
            Before reporting problems, check http://wiki.x.org
            to make sure that you have the latest version.
    Markers: (--) probed, (**) from config file, (==) default setting,
            (++) from command line, (!!) notice, (II) informational,
            (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Tue Apr 20 18:54:11 2021
    (==) Using config file: "/etc/X11/xorg.conf"
    (==) Using system config directory "/usr/share/X11/xorg.conf.d"
    [   19.328625] random: crng init done
    OK
    
    PetaLinux 2020.1 dk-zcu106-osADI-2 /dev/ttyPS0
    
    dk-zcu106-osADI-2 login: The XKEYBOARD keymap compiler (xkbcomp) reports:
    > Warning:          Unsupported high keycode 372 for name <I372> ignored
    >                   X11 cannot support keycodes above 255.
    >                   This warning only shows for the first high keycode.
    Errors from xkbcomp are not fatal to the X server
    D-BUS per-session daemon address is: unix:abstract=/tmp/dbus-PwIPGkGNxT,guid=92d2d4103c0b3b40d4dfe41e607f2356
    matchbox: Cant find a keycode for keysym 269025056
    matchbox: ignoring key shortcut XF86Calendar=!$contacts
    
    matchbox: Cant find a keycode for keysym 2809
    matchbox: ignoring key shortcut telephone=!$dates
    
    matchbox: Cant find a keycode for keysym 269025050
    matchbox: ignoring key shortcut XF86Start=!matchbox-remote -desktop
    
    dbus-daemon[665]: Activating service name='org.a11y.atspi.Registry' requested by ':1.0' (uid=0 pid=660 comm="matchbox-desktop ")
    dbus-daemon[665]: Successfully activated service 'org.a11y.atspi.Registry'
    SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
    [settings daemon] Forking. run with -n to prevent fork
    
    

  • I noticed that the build that uses the meta-adi in the yacto user layers has Model: ZynqMP ZCU102 Rev1.0. Even though the board is defined as zcu106-reva.

    Well, that's a board we do not support for now in our projects... The devicetrees we use in meta-adi are for the projects we support. The boot hang might also be some issue related with your devicetree custom nodes. Maybe trying to access a core that does not exist. Try to enable CONFIG_DEBUG_DRIVER with petalinux-config -c kernel to see if you can figure which driver is hanging (if any)...

    Nevertheless it might be a good idea to add your own devicetree and base it on top of zynqmp-zcu106-revA.dts and not trying to extend the one we use (if you are doing that),

    Hope this helps!

    - Nuno Sá

  • Hello Nuno,

    I have tried just using system_user.dtsi as well as trying 


    pl-delete-nodes-custom-devicetree.dtsi and custom-devicetree.dts and adding this to SRC_URI_append.

    I had the same results with both.

    I will try CONFIG_DEBUG_DRIVER.

    Is there a way to override the Model to the zcu106 when using the meta-adi and leave everything else the same?
    That is, keeping KERNEL_DTB set to the zcu102, but having the model be zcu106?

    Thanks

  • Hello again Nuno,

    I cant see how to enable CONFIG_DEBUG_DRIVER in the gui launched from petalinux-config -c kernel.

    kernel hacking->Compile-time checks has compile the kernel with debug info.

    But this does not seem to enable the CONFIG_DEBUG_DRIVER.

    How do I do this?

    Thanks

  • One more Item.

    I am a bit confused about the comments in the meta-adi readme.

    It states that the bitstream is not included when using fpga manager.

    I am assuming this is in petalinux-config. If so, I do not have this checked.

    Is the bit image not being loaded when enabling the meta-adi?

    Searching for other reasons why I cannot boot when enabling the meta-adi as described above.

    Thanks

  • Is there a way to override the Model to the zcu106 when using the meta-adi and leave everything else the same?

    This won't really help you... Note that you do have a different devicetree for zcu106 than for zcu102. Hence, since you are using zcu106, you should base your devicetree on top of zcu106...

  • I cant see how to enable CONFIG_DEBUG_DRIVER in the gui launched from petalinux-config -c kernel.

    You can use "/" to launch a search box... IIRC, it should be somewhere under device drivers->base...

    - Nuno Sá

  • It states that the bitstream is not included when using fpga manager.

    I am assuming this is in petalinux-config. If so, I do not have this checked.

    Is the bit image not being loaded when enabling the meta-adi?

    Unless you are enabling fpga manager under petalinux-config this won't matter to you...

    At this point I do not think there's any issue with meta-adi. It looks like it is something with your devicetree... As you are using a different board from our projects, I would definitely recommend to use your own devicetree rather than trying to extend ADI ones... Can you share what you have for your pl-delete-nodes-custom-devicetree.dtsi and custom-devicetree.dts? Also the pl.dtsi file that petalinux is auto generating...

    - Nuno Sá

  • Hi Nuno,

    I put the zcu106 device tree in my system_user.dtsi file in this case, along with some changes for reserved memory and some UIO interrupts.

    Here Are my files:

    1st file pl.dtsi

    2nd file: pl-delete-nodes-zynqmp-zcu102-rev10-adrv9002.dtsi

    3rd file: system-user.dtsi

    4th file: petalinuxbsp.conf

    /*
     * CAUTION: This file is automatically generated by Xilinx.
     * Version:  
     * Today is: Wed Apr 21 05:30:26 2021
     */
    
    
    / {
    	amba_pl: amba_pl@0 {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		compatible = "simple-bus";
    		ranges ;
    		axi_adrv9001: axi_adrv9001@a0020000 {
    			clock-names = "ref_clk", "delay_clk", "s_axi_aclk";
    			clocks = <&misc_clk_0>, <&zynqmp_clk 74>, <&zynqmp_clk 71>;
    			compatible = "xlnx,axi-adrv9001-1.3";
    			reg = <0x0 0xa0020000 0x0 0x10000>;
    		};
    		misc_clk_0: misc_clk_0 {
    			#clock-cells = <0>;
    			clock-frequency = <100000000>;
    			compatible = "fixed-clock";
    		};
    		axi_dma_0: dma@a0050000 {
    			#dma-cells = <1>;
    			clock-names = "s_axi_lite_aclk", "m_axi_mm2s_aclk", "m_axi_s2mm_aclk";
    			clocks = <&zynqmp_clk 71>, <&zynqmp_clk 71>, <&zynqmp_clk 71>;
    			compatible = "xlnx,axi-dma-7.1", "xlnx,axi-dma-1.00.a";
    			interrupt-names = "s2mm_introut";
    			interrupt-parent = <&gic>;
    			interrupts = <0 105 4>;
    			reg = <0x0 0xa0050000 0x0 0x10000>;
    			xlnx,addrwidth = <0x20>;
    			xlnx,sg-length-width = <0x1a>;
    			dma-channel@a0050000 {
    				compatible = "xlnx,axi-dma-mm2s-channel";
    				dma-channels = <0x1>;
    				xlnx,datawidth = <0x20>;
    				xlnx,device-id = <0x0>;
    			};
    			dma-channel@a0050030 {
    				compatible = "xlnx,axi-dma-s2mm-channel";
    				dma-channels = <0x1>;
    				interrupts = <0 105 4>;
    				xlnx,datawidth = <0x20>;
    				xlnx,device-id = <0x0>;
    			};
    		};
    		axi_dma_1: dma@a0000000 {
    			#dma-cells = <1>;
    			clock-names = "s_axi_lite_aclk", "m_axi_s2mm_aclk";
    			clocks = <&zynqmp_clk 71>, <&zynqmp_clk 71>;
    			compatible = "xlnx,axi-dma-7.1", "xlnx,axi-dma-1.00.a";
    			interrupt-names = "s2mm_introut";
    			interrupt-parent = <&gic>;
    			interrupts = <0 104 4>;
    			reg = <0x0 0xa0000000 0x0 0x10000>;
    			xlnx,addrwidth = <0x20>;
    			xlnx,sg-length-width = <0x1a>;
    			dma-channel@a0000030 {
    				compatible = "xlnx,axi-dma-s2mm-channel";
    				dma-channels = <0x1>;
    				interrupts = <0 104 4>;
    				xlnx,datawidth = <0x20>;
    				xlnx,device-id = <0x1>;
    			};
    		};
    		dkCustomIP_0: dkCustomIP@a0080000 {
    			clock-names = "s00_axi_aclk";
    			clocks = <&zynqmp_clk 71>;
    			compatible = "xlnx,dkCustomIP-1.0";
    			reg = <0x0 0xa0080000 0x0 0x10000>;
    			xlnx,s00-axi-addr-width = <0x6>;
    			xlnx,s00-axi-data-width = <0x20>;
    		};
    	};
    };
    /include/ "pl-delete-nodes-zynqmp-zcu102-rev10-adrv9002.dtsi"
    

    /delete-node/ &misc_clk_0;
    /delete-node/ &dkCustomIP_0;
    /delete-node/ &axi_adrv9001;
    
    

    // SPDX-License-Identifier: GPL-2.0+
    /*
     * dts file for Xilinx ZynqMP ZCU106
     *
     * (C) Copyright 2016 - 2020, Xilinx, Inc.
     *
     * Michal Simek <michal.simek@xilinx.com>
     */
    
    ///dts-v1/;
    
    //#include "zynqmp.dtsi"
    //#include "zynqmp-clk-ccf.dtsi"
    //#include <dt-bindings/input/input.h>
    //#include <dt-bindings/gpio/gpio.h>
    //#include <dt-bindings/pinctrl/pinctrl-zynqmp.h>
    //#include <dt-bindings/phy/phy.h>
    
    / {
    	model = "ZynqMP ZCU106 RevA";
    	compatible = "xlnx,zynqmp-zcu106-revA", "xlnx,zynqmp-zcu106", "xlnx,zynqmp";
    
    	aliases {
    		ethernet0 = &gem3;
    		gpio0 = &gpio;
    		i2c0 = &i2c0;
    		i2c1 = &i2c1;
    		mmc0 = &sdhci1;
    		rtc0 = &rtc;
    		serial0 = &uart0;
    		serial1 = &uart1;
    		serial2 = &dcc;
    		spi0 = &qspi;
    		usb0 = &usb0;
    	};
    
    	reserved-memory {
    	   #address-cells = <2>;
    	   #size-cells = <2>;
    	   ranges;
    	 
    	   reserved: buffer@0 {
    	      no-map;
    	      reg = <0x0 0xE0000000 0x0 0x10000000>;
    	   };
    	   };
    	dkinterrupt {
    		compatible = "generic-uio";
    		status = "okay";
    		interrupt-parent = <&gic>;
    		//interrupts = <0 89 1>;
    		interrupts = <0 106 1>;
    	}; 
            /delete-node/ ltc2954;
    
    	chosen {
    		bootargs = "earlycon clk_ignore_unused console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 uio_pdrv_genirq.of_id=generic-uio";
    		stdout-path = "serial0:115200n8";
    		xlnx,eeprom = &eeprom;
    	};
    
    
    
    	/*chosen {
    		bootargs = "earlycon";
    		stdout-path = "serial0:115200n8";
    		xlnx,eeprom = &eeprom;
    	};
    */
    
    	memory@0 {
    		device_type = "memory";
    		reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>;
    	};
    
    	gpio-keys {
    		compatible = "gpio-keys";
    		autorepeat;
    		sw19 {
    			label = "sw19";
    			gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
    			linux,code = <KEY_DOWN>;
    			wakeup-source;
    			autorepeat;
    		};
    	};
    
    	leds {
    		compatible = "gpio-leds";
    		heartbeat-led {
    			label = "heartbeat";
    			gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
    			linux,default-trigger = "heartbeat";
    		};
    	};
    
    	ina226-u76 {
    		compatible = "iio-hwmon";
    		io-channels = <&u76 0>, <&u76 1>, <&u76 2>, <&u76 3>;
    	};
    	ina226-u77 {
    		compatible = "iio-hwmon";
    		io-channels = <&u77 0>, <&u77 1>, <&u77 2>, <&u77 3>;
    	};
    	ina226-u78 {
    		compatible = "iio-hwmon";
    		io-channels = <&u78 0>, <&u78 1>, <&u78 2>, <&u78 3>;
    	};
    	ina226-u87 {
    		compatible = "iio-hwmon";
    		io-channels = <&u87 0>, <&u87 1>, <&u87 2>, <&u87 3>;
    	};
    	ina226-u85 {
    		compatible = "iio-hwmon";
    		io-channels = <&u85 0>, <&u85 1>, <&u85 2>, <&u85 3>;
    	};
    	ina226-u86 {
    		compatible = "iio-hwmon";
    		io-channels = <&u86 0>, <&u86 1>, <&u86 2>, <&u86 3>;
    	};
    	ina226-u93 {
    		compatible = "iio-hwmon";
    		io-channels = <&u93 0>, <&u93 1>, <&u93 2>, <&u93 3>;
    	};
    	ina226-u88 {
    		compatible = "iio-hwmon";
    		io-channels = <&u88 0>, <&u88 1>, <&u88 2>, <&u88 3>;
    	};
    	ina226-u15 {
    		compatible = "iio-hwmon";
    		io-channels = <&u15 0>, <&u15 1>, <&u15 2>, <&u15 3>;
    	};
    	ina226-u92 {
    		compatible = "iio-hwmon";
    		io-channels = <&u92 0>, <&u92 1>, <&u92 2>, <&u92 3>;
    	};
    	ina226-u79 {
    		compatible = "iio-hwmon";
    		io-channels = <&u79 0>, <&u79 1>, <&u79 2>, <&u79 3>;
    	};
    	ina226-u81 {
    		compatible = "iio-hwmon";
    		io-channels = <&u81 0>, <&u81 1>, <&u81 2>, <&u81 3>;
    	};
    	ina226-u80 {
    		compatible = "iio-hwmon";
    		io-channels = <&u80 0>, <&u80 1>, <&u80 2>, <&u80 3>;
    	};
    	ina226-u84 {
    		compatible = "iio-hwmon";
    		io-channels = <&u84 0>, <&u84 1>, <&u84 2>, <&u84 3>;
    	};
    	ina226-u16 {
    		compatible = "iio-hwmon";
    		io-channels = <&u16 0>, <&u16 1>, <&u16 2>, <&u16 3>;
    	};
    	ina226-u65 {
    		compatible = "iio-hwmon";
    		io-channels = <&u65 0>, <&u65 1>, <&u65 2>, <&u65 3>;
    	};
    	ina226-u74 {
    		compatible = "iio-hwmon";
    		io-channels = <&u74 0>, <&u74 1>, <&u74 2>, <&u74 3>;
    	};
    	ina226-u75 {
    		compatible = "iio-hwmon";
    		io-channels = <&u75 0>, <&u75 1>, <&u75 2>, <&u75 3>;
    	};
    };
    
    &can1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_can1_default>;
    };
    
    &dcc {
    	status = "okay";
    };
    
    &fpd_dma_chan1 {
    	status = "okay";
    };
    
    &fpd_dma_chan2 {
    	status = "okay";
    };
    
    &fpd_dma_chan3 {
    	status = "okay";
    };
    
    &fpd_dma_chan4 {
    	status = "okay";
    };
    
    &fpd_dma_chan5 {
    	status = "okay";
    };
    
    &fpd_dma_chan6 {
    	status = "okay";
    };
    
    &fpd_dma_chan7 {
    	status = "okay";
    };
    
    &fpd_dma_chan8 {
    	status = "okay";
    };
    
    &gem3 {
    	status = "okay";
    	phy-handle = <&phy0>;
    	phy-mode = "rgmii-id";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_gem3_default>;
    	phy0: ethernet-phy@c {
    		reg = <0xc>;
    		ti,rx-internal-delay = <0x8>;
    		ti,tx-internal-delay = <0xa>;
    		ti,fifo-depth = <0x1>;
    		ti,dp83867-rxctrl-strap-quirk;
    	};
    };
    
    &gpio {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_gpio_default>;
    };
    
    &gpu {
    	status = "okay";
    };
    
    &i2c0 {
    	status = "okay";
    	clock-frequency = <400000>;
    	pinctrl-names = "default", "gpio";
    	pinctrl-0 = <&pinctrl_i2c0_default>;
    	pinctrl-1 = <&pinctrl_i2c0_gpio>;
    	scl-gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
    	sda-gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
    
    	tca6416_u97: gpio@20 {
    		compatible = "ti,tca6416";
    		reg = <0x20>;
    		gpio-controller; /* interrupt not connected */
    		#gpio-cells = <2>;
    		/*
    		 * IRQ not connected
    		 * Lines:
    		 * 0 - SFP_SI5328_INT_ALM
    		 * 1 - HDMI_SI5328_INT_ALM
    		 * 5 - IIC_MUX_RESET_B
    		 * 6 - GEM3_EXP_RESET_B
    		 * 10 - FMC_HPC0_PRSNT_M2C_B
    		 * 11 - FMC_HPC1_PRSNT_M2C_B
    		 * 2-4, 7, 12-17 - not connected
    		 */
    	};
    
    	tca6416_u61: gpio@21 {
    		compatible = "ti,tca6416";
    		reg = <0x21>;
    		gpio-controller;
    		#gpio-cells = <2>;
    		/*
    		 * IRQ not connected
    		 * Lines:
    		 * 0 - VCCPSPLL_EN
    		 * 1 - MGTRAVCC_EN
    		 * 2 - MGTRAVTT_EN
    		 * 3 - VCCPSDDRPLL_EN
    		 * 4 - MIO26_PMU_INPUT_LS
    		 * 5 - PL_PMBUS_ALERT
    		 * 6 - PS_PMBUS_ALERT
    		 * 7 - MAXIM_PMBUS_ALERT
    		 * 10 - PL_DDR4_VTERM_EN
    		 * 11 - PL_DDR4_VPP_2V5_EN
    		 * 12 - PS_DIMM_VDDQ_TO_PSVCCO_ON
    		 * 13 - PS_DIMM_SUSPEND_EN
    		 * 14 - PS_DDR4_VTERM_EN
    		 * 15 - PS_DDR4_VPP_2V5_EN
    		 * 16 - 17 - not connected
    		 */
    	};
    
    	i2c-mux@75 { /* u60 */
    		compatible = "nxp,pca9544";
    		#address-cells = <1>;
    		#size-cells = <0>;
    		reg = <0x75>;
    		i2c@0 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <0>;
    			/* PS_PMBUS */
    			u76: ina226@40 { /* u76 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u76";
    				reg = <0x40>;
    				shunt-resistor = <5000>;
    			};
    			u77: ina226@41 { /* u77 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u77";
    				reg = <0x41>;
    				shunt-resistor = <5000>;
    			};
    			u78: ina226@42 { /* u78 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u78";
    				reg = <0x42>;
    				shunt-resistor = <5000>;
    			};
    			u87: ina226@43 { /* u87 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u87";
    				reg = <0x43>;
    				shunt-resistor = <5000>;
    			};
    			u85: ina226@44 { /* u85 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u85";
    				reg = <0x44>;
    				shunt-resistor = <5000>;
    			};
    			u86: ina226@45 { /* u86 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u86";
    				reg = <0x45>;
    				shunt-resistor = <5000>;
    			};
    			u93: ina226@46 { /* u93 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u93";
    				reg = <0x46>;
    				shunt-resistor = <5000>;
    			};
    			u88: ina226@47 { /* u88 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u88";
    				reg = <0x47>;
    				shunt-resistor = <5000>;
    			};
    			u15: ina226@4a { /* u15 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u15";
    				reg = <0x4a>;
    				shunt-resistor = <5000>;
    			};
    			u92: ina226@4b { /* u92 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u92";
    				reg = <0x4b>;
    				shunt-resistor = <5000>;
    			};
    		};
    		i2c@1 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <1>;
    			/* PL_PMBUS */
    			u79: ina226@40 { /* u79 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u79";
    				reg = <0x40>;
    				shunt-resistor = <2000>;
    			};
    			u81: ina226@41 { /* u81 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u81";
    				reg = <0x41>;
    				shunt-resistor = <5000>;
    			};
    			u80: ina226@42 { /* u80 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u80";
    				reg = <0x42>;
    				shunt-resistor = <5000>;
    			};
    			u84: ina226@43 { /* u84 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u84";
    				reg = <0x43>;
    				shunt-resistor = <5000>;
    			};
    			u16: ina226@44 { /* u16 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u16";
    				reg = <0x44>;
    				shunt-resistor = <5000>;
    			};
    			u65: ina226@45 { /* u65 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u65";
    				reg = <0x45>;
    				shunt-resistor = <5000>;
    			};
    			u74: ina226@46 { /* u74 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u74";
    				reg = <0x46>;
    				shunt-resistor = <5000>;
    			};
    			u75: ina226@47 { /* u75 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u75";
    				reg = <0x47>;
    				shunt-resistor = <5000>;
    			};
    		};
    		i2c@2 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <2>;
    			/* MAXIM_PMBUS - 00 */
    			max15301@a { /* u46 */
    				compatible = "maxim,max15301";
    				reg = <0xa>;
    			};
    			max15303@b { /* u4 */
    				compatible = "maxim,max15303";
    				reg = <0xb>;
    			};
    			max15303@10 { /* u13 */
    				compatible = "maxim,max15303";
    				reg = <0x10>;
    			};
    			max15301@13 { /* u47 */
    				compatible = "maxim,max15301";
    				reg = <0x13>;
    			};
    			max15303@14 { /* u7 */
    				compatible = "maxim,max15303";
    				reg = <0x14>;
    			};
    			max15303@15 { /* u6 */
    				compatible = "maxim,max15303";
    				reg = <0x15>;
    			};
    			max15303@16 { /* u10 */
    				compatible = "maxim,max15303";
    				reg = <0x16>;
    			};
    			max15303@17 { /* u9 */
    				compatible = "maxim,max15303";
    				reg = <0x17>;
    			};
    			max15301@18 { /* u63 */
    				compatible = "maxim,max15301";
    				reg = <0x18>;
    			};
    			max15303@1a { /* u49 */
    				compatible = "maxim,max15303";
    				reg = <0x1a>;
    			};
    			max15303@1b { /* u8 */
    				compatible = "maxim,max15303";
    				reg = <0x1b>;
    			};
    			max15303@1d { /* u18 */
    				compatible = "maxim,max15303";
    				reg = <0x1d>;
    			};
    
    			max20751@72 { /* u95 */
    				compatible = "maxim,max20751";
    				reg = <0x72>;
    			};
    			max20751@73 { /* u96 */
    				compatible = "maxim,max20751";
    				reg = <0x73>;
    			};
    		};
    		/* Bus 3 is not connected */
    	};
    };
    
    &i2c1 {
    	status = "okay";
    	clock-frequency = <400000>;
    	pinctrl-names = "default", "gpio";
    	pinctrl-0 = <&pinctrl_i2c1_default>;
    	pinctrl-1 = <&pinctrl_i2c1_gpio>;
    	scl-gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
    	sda-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
    
    	/* PL i2c via PCA9306 - u45 */
    	i2c-mux@74 { /* u34 */
    		compatible = "nxp,pca9548";
    		#address-cells = <1>;
    		#size-cells = <0>;
    		reg = <0x74>;
    		i2c@0 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <0>;
    			/*
    			 * IIC_EEPROM 1kB memory which uses 256B blocks
    			 * where every block has different address.
    			 *    0 - 256B address 0x54
    			 * 256B - 512B address 0x55
    			 * 512B - 768B address 0x56
    			 * 768B - 1024B address 0x57
    			 */
    			eeprom: eeprom@54 { /* u23 */
    				compatible = "atmel,24c08";
    				reg = <0x54>;
    			};
    		};
    		i2c@1 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <1>;
    			si5341: clock-generator@36 { /* SI5341 - u69 */
    				compatible = "si5341";
    				reg = <0x36>;
    			};
    
    		};
    		i2c@2 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <2>;
    			si570_1: clock-generator@5d { /* USER SI570 - u42 */
    				#clock-cells = <0>;
    				compatible = "silabs,si570";
    				reg = <0x5d>;
    				temperature-stability = <50>;
    				factory-fout = <300000000>;
    				clock-frequency = <300000000>;
    				clock-output-names = "si570_user";
    			};
    		};
    		i2c@3 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <3>;
    			si570_2: clock-generator@5d { /* USER MGT SI570 - u56 */
    				#clock-cells = <0>;
    				compatible = "silabs,si570";
    				reg = <0x5d>;
    				temperature-stability = <50>; /* copy from zc702 */
    				factory-fout = <156250000>;
    				clock-frequency = <148500000>;
    				clock-output-names = "si570_mgt";
    			};
    		};
    		i2c@4 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <4>;
    			si5328: clock-generator@69 {/* SI5328 - u20 */
    				compatible = "silabs,si5328";
    				reg = <0x69>;
    			};
    		};
    		i2c@5 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <5>; /* FAN controller */
    			temp@4c {/* lm96163 - u128 */
    				compatible = "national,lm96163";
    				reg = <0x4c>;
    			};
    		};
    		/* 6 - 7 unconnected */
    	};
    
    	i2c-mux@75 {
    		compatible = "nxp,pca9548"; /* u135 */
    		#address-cells = <1>;
    		#size-cells = <0>;
    		reg = <0x75>;
    
    		i2c@0 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <0>;
    			/* HPC0_IIC */
    		};
    		i2c@1 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <1>;
    			/* HPC1_IIC */
    		};
    		i2c@2 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <2>;
    			/* SYSMON */
    		};
    		i2c@3 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <3>;
    			/* DDR4 SODIMM */
    		};
    		i2c@4 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <4>;
    			/* SEP 3 */
    		};
    		i2c@5 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <5>;
    			/* SEP 2 */
    		};
    		i2c@6 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <6>;
    			/* SEP 1 */
    		};
    		i2c@7 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <7>;
    			/* SEP 0 */
    		};
    	};
    };
    
    &pinctrl0 {
    	status = "okay";
    	pinctrl_i2c0_default: i2c0-default {
    		mux {
    			groups = "i2c0_3_grp";
    			function = "i2c0";
    		};
    
    		conf {
    			groups = "i2c0_3_grp";
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_i2c0_gpio: i2c0-gpio {
    		mux {
    			groups = "gpio0_14_grp", "gpio0_15_grp";
    			function = "gpio0";
    		};
    
    		conf {
    			groups = "gpio0_14_grp", "gpio0_15_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_i2c1_default: i2c1-default {
    		mux {
    			groups = "i2c1_4_grp";
    			function = "i2c1";
    		};
    
    		conf {
    			groups = "i2c1_4_grp";
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_i2c1_gpio: i2c1-gpio {
    		mux {
    			groups = "gpio0_16_grp", "gpio0_17_grp";
    			function = "gpio0";
    		};
    
    		conf {
    			groups = "gpio0_16_grp", "gpio0_17_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_uart0_default: uart0-default {
    		mux {
    			groups = "uart0_4_grp";
    			function = "uart0";
    		};
    
    		conf {
    			groups = "uart0_4_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO18";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO19";
    			bias-disable;
    		};
    	};
    
    	pinctrl_uart1_default: uart1-default {
    		mux {
    			groups = "uart1_5_grp";
    			function = "uart1";
    		};
    
    		conf {
    			groups = "uart1_5_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO21";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO20";
    			bias-disable;
    		};
    	};
    
    	pinctrl_usb0_default: usb0-default {
    		mux {
    			groups = "usb0_0_grp";
    			function = "usb0";
    		};
    
    		conf {
    			groups = "usb0_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO52", "MIO53", "MIO55";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO54", "MIO56", "MIO57", "MIO58", "MIO59",
    			       "MIO60", "MIO61", "MIO62", "MIO63";
    			bias-disable;
    		};
    	};
    
    	pinctrl_gem3_default: gem3-default {
    		mux {
    			function = "ethernet3";
    			groups = "ethernet3_0_grp";
    		};
    
    		conf {
    			groups = "ethernet3_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO70", "MIO71", "MIO72", "MIO73", "MIO74",
    									"MIO75";
    			bias-high-impedance;
    			low-power-disable;
    		};
    
    		conf-tx {
    			pins = "MIO64", "MIO65", "MIO66", "MIO67", "MIO68",
    									"MIO69";
    			bias-disable;
    			low-power-enable;
    		};
    
    		mux-mdio {
    			function = "mdio3";
    			groups = "mdio3_0_grp";
    		};
    
    		conf-mdio {
    			groups = "mdio3_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    			bias-disable;
    		};
    	};
    
    	pinctrl_can1_default: can1-default {
    		mux {
    			function = "can1";
    			groups = "can1_6_grp";
    		};
    
    		conf {
    			groups = "can1_6_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO25";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO24";
    			bias-disable;
    		};
    	};
    
    	pinctrl_sdhci1_default: sdhci1-default {
    		mux {
    			groups = "sdio1_0_grp";
    			function = "sdio1";
    		};
    
    		conf {
    			groups = "sdio1_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    			bias-disable;
    		};
    
    		mux-cd {
    			groups = "sdio1_cd_0_grp";
    			function = "sdio1_cd";
    		};
    
    		conf-cd {
    			groups = "sdio1_cd_0_grp";
    			bias-high-impedance;
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		mux-wp {
    			groups = "sdio1_wp_0_grp";
    			function = "sdio1_wp";
    		};
    
    		conf-wp {
    			groups = "sdio1_wp_0_grp";
    			bias-high-impedance;
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_gpio_default: gpio-default {
    		mux {
    			function = "gpio0";
    			groups = "gpio0_22_grp", "gpio0_23_grp";
    		};
    
    		conf {
    			groups = "gpio0_22_grp", "gpio0_23_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		mux-msp {
    			function = "gpio0";
    			groups = "gpio0_13_grp", "gpio0_38_grp";
    		};
    
    		conf-msp {
    			groups = "gpio0_13_grp", "gpio0_38_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-pull-up {
    			pins = "MIO22";
    			bias-pull-up;
    		};
    
    		conf-pull-none {
    			pins = "MIO13", "MIO23", "MIO38";
    			bias-disable;
    		};
    	};
    };
    
    //&qspi {
    //	status = "okay";
    //	is-dual = <1>;
    //	flash@0 {
    //		compatible = "m25p80", "jedec,spi-nor"; /* 32MB */
    //		#address-cells = <1>;
    //		#size-cells = <1>;
    //		reg = <0x0>;
    //		spi-tx-bus-width = <1>;
    //		spi-rx-bus-width = <4>; /* FIXME also DUAL configuration possible */
    //		spi-max-frequency = <108000000>; /* Based on DC1 spec */
    //		partition@0 { /* for testing purpose */
    //			label = "qspi-fsbl-uboot";
    //			reg = <0x0 0x100000>;
    //		};
    //		partition@100000 { /* for testing purpose */
    //			label = "qspi-linux";
    //			reg = <0x100000 0x500000>;
    //		};
    //		partition@600000 { /* for testing purpose */
    //			label = "qspi-device-tree";
    //			reg = <0x600000 0x20000>;
    //		};
    //		partition@620000 { /* for testing purpose */
    //			label = "qspi-rootfs";
    //			reg = <0x620000 0x5E0000>;
    //		};
    //	};
    //};
    
    &rtc {
    	status = "okay";
    };
    
    &sata {
    	status = "okay";
    	/* SATA OOB timing settings */
    	ceva,p0-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
    	ceva,p0-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
    	ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
    	ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
    	ceva,p1-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
    	ceva,p1-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
    	ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
    	ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
    	phy-names = "sata-phy";
    	phys = <&lane3 PHY_TYPE_SATA 1 1 125000000>;
    };
    
    /* SD1 with level shifter */
    &sdhci1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_sdhci1_default>;
    	/*
    	 * This property should be removed for supporting UHS mode
    	 */
    	no-1-8-v;
    	xlnx,mio_bank = <1>;
    };
    
    &serdes {
    	status = "okay";
    };
    
    &uart0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_uart0_default>;
    };
    
    &uart1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_uart1_default>;
    };
    
    /* ULPI SMSC USB3320 */
    &usb0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_usb0_default>;
    };
    
    &dwc3_0 {
    	status = "okay";
    	dr_mode = "host";
    	snps,usb3_lpm_capable;
    	phy-names = "usb3-phy";
    	phys = <&lane2 PHY_TYPE_USB3 0 2 26000000>;
    };
    
    
    &watchdog0 {
    	status = "okay";
    };
    
    &zynqmp_dpsub {
    	status = "okay";
    	phy-names = "dp-phy0", "dp-phy1";
    	phys = <&lane1 PHY_TYPE_DP 0 3 27000000>, <&lane0 PHY_TYPE_DP 1 3 27000000>;
    };
    
    &zynqmp_dp_snd_pcm0 {
    	status = "okay";
    };
    
    &zynqmp_dp_snd_pcm1 {
    	status = "okay";
    };
    
    &zynqmp_dp_snd_card0 {
    	status = "okay";
    };
    
    &zynqmp_dp_snd_codec0 {
    	status = "okay";
    };
    
    &xlnx_dpdma {
    	status = "okay";
    };
    
    &amba_pl{
            // Remove
            /delete-node/axi_dma_0;
    	/delete-node/dma-channel@a0050000;
    	/delete-node/dma-channel@a0050030;
    };
    &axi_dma_0{
            // Remove
            /delete-property/compatible;
            /delete-property/interrupt-names;
            /delete-property/interrupt-parent;
            /delete-property/interrupts;
    };
    &axi_dma_1{
            // Remove
            /delete-property/compatible;
            /delete-property/interrupt-names;
            /delete-property/interrupt-parent;
            /delete-property/interrupts;
    };
    //**********************************************         
    
    / {
    
    
    dkdma_rxinterrupt_data {
    	compatible = "generic-uio";
    	status = "okay";
    	interrupt-parent = <&gic>;
    	interrupts = <0 104 1>;
    }; 
    
    dkdma_rxinterrupt {
    	compatible = "generic-uio";
    	status = "okay";
    	interrupt-parent = <&gic>;
    	interrupts = <0 105 1>;
    }; 
    	
    };
    //**********************************************         
    
    
    
    
    
    

    #User Configuration
    
    #OE_TERMINAL = "tmux"
    KERNEL_DTB="zynqmp-zcu102-rev10-adrv9002"
    #DTS_BASE="/home/dk/dk/peta_linux/meta-adi/meta-adi-xilinx/recipes-bsp/device-tree/files/zcu106_dk.dts"
    #DTS_BASE_zynqmp ="/home/dk/dk/peta_linux/meta-adi/meta-adi-xilinx/recipes-bsp/device-tree/files/zcu106_dk.dts"
    

    I have also tried putting the zcu106 device tree in  custom-devicetree.dts and had pl-delete-nodes-custom-devicetree.dtsi file with no deletes. With this I modified device-tree.bbappend, and added these two sources to the SRC_URI_apppend_zynqmp. This resulted in the same hang at boot.

    Thanks very much for helping with this

Reply
  • Hi Nuno,

    I put the zcu106 device tree in my system_user.dtsi file in this case, along with some changes for reserved memory and some UIO interrupts.

    Here Are my files:

    1st file pl.dtsi

    2nd file: pl-delete-nodes-zynqmp-zcu102-rev10-adrv9002.dtsi

    3rd file: system-user.dtsi

    4th file: petalinuxbsp.conf

    /*
     * CAUTION: This file is automatically generated by Xilinx.
     * Version:  
     * Today is: Wed Apr 21 05:30:26 2021
     */
    
    
    / {
    	amba_pl: amba_pl@0 {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		compatible = "simple-bus";
    		ranges ;
    		axi_adrv9001: axi_adrv9001@a0020000 {
    			clock-names = "ref_clk", "delay_clk", "s_axi_aclk";
    			clocks = <&misc_clk_0>, <&zynqmp_clk 74>, <&zynqmp_clk 71>;
    			compatible = "xlnx,axi-adrv9001-1.3";
    			reg = <0x0 0xa0020000 0x0 0x10000>;
    		};
    		misc_clk_0: misc_clk_0 {
    			#clock-cells = <0>;
    			clock-frequency = <100000000>;
    			compatible = "fixed-clock";
    		};
    		axi_dma_0: dma@a0050000 {
    			#dma-cells = <1>;
    			clock-names = "s_axi_lite_aclk", "m_axi_mm2s_aclk", "m_axi_s2mm_aclk";
    			clocks = <&zynqmp_clk 71>, <&zynqmp_clk 71>, <&zynqmp_clk 71>;
    			compatible = "xlnx,axi-dma-7.1", "xlnx,axi-dma-1.00.a";
    			interrupt-names = "s2mm_introut";
    			interrupt-parent = <&gic>;
    			interrupts = <0 105 4>;
    			reg = <0x0 0xa0050000 0x0 0x10000>;
    			xlnx,addrwidth = <0x20>;
    			xlnx,sg-length-width = <0x1a>;
    			dma-channel@a0050000 {
    				compatible = "xlnx,axi-dma-mm2s-channel";
    				dma-channels = <0x1>;
    				xlnx,datawidth = <0x20>;
    				xlnx,device-id = <0x0>;
    			};
    			dma-channel@a0050030 {
    				compatible = "xlnx,axi-dma-s2mm-channel";
    				dma-channels = <0x1>;
    				interrupts = <0 105 4>;
    				xlnx,datawidth = <0x20>;
    				xlnx,device-id = <0x0>;
    			};
    		};
    		axi_dma_1: dma@a0000000 {
    			#dma-cells = <1>;
    			clock-names = "s_axi_lite_aclk", "m_axi_s2mm_aclk";
    			clocks = <&zynqmp_clk 71>, <&zynqmp_clk 71>;
    			compatible = "xlnx,axi-dma-7.1", "xlnx,axi-dma-1.00.a";
    			interrupt-names = "s2mm_introut";
    			interrupt-parent = <&gic>;
    			interrupts = <0 104 4>;
    			reg = <0x0 0xa0000000 0x0 0x10000>;
    			xlnx,addrwidth = <0x20>;
    			xlnx,sg-length-width = <0x1a>;
    			dma-channel@a0000030 {
    				compatible = "xlnx,axi-dma-s2mm-channel";
    				dma-channels = <0x1>;
    				interrupts = <0 104 4>;
    				xlnx,datawidth = <0x20>;
    				xlnx,device-id = <0x1>;
    			};
    		};
    		dkCustomIP_0: dkCustomIP@a0080000 {
    			clock-names = "s00_axi_aclk";
    			clocks = <&zynqmp_clk 71>;
    			compatible = "xlnx,dkCustomIP-1.0";
    			reg = <0x0 0xa0080000 0x0 0x10000>;
    			xlnx,s00-axi-addr-width = <0x6>;
    			xlnx,s00-axi-data-width = <0x20>;
    		};
    	};
    };
    /include/ "pl-delete-nodes-zynqmp-zcu102-rev10-adrv9002.dtsi"
    

    /delete-node/ &misc_clk_0;
    /delete-node/ &dkCustomIP_0;
    /delete-node/ &axi_adrv9001;
    
    

    // SPDX-License-Identifier: GPL-2.0+
    /*
     * dts file for Xilinx ZynqMP ZCU106
     *
     * (C) Copyright 2016 - 2020, Xilinx, Inc.
     *
     * Michal Simek <michal.simek@xilinx.com>
     */
    
    ///dts-v1/;
    
    //#include "zynqmp.dtsi"
    //#include "zynqmp-clk-ccf.dtsi"
    //#include <dt-bindings/input/input.h>
    //#include <dt-bindings/gpio/gpio.h>
    //#include <dt-bindings/pinctrl/pinctrl-zynqmp.h>
    //#include <dt-bindings/phy/phy.h>
    
    / {
    	model = "ZynqMP ZCU106 RevA";
    	compatible = "xlnx,zynqmp-zcu106-revA", "xlnx,zynqmp-zcu106", "xlnx,zynqmp";
    
    	aliases {
    		ethernet0 = &gem3;
    		gpio0 = &gpio;
    		i2c0 = &i2c0;
    		i2c1 = &i2c1;
    		mmc0 = &sdhci1;
    		rtc0 = &rtc;
    		serial0 = &uart0;
    		serial1 = &uart1;
    		serial2 = &dcc;
    		spi0 = &qspi;
    		usb0 = &usb0;
    	};
    
    	reserved-memory {
    	   #address-cells = <2>;
    	   #size-cells = <2>;
    	   ranges;
    	 
    	   reserved: buffer@0 {
    	      no-map;
    	      reg = <0x0 0xE0000000 0x0 0x10000000>;
    	   };
    	   };
    	dkinterrupt {
    		compatible = "generic-uio";
    		status = "okay";
    		interrupt-parent = <&gic>;
    		//interrupts = <0 89 1>;
    		interrupts = <0 106 1>;
    	}; 
            /delete-node/ ltc2954;
    
    	chosen {
    		bootargs = "earlycon clk_ignore_unused console=ttyPS0,115200 earlyprintk root=/dev/mmcblk0p2 uio_pdrv_genirq.of_id=generic-uio";
    		stdout-path = "serial0:115200n8";
    		xlnx,eeprom = &eeprom;
    	};
    
    
    
    	/*chosen {
    		bootargs = "earlycon";
    		stdout-path = "serial0:115200n8";
    		xlnx,eeprom = &eeprom;
    	};
    */
    
    	memory@0 {
    		device_type = "memory";
    		reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>;
    	};
    
    	gpio-keys {
    		compatible = "gpio-keys";
    		autorepeat;
    		sw19 {
    			label = "sw19";
    			gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
    			linux,code = <KEY_DOWN>;
    			wakeup-source;
    			autorepeat;
    		};
    	};
    
    	leds {
    		compatible = "gpio-leds";
    		heartbeat-led {
    			label = "heartbeat";
    			gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
    			linux,default-trigger = "heartbeat";
    		};
    	};
    
    	ina226-u76 {
    		compatible = "iio-hwmon";
    		io-channels = <&u76 0>, <&u76 1>, <&u76 2>, <&u76 3>;
    	};
    	ina226-u77 {
    		compatible = "iio-hwmon";
    		io-channels = <&u77 0>, <&u77 1>, <&u77 2>, <&u77 3>;
    	};
    	ina226-u78 {
    		compatible = "iio-hwmon";
    		io-channels = <&u78 0>, <&u78 1>, <&u78 2>, <&u78 3>;
    	};
    	ina226-u87 {
    		compatible = "iio-hwmon";
    		io-channels = <&u87 0>, <&u87 1>, <&u87 2>, <&u87 3>;
    	};
    	ina226-u85 {
    		compatible = "iio-hwmon";
    		io-channels = <&u85 0>, <&u85 1>, <&u85 2>, <&u85 3>;
    	};
    	ina226-u86 {
    		compatible = "iio-hwmon";
    		io-channels = <&u86 0>, <&u86 1>, <&u86 2>, <&u86 3>;
    	};
    	ina226-u93 {
    		compatible = "iio-hwmon";
    		io-channels = <&u93 0>, <&u93 1>, <&u93 2>, <&u93 3>;
    	};
    	ina226-u88 {
    		compatible = "iio-hwmon";
    		io-channels = <&u88 0>, <&u88 1>, <&u88 2>, <&u88 3>;
    	};
    	ina226-u15 {
    		compatible = "iio-hwmon";
    		io-channels = <&u15 0>, <&u15 1>, <&u15 2>, <&u15 3>;
    	};
    	ina226-u92 {
    		compatible = "iio-hwmon";
    		io-channels = <&u92 0>, <&u92 1>, <&u92 2>, <&u92 3>;
    	};
    	ina226-u79 {
    		compatible = "iio-hwmon";
    		io-channels = <&u79 0>, <&u79 1>, <&u79 2>, <&u79 3>;
    	};
    	ina226-u81 {
    		compatible = "iio-hwmon";
    		io-channels = <&u81 0>, <&u81 1>, <&u81 2>, <&u81 3>;
    	};
    	ina226-u80 {
    		compatible = "iio-hwmon";
    		io-channels = <&u80 0>, <&u80 1>, <&u80 2>, <&u80 3>;
    	};
    	ina226-u84 {
    		compatible = "iio-hwmon";
    		io-channels = <&u84 0>, <&u84 1>, <&u84 2>, <&u84 3>;
    	};
    	ina226-u16 {
    		compatible = "iio-hwmon";
    		io-channels = <&u16 0>, <&u16 1>, <&u16 2>, <&u16 3>;
    	};
    	ina226-u65 {
    		compatible = "iio-hwmon";
    		io-channels = <&u65 0>, <&u65 1>, <&u65 2>, <&u65 3>;
    	};
    	ina226-u74 {
    		compatible = "iio-hwmon";
    		io-channels = <&u74 0>, <&u74 1>, <&u74 2>, <&u74 3>;
    	};
    	ina226-u75 {
    		compatible = "iio-hwmon";
    		io-channels = <&u75 0>, <&u75 1>, <&u75 2>, <&u75 3>;
    	};
    };
    
    &can1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_can1_default>;
    };
    
    &dcc {
    	status = "okay";
    };
    
    &fpd_dma_chan1 {
    	status = "okay";
    };
    
    &fpd_dma_chan2 {
    	status = "okay";
    };
    
    &fpd_dma_chan3 {
    	status = "okay";
    };
    
    &fpd_dma_chan4 {
    	status = "okay";
    };
    
    &fpd_dma_chan5 {
    	status = "okay";
    };
    
    &fpd_dma_chan6 {
    	status = "okay";
    };
    
    &fpd_dma_chan7 {
    	status = "okay";
    };
    
    &fpd_dma_chan8 {
    	status = "okay";
    };
    
    &gem3 {
    	status = "okay";
    	phy-handle = <&phy0>;
    	phy-mode = "rgmii-id";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_gem3_default>;
    	phy0: ethernet-phy@c {
    		reg = <0xc>;
    		ti,rx-internal-delay = <0x8>;
    		ti,tx-internal-delay = <0xa>;
    		ti,fifo-depth = <0x1>;
    		ti,dp83867-rxctrl-strap-quirk;
    	};
    };
    
    &gpio {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_gpio_default>;
    };
    
    &gpu {
    	status = "okay";
    };
    
    &i2c0 {
    	status = "okay";
    	clock-frequency = <400000>;
    	pinctrl-names = "default", "gpio";
    	pinctrl-0 = <&pinctrl_i2c0_default>;
    	pinctrl-1 = <&pinctrl_i2c0_gpio>;
    	scl-gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
    	sda-gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
    
    	tca6416_u97: gpio@20 {
    		compatible = "ti,tca6416";
    		reg = <0x20>;
    		gpio-controller; /* interrupt not connected */
    		#gpio-cells = <2>;
    		/*
    		 * IRQ not connected
    		 * Lines:
    		 * 0 - SFP_SI5328_INT_ALM
    		 * 1 - HDMI_SI5328_INT_ALM
    		 * 5 - IIC_MUX_RESET_B
    		 * 6 - GEM3_EXP_RESET_B
    		 * 10 - FMC_HPC0_PRSNT_M2C_B
    		 * 11 - FMC_HPC1_PRSNT_M2C_B
    		 * 2-4, 7, 12-17 - not connected
    		 */
    	};
    
    	tca6416_u61: gpio@21 {
    		compatible = "ti,tca6416";
    		reg = <0x21>;
    		gpio-controller;
    		#gpio-cells = <2>;
    		/*
    		 * IRQ not connected
    		 * Lines:
    		 * 0 - VCCPSPLL_EN
    		 * 1 - MGTRAVCC_EN
    		 * 2 - MGTRAVTT_EN
    		 * 3 - VCCPSDDRPLL_EN
    		 * 4 - MIO26_PMU_INPUT_LS
    		 * 5 - PL_PMBUS_ALERT
    		 * 6 - PS_PMBUS_ALERT
    		 * 7 - MAXIM_PMBUS_ALERT
    		 * 10 - PL_DDR4_VTERM_EN
    		 * 11 - PL_DDR4_VPP_2V5_EN
    		 * 12 - PS_DIMM_VDDQ_TO_PSVCCO_ON
    		 * 13 - PS_DIMM_SUSPEND_EN
    		 * 14 - PS_DDR4_VTERM_EN
    		 * 15 - PS_DDR4_VPP_2V5_EN
    		 * 16 - 17 - not connected
    		 */
    	};
    
    	i2c-mux@75 { /* u60 */
    		compatible = "nxp,pca9544";
    		#address-cells = <1>;
    		#size-cells = <0>;
    		reg = <0x75>;
    		i2c@0 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <0>;
    			/* PS_PMBUS */
    			u76: ina226@40 { /* u76 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u76";
    				reg = <0x40>;
    				shunt-resistor = <5000>;
    			};
    			u77: ina226@41 { /* u77 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u77";
    				reg = <0x41>;
    				shunt-resistor = <5000>;
    			};
    			u78: ina226@42 { /* u78 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u78";
    				reg = <0x42>;
    				shunt-resistor = <5000>;
    			};
    			u87: ina226@43 { /* u87 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u87";
    				reg = <0x43>;
    				shunt-resistor = <5000>;
    			};
    			u85: ina226@44 { /* u85 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u85";
    				reg = <0x44>;
    				shunt-resistor = <5000>;
    			};
    			u86: ina226@45 { /* u86 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u86";
    				reg = <0x45>;
    				shunt-resistor = <5000>;
    			};
    			u93: ina226@46 { /* u93 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u93";
    				reg = <0x46>;
    				shunt-resistor = <5000>;
    			};
    			u88: ina226@47 { /* u88 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u88";
    				reg = <0x47>;
    				shunt-resistor = <5000>;
    			};
    			u15: ina226@4a { /* u15 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u15";
    				reg = <0x4a>;
    				shunt-resistor = <5000>;
    			};
    			u92: ina226@4b { /* u92 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u92";
    				reg = <0x4b>;
    				shunt-resistor = <5000>;
    			};
    		};
    		i2c@1 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <1>;
    			/* PL_PMBUS */
    			u79: ina226@40 { /* u79 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u79";
    				reg = <0x40>;
    				shunt-resistor = <2000>;
    			};
    			u81: ina226@41 { /* u81 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u81";
    				reg = <0x41>;
    				shunt-resistor = <5000>;
    			};
    			u80: ina226@42 { /* u80 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u80";
    				reg = <0x42>;
    				shunt-resistor = <5000>;
    			};
    			u84: ina226@43 { /* u84 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u84";
    				reg = <0x43>;
    				shunt-resistor = <5000>;
    			};
    			u16: ina226@44 { /* u16 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u16";
    				reg = <0x44>;
    				shunt-resistor = <5000>;
    			};
    			u65: ina226@45 { /* u65 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u65";
    				reg = <0x45>;
    				shunt-resistor = <5000>;
    			};
    			u74: ina226@46 { /* u74 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u74";
    				reg = <0x46>;
    				shunt-resistor = <5000>;
    			};
    			u75: ina226@47 { /* u75 */
    				compatible = "ti,ina226";
    				#io-channel-cells = <1>;
    				label = "ina226-u75";
    				reg = <0x47>;
    				shunt-resistor = <5000>;
    			};
    		};
    		i2c@2 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <2>;
    			/* MAXIM_PMBUS - 00 */
    			max15301@a { /* u46 */
    				compatible = "maxim,max15301";
    				reg = <0xa>;
    			};
    			max15303@b { /* u4 */
    				compatible = "maxim,max15303";
    				reg = <0xb>;
    			};
    			max15303@10 { /* u13 */
    				compatible = "maxim,max15303";
    				reg = <0x10>;
    			};
    			max15301@13 { /* u47 */
    				compatible = "maxim,max15301";
    				reg = <0x13>;
    			};
    			max15303@14 { /* u7 */
    				compatible = "maxim,max15303";
    				reg = <0x14>;
    			};
    			max15303@15 { /* u6 */
    				compatible = "maxim,max15303";
    				reg = <0x15>;
    			};
    			max15303@16 { /* u10 */
    				compatible = "maxim,max15303";
    				reg = <0x16>;
    			};
    			max15303@17 { /* u9 */
    				compatible = "maxim,max15303";
    				reg = <0x17>;
    			};
    			max15301@18 { /* u63 */
    				compatible = "maxim,max15301";
    				reg = <0x18>;
    			};
    			max15303@1a { /* u49 */
    				compatible = "maxim,max15303";
    				reg = <0x1a>;
    			};
    			max15303@1b { /* u8 */
    				compatible = "maxim,max15303";
    				reg = <0x1b>;
    			};
    			max15303@1d { /* u18 */
    				compatible = "maxim,max15303";
    				reg = <0x1d>;
    			};
    
    			max20751@72 { /* u95 */
    				compatible = "maxim,max20751";
    				reg = <0x72>;
    			};
    			max20751@73 { /* u96 */
    				compatible = "maxim,max20751";
    				reg = <0x73>;
    			};
    		};
    		/* Bus 3 is not connected */
    	};
    };
    
    &i2c1 {
    	status = "okay";
    	clock-frequency = <400000>;
    	pinctrl-names = "default", "gpio";
    	pinctrl-0 = <&pinctrl_i2c1_default>;
    	pinctrl-1 = <&pinctrl_i2c1_gpio>;
    	scl-gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
    	sda-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
    
    	/* PL i2c via PCA9306 - u45 */
    	i2c-mux@74 { /* u34 */
    		compatible = "nxp,pca9548";
    		#address-cells = <1>;
    		#size-cells = <0>;
    		reg = <0x74>;
    		i2c@0 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <0>;
    			/*
    			 * IIC_EEPROM 1kB memory which uses 256B blocks
    			 * where every block has different address.
    			 *    0 - 256B address 0x54
    			 * 256B - 512B address 0x55
    			 * 512B - 768B address 0x56
    			 * 768B - 1024B address 0x57
    			 */
    			eeprom: eeprom@54 { /* u23 */
    				compatible = "atmel,24c08";
    				reg = <0x54>;
    			};
    		};
    		i2c@1 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <1>;
    			si5341: clock-generator@36 { /* SI5341 - u69 */
    				compatible = "si5341";
    				reg = <0x36>;
    			};
    
    		};
    		i2c@2 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <2>;
    			si570_1: clock-generator@5d { /* USER SI570 - u42 */
    				#clock-cells = <0>;
    				compatible = "silabs,si570";
    				reg = <0x5d>;
    				temperature-stability = <50>;
    				factory-fout = <300000000>;
    				clock-frequency = <300000000>;
    				clock-output-names = "si570_user";
    			};
    		};
    		i2c@3 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <3>;
    			si570_2: clock-generator@5d { /* USER MGT SI570 - u56 */
    				#clock-cells = <0>;
    				compatible = "silabs,si570";
    				reg = <0x5d>;
    				temperature-stability = <50>; /* copy from zc702 */
    				factory-fout = <156250000>;
    				clock-frequency = <148500000>;
    				clock-output-names = "si570_mgt";
    			};
    		};
    		i2c@4 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <4>;
    			si5328: clock-generator@69 {/* SI5328 - u20 */
    				compatible = "silabs,si5328";
    				reg = <0x69>;
    			};
    		};
    		i2c@5 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <5>; /* FAN controller */
    			temp@4c {/* lm96163 - u128 */
    				compatible = "national,lm96163";
    				reg = <0x4c>;
    			};
    		};
    		/* 6 - 7 unconnected */
    	};
    
    	i2c-mux@75 {
    		compatible = "nxp,pca9548"; /* u135 */
    		#address-cells = <1>;
    		#size-cells = <0>;
    		reg = <0x75>;
    
    		i2c@0 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <0>;
    			/* HPC0_IIC */
    		};
    		i2c@1 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <1>;
    			/* HPC1_IIC */
    		};
    		i2c@2 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <2>;
    			/* SYSMON */
    		};
    		i2c@3 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <3>;
    			/* DDR4 SODIMM */
    		};
    		i2c@4 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <4>;
    			/* SEP 3 */
    		};
    		i2c@5 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <5>;
    			/* SEP 2 */
    		};
    		i2c@6 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <6>;
    			/* SEP 1 */
    		};
    		i2c@7 {
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <7>;
    			/* SEP 0 */
    		};
    	};
    };
    
    &pinctrl0 {
    	status = "okay";
    	pinctrl_i2c0_default: i2c0-default {
    		mux {
    			groups = "i2c0_3_grp";
    			function = "i2c0";
    		};
    
    		conf {
    			groups = "i2c0_3_grp";
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_i2c0_gpio: i2c0-gpio {
    		mux {
    			groups = "gpio0_14_grp", "gpio0_15_grp";
    			function = "gpio0";
    		};
    
    		conf {
    			groups = "gpio0_14_grp", "gpio0_15_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_i2c1_default: i2c1-default {
    		mux {
    			groups = "i2c1_4_grp";
    			function = "i2c1";
    		};
    
    		conf {
    			groups = "i2c1_4_grp";
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_i2c1_gpio: i2c1-gpio {
    		mux {
    			groups = "gpio0_16_grp", "gpio0_17_grp";
    			function = "gpio0";
    		};
    
    		conf {
    			groups = "gpio0_16_grp", "gpio0_17_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_uart0_default: uart0-default {
    		mux {
    			groups = "uart0_4_grp";
    			function = "uart0";
    		};
    
    		conf {
    			groups = "uart0_4_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO18";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO19";
    			bias-disable;
    		};
    	};
    
    	pinctrl_uart1_default: uart1-default {
    		mux {
    			groups = "uart1_5_grp";
    			function = "uart1";
    		};
    
    		conf {
    			groups = "uart1_5_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO21";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO20";
    			bias-disable;
    		};
    	};
    
    	pinctrl_usb0_default: usb0-default {
    		mux {
    			groups = "usb0_0_grp";
    			function = "usb0";
    		};
    
    		conf {
    			groups = "usb0_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO52", "MIO53", "MIO55";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO54", "MIO56", "MIO57", "MIO58", "MIO59",
    			       "MIO60", "MIO61", "MIO62", "MIO63";
    			bias-disable;
    		};
    	};
    
    	pinctrl_gem3_default: gem3-default {
    		mux {
    			function = "ethernet3";
    			groups = "ethernet3_0_grp";
    		};
    
    		conf {
    			groups = "ethernet3_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO70", "MIO71", "MIO72", "MIO73", "MIO74",
    									"MIO75";
    			bias-high-impedance;
    			low-power-disable;
    		};
    
    		conf-tx {
    			pins = "MIO64", "MIO65", "MIO66", "MIO67", "MIO68",
    									"MIO69";
    			bias-disable;
    			low-power-enable;
    		};
    
    		mux-mdio {
    			function = "mdio3";
    			groups = "mdio3_0_grp";
    		};
    
    		conf-mdio {
    			groups = "mdio3_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    			bias-disable;
    		};
    	};
    
    	pinctrl_can1_default: can1-default {
    		mux {
    			function = "can1";
    			groups = "can1_6_grp";
    		};
    
    		conf {
    			groups = "can1_6_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-rx {
    			pins = "MIO25";
    			bias-high-impedance;
    		};
    
    		conf-tx {
    			pins = "MIO24";
    			bias-disable;
    		};
    	};
    
    	pinctrl_sdhci1_default: sdhci1-default {
    		mux {
    			groups = "sdio1_0_grp";
    			function = "sdio1";
    		};
    
    		conf {
    			groups = "sdio1_0_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    			bias-disable;
    		};
    
    		mux-cd {
    			groups = "sdio1_cd_0_grp";
    			function = "sdio1_cd";
    		};
    
    		conf-cd {
    			groups = "sdio1_cd_0_grp";
    			bias-high-impedance;
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		mux-wp {
    			groups = "sdio1_wp_0_grp";
    			function = "sdio1_wp";
    		};
    
    		conf-wp {
    			groups = "sdio1_wp_0_grp";
    			bias-high-impedance;
    			bias-pull-up;
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    	};
    
    	pinctrl_gpio_default: gpio-default {
    		mux {
    			function = "gpio0";
    			groups = "gpio0_22_grp", "gpio0_23_grp";
    		};
    
    		conf {
    			groups = "gpio0_22_grp", "gpio0_23_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		mux-msp {
    			function = "gpio0";
    			groups = "gpio0_13_grp", "gpio0_38_grp";
    		};
    
    		conf-msp {
    			groups = "gpio0_13_grp", "gpio0_38_grp";
    			slew-rate = <SLEW_RATE_SLOW>;
    			io-standard = <IO_STANDARD_LVCMOS18>;
    		};
    
    		conf-pull-up {
    			pins = "MIO22";
    			bias-pull-up;
    		};
    
    		conf-pull-none {
    			pins = "MIO13", "MIO23", "MIO38";
    			bias-disable;
    		};
    	};
    };
    
    //&qspi {
    //	status = "okay";
    //	is-dual = <1>;
    //	flash@0 {
    //		compatible = "m25p80", "jedec,spi-nor"; /* 32MB */
    //		#address-cells = <1>;
    //		#size-cells = <1>;
    //		reg = <0x0>;
    //		spi-tx-bus-width = <1>;
    //		spi-rx-bus-width = <4>; /* FIXME also DUAL configuration possible */
    //		spi-max-frequency = <108000000>; /* Based on DC1 spec */
    //		partition@0 { /* for testing purpose */
    //			label = "qspi-fsbl-uboot";
    //			reg = <0x0 0x100000>;
    //		};
    //		partition@100000 { /* for testing purpose */
    //			label = "qspi-linux";
    //			reg = <0x100000 0x500000>;
    //		};
    //		partition@600000 { /* for testing purpose */
    //			label = "qspi-device-tree";
    //			reg = <0x600000 0x20000>;
    //		};
    //		partition@620000 { /* for testing purpose */
    //			label = "qspi-rootfs";
    //			reg = <0x620000 0x5E0000>;
    //		};
    //	};
    //};
    
    &rtc {
    	status = "okay";
    };
    
    &sata {
    	status = "okay";
    	/* SATA OOB timing settings */
    	ceva,p0-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
    	ceva,p0-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
    	ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
    	ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
    	ceva,p1-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>;
    	ceva,p1-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>;
    	ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
    	ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
    	phy-names = "sata-phy";
    	phys = <&lane3 PHY_TYPE_SATA 1 1 125000000>;
    };
    
    /* SD1 with level shifter */
    &sdhci1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_sdhci1_default>;
    	/*
    	 * This property should be removed for supporting UHS mode
    	 */
    	no-1-8-v;
    	xlnx,mio_bank = <1>;
    };
    
    &serdes {
    	status = "okay";
    };
    
    &uart0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_uart0_default>;
    };
    
    &uart1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_uart1_default>;
    };
    
    /* ULPI SMSC USB3320 */
    &usb0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_usb0_default>;
    };
    
    &dwc3_0 {
    	status = "okay";
    	dr_mode = "host";
    	snps,usb3_lpm_capable;
    	phy-names = "usb3-phy";
    	phys = <&lane2 PHY_TYPE_USB3 0 2 26000000>;
    };
    
    
    &watchdog0 {
    	status = "okay";
    };
    
    &zynqmp_dpsub {
    	status = "okay";
    	phy-names = "dp-phy0", "dp-phy1";
    	phys = <&lane1 PHY_TYPE_DP 0 3 27000000>, <&lane0 PHY_TYPE_DP 1 3 27000000>;
    };
    
    &zynqmp_dp_snd_pcm0 {
    	status = "okay";
    };
    
    &zynqmp_dp_snd_pcm1 {
    	status = "okay";
    };
    
    &zynqmp_dp_snd_card0 {
    	status = "okay";
    };
    
    &zynqmp_dp_snd_codec0 {
    	status = "okay";
    };
    
    &xlnx_dpdma {
    	status = "okay";
    };
    
    &amba_pl{
            // Remove
            /delete-node/axi_dma_0;
    	/delete-node/dma-channel@a0050000;
    	/delete-node/dma-channel@a0050030;
    };
    &axi_dma_0{
            // Remove
            /delete-property/compatible;
            /delete-property/interrupt-names;
            /delete-property/interrupt-parent;
            /delete-property/interrupts;
    };
    &axi_dma_1{
            // Remove
            /delete-property/compatible;
            /delete-property/interrupt-names;
            /delete-property/interrupt-parent;
            /delete-property/interrupts;
    };
    //**********************************************         
    
    / {
    
    
    dkdma_rxinterrupt_data {
    	compatible = "generic-uio";
    	status = "okay";
    	interrupt-parent = <&gic>;
    	interrupts = <0 104 1>;
    }; 
    
    dkdma_rxinterrupt {
    	compatible = "generic-uio";
    	status = "okay";
    	interrupt-parent = <&gic>;
    	interrupts = <0 105 1>;
    }; 
    	
    };
    //**********************************************         
    
    
    
    
    
    

    #User Configuration
    
    #OE_TERMINAL = "tmux"
    KERNEL_DTB="zynqmp-zcu102-rev10-adrv9002"
    #DTS_BASE="/home/dk/dk/peta_linux/meta-adi/meta-adi-xilinx/recipes-bsp/device-tree/files/zcu106_dk.dts"
    #DTS_BASE_zynqmp ="/home/dk/dk/peta_linux/meta-adi/meta-adi-xilinx/recipes-bsp/device-tree/files/zcu106_dk.dts"
    

    I have also tried putting the zcu106 device tree in  custom-devicetree.dts and had pl-delete-nodes-custom-devicetree.dtsi file with no deletes. With this I modified device-tree.bbappend, and added these two sources to the SRC_URI_apppend_zynqmp. This resulted in the same hang at boot.

    Thanks very much for helping with this

Children
  • Well,

    I would not do things like this... Forget about the system-user.dtsi for now. I would just define your own devicetree. Also, KERNEL_DTB should not be zynqmp-zcu102-rev10-adrv9002 as this is based on zcu102... Your pl-delete-nodes devicetree looksfine though (as you are using xilinx DMA IP and you are not deleting those nodes)... So, I would have my custom devicetree like this (note that I did not tested this at all):

    #include "zynqmp-zcu106-revA.dts"
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/gpio/gpio.h>
    
    &i2c1 {
    	i2c-mux@75 {
    		i2c@1 { /* HPC1 */
    			#address-cells = <1>;
    			#size-cells = <0>;
    			reg = <1>;
    
    			eeprom@50 {
    				compatible = "at24,24c02";
    				reg = <0x50>;
    			};
    
    		};
    	};
    };
    
    / {
    	fpga_axi  {
    		interrupt-parent = <&gic>;
    		compatible = "simple-bus";
    		#address-cells = <0x1>;
    		#size-cells = <0x1>;
    		ranges = <0 0 0 0xffffffff>;
    
    		axi_adrv9002_core_rx1: axi-adrv9002-rx-lpc@84A00000 {
    			compatible = "adi,axi-adrv9002-rx-1.0";
    			reg = <0x84A00000 0x6000>;
    			clocks = <&adc0_adrv9002 0>;
    			dmas = <&rx1_dma 0>;
    			dma-names = "rx";
    			spibus-connected = <&adc0_adrv9002>;
    		};
    
    		axi_adrv9002_core_tx1: axi-adrv9002-tx-lpc@84A04000 {
    			compatible = "adi,axi-adrv9002-tx-1.0";
    			reg = <0x84A0A000 0x2000>;
    			clocks = <&adc0_adrv9002 1>;
    			clock-names = "sampl_clk";
    			dmas = <&tx1_dma 0>;
    			dma-names = "tx";
    			adi,axi-dds-default-scale = <0x800>;
    			adi,axi-dds-default-frequency = <2000000>;
    		};
    
    		axi_adrv9002_core_tdd1: axi-adrv9002-core-tdd1-lpc@44A0C800 {
    			compatible = "adi,axi-tdd-1.00";
    			reg = <0x84A0C800 0x400>;
    			clocks = <&zynqmp_clk 71>, <&adc0_adrv9002 2>;
    			clock-names = "s_axi_aclk", "intf_clk";
    		};
    
    		axi_adrv9002_core_rx2: axi-adrv9002-rx2-lpc@84A02000 {
    			compatible = "adi,axi-adrv9002-rx2-1.0";
    			reg = <0x84A09000 0x1000>;
    			clocks = <&adc0_adrv9002 3>;
    			clock-names = "sampl_clk";
    			dmas = <&rx2_dma 0>;
    			dma-names = "rx";
    		};
    
    		axi_adrv9002_core_tx2: axi-adrv9002-tx2-lpc@84A06000 {
    			compatible = "adi,axi-adrv9002-tx-1.0";
    			reg = <0x84A0C000 0x2000>;
    			clocks = <&adc0_adrv9002 4>;
    			clock-names = "sampl_clk";
    			dmas = <&tx2_dma 0>;
    			dma-names = "tx";
    			adi,axi-dds-default-scale = <0x800>;
    			adi,axi-dds-default-frequency = <2000000>;
    		};
    
    		axi_adrv9002_core_tdd2: axi-adrv9002-core-tdd2-lpc@44A0C800 {
    			compatible = "adi,axi-tdd-1.00";
    			reg = <0x84A0CC00 0x400>;
    			clocks = <&zynqmp_clk 71>, <&adc0_adrv9002 5>;
    			clock-names = "s_axi_aclk", "intf_clk";
    		};
    
    		axi_sysid_0: axi-sysid-0@85000000 {
    			compatible = "adi,axi-sysid-1.00.a";
    			reg = <0x85000000 0x10000>;
    		};
    
        };
    };
    
    &spi0 {
    	status = "okay";
    };
    
    #define fmc_spi spi0
    
    #include "adi-adrv9002.dtsi"
    
    /*
    Name		HDL	Linux
    ssi_sync	54	132
    mcs		53	131
    output_enable	52	130
    tx2_enable	51	129
    tx1_enable	50	128
    rx2_enable	49	127
    rx1_enable	48	126
    sm_fan_tach	47	125
    reset_trx	46	124
    mode		45	123
    gp_int		44	122
    dgpio_11	43	121
    dgpio_10	42	120
    dgpio_9		41	119
    dgpio_8		40	118
    dgpio_7		39	117
    dgpio_6		38	116
    dgpio_5		37	115
    dgpio_4		36	114
    dgpio_3		35	113
    dgpio_2		34	112
    dgpio_1		33	111
    dgpio_0		32	110
    */
    
    &adc0_adrv9002 {
    	reset-gpios = <&gpio 124 GPIO_ACTIVE_LOW>;
    };

    You need to adapt the addresses to your own project and also add your custom nodes "dkdma stuff". Note that I just copied the  zynqmp-zcu102-rev10-adrv9002.dts, removed the dma stuff and included zcu106 instead of zcu102. After this, I would further append the devicetree recipe with your own devicetree.bbappend file. The contents would be something like:

    FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
    
    SRC_URI_append = " \
    	pl-delete-nodes-custom-devicetree.dtsi \
    	custom-devicetree.dts \
    "
    
    KERNEL_DTB_PATH = "${WORKDIR}"
    DTB_TAG_FILE_zynqmp ?= "${WORKDIR}/zynqmp-zcu106-revA.dts

    Try to give this a try. We never ran meta-adi with zcu106 so there might be some subtleties that I'm not aware about...

    Hope this helps!

    - Nuno Sá 

  • Thanks Nuno,

    I will give this a try.

    I am not sure what KERNEL_DTB should be set to.

    I thought this had to be zynqmp-zcu102-rev10-adrv9002 as the zcu106 is not supported by the meta-adi.

    Thanks again

  • KERNEL_DTB should be set to the devicetree to be used. In your case, it will be your custom one... As zcu106 is not supported in meta-adi, you need to come up with your devicetree to support it. Using the ADI default one and extend it would be too cumbersome...

    - Nuno Sá

  • Ok that is a huge help !!!

    Almost there...

    I can now boot without crashing, however, when I examine   /sys/bus/iio/devices/

    The only thing there isiio_sysfs_trigger.

    I do not see iio:device0 etc.

    I enabled all of the Industrial IO items in petalinux-config -c kernel, all of the analog devices items were automatically selected.

    Thanks again

  • What's your dmesg content? Do you see any error message related with the ADI drivers? Cam you also make sure that the devicetree nodes for the drivers are actually in the compiled dtb? At this point, I would say that either the drivers are failing to probe or there's still some issues on the devicetree build...

    - Nuno Sá 

  • Hi Nuno,

    Thanks so much for the valuable help.

    from dmesg I see a number of: iio_hwmon ina226-u85: no pinctrl handle

    I am not sure what this means.

    Anyway, my dmesg output is attached along with my proc/device-tree directory.

    Thanks again

    [    5.792632] platform ina226-u87: Retrying from deferred list
    [    5.792734] bus: 'platform': driver_probe_device: matched device ina226-u87 with driver iio_hwmon
    [    5.792738] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u87
    [    5.792745] iio_hwmon ina226-u87: no pinctrl handle
    [    5.792771] platform ina226-u87: Driver iio_hwmon requests probe deferral
    [    5.792774] platform ina226-u87: Added to deferred list
    [    5.792819] devices_kset: Moving ina226-u85 to end of list
    [    5.792822] PM: Moving platform:ina226-u85 to end of list
    [    5.792826] platform ina226-u85: Retrying from deferred list
    [    5.792926] bus: 'platform': driver_probe_device: matched device ina226-u85 with driver iio_hwmon
    [    5.792930] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u85
    [    5.792938] iio_hwmon ina226-u85: no pinctrl handle
    [    5.792964] platform ina226-u85: Driver iio_hwmon requests probe deferral
    [    5.792967] platform ina226-u85: Added to deferred list
    [    5.793012] devices_kset: Moving ina226-u86 to end of list
    [    5.793014] PM: Moving platform:ina226-u86 to end of list
    [    5.793018] platform ina226-u86: Retrying from deferred list
    [    5.793121] bus: 'platform': driver_probe_device: matched device ina226-u86 with driver iio_hwmon
    [    5.793125] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u86
    [    5.793132] iio_hwmon ina226-u86: no pinctrl handle
    [    5.793158] platform ina226-u86: Driver iio_hwmon requests probe deferral
    [    5.793161] platform ina226-u86: Added to deferred list
    [    5.793207] devices_kset: Moving ina226-u93 to end of list
    [    5.793209] PM: Moving platform:ina226-u93 to end of list
    [    5.793213] platform ina226-u93: Retrying from deferred list
    [    5.793313] bus: 'platform': driver_probe_device: matched device ina226-u93 with driver iio_hwmon
    [    5.793317] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u93
    [    5.793324] iio_hwmon ina226-u93: no pinctrl handle
    [    5.793364] platform ina226-u93: Driver iio_hwmon requests probe deferral
    [    5.793368] platform ina226-u93: Added to deferred list
    [    5.793413] devices_kset: Moving ina226-u88 to end of list
    [    5.793415] PM: Moving platform:ina226-u88 to end of list
    [    5.793420] platform ina226-u88: Retrying from deferred list
    [    5.793522] bus: 'platform': driver_probe_device: matched device ina226-u88 with driver iio_hwmon
    [    5.793526] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u88
    [    5.793533] iio_hwmon ina226-u88: no pinctrl handle
    [    5.793559] platform ina226-u88: Driver iio_hwmon requests probe deferral
    [    5.793563] platform ina226-u88: Added to deferred list
    [    5.793608] devices_kset: Moving ina226-u15 to end of list
    [    5.793610] PM: Moving platform:ina226-u15 to end of list
    [    5.793614] platform ina226-u15: Retrying from deferred list
    [    5.793714] bus: 'platform': driver_probe_device: matched device ina226-u15 with driver iio_hwmon
    [    5.793718] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u15
    [    5.793725] iio_hwmon ina226-u15: no pinctrl handle
    [    5.793751] platform ina226-u15: Driver iio_hwmon requests probe deferral
    [    5.793755] platform ina226-u15: Added to deferred list
    [    5.793800] devices_kset: Moving ina226-u92 to end of list
    [    5.793802] PM: Moving platform:ina226-u92 to end of list
    [    5.793806] platform ina226-u92: Retrying from deferred list
    [    5.793907] bus: 'platform': driver_probe_device: matched device ina226-u92 with driver iio_hwmon
    [    5.793911] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u92
    [    5.793919] iio_hwmon ina226-u92: no pinctrl handle
    [    5.793944] platform ina226-u92: Driver iio_hwmon requests probe deferral
    [    5.793947] platform ina226-u92: Added to deferred list
    [    5.793993] devices_kset: Moving ina226-u79 to end of list
    [    5.793995] PM: Moving platform:ina226-u79 to end of list
    [    5.793999] platform ina226-u79: Retrying from deferred list
    [    5.794100] bus: 'platform': driver_probe_device: matched device ina226-u79 with driver iio_hwmon
    [    5.794104] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u79
    [    5.794111] iio_hwmon ina226-u79: no pinctrl handle
    [    5.794137] platform ina226-u79: Driver iio_hwmon requests probe deferral
    [    5.794141] platform ina226-u79: Added to deferred list
    [    5.794186] devices_kset: Moving ina226-u81 to end of list
    [    5.794188] PM: Moving platform:ina226-u81 to end of list
    [    5.794193] platform ina226-u81: Retrying from deferred list
    [    5.794296] bus: 'platform': driver_probe_device: matched device ina226-u81 with driver iio_hwmon
    [    5.794300] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u81
    [    5.794307] iio_hwmon ina226-u81: no pinctrl handle
    [    5.794333] platform ina226-u81: Driver iio_hwmon requests probe deferral
    [    5.794336] platform ina226-u81: Added to deferred list
    [    5.794381] devices_kset: Moving ina226-u80 to end of list
    [    5.794384] PM: Moving platform:ina226-u80 to end of list
    [    5.794388] platform ina226-u80: Retrying from deferred list
    [    5.794489] bus: 'platform': driver_probe_device: matched device ina226-u80 with driver iio_hwmon
    [    5.794493] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u80
    [    5.794500] iio_hwmon ina226-u80: no pinctrl handle
    [    5.794527] platform ina226-u80: Driver iio_hwmon requests probe deferral
    [    5.794530] platform ina226-u80: Added to deferred list
    [    5.794575] devices_kset: Moving ina226-u84 to end of list
    [    5.794577] PM: Moving platform:ina226-u84 to end of list
    [    5.794581] platform ina226-u84: Retrying from deferred list
    [    5.794684] bus: 'platform': driver_probe_device: matched device ina226-u84 with driver iio_hwmon
    [    5.794688] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u84
    [    5.794695] iio_hwmon ina226-u84: no pinctrl handle
    [    5.794721] platform ina226-u84: Driver iio_hwmon requests probe deferral
    [    5.794725] platform ina226-u84: Added to deferred list
    [    5.794770] devices_kset: Moving ina226-u16 to end of list
    [    5.794772] PM: Moving platform:ina226-u16 to end of list
    [    5.794776] platform ina226-u16: Retrying from deferred list
    [    5.794877] bus: 'platform': driver_probe_device: matched device ina226-u16 with driver iio_hwmon
    [    5.794881] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u16
    [    5.794889] iio_hwmon ina226-u16: no pinctrl handle
    [    5.794915] platform ina226-u16: Driver iio_hwmon requests probe deferral
    [    5.794919] platform ina226-u16: Added to deferred list
    [    5.794964] devices_kset: Moving ina226-u65 to end of list
    [    5.794966] PM: Moving platform:ina226-u65 to end of list
    [    5.794970] platform ina226-u65: Retrying from deferred list
    [    5.795074] bus: 'platform': driver_probe_device: matched device ina226-u65 with driver iio_hwmon
    [    5.795078] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u65
    [    5.795085] iio_hwmon ina226-u65: no pinctrl handle
    [    5.795110] platform ina226-u65: Driver iio_hwmon requests probe deferral
    [    5.795114] platform ina226-u65: Added to deferred list
    [    5.795159] devices_kset: Moving ina226-u74 to end of list
    [    5.795162] PM: Moving platform:ina226-u74 to end of list
    [    5.795166] platform ina226-u74: Retrying from deferred list
    [    5.795266] bus: 'platform': driver_probe_device: matched device ina226-u74 with driver iio_hwmon
    [    5.795270] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u74
    [    5.795278] iio_hwmon ina226-u74: no pinctrl handle
    [    5.795304] platform ina226-u74: Driver iio_hwmon requests probe deferral
    [    5.795307] platform ina226-u74: Added to deferred list
    [    5.795352] devices_kset: Moving ina226-u75 to end of list
    [    5.795354] PM: Moving platform:ina226-u75 to end of list
    [    5.795358] platform ina226-u75: Retrying from deferred list
    [    5.795461] bus: 'platform': driver_probe_device: matched device ina226-u75 with driver iio_hwmon
    [    5.795464] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u75
    [    5.795471] iio_hwmon ina226-u75: no pinctrl handle
    [    5.795497] platform ina226-u75: Driver iio_hwmon requests probe deferral
    [    5.795501] platform ina226-u75: Added to deferred list
    [    5.795571] [drm] Cannot find any crtc or sizes
    [    5.795876] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem
    [    5.807409] EXT4-fs (mmcblk0p2): write access will be enabled during recovery
    [    5.941417] usb 1-1.1: new low-speed USB device number 3 using xhci-hcd
    [    6.049309] usb 1-1.1: New USB device found, idVendor=0461, idProduct=4d51, bcdDevice= 7.17
    [    6.057656] usb 1-1.1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
    [    6.064961] usb 1-1.1: Product: DELL Laser Mouse
    [    6.069572] device: '1-1.1': device_add
    [    6.069638] bus: 'usb': add device 1-1.1
    [    6.069660] PM: Adding info for usb:1-1.1
    [    6.069776] bus: 'usb': driver_probe_device: matched device 1-1.1 with driver usb
    [    6.069783] bus: 'usb': really_probe: probing driver usb with device 1-1.1
    [    6.069804] usb 1-1.1: no default pinctrl state
    [    6.128109] device: '1-1.1:1.0': device_add
    [    6.128130] bus: 'usb': add device 1-1.1:1.0
    [    6.128138] PM: Adding info for usb:1-1.1:1.0
    [    6.128221] bus: 'usb': driver_probe_device: matched device 1-1.1:1.0 with driver usbhid
    [    6.128225] bus: 'usb': really_probe: probing driver usbhid with device 1-1.1:1.0
    [    6.128234] usbhid 1-1.1:1.0: no default pinctrl state
    [    6.130350] device: '0003:0461:4D51.0001': device_add
    [    6.130359] bus: 'hid': add device 0003:0461:4D51.0001
    [    6.130377] PM: Adding info for hid:0003:0461:4D51.0001
    [    6.130394] bus: 'hid': driver_probe_device: matched device 0003:0461:4D51.0001 with driver hid-generic
    [    6.130398] bus: 'hid': really_probe: probing driver hid-generic with device 0003:0461:4D51.0001
    [    6.130407] hid-generic 0003:0461:4D51.0001: no default pinctrl state
    [    6.130598] device: 'input1': device_add
    [    6.130654] PM: Adding info for No Bus:input1
    [    6.130700] input: DELL Laser Mouse as /devices/platform/amba/ff9d0000.usb0/fe200000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1.1/1-1.1:1.0/0003:0461:4D51.0001/input/input1
    [    6.145313] device: 'event1': device_add
    [    6.145338] PM: Adding info for No Bus:event1
    [    6.145398] hid-generic 0003:0461:4D51.0001: input: USB HID v1.11 Mouse [DELL Laser Mouse] on usb-xhci-hcd.0.auto-1.1/input0
    [    6.156605] driver: 'hid-generic': driver_bound: bound to device '0003:0461:4D51.0001'
    [    6.156622] bus: 'hid': really_probe: bound device 0003:0461:4D51.0001 to driver hid-generic
    [    6.156629] driver: 'usbhid': driver_bound: bound to device '1-1.1:1.0'
    [    6.156645] bus: 'usb': really_probe: bound device 1-1.1:1.0 to driver usbhid
    [    6.156652] device: 'ep_81': device_add
    [    6.156679] PM: Adding info for No Bus:ep_81
    [    6.156684] driver: 'usb': driver_bound: bound to device '1-1.1'
    [    6.156700] bus: 'usb': really_probe: bound device 1-1.1 to driver usb
    [    6.156717] device: 'ep_00': device_add
    [    6.156741] PM: Adding info for No Bus:ep_00
    [    6.156760] devices_kset: Moving ina226-u76 to end of list
    [    6.156764] PM: Moving platform:ina226-u76 to end of list
    [    6.156771] platform ina226-u76: Retrying from deferred list
    [    6.157014] bus: 'platform': driver_probe_device: matched device ina226-u76 with driver iio_hwmon
    [    6.157019] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u76
    [    6.157028] iio_hwmon ina226-u76: no pinctrl handle
    [    6.157075] platform ina226-u76: Driver iio_hwmon requests probe deferral
    [    6.157079] platform ina226-u76: Added to deferred list
    [    6.157190] devices_kset: Moving ina226-u77 to end of list
    [    6.157193] PM: Moving platform:ina226-u77 to end of list
    [    6.157197] platform ina226-u77: Retrying from deferred list
    [    6.157316] bus: 'platform': driver_probe_device: matched device ina226-u77 with driver iio_hwmon
    [    6.157320] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u77
    [    6.157327] iio_hwmon ina226-u77: no pinctrl handle
    [    6.157363] platform ina226-u77: Driver iio_hwmon requests probe deferral
    [    6.157367] platform ina226-u77: Added to deferred list
    [    6.157415] devices_kset: Moving ina226-u78 to end of list
    [    6.157418] PM: Moving platform:ina226-u78 to end of list
    [    6.157421] platform ina226-u78: Retrying from deferred list
    [    6.157523] bus: 'platform': driver_probe_device: matched device ina226-u78 with driver iio_hwmon
    [    6.157527] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u78
    [    6.157534] iio_hwmon ina226-u78: no pinctrl handle
    [    6.157560] platform ina226-u78: Driver iio_hwmon requests probe deferral
    [    6.157564] platform ina226-u78: Added to deferred list
    [    6.157609] devices_kset: Moving ina226-u87 to end of list
    [    6.157611] PM: Moving platform:ina226-u87 to end of list
    [    6.157615] platform ina226-u87: Retrying from deferred list
    [    6.157718] bus: 'platform': driver_probe_device: matched device ina226-u87 with driver iio_hwmon
    [    6.157722] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u87
    [    6.157730] iio_hwmon ina226-u87: no pinctrl handle
    [    6.157755] platform ina226-u87: Driver iio_hwmon requests probe deferral
    [    6.157759] platform ina226-u87: Added to deferred list
    [    6.157804] devices_kset: Moving ina226-u85 to end of list
    [    6.157807] PM: Moving platform:ina226-u85 to end of list
    [    6.157811] platform ina226-u85: Retrying from deferred list
    [    6.157912] bus: 'platform': driver_probe_device: matched device ina226-u85 with driver iio_hwmon
    [    6.157916] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u85
    [    6.157924] iio_hwmon ina226-u85: no pinctrl handle
    [    6.157949] platform ina226-u85: Driver iio_hwmon requests probe deferral
    [    6.157953] platform ina226-u85: Added to deferred list
    [    6.157998] devices_kset: Moving ina226-u86 to end of list
    [    6.158000] PM: Moving platform:ina226-u86 to end of list
    [    6.158004] platform ina226-u86: Retrying from deferred list
    [    6.158107] bus: 'platform': driver_probe_device: matched device ina226-u86 with driver iio_hwmon
    [    6.158111] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u86
    [    6.158119] iio_hwmon ina226-u86: no pinctrl handle
    [    6.158145] platform ina226-u86: Driver iio_hwmon requests probe deferral
    [    6.158149] platform ina226-u86: Added to deferred list
    [    6.158195] devices_kset: Moving ina226-u93 to end of list
    [    6.158197] PM: Moving platform:ina226-u93 to end of list
    [    6.158201] platform ina226-u93: Retrying from deferred list
    [    6.158301] bus: 'platform': driver_probe_device: matched device ina226-u93 with driver iio_hwmon
    [    6.158305] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u93
    [    6.158312] iio_hwmon ina226-u93: no pinctrl handle
    [    6.158338] platform ina226-u93: Driver iio_hwmon requests probe deferral
    [    6.158342] platform ina226-u93: Added to deferred list
    [    6.158387] devices_kset: Moving ina226-u88 to end of list
    [    6.158389] PM: Moving platform:ina226-u88 to end of list
    [    6.158393] platform ina226-u88: Retrying from deferred list
    [    6.158496] bus: 'platform': driver_probe_device: matched device ina226-u88 with driver iio_hwmon
    [    6.158500] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u88
    [    6.158507] iio_hwmon ina226-u88: no pinctrl handle
    [    6.158532] platform ina226-u88: Driver iio_hwmon requests probe deferral
    [    6.158536] platform ina226-u88: Added to deferred list
    [    6.158581] devices_kset: Moving ina226-u15 to end of list
    [    6.158584] PM: Moving platform:ina226-u15 to end of list
    [    6.158587] platform ina226-u15: Retrying from deferred list
    [    6.158688] bus: 'platform': driver_probe_device: matched device ina226-u15 with driver iio_hwmon
    [    6.158693] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u15
    [    6.158700] iio_hwmon ina226-u15: no pinctrl handle
    [    6.158725] platform ina226-u15: Driver iio_hwmon requests probe deferral
    [    6.158729] platform ina226-u15: Added to deferred list
    [    6.158774] devices_kset: Moving ina226-u92 to end of list
    [    6.158776] PM: Moving platform:ina226-u92 to end of list
    [    6.158780] platform ina226-u92: Retrying from deferred list
    [    6.158883] bus: 'platform': driver_probe_device: matched device ina226-u92 with driver iio_hwmon
    [    6.158887] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u92
    [    6.158895] iio_hwmon ina226-u92: no pinctrl handle
    [    6.158920] platform ina226-u92: Driver iio_hwmon requests probe deferral
    [    6.158924] platform ina226-u92: Added to deferred list
    [    6.158969] devices_kset: Moving ina226-u79 to end of list
    [    6.158972] PM: Moving platform:ina226-u79 to end of list
    [    6.158976] platform ina226-u79: Retrying from deferred list
    [    6.159076] bus: 'platform': driver_probe_device: matched device ina226-u79 with driver iio_hwmon
    [    6.159080] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u79
    [    6.159088] iio_hwmon ina226-u79: no pinctrl handle
    [    6.159113] platform ina226-u79: Driver iio_hwmon requests probe deferral
    [    6.159117] platform ina226-u79: Added to deferred list
    [    6.159162] devices_kset: Moving ina226-u81 to end of list
    [    6.159164] PM: Moving platform:ina226-u81 to end of list
    [    6.159168] platform ina226-u81: Retrying from deferred list
    [    6.159271] bus: 'platform': driver_probe_device: matched device ina226-u81 with driver iio_hwmon
    [    6.159275] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u81
    [    6.159282] iio_hwmon ina226-u81: no pinctrl handle
    [    6.159308] platform ina226-u81: Driver iio_hwmon requests probe deferral
    [    6.159311] platform ina226-u81: Added to deferred list
    [    6.159357] devices_kset: Moving ina226-u80 to end of list
    [    6.159359] PM: Moving platform:ina226-u80 to end of list
    [    6.159363] platform ina226-u80: Retrying from deferred list
    [    6.159464] bus: 'platform': driver_probe_device: matched device ina226-u80 with driver iio_hwmon
    [    6.159468] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u80
    [    6.159476] iio_hwmon ina226-u80: no pinctrl handle
    [    6.159501] platform ina226-u80: Driver iio_hwmon requests probe deferral
    [    6.159505] platform ina226-u80: Added to deferred list
    [    6.159550] devices_kset: Moving ina226-u84 to end of list
    [    6.159552] PM: Moving platform:ina226-u84 to end of list
    [    6.159556] platform ina226-u84: Retrying from deferred list
    [    6.159659] bus: 'platform': driver_probe_device: matched device ina226-u84 with driver iio_hwmon
    [    6.159663] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u84
    [    6.159670] iio_hwmon ina226-u84: no pinctrl handle
    [    6.159695] platform ina226-u84: Driver iio_hwmon requests probe deferral
    [    6.159699] platform ina226-u84: Added to deferred list
    [    6.159744] devices_kset: Moving ina226-u16 to end of list
    [    6.159747] PM: Moving platform:ina226-u16 to end of list
    [    6.159751] platform ina226-u16: Retrying from deferred list
    [    6.159852] bus: 'platform': driver_probe_device: matched device ina226-u16 with driver iio_hwmon
    [    6.159856] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u16
    [    6.159864] iio_hwmon ina226-u16: no pinctrl handle
    [    6.159890] platform ina226-u16: Driver iio_hwmon requests probe deferral
    [    6.159893] platform ina226-u16: Added to deferred list
    [    6.159938] devices_kset: Moving ina226-u65 to end of list
    [    6.159940] PM: Moving platform:ina226-u65 to end of list
    [    6.159944] platform ina226-u65: Retrying from deferred list
    [    6.160047] bus: 'platform': driver_probe_device: matched device ina226-u65 with driver iio_hwmon
    [    6.160051] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u65
    [    6.160059] iio_hwmon ina226-u65: no pinctrl handle
    [    6.160084] platform ina226-u65: Driver iio_hwmon requests probe deferral
    [    6.160088] platform ina226-u65: Added to deferred list
    [    6.160133] devices_kset: Moving ina226-u74 to end of list
    [    6.160136] PM: Moving platform:ina226-u74 to end of list
    [    6.160139] platform ina226-u74: Retrying from deferred list
    [    6.160240] bus: 'platform': driver_probe_device: matched device ina226-u74 with driver iio_hwmon
    [    6.160244] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u74
    [    6.160251] iio_hwmon ina226-u74: no pinctrl handle
    [    6.160277] platform ina226-u74: Driver iio_hwmon requests probe deferral
    [    6.160281] platform ina226-u74: Added to deferred list
    [    6.160325] devices_kset: Moving ina226-u75 to end of list
    [    6.160328] PM: Moving platform:ina226-u75 to end of list
    [    6.160332] platform ina226-u75: Retrying from deferred list
    [    6.160434] bus: 'platform': driver_probe_device: matched device ina226-u75 with driver iio_hwmon
    [    6.160438] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u75
    [    6.160446] iio_hwmon ina226-u75: no pinctrl handle
    [    6.160471] platform ina226-u75: Driver iio_hwmon requests probe deferral
    [    6.160475] platform ina226-u75: Added to deferred list
    [    6.241352] cdns-i2c ff020000.i2c: genpd_runtime_suspend()
    [    6.241388] cdns-i2c ff020000.i2c: suspend latency exceeded, 31000 ns
    [    6.241471] PM: domain10: Power-off latency exceeded, new value 77280 ns
    [    6.241485] usb 1-1.4: new high-speed USB device number 4 using xhci-hcd
    [    6.346635] usb 1-1.4: New USB device found, idVendor=0bda, idProduct=8178, bcdDevice= 2.00
    [    6.354979] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [    6.362284] usb 1-1.4: Product: 802.11n WLAN Adapter
    [    6.367239] usb 1-1.4: Manufacturer: Realtek
    [    6.371501] usb 1-1.4: SerialNumber: 00e04c000001
    [    6.376199] device: '1-1.4': device_add
    [    6.376252] bus: 'usb': add device 1-1.4
    [    6.376267] PM: Adding info for usb:1-1.4
    [    6.376330] bus: 'usb': driver_probe_device: matched device 1-1.4 with driver usb
    [    6.376334] bus: 'usb': really_probe: probing driver usb with device 1-1.4
    [    6.376343] usb 1-1.4: no default pinctrl state
    [    6.415522] device: '1-1.4:1.0': device_add
    [    6.415543] bus: 'usb': add device 1-1.4:1.0
    [    6.415550] PM: Adding info for usb:1-1.4:1.0
    [    6.415572] bus: 'usb': driver_probe_device: matched device 1-1.4:1.0 with driver rtl8192cu
    [    6.415576] bus: 'usb': really_probe: probing driver rtl8192cu with device 1-1.4:1.0
    [    6.415587] rtl8192cu 1-1.4:1.0: no default pinctrl state
    [    6.415702] rtl8192cu: Chip version 0x11
    [    6.460486] rtl8192cu: Board Type 0
    [    6.464044] rtl_usb: rx_max_size 15360, rx_urb_num 8, in_ep 1
    [    6.469834] rtl8192cu: Loading firmware rtlwifi/rtl8192cufw_TMSC.bin
    [    6.476193] device: 'phy0': device_add
    [    6.476228] PM: Adding info for No Bus:phy0
    [    6.476308] device: 'rfkill0': device_add
    [    6.476337] PM: Adding info for No Bus:rfkill0
    [    6.476384] ieee80211 phy0: Selected rate control algorithm 'rtl_rc'
    [    6.476429] device: 'wlan0': device_add
    [    6.476531] PM: Adding info for No Bus:wlan0
    [    6.476864] driver: 'rtl8192cu': driver_bound: bound to device '1-1.4:1.0'
    [    6.476883] bus: 'usb': really_probe: bound device 1-1.4:1.0 to driver rtl8192cu
    [    6.476892] device: 'ep_81': device_add
    [    6.476918] PM: Adding info for No Bus:ep_81
    [    6.476925] device: 'ep_02': device_add
    [    6.476947] PM: Adding info for No Bus:ep_02
    [    6.476953] device: 'ep_03': device_add
    [    6.476978] PM: Adding info for No Bus:ep_03
    [    6.476984] device: 'ep_84': device_add
    [    6.477008] PM: Adding info for No Bus:ep_84
    [    6.477012] driver: 'usb': driver_bound: bound to device '1-1.4'
    [    6.477029] bus: 'usb': really_probe: bound device 1-1.4 to driver usb
    [    6.477042] device: 'ep_00': device_add
    [    6.477068] PM: Adding info for No Bus:ep_00
    [    6.477134] usb 1-1.4: Direct firmware load for rtlwifi/rtl8192cufw_TMSC.bin failed with error -2
    [    6.486049] usb 1-1.4: Direct firmware load for rtlwifi/rtl8192cufw.bin failed with error -2
    [    6.494485] rtlwifi: Loading alternative firmware rtlwifi/rtl8192cufw.bin
    [    6.501266] rtlwifi: Selected firmware is not available
    [    6.506498] devices_kset: Moving ina226-u76 to end of list
    [    6.506501] PM: Moving platform:ina226-u76 to end of list
    [    6.506505] platform ina226-u76: Retrying from deferred list
    [    6.506631] bus: 'platform': driver_probe_device: matched device ina226-u76 with driver iio_hwmon
    [    6.506635] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u76
    [    6.506644] iio_hwmon ina226-u76: no pinctrl handle
    [    6.506677] platform ina226-u76: Driver iio_hwmon requests probe deferral
    [    6.506681] platform ina226-u76: Added to deferred list
    [    6.506740] devices_kset: Moving ina226-u77 to end of list
    [    6.506742] PM: Moving platform:ina226-u77 to end of list
    [    6.506747] platform ina226-u77: Retrying from deferred list
    [    6.506854] bus: 'platform': driver_probe_device: matched device ina226-u77 with driver iio_hwmon
    [    6.506857] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u77
    [    6.506865] iio_hwmon ina226-u77: no pinctrl handle
    [    6.506891] platform ina226-u77: Driver iio_hwmon requests probe deferral
    [    6.506895] platform ina226-u77: Added to deferred list
    [    6.506941] devices_kset: Moving ina226-u78 to end of list
    [    6.506943] PM: Moving platform:ina226-u78 to end of list
    [    6.506947] platform ina226-u78: Retrying from deferred list
    [    6.507048] bus: 'platform': driver_probe_device: matched device ina226-u78 with driver iio_hwmon
    [    6.507052] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u78
    [    6.507059] iio_hwmon ina226-u78: no pinctrl handle
    [    6.507085] platform ina226-u78: Driver iio_hwmon requests probe deferral
    [    6.507088] platform ina226-u78: Added to deferred list
    [    6.507133] devices_kset: Moving ina226-u87 to end of list
    [    6.507136] PM: Moving platform:ina226-u87 to end of list
    [    6.507140] platform ina226-u87: Retrying from deferred list
    [    6.507242] bus: 'platform': driver_probe_device: matched device ina226-u87 with driver iio_hwmon
    [    6.507246] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u87
    [    6.507253] iio_hwmon ina226-u87: no pinctrl handle
    [    6.507279] platform ina226-u87: Driver iio_hwmon requests probe deferral
    [    6.507283] platform ina226-u87: Added to deferred list
    [    6.507328] devices_kset: Moving ina226-u85 to end of list
    [    6.507331] PM: Moving platform:ina226-u85 to end of list
    [    6.507335] platform ina226-u85: Retrying from deferred list
    [    6.507435] bus: 'platform': driver_probe_device: matched device ina226-u85 with driver iio_hwmon
    [    6.507438] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u85
    [    6.507446] iio_hwmon ina226-u85: no pinctrl handle
    [    6.507470] platform ina226-u85: Driver iio_hwmon requests probe deferral
    [    6.507474] platform ina226-u85: Added to deferred list
    [    6.507518] devices_kset: Moving ina226-u86 to end of list
    [    6.507521] PM: Moving platform:ina226-u86 to end of list
    [    6.507525] platform ina226-u86: Retrying from deferred list
    [    6.507628] bus: 'platform': driver_probe_device: matched device ina226-u86 with driver iio_hwmon
    [    6.507632] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u86
    [    6.507639] iio_hwmon ina226-u86: no pinctrl handle
    [    6.507665] platform ina226-u86: Driver iio_hwmon requests probe deferral
    [    6.507669] platform ina226-u86: Added to deferred list
    [    6.507714] devices_kset: Moving ina226-u93 to end of list
    [    6.507716] PM: Moving platform:ina226-u93 to end of list
    [    6.507720] platform ina226-u93: Retrying from deferred list
    [    6.507821] bus: 'platform': driver_probe_device: matched device ina226-u93 with driver iio_hwmon
    [    6.507825] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u93
    [    6.507832] iio_hwmon ina226-u93: no pinctrl handle
    [    6.507857] platform ina226-u93: Driver iio_hwmon requests probe deferral
    [    6.507861] platform ina226-u93: Added to deferred list
    [    6.507905] devices_kset: Moving ina226-u88 to end of list
    [    6.507908] PM: Moving platform:ina226-u88 to end of list
    [    6.507912] platform ina226-u88: Retrying from deferred list
    [    6.508014] bus: 'platform': driver_probe_device: matched device ina226-u88 with driver iio_hwmon
    [    6.508017] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u88
    [    6.508025] iio_hwmon ina226-u88: no pinctrl handle
    [    6.508050] platform ina226-u88: Driver iio_hwmon requests probe deferral
    [    6.508053] platform ina226-u88: Added to deferred list
    [    6.508099] devices_kset: Moving ina226-u15 to end of list
    [    6.508101] PM: Moving platform:ina226-u15 to end of list
    [    6.508105] platform ina226-u15: Retrying from deferred list
    [    6.508205] bus: 'platform': driver_probe_device: matched device ina226-u15 with driver iio_hwmon
    [    6.508209] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u15
    [    6.508217] iio_hwmon ina226-u15: no pinctrl handle
    [    6.508242] platform ina226-u15: Driver iio_hwmon requests probe deferral
    [    6.508246] platform ina226-u15: Added to deferred list
    [    6.508290] devices_kset: Moving ina226-u92 to end of list
    [    6.508292] PM: Moving platform:ina226-u92 to end of list
    [    6.508296] platform ina226-u92: Retrying from deferred list
    [    6.508399] bus: 'platform': driver_probe_device: matched device ina226-u92 with driver iio_hwmon
    [    6.508402] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u92
    [    6.508410] iio_hwmon ina226-u92: no pinctrl handle
    [    6.508435] platform ina226-u92: Driver iio_hwmon requests probe deferral
    [    6.508438] platform ina226-u92: Added to deferred list
    [    6.508483] devices_kset: Moving ina226-u79 to end of list
    [    6.508486] PM: Moving platform:ina226-u79 to end of list
    [    6.508490] platform ina226-u79: Retrying from deferred list
    [    6.508591] bus: 'platform': driver_probe_device: matched device ina226-u79 with driver iio_hwmon
    [    6.508595] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u79
    [    6.508602] iio_hwmon ina226-u79: no pinctrl handle
    [    6.508628] platform ina226-u79: Driver iio_hwmon requests probe deferral
    [    6.508631] platform ina226-u79: Added to deferred list
    [    6.508676] devices_kset: Moving ina226-u81 to end of list
    [    6.508679] PM: Moving platform:ina226-u81 to end of list
    [    6.508683] platform ina226-u81: Retrying from deferred list
    [    6.508786] bus: 'platform': driver_probe_device: matched device ina226-u81 with driver iio_hwmon
    [    6.508789] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u81
    [    6.508797] iio_hwmon ina226-u81: no pinctrl handle
    [    6.508822] platform ina226-u81: Driver iio_hwmon requests probe deferral
    [    6.508826] platform ina226-u81: Added to deferred list
    [    6.508871] devices_kset: Moving ina226-u80 to end of list
    [    6.508874] PM: Moving platform:ina226-u80 to end of list
    [    6.508878] platform ina226-u80: Retrying from deferred list
    [    6.508979] bus: 'platform': driver_probe_device: matched device ina226-u80 with driver iio_hwmon
    [    6.508982] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u80
    [    6.508990] iio_hwmon ina226-u80: no pinctrl handle
    [    6.509015] platform ina226-u80: Driver iio_hwmon requests probe deferral
    [    6.509018] platform ina226-u80: Added to deferred list
    [    6.509063] devices_kset: Moving ina226-u84 to end of list
    [    6.509065] PM: Moving platform:ina226-u84 to end of list
    [    6.509069] platform ina226-u84: Retrying from deferred list
    [    6.509172] bus: 'platform': driver_probe_device: matched device ina226-u84 with driver iio_hwmon
    [    6.509175] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u84
    [    6.509183] iio_hwmon ina226-u84: no pinctrl handle
    [    6.509208] platform ina226-u84: Driver iio_hwmon requests probe deferral
    [    6.509212] platform ina226-u84: Added to deferred list
    [    6.509256] devices_kset: Moving ina226-u16 to end of list
    [    6.509259] PM: Moving platform:ina226-u16 to end of list
    [    6.509263] platform ina226-u16: Retrying from deferred list
    [    6.509374] bus: 'platform': driver_probe_device: matched device ina226-u16 with driver iio_hwmon
    [    6.509378] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u16
    [    6.509386] iio_hwmon ina226-u16: no pinctrl handle
    [    6.509412] platform ina226-u16: Driver iio_hwmon requests probe deferral
    [    6.509416] platform ina226-u16: Added to deferred list
    [    6.509461] devices_kset: Moving ina226-u65 to end of list
    [    6.509463] PM: Moving platform:ina226-u65 to end of list
    [    6.509467] platform ina226-u65: Retrying from deferred list
    [    6.509570] bus: 'platform': driver_probe_device: matched device ina226-u65 with driver iio_hwmon
    [    6.509573] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u65
    [    6.509581] iio_hwmon ina226-u65: no pinctrl handle
    [    6.509605] platform ina226-u65: Driver iio_hwmon requests probe deferral
    [    6.509609] platform ina226-u65: Added to deferred list
    [    6.509655] devices_kset: Moving ina226-u74 to end of list
    [    6.509657] PM: Moving platform:ina226-u74 to end of list
    [    6.509661] platform ina226-u74: Retrying from deferred list
    [    6.509762] bus: 'platform': driver_probe_device: matched device ina226-u74 with driver iio_hwmon
    [    6.509765] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u74
    [    6.509772] iio_hwmon ina226-u74: no pinctrl handle
    [    6.509798] platform ina226-u74: Driver iio_hwmon requests probe deferral
    [    6.509802] platform ina226-u74: Added to deferred list
    [    6.509846] devices_kset: Moving ina226-u75 to end of list
    [    6.509849] PM: Moving platform:ina226-u75 to end of list
    [    6.509853] platform ina226-u75: Retrying from deferred list
    [    6.509955] bus: 'platform': driver_probe_device: matched device ina226-u75 with driver iio_hwmon
    [    6.509959] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u75
    [    6.509966] iio_hwmon ina226-u75: no pinctrl handle
    [    6.509993] platform ina226-u75: Driver iio_hwmon requests probe deferral
    [    6.509997] platform ina226-u75: Added to deferred list
    [    6.553358] cdns-i2c ff030000.i2c: genpd_runtime_suspend()
    [    6.553392] cdns-i2c ff030000.i2c: suspend latency exceeded, 28600 ns
    [    6.553456] PM: domain11: Power-off latency exceeded, new value 58360 ns
    [    6.553463] xuartps ff010000.serial: genpd_runtime_suspend()
    [    6.553491] xuartps ff010000.serial: suspend latency exceeded, 22610 ns
    [    6.553510] PM: domain1: Power-off latency exceeded, new value 15670 ns
    [    7.829349] zynqmp-qspi ff0f0000.spi: genpd_runtime_suspend()
    [    7.829377] zynqmp-qspi ff0f0000.spi: suspend latency exceeded, 22460 ns
    [    7.829417] PM: domain6: Power-off latency exceeded, new value 35590 ns
    [    8.849272] EXT4-fs (mmcblk0p2): recovery complete
    [    9.332834] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [    9.340958] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
    [    9.347789] devtmpfs: mounted
    [    9.350937] Freeing unused kernel memory: 768K
    [    9.355440] Run /sbin/init as init process
    [    9.747816] udevd[170]: starting version 3.2.8
    [    9.759546] random: udevd: uninitialized urandom read (16 bytes read)
    [    9.766756] random: udevd: uninitialized urandom read (16 bytes read)
    [    9.773966] random: udevd: uninitialized urandom read (16 bytes read)
    [    9.811142] udevd[171]: starting eudev-3.2.8
    [    9.918285] mali: loading out-of-tree module taints kernel.
    [    9.929151] bus: 'platform': add driver mali-utgard
    [    9.929233] bus: 'platform': driver_probe_device: matched device fd4b0000.gpu with driver mali-utgard
    [    9.929241] bus: 'platform': really_probe: probing driver mali-utgard with device fd4b0000.gpu
    [    9.929258] mali-utgard fd4b0000.gpu: no pinctrl handle
    [    9.929309] mali-utgard fd4b0000.gpu: adding to PM domain domain13
    [    9.929313] mali-utgard fd4b0000.gpu: genpd_add_device()
    [    9.929407] PM: domain13: Power-on latency exceeded, new value 43150 ns
    [    9.929586] mali-utgard fd4b0000.gpu: genpd_runtime_resume()
    [    9.929595] mali-utgard fd4b0000.gpu: resume latency exceeded, 2210 ns
    [    9.929842] device: 'mali': device_add
    [    9.929882] PM: Adding info for No Bus:mali
    [    9.930162] driver: 'mali-utgard': driver_bound: bound to device 'fd4b0000.gpu'
    [    9.930192] bus: 'platform': really_probe: bound device fd4b0000.gpu to driver mali-utgard
    [    9.930424] devices_kset: Moving ina226-u76 to end of list
    [    9.930428] PM: Moving platform:ina226-u76 to end of list
    [    9.930433] platform ina226-u76: Retrying from deferred list
    [    9.930700] bus: 'platform': driver_probe_device: matched device ina226-u76 with driver iio_hwmon
    [    9.930706] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u76
    [    9.930721] iio_hwmon ina226-u76: no pinctrl handle
    [    9.930772] platform ina226-u76: Driver iio_hwmon requests probe deferral
    [    9.930776] platform ina226-u76: Added to deferred list
    [    9.930901] devices_kset: Moving ina226-u77 to end of list
    [    9.930904] PM: Moving platform:ina226-u77 to end of list
    [    9.930908] platform ina226-u77: Retrying from deferred list
    [    9.931105] bus: 'platform': driver_probe_device: matched device ina226-u77 with driver iio_hwmon
    [    9.931111] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u77
    [    9.931122] iio_hwmon ina226-u77: no pinctrl handle
    [    9.931155] platform ina226-u77: Driver iio_hwmon requests probe deferral
    [    9.931159] platform ina226-u77: Added to deferred list
    [    9.931259] devices_kset: Moving ina226-u78 to end of list
    [    9.931262] PM: Moving platform:ina226-u78 to end of list
    [    9.931267] platform ina226-u78: Retrying from deferred list
    [    9.931440] bus: 'platform': driver_probe_device: matched device ina226-u78 with driver iio_hwmon
    [    9.931445] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u78
    [    9.931454] iio_hwmon ina226-u78: no pinctrl handle
    [    9.931485] platform ina226-u78: Driver iio_hwmon requests probe deferral
    [    9.931488] platform ina226-u78: Added to deferred list
    [    9.931566] devices_kset: Moving ina226-u87 to end of list
    [    9.931569] PM: Moving platform:ina226-u87 to end of list
    [    9.931574] platform ina226-u87: Retrying from deferred list
    [    9.931716] bus: 'platform': driver_probe_device: matched device ina226-u87 with driver iio_hwmon
    [    9.931721] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u87
    [    9.931730] iio_hwmon ina226-u87: no pinctrl handle
    [    9.931762] platform ina226-u87: Driver iio_hwmon requests probe deferral
    [    9.931766] platform ina226-u87: Added to deferred list
    [    9.931833] devices_kset: Moving ina226-u85 to end of list
    [    9.931836] PM: Moving platform:ina226-u85 to end of list
    [    9.931840] platform ina226-u85: Retrying from deferred list
    [    9.931965] bus: 'platform': driver_probe_device: matched device ina226-u85 with driver iio_hwmon
    [    9.931969] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u85
    [    9.931977] iio_hwmon ina226-u85: no pinctrl handle
    [    9.932005] platform ina226-u85: Driver iio_hwmon requests probe deferral
    [    9.932009] platform ina226-u85: Added to deferred list
    [    9.932061] devices_kset: Moving ina226-u86 to end of list
    [    9.932064] PM: Moving platform:ina226-u86 to end of list
    [    9.932068] platform ina226-u86: Retrying from deferred list
    [    9.932182] bus: 'platform': driver_probe_device: matched device ina226-u86 with driver iio_hwmon
    [    9.932186] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u86
    [    9.932194] iio_hwmon ina226-u86: no pinctrl handle
    [    9.932222] platform ina226-u86: Driver iio_hwmon requests probe deferral
    [    9.932226] platform ina226-u86: Added to deferred list
    [    9.932278] devices_kset: Moving ina226-u93 to end of list
    [    9.932280] PM: Moving platform:ina226-u93 to end of list
    [    9.932284] platform ina226-u93: Retrying from deferred list
    [    9.932392] bus: 'platform': driver_probe_device: matched device ina226-u93 with driver iio_hwmon
    [    9.932396] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u93
    [    9.932405] iio_hwmon ina226-u93: no pinctrl handle
    [    9.932433] platform ina226-u93: Driver iio_hwmon requests probe deferral
    [    9.932437] platform ina226-u93: Added to deferred list
    [    9.932486] devices_kset: Moving ina226-u88 to end of list
    [    9.932489] PM: Moving platform:ina226-u88 to end of list
    [    9.932493] platform ina226-u88: Retrying from deferred list
    [    9.932602] bus: 'platform': driver_probe_device: matched device ina226-u88 with driver iio_hwmon
    [    9.932606] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u88
    [    9.932614] iio_hwmon ina226-u88: no pinctrl handle
    [    9.932642] platform ina226-u88: Driver iio_hwmon requests probe deferral
    [    9.932646] platform ina226-u88: Added to deferred list
    [    9.932697] devices_kset: Moving ina226-u15 to end of list
    [    9.932699] PM: Moving platform:ina226-u15 to end of list
    [    9.932703] platform ina226-u15: Retrying from deferred list
    [    9.932822] bus: 'platform': driver_probe_device: matched device ina226-u15 with driver iio_hwmon
    [    9.932827] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u15
    [    9.932837] iio_hwmon ina226-u15: no pinctrl handle
    [    9.932867] platform ina226-u15: Driver iio_hwmon requests probe deferral
    [    9.932871] platform ina226-u15: Added to deferred list
    [    9.932923] devices_kset: Moving ina226-u92 to end of list
    [    9.932926] PM: Moving platform:ina226-u92 to end of list
    [    9.932930] platform ina226-u92: Retrying from deferred list
    [    9.933035] bus: 'platform': driver_probe_device: matched device ina226-u92 with driver iio_hwmon
    [    9.933040] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u92
    [    9.933048] iio_hwmon ina226-u92: no pinctrl handle
    [    9.933075] platform ina226-u92: Driver iio_hwmon requests probe deferral
    [    9.933079] platform ina226-u92: Added to deferred list
    [    9.933128] devices_kset: Moving ina226-u79 to end of list
    [    9.933130] PM: Moving platform:ina226-u79 to end of list
    [    9.933134] platform ina226-u79: Retrying from deferred list
    [    9.933238] bus: 'platform': driver_probe_device: matched device ina226-u79 with driver iio_hwmon
    [    9.933242] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u79
    [    9.933250] iio_hwmon ina226-u79: no pinctrl handle
    [    9.933277] platform ina226-u79: Driver iio_hwmon requests probe deferral
    [    9.933281] platform ina226-u79: Added to deferred list
    [    9.933328] devices_kset: Moving ina226-u81 to end of list
    [    9.933354] PM: Moving platform:ina226-u81 to end of list
    [    9.933359] platform ina226-u81: Retrying from deferred list
    [    9.933466] bus: 'platform': driver_probe_device: matched device ina226-u81 with driver iio_hwmon
    [    9.933472] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u81
    [    9.933480] iio_hwmon ina226-u81: no pinctrl handle
    [    9.933511] platform ina226-u81: Driver iio_hwmon requests probe deferral
    [    9.933515] platform ina226-u81: Added to deferred list
    [    9.933567] devices_kset: Moving ina226-u80 to end of list
    [    9.933569] PM: Moving platform:ina226-u80 to end of list
    [    9.933574] platform ina226-u80: Retrying from deferred list
    [    9.933680] bus: 'platform': driver_probe_device: matched device ina226-u80 with driver iio_hwmon
    [    9.933684] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u80
    [    9.933692] iio_hwmon ina226-u80: no pinctrl handle
    [    9.933719] platform ina226-u80: Driver iio_hwmon requests probe deferral
    [    9.933722] platform ina226-u80: Added to deferred list
    [    9.933770] devices_kset: Moving ina226-u84 to end of list
    [    9.933772] PM: Moving platform:ina226-u84 to end of list
    [    9.933777] platform ina226-u84: Retrying from deferred list
    [    9.933884] bus: 'platform': driver_probe_device: matched device ina226-u84 with driver iio_hwmon
    [    9.933888] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u84
    [    9.933896] iio_hwmon ina226-u84: no pinctrl handle
    [    9.933926] platform ina226-u84: Driver iio_hwmon requests probe deferral
    [    9.933930] platform ina226-u84: Added to deferred list
    [    9.933984] devices_kset: Moving ina226-u16 to end of list
    [    9.933987] PM: Moving platform:ina226-u16 to end of list
    [    9.933992] platform ina226-u16: Retrying from deferred list
    [    9.934097] bus: 'platform': driver_probe_device: matched device ina226-u16 with driver iio_hwmon
    [    9.934102] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u16
    [    9.934111] iio_hwmon ina226-u16: no pinctrl handle
    [    9.934148] platform ina226-u16: Driver iio_hwmon requests probe deferral
    [    9.934153] platform ina226-u16: Added to deferred list
    [    9.934205] devices_kset: Moving ina226-u65 to end of list
    [    9.934208] PM: Moving platform:ina226-u65 to end of list
    [    9.934213] platform ina226-u65: Retrying from deferred list
    [    9.934328] bus: 'platform': driver_probe_device: matched device ina226-u65 with driver iio_hwmon
    [    9.934333] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u65
    [    9.934342] iio_hwmon ina226-u65: no pinctrl handle
    [    9.934370] platform ina226-u65: Driver iio_hwmon requests probe deferral
    [    9.934374] platform ina226-u65: Added to deferred list
    [    9.934424] devices_kset: Moving ina226-u74 to end of list
    [    9.934427] PM: Moving platform:ina226-u74 to end of list
    [    9.934435] platform ina226-u74: Retrying from deferred list
    [    9.934542] bus: 'platform': driver_probe_device: matched device ina226-u74 with driver iio_hwmon
    [    9.934546] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u74
    [    9.934555] iio_hwmon ina226-u74: no pinctrl handle
    [    9.934584] platform ina226-u74: Driver iio_hwmon requests probe deferral
    [    9.934588] platform ina226-u74: Added to deferred list
    [    9.934641] devices_kset: Moving ina226-u75 to end of list
    [    9.934644] PM: Moving platform:ina226-u75 to end of list
    [    9.934649] platform ina226-u75: Retrying from deferred list
    [    9.934758] bus: 'platform': driver_probe_device: matched device ina226-u75 with driver iio_hwmon
    [    9.934762] bus: 'platform': really_probe: probing driver iio_hwmon with device ina226-u75
    [    9.934771] iio_hwmon ina226-u75: no pinctrl handle
    [    9.934806] platform ina226-u75: Driver iio_hwmon requests probe deferral
    [    9.934810] platform ina226-u75: Added to deferred list
    [   10.319254] cramfs: Unknown parameter 'umask'
    [   10.328779] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [   10.727493] device class 'char': registering
    [   10.727520] device: 'dmaproxy': device_add
    [   10.727553] PM: Adding info for No Bus:dmaproxy
    [   10.742535] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
    [   11.039446] macb ff0e0000.ethernet: genpd_runtime_resume()
    [   11.039487] PM: domain8: Power-on latency exceeded, new value 30540 ns
    [   11.039570] macb ff0e0000.ethernet: resume latency exceeded, 76930 ns
    [   11.041015] device: 'ptp0': device_add
    [   11.041075] PM: Adding info for No Bus:ptp0
    [   11.041378] device: 'pps0': device_add
    [   11.041416] PM: Adding info for No Bus:pps0
    [   11.041702] pps pps0: new PPS source ptp0
    [   11.045740] macb ff0e0000.ethernet: gem-ptp-timer ptp clock registered.
    [   11.179861] mali-utgard fd4b0000.gpu: genpd_runtime_suspend()
    [   11.179937] mali-utgard fd4b0000.gpu: suspend latency exceeded, 67730 ns
    [   11.179973] PM: domain13: Power-off latency exceeded, new value 28870 ns
    [   20.708453] device: 'vcs2': device_add
    [   20.708497] PM: Adding info for No Bus:vcs2
    [   20.708592] device: 'vcsu2': device_add
    [   20.708614] PM: Adding info for No Bus:vcsu2
    [   20.708908] device: 'vcsa2': device_add
    [   20.708928] PM: Adding info for No Bus:vcsa2
    [   21.111774] random: crng init done
    [   21.115183] random: 7 urandom warning(s) missed due to ratelimiting
    [   21.171866] xuartps ff010000.serial: genpd_runtime_resume()
    [   21.171901] PM: domain1: Power-on latency exceeded, new value 24370 ns
    [   21.171934] xuartps ff010000.serial: resume latency exceeded, 27030 ns
    [   24.565376] xuartps ff010000.serial: genpd_runtime_suspend()
    [   24.565416] xuartps ff010000.serial: suspend latency exceeded, 29800 ns
    [   24.565440] PM: domain1: Power-off latency exceeded, new value 17390 ns
    

    #address-cells
    #size-cells
    __symbols__
    aliases
    amba
    amba-apu@0
    aux_ref_clk
    chosen
    compatible
    cpu-opp-table
    cpus
    dcc
    dkdma_rxinterrupt
    dkdma_rxinterrupt_data
    dkinterrupt
    dp_aclk
    edac
    fclk0
    fclk1
    fclk2
    fclk3
    firmware
    fpga-full
    gpio-keys
    gt_crx_ref_clk
    ina226-u15
    ina226-u16
    ina226-u65
    ina226-u74
    ina226-u75
    ina226-u76
    ina226-u77
    ina226-u78
    ina226-u79
    ina226-u80
    ina226-u81
    ina226-u84
    ina226-u85
    ina226-u86
    ina226-u87
    ina226-u88
    ina226-u92
    ina226-u93
    leds
    memory@0
    model
    name
    nvmem_firmware
    pmu
    psci
    pss_alt_ref_clk
    pss_ref_clk
    reserved-memory
    sha384
    smmu@fd800000
    timer
    video_clk
    zynqmp_aes
    zynqmp_ipi
    zynqmp_rsa
    

  • One more item that may be of interest..

    For my custom-device-tree I changed the addresses.

    From pl.dtsi the axi_adrv9001 IP is at address 0xA0020000.

    So I changed the addressing in the custom-device-tree to:

    axi_adrv9002_core_rx1: axi-adrv9002-rx-lpc@A0020000

    axi_adrv9002_core_tx1: axi-adrv9002-tx-lpc@A0024000

    and so on. Is this correct?

    Thanks again

  • axi_adrv9002_core_rx1: axi-adrv9002-rx-lpc@A0020000

    axi_adrv9002_core_tx1: axi-adrv9002-tx-lpc@A0024000

    Yes, you should adapt for your base address...

    Hmm, from your logs it looks like ADI devices are not being included in your devicetree. After booting you can grep dmesg output with the name of the expected device. Since you are using debug messages, you should be able to see if the driver core is trying to bind the device with ADI drivers...

    Other thing that you should try is to disassemble your system.dtb with dtc... This means that you can generate a .dts out of your final .dtb and hence you can make sure that all the stuff was included... The command is something like "dtc -I dtb -O dts -o test.dts system.dtb". You may need to install dtc for your distribution...

    - Nuno Sá

  • I disassembled the system.dtb and yes stuff is missing.

    So I guess I need to back up, and make sure I have this correct.

    1) petalinux-config

        DTG Settings -> Machine name:    Should it be "template" or zcu106-reva   ?

    2) petalinuxbsp.conf

        KERNEL_DTB = "custom-board"  or should it be "custom-board.dts" ?

    3) I created the files custom-board.dts and pl-delete-nodes-custom-board.dtsi

         The contents of the custom_board.dts is what you defined above, with the addresses modified to reflect my hardware.

         The contents of pl-delete-nodes-custom-board.dtsi deletes all of the nodes from my hardware from the PL.dtsi file.

    4) I placed the custom_board.dts and pl-delete-nodes-custom-board.dtsi in the project-spec/meta-user/recipes-bsp/device-tree/files directory

    5) I modified the file  project-spec/meta-user/recipes-bsp/device-tree/files/device-tree.bbappend and added the custom_board.dts and pl-delete-nodes-custom-board.dtsi files to the SRC_URI.

         -- I am not sure how to add my own devicetree.bbappend
         -- I assumed this would be the same???

    6) I modified the file meta-adi-xilinx/recipes-bsp/device-tree/devicetree.bbappend to add pl-delete-nodes-custom-board.dtsi to the SRC_URI_append_zynqmp.

    I still cannot see the iio:device.

    So I am missing something, or a lot.

    -------------------------------------------------

    NOTES: If iset the machine name to "template" then petalinux could not find the custom_board.dts, so I added this to the build/tmp/work-shared/zynqmp-generic/kernel-source/arch/arm64/boot/dts/xilinx. Although I am guessing I should not be doing this???

    apologies for so many questions. Petalinux is completely new to me.

    Thanks for all the assistance

  • 1) petalinux-config

        DTG Settings -> Machine name:    Should it be "template" or zcu106-reva   ?

    I never touched this so I would leave it with the default...

    2) petalinuxbsp.conf

        KERNEL_DTB = "custom-board"  or should it be "custom-board.dts" ?

    "custom-board" is fine

    3) I created the files custom-board.dts and pl-delete-nodes-custom-board.dtsi

         The contents of the custom_board.dts is what you defined above, with the addresses modified to reflect my hardware.

         The contents of pl-delete-nodes-custom-board.dtsi deletes all of the nodes from my hardware from the PL.dtsi file.

    I'm not sure the contents I gave you are fully correct. It's purpose was to only serve as an introductory example... For instance, you need to make sure that the " dmas =..." nodes are correct and point to the ones you use...

    4) I placed the custom_board.dts and pl-delete-nodes-custom-board.dtsi in the project-spec/meta-user/recipes-bsp/device-tree/files directory

    That should be fine...

    5) I modified the file  project-spec/meta-user/recipes-bsp/device-tree/files/device-tree.bbappend and added the custom_board.dts and pl-delete-nodes-custom-board.dtsi files to the SRC_URI.

         -- I am not sure how to add my own devicetree.bbappend
         -- I assumed this would be the same???

    With step 4), you should not need to do this... You should add it in SRC_URI of devicetree.bbappend in the path of step 4).  To add your own .bbappend you could use petalinux meta-user but I guess it's not needed as this layer already appends the devicetree recipe (if you want to further understand this you need to read a bit about yocto as petalinux is based on it)... 

    Also, on top of adding your stuff to SRC_URI, you should set KERNEL_DTB_PATH = "${WORKDIR}" and DTS_TAG_FILE = "${WORKDIR}/zynqmp-zcu106-revA.dts"

    6) I modified the file meta-adi-xilinx/recipes-bsp/device-tree/devicetree.bbappend to add pl-delete-nodes-custom-board.dtsi to the SRC_URI_append_zynqmp.

    Should also not need this. In theory, you should not need to touch this file at all...

    NOTES: If iset the machine name to "template" then petalinux could not find the custom_board.dts, so I added this to the build/tmp/work-shared/zynqmp-generic/kernel-source/arch/arm64/boot/dts/xilinx. Although I am guessing I should not be doing this???

    Yes, AFAICT, do not touch this...

    - Nuno Sá