119370Spst/*-
219370Spst * Copyright (c) 2015 Adrian Chadd <adrian@FreeBSD.org>
3130803Smarcel * All rights reserved.
4130803Smarcel *
5130803Smarcel * Redistribution and use in source and binary forms, with or without
6130803Smarcel * modification, are permitted provided that the following conditions
798944Sobrien * are met:
819370Spst * 1. Redistributions of source code must retain the above copyright
998944Sobrien *    notice, this list of conditions and the following disclaimer,
1098944Sobrien *    without modification.
1198944Sobrien * 2. Redistributions in binary form must reproduce at minimum a disclaimer
1298944Sobrien *    similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
1319370Spst *    redistribution must be conditioned upon including a substantially
1498944Sobrien *    similar Disclaimer requirement for further binary redistribution.
1598944Sobrien *
1698944Sobrien * NO WARRANTY
1798944Sobrien * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1819370Spst * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1998944Sobrien * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
2098944Sobrien * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
2198944Sobrien * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
2298944Sobrien * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
2319370Spst * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
2419370Spst * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
2519370Spst * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
2619370Spst * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
2719370Spst * THE POSSIBILITY OF SUCH DAMAGES.
2819370Spst *
2919370Spst * $FreeBSD$
3019370Spst */
3119370Spst#ifndef	__IF_ATH_DESCDMA_H__
3298944Sobrien#define	__IF_ATH_DESCDMA_H__
3398944Sobrien
3498944Sobrienextern  int ath_descdma_alloc_desc(struct ath_softc *sc,
35130803Smarcel	    struct ath_descdma *dd, ath_bufhead *head, const char *name,
36130803Smarcel	    int ds_size, int ndesc);
37130803Smarcelextern  int ath_descdma_setup(struct ath_softc *sc, struct ath_descdma *dd,
38130803Smarcel	    ath_bufhead *head, const char *name, int ds_size, int nbuf,
3919370Spst	    int ndesc);
4098944Sobrienextern  int ath_descdma_setup_rx_edma(struct ath_softc *sc,
4146283Sdfr	    struct ath_descdma *dd, ath_bufhead *head, const char *name,
4246283Sdfr	    int nbuf, int desclen);
4398944Sobrienextern  void ath_descdma_cleanup(struct ath_softc *sc,
4446283Sdfr	    struct ath_descdma *dd, ath_bufhead *head);
4546283Sdfr
4698944Sobrien#endif
4798944Sobrien