コード例 #1
0
CsrUint8* ie_trace_PMKID_type(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    CsrLogBuffer(traceLevel, (CsrString*)"", pBuf, 128, (CsrString*)"    Data");
    pBuf += 16;
    return pBuf;
}
コード例 #2
0
CsrUint8* ie_trace_ac_p_record_format(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    pBuf = ie_trace_ACI_AIFSN(traceLevel, pBuf);
    pBuf = ie_trace_ECWmin_ECWmax(traceLevel, pBuf);
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"TxopLimit:                 0x%.4x", value );
    return pBuf;
}
コード例 #3
0
CsrUint8* ie_trace_frame_classifier(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"classifierType:            0x%.2x", value );
    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"classifierMask:            0x%.2x", value );
    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"classifierParameters:      0x%.2x", value );
    return pBuf;
}
コード例 #4
0
CsrUint8* ie_trace_cipher_suite(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    CsrLog(traceLevel, (CsrString*)"", (CsrString*)"    Oui 0x%.2x 0x%.2x 0x%.2x", pBuf[0], pBuf[1], pBuf[2]);
    pBuf += 3;
    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"SuiteType:                 0x%.2x", value );
    return pBuf;
}
コード例 #5
0
CsrUint8* ie_trace_channel_spec(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"firstChannel:              0x%.2x", value );
    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"numberOfChannel:           0x%.2x", value );
    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"maxTransmitPower:          0x%.2x", value );
    return pBuf;
}
コード例 #6
0
CsrUint8* ie_trace_ccx_ul_queue_delay_histogram(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"delay10ms:                 0x%.4x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"delay10ms20ms:             0x%.4x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"delay20ms40ms:             0x%.4x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"delay40ms:                 0x%.4x", value );
    return pBuf;
}
コード例 #7
0
CsrUint8* ie_trace_ccx_ts_measurement_report(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"ulQueueDelayAverage:       0x%.4x", value );
    pBuf = ie_trace_ccx_ul_queue_delay_histogram(traceLevel, pBuf);
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"ulQueueTransmitDelay:      0x%.8x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"ulPacketLoss:              0x%.4x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"ulPacketCount:             0x%.4x", value );
    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"roamingCount:              0x%.2x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"roamingDelay:              0x%.4x", value );
    return pBuf;
}
コード例 #8
0
CsrUint8* ie_trace_PMKID_pair(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"pmkidCount:                0x%.4x", value );
    
    /* defined length, pmkidCount */
    for(; value > 0 ;value--)
    {
        pBuf = ie_trace_PMKID_type(traceLevel, pBuf);
    }
    return pBuf;
}
コード例 #9
0
CsrUint8* ie_trace_AKM_cipher_pair(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"akmCipherCount:            0x%.4x", value );
    
    /* defined length, akmCipherCount */
    for(; value > 0 ;value--)
    {
        pBuf = ie_trace_cipher_suite(traceLevel, pBuf);
    }
    return pBuf;
}
コード例 #10
0
CsrUint8* ie_trace_ccx_hidden_ssid(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"ssidExtCap:                0x%.2x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"ssidCap:                   0x%.8x", value );
    ie_CsrUint8(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"ssidLength:                0x%.2x", value );
    
    /* defined length, ssidLength */
    CsrLogBuffer(traceLevel, (CsrString*)"", pBuf, (CsrUint16)value, (CsrString*)"    ssid");
    pBuf+=value;
    return pBuf;
}
コード例 #11
0
/*
 * ---------------------------------------------------------------------------
 *  unifi_fw_read_start
 *
 *      Returns a structure to be passed in unifi_fw_read().
 *      This structure is an OS specific description of the f/w file.
 *      In the linux implementation it is a buffer with the f/w and its' length.
 *      The HIP driver calls this functions to request for the loader or
 *      the firmware file.
 *      The structure pointer can be freed when unifi_fw_read_stop() is called.
 *
 *  Arguments:
 *      ospriv          Pointer to driver context.
 *      is_fw           Flag to indicate whether it is the f/w or the loader
 *      info            Versions information. Can be used to determine
 *                      the appropriate f/w file to load.
 *
 *  Returns:
 *      O on success, non-zero otherwise.
 *
 * ---------------------------------------------------------------------------
 */
void*
unifi_fw_read_start(void *ospriv, CsrInt8 is_fw, const card_info_t *info)
{
    unifi_priv_t *priv = (unifi_priv_t*)ospriv;
    CSR_UNUSED(info);

    func_enter();
#ifdef ANDROID_BUILD
    /* Copy content of info to the priv struct to make it available in the reguest_firmware_files() function */
    priv->card_info = *info;
    printk("Unifi: Firmware build %d\n", (int) info->fw_build);
#endif
    if (is_fw == UNIFI_FW_LOADER) {
        /* F/w may have been released after a previous successful download */
        if (priv->fw_loader.dl_data == NULL) {
            unifi_trace(priv, UDBG2, "Attempt reload of loader f/w\n");    
            uf_request_firmware_files(priv, UNIFI_FW_LOADER);
        }        
        /* Set up callback struct for readfunc() */        
        if (priv->fw_loader.dl_data != NULL) {
            func_exit();
            return &priv->fw_loader;
        }       

    } else if (is_fw == UNIFI_FW_STA) {
        /* F/w may have been released after a previous successful download. */
        if (priv->fw_sta.dl_data == NULL) {
            unifi_trace(priv, UDBG2, "Attempt reload of sta f/w\n");    
            uf_request_firmware_files(priv, UNIFI_FW_STA);
        }                
        /* Set up callback struct for readfunc() */
        if (priv->fw_sta.dl_data != NULL) {
            func_exit();
            return &priv->fw_sta;
        }

    } else {
        unifi_error(priv, "downloading firmware... unknown request: %d\n", is_fw);
    }

    func_exit();
    return NULL;
} /* unifi_fw_read_start() */
コード例 #12
0
CsrUint8* ie_trace_wmm_tspec_body(CsrUint16 traceLevel, CsrUint8* pBuf)
{
    CsrUint32 value = 0;
    CSR_UNUSED(value);

    pBuf = ie_trace_WMM_TS_info(traceLevel, pBuf);
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"nominalMsduSize:           0x%.4x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"maximumMsduSize:           0x%.4x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"minimumServiceInterval:    0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"maximumServiceInterval:    0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"inactivityInterval:        0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"suspensionInterval:        0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"serviceStartTime:          0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"minimumDatarate:           0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"meanDataRate:              0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"peakDataRate:              0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"maximumBurstSize:          0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"delayBound:                0x%.8x", value );
    ie_le_CsrUint32(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"minimumPhyRate:            0x%.8x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"surplusBandwidthAllowance: 0x%.4x", value );
    ie_le_CsrUint16(pBuf, value);         CsrLog(traceLevel, (CsrString*)"", (CsrString*)"mediumTime:                0x%.4x", value );
    return pBuf;
}