Revision 2c85b172 host/lib/usrp/usrp1/mboard_impl.cpp
| b/host/lib/usrp/usrp1/mboard_impl.cpp | ||
|---|---|---|
| 160 | 160 |
return ((channel_flags & 0xffff) << 4) | ((nchan & 0x7) << 0); |
| 161 | 161 |
} |
| 162 | 162 |
|
| 163 |
/*! |
|
| 164 |
* Capabilities Register |
|
| 165 |
* |
|
| 166 |
* 3 2 1 0 |
|
| 167 |
* 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 |
|
| 168 |
* +-----------------------------------------------+-+-----+-+-----+ |
|
| 169 |
* | Reserved |T|DUCs |R|DDCs | |
|
| 170 |
* +-----------------------------------------------+-+-----+-+-----+ |
|
| 171 |
*/ |
|
| 172 |
static int num_ddcs(boost::uint32_t regval) |
|
| 173 |
{
|
|
| 174 |
return (regval >> 0) & 0x0007; |
|
| 175 |
} |
|
| 176 |
|
|
| 177 |
static int num_ducs(boost::uint32_t regval) |
|
| 178 |
{
|
|
| 179 |
return (regval >> 4) & 0x0007; |
|
| 180 |
} |
|
| 181 |
|
|
| 182 |
static bool has_rx_halfband(boost::uint32_t regval) |
|
| 183 |
{
|
|
| 184 |
return (regval >> 3) & 0x0001; |
|
| 185 |
} |
|
| 186 |
|
|
| 187 |
static bool has_tx_halfband(boost::uint32_t regval) |
|
| 188 |
{
|
|
| 189 |
return (regval >> 7) & 0x0001; |
|
| 190 |
} |
|
| 191 |
|
|
| 163 | 192 |
/*********************************************************************** |
| 164 | 193 |
* Mboard Initialization |
| 165 | 194 |
**********************************************************************/ |
| ... | ... | |
| 187 | 216 |
|
| 188 | 217 |
// Set default for TX format to 16-bit I&Q |
| 189 | 218 |
_iface->poke32(FR_TX_FORMAT, 0x00000000); |
| 219 |
|
|
| 220 |
// TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO |
|
| 221 |
// |
|
| 222 |
// Do something useful with the capabilities register |
|
| 223 |
// |
|
| 224 |
boost::uint32_t regval = _iface->peek32(FR_RB_CAPS); |
|
| 225 |
std::cout << "USRP1 Capabilities" << std::endl; |
|
| 226 |
std::cout << " number of duc's: " << num_ddcs(regval) << std::endl; |
|
| 227 |
std::cout << " number of ddc's: " << num_ducs(regval) << std::endl; |
|
| 228 |
std::cout << " rx halfband: " << has_rx_halfband(regval) << std::endl; |
|
| 229 |
std::cout << " tx halfband: " << has_tx_halfband(regval) << std::endl; |
|
| 190 | 230 |
} |
| 191 | 231 |
|
| 192 | 232 |
void usrp1_impl::issue_stream_cmd(const stream_cmd_t &stream_cmd) |
Also available in: Unified diff