*\r
***************************************************************/\r
\r
- CC1120_SYNC3, 0x93, /* Sync Word Configuration [31:24] */\r
- CC1120_SYNC2, 0x0b, /* Sync Word Configuration [23:16] */\r
- CC1120_SYNC1, 0x51, /* Sync Word Configuration [15:8] */\r
- CC1120_SYNC0, 0xde, /* Sync Word Configuration [7:0] */\r
- CC1120_SYNC_CFG1, 0x08, /* Sync Word Detection Configuration */\r
- CC1120_SYNC_CFG0, 0x17, /* Sync Word Length Configuration */\r
-#if 0\r
- CC1120_DEVIATION_M, 0x50, /* Frequency Deviation Configuration */\r
- CC1120_MODCFG_DEV_E, 0x0d, /* Modulation Format and Frequency Deviation Configuration */\r
+#ifndef AO_CC1120_AGC_GAIN_ADJUST\r
+#define AO_CC1120_AGC_GAIN_ADJUST -80\r
#endif\r
- CC1120_DCFILT_CFG, 0x1c, /* Digital DC Removal Configuration */\r
- CC1120_PREAMBLE_CFG1, 0x18, /* Preamble Length Configuration */\r
- CC1120_PREAMBLE_CFG0, 0x2a, /* */\r
- CC1120_FREQ_IF_CFG, 0x40, /* RX Mixer Frequency Configuration */\r
- CC1120_IQIC, 0x46, /* Digital Image Channel Compensation Configuration */\r
+\r
+ CC1120_SYNC3, 0xD3, /* Sync Word Configuration [31:24] */\r
+ CC1120_SYNC2, 0x91, /* Sync Word Configuration [23:16] */\r
+ CC1120_SYNC1, 0xD3, /* Sync Word Configuration [15:8] */\r
+ CC1120_SYNC0, 0x91, /* Sync Word Configuration [7:0] */\r
+\r
+ CC1120_SYNC_CFG1, /* Sync Word Detection Configuration */\r
+ (CC1120_SYNC_CFG1_DEM_CFG_PQT_GATING_DISABLED << CC1120_SYNC_CFG1_DEM_CFG) |\r
+ (0xc << CC1120_SYNC_CFG1_SYNC_THR),\r
+ CC1120_SYNC_CFG0,\r
+ (CC1120_SYNC_CFG0_SYNC_MODE_16_BITS << CC1120_SYNC_CFG0_SYNC_MODE) |\r
+ (CC1120_SYNC_CFG0_SYNC_NUM_ERROR_DISABLED << CC1120_SYNC_CFG0_SYNC_NUM_ERROR),\r
+ CC1120_DCFILT_CFG, 0x15, /* Digital DC Removal Configuration */\r
+ CC1120_PREAMBLE_CFG1, /* Preamble Length Configuration */\r
+ (CC1120_PREAMBLE_CFG1_NUM_PREAMBLE_4_BYTES << CC1120_PREAMBLE_CFG1_NUM_PREAMBLE) |\r
+ (CC1120_PREAMBLE_CFG1_PREAMBLE_WORD_AA << CC1120_PREAMBLE_CFG1_PREAMBLE_WORD),\r
+ CC1120_PREAMBLE_CFG0,\r
+ (0 << CC1120_PREAMBLE_CFG0_PQT_EN) |\r
+ (0xe << CC1120_PREAMBLE_CFG0_PQT),\r
+\r
+ /* Adjust PQT lower to accept fewer packets */\r
+\r
+ CC1120_FREQ_IF_CFG, 0x3a, /* RX Mixer Frequency Configuration */\r
+ CC1120_IQIC, 0x00, /* Digital Image Channel Compensation Configuration */\r
CC1120_CHAN_BW, 0x02, /* Channel Filter Configuration */\r
- CC1120_MDMCFG1, 0x46, /* General Modem Parameter Configuration */\r
- CC1120_MDMCFG0, 0x05, /* General Modem Parameter Configuration */\r
-#if 0\r
- CC1120_DRATE2, 0x93, /* Data Rate Configuration Exponent and Mantissa [19:16] */\r
- CC1120_DRATE1, 0xa4, /* Data Rate Configuration Mantissa [15:8] */\r
- CC1120_DRATE0, 0x00, /* Data Rate Configuration Mantissa [7:0] */\r
-#endif\r
- CC1120_AGC_REF, 0x20, /* AGC Reference Level Configuration */\r
- CC1120_AGC_CS_THR, 0x19, /* Carrier Sense Threshold Configuration */\r
- CC1120_AGC_GAIN_ADJUST, 0x00, /* RSSI Offset Configuration */\r
- CC1120_AGC_CFG3, 0x91, /* AGC Configuration */\r
- CC1120_AGC_CFG2, 0x20, /* AGC Configuration */\r
- CC1120_AGC_CFG1, 0xa9, /* AGC Configuration */\r
- CC1120_AGC_CFG0, 0xcf, /* AGC Configuration */\r
- CC1120_FIFO_CFG, 0x00, /* FIFO Configuration */\r
+\r
+ CC1120_MDMCFG1, /* General Modem Parameter Configuration */\r
+ (0 << CC1120_MDMCFG1_CARRIER_SENSE_GATE) |\r
+ (1 << CC1120_MDMCFG1_FIFO_EN) |\r
+ (0 << CC1120_MDMCFG1_MANCHESTER_EN) |\r
+ (0 << CC1120_MDMCFG1_INVERT_DATA_EN) |\r
+ (0 << CC1120_MDMCFG1_COLLISION_DETECT_EN) |\r
+ (CC1120_MDMCFG1_DVGA_GAIN_0 << CC1120_MDMCFG1_DVGA_GAIN) |\r
+ (0 << CC1120_MDMCFG1_SINGLE_ADC_EN),\r
+ CC1120_MDMCFG0, 0x0d, /* General Modem Parameter Configuration */\r
+\r
+ /* AGC reference = 10 * log10(receive BW) - 4 = 10 * log10(100e3) - 4 = 46 */\r
+ CC1120_AGC_REF, 0x36, /* AGC Reference Level Configuration */\r
+\r
+ /* Carrier sense threshold - 25dB above the noise */\r
+ CC1120_AGC_CS_THR, 25, /* Carrier Sense Threshold Configuration */\r
+ CC1120_AGC_GAIN_ADJUST, /* RSSI Offset Configuration */\r
+ AO_CC1120_AGC_GAIN_ADJUST,\r
+\r
+ CC1120_AGC_CFG3, /* AGC Configuration */\r
+ (1 << CC1120_AGC_CFG3_RSSI_STEP_THR) |\r
+ (17 << CC1120_AGC_CFG3_AGC_MIN_GAIN),\r
+\r
+ CC1120_AGC_CFG2, /* AGC Configuration */\r
+ (0 << CC1120_AGC_CFG2_START_PREVIOUS_GAIN_EN) |\r
+ (CC1120_AGC_CFG2_FE_PERFORMANCE_MODE_NORMAL << CC1120_AGC_CFG2_FE_PERFORMANCE_MODE) |\r
+ (0 << CC1120_AGC_CFG2_AGC_MAX_GAIN),\r
+\r
+ CC1120_AGC_CFG1, /* AGC Configuration */\r
+ (CC1120_AGC_CFG1_AGC_SYNC_BEHAVIOR_UPDATE_AGC_UPDATE_RSSI_SLOW << CC1120_AGC_CFG1_AGC_SYNC_BEHAVIOR) |\r
+ (CC1120_AGC_CFG1_AGC_WIN_SIZE_32 << CC1120_AGC_CFG1_AGC_WIN_SIZE) |\r
+ (CC1120_AGC_CFG1_AGC_SETTLE_WAIT_32 << CC1120_AGC_CFG1_AGC_SETTLE_WAIT),\r
+\r
+ CC1120_AGC_CFG0, /* AGC Configuration */\r
+ (CC1120_AGC_CFG0_AGC_HYST_LEVEL_10 << CC1120_AGC_CFG0_AGC_HYST_LEVEL) |\r
+ (CC1120_AGC_CFG0_AGC_SLEWRATE_LIMIT_60 << CC1120_AGC_CFG0_AGC_SLEWRATE_LIMIT) |\r
+ (CC1120_AGC_CFG0_RSSI_VALID_CNT_9 << CC1120_AGC_CFG0_RSSI_VALID_CNT) |\r
+ (CC1120_AGC_CFG0_AGC_ASK_DECAY_1_128 << CC1120_AGC_CFG0_AGC_ASK_DECAY),\r
+\r
+ CC1120_FIFO_CFG, /* FIFO Configuration */\r
+ (0 << CC1120_FIFO_CFG_CRC_AUTOFLUSH) |\r
+ (0x40 << CC1120_FIFO_CFG_FIFO_THR),\r
+\r
CC1120_DEV_ADDR, 0x00, /* Device Address Configuration */\r
+\r
CC1120_SETTLING_CFG, /* Frequency Synthesizer Calibration and Settling Configuration */\r
(CC1120_SETTLING_CFG_FS_AUTOCAL_IDLE_TO_ON << CC1120_SETTLING_CFG_FS_AUTOCAL) |\r
- (CC1120_SETTLING_CFG_LOCK_TIME_50_20 << CC1120_SETTLING_CFG_LOCK_TIME) |\r
+ (CC1120_SETTLING_CFG_LOCK_TIME_75_30 << CC1120_SETTLING_CFG_LOCK_TIME) |\r
(CC1120_SETTLING_CFG_FSREG_TIME_60 << CC1120_SETTLING_CFG_FSREG_TIME),\r
+\r
CC1120_FS_CFG, /* Frequency Synthesizer Configuration */\r
(1 << CC1120_FS_CFG_LOCK_EN) |\r
(CC1120_FS_CFG_FSD_BANDSELECT_410_480 << CC1120_FS_CFG_FSD_BANDSELECT),\r
+\r
CC1120_WOR_CFG1, 0x08, /* eWOR Configuration, Reg 1 */\r
CC1120_WOR_CFG0, 0x21, /* eWOR Configuration, Reg 0 */\r
CC1120_WOR_EVENT0_MSB, 0x00, /* Event 0 Configuration */\r
#if 0\r
CC1120_PKT_CFG2, 0x04, /* Packet Configuration, Reg 2 */\r
CC1120_PKT_CFG1, 0x45, /* Packet Configuration, Reg 1 */\r
-#endif\r
CC1120_PKT_CFG0, 0x00, /* Packet Configuration, Reg 0 */\r
- CC1120_RFEND_CFG1, 0x0f, /* RFEND Configuration, Reg 1 */\r
+#endif\r
+ CC1120_RFEND_CFG1, 0x0e, /* RFEND Configuration, Reg 1 */\r
CC1120_RFEND_CFG0, 0x00, /* RFEND Configuration, Reg 0 */\r
// CC1120_PA_CFG2, 0x3f, /* Power Amplifier Configuration, Reg 2 */\r
- CC1120_PA_CFG2, 0x23, /* Power Amplifier Configuration, Reg 2 */\r
+ CC1120_PA_CFG2, 0x3f, /* Power Amplifier Configuration, Reg 2 */\r
CC1120_PA_CFG1, 0x56, /* Power Amplifier Configuration, Reg 1 */\r
CC1120_PA_CFG0, 0x7b, /* Power Amplifier Configuration, Reg 0 */\r
CC1120_PKT_LEN, 0xff, /* Packet Length Configuration */\r
CC1120_IF_MIX_CFG, 0x00, /* IF Mix Configuration */\r
- CC1120_FREQOFF_CFG, 0x22, /* Frequency Offset Correction Configuration */\r
- CC1120_TOC_CFG, 0x0b, /* Timing Offset Correction Configuration */\r
+ CC1120_FREQOFF_CFG, 0x20, /* Frequency Offset Correction Configuration */\r
+ CC1120_TOC_CFG, 0x0a, /* Timing Offset Correction Configuration */\r
CC1120_MARC_SPARE, 0x00, /* MARC Spare */\r
CC1120_ECG_CFG, 0x00, /* External Clock Frequency Configuration */\r
CC1120_SOFT_TX_DATA_CFG, 0x00, /* Soft TX Data Configuration */\r
- CC1120_EXT_CTRL, 0x01, /* External Control Configuration */\r
+ CC1120_EXT_CTRL, 0x00, /* External Control Configuration */\r
CC1120_RCCAL_FINE, 0x00, /* RC Oscillator Calibration (fine) */\r
CC1120_RCCAL_COARSE, 0x00, /* RC Oscillator Calibration (coarse) */\r
CC1120_RCCAL_OFFSET, 0x00, /* RC Oscillator Calibration Clock Offset */\r
CC1120_XOSC4, 0xa0, /* Crystal Oscillator Configuration, Reg 4 */\r
CC1120_XOSC3, 0x03, /* Crystal Oscillator Configuration, Reg 3 */\r
CC1120_XOSC2, 0x04, /* Crystal Oscillator Configuration, Reg 2 */\r
- CC1120_XOSC1, 0x01, /* Crystal Oscillator Configuration, Reg 1 */\r
+ CC1120_XOSC1, 0x03, /* Crystal Oscillator Configuration, Reg 1 */\r
CC1120_XOSC0, 0x00, /* Crystal Oscillator Configuration, Reg 0 */\r
CC1120_ANALOG_SPARE, 0x00, /* */\r
CC1120_PA_CFG3, 0x00, /* Power Amplifier Configuration, Reg 3 */\r
CC1120_AGC_GAIN2, 0xd1, /* AGC Gain, Reg 2 */\r
CC1120_AGC_GAIN1, 0x00, /* AGC Gain, Reg 1 */\r
CC1120_AGC_GAIN0, 0x3f, /* AGC Gain, Reg 0 */\r
- CC1120_SOFT_RX_DATA_OUT, 0x00, /* Soft Decision Symbol Data */\r
- CC1120_SOFT_TX_DATA_IN, 0x00, /* Soft TX Data Input Register */\r
- CC1120_ASK_SOFT_RX_DATA, 0x30, /* AGC ASK Soft Decision Output */\r
CC1120_RNDGEN, 0x7f, /* Random Number Value */\r
- CC1120_MAGN2, 0x00, /* Signal Magnitude after CORDIC [16] */\r
- CC1120_MAGN1, 0x00, /* Signal Magnitude after CORDIC [15:8] */\r
- CC1120_MAGN0, 0x00, /* Signal Magnitude after CORDIC [7:0] */\r
- CC1120_ANG1, 0x00, /* Signal Angular after CORDIC [9:8] */\r
- CC1120_ANG0, 0x00, /* Signal Angular after CORDIC [7:0] */\r
- CC1120_CHFILT_I2, 0x08, /* Channel Filter Data Real Part [18:16] */\r
- CC1120_CHFILT_I1, 0x00, /* Channel Filter Data Real Part [15:8] */\r
- CC1120_CHFILT_I0, 0x00, /* Channel Filter Data Real Part [7:0] */\r
- CC1120_CHFILT_Q2, 0x00, /* Channel Filter Data Imaginary Part [18:16] */\r
- CC1120_CHFILT_Q1, 0x00, /* Channel Filter Data Imaginary Part [15:8] */\r
- CC1120_CHFILT_Q0, 0x00, /* Channel Filter Data Imaginary Part [7:0] */\r
- CC1120_GPIO_STATUS, 0x00, /* GPIO Status */\r
CC1120_FSCAL_CTRL, 0x01, /* */\r
CC1120_PHASE_ADJUST, 0x00, /* */\r
- CC1120_PARTNUMBER, 0x00, /* Part Number */\r
- CC1120_PARTVERSION, 0x00, /* Part Revision */\r
CC1120_SERIAL_STATUS, 0x00, /* Serial Status */\r
- CC1120_RX_STATUS, 0x01, /* RX Status */\r
- CC1120_TX_STATUS, 0x00, /* TX Status */\r
- CC1120_MARC_STATUS1, 0x00, /* MARC Status, Reg 1 */\r
- CC1120_MARC_STATUS0, 0x00, /* MARC Status, Reg 0 */\r
CC1120_PA_IFAMP_TEST, 0x00, /* */\r
CC1120_FSRF_TEST, 0x00, /* */\r
CC1120_PRE_TEST, 0x00, /* */\r