Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * Header for Bestcomm General Buffer Descriptor tasks driver
0004  *
0005  * Copyright (C) 2007 Sylvain Munaut <tnt@246tNt.com>
0006  * Copyright (C) 2006 AppSpec Computer Technologies Corp.
0007  *                    Jeff Gibbons <jeff.gibbons@appspec.com>
0008  */
0009 
0010 #ifndef __BESTCOMM_GEN_BD_H__
0011 #define __BESTCOMM_GEN_BD_H__
0012 
0013 struct bcom_gen_bd {
0014     u32 status;
0015     u32 buf_pa;
0016 };
0017 
0018 
0019 extern struct bcom_task *
0020 bcom_gen_bd_rx_init(int queue_len, phys_addr_t fifo,
0021             int initiator, int ipr, int maxbufsize);
0022 
0023 extern int
0024 bcom_gen_bd_rx_reset(struct bcom_task *tsk);
0025 
0026 extern void
0027 bcom_gen_bd_rx_release(struct bcom_task *tsk);
0028 
0029 
0030 extern struct bcom_task *
0031 bcom_gen_bd_tx_init(int queue_len, phys_addr_t fifo,
0032             int initiator, int ipr);
0033 
0034 extern int
0035 bcom_gen_bd_tx_reset(struct bcom_task *tsk);
0036 
0037 extern void
0038 bcom_gen_bd_tx_release(struct bcom_task *tsk);
0039 
0040 
0041 /* PSC support utility wrappers */
0042 struct bcom_task * bcom_psc_gen_bd_rx_init(unsigned psc_num, int queue_len,
0043                        phys_addr_t fifo, int maxbufsize);
0044 struct bcom_task * bcom_psc_gen_bd_tx_init(unsigned psc_num, int queue_len,
0045                        phys_addr_t fifo);
0046 #endif  /* __BESTCOMM_GEN_BD_H__ */
0047