// SPDX-License-Identifier: GPL-2.0+ /* * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc. * All rights reserved. * * Purpose: rf function code * * Author: Jerry Chen * * Date: Feb. 19, 2004 * * Functions: * IFRFbWriteEmbedded - Embedded write RF register via MAC * * Revision History: * RobertYu 2005 * chester 2008 * */ #include "mac.h" #include "srom.h" #include "rf.h" #include "baseband.h" #define BY_AL2230_REG_LEN … #define CB_AL2230_INIT_SEQ … #define SWITCH_CHANNEL_DELAY_AL2230 … #define AL2230_PWR_IDX_LEN … #define BY_AL7230_REG_LEN … #define CB_AL7230_INIT_SEQ … #define SWITCH_CHANNEL_DELAY_AL7230 … #define AL7230_PWR_IDX_LEN … static const unsigned long al2230_init_table[CB_AL2230_INIT_SEQ] = …; static const unsigned long al2230_channel_table0[CB_MAX_CHANNEL] = …; static const unsigned long al2230_channel_table1[CB_MAX_CHANNEL] = …; static unsigned long al2230_power_table[AL2230_PWR_IDX_LEN] = …; /* * Description: Write to IF/RF, by embedded programming * * Parameters: * In: * iobase - I/O base address * dwData - data to write * Out: * none * * Return Value: true if succeeded; false if failed. * */ bool IFRFbWriteEmbedded(struct vnt_private *priv, unsigned long dwData) { … } /* * Description: AIROHA IFRF chip init function * * Parameters: * In: * iobase - I/O base address * Out: * none * * Return Value: true if succeeded; false if failed. * */ static bool RFbAL2230Init(struct vnt_private *priv) { … } static bool RFbAL2230SelectChannel(struct vnt_private *priv, unsigned char byChannel) { … } /* * Description: RF init function * * Parameters: * In: * byBBType * rf_type * Out: * none * * Return Value: true if succeeded; false if failed. * */ bool RFbInit(struct vnt_private *priv) { … } /* * Description: Select channel * * Parameters: * In: * rf_type * byChannel - Channel number * Out: * none * * Return Value: true if succeeded; false if failed. * */ bool RFbSelectChannel(struct vnt_private *priv, unsigned char rf_type, u16 byChannel) { … } /* * Description: Write WakeProgSyn * * Parameters: * In: * priv - Device Structure * rf_type - RF type * channel - Channel number * * Return Value: true if succeeded; false if failed. * */ bool rf_write_wake_prog_syn(struct vnt_private *priv, unsigned char rf_type, u16 channel) { … } /* * Description: Set Tx power * * Parameters: * In: * iobase - I/O base address * dwRFPowerTable - RF Tx Power Setting * Out: * none * * Return Value: true if succeeded; false if failed. * */ bool RFbSetPower(struct vnt_private *priv, unsigned int rate, u16 uCH) { … } /* * Description: Set Tx power * * Parameters: * In: * iobase - I/O base address * dwRFPowerTable - RF Tx Power Setting * Out: * none * * Return Value: true if succeeded; false if failed. * */ bool RFbRawSetPower(struct vnt_private *priv, unsigned char byPwr, unsigned int rate) { … } /* * * Routine Description: * Translate RSSI to dBm * * Parameters: * In: * priv - The adapter to be translated * byCurrRSSI - RSSI to be translated * Out: * pdwdbm - Translated dbm number * * Return Value: none * */ void RFvRSSITodBm(struct vnt_private *priv, unsigned char byCurrRSSI, long *pldBm) { … }