| /***************************************************************************** |
| * Copyright Statement: |
| * -------------------- |
| * This software is protected by Copyright and the information contained |
| * herein is confidential. The software may not be copied and the information |
| * contained herein may not be used or disclosed except with the written |
| * permission of MediaTek Inc. (C) 2005 |
| * |
| * BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES |
| * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE") |
| * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON |
| * AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES, |
| * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF |
| * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT. |
| * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE |
| * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR |
| * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH |
| * THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO |
| * NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S |
| * SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM. |
| * |
| * BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE |
| * LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE, |
| * AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE, |
| * OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO |
| * MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. |
| * |
| * THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE |
| * WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF |
| * LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND |
| * RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER |
| * THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC). |
| * |
| *****************************************************************************/ |
| |
| /***************************************************************************** |
| * |
| * Filename: |
| * --------- |
| * MTCDEF.H |
| * |
| * Project: |
| * -------- |
| * MAUI |
| * |
| * Description: |
| * ------------ |
| * This file is intends for implementing custom commands for some customers |
| * which should not be released to other customers |
| * |
| * Author: |
| * ------- |
| * ------- |
| * |
| *============================================================================ |
| * HISTORY |
| * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!! |
| *------------------------------------------------------------------------------ |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| *------------------------------------------------------------------------------ |
| * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!! |
| *============================================================================ |
| ****************************************************************************/ |
| #ifdef __MTK_TARGET__ /* Only support ATS test on target , not support in simulator */ |
| #ifndef MTCDEF_H |
| #define MTCDEF_H |
| |
| #include "lcd_sw_inc.h" |
| #include "lcd_sw.h" |
| |
| /*===============================================================*/ |
| #define MTC_CMD_CODE 0xF0 |
| |
| |
| /****************************************************************************** |
| * * |
| * Integrate RFWS library - ia_raw.h * |
| * * |
| ******************************************************************************/ |
| #define RGB565_REDMASK (0xf800) |
| #define RGB565_REDSHIFT (11) |
| #define RGB565_GREENMASK (0x07e0) |
| #define RGB565_GREENSHIFT (5) |
| #define RGB565_BLUEMASK (0x001f) |
| #define RGB565_BLUESHIFT (0) |
| |
| #define RGB_PLANE_RED (1) |
| #define RGB_PLANE_GREEN (2) |
| #define RGB_PLANE_BLUE (3) |
| |
| |
| /****************************************************************************** |
| * * |
| * Integrate RFWS library - ia_simple_dpcm.h * |
| * * |
| ******************************************************************************/ |
| #define DPCM_MINIMAL_QUANTIZER (1) |
| #define DPCM_MAXIMAL_QUANTIZER (7) |
| |
| #define DPCM_INITIAL_PREDICTION (128) |
| |
| |
| typedef enum |
| { |
| MTC_SCREEN_INFO_REQ_CMD = 0x00, /* Screen Info Request */ |
| MTC_CAPTURE_REQ_CMD = 0x01, /* Screen Capture Request */ |
| MTC_KEY_LOG_MASK_CMD = 0x07, |
| MTC_KEY_LOG_DATA_IND = 0x08, |
| MTC_PHONE_RESTART_REQ_CMD = 0x10, /* Phone Restart Request */ |
| MTC_PHONE_FACTORY_RST_CMD = 0x11, /* Phone Factory Reset Request*/ |
| MTC_PHONE_REPORT_REQ_CMD = 0x20, /* Phone Report request */ |
| MTC_PHONE_STATE_REQ_CMD = 0x21, /* Phone status request*/ |
| MTC_DATA_TRANSFER_SETUP_CMD = 0x22, /* Request to setup data transfer parameters*/ |
| MTC_KEY_REPORT_EN_REQ_CMD = 0x30, /* Enable/Disable key press notification*/ |
| MTC_KEY_EVENT_REQ_CMD = 0x33, /* Key Event notification or key press emulation */ |
| MTC_FAST_KEY_EVENT_REQ_CMD = 0x35, /* Fast key event request cmd */ |
| MTC_MEMORY_DUMP_REQ_CMD = 0x40, /* Memory Dump Request*/ |
| MTC_BATTERY_LEVEL_REQ_CMD = 0x41, /* Battery Level Request*/ |
| MTC_BACKLIGHT_REQ_CMD = 0x42, /* Backlight State Request*/ |
| MTC_FLEX_DATA_REQ_CMD = 0x50, |
| MTC_ERROR_CMD = 0x7F, |
| MTC_CURRENT_CELL_REQ_CMD = 0x80 /*Current cell, codec and data transfer quality information*/ |
| }mtc_sub_cmd_type; |
| |
| typedef enum |
| { |
| MTC_MAIN_LCD = 0, |
| MTC_SUB_LCD, |
| MTC_LCD_PADDING = 0x7F |
| }mtc_scrn_id_type; |
| |
| |
| typedef struct |
| { |
| kal_uint8 sw_ver[45]; |
| kal_uint8 hw_ver[16]; |
| kal_uint8 sw_sub_ver; |
| } mtcVersion_type; |
| |
| /*================================================================*/ |
| typedef __packed struct |
| { |
| kal_uint8 cmd_code; |
| kal_uint8 sub_cmd; |
| }mtc_req_hdr_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| mtc_scrn_id_type screen_id; |
| }mtc_info_req_type; |
| |
| /*=================================================================*/ |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| mtc_scrn_id_type screen_id; |
| kal_uint16 left; /* Upper left X-Coord */ |
| kal_uint16 top; /* Upper left Y-Coord */ |
| kal_uint16 width; /* Width of the capture screen */ |
| kal_uint16 height; /* Height of the capture screen */ |
| }mtc_capture_req_type; |
| |
| /*=================================================================*/ |
| |
| typedef __packed struct |
| { |
| kal_uint16 left; /* Upper left X-Coord */ |
| kal_uint16 top; /* Upper left Y-Coord */ |
| kal_uint16 width; /* Width of the area */ |
| kal_uint16 height; /* Height of the area */ |
| } mtc_ats_capture_rect_type; |
| |
| |
| typedef __packed struct |
| { |
| kal_uint8 mask_type; |
| mtc_ats_capture_rect_type rect; /* masked area */ |
| }mtc_ats_capture_mask_req_type; |
| |
| #define MTC_ATS_NMASK_MAX (5) |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| mtc_scrn_id_type screen_id; |
| mtc_ats_capture_rect_type base_area; |
| kal_uint8 refresh; |
| kal_uint8 data_type; |
| kal_uint8 pack_type; |
| kal_uint8 quantizer; |
| kal_uint8 threshold; |
| mtc_ats_capture_mask_req_type masks[MTC_ATS_NMASK_MAX]; |
| }mtc_ats_capture_req_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 request_area; |
| kal_uint8 value; |
| }mtc_ats_key_report_en_req_type; |
| |
| #if 1 /* LGE_L1_NUGUYU_20091119 */ |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint32 log_mask; |
| }mtc_ats_key_log_mask_req_type; |
| #endif |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint32 address; |
| kal_uint32 reserved; |
| kal_uint8 size; |
| }mtc_ats_memory_req_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| }mtc_ats_battery_req_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 request_area; |
| }mtc_ats_backlight_req_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 request_cell; |
| }mtc_ats_cell_req_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint16 packet_size; |
| kal_uint16 transfer_delay; |
| }mtc_ats_transfer_setup_req_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 KeyHoldType; /* Press or Depress */ |
| kal_uint8 KeyCode; /* Virtual key Code */ |
| }mtc_key_event_req_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 KeyCode; /* Virtual key Code */ |
| kal_uint16 Delay; /* delay measured in 1\10 of a second */ |
| }mtc_fast_key_event_req_type; |
| |
| typedef __packed union |
| { |
| mtc_info_req_type info; |
| mtc_capture_req_type capture; |
| mtc_ats_capture_req_type ats_capture; |
| mtc_ats_key_report_en_req_type ats_key_report_en; |
| mtc_ats_key_log_mask_req_type ats_key_log_mask; |
| mtc_ats_memory_req_type ats_dump; |
| mtc_ats_battery_req_type ats_battery; |
| mtc_ats_backlight_req_type ats_backlight; |
| mtc_ats_cell_req_type ats_cell_info; |
| mtc_ats_transfer_setup_req_type ats_setup; |
| mtc_key_event_req_type keyevent; |
| mtc_fast_key_event_req_type fastkeyevent; |
| }mtc_req_type; |
| |
| typedef __packed union |
| { |
| mtc_req_hdr_type hdr; |
| mtc_req_type mtc_req; |
| }diag_mtc_req_type; |
| |
| /*==============================================================*/ |
| |
| #define MTC_262K_CMASK_RED 0x0000FC00 |
| #define MTC_262K_CMASK_GREEN 0x000003F0 |
| #define MTC_262K_CMASK_BLUE 0xC000000F |
| |
| #define MTC_65K_CMASK_RED 0xF800 |
| #define MTC_65K_CMASK_GREEN 0x07E0 |
| #define MTC_65K_CMASK_BLUE 0x001F |
| |
| typedef enum |
| { |
| MTC_BIT_UNDEF = 0, |
| MTC_BIT_MONO = 1, |
| MTC_BIT_4 = 2, |
| MTC_BIT_16 = 4, |
| MTC_BIT_256 = 8, |
| MTC_BIT_65K = 16, |
| MTC_BIT_262K = 18, |
| MTC_BIT_RGB24 = 24, |
| MTC_BIT_RGB_32 = 32, |
| MTC_BIT_PADDING = 0x7F |
| }mtc_bits_pixel_type; |
| |
| typedef unsigned long mtc_pixel_18_type; /* 4 kal_uint8 */ |
| typedef unsigned short mtc_pixel_16_type; /* 2 kal_uint8 */ |
| |
| /* |
| We have to make sure that MTC_SCRN_BUF_SIZE_MAX is set correctly in various project . |
| The only thing we can confirm is that bpp of MAIN_LCD_16BIT_MODE is displayed 2 bytes length, |
| the other cases MTC_SCRN_BUF_SIZE_MAX is set to maximum size |
| It may be revised in later projects |
| */ |
| #if defined (MAIN_LCD_16BIT_MODE) |
| #define MTC_SCRN_BUF_SIZE_MAX (LCD_WIDTH*LCD_HEIGHT*(sizeof(mtc_pixel_16_type))) |
| #else |
| #define MTC_SCRN_BUF_SIZE_MAX (LCD_WIDTH*LCD_HEIGHT*(sizeof(mtc_pixel_18_type))) |
| #endif |
| |
| |
| /*=========================================================*/ |
| #if 0 |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| #endif |
| |
| typedef mtc_req_hdr_type mtc_rsp_hdr_type; |
| |
| typedef __packed struct |
| { |
| mtc_rsp_hdr_type hdr; |
| mtc_scrn_id_type scrn_id; |
| kal_uint16 scrn_width; /* Screen Width in Pixels */ |
| kal_uint16 scrn_height; /* Screen Height in Pixcels */ |
| mtc_bits_pixel_type bits_pixel; /* Color bits for each Pixel */ |
| }mtc_screen_info_rsp_type; |
| |
| typedef __packed struct |
| { |
| kal_uint32 blue; |
| kal_uint32 green; |
| kal_uint32 red; |
| }mtc_mask_type; |
| |
| typedef __packed struct |
| { |
| mtc_rsp_hdr_type hdr; |
| mtc_scrn_id_type scrn_id; |
| kal_uint16 bmp_width; /* Width of the BMP */ |
| kal_uint16 bmp_height; /* Height of the BMP */ |
| mtc_bits_pixel_type bits_pixel; /* Color bits for each pixel */ |
| mtc_mask_type mask; |
| //// kal_uint8 bmp_data[MTC_SCRN_BUF_SIZE_MAX]; |
| //mtk01616_091217: we output data directly ,without keeping all bmp_data in a buffer first. |
| }mtc_capture_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_rsp_hdr_type hdr; |
| mtc_scrn_id_type scrn_id; |
| kal_uint16 bmp_width; /* Width of the BMP */ |
| kal_uint16 bmp_height; /* Height of the BMP */ |
| mtc_bits_pixel_type bits_pixel; /* must be zero */ |
| kal_uint8 data_type; |
| kal_uint8 pack_type; |
| kal_uint8 quantizer; |
| kal_uint8 threshold; |
| kal_uint32 bmp_size; |
| //// kal_uint8 bmp_data[ MTC_SCRN_BUF_SIZE_MAX ]; |
| //mtk01616_091217: we output data directly ,without keeping all bmp_data in a buffer first. |
| }mtc_ats_capture_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_rsp_hdr_type hdr; |
| kal_uint8 keyState; |
| kal_uint8 keyCode; |
| }mtc_ats_key_report_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 model_name[10]; |
| kal_uint32 release_date; |
| kal_uint8 software_ver[40]; |
| kal_uint8 IMEI[15]; |
| kal_uint8 phone_num[15]; |
| kal_uint16 enabled_functions; |
| }mtc_ats_phone_report_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint16 phone_state; |
| }mtc_ats_phone_state_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 request_area; |
| kal_uint8 value; |
| }mtc_ats_key_report_en_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint32 log_mask; |
| }mtc_ats_key_log_mask_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint32 *reserved; |
| kal_uint32 *address; |
| kal_uint8 size; |
| kal_uint8 data[64]; |
| }mtc_ats_memory_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 isCharging; |
| kal_uint8 capacity; |
| }mtc_ats_battery_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint8 value; |
| }mtc_ats_backlight_rsp_type; |
| |
| typedef __packed struct |
| { |
| mtc_req_hdr_type hdr; |
| kal_uint16 packet_size; |
| kal_uint16 transfer_delay; |
| }mtc_ats_transfer_setup_rsp_type; |
| |
| |
| /*==========================================================*/ |
| |
| typedef __packed struct |
| { |
| mtc_rsp_hdr_type hdr; |
| kal_uint8 KeyHoldType; /* Press or Release */ |
| kal_uint8 KeyCode; /* Virtual key Code */ |
| }mtc_key_event_rsp_type; |
| |
| typedef mtc_key_event_rsp_type mtc_key_event_ind_type; |
| |
| typedef __packed struct |
| { |
| mtc_rsp_hdr_type hdr; |
| kal_uint8 log_id; /* Press or Release */ |
| kal_uint16 log_len; /* Virtual key Code */ |
| kal_uint64 time; |
| kal_uint8 press; |
| kal_uint8 key_code; |
| kal_uint64 active_UIID; |
| }mtc_ats_key_log_event_rsp_type; |
| |
| typedef mtc_ats_key_log_event_rsp_type mtc_ats_key_log_event_ind_type; |
| |
| typedef __packed struct |
| { |
| mtc_rsp_hdr_type hdr; |
| kal_uint8 KeyCode; /* Virtual key Code */ |
| short Delay; /* delay measured in 1\10 of a second */ |
| }mtc_fast_key_event_resp; |
| |
| /*==========================================================*/ |
| |
| typedef __packed union |
| { |
| mtc_screen_info_rsp_type info; |
| mtc_capture_rsp_type capture; |
| mtc_ats_capture_rsp_type ats_capture; |
| mtc_ats_memory_rsp_type ats_dump; |
| mtc_ats_battery_rsp_type ats_battery; |
| mtc_ats_backlight_rsp_type ats_backlight; |
| mtc_ats_transfer_setup_rsp_type ats_setup; |
| mtc_key_event_rsp_type keyevent; |
| mtc_ats_key_log_event_rsp_type ats_keylogevent; |
| mtc_fast_key_event_resp fastkeyevent; |
| }mtc_rsp_type; |
| |
| typedef __packed union |
| { |
| mtc_rsp_hdr_type hdr; |
| mtc_rsp_type mtc_rsp; |
| }diag_mtc_rsp_type; |
| |
| /*============================================================*/ |
| |
| typedef struct |
| { |
| mtc_scrn_id_type id; /* lcd id: MAIN, SUB */ |
| int width_max; /* max width in current rotation mode */ |
| int height_max; /* max height in current rotation mode */ |
| int degrees; /* LCD degrees of rotation: 0, 90, 180 */ |
| mtc_bits_pixel_type bits_pixel; /* Color Bit: 16, 18 */ |
| mtc_mask_type mask; /* Color mask: R, G, B */ |
| }mtc_lcd_info_type; |
| |
| typedef struct |
| { |
| int start_x; /* Start X-Coord for capture area */ |
| int start_y; /* Start Y- Coord for capture area */ |
| int width; /* Width of the capture area */ |
| int height; /* Height of the capture area */ |
| }mtc_capture_type; |
| |
| #if 0 |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| #endif |
| /*=================================================*/ |
| |
| #endif |
| #endif /* __MTK_TARGET__ */ |
| |