1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Header for Bestcomm General Buffer Descriptor tasks driver 4 * 5 * Copyright (C) 2007 Sylvain Munaut <tnt@246tNt.com> 6 * Copyright (C) 2006 AppSpec Computer Technologies Corp. 7 * Jeff Gibbons <jeff.gibbons@appspec.com> 8 */ 9 10 #ifndef __BESTCOMM_GEN_BD_H__ 11 #define __BESTCOMM_GEN_BD_H__ 12 13 struct bcom_gen_bd { 14 u32 status; 15 u32 buf_pa; 16 }; 17 18 19 extern struct bcom_task * 20 bcom_gen_bd_rx_init(int queue_len, phys_addr_t fifo, 21 int initiator, int ipr, int maxbufsize); 22 23 extern int 24 bcom_gen_bd_rx_reset(struct bcom_task *tsk); 25 26 extern void 27 bcom_gen_bd_rx_release(struct bcom_task *tsk); 28 29 30 extern struct bcom_task * 31 bcom_gen_bd_tx_init(int queue_len, phys_addr_t fifo, 32 int initiator, int ipr); 33 34 extern int 35 bcom_gen_bd_tx_reset(struct bcom_task *tsk); 36 37 extern void 38 bcom_gen_bd_tx_release(struct bcom_task *tsk); 39 40 41 /* PSC support utility wrappers */ 42 struct bcom_task * bcom_psc_gen_bd_rx_init(unsigned psc_num, int queue_len, 43 phys_addr_t fifo, int maxbufsize); 44 struct bcom_task * bcom_psc_gen_bd_tx_init(unsigned psc_num, int queue_len, 45 phys_addr_t fifo); 46 #endif /* __BESTCOMM_GEN_BD_H__ */ 47 48