1 /* 2 * dspmsg.h 3 * 4 * DSP-BIOS Bridge driver support functions for TI OMAP processors. 5 * 6 * Declares the upper edge message class library functions required by 7 * all Bridge driver / DSP API interface tables. These functions are 8 * implemented by every class of Bridge driver channel library. 9 * 10 * Notes: 11 * Function comment headers reside in dspdefs.h. 12 * 13 * Copyright (C) 2005-2006 Texas Instruments, Inc. 14 * 15 * This package is free software; you can redistribute it and/or modify 16 * it under the terms of the GNU General Public License version 2 as 17 * published by the Free Software Foundation. 18 * 19 * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 20 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 21 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. 22 */ 23 24 #ifndef DSPMSG_ 25 #define DSPMSG_ 26 27 #include <dspbridge/msgdefs.h> 28 29 extern int bridge_msg_create(struct msg_mgr **msg_man, 30 struct dev_object *hdev_obj, 31 msg_onexit msg_callback); 32 33 extern int bridge_msg_create_queue(struct msg_mgr *hmsg_mgr, 34 struct msg_queue **msgq, 35 u32 msgq_id, u32 max_msgs, void *arg); 36 37 extern void bridge_msg_delete(struct msg_mgr *hmsg_mgr); 38 39 extern void bridge_msg_delete_queue(struct msg_queue *msg_queue_obj); 40 41 extern int bridge_msg_get(struct msg_queue *msg_queue_obj, 42 struct dsp_msg *pmsg, u32 utimeout); 43 44 extern int bridge_msg_put(struct msg_queue *msg_queue_obj, 45 const struct dsp_msg *pmsg, u32 utimeout); 46 47 extern int bridge_msg_register_notify(struct msg_queue *msg_queue_obj, 48 u32 event_mask, 49 u32 notify_type, 50 struct dsp_notification 51 *hnotification); 52 53 extern void bridge_msg_set_queue_id(struct msg_queue *msg_queue_obj, 54 u32 msgq_id); 55 56 #endif /* DSPMSG_ */ 57