Radar Detection: AR5212 family chips

Overview

This has been obtained from the madwifi-dfs branch and the relevant public patents.

This struct defines the supported PHY error detection parameters for radar pulse detection logic. Reference US patent US6891496 B2 for pseudocode for the chips' operations and pseudocode for how the parameters are used.

The HAL_PHYERR_PARAM typedef configures the radio parameters. The following are the relevant fields for the AR5212.

        /* Finite Impulse Response (FIR) filter - power out threshold.
         * 
         * If a signal is received with a pulse width that is too short,
         * the AR chip cannot fine-adjust gain fast enough to get an accurate
         * reading of RSSI.  If this signal has an power value after filtering
         * that exceeds a fixed threshold (rp_fir_filter_output_power_thr) 
         * and then drops by rp_pulse_height_thr then it may be considered a 
         * radar pulse.
         *
         * Reference: 405 in Figure 4A of US patent US6891496 B2.
         * Default: Default value is -41dBm.
         * Units: Signed integer, value in dBm {-63..63} in 1 dBm units. */

        int32_t pe_firpwr;

        /* Pulse height threshold
         * This is delta between the max and min RSSI for short pulse radar 
         * bursts where AGC cannot be adjusted enough times to get an accurate
         * sizing of the pulse.  
         * 
         * If a signal is received with a pulse width that is too short,
         * the AR chip cannot fine-adjust gain fast enough to get an accurate
         * reading of RSSI.  If this signal has an power value after filtering
         * that exceeds a fixed threshold (rp_fir_filter_output_power_thr) 
         * and then drops by rp_pulse_height_thr then it may be considered a 
         * radar pulse.
         *
         * Refernece: See Figure 4A.
         * Default: value is 20 dBm.
         * Units: Unsigned 6-bits, dBm range {0..63} in dBm units. */

        int32_t pe_height;

        /* Radar RSSI/SNR threshold.
         *
         * This is the threshold that RSSI must exceed for the pulse when AGC 
         * is ok and we actually know the power of the signal (not the chip)
         * and reach an initial peak greater than this threshold.  
         * 
         * For pulses long enough for AGC to be used to detect
         * pulse width (approximately >3us), we will start counting the pulse 
         * width if it reaches this level as this may be the rise of a radar 
         * pulse.
         *
         * Reference: See 450 on Figure 4B in US patent US6891496 B2.
         * Default: value is 12, or 6 dBm.
         * Units: 6-bits, dBm range {0..63} in dBm units. */

        int32_t pe_rrssi;

        /* Pulse RSSI/SNR threshold
         * 
         * This is how much the RSSI of the pulse must drop, relative to
         * rp_radar_rssi_thr before we will stop counting the pulse width.
         *  
         * If we see a pulse reach rp_radar_rssi_thr we start thinking it might
         * be radar, but if it subsequently reached 
         * (rp_radar_rssi_thr - rp_pulse_height_thr) and it wasn't part of a 
         * WLAN signal, then we would know it was radar. 
         *
         * In other words, we are looking for a 6dBm drop in gain that happens
         * after a pulse on the down swing as shown in figure 4A and 4B.
         * 
         * Default: 22, or 11 dBm.
         * Units: Unsigned 6-bits, dBm range {0..63} in dBm units. */

        int32_t prssi;

        /* Inband threshold.
         * Units: Unsigned 5-bits, dBm range {0..31} in half dBm units. */

        int32_t inband;

dev/ath_hal(4)/RadarDetection/AR5212 (last edited 2011-06-07T09:10:57+0000 by AdrianChadd)