commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r8334 - usrp2/trunk/firmware/lib


From: matt
Subject: [Commit-gnuradio] r8334 - usrp2/trunk/firmware/lib
Date: Thu, 8 May 2008 19:54:34 -0600 (MDT)

Author: matt
Date: 2008-05-08 19:54:33 -0600 (Thu, 08 May 2008)
New Revision: 8334

Modified:
   usrp2/trunk/firmware/lib/db_rfx.c
Log:
returns actual frequency now


Modified: usrp2/trunk/firmware/lib/db_rfx.c
===================================================================
--- usrp2/trunk/firmware/lib/db_rfx.c   2008-05-09 01:54:27 UTC (rev 8333)
+++ usrp2/trunk/firmware/lib/db_rfx.c   2008-05-09 01:54:33 UTC (rev 8334)
@@ -91,7 +91,8 @@
  */
 struct db_rfx_400_rx rfx_400_rx = {
   .base.dbid = 0x0004,
-  .base.output_enables = 0x00FB,                       // FIXME
+  .base.output_enables = 0x00E0,
+  .base.used_pins = 0x00FF,
   //.base.freq_min = U2_DOUBLE_TO_FXPT_FREQ(xxx),
   //.base.freq_max = U2_DOUBLE_TO_FXPT_FREQ(xxx),
   //.base.freq_step_size = U2_DOUBLE_TO_FXPT_FREQ(xxx),
@@ -102,6 +103,7 @@
   .base.i_and_q_swapped = false,
   .base.spectrum_inverted = false,
   //.base.lo_offset = U2_DOUBLE_TO_FXPT_FREQ(4e6),
+  .base.init = rfx_init_rx,
   .base.set_freq = rfx_set_freq,
   .base.set_gain = rfx_set_gain,
   .base.set_tx_enable = 0,
@@ -120,7 +122,8 @@
 
 struct db_rfx_400_tx rfx_400_tx = {
   .base.dbid = 0x0008,
-  .base.output_enables = 0x00FB,                       // FIXME
+  .base.output_enables = 0x00E0,
+  .base.used_pins = 0x00FF,
   //.base.freq_min = U2_DOUBLE_TO_FXPT_FREQ(xxx),
   //.base.freq_max = U2_DOUBLE_TO_FXPT_FREQ(xxx),
   //.base.freq_step_size = U2_DOUBLE_TO_FXPT_FREQ(xxx),
@@ -131,7 +134,7 @@
   .base.i_and_q_swapped = false,
   .base.spectrum_inverted = false,
   //.base.lo_offset = U2_DOUBLE_TO_FXPT_FREQ(4e6),
-  .base.init = rfx_init,
+  .base.init = rfx_init_tx,
   .base.set_freq = rfx_set_freq,
   .base.set_gain = rfx_set_gain,
   .base.set_tx_enable = rfx_set_tx_enable,
@@ -148,16 +151,23 @@
 };
 
 bool
-rfx_init(struct db_base *dbb)
+rfx_init_tx(struct db_base *dbb)
 {
   struct db_rfx_dummy *db = (struct db_rfx_dummy *) dbb;
-  return false;
+  return true;
 }
 
 bool
+rfx_init_rx(struct db_base *dbb)
+{
+  struct db_rfx_dummy *db = (struct db_rfx_dummy *) dbb;
+  return true;
+}
+
+bool
 rfx_set_freq(struct db_base *dbb, u2_fxpt_freq_t freq, u2_fxpt_freq_t *dc)
 {
-  *dc = 0;     // FIXME
+  *dc = 0;
   struct db_rfx_dummy *db = (struct db_rfx_dummy *) dbb;
   u2_fxpt_freq_t desired_n = db->common.freq_mult*freq/phdet_freq;
   int N_DIV = u2_fxpt_freq_round_to_int(desired_n);
@@ -169,14 +179,15 @@
 
   int R = 
(R_RSV<<22)|(R_BSC<<20)|(R_TMB<<19)|(R_LDP<<18)|(R_ABP<<16)|(R_DIV<<2)|1;
   int N = 
(DIVSEL<<23)|(db->common.DIV2<<22)|(CPGAIN<<21)|(B<<8)|(N_RSV<<7)|(A<<2)|2;
-  int C = 
(P<<22)|(PD<<20)|(db->common.CP2<<17)|(db->common.CP1<<14)|(PL<<12)|(MTLD<<11)|(CPGAIN<<10)|(CP3S<<9)|(PDP<<8)|
-    (MUXOUT<<5)|(CR<<4)|(PC<<2)|0;
+  int C = (P<<22)|(PD<<20)|(db->common.CP2<<17)|(db->common.CP1<<14)|(PL<<12)|
+    (MTLD<<11)|(CPGAIN<<10)|(CP3S<<9)|(PDP<<8)|(MUXOUT<<5)|(CR<<4)|(PC<<2)|0;
 
   spi_transact(SPI_TXONLY,db->common.spi_mask,C,24,SPIF_PUSH_FALL);
   spi_transact(SPI_TXONLY,db->common.spi_mask,N,24,SPIF_PUSH_FALL);
   spi_transact(SPI_TXONLY,db->common.spi_mask,R,24,SPIF_PUSH_FALL);
 
-  return false;
+  *dc = (N_DIV * PRESCALER * phdet_freq) / db->common.freq_mult;
+  return true;
 }
 
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]