Skip to content

Commit 80a53dd

Browse files
docs/projects/adrv9001_dual: Add build configs. Fix links
Signed-off-by: Iulia Moldovan <Iulia.Moldovan@analog.com>
1 parent 7e53b30 commit 80a53dd

File tree

1 file changed

+50
-30
lines changed

1 file changed

+50
-30
lines changed

docs/projects/adrv9001_dual/index.rst

Lines changed: 50 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
ADRV9001 DUAL HDL Project
1+
.. _adrv9001_dual:
2+
3+
ADRV9001-DUAL HDL Project
24
===============================================================================
35

46
Overview
@@ -24,7 +26,7 @@ Supported boards
2426
Supported devices
2527
-------------------------------------------------------------------------------
2628

27-
- :adi:`ADRV9002`, in :adi:`ADRV9002NP/W2/PCBZ <EVAL-ADRV9002>`,
29+
- :adi:`ADRV9002`, in :adi:`ADRV9002NP/W2/PCBZ <EVAL-ADRV9002>`
2830

2931
Supported carriers
3032
-------------------------------------------------------------------------------
@@ -69,39 +71,42 @@ The :git-hdl:`AXI ADRV9001 IP <library/axi_adrv9001>` in this HDL project is
6971
configured to work in LVDS and CMOS interface; it supports two configuration
7072
modes:
7173

72-
- 2R2T - 2x Rx and 2x Tx independent control and DMAs for the two RF channels
73-
- 1R1T - 1x Rx and 1x Tx common control and DMAs for the two RF channels also
74+
- 2R2T - 2x RX and 2x TX independent control and DMAs for the two RF channels
75+
- 1R1T - 1x RX and 1x TX common control and DMAs for the two RF channels also
7476
noted as R1_MODE
7577

76-
For any mode the number of RF channels(two) doesn't change only the controlling
77-
instance and the DMAs.
78+
For any mode, the number of RF channels (two) doesn't change --- only the
79+
controlling instance and the DMAs do.
7880

7981
The design has four receive paths and four transmit paths.
80-
Two of the receive paths (Rx12) have four channels and the other (Rx2) two
82+
83+
Two of the receive paths (RX12) have four channels and the other (RX2) two
8184
channels. These only work independently, not concomitantly.
82-
One must chose between two active paths (2R2T), or just the Rx12 (1R1T) path,
83-
which has four active channels, while Rx2 is disabled.
84-
The same applies to the transmit path but in the other direction.
8585

86-
When only the Rx12 path is active with four channels mode, the axi_adrv9001
87-
core will take ownership of both of its source synchronous interfaces.
86+
One must choose between two active paths (2R2T), or just the RX12 (1R1T) path,
87+
which has four active channels, while RX2 is disabled.
88+
89+
The same applies to the transmit path, but in the other direction.
90+
91+
When only the RX12 path is active with four channels mode, the axi_adrv9001
92+
core will take ownership of both of its source-synchronous interfaces.
8893
The requirement in this case is that both interfaces, of an axi_adrv9001 core,
8994
run at the same rate.
9095

91-
Regarding the INDEPENDENT_1R1T_SUPPORT and COMMON_2R2T_SUPPORT parameters,
96+
Regarding the ``INDEPENDENT_1R1T_SUPPORT`` and ``COMMON_2R2T_SUPPORT`` parameters
9297
related to the above modes, their purpose is to remove the unused data paths,
9398
reducing in this way the resource utilisation. By default all modes/paths are
9499
available.
95100

96-
For more info see the parameter description section of :ref:`axi_adrv9001`.
101+
For more info, see the Parameter Description section of :ref:`axi_adrv9001`.
97102

98103
Clock scheme
99104
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
100105

101-
The clocks are managed by the ADRV9002 devices and are software programmable.
102-
Please refer to the device datasheet for the various clocks within the device.
106+
The clocks are managed by the :adi:`ADRV9002` devices and are software-programmable.
107+
Please refer to the device data sheet for the various clocks within the device.
103108

104-
Independently a board provides a 38.4MHz crystal for the :adi:`ADRV9002`.
109+
Independently, a board provides a 38.4MHz crystal for the :adi:`ADRV9002`.
105110
An external reference clock can also be used.
106111

107112
CPU/Memory interconnects addresses
@@ -227,13 +232,39 @@ If you want to build the sources, ADI makes them available on the
227232
`clone <https://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository>`__
228233
the HDL repository.
229234

235+
This project has the following `make` parameters:
236+
237+
- CMOS_LVDS_N - selects the interface type
238+
- 0 = LVDS (default)
239+
- 1 = CMOS
240+
- USE_RX_CLK_FOR_TX1 - selects the clock to drive the TX1 SSI interface
241+
- 0 = TX1 dedicated clock (default)
242+
- 1 = RX1 SSI clock
243+
- 2 = RX2 SSI clock
244+
- USE_RX_CLK_FOR_TX2 - selects the clock to drive the TX2 SSI interface
245+
- 0 = TX2 dedicated clock (default)
246+
- 1 = RX1 SSI clock
247+
- 2 = RX2 SSI clock
248+
230249
**Linux/Cygwin/WSL**
231250

232-
.. shell::
251+
Building the default configuration (LVDS):
252+
253+
.. shell:: bash
233254

234255
$cd hdl/projects/adrv9001_dual/zcu102
235256
$make
236257

258+
Example configuration with CMOS:
259+
260+
.. shell:: bash
261+
262+
~/hdl/projects/adrv9001_dual/zcu102
263+
$make CMOS_LVDS_N=1
264+
265+
The result of the build, if parameters were used, will be in a folder named
266+
by the configuration used ``CMOSLVDSN1``.
267+
237268
A more comprehensive build guide can be found in the :ref:`build_hdl` user guide.
238269

239270
Resources
@@ -242,18 +273,12 @@ Resources
242273
Systems related
243274
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
244275

245-
Here you can find the quick start guides available for these evaluation boards:
246-
247-
- :dokuwiki:`ZCU102 <resources/eval/user-guides/adrv9002_dual/quickstart/zynqmp>`
248-
249-
Other useful information:
250-
251276
- :dokuwiki:`[Wiki] ADRV9001/2 User Guide <resources/eval/user-guides/adrv9001>`
252277

253278
HDL related
254279
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
255280

256-
- :git-hdl:`ADRV9001 HDL project source code <projects/adrv9001>`
281+
- :git-hdl:`ADRV9001_DUAL HDL project source code <projects/adrv9001_dual>`
257282

258283
.. list-table::
259284
:widths: 30 35 35
@@ -290,11 +315,6 @@ Software related
290315
- :dokuwiki:`[Wiki] ADRV9002 Device Driver Customization <resources/tools-software/linux-drivers/iio-transceiver/adrv9002-customization>`
291316
- :dokuwiki:`[Wiki] ADRV9002 Integrated Dual RF Transceiver Linux device driver <resources/tools-software/linux-drivers/iio-transceiver/adrv9002>`
292317

293-
List of Linux device trees (to be dev).
294-
295-
- :git-linux:`adrv9002 ZCU102 (rev10) Linux device tree <arch/arm/boot/dts/xilinx/zynqmp-zcu102-rev10-adrv9002-dual.dts>`
296-
- :git-linux:`adrv9002 ZCU102 (rev10) Linux device 2rx2tx tree <arch/arm/boot/dts/xilinx/zynqmp-zcu102-rev10-adrv9002-dual-rx2tx2.dts>`
297-
298318
.. include:: ../common/more_information.rst
299319

300320
.. include:: ../common/support.rst

0 commit comments

Comments
 (0)