1/******************************************************************************
2
3    AudioScience HPI driver
4    Copyright (C) 1997-2011  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.
24Note that it is valid to just init a response e.g. when a lower level is
25preparing a response to a message.
26However, when sending a message, a matching response buffer must always be
27prepared.
28*/
29
30#ifndef _HPIMSGINIT_H_
31#define _HPIMSGINIT_H_
32
33void hpi_init_response(struct hpi_response *phr, u16 object, u16 function,
34	u16 error);
35
36void hpi_init_message_response(struct hpi_message *phm,
37	struct hpi_response *phr, u16 object, u16 function);
38
39void hpi_init_responseV1(struct hpi_response_header *phr, u16 size,
40	u16 object, u16 function);
41
42void hpi_init_message_responseV1(struct hpi_message_header *phm, u16 msg_size,
43	struct hpi_response_header *phr, u16 res_size, u16 object,
44	u16 function);
45
46#endif				/* _HPIMSGINIT_H_ */
47