xref: /openbmc/linux/sound/pci/asihpi/hpimsginit.h (revision 4800cd83)
1 /******************************************************************************
2 
3     AudioScience HPI driver
4     Copyright (C) 1997-2010  AudioScience Inc. <support@audioscience.com>
5 
6     This program is free software; you can redistribute it and/or modify
7     it under the terms of version 2 of the GNU General Public License as
8     published by the Free Software Foundation;
9 
10     This program is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU General Public License for more details.
14 
15     You should have received a copy of the GNU General Public License
16     along with this program; if not, write to the Free Software
17     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18 
19  Hardware Programming Interface (HPI) Utility functions
20 
21  (C) Copyright AudioScience Inc. 2007
22 *******************************************************************************/
23 /* Initialise response headers, or msg/response pairs.
24 Note that it is valid to just init a response e.g. when a lower level is preparing
25 a response to a message.
26 However, when sending a message, a matching response buffer always must be prepared
27 */
28 
29 void hpi_init_response(struct hpi_response *phr, u16 object, u16 function,
30 	u16 error);
31 
32 void hpi_init_message_response(struct hpi_message *phm,
33 	struct hpi_response *phr, u16 object, u16 function);
34 
35 void hpi_init_responseV1(struct hpi_response_header *phr, u16 size,
36 	u16 object, u16 function);
37 
38 void hpi_init_message_responseV1(struct hpi_message_header *phm, u16 msg_size,
39 	struct hpi_response_header *phr, u16 res_size, u16 object,
40 	u16 function);
41