1 /* 2 * 3 * Copyright (C) 2002 Intersil Americas Inc. 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; either version 2 of the License 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program; if not, write to the Free Software 16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 17 * 18 */ 19 20 #ifndef _ISLPCI_ETH_H 21 #define _ISLPCI_ETH_H 22 23 #include "isl_38xx.h" 24 #include "islpci_dev.h" 25 26 struct rfmon_header { 27 u16 unk0; /* = 0x0000 */ 28 u16 length; /* = 0x1400 */ 29 u32 clock; /* 1MHz clock */ 30 u8 flags; 31 u8 unk1; 32 u8 rate; 33 u8 unk2; 34 u16 freq; 35 u16 unk3; 36 u8 rssi; 37 u8 padding[3]; 38 } __attribute__ ((packed)); 39 40 struct rx_annex_header { 41 u8 addr1[ETH_ALEN]; 42 u8 addr2[ETH_ALEN]; 43 struct rfmon_header rfmon; 44 } __attribute__ ((packed)); 45 46 /* wlan-ng (and hopefully others) AVS header, version one. Fields in 47 * network byte order. */ 48 #define P80211CAPTURE_VERSION 0x80211001 49 50 struct avs_80211_1_header { 51 uint32_t version; 52 uint32_t length; 53 uint64_t mactime; 54 uint64_t hosttime; 55 uint32_t phytype; 56 uint32_t channel; 57 uint32_t datarate; 58 uint32_t antenna; 59 uint32_t priority; 60 uint32_t ssi_type; 61 int32_t ssi_signal; 62 int32_t ssi_noise; 63 uint32_t preamble; 64 uint32_t encoding; 65 }; 66 67 void islpci_eth_cleanup_transmit(islpci_private *, isl38xx_control_block *); 68 int islpci_eth_transmit(struct sk_buff *, struct net_device *); 69 int islpci_eth_receive(islpci_private *); 70 void islpci_eth_tx_timeout(struct net_device *); 71 void islpci_do_reset_and_wake(void *data); 72 73 #endif /* _ISL_GEN_H */ 74