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 8GENERAL DESCRIPTION 9 This file contains defintions of format blocks of messages 10 that are sent by JPEG Task 11 12REFERENCES 13 None 14 15EXTERNALIZED FUNCTIONS 16 None 17 18Copyright(c) 1992 - 2008 by QUALCOMM, Incorporated. 19 20This software is licensed under the terms of the GNU General Public 21License version 2, as published by the Free Software Foundation, and 22may be copied, distributed, and modified under those terms. 23 24This program is distributed in the hope that it will be useful, 25but WITHOUT ANY WARRANTY; without even the implied warranty of 26MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 27GNU General Public License for more details. 28 29*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*/ 30/*=========================================================================== 31 32 EDIT HISTORY FOR FILE 33 34This section contains comments describing changes made to this file. 35Notice 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 $ 38Revision History: 39 40when who what, where, why 41-------- --- ---------------------------------------------------------- 4205/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 57typedef 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 74typedef 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 89typedef 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 101typedef 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 115typedef 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 131typedef 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 146typedef 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 159typedef 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 172typedef struct { 173} __attribute__((packed)) jpeg_msg_dec_ip_request; 174 175 176 177#endif 178