Changeset 8334
- Timestamp:
- 05/08/08 19:54:33
- Files:
-
- usrp2/trunk/firmware/lib/db_rfx.c (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
usrp2/trunk/firmware/lib/db_rfx.c
r8327 r8334 92 92 struct db_rfx_400_rx rfx_400_rx = { 93 93 .base.dbid = 0x0004, 94 .base.output_enables = 0x00FB, // FIXME 94 .base.output_enables = 0x00E0, 95 .base.used_pins = 0x00FF, 95 96 //.base.freq_min = U2_DOUBLE_TO_FXPT_FREQ(xxx), 96 97 //.base.freq_max = U2_DOUBLE_TO_FXPT_FREQ(xxx), … … 103 104 .base.spectrum_inverted = false, 104 105 //.base.lo_offset = U2_DOUBLE_TO_FXPT_FREQ(4e6), 106 .base.init = rfx_init_rx, 105 107 .base.set_freq = rfx_set_freq, 106 108 .base.set_gain = rfx_set_gain, … … 121 123 struct db_rfx_400_tx rfx_400_tx = { 122 124 .base.dbid = 0x0008, 123 .base.output_enables = 0x00FB, // FIXME 125 .base.output_enables = 0x00E0, 126 .base.used_pins = 0x00FF, 124 127 //.base.freq_min = U2_DOUBLE_TO_FXPT_FREQ(xxx), 125 128 //.base.freq_max = U2_DOUBLE_TO_FXPT_FREQ(xxx), … … 132 135 .base.spectrum_inverted = false, 133 136 //.base.lo_offset = U2_DOUBLE_TO_FXPT_FREQ(4e6), 134 .base.init = rfx_init ,137 .base.init = rfx_init_tx, 135 138 .base.set_freq = rfx_set_freq, 136 139 .base.set_gain = rfx_set_gain, … … 149 152 150 153 bool 151 rfx_init (struct db_base *dbb)154 rfx_init_tx(struct db_base *dbb) 152 155 { 153 156 struct db_rfx_dummy *db = (struct db_rfx_dummy *) dbb; 154 return false; 157 return true; 158 } 159 160 bool 161 rfx_init_rx(struct db_base *dbb) 162 { 163 struct db_rfx_dummy *db = (struct db_rfx_dummy *) dbb; 164 return true; 155 165 } 156 166 … … 158 168 rfx_set_freq(struct db_base *dbb, u2_fxpt_freq_t freq, u2_fxpt_freq_t *dc) 159 169 { 160 *dc = 0; // FIXME170 *dc = 0; 161 171 struct db_rfx_dummy *db = (struct db_rfx_dummy *) dbb; 162 172 u2_fxpt_freq_t desired_n = db->common.freq_mult*freq/phdet_freq; … … 170 180 int R = (R_RSV<<22)|(R_BSC<<20)|(R_TMB<<19)|(R_LDP<<18)|(R_ABP<<16)|(R_DIV<<2)|1; 171 181 int N = (DIVSEL<<23)|(db->common.DIV2<<22)|(CPGAIN<<21)|(B<<8)|(N_RSV<<7)|(A<<2)|2; 172 int C = (P<<22)|(PD<<20)|(db->common.CP2<<17)|(db->common.CP1<<14)|(PL<<12)| (MTLD<<11)|(CPGAIN<<10)|(CP3S<<9)|(PDP<<8)|173 (M UXOUT<<5)|(CR<<4)|(PC<<2)|0;182 int C = (P<<22)|(PD<<20)|(db->common.CP2<<17)|(db->common.CP1<<14)|(PL<<12)| 183 (MTLD<<11)|(CPGAIN<<10)|(CP3S<<9)|(PDP<<8)|(MUXOUT<<5)|(CR<<4)|(PC<<2)|0; 174 184 175 185 spi_transact(SPI_TXONLY,db->common.spi_mask,C,24,SPIF_PUSH_FALL); … … 177 187 spi_transact(SPI_TXONLY,db->common.spi_mask,R,24,SPIF_PUSH_FALL); 178 188 179 return false; 189 *dc = (N_DIV * PRESCALER * phdet_freq) / db->common.freq_mult; 190 return true; 180 191 } 181 192
