root/drivers/net/wireless/intersil/prism54/islpci_eth.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  *  Copyright (C) 2002 Intersil Americas Inc.
   4  */
   5 
   6 #ifndef _ISLPCI_ETH_H
   7 #define _ISLPCI_ETH_H
   8 
   9 #include "isl_38xx.h"
  10 #include "islpci_dev.h"
  11 
  12 struct rfmon_header {
  13         __le16 unk0;            /* = 0x0000 */
  14         __le16 length;          /* = 0x1400 */
  15         __le32 clock;           /* 1MHz clock */
  16         u8 flags;
  17         u8 unk1;
  18         u8 rate;
  19         u8 unk2;
  20         __le16 freq;
  21         __le16 unk3;
  22         u8 rssi;
  23         u8 padding[3];
  24 } __packed;
  25 
  26 struct rx_annex_header {
  27         u8 addr1[ETH_ALEN];
  28         u8 addr2[ETH_ALEN];
  29         struct rfmon_header rfmon;
  30 } __packed;
  31 
  32 /* wlan-ng (and hopefully others) AVS header, version one.  Fields in
  33  * network byte order. */
  34 #define P80211CAPTURE_VERSION 0x80211001
  35 
  36 struct avs_80211_1_header {
  37         __be32 version;
  38         __be32 length;
  39         __be64 mactime;
  40         __be64 hosttime;
  41         __be32 phytype;
  42         __be32 channel;
  43         __be32 datarate;
  44         __be32 antenna;
  45         __be32 priority;
  46         __be32 ssi_type;
  47         __be32 ssi_signal;
  48         __be32 ssi_noise;
  49         __be32 preamble;
  50         __be32 encoding;
  51 };
  52 
  53 void islpci_eth_cleanup_transmit(islpci_private *, isl38xx_control_block *);
  54 netdev_tx_t islpci_eth_transmit(struct sk_buff *, struct net_device *);
  55 int islpci_eth_receive(islpci_private *);
  56 void islpci_eth_tx_timeout(struct net_device *);
  57 void islpci_do_reset_and_wake(struct work_struct *);
  58 
  59 #endif                          /* _ISL_GEN_H */

/* [<][>][^][v][top][bottom][index][help] */