aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp
Commit message (Collapse)AuthorAgeFilesLines
...
* x300: Remove 120 MHz optionMartin Braun2018-11-072-3/+1
| | | | | None of our FPGA images support a 120 MHz master clock rate, so the UHD code should match that.
* rh: adjust tx lo gain tableMark Meserve2018-11-052-7/+12
| | | | - Improves performance for frequencies greater than 3.5 GHz
* rh: add lo distribution supportMark Meserve2018-11-054-0/+161
| | | | | | | | | - This is a combination of 5 commits. - rh: add lo distribution board gpio expander - rh: add lo distribution mpm functions - rh: add code to conditionally initialize lo distribution - rh: change empty i2c device from exception to assertion - rh: add lo distribution board control
* rh: fix handling of spur_dodging argMark Meserve2018-11-013-7/+30
|
* cores:rx_frontend_core_3000: fix real modeGwenhael Goavec-Merou2018-10-291-0/+2
|
* rh: add support for rhodium devicesMark Meserve2018-10-2511-1/+3479
| | | | | | Co-authored-by: Humberto Jimenez <humberto.jimenez@ni.com> Co-authored-by: Alex Williams <alex.williams@ni.com> Co-authored-by: Derek Kozel <derek.kozel@ni.com>
* Test: Add unit test for eeprom_utilsmichael-west2018-10-251-1/+1
|
* X300: Prevent duplicate MAC and IP addresses from being programmed in MBMichael West2018-10-251-2/+24
| | | | EEPROM
* X300: Add recovery for duplicate IP addresses in EEPROMMichael West2018-10-252-19/+13
| | | | | - Limit initialization to ZPU communication if recover_mb_eeprom=1 is set in device args.
* B200: Restore asynchronous reset of AD936x.michael-west2018-10-172-4/+15
|
* lmx2592: remove initial scratch register readbackMark Meserve2018-10-171-24/+0
| | | | | - This is the only read operation in the driver, so removing it simplifies the driver's requirements significantly.
* lmx2592: add spur dodgingMark Meserve2018-10-171-22/+326
|
* lib: ad9361: De-boostify AD9361 driverMartin Braun2018-10-172-106/+195
| | | | No functional or API changes.
* multi_usrp: Add sync_source APIMartin Braun2018-10-111-6/+160
| | | | | | | | | | The sync_source API is an atomic setter for all sync-related settings. If supported by the underlying USRP, it can be faster to call set_sync_source() rather than sequentially calling set_clock_source() and set_time_source(). If the underlying device does not support the sync_source API, it will fall back to the set_clock_source() and set_time_source() APIs, making this change backward-compatiple.
* mpmd: Increase rpcc timeout when calling set_time_source()Trung Tran2018-10-111-0/+2
| | | | | | | set_time_source() for N310 and N300 can take longer than the default RPC client timeout of 2 seconds due to dboard initialization. We need increase this timeout, by using the init timeout value which is 2 minutes.
* mg: fixup set_rx_antennaTrung Tran2018-10-041-1/+1
| | | | | | After going to 2 radios configuration (FPGA), the channnel value is passed into this set_rx_antenna now have value either 0 or 1. We want the mapping of {radio_channel:cpld_channel} = {0:CHAN1} or {1:CHAN2}.
* multi_usrp: move definition of constantsAndrew Lynch2018-10-041-0/+2
| | | | ALL_MBOARDS and ALL_CHANS will be exported on GCC and MSVC
* cores: Update rx_frontend_gen3.v controls for 1/4-rate mixerMartin Braun2018-09-252-8/+12
| | | | | | | This tracks the changes on rx_frontend_gen3.v, which was updated to use a quarter-rate downconverter instead of a generic CORDIC. The X3x0 FPGA compat number is incremented as the rx_frontend is part of the device architecture rather than an RFNoC block.
* e320: Fix master_clock_rate settingSugandha Gupta2018-09-241-0/+4
| | | | | | The master clock rate was getting overwritten while running the codec loopback self test. So now we save the current rate before running the test and then reapply it.
* uhd: rfnoc: add async message handlerTrung Tran2018-09-141-2/+29
|
* mg: clipping frequencyTrung Tran2018-09-142-4/+7
| | | | | Clipping requested frequency to acceptable ranges in Magnesium TX/RX set frequency functions.
* x300_impl: remove default_buff_args propertiesTrung Tran2018-09-131-7/+0
| | | | ...that are already handled in udp_zero_copy.
* device3_io_impl: remove tx_hint[send_buff_size]Trung Tran2018-09-131-6/+0
| | | | | we're no longer need this. Because there are default send buff size in each transport type impl.
* mpmd: add link speed to xport udpTrung Tran2018-09-131-6/+29
| | | | This is used to determine send_buff_size and recv_buff_size
* fixup! DDC/DUC: switch CORDIC -> DDS for all relevant variable namesmichael-west2018-09-132-12/+12
|
* e320: gpio: Fix front panel GPIO readbackSugandha Gupta2018-09-121-1/+4
| | | | The gpio devtest passes after this fix. Enabling the test
* mpmd: add option to enum rfnoc blocks from argsTrung Tran2018-08-311-5/+21
|
* x300: Improve firmware compat error messageMartin Braun2018-08-222-16/+35
| | | | | Now matches the FPGA error message (go download, then run uhd_image_loader).
* X300: Correctly initialize antenna mapping for TwinRXDerek Kozel2018-08-221-1/+4
|
* twinrx: enable ch1 lo amps if ch2 is using an external lo sourceMark Meserve2018-08-211-1/+13
| | | | | - AMP_LO1_EN_CH1 controls U2, the amp for the external LO1 port, so it must be set high if channel 2 is using an external LO (external or reimport)
* uhd: Remove usage of time_t (except when required)Martin Braun2018-08-203-8/+8
| | | | | | | | | | The C/C++ standards don't define what time_t is, only that it is arithmetic (and real for C11, and integral for C++). It should not be used in portable software and is only used as the return value for some libc calls. A common definition for time_t is int64_t, so we'll switch to that permanently in our own APIs. System APIs will of course stick with time_t.
* multi_usrp: Add get_user_settings_iface() API callMartin Braun2018-08-161-0/+12
| | | | | | | | | | | For USRPs that support user settings (e.g., B2xx, N230), this will return an object that will allow peeking and poking user-defined settings registers. Mock code example: auto usrp = multi_usrp::make(...); auto user_settings_iface = usrp->get_user_settings_iface(); user_settings_iface->poke32(0, 23);
* b200: Enable access to user regs via the 'enable_user_regs' argMartin Braun2018-08-163-4/+31
|
* b200: Remove superfluous fake lambdaMartin Braun2018-08-161-11/+10
| | | | No functional changes. Cleanup only. A little less Boost.
* x300: Enable clock_source and time_source device argsMartin Braun2018-08-101-2/+2
| | | | | | | | | | You can now change the time/clock source default through device args: auto usrp = uhd::usrp::multi_usrp::make( "type=x300,clock_source=external,time_source=external"); This also enables the use of config files for the clock/time source implicitly.
* x300: Use constrained_argsMartin Braun2018-08-104-48/+222
| | | | | | | x300_impl will now use a constrained_device_args_t-derived object to parse device args. No API or functional changes.
* x300: Move defaults to their own headerMartin Braun2018-08-103-116/+159
| | | | | | | Also puts all defaults into the uhd::usrp::x300 namespace. This commit does some renaming and refactoring, but no functional changes.
* e320: Fix tx/rx atr - antenna and frequency settingsSugandha Gupta2018-08-095-30/+32
| | | | | | - Change RX/TX min/max frequency according to AD9361 datasheet - Fix set_atr_bits to change with rx/tx frequency and antenna independently - Make AMP switching active high
* fixup! mpm: mg: add set_master_clock_rate memberMartin Braun2018-08-031-2/+2
|
* rfnoc: dma_fifo: Added a more robust flush mechanismAshish Chaudhari2018-08-031-35/+59
| | | | | | | | | - The flushing mechanism now looks similar to that in noc_shell - Make use of new flush bit in FIFO control register - Restrict using the clear bit only after flushing to ensure no partial packets are introduced in the stream. (clear immediately empties out FIFOs) - Changes are backwards compatible with older FPGAs
* mg: Allow calling set_rate() at runtimeMartin Braun2018-08-022-6/+38
|
* mpm: mg: add set_master_clock_rate memberDaniel Jepson2018-08-022-0/+13
|
* mpmd: Allow setting time_source and clock_source propsMartin Braun2018-08-021-24/+4
| | | | | Before, setting these properties in the prop tree would trigger an exception.
* x300: Log git hash and compat number as debug messageMartin Braun2018-08-011-3/+8
|
* b100: Demote some clocking-related log messages to traceMartin Braun2018-07-311-2/+2
|
* b100: Remove all Boostisms from fifo_ctrl_excelsiorMartin Braun2018-07-311-9/+9
|
* b100: Fix fifo_ctrl_excelsior not exitingMartin Braun2018-07-311-13/+2
|
* b100: Move fifo_ctrl_excelsior to b100 subdirMartin Braun2018-07-315-2/+53
| | | | | This device is the only one using it, and no one will ever use it going forward.
* lmx2592: fix calibration start during tuningMark Meserve2018-07-311-1/+3
| | | | - This bug could cause LO to not lock properly after a set_frequency call
* lmx2592: always mux lock detect after initMark Meserve2018-07-311-9/+5
|