162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
262306a36Sopenharmony_ci/****************************************************************************
362306a36Sopenharmony_ci * Driver for Solarflare network controllers and boards
462306a36Sopenharmony_ci * Copyright 2005-2006 Fen Systems Ltd.
562306a36Sopenharmony_ci * Copyright 2006-2015 Solarflare Communications Inc.
662306a36Sopenharmony_ci */
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci#ifndef EF4_TX_H
962306a36Sopenharmony_ci#define EF4_TX_H
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci#include <linux/types.h>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci/* Driver internal tx-path related declarations. */
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciunsigned int ef4_tx_limit_len(struct ef4_tx_queue *tx_queue,
1662306a36Sopenharmony_ci			      dma_addr_t dma_addr, unsigned int len);
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ciu8 *ef4_tx_get_copy_buffer_limited(struct ef4_tx_queue *tx_queue,
1962306a36Sopenharmony_ci				   struct ef4_tx_buffer *buffer, size_t len);
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ciint ef4_enqueue_skb_tso(struct ef4_tx_queue *tx_queue, struct sk_buff *skb,
2262306a36Sopenharmony_ci			bool *data_mapped);
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci#endif /* EF4_TX_H */
25