#include <net/addrconf.h>
-#include <linux/bitops.h>
-
+#include <asm/bitops.h>
#include <asm/debug.h>
#include <asm/qdio.h>
#include <asm/ccwdev.h>
#include "qeth_mpc.h"
-#define VERSION_QETH_H "$Revision: 1.124 $"
+#define VERSION_QETH_H "$Revision: 1.113 $"
#ifdef CONFIG_QETH_IPV6
#define QETH_VERSION_IPV6 ":IPv6"
#define QETH_DBF_SETUP_LEN 8
#define QETH_DBF_SETUP_INDEX 3
#define QETH_DBF_SETUP_NR_AREAS 1
-#define QETH_DBF_SETUP_LEVEL 5
+#define QETH_DBF_SETUP_LEVEL 3
#define QETH_DBF_MISC_NAME "qeth_misc"
#define QETH_DBF_MISC_LEN 128
#define QETH_DBF_CONTROL_LEN 256
#define QETH_DBF_CONTROL_INDEX 3
#define QETH_DBF_CONTROL_NR_AREAS 2
-#define QETH_DBF_CONTROL_LEVEL 5
+#define QETH_DBF_CONTROL_LEVEL 2
#define QETH_DBF_TRACE_NAME "qeth_trace"
#define QETH_DBF_TRACE_LEN 8
#define QETH_DBF_TRACE_INDEX 2
#define QETH_DBF_TRACE_NR_AREAS 2
-#define QETH_DBF_TRACE_LEVEL 5
+#define QETH_DBF_TRACE_LEVEL 3
#define QETH_DBF_SENSE_NAME "qeth_sense"
#define QETH_DBF_SENSE_LEN 64
debug_event(qeth_dbf_##name,level,(void*)(addr),len); \
} while (0)
-DECLARE_PER_CPU(char[256], qeth_dbf_txt_buf);
+extern DEFINE_PER_CPU(char[256], qeth_dbf_txt_buf);
#define QETH_DBF_TEXT_(name,level,text...) \
do { \
#define QETH_WATERMARK_PACK_FUZZ 1
#define QETH_IP_HEADER_SIZE 40
+/* VLAN defines */
+#define QETH_EXT_HDR_VLAN_FRAME 0x01
+#define QETH_EXT_HDR_TOKEN_ID 0x02
+#define QETH_EXT_HDR_INCLUDE_VLAN_TAG 0x04
-struct qeth_hdr_layer3 {
+struct qeth_hdr {
__u8 id;
__u8 flags;
__u16 inbound_checksum;
__u8 dest_addr[16];
} __attribute__ ((packed));
-struct qeth_hdr_layer2 {
- __u8 id;
- __u8 flags[3];
- __u8 port_no;
- __u8 hdr_length;
- __u16 pkt_length;
- __u16 seq_no;
- __u16 vlan_id;
- __u32 reserved;
- __u8 reserved2[16];
-} __attribute__ ((packed));
-
-struct qeth_hdr {
- union {
- struct qeth_hdr_layer2 l2;
- struct qeth_hdr_layer3 l3;
- } hdr;
-} __attribute__ ((packed));
-
-
/* flags for qeth_hdr.flags */
#define QETH_HDR_PASSTHRU 0x10
#define QETH_HDR_IPV6 0x80
QETH_CAST_NOCAST = 0x00,
};
-enum qeth_layer2_frame_flags {
- QETH_LAYER2_FLAG_MULTICAST = 0x01,
- QETH_LAYER2_FLAG_BROADCAST = 0x02,
- QETH_LAYER2_FLAG_UNICAST = 0x04,
- QETH_LAYER2_FLAG_VLAN = 0x10,
-};
-
-enum qeth_header_ids {
- QETH_HEADER_TYPE_LAYER3 = 0x01,
- QETH_HEADER_TYPE_LAYER2 = 0x02,
-};
/* flags for qeth_hdr.ext_flags */
-#define QETH_HDR_EXT_VLAN_FRAME 0x01
-#define QETH_HDR_EXT_TOKEN_ID 0x02
-#define QETH_HDR_EXT_INCLUDE_VLAN_TAG 0x04
-#define QETH_HDR_EXT_SRC_MAC_ADDR 0x08
-#define QETH_HDR_EXT_CSUM_HDR_REQ 0x10
-#define QETH_HDR_EXT_CSUM_TRANSP_REQ 0x20
+#define QETH_HDR_EXT_VLAN_FRAME 0x01
+#define QETH_HDR_EXT_CSUM_HDR_REQ 0x10
+#define QETH_HDR_EXT_CSUM_TRANSP_REQ 0x20
+#define QETH_HDR_EXT_SRC_MAC_ADDR 0x08
static inline int
qeth_is_last_sbale(struct qdio_buffer_element *sbale)
__u16 func_level;
char mcl_level[QETH_MCL_LENGTH + 1];
int guestlan;
- int layer2_mac_registered;
int portname_required;
int portno;
char portname[9];
int fake_broadcast;
int add_hhlen;
int fake_ll;
- int layer2;
};
/*
}
inline static unsigned short
-qeth_get_netdev_flags(struct qeth_card *card)
+qeth_get_netdev_flags(int cardtype)
{
- if (card->options.layer2)
- return 0;
- switch (card->info.type) {
+ switch (cardtype) {
case QETH_CARD_TYPE_IQD:
return IFF_NOARP;
#ifdef CONFIG_QETH_IPV6