cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

card.h (2065B)


      1/* SPDX-License-Identifier: GPL-2.0+ */
      2/*
      3 * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
      4 * All rights reserved.
      5 *
      6 * Purpose: Provide functions to setup NIC operation mode
      7 *
      8 * Author: Tevin Chen
      9 *
     10 * Date: May 21, 1996
     11 *
     12 */
     13
     14#ifndef __CARD_H__
     15#define __CARD_H__
     16
     17#include <linux/types.h>
     18#include <linux/nl80211.h>
     19
     20/*
     21 * Loopback mode
     22 *
     23 * LOBYTE is MAC LB mode, HIBYTE is MII LB mode
     24 */
     25#define CARD_LB_NONE            MAKEWORD(MAC_LB_NONE, 0)
     26/* PHY must ISO, avoid MAC loopback packet go out */
     27#define CARD_LB_MAC             MAKEWORD(MAC_LB_INTERNAL, 0)
     28#define CARD_LB_PHY             MAKEWORD(MAC_LB_EXT, 0)
     29
     30#define DEFAULT_MSDU_LIFETIME           512  /* ms */
     31#define DEFAULT_MSDU_LIFETIME_RES_64us  8000 /* 64us */
     32
     33#define DEFAULT_MGN_LIFETIME            8    /* ms */
     34#define DEFAULT_MGN_LIFETIME_RES_64us   125  /* 64us */
     35
     36#define CB_MAX_CHANNEL_24G      14
     37#define CB_MAX_CHANNEL_5G       42
     38#define CB_MAX_CHANNEL          (CB_MAX_CHANNEL_24G + CB_MAX_CHANNEL_5G)
     39
     40struct vnt_private;
     41
     42void CARDvSetRSPINF(struct vnt_private *priv, u8 bb_type);
     43void CARDvUpdateBasicTopRate(struct vnt_private *priv);
     44bool CARDbIsOFDMinBasicRate(struct vnt_private *priv);
     45void CARDvSetFirstNextTBTT(struct vnt_private *priv,
     46			   unsigned short wBeaconInterval);
     47void CARDvUpdateNextTBTT(struct vnt_private *priv, u64 qwTSF,
     48			 unsigned short wBeaconInterval);
     49u64 vt6655_get_current_tsf(struct vnt_private *priv);
     50u64 CARDqGetNextTBTT(u64 qwTSF, unsigned short wBeaconInterval);
     51u64 CARDqGetTSFOffset(unsigned char byRxRate, u64 qwTSF1, u64 qwTSF2);
     52unsigned char CARDbyGetPktType(struct vnt_private *priv);
     53void CARDvSafeResetTx(struct vnt_private *priv);
     54void CARDvSafeResetRx(struct vnt_private *priv);
     55void CARDbRadioPowerOff(struct vnt_private *priv);
     56bool CARDbSetPhyParameter(struct vnt_private *priv, u8 bb_type);
     57bool CARDbUpdateTSF(struct vnt_private *priv, unsigned char byRxRate,
     58		    u64 qwBSSTimestamp);
     59bool CARDbSetBeaconPeriod(struct vnt_private *priv,
     60			  unsigned short wBeaconInterval);
     61
     62#endif /* __CARD_H__ */