Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0+ */
0002 /*
0003  * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
0004  * All rights reserved.
0005  *
0006  * Purpose: Provide functions to setup NIC operation mode
0007  *
0008  * Author: Tevin Chen
0009  *
0010  * Date: May 21, 1996
0011  *
0012  */
0013 
0014 #ifndef __CARD_H__
0015 #define __CARD_H__
0016 #include "device.h"
0017 
0018 /* init card type */
0019 
0020 #define CB_MAX_CHANNEL_24G  14
0021 #define CB_MAX_CHANNEL_5G   42 /* add channel9(5045MHz), 41==>42 */
0022 #define CB_MAX_CHANNEL      (CB_MAX_CHANNEL_24G + CB_MAX_CHANNEL_5G)
0023 
0024 struct vnt_private;
0025 
0026 int vnt_set_channel(struct vnt_private *priv, u32 connection_channel);
0027 int vnt_set_rspinf(struct vnt_private *priv, u8 bb_type);
0028 int vnt_update_ifs(struct vnt_private *priv);
0029 void vnt_update_top_rates(struct vnt_private *priv);
0030 bool vnt_ofdm_min_rate(struct vnt_private *priv);
0031 int vnt_adjust_tsf(struct vnt_private *priv, u8 rx_rate,
0032            u64 time_stamp, u64 local_tsf);
0033 bool vnt_get_current_tsf(struct vnt_private *priv, u64 *current_tsf);
0034 bool vnt_clear_current_tsf(struct vnt_private *priv);
0035 int vnt_reset_next_tbtt(struct vnt_private *priv, u16 beacon_interval);
0036 int vnt_update_next_tbtt(struct vnt_private *priv, u64 tsf,
0037              u16 beacon_interval);
0038 u64 vnt_get_next_tbtt(u64 tsf, u16 beacon_interval);
0039 u64 vnt_get_tsf_offset(u8 rx_rate, u64 tsf1, u64 tsf2);
0040 int vnt_radio_power_off(struct vnt_private *priv);
0041 int vnt_radio_power_on(struct vnt_private *priv);
0042 u8 vnt_get_pkt_type(struct vnt_private *priv);
0043 int vnt_set_bss_mode(struct vnt_private *priv);
0044 
0045 #endif /* __CARD_H__ */