card.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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. #ifndef __CARD_H__
  16. #define __CARD_H__
  17. #include "device.h"
  18. /* init card type */
  19. #define CB_MAX_CHANNEL_24G 14
  20. #define CB_MAX_CHANNEL_5G 42 /* add channel9(5045MHz), 41==>42 */
  21. #define CB_MAX_CHANNEL (CB_MAX_CHANNEL_24G + CB_MAX_CHANNEL_5G)
  22. struct vnt_private;
  23. void vnt_set_channel(struct vnt_private *priv, u32 connection_channel);
  24. void vnt_set_rspinf(struct vnt_private *priv, u8 bb_type);
  25. void vnt_update_ifs(struct vnt_private *priv);
  26. void vnt_update_top_rates(struct vnt_private *priv);
  27. int vnt_ofdm_min_rate(struct vnt_private *priv);
  28. void vnt_adjust_tsf(struct vnt_private *priv, u8 rx_rate,
  29. u64 time_stamp, u64 local_tsf);
  30. bool vnt_get_current_tsf(struct vnt_private *priv, u64 *current_tsf);
  31. bool vnt_clear_current_tsf(struct vnt_private *priv);
  32. void vnt_reset_next_tbtt(struct vnt_private *priv, u16 beacon_interval);
  33. void vnt_update_next_tbtt(struct vnt_private *priv, u64 tsf,
  34. u16 beacon_interval);
  35. u64 vnt_get_next_tbtt(u64 tsf, u16 beacon_interval);
  36. u64 vnt_get_tsf_offset(u8 rx_rate, u64 tsf1, u64 tsf2);
  37. int vnt_radio_power_off(struct vnt_private *priv);
  38. int vnt_radio_power_on(struct vnt_private *priv);
  39. u8 vnt_get_pkt_type(struct vnt_private *priv);
  40. void vnt_set_bss_mode(struct vnt_private *priv);
  41. #endif /* __CARD_H__ */