151b35a45SEdward Cree /* SPDX-License-Identifier: GPL-2.0-only */ 251b35a45SEdward Cree /**************************************************************************** 351b35a45SEdward Cree * Driver for Solarflare network controllers and boards 451b35a45SEdward Cree * Copyright 2019 Solarflare Communications Inc. 551b35a45SEdward Cree * Copyright 2019-2020 Xilinx Inc. 651b35a45SEdward Cree * 751b35a45SEdward Cree * This program is free software; you can redistribute it and/or modify it 851b35a45SEdward Cree * under the terms of the GNU General Public License version 2 as published 951b35a45SEdward Cree * by the Free Software Foundation, incorporated herein by reference. 1051b35a45SEdward Cree */ 1151b35a45SEdward Cree 1251b35a45SEdward Cree #ifndef EFX_EF100_TX_H 1351b35a45SEdward Cree #define EFX_EF100_TX_H 1451b35a45SEdward Cree 1551b35a45SEdward Cree #include "net_driver.h" 1602443ab8SEdward Cree #include "ef100_rep.h" 1751b35a45SEdward Cree 18965b549fSEdward Cree int ef100_tx_probe(struct efx_tx_queue *tx_queue); 19965b549fSEdward Cree void ef100_tx_init(struct efx_tx_queue *tx_queue); 20965b549fSEdward Cree void ef100_tx_write(struct efx_tx_queue *tx_queue); 21d19a5372SEdward Cree unsigned int ef100_tx_max_skb_descs(struct efx_nic *efx); 22d19a5372SEdward Cree 23*4aaf2c52SÍñigo Huguet int ef100_ev_tx(struct efx_channel *channel, const efx_qword_t *p_event); 24965b549fSEdward Cree 2551b35a45SEdward Cree netdev_tx_t ef100_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb); 2602443ab8SEdward Cree int __ef100_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb, 2702443ab8SEdward Cree struct efx_rep *efv); 2851b35a45SEdward Cree #endif 29