Bring up AD9001 - Device driver error

Hi All,

during building of the AD-9001 at our custom board using the HDF repo: adrv9001_zed and DTS based on:  zynq-zed-adv7511-adrv9002

we got the following error during boot time:

adrv9002 spi0.0: [ERROR]: Error number 1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_ReadWrite_Validate, in line 357, variable name address.Error message Invalid ARM Memory Address.
adrv9002 spi0.0: [ERROR]: Error number 1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_Write, in line 403, variable name NULL.Error message Invalid ARM Memory Address.
adrv9002 spi0.0: [ERROR]: Error number 1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_powermanagement.c, in function adi_adrv9001_powermanagement_Configure, in line 56, variable name NULL.Error message Invalid ARM Memory Address.
adrv9002 spi0.0: adrv9002_power_mgmt_config, 2142: failed with "Invalid ARM Memory Address" (1)
adrv9002 spi0.0: [ERROR]: Error number 1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_ReadWrite_Validate, in line 357, variable name address.Error message Invalid ARM Memory Address.
adrv9002 spi0.0: [ERROR]: Error number 1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_Write, in line 403, variable name NULL.Error message Invalid ARM Memory Address.
adrv9002 spi0.0: [ERROR]: Error number 1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_powermanagement.c, in function adi_adrv9001_powermanagement_Configure, in line 56, variable name NULL.Error message Invalid ARM Memory Address.
adrv9002 spi0.0: adrv9002_power_mgmt_config, 2142: failed with "Invalid ARM Memory Address" (1)
cf_axi_adc: probe of 44a00000.axi-adrv9002-rx-lpc failed with error -22
cf_axi_tdd 44a0c800.axi-adrv9002-core-tdd1-lpc: Major version mismatch between PCORE and driver. Driver expected 1.00.a, PCORE reported 173.222.⚌
cf_axi_tdd 44a0cc00.axi-adrv9002-core-tdd2-lpc: Major version mismatch between PCORE and driver. Driver expected 1.00.a, PCORE reported 173.222.⚌
Division by zero in kernel.

the communication from FPGA layer to AD is based on SPI-0 (the I2C domain is disabled).

due to mention errors in the IIOScope utility we don`t see the RF response although it probably found the  IPC (Tx signals) as can you see here:

After investigate the device (9001) drive code: it seems that the issue come from the line: 

address >= ADRV9001_ADDR_ARM_START_PROG && address <= ADRV9001_ADDR_ARM_END_PROG (at File: adi_adrv9001_arm), it seems like an PL physically address error rather then issue at the dts / Linux (PS) side.

Please assist us to overcome this issue, the time is critical for us.

Thanks a`lot,

Roee.   



edit line
[edited by: Roee Zi at 9:36 PM (GMT -4) on 28 Jun 2021]
Parents
  • 0
    •  Analog Employees 
    on Jun 29, 2021 7:12 AM

    Hi Roee,

    It looks something very odd is going on as the TDD cores are also not coming up correctly. I will have to see if I can replicate this on my side... Are you using the master branches (on both hdl and linux) or are you using a release branch?

    - Nuno Sá

  • Hi,

    The kernel device driver are not the most update. but they exist.

    the Meta-ADI is point to 2019_R2 and the HDF design also.

    i don`t knew if it related but i build the project with PetaLinux 2019 R1 and not 2019 R2.

    i attached in the follow link the driver files as they appear my workstation.

    https://www.jumbomail.me/j/nbzMpoRiVkabqRc

    i can try to update the AD9001 kernel driver to latest master version, but don`t sure this is the reason for this issue.

    Thanks,

    Roee.  

  • Hi,

    currently we have only C0 chip version,

    For your question, i got this line from the system boot:

    axi_sysid 45000000.axi-sysid-0: [adrv9001] on [zed] git <4ae19031c0b8302472d081c01ca946cee3b84db7> clean [2021-06-13 11:58:35] UTC

    secondly, we found on our custom board that we miss to connected the clock that derive the M4 core (in the EVB hardware it device from external OSC). but it also didn`t got as from stuck.

    Are you think that there are any other signals that we need to connected to the FPGA (and in the EVB they connected to external source) ?

    below, are update boot log from our custom board:

    CPU:   Zynq 7z035
    Silicon: v3.1
    Model: Xilinx Zynq ZED
    DRAM:  ECC disabled 512 MiB
    MMC:   mmc@e0100000: 0
    Loading Environment from FAT... *** Warning - bad CRC, using default environment
    
    In:    serial@e0001000
    Out:   serial@e0001000
    Err:   serial@e0001000
    Model: Xilinx Zynq ZED
    Net:   ZYNQ GEM: e000b000, phyaddr 0, interface rgmii-id
    eth0: ethernet@e000b000
    U-BOOT for NAVASSA
    
    Hit any key to stop autoboot:  0
    Device: mmc@e0100000
    Manufacturer ID: 3
    OEM: 5344
    Name: SB16G
    Bus Speed: 50000000
    Mode : SD High Speed (50MHz)
    Rd Block Len: 512
    SD version 3.0
    High Capacity: Yes
    Capacity: 14.8 GiB
    Bus Width: 4-bit
    Erase Group Size: 512 Bytes
    15219692 bytes read in 981 ms (14.8 MiB/s)
    ## Loading kernel from FIT Image at 10000000 ...
       Using 'conf@system-top.dtb' configuration
       Verifying Hash Integrity ... OK
       Trying 'kernel@1' kernel subimage
         Description:  Linux kernel
         Type:         Kernel Image
         Compression:  uncompressed
         Data Start:   0x10000100
         Data Size:    6308032 Bytes = 6 MiB
         Architecture: ARM
         OS:           Linux
         Load Address: 0x00008000
         Entry Point:  0x00008000
         Hash algo:    sha1
         Hash value:   0dd508a6d7711982adf6661f23a294e2201f8061
       Verifying Hash Integrity ... sha1+ OK
    ## Loading ramdisk from FIT Image at 10000000 ...
       Using 'conf@system-top.dtb' configuration
       Verifying Hash Integrity ... OK
       Trying 'ramdisk@1' ramdisk subimage
         Description:  petalinux-user-image
         Type:         RAMDisk Image
         Compression:  gzip compressed
         Data Start:   0x1060a52c
         Data Size:    8884532 Bytes = 8.5 MiB
         Architecture: ARM
         OS:           Linux
         Load Address: unavailable
         Entry Point:  unavailable
         Hash algo:    sha1
         Hash value:   463b85d255411a41b83294db94a91dbd85cb9866
       Verifying Hash Integrity ... sha1+ OK
    ## Loading fdt from FIT Image at 10000000 ...
       Using 'conf@system-top.dtb' configuration
       Verifying Hash Integrity ... OK
       Trying 'fdt@system-top.dtb' fdt subimage
         Description:  Flattened Device Tree blob
         Type:         Flat Device Tree
         Compression:  uncompressed
         Data Start:   0x106042c0
         Data Size:    25001 Bytes = 24.4 KiB
         Architecture: ARM
         Hash algo:    sha1
         Hash value:   dc2734e20f1bc5776ca3d924070eecd86ac94753
       Verifying Hash Integrity ... sha1+ OK
       Booting using the fdt blob at 0x106042c0
       Loading Kernel Image ... OK
       Loading Ramdisk to 07786000, end 07fff134 ... OK
       Loading Device Tree to 0777c000, end 077851a8 ... OK
    
    Starting kernel ...
    
    Booting Linux on physical CPU 0x0
    Linux version 4.19.0-xilinx-v2019.1 (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP PREEMPT Mon Jul 5 16:26:02 UTC 2021
    CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
    CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    OF: fdt: Machine model: Xilinx Zynq ZED
    bootconsole [earlycon0] enabled
    Memory policy: Data cache writealloc
    cma: Reserved 128 MiB at 0x18000000
    random: get_random_bytes called from start_kernel+0xa0/0x404 with crng_init=0
    percpu: Embedded 16 pages/cpu @(ptrval) s33548 r8192 d23796 u65536
    Built 1 zonelists, mobility grouping on.  Total pages: 130048
    Kernel command line: console=ttyPS0,115200 earlyprintk
    Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    Memory: 360708K/524288K available (9216K kernel code, 761K rwdata, 6764K rodata, 1024K init, 166K bss, 32508K reserved, 131072K cma-reserved, 0K highmem)
    Virtual kernel memory layout:
        vector  : 0xffff0000 - 0xffff1000   (   4 kB)
        fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
        vmalloc : 0xe0800000 - 0xff800000   ( 496 MB)
        lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
        pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
        modules : 0xbf000000 - 0xbfe00000   (  14 MB)
          .text : 0x(ptrval) - 0x(ptrval)   (10208 kB)
          .init : 0x(ptrval) - 0x(ptrval)   (1024 kB)
          .data : 0x(ptrval) - 0x(ptrval)   ( 762 kB)
           .bss : 0x(ptrval) - 0x(ptrval)   ( 167 kB)
    rcu: Preemptible hierarchical RCU implementation.
    rcu:    RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
            Tasks RCU enabled.
    rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
    NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    efuse mapped to (ptrval)
    slcr mapped to (ptrval)
    L2C: platform modifies aux control register: 0x72360000 -> 0x72760000
    L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000
    L2C-310 erratum 769419 enabled
    L2C-310 enabling early BRESP for Cortex-A9
    L2C-310 full line of zeros enabled for Cortex-A9
    L2C-310 ID prefetch enabled, offset 1 lines
    L2C-310 dynamic clock gating enabled, standby mode enabled
    L2C-310 cache controller enabled, 8 ways, 512 kB
    L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76760001
    zynq_clock_init: clkc starts at (ptrval)
    Zynq clock init
    sched_clock: 64 bits at 333MHz, resolution 3ns, wraps every 4398046511103ns
    clocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycles: 0x4ce07af025, max_idle_ns: 440795209040 ns
    Switching to timer-based delay loop, resolution 3ns
    clocksource: ttc_clocksource: mask: 0xffff max_cycles: 0xffff, max_idle_ns: 537538477 ns
    timer #0 at (ptrval), irq=17
    Console: colour dummy device 80x30
    Calibrating delay loop (skipped), value calculated using timer frequency.. 666.66 BogoMIPS (lpj=3333333)
    pid_max: default: 32768 minimum: 301
    Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    CPU: Testing write buffer coherency: ok
    CPU0: Spectre v2: using BPIALL workaround
    CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    Setting up static identity map for 0x100000 - 0x100060
    rcu: Hierarchical SRCU implementation.
    smp: Bringing up secondary CPUs ...
    CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
    CPU1: Spectre v2: using BPIALL workaround
    smp: Brought up 1 node, 2 CPUs
    SMP: Total of 2 processors activated (1333.33 BogoMIPS).
    CPU: All CPU(s) started in SVC mode.
    devtmpfs: initialized
    VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
    clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    futex hash table entries: 512 (order: 3, 32768 bytes)
    pinctrl core: initialized pinctrl subsystem
    NET: Registered protocol family 16
    DMA: preallocated 256 KiB pool for atomic coherent allocations
    cpuidle: using governor ladder
    hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
    hw-breakpoint: maximum watchpoint size is 4 bytes.
    zynq-ocm f800c000.ocmc: ZYNQ OCM pool: 256 KiB @ 0x(ptrval)
    zynq-pinctrl 700.pinctrl: zynq pinctrl initialized
    e0001000.serial: ttyPS0 at MMIO 0xe0001000 (irq = 25, base_baud = 3125000) is a xuartps
    console [ttyPS0] enabled
    console [ttyPS0] enabled
    bootconsole [earlycon0] disabled
    bootconsole [earlycon0] disabled
    SCSI subsystem initialized
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    media: Linux media interface: v0.10
    videodev: Linux video capture interface: v2.00
    jesd204: found 0 devices and 0 topologies
    FPGA manager framework
    Advanced Linux Sound Architecture Driver Initialized.
    clocksource: Switched to clocksource arm_global_timer
    NET: Registered protocol family 2
    tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes)
    TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
    TCP: Hash tables configured (established 4096 bind 4096)
    UDP hash table entries: 256 (order: 1, 8192 bytes)
    UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
    NET: Registered protocol family 1
    Trying to unpack rootfs image as initramfs...
    Freeing initrd memory: 8680K
    hw perfevents: no interrupt-affinity property for /pmu@f8891000, guessing.
    hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
    workingset: timestamp_bits=30 max_order=17 bucket_order=0
    io scheduler noop registered
    io scheduler deadline registered
    io scheduler cfq registered (default)
    io scheduler mq-deadline registered
    io scheduler kyber registered
    dma-pl330 f8003000.dmac: Loaded driver for PL330 DMAC-241330
    dma-pl330 f8003000.dmac:        DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16
    brd: module loaded
    loop: module loaded
    Registered mathworks_ip class
    m25p80 spi1.0: SPI-NOR-UniqueID 104473be6a9600091a00190028de304793
    m25p80 spi1.0: found n25q256a, expected n25q128a11
    m25p80 spi1.0: n25q256a (32768 Kbytes)
    5 fixed-partitions partitions found on MTD device spi1.0
    Creating 5 MTD partitions on "spi1.0":
    0x000000000000-0x000000500000 : "boot"
    0x000000500000-0x000000520000 : "bootenv"
    0x000000520000-0x000000540000 : "config"
    0x000000540000-0x000000fc0000 : "image"
    0x000000fc0000-0x000002000000 : "spare"
    MACsec IEEE 802.1AE
    libphy: Fixed MDIO Bus: probed
    tun: Universal TUN/TAP device driver, 1.6
    libphy: MACB_mii_bus: probed
    TI DP83867 e000b000.ethernet-ffffffff:00: attached PHY driver [TI DP83867] (mii_bus:phy_addr=e000b000.ethernet-ffffffff:00, irq=POLL)
    macb e000b000.ethernet eth0: Cadence GEM rev 0x00020118 at 0xe000b000 irq 28 (00:0a:35:00:1e:53)
    usbcore: registered new interface driver asix
    usbcore: registered new interface driver ax88179_178a
    usbcore: registered new interface driver cdc_ether
    usbcore: registered new interface driver net1080
    usbcore: registered new interface driver cdc_subset
    usbcore: registered new interface driver zaurus
    usbcore: registered new interface driver cdc_ncm
    ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    usbcore: registered new interface driver uas
    usbcore: registered new interface driver usb-storage
    usbcore: registered new interface driver usbserial_generic
    usbserial: USB Serial support registered for generic
    usbcore: registered new interface driver ftdi_sio
    usbserial: USB Serial support registered for FTDI USB Serial Device
    usbcore: registered new interface driver upd78f0730
    usbserial: USB Serial support registered for upd78f0730
    chipidea-usb2 e0002000.usb: e0002000.usb supply vbus not found, using dummy regulator
    chipidea-usb2 e0002000.usb: Linked as a consumer to regulator.0
    ci_hdrc ci_hdrc.0: unable to init phy: -110
    ci_hdrc: probe of ci_hdrc.0 failed with error -110
    usbcore: registered new interface driver uvcvideo
    USB Video Class driver (1.1.1)
    gspca_main: v2.14.0 registered
    cdns-wdt f8005000.watchdog: Xilinx Watchdog Timer with timeout 10s
    Xilinx Zynq CpuIdle Driver started
    sdhci: Secure Digital Host Controller Interface driver
    sdhci: Copyright(c) Pierre Ossman
    sdhci-pltfm: SDHCI platform and OF driver helper
    mmc0: SDHCI controller on e0100000.mmc [e0100000.mmc] using ADMA
    ledtrig-cpu: registered to indicate activity on CPUs
    hidraw: raw HID events driver (C) Jiri Kosina
    usbcore: registered new interface driver usbhid
    usbhid: USB HID core driver
    axi_sysid 45000000.axi-sysid-0: [adrv9001] on [zed] git <4ae19031c0b8302472d081c01ca946cee3b84db7> clean [2021-06-13 11:58:35] UTC
    fpga_manager fpga0: Xilinx Zynq FPGA Manager registered
    usbcore: registered new interface driver snd-usb-audio
    mmc0: new high speed SDHC card at address aaaa
    ipip: IPv4 and MPLS over IPv4 tunneling driver
    mmcblk0: mmc0:aaaa SB16G 14.8 GiB
    Initializing XFRM netlink socket
    NET: Registered protocol family 10
    Segment Routing with IPv6
    sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    NET: Registered protocol family 17
    NET: Registered protocol family 36
    Registering SWP/SWPB emulation handler
     mmcblk0: p1 p2
    random: fast init done
    random: crng init done
    adrv9002 spi0.0: [ERROR]: Error number  1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_ReadWrite_Validate, in line  357, variable name address.Error message Invalid ARM Memory Address.
    adrv9002 spi0.0: [ERROR]: Error number  1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_Write, in line  403, variable name NULL.Error message Invalid ARM Memory Address.
    adrv9002 spi0.0: [ERROR]: Error number  1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_powermanagement.c, in function adi_adrv9001_powermanagement_Configure, in line  56, variable name NULL.Error message Invalid ARM Memory Address.
    adrv9002 spi0.0: adrv9002_power_mgmt_config, 2142: failed with "Invalid ARM Memory Address" (1)
    adrv9002 spi0.0: [ERROR]: Error number  1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_ReadWrite_Validate, in line  357, variable name address.Error message Invalid ARM Memory Address.
    adrv9002 spi0.0: [ERROR]: Error number  1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_arm.c, in function adi_adrv9001_arm_Memory_Write, in line  403, variable name NULL.Error message Invalid ARM Memory Address.
    adrv9002 spi0.0: [ERROR]: Error number  1 (0x00000001), Recovery action -2.In file drivers/iio/adc/navassa/devices/adrv9001/public/src/adi_adrv9001_powermanagement.c, in function adi_adrv9001_powermanagement_Configure, in line  56, variable name NULL.Error message Invalid ARM Memory Address.
    adrv9002 spi0.0: adrv9002_power_mgmt_config, 2142: failed with "Invalid ARM Memory Address" (1)
    cf_axi_adc: probe of 44a00000.axi-adrv9002-rx-lpc failed with error -22
    cf_axi_tdd 44a0c800.axi-adrv9002-core-tdd1-lpc: Major version mismatch between PCORE and driver. Driver expected 1.00.a, PCORE reported 173.222.⚌
    cf_axi_tdd 44a0cc00.axi-adrv9002-core-tdd2-lpc: Major version mismatch between PCORE and driver. Driver expected 1.00.a, PCORE reported 173.222.⚌
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b4e8>] (cf_axi_dds_probe+0x8f0/0xb38)
    [<c074b4e8>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b508>] (cf_axi_dds_probe+0x910/0xb38)
    [<c074b508>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b4e8>] (cf_axi_dds_probe+0x8f0/0xb38)
    [<c074b4e8>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b508>] (cf_axi_dds_probe+0x910/0xb38)
    [<c074b508>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: Analog Devices CF_AXI_DDS_DDS MASTER (9.01.b) at 0x44A0A000 mapped to 0x4eb5933e, probed DDS ADRV9002
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b4e8>] (cf_axi_dds_probe+0x8f0/0xb38)
    [<c074b4e8>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b508>] (cf_axi_dds_probe+0x910/0xb38)
    [<c074b508>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b4e8>] (cf_axi_dds_probe+0x8f0/0xb38)
    [<c074b4e8>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    Division by zero in kernel.
    CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted 4.19.0-xilinx-v2019.1 #1
    Hardware name: Xilinx Zynq Platform
    Workqueue: events deferred_probe_work_func
    [<c010f8fc>] (unwind_backtrace) from [<c010bccc>] (show_stack+0x10/0x14)
    [<c010bccc>] (show_stack) from [<c08feb20>] (dump_stack+0x8c/0xa0)
    [<c08feb20>] (dump_stack) from [<c08fc3d4>] (Ldiv0_64+0x8/0x18)
    [<c08fc3d4>] (Ldiv0_64) from [<c03212dc>] (div64_u64+0xcc/0xf0)
    [<c03212dc>] (div64_u64) from [<c0749db4>] (cf_axi_dds_default_setup+0x34/0xf0)
    [<c0749db4>] (cf_axi_dds_default_setup) from [<c074b508>] (cf_axi_dds_probe+0x910/0xb38)
    [<c074b508>] (cf_axi_dds_probe) from [<c03eafc4>] (platform_drv_probe+0x48/0x98)
    [<c03eafc4>] (platform_drv_probe) from [<c03e9368>] (really_probe+0x1f4/0x2b8)
    [<c03e9368>] (really_probe) from [<c03e9590>] (driver_probe_device+0x60/0x168)
    [<c03e9590>] (driver_probe_device) from [<c03e7740>] (bus_for_each_drv+0x80/0xc4)
    [<c03e7740>] (bus_for_each_drv) from [<c03e9104>] (__device_attach+0xd0/0x138)
    [<c03e9104>] (__device_attach) from [<c03e8540>] (bus_probe_device+0x84/0x8c)
    [<c03e8540>] (bus_probe_device) from [<c03e89d8>] (deferred_probe_work_func+0x60/0x8c)
    [<c03e89d8>] (deferred_probe_work_func) from [<c01357bc>] (process_one_work+0x1f0/0x3fc)
    [<c01357bc>] (process_one_work) from [<c0136730>] (worker_thread+0x294/0x580)
    [<c0136730>] (worker_thread) from [<c013b3f4>] (kthread+0x148/0x150)
    [<c013b3f4>] (kthread) from [<c01010e8>] (ret_from_fork+0x14/0x2c)
    Exception stack(0xd7515fb0 to 0xd7515ff8)
    5fa0:                                     00000000 00000000 00000000 00000000
    5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    5fe0: 00000000 00000000 00000000 00000000 00000013 00000000
    cf_axi_dds 44a0c000.axi-adrv9002-tx2-lpc: Analog Devices CF_AXI_DDS_DDS MASTER (9.01.b) at 0x44A0C000 mapped to 0x988d6685, probed DDS ADRV9002
    hctosys: unable to open rtc device (rtc0)
    ALSA device list:
      No soundcards found.
    Freeing unused kernel memory: 1024K
    Run /init as init process
    INIT: version 2.88 booting
    Starting udev
    udevd[1152]: starting version 3.2.5
    udevd[1153]: starting eudev-3.2.5
    FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    EXT4-fs (mmcblk0p2): recovery complete
    EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    hwclock: can't open '/dev/misc/rtc': No such file or directory
    Mon Jul  5 16:50:27 UTC 2021
    hwclock: can't open '/dev/misc/rtc': No such file or directory
    Configuring packages on first boot....
     (This may take several minutes. Please do not power off the machine.)
    Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
    update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
     Removing any system startup links for run-postinsts ...
      /etc/rcS.d/S99run-postinsts
    INIT: Entering runlevel: 5
    Configuring network interfaces... IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
    done.
    Starting system message bus: dbus.
    Starting Dropbear SSH server: Generating 2048 bit rsa key, this may take a while...
    Public key portion is:
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDesrzO2ovMC/BkpfJLHbmvxf/CtsllF3M+7D1Aq/tQSwwAofxhIiieP0sLklZ1ETgP8Nw7cVsROXzNP9o3CF7hTSzp5UY4V3SUySZIIqYaM9fRn1HZ9lQSKZzTC+EsCvXhO5kOs5+ZlWQVfwjoJj59bON+9aHtYddNLmHcSo+mv+GmKqj5EyhdcjdlIm+egPGm4h5tTOqqJQp0pp9J9xjbIlkM7UMVPAVuBlp0JJ7DJ3/Hp01n54SRfN6CMc5Glu7ksU0JCz+acObn+dIZsN8nW4QdGO9ZI2uNAGPRQ4Bjk1rnwecNs4lGmfMqY561HsViYXy8s1DgvKV3JDhoeR1f root@NAVASSA
    Fingerprint: sha1!! fc:bb:fd:94:56:c9:39:da:05:68:bb:17:9c:fc:b7:6f:d1:21:ea:9a
    dropbear.
    Starting FANCONTROL Daemon: fancontrold
    hwclock: can't open '/dev/misc/rtc': No such file or directory
    Starting IIO Daemon: iiod
    Starting internet superserver: inetd.
    Starting syslogd/klogd: done
    Starting tcf-agent: OK
    
    /bin/autologin: line 1: -e: command not found
    root@NAVASSA:~# macb e000b000.ethernet eth0: link up (100/Full)
    IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    
    root@NAVASSA:~# cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    cf_axi_dds 44a0a000.axi-adrv9002-tx-lpc: iio_debugfs_read_reg: read failed
    Unable to handle kernel NULL pointer dereference at virtual address 00000000
    

  • 0
    •  Analog Employees 
    on Jul 6, 2021 7:27 AM in reply to Roee Zi

    Hi,

    The errors in the adrv9002 driver and the MMIO not properly set on the TDD core might indicate some issues with the design... I'll check if someone from the fpga team can assist here but I guess they will need you to share your design to see if something is missing.

    - Nuno Sá

  • Hi Nuno,

    It will be great idea and will much advance us to find the solution. 

    As there any way we can connect not in this public forum ?

  • 0
    •  Analog Employees 
    on Jul 6, 2021 7:41 AM in reply to Roee Zi

    Hi,

    Unfortunately no. This is the place where we are allowed to do support...

    - Nuno Sá

  • Hi Nsa, 

    There is some process.... 

    After investigation again the describe issues, we found that all of them are coming from heat conditions, the ADI chip was far beyond this temperature limit (around 120 Celsius). with damage the SPI communication.

    We fixed it and now we process to new issue: mismatch between major version: PCORE (expected: 1.00) and driver report (173.222).

    As you can see below.

    We think that our base ADI git repo is the issue here, please tell us how to fix it.

    Thanks again,

    Roee.  

Reply
  • Hi Nsa, 

    There is some process.... 

    After investigation again the describe issues, we found that all of them are coming from heat conditions, the ADI chip was far beyond this temperature limit (around 120 Celsius). with damage the SPI communication.

    We fixed it and now we process to new issue: mismatch between major version: PCORE (expected: 1.00) and driver report (173.222).

    As you can see below.

    We think that our base ADI git repo is the issue here, please tell us how to fix it.

    Thanks again,

    Roee.  

Children
  • 0
    •  Analog Employees 
    on Jul 9, 2021 7:53 AM in reply to Roee Zi

    Hi Roee,

    Glad that you're making progress.

    axi_sysid 45000000.axi-sysid-0: [adrv9001] on [zed] git <4ae19031c0b8302472d081c01ca946cee3b84db7> clean [2021-06-13 11:58:35] UTC

    Looking closely at this it looks like your hdl build still does not have support for TDD. Your commit point here. While, the core only started to be supported here. Hence, you need to have a more recent build of the 2019_R2 branch if you want to use this core. Alternatively, if you don't really need it (this only makes sense if you intend to use Time Division Duplex based profiles), you can remove from the design to save space.

    - Nuno Sá

  • Hi,

    can you be more specific on your offer solutions:

    a. If i want align PS and PL what GIT repo should i take and where to set it ? (in what file in the PetaLinux build files).

    b. If i want to remove the support of TDD, where I set it ? delete nodes from the system_user.dtsi files? which nodes...

    Thanks a lot,

    Roee. 

  • 0
    •  Analog Employees 
    on Jul 9, 2021 10:38 AM in reply to Roee Zi

    Hi,

    As for a), you need to rebuild your hdl project and base it on the latest 2019_r2 branch so that you have the tdd core available and possible some other fixes for the adrv9001 core. Then, you need to rebuild your petalinux project with the new *.hdf file.

    For b), you need to think if you need/want the core or not. If you do not want it, you have to remove it from the hdl project and rebuild it. On the petalinux side, you can then delete the nodes in system_user.dtsi as you are saying... Here and here are the nodes.

    If you want to go with b) and remove the TDD cores from the hdl project let me know as I will have to ask someone from the team to help and assist you in this thread on how to do it.

    - Nuno Sá

  • Hi Nsa,

    Thank you about your detailed answer. 

    Secondly, we have question about TDD_SYNC signal that exist on Zed EVB:

    How should I use the TDD_SYNC signal after adding it to the HDL project?

    The TDD_SYNC pin is connected to JA1.JA1 PMOD connector on the Zedboard.

    But it is not clear what physical signal should be connected to this pin. 

    Thanks,

    Roee. 

     

  • Hi Nuno Sá.

    My name is Amir and I'm working with Roee on this project.

    I'm the FPGA designer of the project.

    I would like to consult with you about the correct GIT version that we should use for building the FPGA PL project which is based on a Zedboard EVB.

    I have built the project after cloning it from the branch of HDL_2019_R2, which uses the Vivado 2019.1 version. But on this basic branch, as was cloned from the GIT, there was no support in TDD_Sync functionality.

    Next, I have cloned and built the project by using the branch of Master, which requires the using of Vivado 2020.1. On this project the TDD_Sync is supported but the Vivado's Block-Diagram requires some IP's to be upgraded. Once they were upgraded, there was appeared a mismatch between the IP's and the source files. (The TDD_Sync and some RX_Enable / TX_Enable signals are not supported.)
    I've also seen that these IP's versions were originally equal the recommended version. So I don't understand why there were needed to be upgraded?
    May I ignore this IPs upgrade requirement?
    And, can I use the IP's from this project (branch Master) for building the project of Vivado 2019.1 (of branch HDM_2019_R2)?

    I have also tried using this branch link:
    https://github.com/analogdevicesinc/hdl/tree/2cbb4f7b75cdb20b0b6c125dc493b86cdb837242

    but while building the project (by invoking the "make" command) I got the error:

    ERROR: [Place 30-99] Placer failed with error: 'failed to commit all instances'

    I would like to ask if there is a stable version of the project that I can use with the Vivado 2019.1?

    Thanks,

    Amir