162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
262306a36Sopenharmony_ci/* Altera TSE SGDMA and MSGDMA Linux driver
362306a36Sopenharmony_ci * Copyright (C) 2014 Altera Corporation. All rights reserved
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#ifndef __ALTERA_MSGDMA_H__
762306a36Sopenharmony_ci#define __ALTERA_MSGDMA_H__
862306a36Sopenharmony_ci
962306a36Sopenharmony_civoid msgdma_reset(struct altera_tse_private *);
1062306a36Sopenharmony_civoid msgdma_enable_txirq(struct altera_tse_private *);
1162306a36Sopenharmony_civoid msgdma_enable_rxirq(struct altera_tse_private *);
1262306a36Sopenharmony_civoid msgdma_disable_rxirq(struct altera_tse_private *);
1362306a36Sopenharmony_civoid msgdma_disable_txirq(struct altera_tse_private *);
1462306a36Sopenharmony_civoid msgdma_clear_rxirq(struct altera_tse_private *);
1562306a36Sopenharmony_civoid msgdma_clear_txirq(struct altera_tse_private *);
1662306a36Sopenharmony_ciu32 msgdma_tx_completions(struct altera_tse_private *);
1762306a36Sopenharmony_civoid msgdma_add_rx_desc(struct altera_tse_private *, struct tse_buffer *);
1862306a36Sopenharmony_ciint msgdma_tx_buffer(struct altera_tse_private *, struct tse_buffer *);
1962306a36Sopenharmony_ciu32 msgdma_rx_status(struct altera_tse_private *);
2062306a36Sopenharmony_ciint msgdma_initialize(struct altera_tse_private *);
2162306a36Sopenharmony_civoid msgdma_uninitialize(struct altera_tse_private *);
2262306a36Sopenharmony_civoid msgdma_start_rxdma(struct altera_tse_private *);
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci#endif /*  __ALTERA_MSGDMA_H__ */
25