Hi,
I am not using the transmit chain in the adrv9009/zcu102 reference design. What steps should i follow to safely remove the chain and free up FPGA resources?
Thanks,
Andy
ADRV9009
Recommended for New Designs
The ADRV9009 is a highly integrated, radio frequency (RF), agile transceiver offering dual transmitters and receivers, integrated synthesizers, and digital...
Datasheet
ADRV9009 on Analog.com
Hi,
I am not using the transmit chain in the adrv9009/zcu102 reference design. What steps should i follow to safely remove the chain and free up FPGA resources?
Thanks,
Andy
Hi Andrei,
Thanks for your response. A couple of clarifications:
1) So in the block diagram within Vivado I can remove the axi_hp3_interconnect and the tx_adrv9009_tpl_core and all blocks in between these?
2) I think i then need to remove the corresponding blocks in /linux-xlnx/arch/arm64/boot/dts/xilinx/zynqmp-zcu102-rev10-adrv9009.dts? Do i need to do anything with /linux-xlnx/arch/arm64/boot/dts/xilinx/adi-adrv9009.dtsi or any other files?
3) Will the scope on IIO_Oscilloscope still work?
Thanks
ADRV9009 without TX is effectively a ADRV9008-1.
Please use this device tree instead:
OSC will still work.
-Michael
Hi
This does not seem to work.
I opened the block diagram in vivado and removed the dma to the jesd link. I also replaced zynqmp-zcu102-rev10-adrv9009.dts for zcu102-rev10-adrv9008-1. All builds fine, but when the kernel starts it hangs (see below). Any ideas?
6.818785] Synchronous External Abort: synchronous external abort (0x96000010) at 0xffffff800d274048
[ 6.827999] Internal error: : 96000010 [#1] SMP
[ 6.832514] Modules linked in:
[ 6.835556] CPU: 1 PID: 125 Comm: kworker/1:1 Not tainted 4.14.0 #1
[ 6.841811] Hardware name: ZynqMP ZCU102 Rev1.0 (DT)
[ 6.846768] Workqueue: events deferred_probe_work_func
[ 6.851890] task: ffffffc87b01a100 task.stack: ffffff80093c0000
[ 6.857798] PC is at adrv9009_post_setup+0x30/0xd8
[ 6.862578] LR is at axiadc_probe+0x360/0x6d8
[ 6.866917] pc : [<ffffff80087c6568>] lr : [<ffffff8008788148>] pstate: 40000045
[ 6.874295] sp : ffffff80093c3b80
[ 6.877594] x29: ffffff80093c3b90 x28: ffffff8008c5b0b0
[ 6.882889] x27: ffffff8008bb1000 x26: 0000000000000004
[ 6.888184] x25: ffffffc87b007e80 x24: 0000000000000001
[ 6.893480] x23: ffffffc87b0b0010 x22: ffffffc87a5ddc18
[ 6.898775] x21: ffffffc87b0b0000 x20: ffffffc87a91a000
[ 6.904070] x19: ffffffc87a91a500 x18: 0000000000000001
[ 6.909365] x17: 0000000000000000 x16: 0000000000000000
[ 6.914661] x15: ffffffffffffffff x14: 0000000000000000
[ 6.919956] x13: 0000000000000000 x12: 0000000000000000
[ 6.925252] x11: 0000000000000000 x10: 0000000000000000
[ 6.930547] x9 : 0000000000000000 x8 : 0000000000000003
[ 6.935842] x7 : 0000000000000000 x6 : 0000000000000004
[ 6.941137] x5 : 000000000000000a x4 : ffffffc87a91a858
[ 6.946433] x3 : ffffffc87a91a500 x2 : 0000000000004048
[ 6.951728] x1 : ffffffc87a5ddc18 x0 : ffffff800d274048
[ 6.957025] Process kworker/1:1 (pid: 125, stack limit = 0xffffff80093c0000)
[ 6.964055] Call trace:
[ 6.966488] Exception stack(0xffffff80093c3a40 to 0xffffff80093c3b80)
[ 6.972912] 3a40: ffffff800d274048 ffffffc87a5ddc18 0000000000004048 ffffffc87a91a500
[ 6.980724] 3a60: ffffffc87a91a858 000000000000000a 0000000000000004 0000000000000000
[ 6.988537] 3a80: 0000000000000003 0000000000000000 0000000000000000 0000000000000000
[ 6.996350] 3aa0: 0000000000000000 0000000000000000 0000000000000000 ffffffffffffffff
[ 7.004163] 3ac0: 0000000000000000 0000000000000000 0000000000000001 ffffffc87a91a500
[ 7.011976] 3ae0: ffffffc87a91a000 ffffffc87b0b0000 ffffffc87a5ddc18 ffffffc87b0b0010
[ 7.019788] 3b00: 0000000000000001 ffffffc87b007e80 0000000000000004 ffffff8008bb1000
[ 7.027601] 3b20: ffffff8008c5b0b0 ffffff80093c3b90 ffffff8008788148 ffffff80093c3b80
[ 7.035414] 3b40: ffffff80087c6568 0000000040000045 ffffffc87a91a500 ffffffc87a91a000
[ 7.043227] 3b60: ffffffffffffffff ffffffc87a5ddc18 ffffff80093c3b90 ffffff80087c6568
[ 7.051040] [<ffffff80087c6568>] adrv9009_post_setup+0x30/0xd8
[ 7.056857] [<ffffff800855faf8>] platform_drv_probe+0x58/0xb8
[ 7.062594] [<ffffff800855dee4>] driver_probe_device+0x22c/0x2d8
[ 7.068584] [<ffffff800855e0ec>] __device_attach_driver+0x9c/0xf8
[ 7.074660] [<ffffff800855c0e4>] bus_for_each_drv+0x4c/0x98
[ 7.080216] [<ffffff800855db88>] __device_attach+0xc0/0x138
[ 7.085772] [<ffffff800855e1a8>] device_initial_probe+0x10/0x18
[ 7.091675] [<ffffff800855d044>] bus_probe_device+0x94/0xa0
[ 7.097231] [<ffffff800855d4f8>] deferred_probe_work_func+0xa0/0x148
[ 7.103569] [<ffffff80080b22bc>] process_one_work+0x1dc/0x348
[ 7.109306] [<ffffff80080b2674>] worker_thread+0x24c/0x488
[ 7.114775] [<ffffff80080b8104>] kthread+0x12c/0x130
[ 7.119723] [<ffffff8008084a90>] ret_from_fork+0x10/0x18
[ 7.125019] Code: b900001f f9405860 d2880902 8b020000 (b9400000)
[ 7.131103] ---[ end trace fae3c0a0f9484eb2 ]---
Hi
This does not seem to work.
I opened the block diagram in vivado and removed the dma to the jesd link. I also replaced zynqmp-zcu102-rev10-adrv9009.dts for zcu102-rev10-adrv9008-1. All builds fine, but when the kernel starts it hangs (see below). Any ideas?
6.818785] Synchronous External Abort: synchronous external abort (0x96000010) at 0xffffff800d274048
[ 6.827999] Internal error: : 96000010 [#1] SMP
[ 6.832514] Modules linked in:
[ 6.835556] CPU: 1 PID: 125 Comm: kworker/1:1 Not tainted 4.14.0 #1
[ 6.841811] Hardware name: ZynqMP ZCU102 Rev1.0 (DT)
[ 6.846768] Workqueue: events deferred_probe_work_func
[ 6.851890] task: ffffffc87b01a100 task.stack: ffffff80093c0000
[ 6.857798] PC is at adrv9009_post_setup+0x30/0xd8
[ 6.862578] LR is at axiadc_probe+0x360/0x6d8
[ 6.866917] pc : [<ffffff80087c6568>] lr : [<ffffff8008788148>] pstate: 40000045
[ 6.874295] sp : ffffff80093c3b80
[ 6.877594] x29: ffffff80093c3b90 x28: ffffff8008c5b0b0
[ 6.882889] x27: ffffff8008bb1000 x26: 0000000000000004
[ 6.888184] x25: ffffffc87b007e80 x24: 0000000000000001
[ 6.893480] x23: ffffffc87b0b0010 x22: ffffffc87a5ddc18
[ 6.898775] x21: ffffffc87b0b0000 x20: ffffffc87a91a000
[ 6.904070] x19: ffffffc87a91a500 x18: 0000000000000001
[ 6.909365] x17: 0000000000000000 x16: 0000000000000000
[ 6.914661] x15: ffffffffffffffff x14: 0000000000000000
[ 6.919956] x13: 0000000000000000 x12: 0000000000000000
[ 6.925252] x11: 0000000000000000 x10: 0000000000000000
[ 6.930547] x9 : 0000000000000000 x8 : 0000000000000003
[ 6.935842] x7 : 0000000000000000 x6 : 0000000000000004
[ 6.941137] x5 : 000000000000000a x4 : ffffffc87a91a858
[ 6.946433] x3 : ffffffc87a91a500 x2 : 0000000000004048
[ 6.951728] x1 : ffffffc87a5ddc18 x0 : ffffff800d274048
[ 6.957025] Process kworker/1:1 (pid: 125, stack limit = 0xffffff80093c0000)
[ 6.964055] Call trace:
[ 6.966488] Exception stack(0xffffff80093c3a40 to 0xffffff80093c3b80)
[ 6.972912] 3a40: ffffff800d274048 ffffffc87a5ddc18 0000000000004048 ffffffc87a91a500
[ 6.980724] 3a60: ffffffc87a91a858 000000000000000a 0000000000000004 0000000000000000
[ 6.988537] 3a80: 0000000000000003 0000000000000000 0000000000000000 0000000000000000
[ 6.996350] 3aa0: 0000000000000000 0000000000000000 0000000000000000 ffffffffffffffff
[ 7.004163] 3ac0: 0000000000000000 0000000000000000 0000000000000001 ffffffc87a91a500
[ 7.011976] 3ae0: ffffffc87a91a000 ffffffc87b0b0000 ffffffc87a5ddc18 ffffffc87b0b0010
[ 7.019788] 3b00: 0000000000000001 ffffffc87b007e80 0000000000000004 ffffff8008bb1000
[ 7.027601] 3b20: ffffff8008c5b0b0 ffffff80093c3b90 ffffff8008788148 ffffff80093c3b80
[ 7.035414] 3b40: ffffff80087c6568 0000000040000045 ffffffc87a91a500 ffffffc87a91a000
[ 7.043227] 3b60: ffffffffffffffff ffffffc87a5ddc18 ffffff80093c3b90 ffffff80087c6568
[ 7.051040] [<ffffff80087c6568>] adrv9009_post_setup+0x30/0xd8
[ 7.056857] [<ffffff800855faf8>] platform_drv_probe+0x58/0xb8
[ 7.062594] [<ffffff800855dee4>] driver_probe_device+0x22c/0x2d8
[ 7.068584] [<ffffff800855e0ec>] __device_attach_driver+0x9c/0xf8
[ 7.074660] [<ffffff800855c0e4>] bus_for_each_drv+0x4c/0x98
[ 7.080216] [<ffffff800855db88>] __device_attach+0xc0/0x138
[ 7.085772] [<ffffff800855e1a8>] device_initial_probe+0x10/0x18
[ 7.091675] [<ffffff800855d044>] bus_probe_device+0x94/0xa0
[ 7.097231] [<ffffff800855d4f8>] deferred_probe_work_func+0xa0/0x148
[ 7.103569] [<ffffff80080b22bc>] process_one_work+0x1dc/0x348
[ 7.109306] [<ffffff80080b2674>] worker_thread+0x24c/0x488
[ 7.114775] [<ffffff80080b8104>] kthread+0x12c/0x130
[ 7.119723] [<ffffff8008084a90>] ret_from_fork+0x10/0x18
[ 7.125019] Code: b900001f f9405860 d2880902 8b020000 (b9400000)
[ 7.131103] ---[ end trace fae3c0a0f9484eb2 ]---