blob: d9370f79b83ebcb58f8160a3e3059285e4fc3a74 [file] [log] [blame]
/* File veth.h created by Kyle A. Lucke on Mon Aug 7 2000. */
#ifndef _ISERIES_VETH_H
#define _ISERIES_VETH_H
#define VethEventTypeCap (0)
#define VethEventTypeFrames (1)
#define VethEventTypeMonitor (2)
#define VethEventTypeFramesAck (3)
#define VETH_MAX_ACKS_PER_MSG (20)
#define VETH_MAX_FRAMES_PER_MSG (6)
struct VethFramesData {
u32 addr[VETH_MAX_FRAMES_PER_MSG];
u16 len[VETH_MAX_FRAMES_PER_MSG];
u32 eofmask;
};
#define VETH_EOF_SHIFT (32-VETH_MAX_FRAMES_PER_MSG)
struct VethFramesAckData {
u16 token[VETH_MAX_ACKS_PER_MSG];
};
struct VethCapData {
u8 caps_version;
u8 rsvd1;
u16 num_buffers;
u16 ack_threshold;
u16 rsvd2;
u32 ack_timeout;
u32 rsvd3;
u64 rsvd4[3];
};
struct VethLpEvent {
struct HvLpEvent base_event;
union {
struct VethCapData caps_data;
struct VethFramesData frames_data;
struct VethFramesAckData frames_ack_data;
} u;
};
#endif /* _ISERIES_VETH_H */