aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2011-07-01 19:03:03 -0700
committerJosh Blum <josh@joshknows.com>2011-07-01 19:03:03 -0700
commitea309eba1b34371e710a01ad9bfd26a88311c267 (patch)
tree54e2b84aa205ab50757f4f6b6d84111f9163b229
parent614d4901bb9dbb6866a0c5f57b1397e4b185a11f (diff)
downloaduhd-ea309eba1b34371e710a01ad9bfd26a88311c267.tar.gz
uhd-ea309eba1b34371e710a01ad9bfd26a88311c267.tar.bz2
uhd-ea309eba1b34371e710a01ad9bfd26a88311c267.zip
usrp: updated documentation for various changes (mimo mode, subdevice spec defaults)
-rw-r--r--host/docs/usrp1.rst12
-rw-r--r--host/docs/usrp2.rst52
-rw-r--r--host/include/uhd/usrp/subdev_spec.hpp5
3 files changed, 19 insertions, 50 deletions
diff --git a/host/docs/usrp1.rst b/host/docs/usrp1.rst
index 97a8c3bb5..cf344d7e4 100644
--- a/host/docs/usrp1.rst
+++ b/host/docs/usrp1.rst
@@ -34,24 +34,16 @@ Example device address string representations to specify non-standard firmware a
Specifying the subdevice to use
------------------------------------------------------------------------
The USRP1 has multiple daughterboard slots, known as slot A and slot B.
-The subdevice specification can be used to select
-the daughterboard and subdevice for each channel.
-For daughterboards with one one subdevice,
-the subdevice name may be left blank for automatic selection.
+The subdevice specification can be used to map an RF frontend to a DSP.
+An RF frontend is identified by the daughterboard slot name and subdevice name.
Ex: The subdev spec markup string to select a WBX on slot B.
-Notice the use of the blank subdevice name for automatic selection.
::
- B:
-
- -- OR --
-
B:0
Ex: The subdev spec markup string to select a BasicRX on slot B.
-Notice that the subdevice name is always specified in the 3 possible cases.
::
diff --git a/host/docs/usrp2.rst b/host/docs/usrp2.rst
index 1b243656f..025cdd198 100644
--- a/host/docs/usrp2.rst
+++ b/host/docs/usrp2.rst
@@ -246,60 +246,42 @@ Using the MIMO Cable
------------------------------------------------------------------------
The MIMO cable allows two USRP devices to share reference clocks,
time synchronization, and the ethernet interface.
+One of the devices will sink its clock and time references to the MIMO cable.
+This device will be referred to as the slave, and the other device, the master.
+
+* The slave device acquires the clock and time references from the master device.
+* The master and slave may be used individually or in a multi-device configuration.
+* External clocking is optional, and should only be supplied to the master device.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Shared ethernet mode
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
In shared ethernet mode,
only one device in the configuration can be attached to the ethernet.
-This device will be referred to as the master, and the other device, the slave.
-* The master provides reference clock and time synchronization to the slave.
-* All data passing between the host and the slave is routed over the MIMO cable.
+* Clock reference, time reference, and data are communicated over the MIMO cable.
* Both master and slave must have different IPv4 addresses in the same subnet.
-* The master and slave may be used individually or in a multi-device configuration.
-* External clocking is optional, and should only be supplied to the master device.
-* The role of slave and master may be switched with the "mimo_mode" device address (see dual ethernet mode).
-
-Example device address string representation for 2 USRP2s with IPv4 addresses 192.168.10.2 (master) and 192.168.10.3 (slave)
-::
-
- -- Multi-device example --
-
- addr0=192.168.10.2, addr1=192.168.10.3
-
- -- Two single devices example --
-
- addr=192.168.10.2
-
- addr=192.168.10.3
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Dual ethernet mode
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
In dual ethernet mode,
both devices in the configuration must be attached to the ethernet.
-One of the devices in the configuration will be configured to provide synchronization.
-This device will be referred to as the master, and the other device, the slave.
-* The master provides reference clock and time synchronization to the slave.
-* The devices require the special device address argument "mimo_mode" set.
+* Only clock reference and time reference are communicated over the MIMO cable.
* Both master and slave must have different IPv4 addresses in different subnets.
-* The master and slave may be used individually or in a multi-device configuration.
-* External clocking is optional, and should only be supplied to the master device.
-Example device address string representation for 2 USRP2s with IPv4 addresses 192.168.10.2 (master) and 192.168.20.2 (slave)
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Configuring the slave
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+In order for the slave to synchronize to the master over MIMO cable,
+the following clock configuration must be set on the slave device:
::
- -- Multi-device example --
-
- addr0=192.168.10.2, mimo_mode0=master, addr1=192.168.20.2, mimo_mode1=slave
-
- -- Two single devices example --
-
- addr=192.168.10.2, mimo_mode=master
-
- addr=192.168.20.2, mimo_mode=slave
+ uhd::clock_config_t clock_config;
+ clock_config.ref_source = uhd::clock_config_t::REF_MIMO;
+ clock_config.pps_source = uhd::clock_config_t::PPS_MIMO;
+ usrp->set_clock_config(clock_config, slave_index);
------------------------------------------------------------------------
Hardware setup notes
diff --git a/host/include/uhd/usrp/subdev_spec.hpp b/host/include/uhd/usrp/subdev_spec.hpp
index b189724c9..62c1fc177 100644
--- a/host/include/uhd/usrp/subdev_spec.hpp
+++ b/host/include/uhd/usrp/subdev_spec.hpp
@@ -62,11 +62,6 @@ namespace uhd{ namespace usrp{
* The markup-string is a whitespace separated list of dboard:subdev pairs.
* The first pair represents the subdevice for channel zero,
* the second pair represents the subdevice for channel one, and so on.
- *
- * Special handling for empty conditions:
- * - An empty subdevice specification means: select the first subdevice found in the configuration
- * - An empty daughterboard name means: select the only daughterboard slot or error if multiple exist
- * - An empty subdevice name means: select the only subdevice on that board or error if multiple exist
*/
class UHD_API subdev_spec_t : public std::vector<subdev_spec_pair_t>{
public: