📄 config.c
字号:
// ulBeaconPeriod = 1000;
// }
if ( !boCFGreadUlong(hRegistryHandle, sCFGlistenInterval, &ulListenInterval) )
{
vCFGprintRegReadWarn(sCFGlistenInterval);
ulListenInterval = 0;
}
if ( !boCFGreadBoolean(hRegistryHandle, sCFGresetEnable, &psCFG->boResetEnable) )
{
vCFGprintRegReadWarn(sCFGresetEnable);
psCFG->boResetEnable = TRUE;
}
if ( !boCFGreadBoolean(hRegistryHandle, sCFGradio, &psCFG->boRadio) )
{
vCFGprintRegReadWarn(sCFGradio);
psCFG->boRadio = TRUE;
}
if ( !boCFGreadBoolean(hRegistryHandle, sCFGwmmSupported, &psCFG->boWMMSupported) )
{
vCFGprintRegReadWarn(sCFGwmmSupported);
psCFG->boWMMSupported = TRUE;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGcamBckgrndScanInterval11a, &ulCamBckGrndScanInterval80211a) )
{
vCFGprintRegReadWarn(sCFGcamBckgrndScanInterval11a);
ulCamBckGrndScanInterval80211a = 3;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGpsBckgrndScanInterval11a, &ulPsBckGrndScanInterval80211a) )
{
vCFGprintRegReadWarn(sCFGpsBckgrndScanInterval11a);
ulPsBckGrndScanInterval80211a = 30;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGcamBckgrndScanInterval11bg, &ulCamBckGrndScanInterval80211bg) )
{
vCFGprintRegReadWarn(sCFGcamBckgrndScanInterval11bg);
ulCamBckGrndScanInterval80211bg = 3;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGpsBckgrndScanInterval11bg, &ulPsBckGrndScanInterval80211bg) )
{
vCFGprintRegReadWarn(sCFGpsBckgrndScanInterval11bg);
ulPsBckGrndScanInterval80211bg = 30;
}
if ( !boCFGreadInt(hRegistryHandle, sCFGrssiThr11a, &iRssiThresh80211a) )
{
vCFGprintRegReadWarn(sCFGrssiThr11a);
iRssiThresh80211a = -93;
}
else if ((iRssiThresh80211a < -93) || (iRssiThresh80211a > -1))
{
vCFGprintRegReadWarn2(sCFGrssiThr11a);
iRssiThresh80211a = -93;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGrssiHys11a, &ulRssiHysteresis80211a) )
{
vCFGprintRegReadWarn(sCFGrssiHys11a);
ulRssiHysteresis80211a = 10;
}
else if ((ulRssiHysteresis80211a < 1) || (ulRssiHysteresis80211a > 100))
{
vCFGprintRegReadWarn(sCFGrssiHys11a);
ulRssiHysteresis80211a = 10;
}
if ( !boCFGreadInt(hRegistryHandle, sCFGrssiThr11bg, &iRssiThresh80211bg) )
{
vCFGprintRegReadWarn(sCFGrssiThr11bg);
iRssiThresh80211bg = -99;
}
else if ((iRssiThresh80211bg < -99) || (iRssiThresh80211bg > -1))
{
vCFGprintRegReadWarn2(sCFGrssiThr11bg);
iRssiThresh80211a = -99;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGrssiHys11bg, &ulRssiHysteresis80211bg) )
{
vCFGprintRegReadWarn(sCFGrssiHys11bg);
ulRssiHysteresis80211bg = 10;
}
else if ((ulRssiHysteresis80211bg < 1) || (ulRssiHysteresis80211bg > 100))
{
vCFGprintRegReadWarn(sCFGrssiHys11bg);
ulRssiHysteresis80211bg = 10;
}
// 802.11d FIXME - functionality is disabled for now...
psCFG->boMultiDomainCapabilityEnabled = FALSE;
/*
if ( !boCFGreadBoolean(hRegistryHandle, sCFGmultiDomainCapability, &psCFG->boMultiDomainCapabilityEnabled) )
{
vCFGprintRegReadWarn(sCFGmultiDomainCapability);
psCFG->boMultiDomainCapabilityEnabled = FALSE;
}
*/
// 802.11k FIXME - functionality is disabled for now...
psCFG->boRadioMeasurementCapabilityEnabled = FALSE;
/*
if ( !boCFGreadBoolean(hRegistryHandle, sCFGradioMeasurementCapability, &psCFG->boRadioMeasurementCapabilityEnabled) )
{
vCFGprintRegReadWarn(sCFGradioMeasurementCapability);
psCFG->boRadioMeasurementCapabilityEnabled = FALSE;
}
*/
// CCX FIXME - functionality is disabled for now...
psCFG->boCcxCapabilityEnabled = FALSE;
/*
if ( !boCFGreadBoolean(hRegistryHandle, sCFGccxCapability, &psCFG->boCcxCapabilityEnabled) )
{
vCFGprintRegReadWarn(sCFGccxCapability);
psCFG->boCcxCapabilityEnabled = FALSE;
}
*/
if ( !boCFGreadBoolean(hRegistryHandle, sCFGbluetoothCoexCapability, &psCFG->boBluetoothCoexCapabilityEnabled) )
{
vCFGprintRegReadWarn(sCFGbluetoothCoexCapability);
psCFG->boBluetoothCoexCapabilityEnabled = FALSE;
}
/*
if ( !boCFGreadBoolean(hRegistryHandle, sCFGaggressiveRateSelection, &psCFG->boAggressiveRateSelectionEnabled) )
{
vCFGprintRegReadWarn(sCFGaggressiveRateSelection);
psCFG->boAggressiveRateSelectionEnabled = FALSE;
}
*/
// SDIO block configuration ...
if ( !boCFGreadBoolean(hRegistryHandle, sCFGSupport4BitMode, &psCFG->boSupport4BitMode) )
{
vCFGprintRegReadWarn(sCFGSupport4BitMode);
psCFG->boSupport4BitMode = TRUE;
}
if ( !boCFGreadBoolean(hRegistryHandle, sCFGSupportBlockMode, &psCFG->boSupportBlockMode) )
{
vCFGprintRegReadWarn(sCFGSupportBlockMode);
psCFG->boSupportBlockMode = TRUE;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGBlockSize, &psCFG->ulBlockSize) )
{
vCFGprintRegReadWarn(sCFGBlockSize);
psCFG->ulBlockSize = 64;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGMaxBlockNumber, &psCFG->ulMaxBlockNumber) )
{
vCFGprintRegReadWarn(sCFGMaxBlockNumber);
psCFG->ulMaxBlockNumber = 256;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGMaxByteNumber, &psCFG->ulMaxByteNumber) )
{
vCFGprintRegReadWarn(sCFGMaxByteNumber);
psCFG->ulMaxByteNumber = 64;
}
if ( !boCFGreadUlong(hRegistryHandle, sCFGMaxClockFreq, &psCFG->ulMaxClockFreq) )
{
vCFGprintRegReadWarn(sCFGMaxClockFreq);
psCFG->ulMaxClockFreq = 25000000;
}
DBG_LEV1(("SDIO params: %d %d %lu %lu %lu %lu\n",
psCFG->boSupport4BitMode,
psCFG->boSupportBlockMode,
psCFG->ulBlockSize,
psCFG->ulMaxBlockNumber,
psCFG->ulMaxByteNumber,
psCFG->ulMaxClockFreq));
/*
* If all the network configuration parameters have been successfully
* read, create code images to allow the device to be booted.
*/
if (ulNetworkType >= CFG_NUM_NET_TYPES)
{
DBG_LEV0(("ERROR: Invalid network type, %lu.\n", ulNetworkType));
}
else
{
UINT uiIndex;
psCFG->eNetworkType = (CFG_NETWORK_TYPE)ulNetworkType;
psCFG->eProtocolType = (CFG_PROTOCOL_TYPE)ulProtocolType;
psCFG->eDomain = (CFG_DOMAIN)ulDomain;
psCFG->eRateSelect = (CFG_RATE_SET)ulRateSelect;
psCFG->sESSID.u8Length = (UCHAR)ulESSIDlength;
for (uiIndex = 0; uiIndex < MIB_ESSID_LENGTH; uiIndex++)
{
psCFG->sESSID.acESSID[uiIndex] = au8CFGessidTerminated[uiIndex];
}
psCFG->usFragmentThreshold = (USHORT)ulFragmentThreshold;
psCFG->usRTSCTSThreshold = (USHORT)ulRTSCTSThreshold;
// psCFG->usBeaconPeriod = (USHORT)ulBeaconPeriod;
// pcereck, 7/12/2005 ---
psCFG->usListenInterval = (USHORT)ulListenInterval;
psCFG->usChannel = (USHORT)ulRestrictedChannel;
psCFG->usIbssChannel = (USHORT)ulIbssChannel;
psCFG->ulCamBckGrndScanInterval80211a = ulCamBckGrndScanInterval80211a;
psCFG->ulPsBckGrndScanInterval80211a = ulPsBckGrndScanInterval80211a;
psCFG->ulCamBckGrndScanInterval80211bg = ulCamBckGrndScanInterval80211bg;
psCFG->ulPsBckGrndScanInterval80211bg = ulPsBckGrndScanInterval80211bg;
psCFG->lRssiThreshold80211bg = iRssiThresh80211bg;
psCFG->ulRssiHysteresis80211bg = ulRssiHysteresis80211bg;
psCFG->lRssiThreshold80211a = iRssiThresh80211a;
psCFG->ulRssiHysteresis80211a = ulRssiHysteresis80211a;
DBG_LEV1(("Host driver version %i.%i.%i.%i\n",
((VENDOR_MAJOR_VERSION & 0xFF00) >> 8),
(VENDOR_MAJOR_VERSION & 0x00FF),
((VENDOR_MINOR_VERSION & 0xFF00) >> 8),
(VENDOR_MINOR_VERSION & 0x00FF) ));
DBG_LEV1(("\tNetwork Type: %s\n\tProtocol Type: %s\n"
"\tDomain: 0x%x\n\tBasic Rate Set: 0x%x\n"
"\tSSID: %s\n\tShort Preamble: %s\n"
"\tManual Start: %s\n"
"\tRestricted Channel: %d\n"
"\tIBSS 54g: %s\n"
"\tIBSS Channel: %d\n"
"\tBSSID: 0x%02x%02x%02x%02x%02x%02x\n"
"\tMACID: 0x%02x%02x%02x%02x%02x%02x\n",
apacNetworkType[psCFG->eNetworkType],
(psCFG->eProtocolType == CFG_80211A) ? "802.11a" :
((psCFG->eProtocolType == CFG_80211B) ? "802.11b" : "802.11g"),
psCFG->eDomain, psCFG->eRateSelect,
psCFG->sESSID.acESSID, psCFG->boShortPreamble? "Yes": "No",
psCFG->boManualStart ? "Yes" : "No",
psCFG->usChannel,
psCFG->boIbss54g? "Enabled": "Disabled",
psCFG->usIbssChannel,
// pcereck 07/13/2005 ---
psCFG->sBSSID.au8Addr[0], psCFG->sBSSID.au8Addr[1],
psCFG->sBSSID.au8Addr[2], psCFG->sBSSID.au8Addr[3],
psCFG->sBSSID.au8Addr[4], psCFG->sBSSID.au8Addr[5],
psCFG->sMACID.au8Addr[0], psCFG->sMACID.au8Addr[1],
psCFG->sMACID.au8Addr[2], psCFG->sMACID.au8Addr[3],
psCFG->sMACID.au8Addr[4], psCFG->sMACID.au8Addr[5]));
DBG_LEV1(("\tPower Saving: %s\n\tFrag Thresh: %lu\n\tRTSCTS Thresh: %lu\n"
"\tListen Interval: %d\n"
"\tReset Enabled: %s\n"
"\tWMM Enabled: %s\n"
"\tMulti Domain Capability: %s\n"
"\tRadio Measurement Capability: %s\n"
"\tCCX Capability: %s\n"
"\tBluetooth Coexistance Capability: %s\n",
psCFG->boPowerSaving? "Enabled": "Disabled",
ulFragmentThreshold, ulRTSCTSThreshold,
psCFG->usListenInterval,
psCFG->boResetEnable? "Yes": "No",
psCFG->boWMMSupported? "Yes": "No",
psCFG->boMultiDomainCapabilityEnabled? "Enabled": "Disabled",
psCFG->boRadioMeasurementCapabilityEnabled? "Enabled": "Disabled",
psCFG->boCcxCapabilityEnabled? "Enabled": "Disabled",
psCFG->boBluetoothCoexCapabilityEnabled? "Enabled": "Disabled"));
DBG_LEV1(("\tMax Debug File: %i bytes\n",
ulWINCEmaxDbgFileSize));
DBG_LEV1(("\tCAM Bckgrnd Scan Interval: %lu\n",
psCFG->ulCamBckGrndScanInterval80211a));
DBG_LEV1(("\tPS Bckgrnd Scan Interval: %lu\n",
psCFG->ulPsBckGrndScanInterval80211a));
DBG_LEV1(("\t802.11bg Roaming RSSI Threshold (dbm): %ld\n"
"\t802.11bg Roaming RSSI Hysteresis (dbm): %lu\n\n"
"\t802.11a Roaming RSSI Threshold (dbm): %ld\n"
"\t802.11a Roaming RSSI Hysteresis (dbm): %lu\n",
psCFG->lRssiThreshold80211bg,
psCFG->ulRssiHysteresis80211bg,
psCFG->lRssiThreshold80211a,
psCFG->ulRssiHysteresis80211a));
/*
* Create code images for the bootloader, upper CPU and lower
* CPU. These will be requested by the Network Block when the
* boot process is started.
*/
if (iCFGcreateCodeImage(hRegistryHandle,
asCFGucpuKeyword[ulNetworkType],
&psCFG->asCode[CFG_UPPER_CPU])
!= NDIS_STATUS_SUCCESS)
{
bStatus = FALSE;
}
DBG_LEV1(("\tUpper CPU Image: %ld bytes\n",
psCFG->asCode[CFG_UPPER_CPU].ulLength));
if (iCFGcreateCodeImage(hRegistryHandle,
asCFGuwacpuKeyword[ulNetworkType],
&psCFG->asCode[CFG_UWA_CPU])
!= NDIS_STATUS_SUCCESS)
{
bStatus = FALSE;
}
DBG_LEV1(("\tUWA CPU Image: %ld bytes\n",
psCFG->asCode[CFG_UWA_CPU].ulLength));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -