Commit e8fe4ec8 authored by Tristan Gingold's avatar Tristan Gingold

libwr2rf: add libwr2rf_api_init

parent a9f2b2de
......@@ -2,6 +2,7 @@
#include <stdio.h>
#include <unistd.h>
#include "libwr2rf/board.h"
#include "libwr2rf/api.h"
#include "wr2rf_rfnco_regs.h"
#include "regs.h"
......@@ -214,6 +215,45 @@ libwr2rf_rf_init (struct libwr2rf_dev *dev)
libwr2rf_rf_init_rfnco (dev);
}
void
libwr2rf_api_init (struct libwr2rf_dev *dev)
{
/* Command iodelay-init */
libwr2rf_iodelay_init(dev);
/* Command dac-iqsetpoint */
libwr2rf_dac_iqsetpoint(dev, 1, 0x4000, 0);
libwr2rf_dac_iqsetpoint(dev, 2, 0x4000, 0);
/* Commands:
dds-init (TODO: io_update)
dds-sync-cal
dac-init
dac-timing
dac-iqctrl
nco-source
nco-wrcfg
*/
libwr2rf_rf_init(dev);
/* Configure RF outputs.
Command set-rfout
*/
libwr2rf_set_rf_out(dev, 1, LIBWR2RF_RF_OUT_MIXER);
libwr2rf_set_rf_out(dev, 2, LIBWR2RF_RF_OUT_MIXER);
/* Command wrs-fixedlat */
libwr2rf_set_wrs_fixed_latency (dev, 1000);
/* Command wrs-tolat */
libwr2rf_set_wrs_timeout_latency (dev, 2000);
/* Command nco-reset-delay */
libwr2rf_vtu_nco_reset_delay(dev, 1, 75, 9);
libwr2rf_vtu_nco_reset_delay(dev, 2, 75, 0);
}
void
libwr2rf_set_wrs_fixed_latency (struct libwr2rf_dev *dev, unsigned wr_cycles)
{
......
......@@ -68,6 +68,9 @@ int libwr2rf_set_rf_out(struct libwr2rf_dev *dev, unsigned ch, unsigned cfg);
/* Initialize RF (DDS and DAC). */
void libwr2rf_rf_init (struct libwr2rf_dev *dev);
/* Post WR full initialization. */
void libwr2rf_api_init (struct libwr2rf_dev *dev);
/* tmg-io connector. */
//#define LIBWR2RF_TMGIO_OUT_RFSYNC 0 /* For channels 1 & 2 */
//#define LIBWR2RF_TMGIO_OUT_FREV 1 /* For channels 1 & 2 */
......
......@@ -2987,39 +2987,7 @@ api_init (struct libwr2rf_dev *dev, int argc, char **argv)
sleep(1);
}
/* Command iodelay-init */
libwr2rf_iodelay_init(dev);
/* Command dac-iqsetpoint */
libwr2rf_dac_iqsetpoint(dev, 1, 0x4000, 0);
libwr2rf_dac_iqsetpoint(dev, 2, 0x4000, 0);
/* Commands:
dds-init (TODO: io_update)
dds-sync-cal
dac-init
dac-timing
dac-iqctrl
nco-source
nco-wrcfg
*/
libwr2rf_rf_init(dev);
/* Configure RF outputs.
Command set-rfout
*/
libwr2rf_set_rf_out(dev, 1, LIBWR2RF_RF_OUT_MIXER);
libwr2rf_set_rf_out(dev, 2, LIBWR2RF_RF_OUT_MIXER);
/* Command wrs-fixedlat */
libwr2rf_set_wrs_fixed_latency (dev, 1000);
/* Command wrs-tolat */
libwr2rf_set_wrs_timeout_latency (dev, 2000);
/* Command nco-reset-delay */
libwr2rf_vtu_nco_reset_delay(dev, 1, 75, 9);
libwr2rf_vtu_nco_reset_delay(dev, 2, 75, 0);
libwr2rf_api_init (dev);
}
static void
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment