1 // SPDX-License-Identifier: GPL-2.0+ 2 /* 3 * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc. 4 * All rights reserved. 5 * 6 * File: card.h 7 * 8 * Purpose: Provide functions to setup NIC operation mode 9 * 10 * Author: Tevin Chen 11 * 12 * Date: May 21, 1996 13 * 14 */ 15 16 #ifndef __CARD_H__ 17 #define __CARD_H__ 18 #include "device.h" 19 20 /* init card type */ 21 22 #define CB_MAX_CHANNEL_24G 14 23 #define CB_MAX_CHANNEL_5G 42 /* add channel9(5045MHz), 41==>42 */ 24 #define CB_MAX_CHANNEL (CB_MAX_CHANNEL_24G + CB_MAX_CHANNEL_5G) 25 26 struct vnt_private; 27 28 void vnt_set_channel(struct vnt_private *priv, u32 connection_channel); 29 void vnt_set_rspinf(struct vnt_private *priv, u8 bb_type); 30 void vnt_update_ifs(struct vnt_private *priv); 31 void vnt_update_top_rates(struct vnt_private *priv); 32 int vnt_ofdm_min_rate(struct vnt_private *priv); 33 void vnt_adjust_tsf(struct vnt_private *priv, u8 rx_rate, 34 u64 time_stamp, u64 local_tsf); 35 bool vnt_get_current_tsf(struct vnt_private *priv, u64 *current_tsf); 36 bool vnt_clear_current_tsf(struct vnt_private *priv); 37 void vnt_reset_next_tbtt(struct vnt_private *priv, u16 beacon_interval); 38 void vnt_update_next_tbtt(struct vnt_private *priv, u64 tsf, 39 u16 beacon_interval); 40 u64 vnt_get_next_tbtt(u64 tsf, u16 beacon_interval); 41 u64 vnt_get_tsf_offset(u8 rx_rate, u64 tsf1, u64 tsf2); 42 int vnt_radio_power_off(struct vnt_private *priv); 43 int vnt_radio_power_on(struct vnt_private *priv); 44 u8 vnt_get_pkt_type(struct vnt_private *priv); 45 void vnt_set_bss_mode(struct vnt_private *priv); 46 47 #endif /* __CARD_H__ */ 48