]> bbs.cooldavid.org Git - net-next-2.6.git/blob - drivers/staging/dream/include/mach/qdsp5/qdsp5jpegmsg.h
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel...
[net-next-2.6.git] / drivers / staging / dream / include / mach / qdsp5 / qdsp5jpegmsg.h
1 #ifndef QDSP5VIDJPEGMSGI_H
2 #define QDSP5VIDJPEGMSGI_H
3
4 /*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*
5
6    J P E G  I N T E R N A L  M E S S A G E S
7
8 GENERAL DESCRIPTION
9   This file contains defintions of format blocks of messages
10   that are sent by JPEG Task
11
12 REFERENCES
13   None
14
15 EXTERNALIZED FUNCTIONS
16   None
17
18 Copyright(c) 1992 - 2008 by QUALCOMM, Incorporated.
19
20 This software is licensed under the terms of the GNU General Public
21 License version 2, as published by the Free Software Foundation, and
22 may be copied, distributed, and modified under those terms.
23
24 This program is distributed in the hope that it will be useful,
25 but WITHOUT ANY WARRANTY; without even the implied warranty of
26 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27 GNU General Public License for more details.
28
29 *====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*/
30 /*===========================================================================
31
32                       EDIT HISTORY FOR FILE
33
34 This section contains comments describing changes made to this file.
35 Notice that changes are listed in reverse chronological order.
36
37 $Header: //source/qcom/qct/multimedia2/AdspSvc/7XXX/qdsp5cmd/video/qdsp5jpegmsg.h#2 $ $DateTime: 2008/07/30 10:50:23 $ $Author: pavanr $
38 Revision History:
39
40 when       who     what, where, why
41 --------   ---     ----------------------------------------------------------
42 05/10/08   sv      initial version
43 ===========================================================================*/
44
45 /*
46  * Messages from JPEG task to ARM through jpeguPMsgQueue
47  */
48
49 /*
50  * Message is ACK for CMD_JPEGE_ENCODE cmd
51  */
52
53 #define JPEG_MSG_ENC_ENCODE_ACK 0x0000
54 #define JPEG_MSG_ENC_ENCODE_ACK_LEN     \
55         sizeof(jpeg_msg_enc_encode_ack)
56
57 typedef struct {
58 } __attribute__((packed)) jpeg_msg_enc_encode_ack;
59
60
61 /*
62  * Message informs the up when op buffer is ready for consumption and
63  * when encoding is complete or errors
64  */
65
66 #define JPEG_MSG_ENC_OP_PRODUCED        0x0001
67 #define JPEG_MSG_ENC_OP_PRODUCED_LEN    \
68         sizeof(jpeg_msg_enc_op_produced)
69
70 #define JPEG_MSGOP_OP_BUF_STATUS_ENC_DONE_PROGRESS      0x0000
71 #define JPEG_MSGOP_OP_BUF_STATUS_ENC_DONE_COMPLETE      0x0001
72 #define JPEG_MSGOP_OP_BUF_STATUS_ENC_ERR                0x10000
73
74 typedef struct {
75         unsigned int    op_buf_addr;
76         unsigned int    op_buf_size;
77         unsigned int    op_buf_status;
78 } __attribute__((packed)) jpeg_msg_enc_op_produced;
79
80
81 /*
82  * Message to ack CMD_JPEGE_IDLE
83  */
84
85 #define JPEG_MSG_ENC_IDLE_ACK   0x0002
86 #define JPEG_MSG_ENC_IDLE_ACK_LEN       sizeof(jpeg_msg_enc_idle_ack)
87
88
89 typedef struct {
90 } __attribute__ ((packed)) jpeg_msg_enc_idle_ack;
91
92
93 /*
94  * Message to indicate the illegal command
95  */
96
97 #define JPEG_MSG_ENC_ILLEGAL_COMMAND    0x0003
98 #define JPEG_MSG_ENC_ILLEGAL_COMMAND_LEN        \
99         sizeof(jpeg_msg_enc_illegal_command)
100
101 typedef struct {
102         unsigned int    status;
103 } __attribute__((packed)) jpeg_msg_enc_illegal_command;
104
105
106 /*
107  * Message to ACK CMD_JPEGD_DECODE
108  */
109
110 #define JPEG_MSG_DEC_DECODE_ACK         0x0004
111 #define JPEG_MSG_DEC_DECODE_ACK_LEN     \
112         sizeof(jpeg_msg_dec_decode_ack)
113
114
115 typedef struct {
116 } __attribute__((packed)) jpeg_msg_dec_decode_ack;
117
118
119 /*
120  * Message to inform up that an op buffer is ready for consumption and when
121  * decoding is complete or an error occurs
122  */
123
124 #define JPEG_MSG_DEC_OP_PRODUCED                0x0005
125 #define JPEG_MSG_DEC_OP_PRODUCED_LEN    \
126         sizeof(jpeg_msg_dec_op_produced)
127
128 #define JPEG_MSG_DEC_OP_BUF_STATUS_PROGRESS     0x0000
129 #define JPEG_MSG_DEC_OP_BUF_STATUS_DONE         0x0001
130
131 typedef struct {
132         unsigned int    luma_op_buf_addr;
133         unsigned int    chroma_op_buf_addr;
134         unsigned int    num_mcus;
135         unsigned int    op_buf_status;
136 } __attribute__((packed)) jpeg_msg_dec_op_produced;
137
138 /*
139  * Message to ack CMD_JPEGD_IDLE cmd
140  */
141
142 #define JPEG_MSG_DEC_IDLE_ACK   0x0006
143 #define JPEG_MSG_DEC_IDLE_ACK_LEN       sizeof(jpeg_msg_dec_idle_ack)
144
145
146 typedef struct {
147 } __attribute__((packed)) jpeg_msg_dec_idle_ack;
148
149
150 /*
151  * Message to indicate illegal cmd was received
152  */
153
154 #define JPEG_MSG_DEC_ILLEGAL_COMMAND    0x0007
155 #define JPEG_MSG_DEC_ILLEGAL_COMMAND_LEN        \
156         sizeof(jpeg_msg_dec_illegal_command)
157
158
159 typedef struct {
160         unsigned int    status;
161 } __attribute__((packed)) jpeg_msg_dec_illegal_command;
162
163 /*
164  * Message to request up for the next segment of ip bit stream
165  */
166
167 #define JPEG_MSG_DEC_IP_REQUEST         0x0008
168 #define JPEG_MSG_DEC_IP_REQUEST_LEN     \
169         sizeof(jpeg_msg_dec_ip_request)
170
171
172 typedef struct {
173 } __attribute__((packed)) jpeg_msg_dec_ip_request;
174
175
176
177 #endif