这篇教程C++ AsicSendCommandToMcu函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中AsicSendCommandToMcu函数的典型用法代码示例。如果您正苦于以下问题:C++ AsicSendCommandToMcu函数的具体用法?C++ AsicSendCommandToMcu怎么用?C++ AsicSendCommandToMcu使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了AsicSendCommandToMcu函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: AsicSetRxAnt/* Antenna divesity use GPIO3 and EESK pin for control Antenna and EEPROM access are both using EESK pin, Therefor we should avoid accessing EESK at the same time Then restore antenna after EEPROM access The original name of this function is AsicSetRxAnt(), now change to */VOID RT30xxSetRxAnt( IN PRTMP_ADAPTER pAd, IN UCHAR Ant){ UINT32 Value; if (/*(!pAd->NicConfig2.field.AntDiversity) ||*/ (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_RESET_IN_PROGRESS)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_HALT_IN_PROGRESS)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_RADIO_OFF)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_NIC_NOT_EXIST))) { return; } /* the antenna selection is through firmware and MAC register(GPIO3) */ if (IS_RT2070(pAd) || (IS_RT3070(pAd) && pAd->RfIcType == RFIC_3020) || (IS_RT3090(pAd) && pAd->RfIcType == RFIC_3020)) { if (Ant == 0) { /* Main antenna E2PROM_CSR only in PCI bus Reg., USB Bus need MCU commad to control the EESK pin. */#ifdef RTMP_MAC_USB AsicSendCommandToMcu(pAd, 0x73, 0xFF, 0x1, 0x0);#endif /* RTMP_MAC_USB */ RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT(RT_DEBUG_TRACE, ("AsicSetRxAnt, switch to main antenna/n")); } else { /* Aux antenna E2PROM_CSR only in PCI bus Reg., USB Bus need MCU commad to control the EESK pin. */#ifdef RTMP_MAC_USB AsicSendCommandToMcu(pAd, 0x73, 0xFF, 0x0, 0x0);#endif /* RTMP_MAC_USB */ RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); Value |= 0x08; RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT(RT_DEBUG_TRACE, ("AsicSetRxAnt, switch to aux antenna/n")); } }}
开发者ID:Audioniek,项目名称:Fortis-4G,代码行数:58,
示例2: RTUSBWriteBBPRegisterNTSTATUS RTUSBWriteBBPRegister( IN PRTMP_ADAPTER pAd, IN UCHAR Id, IN UCHAR Value){ BBP_CSR_CFG_STRUC BbpCsr; int BusyCnt; for (BusyCnt=0; BusyCnt<MAX_BUSY_COUNT; BusyCnt++) { RTMP_IO_READ32(pAd, H2M_BBP_AGENT, &BbpCsr.word); if (BbpCsr.field.Busy == BUSY) continue; BbpCsr.word = 0; BbpCsr.field.fRead = 0; BbpCsr.field.BBP_RW_MODE = 1; BbpCsr.field.Busy = 1; BbpCsr.field.Value = Value; BbpCsr.field.RegNum = Id; RTMP_IO_WRITE32(pAd, H2M_BBP_AGENT, BbpCsr.word); AsicSendCommandToMcu(pAd, 0x80, 0xff, 0x0, 0x0); pAd->BbpWriteLatch[Id] = Value; break; } if (BusyCnt == MAX_BUSY_COUNT) { DBGPRINT_ERR(("BBP write R%d=0x%x fail/n", Id, BbpCsr.word)); return STATUS_UNSUCCESSFUL; } return STATUS_SUCCESS;}
开发者ID:AppEngine,项目名称:linux-2.6,代码行数:31,
示例3: RT28xxUsbMlmeRadioOnVOID RT28xxUsbMlmeRadioOn( IN PRTMP_ADAPTER pAd){ DBGPRINT(RT_DEBUG_TRACE,("RT28xxUsbMlmeRadioOn()/n")); if (!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_RADIO_OFF)) return;#ifdef CONFIG_STA_SUPPORT IF_DEV_CONFIG_OPMODE_ON_STA(pAd) { AsicSendCommandToMcu(pAd, 0x31, 0xff, 0x00, 0x00); RTMPusecDelay(10000); }#endif // CONFIG_STA_SUPPORT // NICResetFromError(pAd); // Enable Tx/Rx RTMPEnableRxTx(pAd); // Clear Radio off flag RTMP_CLEAR_FLAG(pAd, fRTMP_ADAPTER_RADIO_OFF);#ifdef CONFIG_STA_SUPPORT IF_DEV_CONFIG_OPMODE_ON_STA(pAd) RTUSBBulkReceive(pAd);#endif // CONFIG_STA_SUPPORT // // Set LED RTMPSetLED(pAd, LED_RADIO_ON);}
开发者ID:458941968,项目名称:mini2440-kernel-2.6.29,代码行数:31,
示例4: RTUSBFirmwareWrite/* ======================================================================== Routine Description: Write Firmware to NIC. Arguments: Return Value: IRQL = Note: ========================================================================*/NTSTATUS RTUSBFirmwareWrite( IN PRTMP_ADAPTER pAd, IN PUCHAR pFwImage, IN ULONG FwLen){ UINT32 MacReg; NTSTATUS Status;// ULONG i; USHORT writeLen; Status = RTUSBReadMACRegister(pAd, MAC_CSR0, &MacReg); writeLen = FwLen; RTUSBMultiWrite(pAd, FIRMWARE_IMAGE_BASE, pFwImage, writeLen); Status = RTUSBWriteMACRegister(pAd, 0x7014, 0xffffffff); Status = RTUSBWriteMACRegister(pAd, 0x701c, 0xffffffff); Status = RTUSBFirmwareRun(pAd);#ifdef RT30xx RTMPusecDelay(10000); RTUSBWriteMACRegister(pAd,H2M_MAILBOX_CSR,0); AsicSendCommandToMcu(pAd, 0x72, 0x00, 0x00, 0x00);//reset rf by MCU supported by new firmware#endif return Status;}
开发者ID:AppEngine,项目名称:linux-2.6,代码行数:43,
示例5: RT28xxUsbStaAsicForceWakeupVOID RT28xxUsbStaAsicForceWakeup( IN PRTMP_ADAPTER pAd, IN BOOLEAN bFromTx){ BOOLEAN Canceled; if (pAd->Mlme.AutoWakeupTimerRunning) { if ( !OPSTATUS_TEST_FLAG(pAd, fOP_STATUS_DOZE) ) { return; } RTMPCancelTimer(&pAd->Mlme.AutoWakeupTimer, &Canceled); pAd->Mlme.AutoWakeupTimerRunning = FALSE; }#ifdef MT7601 if ( IS_MT7601(pAd) ) { ASIC_RADIO_ON(pAd, DOT11_RADIO_ON); } else#endif /* MT7601 */ { AsicSendCommandToMcu(pAd, 0x31, 0xff, 0x00, 0x02, FALSE); } OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_DOZE);}
开发者ID:adriano65,项目名称:n300-pda,代码行数:29,
示例6: RTMPSetSignalLED/* ======================================================================== Routine Description: Set LED Signal Stregth Arguments: pAd Pointer to our adapter Dbm Signal Stregth Return Value: None IRQL = PASSIVE_LEVEL Note: Can be run on any IRQL level. According to Microsoft Zero Config Wireless Signal Stregth definition as belows. <= -90 No Signal <= -81 Very Low <= -71 Low <= -67 Good <= -57 Very Good > -57 Excellent ========================================================================*/VOID RTMPSetSignalLED(RTMP_ADAPTER *pAd, NDIS_802_11_RSSI Dbm){ UCHAR nLed = 0; if (pAd->LedCntl.MCULedCntl.field.LedMode == LED_MODE_SIGNAL_STREGTH) { if (Dbm <= -90) nLed = 0; else if (Dbm <= -81) nLed = 1; else if (Dbm <= -71) nLed = 3; else if (Dbm <= -67) nLed = 7; else if (Dbm <= -57) nLed = 15; else nLed = 31; /* */ /* Update Signal Stregth to firmware if changed. */ /* */ if (pAd->LedCntl.LedIndicatorStrength != nLed) { AsicSendCommandToMcu(pAd, MCU_SET_LED_GPIO_SIGNAL_CFG, 0xff, nLed, pAd->LedCntl.MCULedCntl.field.Polarity, FALSE); pAd->LedCntl.LedIndicatorStrength = nLed; } }}
开发者ID:23171580,项目名称:ralink,代码行数:59,
示例7: RT28xxUsbStaAsicSleepThenAutoWakeupVOID RT28xxUsbStaAsicSleepThenAutoWakeup( IN PRTMP_ADAPTER pAd, IN USHORT TbttNumToNextWakeUp) { /* Not going to sleep if in the Count Down Time*/ if (pAd->CountDowntoPsm > 0) return; /* we have decided to SLEEP, so at least do it for a BEACON period.*/ if (TbttNumToNextWakeUp == 0) TbttNumToNextWakeUp = 1; RTMPSetTimer(&pAd->Mlme.AutoWakeupTimer, AUTO_WAKEUP_TIMEOUT); pAd->Mlme.AutoWakeupTimerRunning = TRUE; AsicSendCommandToMcu(pAd, 0x30, 0xff, 0xff, 0x02, FALSE); /* send POWER-SAVE command to MCU. Timeout 40us.*/ /* cancel bulk-in IRPs prevent blocking CPU enter C3.*/ if((pAd->PendingRx > 0) && (!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_NIC_NOT_EXIST))) { RTUSBCancelPendingBulkInIRP(pAd); /* resend bulk-in IRPs to receive beacons after a period of (pAd->CommonCfg.BeaconPeriod - 40) ms*/ pAd->PendingRx = 0; } OPSTATUS_SET_FLAG(pAd, fOP_STATUS_DOZE);}
开发者ID:557i,项目名称:mt7610u_wifi_sta_v3002_dpo_20130916,代码行数:32,
示例8: RTMPInitLEDModevoid RTMPInitLEDMode(IN RTMP_ADAPTER *pAd){ PLED_CONTROL pLedCntl = &pAd->LedCntl; if (pLedCntl->MCULedCntl.word == 0xFF) { pLedCntl->MCULedCntl.word = 0x01; pLedCntl->LedAGCfg = 0x5555; pLedCntl->LedACTCfg= 0x2221;#ifdef RTMP_MAC_PCI pLedCntl->LedPolarity = 0xA9F8;#endif /* RTMP_MAC_PCI */ } AsicSendCommandToMcu(pAd, MCU_SET_LED_AG_CFG, 0xff, (UCHAR)pLedCntl->LedAGCfg, (UCHAR)(pLedCntl->LedAGCfg >> 8), FALSE); AsicSendCommandToMcu(pAd, MCU_SET_LED_ACT_CFG, 0xff, (UCHAR)pLedCntl->LedACTCfg, (UCHAR)(pLedCntl->LedACTCfg >> 8), FALSE); AsicSendCommandToMcu(pAd, MCU_SET_LED_POLARITY, 0xff, (UCHAR)pLedCntl->LedPolarity, (UCHAR)(pLedCntl->LedPolarity >> 8), FALSE); AsicSendCommandToMcu(pAd, MCU_SET_LED_GPIO_SIGNAL_CFG, 0xff, 0, pLedCntl->MCULedCntl.field.Polarity, FALSE); pAd->LedCntl.LedIndicatorStrength = 0xFF; RTMPSetSignalLED(pAd, -100); /* Force signal strength Led to be turned off, before link up */ RTMPStartLEDMode(pAd);}
开发者ID:23171580,项目名称:ralink,代码行数:25,
示例9: RTMPAdjustFrequencyOffset/* ======================================================================== Routine Description: Adjust frequency offset when do channel switching or frequency calabration. Arguments: pAd - Adapter pointer pRefFreqOffset in: referenced Frequency offset out: adjusted frequency offset Return Value: None ========================================================================*/BOOLEAN RTMPAdjustFrequencyOffset( IN PRTMP_ADAPTER pAd, INOUT PUCHAR pRefFreqOffset){ BOOLEAN RetVal = TRUE; UCHAR RFValue = 0; UCHAR PreRFValue = 0; UCHAR FreqOffset = 0; UCHAR HighCurrentBit = 0; RTMP_ReadRF(pAd, RF_R17, &FreqOffset, &HighCurrentBit, 0x7F); PreRFValue = HighCurrentBit | FreqOffset; FreqOffset = min((*pRefFreqOffset & 0x7F), 0x5F); RFValue = HighCurrentBit | FreqOffset; if (PreRFValue != RFValue) {#ifdef RTMP_MAC_USB RetVal = AsicSendCommandToMcu(pAd, 0x74, 0xff, FreqOffset, PreRFValue, FALSE);#else RetVal = (RT30xxWriteRFRegister(pAd, RF_R17, RFValue) == STATUS_SUCCESS ? TRUE:FALSE);#endif /* !RTMP_MAC_USB */ } if (RetVal == FALSE) DBGPRINT(RT_DEBUG_TRACE, ("%s(): Error in tuning frequency offset !!/n", __FUNCTION__)); else *pRefFreqOffset = FreqOffset; return RetVal;}
开发者ID:32743069,项目名称:amlogic_common_3050,代码行数:45,
示例10: MyRTMPTurnOffLEDRTMP_BUILD_DRV_OPS_FUNCTION_BODY#endif /* OS_ABL_FUNC_SUPPORT */#endif /* LINUX */#ifndef LED_CONTROL_SUPPORTvoid MyRTMPTurnOffLED(IN RTMP_ADAPTER *pAd){ LED_CONTROL my_LED_CONTROL; PLED_CONTROL pLedCntl = &my_LED_CONTROL; //first time after init elways run this scope //if (pLedCntl->MCULedCntl.word == 0xFF) { pLedCntl->MCULedCntl.word = 0x01; pLedCntl->LedAGCfg = 0x5555; pLedCntl->LedACTCfg= 0x2221;#ifdef RTMP_MAC_USB pLedCntl->LedPolarity = 0x5627; #endif /* RTMP_MAC_USB */ } AsicSendCommandToMcu(pAd, MCU_SET_LED_AG_CFG, 0xff, (UCHAR)pLedCntl->LedAGCfg, (UCHAR)(pLedCntl->LedAGCfg >> 8), FALSE); AsicSendCommandToMcu(pAd, MCU_SET_LED_ACT_CFG, 0xff, (UCHAR)pLedCntl->LedACTCfg, (UCHAR)(pLedCntl->LedACTCfg >> 8), FALSE); AsicSendCommandToMcu(pAd, MCU_SET_LED_POLARITY, 0xff, (UCHAR)pLedCntl->LedPolarity, (UCHAR)(pLedCntl->LedPolarity >> 8), FALSE); AsicSendCommandToMcu(pAd, MCU_SET_LED_GPIO_SIGNAL_CFG, 0xff, 0, pLedCntl->MCULedCntl.field.Polarity, FALSE);}
开发者ID:ohyeah521,项目名称:DPO_RT5572_LinuxSTA_2.6.1.3_20121022_mod,代码行数:28,
示例11: RT30xxSetRxAnt/*void AsicSetRxAnt( */void RT30xxSetRxAnt(struct rt_rtmp_adapter *pAd, u8 Ant){ u32 Value;#ifdef RTMP_MAC_PCI u32 x;#endif if ((pAd->EepromAccess) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_RESET_IN_PROGRESS)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_HALT_IN_PROGRESS)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_RADIO_OFF)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_NIC_NOT_EXIST))) { return; } /* the antenna selection is through firmware and MAC register(GPIO3) */ if (Ant == 0) { /* Main antenna */#ifdef RTMP_MAC_PCI RTMP_IO_READ32(pAd, E2PROM_CSR, &x); x |= (EESK); RTMP_IO_WRITE32(pAd, E2PROM_CSR, x);#else AsicSendCommandToMcu(pAd, 0x73, 0xFF, 0x1, 0x0);#endif /* RTMP_MAC_PCI // */ RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT_RAW(RT_DEBUG_TRACE, ("AsicSetRxAnt, switch to main antenna/n")); } else { /* Aux antenna */#ifdef RTMP_MAC_PCI RTMP_IO_READ32(pAd, E2PROM_CSR, &x); x &= ~(EESK); RTMP_IO_WRITE32(pAd, E2PROM_CSR, x);#else AsicSendCommandToMcu(pAd, 0x73, 0xFF, 0x0, 0x0);#endif /* RTMP_MAC_PCI // */ RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); Value |= 0x08; RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT_RAW(RT_DEBUG_TRACE, ("AsicSetRxAnt, switch to aux antenna/n")); }}
开发者ID:ANFS,项目名称:ANFS-kernel,代码行数:48,
示例12: AsicSetRxAnt/* Antenna divesity use GPIO3 and EESK pin for control Antenna and EEPROM access are both using EESK pin, Therefor we should avoid accessing EESK at the same time Then restore antenna after EEPROM access The original name of this function is AsicSetRxAnt(), now change to */VOID RT30xxSetRxAnt( IN PRTMP_ADAPTER pAd, IN UCHAR Ant){ UINT32 Value; /* the antenna selection is through firmware and MAC register(GPIO3) */ if (IS_RT3070(pAd) && pAd->RfIcType == RFIC_3020)// if (IS_RT2070(pAd) || (IS_RT3070(pAd) && pAd->RfIcType == RFIC_3020) ||// (IS_RT3090(pAd) && pAd->RfIcType == RFIC_3020)) { if (Ant == 0) { /* Main antenna E2PROM_CSR only in PCI bus Reg., USB Bus need MCU commad to control the EESK pin. */#ifdef RTMP_MAC_USB AsicSendCommandToMcu(pAd, 0x73, 0xFF, 0x1, 0x0);#endif /* RTMP_MAC_USB */ RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT(RT_DEBUG_TRACE, "AsicSetRxAnt, switch to main antenna/n"); } else { /* Aux antenna E2PROM_CSR only in PCI bus Reg., USB Bus need MCU commad to control the EESK pin. */#ifdef RTMP_MAC_USB AsicSendCommandToMcu(pAd, 0x73, 0xFF, 0x0, 0x0);#endif /* RTMP_MAC_USB */ RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); Value |= 0x08; RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT(RT_DEBUG_TRACE, "AsicSetRxAnt, switch to aux antenna/n"); } } else{ DBGPRINT(RT_DEBUG_ERROR, "RfIcType(%d) is unknow!!/n", pAd->RfIcType); }}
开发者ID:gexueyuan,项目名称:Cygnoides,代码行数:53,
示例13: RadarDetectionStop/* ======================================================================== Routine Description: Radar detection routine Arguments: pAd Pointer to our adapter Return Value: TRUE Found radar signal FALSE Not found radar signal ========================================================================*/VOID RadarDetectionStop( IN PRTMP_ADAPTER pAd){ DBGPRINT(RT_DEBUG_TRACE,("RadarDetectionStop./n")); AsicSendCommandToMcu(pAd, 0x60, 0xff, 0x00, 0x00); /* send start-RD with CTS protection command to MCU*/ return;}
开发者ID:Brainiarc7,项目名称:ralink_sdk,代码行数:23,
示例14: RT33xxSetRxAntVOID RT33xxSetRxAnt( IN PRTMP_ADAPTER pAd, IN UCHAR Ant){ UINT32 Value; UINT32 x; if ((!pAd->NicConfig2.field.AntDiversity) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_RESET_IN_PROGRESS)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_HALT_IN_PROGRESS)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_RADIO_OFF)) || (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_NIC_NOT_EXIST))) { return; } // the antenna selection is through firmware and MAC register(GPIO3) if (Ant == 0) { // Main antenna // E2PROM_CSR only in PCI bus Reg., USB Bus need MCU commad to control the EESK pin.#ifdef RTMP_MAC_USB AsicSendCommandToMcu(pAd, 0x73, 0xff, 0x1, 0x0);#endif // RTMP_MAC_USB // RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT_RAW(RT_DEBUG_TRACE, ("AsicSetRxAnt, switch to main antenna/n")); } else { // Aux antenna // E2PROM_CSR only in PCI bus Reg., USB Bus need MCU commad to control the EESK pin.#ifdef RTMP_MAC_USB AsicSendCommandToMcu(pAd, 0x73, 0xff, 0x0, 0x0);#endif // RTMP_MAC_USB // RTMP_IO_READ32(pAd, GPIO_CTRL_CFG, &Value); Value &= ~(0x0808); Value |= 0x08; RTMP_IO_WRITE32(pAd, GPIO_CTRL_CFG, Value); DBGPRINT_RAW(RT_DEBUG_TRACE, ("AsicSetRxAnt, switch to aux antenna/n")); }}
开发者ID:Erni88,项目名称:froyo-wm8505-utils,代码行数:44,
示例15: RT28xxUsbStaAsicForceWakeupvoid RT28xxUsbStaAsicForceWakeup(struct rt_rtmp_adapter *pAd, IN BOOLEAN bFromTx){ BOOLEAN Canceled; if (pAd->Mlme.AutoWakeupTimerRunning) RTMPCancelTimer(&pAd->Mlme.AutoWakeupTimer, &Canceled); AsicSendCommandToMcu(pAd, 0x31, 0xff, 0x00, 0x02); OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_DOZE);}
开发者ID:AbheekG,项目名称:XIA-for-Linux,代码行数:11,
示例16: RTUSBReadBBPRegister/* ======================================================================== Routine Description: Read 8-bit BBP register via firmware Arguments: Return Value: IRQL = Note: ========================================================================*/NTSTATUS RTUSBReadBBPRegister( IN PRTMP_ADAPTER pAd, IN UCHAR Id, IN PUCHAR pValue){ BBP_CSR_CFG_STRUC BbpCsr; int i, k, ret; RTMP_SEM_EVENT_WAIT(&pAd->reg_atomic, ret); if (ret != 0) { DBGPRINT(RT_DEBUG_ERROR, ("reg_atomic get failed(ret=%d)/n", ret)); return STATUS_UNSUCCESSFUL; } for (i=0; i<MAX_BUSY_COUNT; i++) { RTUSBReadMACRegister(pAd, H2M_BBP_AGENT, &BbpCsr.word); if (BbpCsr.field.Busy == BUSY) continue; BbpCsr.word = 0; BbpCsr.field.fRead = 1; BbpCsr.field.BBP_RW_MODE = 1; BbpCsr.field.Busy = 1; BbpCsr.field.RegNum = Id; RTUSBWriteMACRegister(pAd, H2M_BBP_AGENT, BbpCsr.word, FALSE); AsicSendCommandToMcu(pAd, 0x80, 0xff, 0x0, 0x0, TRUE); for (k=0; k<MAX_BUSY_COUNT; k++) { RTUSBReadMACRegister(pAd, H2M_BBP_AGENT, &BbpCsr.word); if (BbpCsr.field.Busy == IDLE) break; } if ((BbpCsr.field.Busy == IDLE) && (BbpCsr.field.RegNum == Id)) { *pValue = (UCHAR)BbpCsr.field.Value; break; } } RTMP_SEM_EVENT_UP(&pAd->reg_atomic); if (BbpCsr.field.Busy == BUSY) { DBGPRINT_ERR(("BBP read R%d=0x%x fail/n", Id, BbpCsr.word)); *pValue = pAd->BbpWriteLatch[Id]; return STATUS_UNSUCCESSFUL; } return STATUS_SUCCESS;}
开发者ID:flyleaf91,项目名称:USB-Wireless-LAN-Driver-for-STM32F4xx,代码行数:68,
示例17: RT28xxUsbStaAsicForceWakeupVOID RT28xxUsbStaAsicForceWakeup( IN PRTMP_ADAPTER pAd, IN BOOLEAN bFromTx){ BOOLEAN Canceled; if (pAd->Mlme.AutoWakeupTimerRunning) RTMPCancelTimer(&pAd->Mlme.AutoWakeupTimer, &Canceled); AsicSendCommandToMcu(pAd, 0x31, 0xff, 0x00, 0x02); OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_DOZE);}
开发者ID:32743069,项目名称:amlogic_common_3050,代码行数:13,
示例18: RadarDetectionStart/* ======================================================================== Routine Description: Radar detection routine Arguments: pAd Pointer to our adapter Return Value: ========================================================================*/VOID RadarDetectionStart( IN PRTMP_ADAPTER pAd, IN BOOLEAN CTSProtect, IN UINT8 CTSPeriod){ UINT8 DfsActiveTime = (pAd->CommonCfg.RadarDetect.DfsSessionTime & 0x1f); UINT8 CtsProtect = (CTSProtect == 1) ? 0x02 : 0x01; /* CTS protect.*/ if (CTSProtect != 0) { switch(pAd->CommonCfg.RadarDetect.RDDurRegion) { case FCC: case JAP_W56: CtsProtect = 0x03; break; case JAP: { UCHAR RDDurRegion; RDDurRegion = JapRadarType(pAd); if (RDDurRegion == JAP_W56) CtsProtect = 0x03; else CtsProtect = 0x02; break; } case CE: case JAP_W53: default: CtsProtect = 0x02; break; } } else CtsProtect = 0x01; /* send start-RD with CTS protection command to MCU*/ /* highbyte [7] reserve*/ /* highbyte [6:5] 0x: stop Carrier/Radar detection*/ /* highbyte [10]: Start Carrier/Radar detection without CTS protection, 11: Start Carrier/Radar detection with CTS protection*/ /* highbyte [4:0] Radar/carrier detection duration. In 1ms.*/ /* lowbyte [7:0] Radar/carrier detection period, in 1ms.*/ AsicSendCommandToMcu(pAd, 0x60, 0xff, CTSPeriod, DfsActiveTime | (CtsProtect << 5)); /*AsicSendCommandToMcu(pAd, 0x63, 0xff, 10, 0);*/ return;}
开发者ID:Brainiarc7,项目名称:ralink_sdk,代码行数:64,
示例19: RtmpUsbStaAsicForceWakeupTimeoutvoid RtmpUsbStaAsicForceWakeupTimeout(void *SystemSpecific1, void *FunctionContext, void *SystemSpecific2, void *SystemSpecific3){ struct rt_rtmp_adapter *pAd = (struct rt_rtmp_adapter *)FunctionContext; if (pAd && pAd->Mlme.AutoWakeupTimerRunning) { AsicSendCommandToMcu(pAd, 0x31, 0xff, 0x00, 0x02); OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_DOZE); pAd->Mlme.AutoWakeupTimerRunning = FALSE; }}
开发者ID:AbheekG,项目名称:XIA-for-Linux,代码行数:14,
示例20: RT28xxUsbStaAsicSleepThenAutoWakeupvoid RT28xxUsbStaAsicSleepThenAutoWakeup(struct rt_rtmp_adapter *pAd, u16 TbttNumToNextWakeUp){ /* we have decided to SLEEP, so at least do it for a BEACON period. */ if (TbttNumToNextWakeUp == 0) TbttNumToNextWakeUp = 1; RTMPSetTimer(&pAd->Mlme.AutoWakeupTimer, AUTO_WAKEUP_TIMEOUT); pAd->Mlme.AutoWakeupTimerRunning = TRUE; AsicSendCommandToMcu(pAd, 0x30, 0xff, 0xff, 0x02); /* send POWER-SAVE command to MCU. Timeout 40us. */ OPSTATUS_SET_FLAG(pAd, fOP_STATUS_DOZE);}
开发者ID:AbheekG,项目名称:XIA-for-Linux,代码行数:16,
示例21: RtmpUsbStaAsicForceWakeupTimeoutVOID RtmpUsbStaAsicForceWakeupTimeout( IN PVOID SystemSpecific1, IN PVOID FunctionContext, IN PVOID SystemSpecific2, IN PVOID SystemSpecific3){ RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)FunctionContext; if (pAd && pAd->Mlme.AutoWakeupTimerRunning) { AsicSendCommandToMcu(pAd, 0x31, 0xff, 0x00, 0x02); OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_DOZE); pAd->Mlme.AutoWakeupTimerRunning = FALSE; }}
开发者ID:32743069,项目名称:amlogic_common_3050,代码行数:17,
示例22: RT28xxUsbStaAsicSleepThenAutoWakeupVOID RT28xxUsbStaAsicSleepThenAutoWakeup( IN PRTMP_ADAPTER pAd, IN USHORT TbttNumToNextWakeUp) { // we have decided to SLEEP, so at least do it for a BEACON period. if (TbttNumToNextWakeUp == 0) TbttNumToNextWakeUp = 1; RTMPSetTimer(&pAd->Mlme.AutoWakeupTimer, AUTO_WAKEUP_TIMEOUT); pAd->Mlme.AutoWakeupTimerRunning = TRUE; AsicSendCommandToMcu(pAd, 0x30, 0xff, 0xff, 0x02); // send POWER-SAVE command to MCU. Timeout 40us. OPSTATUS_SET_FLAG(pAd, fOP_STATUS_DOZE);}
开发者ID:32743069,项目名称:amlogic_common_3050,代码行数:18,
示例23: RTUSBWriteBBPRegisterNTSTATUS RTUSBWriteBBPRegister( IN PRTMP_ADAPTER pAd, IN UCHAR Id, IN UCHAR Value){ BBP_CSR_CFG_STRUC BbpCsr; int BusyCnt; int ret; RTMP_SEM_EVENT_WAIT(&pAd->reg_atomic, ret); if (ret != 0) { DBGPRINT(RT_DEBUG_ERROR, ("reg_atomic get failed(ret=%d)/n", ret)); return STATUS_UNSUCCESSFUL; } for (BusyCnt=0; BusyCnt<MAX_BUSY_COUNT; BusyCnt++) { RTMP_IO_READ32(pAd, H2M_BBP_AGENT, &BbpCsr.word); if (BbpCsr.field.Busy == BUSY) continue; BbpCsr.word = 0; BbpCsr.field.fRead = 0; BbpCsr.field.BBP_RW_MODE = 1; BbpCsr.field.Busy = 1; BbpCsr.field.Value = Value; BbpCsr.field.RegNum = Id; RTMP_IO_WRITE32(pAd, H2M_BBP_AGENT, BbpCsr.word); AsicSendCommandToMcu(pAd, 0x80, 0xff, 0x0, 0x0, TRUE); pAd->BbpWriteLatch[Id] = Value; break; } RTMP_SEM_EVENT_UP(&pAd->reg_atomic); if (BusyCnt == MAX_BUSY_COUNT) { DBGPRINT_ERR(("BBP write R%d=0x%x fail/n", Id, BbpCsr.word)); return STATUS_UNSUCCESSFUL; } return STATUS_SUCCESS;}
开发者ID:flyleaf91,项目名称:USB-Wireless-LAN-Driver-for-STM32F4xx,代码行数:43,
示例24: RTUSBReadBBPRegister/* ======================================================================== Routine Description: Read 8-bit BBP register via firmware Arguments: Return Value: IRQL = Note: ========================================================================*/NTSTATUS RTUSBReadBBPRegister( IN PRTMP_ADAPTER pAd, IN UCHAR Id, IN PUCHAR pValue){ BBP_CSR_CFG_STRUC BbpCsr; int i, k; for (i=0; i<MAX_BUSY_COUNT; i++) { RTUSBReadMACRegister(pAd, H2M_BBP_AGENT, &BbpCsr.word); if (BbpCsr.field.Busy == BUSY) { continue; } BbpCsr.word = 0; BbpCsr.field.fRead = 1; BbpCsr.field.BBP_RW_MODE = 1; BbpCsr.field.Busy = 1; BbpCsr.field.RegNum = Id; RTUSBWriteMACRegister(pAd, H2M_BBP_AGENT, BbpCsr.word); AsicSendCommandToMcu(pAd, 0x80, 0xff, 0x0, 0x0); for (k=0; k<MAX_BUSY_COUNT; k++) { RTUSBReadMACRegister(pAd, H2M_BBP_AGENT, &BbpCsr.word); if (BbpCsr.field.Busy == IDLE) break; } if ((BbpCsr.field.Busy == IDLE) && (BbpCsr.field.RegNum == Id)) { *pValue = (UCHAR)BbpCsr.field.Value; break; } } if (BbpCsr.field.Busy == BUSY) { DBGPRINT_ERR(("BBP read R%d=0x%x fail/n", Id, BbpCsr.word)); *pValue = pAd->BbpWriteLatch[Id]; return STATUS_UNSUCCESSFUL; } return STATUS_SUCCESS;}
开发者ID:AppEngine,项目名称:linux-2.6,代码行数:57,
示例25: RTMPSetSignalLED/* ======================================================================== Routine Description: Set LED Signal Stregth Arguments: pAd Pointer to our adapter Dbm Signal Stregth Return Value: None IRQL = PASSIVE_LEVEL Note: Can be run on any IRQL level. According to Microsoft Zero Config Wireless Signal Stregth definition as belows. <= -90 No Signal <= -81 Very Low <= -71 Low <= -67 Good <= -57 Very Good > -57 Excellent ========================================================================*/VOID RTMPSetSignalLED( IN PRTMP_ADAPTER pAd, IN NDIS_802_11_RSSI Dbm){ UCHAR nLed = 0;#ifdef RTMP_MAC_USB#ifdef STATS_COUNT_SUPPORT if(RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_IDLE_RADIO_OFF)) return;#endif /* STATS_COUNT_SUPPORT */#endif /* RTMP_MAC_USB */ if (pAd->LedCntl.MCULedCntl.field.LedMode == LED_MODE_SIGNAL_STREGTH) { if (Dbm <= -90) nLed = 0; else if (Dbm <= -81) nLed = 1; else if (Dbm <= -71) nLed = 3; else if (Dbm <= -67) nLed = 7; else if (Dbm <= -57) nLed = 15; else nLed = 31; /* */ /* Update Signal Stregth to firmware if changed. */ /* */ if (pAd->LedCntl.LedIndicatorStrength != nLed) { AsicSendCommandToMcu(pAd, MCU_SET_LED_GPIO_SIGNAL_CFG, 0xff, nLed, pAd->LedCntl.MCULedCntl.field.Polarity, FALSE); pAd->LedCntl.LedIndicatorStrength = nLed; } }}
开发者ID:eljefe80,项目名称:mt7610u,代码行数:67,
示例26: RT28xxUsbStaAsicSleepThenAutoWakeupVOID RT28xxUsbStaAsicSleepThenAutoWakeup( IN PRTMP_ADAPTER pAd, IN USHORT TbttNumToNextWakeUp){ AUTO_WAKEUP_STRUC AutoWakeupCfg; // we have decided to SLEEP, so at least do it for a BEACON period. if (TbttNumToNextWakeUp == 0) TbttNumToNextWakeUp = 1; AutoWakeupCfg.word = 0; RTMP_IO_WRITE32(pAd, AUTO_WAKEUP_CFG, AutoWakeupCfg.word); AutoWakeupCfg.field.NumofSleepingTbtt = TbttNumToNextWakeUp - 1; AutoWakeupCfg.field.EnableAutoWakeup = 1; AutoWakeupCfg.field.AutoLeadTime = 5; RTMP_IO_WRITE32(pAd, AUTO_WAKEUP_CFG, AutoWakeupCfg.word); AsicSendCommandToMcu(pAd, 0x30, 0xff, 0xff, 0x02); // send POWER-SAVE command to MCU. Timeout 40us. OPSTATUS_SET_FLAG(pAd, fOP_STATUS_DOZE);}
开发者ID:458941968,项目名称:mini2440-kernel-2.6.29,代码行数:23,
示例27: RtmpUsbStaAsicForceWakeupTimeoutVOID RtmpUsbStaAsicForceWakeupTimeout( IN PVOID SystemSpecific1, IN PVOID FunctionContext, IN PVOID SystemSpecific2, IN PVOID SystemSpecific3){ RTMP_ADAPTER *pAd = (RTMP_ADAPTER *)FunctionContext; if (pAd && pAd->Mlme.AutoWakeupTimerRunning) {#ifdef MT7601 if ( IS_MT7601(pAd) ) { if ( !OPSTATUS_TEST_FLAG(pAd, fOP_STATUS_DOZE) ) { RTMPSetTimer(&pAd->Mlme.AutoWakeupTimer, AUTO_WAKEUP_TIMEOUT); return; } ASIC_RADIO_ON(pAd, MLME_RADIO_ON); } else#endif /* MT7601 */ { RTUSBBulkReceive(pAd); AsicSendCommandToMcu(pAd, 0x31, 0xff, 0x00, 0x02, FALSE); } OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_DOZE); pAd->Mlme.AutoWakeupTimerRunning = FALSE; }}
开发者ID:adriano65,项目名称:n300-pda,代码行数:37,
注:本文中的AsicSendCommandToMcu函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ AslAbort函数代码示例 C++ AsciiStrLen函数代码示例 |