blob: 9a56c39e6d0a4b3f5315026970af025bd7069888 [file] [log] [blame]
Ezequiel Garciae876f202014-05-19 13:59:52 -03001#ifndef _TSO_H
2#define _TSO_H
3
4#include <net/ip.h>
5
Antoine Ténartf9cbe9a2017-08-23 09:46:54 +02006#define TSO_HEADER_SIZE 128
7
Ezequiel Garciae876f202014-05-19 13:59:52 -03008struct tso_t {
9 int next_frag_idx;
10 void *data;
11 size_t size;
12 u16 ip_id;
emmanuel.grumbach@intel.com8941faa2015-10-26 10:31:29 +020013 bool ipv6;
Ezequiel Garciae876f202014-05-19 13:59:52 -030014 u32 tcp_seq;
15};
16
17int tso_count_descs(struct sk_buff *skb);
18void tso_build_hdr(struct sk_buff *skb, char *hdr, struct tso_t *tso,
19 int size, bool is_last);
20void tso_build_data(struct sk_buff *skb, struct tso_t *tso, int size);
21void tso_start(struct sk_buff *skb, struct tso_t *tso);
22
23#endif /* _TSO_H */